/gpump/trunk

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/gpump/trunk
14 by Gustav Hartvigsson
* Started work on the settings dioloug.
1
/* c-basic-offset: 2; tab-width: 2; indent-tabs-mode: nil
2
 * vi: set shiftwidth=2 tabstop=2 expandtab:
3
 * :indentSize=2:tabSize=2:noTabs=true:
4
 */
5
6
#include "GPumpSettings.h"
20 by Gustav Hatvigsson
* Added a singeltonian class to keep settings data in.
7
#include "GPumpSettingsData.h"
14 by Gustav Hartvigsson
* Started work on the settings dioloug.
8
9
struct GPumpSettingsPrivate {
10
  GtkWidget * layout;
11
  
12
};
13
14
#define GPUMP_SETTINGS_GET_PRIVATE(obj)\
15
  (G_TYPE_INSTANCE_GET_PRIVATE ((obj), GPUMP_TYPE_SETTINGS,\
16
   GPumpSettingsPrivate))
17
18
G_DEFINE_TYPE (GPumpSettings, gpump_settings, GTK_TYPE_DIALOG)
19
20 by Gustav Hatvigsson
* Added a singeltonian class to keep settings data in.
20
/* * Callback function definitions ********************************************/
21
void _cb_on_response (GtkWidget * widget, gint response_id, gpointer user_data);
22
23
14 by Gustav Hartvigsson
* Started work on the settings dioloug.
24
GPumpSettings * gpump_settings_new (GtkWidget * parent) {
25
  GPumpSettings * self = g_object_new (GPUMP_TYPE_SETTINGS,
26
                         "title", _("GPump settings"),
27
                         "transient-for", parent,
28
                         "attached-to", parent,
29
                         NULL, NULL);
30
  return self;
31
}
32
33
void gpump_settings_init (GPumpSettings * self) {
34
  self->priv = GPUMP_SETTINGS_GET_PRIVATE (self);
35
  gtk_dialog_add_buttons (GTK_DIALOG (self), _("Okay"), GTK_RESPONSE_OK, NULL, NULL);
20 by Gustav Hatvigsson
* Added a singeltonian class to keep settings data in.
36
  
37
  g_signal_connect (G_OBJECT (self), "response", G_CALLBACK (_cb_on_response),
38
                    self);
39
  
14 by Gustav Hartvigsson
* Started work on the settings dioloug.
40
  gtk_window_set_default_size (GTK_WINDOW(self), 500,500);
41
}
42
43
void gpump_settings_class_init (GPumpSettingsClass * klass) {
44
  g_type_class_add_private (klass, sizeof(GPumpSettingsPrivate));
45
}
46
47
void gpump_settings_show (GPumpSettings * self) {
48
  gtk_dialog_run (GTK_DIALOG(self));
20 by Gustav Hatvigsson
* Added a singeltonian class to keep settings data in.
49
}
50
51
52
/* * Callback function implementations ***************************************/
53
void _cb_on_response (GtkWidget * widget, gint response_id,
54
                      gpointer user_data) {
55
  GPumpSettings * self = GPUMP_SETTINGS (user_data);
56
  
57
  switch (response_id) {
58
    case GTK_RESPONSE_OK:
59
      gtk_widget_destroy (GTK_WIDGET (self));
60
      break;
61
    default:
62
      g_error ("Response \"%i\" is not handled in GPumpSettings...\n",
63
                response_id);
64
  }
65
  
66
}
14 by Gustav Hartvigsson
* Started work on the settings dioloug.
67