File: about.c

package info (click to toggle)
evms 1.0.0-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 9,168 kB
  • ctags: 5,853
  • sloc: ansic: 87,317; makefile: 691; sh: 238
file content (184 lines) | stat: -rw-r--r-- 8,503 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
/*
 * DO NOT EDIT THIS FILE - it is generated by Glade.
 */

#ifdef HAVE_CONFIG_H
#  include <config.h>
#endif

#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <string.h>

#include <gdk/gdkkeysyms.h>
#include <gtk/gtk.h>

#include "support.h"
#include "about.h"
#include "support.h"

GtkWidget*
create_about_window (void)
{
  GtkWidget *about_window;
  GtkWidget *top_vbox;
  GtkWidget *frame;
  GtkWidget *frame_vbox;
  GtkWidget *name_label;
  GtkWidget *version_label;
  GtkWidget *credits_notebook;
  GtkWidget *description_label;
  GtkWidget *copyright_label;
  GtkWidget *credits_scrolledwindow;
  GtkWidget *credits_text;
  GtkWidget *credit_label;
  GtkWidget *hseparator;
  GtkWidget *hbuttonbox;
  GtkWidget *button;

  about_window = gtk_window_new (GTK_WINDOW_DIALOG);
  gtk_widget_set_name (about_window, "about_window");
  gtk_object_set_data (GTK_OBJECT (about_window), "about_window", about_window);
  gtk_window_set_title (GTK_WINDOW (about_window), _("About"));
  gtk_window_set_position (GTK_WINDOW (about_window), GTK_WIN_POS_CENTER);
  gtk_window_set_modal (GTK_WINDOW (about_window), TRUE);

  top_vbox = gtk_vbox_new (FALSE, 0);
  gtk_widget_set_name (top_vbox, "top_vbox");
  gtk_widget_ref (top_vbox);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "top_vbox", top_vbox,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (top_vbox);
  gtk_container_add (GTK_CONTAINER (about_window), top_vbox);

  frame = gtk_frame_new (NULL);
  gtk_widget_set_name (frame, "frame");
  gtk_widget_ref (frame);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "frame", frame,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (frame);
  gtk_box_pack_start (GTK_BOX (top_vbox), frame, TRUE, TRUE, 0);
  gtk_container_set_border_width (GTK_CONTAINER (frame), 6);

  frame_vbox = gtk_vbox_new (FALSE, 0);
  gtk_widget_set_name (frame_vbox, "frame_vbox");
  gtk_widget_ref (frame_vbox);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "frame_vbox", frame_vbox,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (frame_vbox);
  gtk_container_add (GTK_CONTAINER (frame), frame_vbox);

  name_label = gtk_label_new (_("EVMSGUI\nEnterprise Volume Management System Graphical User Interface"));
  gtk_widget_set_name (name_label, "name_label");
  gtk_widget_ref (name_label);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "name_label", name_label,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (name_label);
  gtk_box_pack_start (GTK_BOX (frame_vbox), name_label, FALSE, FALSE, 0);
  gtk_misc_set_padding (GTK_MISC (name_label), 17, 20);

  version_label = gtk_label_new (_("evmsgui 0.0.1"));
  gtk_widget_set_name (version_label, "version_label");
  gtk_widget_ref (version_label);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "version_label", version_label,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (version_label);
  gtk_box_pack_start (GTK_BOX (frame_vbox), version_label, FALSE, FALSE, 0);
  gtk_misc_set_padding (GTK_MISC (version_label), 0, 11);

  credits_notebook = gtk_notebook_new ();
  gtk_widget_set_name (credits_notebook, "credits_notebook");
  gtk_widget_ref (credits_notebook);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "credits_notebook", credits_notebook,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (credits_notebook);
  gtk_box_pack_start (GTK_BOX (frame_vbox), credits_notebook, TRUE, TRUE, 0);
  gtk_container_set_border_width (GTK_CONTAINER (credits_notebook), 5);

  description_label = gtk_label_new (_("Copyright (c) International Business Machines  Corp., 2001\n\nevmsgui is a graphical user interface to the Enterprise Volume Management System written using the GTK+ widget library."));
  gtk_widget_set_name (description_label, "description_label");
  gtk_widget_ref (description_label);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "description_label", description_label,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (description_label);
  gtk_container_add (GTK_CONTAINER (credits_notebook), description_label);
  gtk_label_set_line_wrap (GTK_LABEL (description_label), TRUE);
  gtk_misc_set_padding (GTK_MISC (description_label), 22, 22);

  copyright_label = gtk_label_new (_("Copyright"));
  gtk_widget_set_name (copyright_label, "copyright_label");
  gtk_widget_ref (copyright_label);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "copyright_label", copyright_label,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (copyright_label);
  gtk_notebook_set_tab_label (GTK_NOTEBOOK (credits_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (credits_notebook), 0), copyright_label);

  credits_scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
  gtk_widget_set_name (credits_scrolledwindow, "credits_scrolledwindow");
  gtk_widget_ref (credits_scrolledwindow);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "credits_scrolledwindow", credits_scrolledwindow,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (credits_scrolledwindow);
  gtk_container_add (GTK_CONTAINER (credits_notebook), credits_scrolledwindow);
  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (credits_scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);

  credits_text = gtk_text_new (NULL, NULL);
  gtk_widget_set_name (credits_text, "credits_text");
  gtk_widget_ref (credits_text);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "credits_text", credits_text,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (credits_text);
  gtk_container_add (GTK_CONTAINER (credits_scrolledwindow), credits_text);
  gtk_text_insert (GTK_TEXT (credits_text), NULL, NULL, NULL,
                   _("Steven Pratt\nMark A. Peloquin\nBen Rafanello \nKevin Corry\nSteve Dobbelstein\nDon Mulvey\nMarty Ridgeway\nMike Tran\nJohn C. Stiles\nAndrew Clausen\nRamachandra N. Pai\nLuciano Chavez"), 174);

  credit_label = gtk_label_new (_("Credits"));
  gtk_widget_set_name (credit_label, "credit_label");
  gtk_widget_ref (credit_label);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "credit_label", credit_label,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (credit_label);
  gtk_notebook_set_tab_label (GTK_NOTEBOOK (credits_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (credits_notebook), 1), credit_label);

  hseparator = gtk_hseparator_new ();
  gtk_widget_set_name (hseparator, "hseparator");
  gtk_widget_ref (hseparator);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "hseparator", hseparator,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (hseparator);
  gtk_box_pack_start (GTK_BOX (top_vbox), hseparator, FALSE, TRUE, 12);

  hbuttonbox = gtk_hbutton_box_new ();
  gtk_widget_set_name (hbuttonbox, "hbuttonbox");
  gtk_widget_ref (hbuttonbox);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "hbuttonbox", hbuttonbox,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (hbuttonbox);
  gtk_box_pack_start (GTK_BOX (top_vbox), hbuttonbox, FALSE, TRUE, 0);
  gtk_container_set_border_width (GTK_CONTAINER (hbuttonbox), 8);
  gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox), GTK_BUTTONBOX_END);
  gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbuttonbox), 0);
  gtk_button_box_set_child_size (GTK_BUTTON_BOX (hbuttonbox), 90, 53);
  gtk_button_box_set_child_ipadding (GTK_BUTTON_BOX (hbuttonbox), 0, 0);

  button = gtk_button_new_with_label (_("OK"));
  gtk_widget_set_name (button, "button");
  gtk_widget_ref (button);
  gtk_object_set_data_full (GTK_OBJECT (about_window), "button", button,
                            (GtkDestroyNotify) gtk_widget_unref);
  gtk_widget_show (button);
  gtk_container_add (GTK_CONTAINER (hbuttonbox), button);
  GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);

  gtk_signal_connect (GTK_OBJECT (version_label), "realize",
                      GTK_SIGNAL_FUNC (on_version_label_realize),
                      NULL);
  gtk_signal_connect (GTK_OBJECT (button), "clicked",
                      GTK_SIGNAL_FUNC (on_button_clicked_destroy_window),
                      NULL);

  gtk_widget_grab_default (button);
  return about_window;
}