static GtkWidget * frame_new(GladeXML *xml, GladeWidgetInfo *info) { GtkWidget *frame; GList *tmp; char *label = NULL; gdouble label_xalign = 0; GtkShadowType shadow_type = GTK_SHADOW_ETCHED_IN; for (tmp = info->attributes; tmp; tmp = tmp->next) { GladeAttribute *attr = tmp->data; switch (attr->name[0]) { case 'l': if (!strcmp(attr->name, "label")) label = attr->value; else if (!strcmp(attr->name, "label_xalign")) label_xalign = g_strtod(attr->value, NULL); break; case 's': if (!strcmp(attr->name, "shadow_type")) shadow_type = glade_enum_from_string( GTK_TYPE_SHADOW_TYPE, attr->value); break; } } if (label) frame = gtk_frame_new(_(label)); else frame = gtk_frame_new(NULL); gtk_frame_set_label_align(GTK_FRAME(frame), label_xalign, 0.5); gtk_frame_set_shadow_type(GTK_FRAME(frame), shadow_type); return frame; }
int main(int argc,char *argv[]) { GtkWidget *frame; GtkWidget *wnd; GtkWidget *vbox; GtkWidget *hbox; GtkWidget *item; GtkWidget *list; GList *item_list; gtk_init (&argc, &argv); wnd= gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(wnd),"p18.4 frame"); gtk_window_set_default_size(GTK_WINDOW(wnd),300,200); gtk_container_set_border_width(GTK_CONTAINER(wnd),15); vbox=gtk_vbox_new(TRUE,5); gtk_container_add(GTK_CONTAINER(wnd),vbox); hbox=gtk_hbox_new(TRUE,5); gtk_box_pack_start(GTK_BOX(vbox),hbox,TRUE,TRUE,0); frame=gtk_frame_new("FRAME 1"); gtk_box_pack_start(GTK_BOX(hbox),frame,TRUE,TRUE,0); frame=gtk_frame_new("FRAME 2"); gtk_box_pack_start(GTK_BOX(hbox),frame,TRUE,TRUE,0); gtk_frame_set_label_align(GTK_FRAME(frame),0.5,0); frame=gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(vbox),frame,TRUE,TRUE,0); list=gtk_list_new(); item_list=NULL; item=gtk_list_item_new_with_label("list 1, one"); item_list=g_list_append(item_list,item); item=gtk_list_item_new_with_label("list 2, two"); item_list=g_list_append(item_list,item); item=gtk_list_item_new_with_label("list 3, three"); item_list=g_list_append(item_list,item); item=gtk_list_item_new_with_label("list 4, four"); item_list=g_list_append(item_list,item); gtk_list_insert_items(GTK_LIST(list),item_list,0); gtk_container_add(GTK_CONTAINER(frame),list); g_signal_connect(G_OBJECT(wnd),"delete_event",G_CALLBACK(release_resource),NULL); gtk_widget_show_all(wnd); gtk_main(); return 0; }
static VALUE rg_set_label_align(VALUE self, VALUE xalign, VALUE yalign) { gtk_frame_set_label_align(RVAL2GTKFRAME(self), NUM2DBL(xalign), NUM2DBL(yalign)); return self; }
static void facq_display_constructed(GObject *self) { FacqDisplay *dis = FACQ_DISPLAY(self); GtkWidget *vbox = NULL; GtkWidget *frame = NULL; GtkWidget *dra = NULL; GtkWidget *footer_label = NULL; GtkWidget *entry = NULL; /* frame */ frame = gtk_frame_new(dis->priv->title); gtk_frame_set_label_align(GTK_FRAME(frame),0.5,0.0); gtk_frame_set_shadow_type(GTK_FRAME(frame),GTK_SHADOW_ETCHED_OUT); /* entry */ entry = gtk_entry_new(); if(dis->priv->entrytext) gtk_entry_set_text(GTK_ENTRY(entry),dis->priv->entrytext); //gtk_entry_set_overwrite_mode(GTK_ENTRY(entry),TRUE); gtk_entry_set_alignment(GTK_ENTRY(entry),0.5); /* drawing area */ dra = gtk_drawing_area_new(); /* label */ footer_label = gtk_label_new(dis->priv->footer); /* vbox */ vbox = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(frame),vbox); gtk_box_pack_start(GTK_BOX(vbox), entry,FALSE,FALSE,3); gtk_box_pack_start(GTK_BOX(vbox), dra,TRUE,TRUE,3); gtk_box_pack_end(GTK_BOX(vbox), footer_label,FALSE,FALSE,3); /* connect draw function on expose-event */ g_signal_connect(dra,"expose-event", G_CALLBACK(facq_display_expose_event),dis); gtk_widget_set_size_request(dra,150,50); gtk_widget_show_all(vbox); dis->priv->vbox = vbox; dis->priv->frame = frame; dis->priv->entry = entry; dis->priv->dra = dra; dis->priv->footer_label = footer_label; }
static void start_gui(GFile* usb_root) { char* usb_root_path = g_file_get_path(usb_root); time_t timer = time(NULL); struct tm* timeinfo = localtime(&timer); char rel_dir_name[20]; strftime(rel_dir_name, 20, "Aufnahme-%F", timeinfo); char* recordings_dir_path = (char*) malloc((strlen(usb_root_path) + 21) * sizeof(char)); strcpy(recordings_dir_path, usb_root_path); strcat(recordings_dir_path, "/"); strcat(recordings_dir_path, rel_dir_name); g_free(usb_root_path); GtkWidget* window = gtk_window_new(GTK_WINDOW_TOPLEVEL); GtkWidget* h_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); GtkWidget* record_button = gtk_toggle_button_new_with_label("Aufnahme starten"); GtkWidget* recordings_scrolled_window = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(recordings_scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); GtkWidget* recordings_frame = gtk_frame_new("Aufnahmen"); gtk_frame_set_shadow_type(GTK_FRAME(recordings_frame), GTK_SHADOW_ETCHED_IN); gtk_frame_set_label_align(GTK_FRAME(recordings_frame), 0.5, 0.5); GtkWidget* recordings_list_box = gtk_list_box_new(); GtkWidget* v_box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); GtkWidget* delete_button = gtk_button_new_with_label("letzte Aufnahme löschen"); Data* data = (Data*) malloc(sizeof(Data)); data->recordings_dir_path = recordings_dir_path; data->recordings_list_box = recordings_list_box; data->index = -1; data->recording_pid = 0; data->playing_pid = 0; data->currently_playing_song = NULL; update_recordings_list(data); g_signal_connect(GTK_TOGGLE_BUTTON(record_button), "toggled", G_CALLBACK(on_recording_button_toggled), data); g_signal_connect(GTK_BUTTON(delete_button), "clicked", G_CALLBACK(on_delete_button_clicked), data); gtk_box_pack_start(GTK_BOX(h_box), record_button, TRUE, TRUE, 10); gtk_box_pack_start(GTK_BOX(h_box), v_box, FALSE, TRUE, 10); gtk_container_add(GTK_CONTAINER(recordings_scrolled_window), recordings_frame); gtk_box_pack_start(GTK_BOX(v_box), recordings_scrolled_window, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(v_box), delete_button, FALSE, TRUE, 10); gtk_container_add(GTK_CONTAINER(recordings_frame), recordings_list_box); gtk_container_add(GTK_CONTAINER(window), h_box); data->right_box = v_box; //gtk_window_set_title(GTK_WINDOW(window), "Christians Aufnehmer"); //gtk_window_fullscreen(GTK_WINDOW(window)); g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL); gtk_widget_show_all(window); }
void createMPQCGuess(GtkWidget *box) { GtkWidget* frame; GtkWidget* vboxFrame; GtkWidget* vboxTable; GtkWidget* hboxButton; GtkWidget* comboSpinMultiplicity = NULL; GtkWidget* comboCharge = NULL; GtkWidget *table = NULL; GtkWidget *checkButton = NULL; gint i; table = gtk_table_new(5,4,FALSE); frame = gtk_frame_new (_("Parameters for computing the guess wave function")); gtk_widget_show (frame); gtk_box_pack_start (GTK_BOX (box), frame, TRUE, TRUE, 3); gtk_frame_set_label_align (GTK_FRAME (frame), 0.5, 0.5); vboxFrame = gtk_vbox_new (FALSE, 3); gtk_widget_show (vboxFrame); gtk_container_add (GTK_CONTAINER (frame), vboxFrame); hboxButton = gtk_hbox_new(TRUE, 5); gtk_box_pack_start (GTK_BOX (vboxFrame), hboxButton, FALSE, FALSE, 5); checkButton = gtk_check_button_new_with_label (_("Starting from core Hamiltonian guess.")); gtk_box_pack_start (GTK_BOX (hboxButton), checkButton, TRUE, TRUE, 5); vboxTable = gtk_vbox_new (FALSE, 3); gtk_box_pack_start (GTK_BOX (vboxFrame), vboxTable, TRUE, TRUE, 3); gtk_box_pack_start (GTK_BOX (vboxTable), table, TRUE, TRUE, 0); i = 0; comboCharge = addMPQCChargeToTable(table, i); i = 1; comboSpinMultiplicity = addMPQCSpinGuessToTable(table, i); if(GTK_IS_COMBO_BOX(comboCharge)) g_object_set_data(G_OBJECT (GTK_BIN(comboCharge)->child), "ComboSpinMultiplicity", comboSpinMultiplicity); i = 2; addMPQCMethodToTable(table, i, comboSpinMultiplicity); i = 3; addMPQCBasisGuessToTable(table,i); g_object_set_data(G_OBJECT (checkButton), "VboxTable", vboxTable); g_signal_connect(G_OBJECT(checkButton),"clicked", G_CALLBACK(coreButtonClicked),NULL); }
int main( int argc, char *argv[] ) { /* GtkWidget is the storage type for widgets */ GtkWidget *window; GtkWidget *frame; GtkWidget *button; gint i; /* Initialise GTK */ gtk_init(&argc, &argv); /* Create a new window */ window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window), "Frame Example"); /* Here we connect the "destroy" event to a signal handler */ gtk_signal_connect (GTK_OBJECT (window), "destroy", GTK_SIGNAL_FUNC (gtk_main_quit), NULL); gtk_widget_set_usize(window, 300, 300); /* Sets the border width of the window. */ gtk_container_set_border_width (GTK_CONTAINER (window), 10); /* Create a Frame */ frame = gtk_frame_new(NULL); gtk_container_add(GTK_CONTAINER(window), frame); /* Set the frame's label */ gtk_frame_set_label( GTK_FRAME(frame), "GTK Frame Widget" ); /* Align the label at the right of the frame */ gtk_frame_set_label_align( GTK_FRAME(frame), 1.0, 0.0); /* Set the style of the frame */ gtk_frame_set_shadow_type( GTK_FRAME(frame), GTK_SHADOW_ETCHED_OUT); gtk_widget_show(frame); /* Display the window */ gtk_widget_show (window); /* Enter the event loop */ gtk_main (); return(0); }
bool wxStaticBox::Create( wxWindow *parent, wxWindowID id, const wxString& label, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) { if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { wxFAIL_MSG( wxT("wxStaticBox creation failed") ); return false; } m_widget = GTKCreateFrame(label); g_object_ref(m_widget); // only base SetLabel needs to be called after GTKCreateFrame wxControl::SetLabel(label); m_parent->DoAddChild( this ); PostCreation(size); // need to set non default alignment? gfloat xalign = 0; if ( style & wxALIGN_CENTER ) xalign = 0.5; else if ( style & wxALIGN_RIGHT ) xalign = 1.0; gtk_frame_set_label_align(GTK_FRAME(m_widget), xalign, 0.5); #ifndef __WXGTK3__ if (!wx_is_at_least_gtk2(12)) { // we connect this signal to perform label-clipping as GTK >= 2.12 does g_signal_connect(m_widget, "size_allocate", G_CALLBACK(size_allocate), NULL); } #endif m_container.DisableSelfFocus(); return true; }
//____________________________________________________________________________________________ gboolean Animations::realizationHook( GSignalInvocationHint*, guint, const GValue* params, gpointer data ) { // get widget from params GtkWidget* widget( GTK_WIDGET( g_value_get_object( params ) ) ); // check type if( !GTK_IS_WIDGET( widget ) ) return FALSE; if( GTK_IS_NOTEBOOK( widget ) ) { gtk_notebook_set_show_border( GTK_NOTEBOOK(widget), FALSE ); } #if ENABLE_GROUPBOX_HACK if( GTK_IS_LABEL( widget ) && GTK_IS_FRAME( gtk_widget_get_parent( widget ) ) ) { GtkFrame *frame( GTK_FRAME( gtk_widget_get_parent( widget ) ) ); if( widget == gtk_frame_get_label_widget( frame ) && !Gtk::gtk_widget_find_parent( widget, "GtkPizza" ) ) { #if OXYGEN_DEBUG std::cout << "Oxygen::Animations::realizationHook -" << " widget: " << widget << " (" << G_OBJECT_TYPE_NAME( widget ) << ")" << " parent: " << frame << " (" << G_OBJECT_TYPE_NAME( frame ) << ")" << std::endl; #endif // modify alignment gtk_frame_set_label_align( frame, 0.5, 0.0 ); gtk_frame_set_shadow_type( frame, GTK_SHADOW_OUT ); // register to engine Animations& animations( *static_cast<Animations*>(data) ); animations.groupBoxLabelEngine().registerWidget( widget ); animations.groupBoxLabelEngine().adjustSize( widget ); } } #endif return TRUE; }
bool wxStaticBox::Create( wxWindow *parent, wxWindowID id, const wxString& label, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) { m_needParent = TRUE; if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { wxFAIL_MSG( wxT("wxStaticBox creation failed") ); return FALSE; } m_widget = GTKCreateFrame(label); wxControl::SetLabel(label); m_parent->DoAddChild( this ); PostCreation(size); // need to set non default alignment? gfloat xalign; if ( style & wxALIGN_CENTER ) xalign = 0.5; else if ( style & wxALIGN_RIGHT ) xalign = 1.0; else // wxALIGN_LEFT xalign = 0.0; if ( style & (wxALIGN_RIGHT | wxALIGN_CENTER) ) // left alignment is default gtk_frame_set_label_align(GTK_FRAME( m_widget ), xalign, 0.5); // in order to clip the label widget, we must connect to the size allocate // signal of this GtkFrame after the default GTK+'s allocate size function g_signal_connect_after (m_widget, "size_allocate", G_CALLBACK (gtk_frame_size_allocate), this); return TRUE; }
bool wxStaticBox::Create( wxWindow *parent, wxWindowID id, const wxString& label, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) { m_needParent = TRUE; if (!PreCreation( parent, pos, size ) || !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { wxFAIL_MSG( wxT("wxStaticBox creation failed") ); return FALSE; } wxControl::SetLabel(label); m_widget = gtk_frame_new(m_label.empty() ? (char *)NULL : (const char*) wxGTK_CONV( m_label ) ); m_parent->DoAddChild( this ); PostCreation(size); // need to set non default alignment? gfloat xalign; if ( style & wxALIGN_CENTER ) xalign = 0.5; else if ( style & wxALIGN_RIGHT ) xalign = 1.0; else // wxALIGN_LEFT xalign = 0.0; if ( xalign ) gtk_frame_set_label_align(GTK_FRAME( m_widget ), xalign, 0.5); return TRUE; }
int draw_kbd() { GtkWidget *kbd_window = NULL; GtkWidget *vbox = NULL; GtkWidget *line = NULL; GtkWidget *frame = NULL; GtkWidget *fixed = NULL; GtkWidget *hbox = NULL; GtkWidget *btn_ng = NULL; GdkColor kbd_color = {0, 0xbd10, 0xbd10, 0xbd10}; // counters int i = 0, j = 0, k = 0, sum = 0; int keynum = 0; // adjust every row buttons position. int x = 0; // the initial coordinate int initx = 0, inity = 0; // the key size. int w1 = 50, h1 = 40; int w2 = 54, h2 = 54; int w3 = 74; int w4 = 94; int w5 = 108; int w6 = 270; // the vertical position of key. int start_pair[LINE_KEY][3] = { {10, 1, h1}, {10 + h1, 1, h2}, {10 + h1 + h2, 1, h2}, {10 + h1 + 2 * h2, 1, h2}, {10 + h1 + 3 * h2, 1, h2}, {10 + h1 + 4 * h2, 1, h2} }; // the horizontal position of key. int rules[LINE_KEY][12] = { {17, w1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, // 17 {13, w2, 1, w4, 1, w2, -1, -1, -1, -1, -1, -1}, // 15 {1, w3, 12, w2, 1, w3, 1, w2, -1, -1, -1, -1}, // 15 {1, w4, 11, w2, 1, w5, 1, w2, -1, -1, -1, -1}, // 14 {1, w5, 10, w2, 1, w4, 2, w2, -1, -1, -1, -1}, // 14 {1, w3, 3, w2, 1, w6, 2, w2, 1, w3, 3, w2} // 11 }; if (!kbd_window) { kbd_window = gtk_window_new(GTK_WINDOW_POPUP); gtk_widget_modify_bg (kbd_window, GTK_STATE_NORMAL, &kbd_color); gtk_window_set_resizable(GTK_WINDOW(kbd_window), FALSE); gtk_window_set_title(GTK_WINDOW(kbd_window), "Kbd Test"); gtk_container_set_border_width(GTK_CONTAINER(kbd_window), 10); gtk_window_set_position(GTK_WINDOW(kbd_window), GTK_WIN_POS_CENTER); g_signal_connect(G_OBJECT(kbd_window), "key-press-event", G_CALLBACK(kbd_test_cb), NULL); g_signal_connect(G_OBJECT(kbd_window), "key-release-event", G_CALLBACK(kbd_test_cb), NULL); vbox = gtk_vbox_new(FALSE, 5); gtk_container_add(GTK_CONTAINER(kbd_window), vbox); label = gtk_label_new("键盘测试:请按指示颜色操作;不测试Fn键。"); gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 1); line = gtk_hseparator_new(); gtk_box_pack_start(GTK_BOX(vbox), line, FALSE, FALSE, 1); frame = gtk_frame_new("Keyboard Test Program"); gtk_frame_set_label_align(GTK_FRAME(frame), 0.5, 0.5); gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 1); fixed = gtk_fixed_new(); gtk_container_add(GTK_CONTAINER(frame), fixed); for(i = 0; i < LINE_KEY; ++i) { x = initx; for(j = 0; j < 12 / 2; ++j) { if (rules[i][2 * j] == -1) { break; } sum = rules[i][2 * j]; for (k = 0; k < sum; ++k) { button[keynum] = gtk_button_new_with_label(keyname[keynum]); gtk_widget_set_size_request(button[keynum], rules[i][2 * j + 1], start_pair[i][2]); gtk_fixed_put(GTK_FIXED(fixed), button[keynum], x, inity + start_pair[i][0]); x += rules[i][2 * j + 1]; ++keynum; } } } } gtk_widget_modify_bg (button[0], GTK_STATE_NORMAL, &btn_guide_color); gtk_widget_modify_bg (button[0], GTK_STATE_SELECTED, &btn_guide_color); gtk_widget_modify_bg (button[0], GTK_STATE_PRELIGHT, &btn_guide_color); hbox = gtk_hbox_new(FALSE, 5); gtk_box_pack_end(GTK_BOX(vbox), hbox, FALSE, FALSE, 1); btn_ng = gtk_button_new_with_label("NG"); gtk_box_pack_end(GTK_BOX(hbox), btn_ng, FALSE, FALSE, 1); g_signal_connect(G_OBJECT(btn_ng), "clicked", G_CALLBACK(kbd_ng_func), (gpointer)kbd_window); gtk_widget_show_all(kbd_window); gdk_keyboard_grab (kbd_window->window, TRUE, GDK_CURRENT_TIME); gtk_main(); return 0; }
//*********************** UPDATE INTERFACE PROJECT void update_project_window (gpointer data) { gchar **a=NULL; gchar **b=NULL; FILE *fich; char carac; char mot[1000]; mot[0]='\0'; int ligne=0; if(fopen(confile.projects,"rt")) { fich=fopen(confile.projects,"r"); while ((carac =fgetc(fich)) != EOF) { if (carac =='\n') { ligne++; if(ligne==(int)data) { a = g_strsplit (mot, ";", -1); b = g_strsplit (a[9], ":", -1); } mot[0]='\0'; } else { strncat(mot,&carac,1); } } fclose(fich); } GtkWidget *window1,*frame1,*vbox1,*hbox2,*label2,*hbox1,*button1,*button2,*label1,*hbox3,*label3,*hbox4,*label4,*hbox5,*label5,*hbox6,*label6,*hbox7,*label7,*hbox8,*label8,*hbox9,*label9; GtkWidget *button_icon,*button_command,*button_make_path,*button_path,*button_run; icon_affiche_stop(); window1 = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window1), _((_("Update Project")))); gtk_window_set_position (GTK_WINDOW (window1), GTK_WIN_POS_CENTER); gtk_window_set_transient_for(GTK_WINDOW(window1),GTK_WINDOW(tea_main_window)); gtk_widget_show(GTK_WIDGET(window1)); frame1 = gtk_frame_new (NULL); gtk_widget_show (GTK_WIDGET(frame1)); gtk_container_add (GTK_CONTAINER (window1), frame1); gtk_container_set_border_width (GTK_CONTAINER (frame1), 4); gtk_frame_set_label_align (GTK_FRAME (frame1), 0.02, 0.55); vbox1 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); gtk_widget_show (GTK_WIDGET(vbox1)); gtk_container_add (GTK_CONTAINER (frame1), vbox1); hbox2 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox2)); gtk_box_pack_start (GTK_BOX (vbox1), hbox2, TRUE, TRUE, 0); label2 = gtk_label_new (_("Projetc name : \t")); gtk_widget_show (GTK_WIDGET(label2)); gtk_box_pack_start (GTK_BOX (hbox2), label2, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label2), GTK_JUSTIFY_LEFT); entry_proj_name = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_name)); gtk_box_pack_start (GTK_BOX (hbox2), entry_proj_name, FALSE, FALSE, 0); gtk_widget_grab_focus(GTK_WIDGET(entry_proj_name)); gtk_entry_set_text (GTK_ENTRY (entry_proj_name), _(a[0])); hbox3 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox3)); gtk_box_pack_start (GTK_BOX (vbox1), hbox3, TRUE, TRUE, 0); label3 = gtk_label_new (_("Path : \t\t\t\t")); gtk_widget_show (GTK_WIDGET(label3)); gtk_box_pack_start (GTK_BOX (hbox3), label3, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label3), GTK_JUSTIFY_LEFT); entry_proj_path = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_path)); gtk_box_pack_start (GTK_BOX (hbox3), entry_proj_path, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_path), _(a[1])); button_path = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_path)); gtk_box_pack_start (GTK_BOX (hbox3), button_path, TRUE, TRUE, 0); hbox4 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox4)); gtk_box_pack_start (GTK_BOX (vbox1), hbox4, TRUE, TRUE, 0); label4 = gtk_label_new (_("Make path : \t\t")); gtk_widget_show (GTK_WIDGET(label4)); gtk_box_pack_start (GTK_BOX (hbox4), label4, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label4), GTK_JUSTIFY_LEFT); entry_proj_make_path = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_make_path)); gtk_box_pack_start (GTK_BOX (hbox4), entry_proj_make_path, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_make_path), _(a[2])); button_make_path = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_make_path)); gtk_box_pack_start (GTK_BOX (hbox4), button_make_path, TRUE, TRUE, 0); //************** hbox5 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox5)); gtk_box_pack_start (GTK_BOX (vbox1), hbox5, TRUE, TRUE, 0); label5 = gtk_label_new (_("Make command : \t")); gtk_widget_show (GTK_WIDGET(label5)); gtk_box_pack_start (GTK_BOX (hbox5), label5, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label5), GTK_JUSTIFY_LEFT); entry_proj_command = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_command)); gtk_box_pack_start (GTK_BOX (hbox5), entry_proj_command, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_command), _(a[4])); button_command = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_command)); gtk_box_pack_start (GTK_BOX (hbox5), button_command, TRUE, TRUE, 0); //************** hbox6 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox6)); gtk_box_pack_start (GTK_BOX (vbox1), hbox6, TRUE, TRUE, 0); label6 = gtk_label_new (_("Run target : \t\t")); gtk_widget_show (GTK_WIDGET(label6)); gtk_box_pack_start (GTK_BOX (hbox6), label6, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label6), GTK_JUSTIFY_LEFT); entry_proj_run = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_run)); gtk_box_pack_start (GTK_BOX (hbox6), entry_proj_run, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_run), _(a[3])); button_run = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_run)); gtk_box_pack_start (GTK_BOX (hbox6), button_run, TRUE, TRUE, 0); //************** hbox7 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox7)); gtk_box_pack_start (GTK_BOX (vbox1), hbox7, TRUE, TRUE, 0); label7 = gtk_label_new (_("Info/Note : \t\t")); gtk_widget_show (GTK_WIDGET(label7)); gtk_box_pack_start (GTK_BOX (hbox7), label7, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label7), GTK_JUSTIFY_LEFT); entry_proj_info = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_info)); gtk_box_pack_start (GTK_BOX (hbox7), entry_proj_info, FALSE, FALSE, 0); gtk_entry_set_width_chars (GTK_ENTRY(entry_proj_info),50); gtk_entry_set_text (GTK_ENTRY (entry_proj_info), _(a[5])); //************** hbox8 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox8)); gtk_box_pack_start (GTK_BOX (vbox1), hbox8, TRUE, TRUE, 0); label8 = gtk_label_new (_("Icon/IMG : \t\t")); gtk_widget_show (GTK_WIDGET(label8)); gtk_box_pack_start (GTK_BOX (hbox8), label8, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label8), GTK_JUSTIFY_LEFT); entry_proj_icon = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_icon)); gtk_box_pack_start (GTK_BOX (hbox8), entry_proj_icon, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_icon), _(a[6])); button_icon = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_icon)); gtk_box_pack_start (GTK_BOX (hbox8), button_icon, TRUE, TRUE, 0); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("URL/HTTP : \t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_url = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_url)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_url, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_url), _(a[7])); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("SFTP IP : \t\t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_sftp_ip = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_sftp_ip)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_sftp_ip, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_sftp_ip), _(a[8])); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("SFTP USER : \t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_sftp_user = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_sftp_user)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_sftp_user, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_sftp_user), _(b[0])); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("SFTP PATH : \t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_sftp_path = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_sftp_path)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_sftp_path, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_sftp_path), _(b[1])); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("FTP IP : \t\t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_ftp_ip = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_ftp_ip)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_ftp_ip, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_ftp_ip), _(a[10])); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("FTP USER : \t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_ftp_user = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_ftp_user)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_ftp_user, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_ftp_user), _(a[11])); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("FTP PASSWORD : \t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_ftp_pass = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_ftp_pass)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_ftp_pass, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_ftp_pass), _(a[12])); hbox1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox1)); gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0); button1 = gtk_button_new_from_stock ("gtk-cancel"); gtk_widget_show (GTK_WIDGET(button1)); gtk_box_pack_start (GTK_BOX (hbox1), button1, TRUE, TRUE, 0); gtk_button_set_relief (GTK_BUTTON (button1), GTK_RELIEF_NONE); button2 = gtk_button_new_from_stock ("gtk-apply"); gtk_widget_show (GTK_WIDGET(button2)); gtk_box_pack_start (GTK_BOX (hbox1), button2, TRUE, TRUE, 0); gtk_button_set_relief (GTK_BUTTON (button2), GTK_RELIEF_NONE); label1 = gtk_label_new (_("New Project")); gtk_widget_show (GTK_WIDGET(label1)); gtk_frame_set_label_widget (GTK_FRAME (frame1), label1); gtk_label_set_justify (GTK_LABEL (label1), GTK_JUSTIFY_LEFT); g_signal_connect_swapped ((gpointer) button_icon, "clicked",G_CALLBACK (open_dialog_path),entry_proj_icon); g_signal_connect_swapped ((gpointer) button_command, "clicked",G_CALLBACK (open_dialog_path),entry_proj_command); g_signal_connect_swapped ((gpointer) button_make_path, "clicked",G_CALLBACK (open_dialog_path_dir),entry_proj_make_path); g_signal_connect_swapped ((gpointer) button_path, "clicked",G_CALLBACK (open_dialog_path_dir),entry_proj_path); g_signal_connect_swapped ((gpointer) button_run, "clicked",G_CALLBACK (open_dialog_path),entry_proj_run); g_signal_connect_swapped ((gpointer) button1, "clicked",G_CALLBACK (icon_affiche_ok),NULL); g_signal_connect_swapped ((gpointer) button1, "clicked",G_CALLBACK (gtk_widget_destroy), window1); g_signal_connect_swapped ((gpointer) button2, "clicked",G_CALLBACK (icon_affiche_ok), NULL); g_signal_connect_swapped ((gpointer) button2, "clicked",G_CALLBACK (update_projects),data); g_signal_connect_swapped ((gpointer) button2, "clicked",G_CALLBACK (gtk_widget_destroy), window1); g_signal_connect_swapped ((gpointer) button1, "clicked",G_CALLBACK (gtk_widget_destroy), window1); }
//*********************** NEW PROJECT GtkWidget* new_project_window (void) { GtkWidget *window1,*frame1,*vbox1,*hbox2,*label2,*hbox1,*button1,*button2,*label1,*hbox3,*label3,*hbox4,*label4,*hbox5,*label5,*hbox6,*label6,*hbox7,*label7,*hbox8,*label8,*hbox9,*label9; GtkWidget *button_icon,*button_command,*button_make_path,*button_path,*button_run; icon_affiche_stop(); window1 = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window1), _((_("New Project")))); gtk_window_set_position (GTK_WINDOW (window1), GTK_WIN_POS_CENTER); gtk_window_set_transient_for(GTK_WINDOW(window1),GTK_WINDOW(tea_main_window)); gtk_widget_show(GTK_WIDGET(window1)); frame1 = gtk_frame_new (NULL); gtk_widget_show (GTK_WIDGET(frame1)); gtk_container_add (GTK_CONTAINER (window1), frame1); gtk_container_set_border_width (GTK_CONTAINER (frame1), 4); gtk_frame_set_label_align (GTK_FRAME (frame1), 0.02, 0.55); vbox1 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); gtk_widget_show (GTK_WIDGET(vbox1)); gtk_container_add (GTK_CONTAINER (frame1), vbox1); hbox2 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox2)); gtk_box_pack_start (GTK_BOX (vbox1), hbox2, TRUE, TRUE, 0); label2 = gtk_label_new (_("Projetc name : \t")); gtk_widget_show (GTK_WIDGET(label2)); gtk_box_pack_start (GTK_BOX (hbox2), label2, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label2), GTK_JUSTIFY_LEFT); entry_proj_name = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_name)); gtk_box_pack_start (GTK_BOX (hbox2), entry_proj_name, FALSE, FALSE, 0); gtk_widget_grab_focus(GTK_WIDGET(entry_proj_name)); hbox3 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox3)); gtk_box_pack_start (GTK_BOX (vbox1), hbox3, TRUE, TRUE, 0); label3 = gtk_label_new (_("Path : \t\t\t\t")); gtk_widget_show (GTK_WIDGET(label3)); gtk_box_pack_start (GTK_BOX (hbox3), label3, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label3), GTK_JUSTIFY_LEFT); entry_proj_path = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_path)); gtk_box_pack_start (GTK_BOX (hbox3), entry_proj_path, FALSE, FALSE, 0); button_path = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_path)); gtk_box_pack_start (GTK_BOX (hbox3), button_path, TRUE, TRUE, 0); hbox4 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox4)); gtk_box_pack_start (GTK_BOX (vbox1), hbox4, TRUE, TRUE, 0); label4 = gtk_label_new (_("Make path : \t\t")); gtk_widget_show (GTK_WIDGET(label4)); gtk_box_pack_start (GTK_BOX (hbox4), label4, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label4), GTK_JUSTIFY_LEFT); entry_proj_make_path = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_make_path)); gtk_box_pack_start (GTK_BOX (hbox4), entry_proj_make_path, FALSE, FALSE, 0); button_make_path = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_make_path)); gtk_box_pack_start (GTK_BOX (hbox4), button_make_path, TRUE, TRUE, 0); //************** hbox5 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox5)); gtk_box_pack_start (GTK_BOX (vbox1), hbox5, TRUE, TRUE, 0); label5 = gtk_label_new (_("Make command : \t")); gtk_widget_show (GTK_WIDGET(label5)); gtk_box_pack_start (GTK_BOX (hbox5), label5, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label5), GTK_JUSTIFY_LEFT); entry_proj_command = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_command)); gtk_box_pack_start (GTK_BOX (hbox5), entry_proj_command, FALSE, FALSE, 0); button_command = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_command)); gtk_box_pack_start (GTK_BOX (hbox5), button_command, TRUE, TRUE, 0); //************** hbox6 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox6)); gtk_box_pack_start (GTK_BOX (vbox1), hbox6, TRUE, TRUE, 0); label6 = gtk_label_new (_("Run target : \t\t")); gtk_widget_show (GTK_WIDGET(label6)); gtk_box_pack_start (GTK_BOX (hbox6), label6, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label6), GTK_JUSTIFY_LEFT); entry_proj_run = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_run)); gtk_box_pack_start (GTK_BOX (hbox6), entry_proj_run, FALSE, FALSE, 0); button_run = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_run)); gtk_box_pack_start (GTK_BOX (hbox6), button_run, TRUE, TRUE, 0); //************** hbox7 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox7)); gtk_box_pack_start (GTK_BOX (vbox1), hbox7, TRUE, TRUE, 0); label7 = gtk_label_new (_("Info/Note : \t\t")); gtk_widget_show (GTK_WIDGET(label7)); gtk_box_pack_start (GTK_BOX (hbox7), label7, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label7), GTK_JUSTIFY_LEFT); entry_proj_info = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_info)); gtk_box_pack_start (GTK_BOX (hbox7), entry_proj_info, FALSE, FALSE, 0); gtk_entry_set_width_chars (GTK_ENTRY(entry_proj_info),50); //************** hbox8 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox8)); gtk_box_pack_start (GTK_BOX (vbox1), hbox8, TRUE, TRUE, 0); label8 = gtk_label_new (_("Icon/IMG : \t\t")); gtk_widget_show (GTK_WIDGET(label8)); gtk_box_pack_start (GTK_BOX (hbox8), label8, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label8), GTK_JUSTIFY_LEFT); entry_proj_icon = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_icon)); gtk_box_pack_start (GTK_BOX (hbox8), entry_proj_icon, FALSE, FALSE, 0); button_icon = gtk_button_new_from_stock ("gtk-open"); gtk_widget_show (GTK_WIDGET(button_icon)); gtk_box_pack_start (GTK_BOX (hbox8), button_icon, TRUE, TRUE, 0); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("URL/HTTP : \t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_url = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_url)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_url, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_url), _("http://")); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("SFTP IP : \t\t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_sftp_ip = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_sftp_ip)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_sftp_ip, FALSE, FALSE, 0); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("SFTP USER : \t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_sftp_user = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_sftp_user)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_sftp_user, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_sftp_user), _("root")); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("SFTP PATH : \t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_sftp_path = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_sftp_path)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_sftp_path, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_proj_sftp_path), _("/")); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("FTP IP : \t\t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_ftp_ip = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_ftp_ip)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_ftp_ip, FALSE, FALSE, 0); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("FTP USER : \t\t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_ftp_user = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_ftp_user)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_ftp_user, FALSE, FALSE, 0); //************** hbox9 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox9)); gtk_box_pack_start (GTK_BOX (vbox1), hbox9, TRUE, TRUE, 0); label9 = gtk_label_new (_("FTP PASSWORD : \t")); gtk_widget_show (GTK_WIDGET(label9)); gtk_box_pack_start (GTK_BOX (hbox9), label9, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT); entry_proj_ftp_pass = gtk_entry_new (); gtk_widget_show (GTK_WIDGET(entry_proj_ftp_pass)); gtk_box_pack_start (GTK_BOX (hbox9), entry_proj_ftp_pass, FALSE, FALSE, 0); hbox1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_widget_show (GTK_WIDGET(hbox1)); gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0); button1 = gtk_button_new_from_stock ("gtk-cancel"); gtk_widget_show (GTK_WIDGET(button1)); gtk_box_pack_start (GTK_BOX (hbox1), button1, TRUE, TRUE, 0); gtk_button_set_relief (GTK_BUTTON (button1), GTK_RELIEF_NONE); button2 = gtk_button_new_from_stock ("gtk-apply"); gtk_widget_show (GTK_WIDGET(button2)); gtk_box_pack_start (GTK_BOX (hbox1), button2, TRUE, TRUE, 0); gtk_button_set_relief (GTK_BUTTON (button2), GTK_RELIEF_NONE); label1 = gtk_label_new (_("New Project")); gtk_widget_show (GTK_WIDGET(label1)); gtk_frame_set_label_widget (GTK_FRAME (frame1), label1); gtk_label_set_justify (GTK_LABEL (label1), GTK_JUSTIFY_LEFT); g_signal_connect_swapped ((gpointer) button_icon, "clicked",G_CALLBACK (open_dialog_path),entry_proj_icon); g_signal_connect_swapped ((gpointer) button_command, "clicked",G_CALLBACK (open_dialog_path),entry_proj_command); g_signal_connect_swapped ((gpointer) button_make_path, "clicked",G_CALLBACK (open_dialog_path_dir),entry_proj_make_path); g_signal_connect_swapped ((gpointer) button_path, "clicked",G_CALLBACK (open_dialog_path_dir),entry_proj_path); g_signal_connect_swapped ((gpointer) button_run, "clicked",G_CALLBACK (open_dialog_path),entry_proj_run); g_signal_connect_swapped ((gpointer) button1, "clicked",G_CALLBACK (icon_affiche_ok),NULL); g_signal_connect_swapped ((gpointer) button1, "clicked",G_CALLBACK (gtk_widget_destroy), window1); g_signal_connect_swapped ((gpointer) button2, "clicked",G_CALLBACK (icon_affiche_ok), NULL); g_signal_connect_swapped ((gpointer) button2, "clicked",G_CALLBACK (save_projects),NULL); g_signal_connect_swapped ((gpointer) button2, "clicked",G_CALLBACK (gtk_widget_destroy), window1); g_signal_connect_swapped ((gpointer) button1, "clicked",G_CALLBACK (gtk_widget_destroy), window1); return window1; }
static void facq_oscope_constructed(GObject *self) { FacqOscope *oscope = FACQ_OSCOPE(self); GdkPixbuf *icon = NULL; GtkWidget *vbox = NULL; GtkWidget *vpaned = NULL; GtkWidget *frame = NULL; GError *local_err = NULL; oscope->priv->plug = facq_plug_new(oscope->priv->address, oscope->priv->port, data_callback, oscope, 100, &local_err); if(local_err){ facq_log_write_v(FACQ_LOG_MSG_TYPE_ERROR,"%s", local_err->message); g_propagate_error(&oscope->priv->construct_error,local_err); return; } oscope->priv->window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(oscope->priv->window),_("Oscilloscope")); icon = facq_resources_icons_oscope(); gtk_window_set_icon(GTK_WINDOW(oscope->priv->window),icon); g_object_unref(icon); oscope->priv->menu = facq_oscope_menu_new(oscope); oscope->priv->toolbar = facq_oscope_toolbar_new(oscope); oscope->priv->plot = facq_oscope_plot_new(); oscope->priv->legend = facq_legend_new(); oscope->priv->statusbar = facq_statusbar_new(); /* connect the signals to the callbacks */ g_signal_connect(oscope->priv->plug,"connected", G_CALLBACK(connected_callback),oscope); g_signal_connect(oscope->priv->plug,"disconnected", G_CALLBACK(disconnected_callback),oscope); vbox = gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(oscope->priv->window),vbox); gtk_box_pack_start(GTK_BOX(vbox), facq_oscope_menu_get_widget(oscope->priv->menu), FALSE,FALSE,0); gtk_box_pack_start(GTK_BOX(vbox), facq_oscope_toolbar_get_widget(oscope->priv->toolbar), FALSE,FALSE,0); vpaned = gtk_vpaned_new(); gtk_widget_set_size_request(vpaned,256,-1); frame = gtk_frame_new(NULL); gtk_frame_set_shadow_type(GTK_FRAME(frame),GTK_SHADOW_NONE); gtk_container_add(GTK_CONTAINER(frame),facq_oscope_plot_get_widget(oscope->priv->plot)); gtk_paned_pack1(GTK_PANED(vpaned),frame,TRUE,FALSE); gtk_widget_set_size_request(frame,200,-1); frame = gtk_frame_new("Color legend"); gtk_frame_set_label_align(GTK_FRAME(frame),0.5,0); gtk_frame_set_shadow_type(GTK_FRAME(frame),GTK_SHADOW_NONE); gtk_widget_set_size_request(frame,50,-1); gtk_container_add(GTK_CONTAINER(frame),facq_legend_get_widget(oscope->priv->legend)); gtk_paned_pack2(GTK_PANED(vpaned),frame,FALSE,TRUE); gtk_box_pack_start(GTK_BOX(vbox),vpaned,TRUE,TRUE,0); gtk_box_pack_end(GTK_BOX(vbox), facq_statusbar_get_widget(oscope->priv->statusbar), FALSE,FALSE,0); g_signal_connect(oscope->priv->window,"delete-event", G_CALLBACK(delete_event),NULL); if(oscope->priv->address) facq_statusbar_write_msg(oscope->priv->statusbar, _("Listening on %s:%u"), oscope->priv->address,oscope->priv->port); else facq_statusbar_write_msg(oscope->priv->statusbar, _("Listening on all:%u"), oscope->priv->port); gtk_widget_show(oscope->priv->window); }
static void saa_main_window_init (SaaMainWindow * w) { GtkWidget * vbox_win; // Barre de menu ---------------------------------------------------------- GtkWidget *menubar; GtkWidget *image; GtkWidget *mit_fichier; GtkWidget *mit_fichier_menu; GtkWidget *it_charger_xml; GtkWidget *it_enregistrer_xml; GtkWidget *mit_exporter; GtkWidget *mit_exporter_menu; GtkWidget *it_exporter; GtkWidget *it_exporter_rb; GtkWidget *it_sep_fichier; GtkWidget *it_quitter; GtkWidget *mit_aide; GtkWidget *mit_aide_menu; GtkWidget *it_a_propos; GtkWidget *hbox_win; GtkWidget *vbox_prop; // Onglets ---------------------------------------------------------------- GtkWidget *notebook; GtkWidget *label_page1; GtkWidget *page1; GtkWidget *f_uniform; GtkWidget *lbl_uniform; GtkWidget *f_traitement; GtkWidget *lbl_traitement; GtkWidget *label_page2; GtkWidget *page2; GtkWidget *sw; GtkWidget *label_page3; GtkWidget *page3; // Barre d'état ----------------------------------------------------------- GtkWidget *hbox_status; GtkWidget *statusbar; GtkWidget *progressbar; GtkAccelGroup *accel_group; int i; const gchar* const * dirs = g_get_system_data_dirs(); gchar * path; // TODO init_files(); saa_init_files(); g_set_application_name (PACKAGE_NAME); w->icon = NULL; for(i=0; dirs[i] && !w->icon; i++) { path = g_build_filename(dirs[i], "images", "gsolaar-logo.png", NULL); if(g_file_test(path, G_FILE_TEST_EXISTS)) { w->icon = gdk_pixbuf_new_from_file(path, NULL); gtk_window_set_default_icon (w->icon); } g_free(path); } w->visuel = saa_visuel_creer(); accel_group = gtk_accel_group_new (); gtk_window_set_title (GTK_WINDOW (w), "GSolaar"); vbox_win = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_win); gtk_container_add (GTK_CONTAINER (w), vbox_win); menubar = gtk_menu_bar_new (); gtk_widget_show (menubar); gtk_box_pack_start (GTK_BOX (vbox_win), menubar, FALSE, FALSE, 0); mit_fichier = gtk_menu_item_new_with_mnemonic(_("_File")); gtk_widget_show (mit_fichier); gtk_container_add (GTK_CONTAINER (menubar), mit_fichier); mit_fichier_menu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (mit_fichier), mit_fichier_menu); // Chargement ------------------------------------------------------------- it_charger_xml = gtk_image_menu_item_new_from_stock (GTK_STOCK_OPEN, accel_group); gtk_widget_show (it_charger_xml); gtk_container_add (GTK_CONTAINER (mit_fichier_menu), it_charger_xml); // Sauvegarde ------------------------------------------------------------- it_enregistrer_xml = gtk_image_menu_item_new_from_stock (GTK_STOCK_SAVE, accel_group); gtk_widget_show (it_enregistrer_xml); gtk_container_add (GTK_CONTAINER (mit_fichier_menu), it_enregistrer_xml); // Patron ----------------------------------------------------------------- mit_exporter = gtk_image_menu_item_new_with_mnemonic(_("_Export")); gtk_widget_show(mit_exporter); gtk_container_add (GTK_CONTAINER (mit_fichier_menu), mit_exporter); image = gtk_image_new_from_stock (GTK_STOCK_CONVERT, GTK_ICON_SIZE_MENU); gtk_widget_show (image); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (mit_exporter), image); mit_exporter_menu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (mit_exporter), mit_exporter_menu); it_exporter = gtk_image_menu_item_new_with_label (_("Pattern ...")); gtk_widget_show (it_exporter); gtk_container_add (GTK_CONTAINER (mit_exporter_menu), it_exporter); it_exporter_rb = gtk_image_menu_item_new_with_label (_("Ruby script for SketchUp ...")); gtk_widget_show (it_exporter_rb); gtk_container_add (GTK_CONTAINER (mit_exporter_menu), it_exporter_rb); //------------------------------------------------------------------------- it_sep_fichier = gtk_menu_item_new (); gtk_widget_show (it_sep_fichier); gtk_container_add (GTK_CONTAINER (mit_fichier_menu), it_sep_fichier); gtk_widget_set_sensitive (it_sep_fichier, FALSE); it_quitter = gtk_image_menu_item_new_from_stock (GTK_STOCK_QUIT, accel_group); gtk_widget_show (it_quitter); gtk_container_add (GTK_CONTAINER (mit_fichier_menu), it_quitter); mit_aide = gtk_menu_item_new_with_mnemonic ("_?"); gtk_widget_show (mit_aide); gtk_container_add (GTK_CONTAINER (menubar), mit_aide); mit_aide_menu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (mit_aide), mit_aide_menu); it_a_propos = gtk_image_menu_item_new_from_stock ( GTK_STOCK_ABOUT, accel_group); gtk_widget_show (it_a_propos); gtk_container_add (GTK_CONTAINER (mit_aide_menu), it_a_propos); //------------------------------------------------------------------------- hbox_win = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox_win); gtk_box_pack_start (GTK_BOX (vbox_win), hbox_win, TRUE, TRUE, 0); vbox_prop = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_prop); gtk_box_pack_start (GTK_BOX (hbox_win), vbox_prop, TRUE, TRUE, 0); gtk_widget_set_size_request (vbox_prop, 500, 400); // Drawing Area w->area = saa_drawing_area_new_with_visuel (w->visuel); gtk_widget_show (w->area); gtk_box_pack_start (GTK_BOX (vbox_prop), w->area, TRUE, TRUE, 0); gtk_widget_set_size_request (w->area, 600, 400); notebook = gtk_notebook_new(); gtk_widget_show(notebook); gtk_container_set_border_width (GTK_CONTAINER (notebook), 5); gtk_box_pack_start (GTK_BOX (hbox_win), notebook, FALSE, FALSE, 0); label_page1 = gtk_label_new (_("Polyhedron")); gtk_widget_show (label_page1); page1 = gtk_vbox_new (FALSE, 5); gtk_widget_show (page1); gtk_container_set_border_width (GTK_CONTAINER (page1), 5); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page1, label_page1); f_uniform = gtk_frame_new (NULL); gtk_widget_show (f_uniform); gtk_box_pack_start (GTK_BOX (page1), f_uniform, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (f_uniform), 5); gtk_frame_set_label_align (GTK_FRAME (f_uniform), 0.5, 0.5); lbl_uniform = gtk_label_new (_("Uniform polyhedra")); gtk_widget_show (lbl_uniform); gtk_frame_set_label_widget (GTK_FRAME (f_uniform), lbl_uniform); gtk_label_set_justify (GTK_LABEL (lbl_uniform), GTK_JUSTIFY_LEFT); // Solid manager w->manager = saa_solid_manager_new_with_visuel(w->visuel); gtk_widget_show(w->manager); gtk_container_add (GTK_CONTAINER (f_uniform), w->manager); f_traitement = gtk_frame_new (NULL); gtk_widget_show (f_traitement); gtk_box_pack_start (GTK_BOX (page1), f_traitement, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (f_traitement), 5); gtk_frame_set_label_align (GTK_FRAME (f_traitement), 0.5, 0.5); lbl_traitement = gtk_label_new (_("Treatment")); gtk_widget_show (lbl_traitement); gtk_frame_set_label_widget (GTK_FRAME (f_traitement), lbl_traitement); gtk_label_set_justify (GTK_LABEL (lbl_traitement), GTK_JUSTIFY_LEFT); // Solid Handler w->handler = saa_solid_handler_new_with_visuel(w->visuel); gtk_widget_show(w->handler); gtk_container_add (GTK_CONTAINER (f_traitement), w->handler); label_page2 = gtk_label_new (_("Navigation")); gtk_widget_show (label_page2); page2 = gtk_vbox_new (FALSE, 5); gtk_widget_show (page2); gtk_container_set_border_width (GTK_CONTAINER (page2), 5); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page2, label_page2); sw = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show(sw); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw), GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start (GTK_BOX (page2), sw, TRUE, TRUE, 0); // Treeview navigator w->explorer = saa_tree_view_new_with_visuel(w->visuel); gtk_widget_show(w->explorer); gtk_container_add (GTK_CONTAINER (sw), w->explorer); // TODO a deplacer dans window realize saa_tree_view_update(SAA_TREE_VIEW(w->explorer)); label_page3 = gtk_label_new (_("Display")); gtk_widget_show (label_page3); page3 = gtk_vbox_new (FALSE, 5); gtk_widget_show (page3); gtk_container_set_border_width (GTK_CONTAINER (page3), 5); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), page3, label_page3); // Solid display w->display = saa_solid_display_new_with_visuel(w->visuel); gtk_widget_show (w->display); gtk_box_pack_start(GTK_BOX(page3), w->display, TRUE, TRUE, 0); hbox_status = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox_status); gtk_box_pack_start (GTK_BOX (vbox_win), hbox_status, FALSE, FALSE, 0); statusbar = gtk_statusbar_new (); gtk_widget_show (statusbar); gtk_box_pack_start (GTK_BOX (hbox_status), statusbar, TRUE, TRUE, 0); progressbar = gtk_progress_bar_new (); gtk_widget_show (progressbar); gtk_box_pack_start (GTK_BOX (hbox_status), progressbar, FALSE, FALSE, 0); g_signal_connect_swapped ((gpointer)w->manager, "solid-changed", G_CALLBACK (saa_tree_view_update), w->explorer); g_signal_connect_swapped ((gpointer)w->manager, "solid-changed", G_CALLBACK (gtk_widget_queue_draw), w->area); g_signal_connect_swapped ((gpointer)w->display, "solid-changed", G_CALLBACK (gtk_widget_queue_draw), w->area); g_signal_connect_swapped ((gpointer)w->handler, "solid-changed", G_CALLBACK (saa_tree_view_update), w->explorer); g_signal_connect_swapped ((gpointer)w->handler, "solid-changed", G_CALLBACK (gtk_widget_queue_draw), w->area); g_signal_connect_swapped ((gpointer)w->area, "vertex-selected", G_CALLBACK (saa_tree_view_select_vertex), w->explorer); g_signal_connect_swapped ((gpointer)w->area, "edge-selected", G_CALLBACK (saa_tree_view_select_edge), w->explorer); g_signal_connect_swapped ((gpointer)w->area, "wing-selected", G_CALLBACK (saa_tree_view_select_wing), w->explorer); g_signal_connect_swapped ((gpointer)w->explorer, "vertex-selected", G_CALLBACK (saa_drawing_area_select_vertex), w->area); g_signal_connect_swapped ((gpointer)w->explorer, "edge-selected", G_CALLBACK (saa_drawing_area_select_edge), w->area); g_signal_connect_swapped ((gpointer)w->explorer, "wing-selected", G_CALLBACK (saa_drawing_area_select_wing), w->area); g_signal_connect_swapped((gpointer)it_charger_xml, "activate", G_CALLBACK (saa_main_window_charger_xml_clicked), w); g_signal_connect_swapped((gpointer)it_enregistrer_xml, "activate", G_CALLBACK (saa_main_window_sauver_xml_activate), w); g_signal_connect_swapped((gpointer)it_exporter, "activate", G_CALLBACK (saa_main_window_exporter_activate), w); g_signal_connect_swapped((gpointer)it_exporter_rb, "activate", G_CALLBACK (saa_main_window_exporter_rb_activate), w); g_signal_connect_swapped ((gpointer)it_quitter, "activate", G_CALLBACK (saa_main_window_quitter_activate), w); g_signal_connect (G_OBJECT(w), "destroy", G_CALLBACK (saa_main_window_quitter_activate), NULL); g_signal_connect_swapped ((gpointer)it_a_propos, "activate", G_CALLBACK (saa_main_window_a_propos_activate), w); gtk_window_add_accel_group (GTK_WINDOW (w), accel_group); }
GtkWidget * pgd_page_create_widget (PopplerDocument *document) { PgdPageDemo *demo; GtkWidget *vbox; GtkWidget *hbox, *page_selector; GtkWidget *button; GtkWidget *frame, *alignment; GtkWidget *table; GtkWidget *label; GtkWidget *thumnail_box; gchar *str; gint n_pages; gint row = 0; demo = g_new0 (PgdPageDemo, 1); demo->doc = g_object_ref (document); n_pages = poppler_document_get_n_pages (document); vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6); label = gtk_label_new ("Page:"); gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0); gtk_widget_show (label); page_selector = gtk_spin_button_new_with_range (1, n_pages, 1); g_signal_connect (G_OBJECT (page_selector), "value-changed", G_CALLBACK (pgd_page_page_selector_value_changed), (gpointer)demo); gtk_box_pack_start (GTK_BOX (hbox), page_selector, FALSE, TRUE, 0); gtk_widget_show (page_selector); str = g_strdup_printf ("of %d", n_pages); label = gtk_label_new (str); gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0); gtk_widget_show (label); g_free (str); button = gtk_button_new_with_label ("Get Info"); g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (pgd_page_get_info), (gpointer)demo); gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0); gtk_widget_show (button); gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0); gtk_widget_show (hbox); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6); frame = gtk_frame_new (NULL); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE); label = gtk_label_new (NULL); gtk_label_set_markup (GTK_LABEL (label), "<b>Page Properties</b>"); gtk_frame_set_label_widget (GTK_FRAME (frame), label); gtk_widget_show (label); alignment = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5); gtk_container_add (GTK_CONTAINER (frame), alignment); gtk_widget_show (alignment); table = gtk_grid_new (); gtk_grid_set_column_spacing (GTK_GRID (table), 6); gtk_grid_set_row_spacing (GTK_GRID (table), 6); pgd_table_add_property_with_value_widget (GTK_GRID (table), "<b>Page Index:</b>", &(demo->index), NULL, &row); pgd_table_add_property_with_value_widget (GTK_GRID (table), "<b>Page Label:</b>", &(demo->label), NULL, &row); pgd_table_add_property_with_value_widget (GTK_GRID (table), "<b>Page Size:</b>", &(demo->size), NULL, &row); pgd_table_add_property_with_value_widget (GTK_GRID (table), "<b>Page Duration:</b>", &(demo->duration), NULL, &row); gtk_container_add (GTK_CONTAINER (alignment), table); gtk_widget_show (table); gtk_box_pack_start (GTK_BOX (hbox), frame, TRUE, TRUE, 0); gtk_widget_show (frame); frame = gtk_frame_new (NULL); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE); gtk_frame_set_label_align (GTK_FRAME (frame), 0.5, 0.5); label = gtk_label_new (NULL); gtk_label_set_markup (GTK_LABEL (label), "<b>Page Thumbnail</b>"); gtk_frame_set_label_widget (GTK_FRAME (frame), label); gtk_widget_show (label); alignment = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5); gtk_container_add (GTK_CONTAINER (frame), alignment); gtk_widget_show (alignment); thumnail_box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6); demo->thumbnail = gtk_image_new (); gtk_box_pack_start (GTK_BOX (thumnail_box), demo->thumbnail, TRUE, TRUE, 0); gtk_widget_show (demo->thumbnail); demo->thumbnail_size = gtk_label_new (NULL); g_object_set (G_OBJECT (demo->thumbnail_size), "xalign", 0.5, NULL); gtk_box_pack_start (GTK_BOX (thumnail_box), demo->thumbnail_size, TRUE, TRUE, 0); gtk_widget_show (demo->thumbnail_size); gtk_container_add (GTK_CONTAINER (alignment), thumnail_box); gtk_widget_show (thumnail_box); gtk_box_pack_start (GTK_BOX (hbox), frame, TRUE, TRUE, 0); gtk_widget_show (frame); gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0); gtk_widget_show (hbox); g_object_weak_ref (G_OBJECT (vbox), (GWeakNotify)pgd_page_free, (gpointer)demo); return vbox; }
static GtkWidget *create_custom_widget(GtkPrintOperation *operation, gpointer user_data) { /* copied from interface.c */ GtkWidget *page; GtkWidget *frame33; GtkWidget *alignment36; GtkWidget *vbox30; GtkWidget *hbox10; GtkWidget *label203; PrintWidgets *w = user_data; gtk_print_operation_set_custom_tab_label(operation, _("Document Setup")); page = gtk_vbox_new(FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(page), 5); w->check_print_linenumbers = gtk_check_button_new_with_mnemonic(_("Print line numbers")); gtk_box_pack_start(GTK_BOX(page), w->check_print_linenumbers, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(w->check_print_linenumbers, _("Add line numbers to the printed page")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w->check_print_linenumbers), printing_prefs.print_line_numbers); w->check_print_pagenumbers = gtk_check_button_new_with_mnemonic(_("Print page numbers")); gtk_box_pack_start(GTK_BOX(page), w->check_print_pagenumbers, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(w->check_print_pagenumbers, _("Add page numbers at the bottom of each page. It takes 2 lines of the page.")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w->check_print_pagenumbers), printing_prefs.print_page_numbers); w->check_print_pageheader = gtk_check_button_new_with_mnemonic(_("Print page header")); gtk_box_pack_start(GTK_BOX(page), w->check_print_pageheader, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(w->check_print_pageheader, _("Add a little header to every page containing the page number, the filename and the current date (see below). It takes 3 lines of the page.")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w->check_print_pageheader), printing_prefs.print_page_header); g_signal_connect(w->check_print_pageheader, "toggled", G_CALLBACK(on_page_header_toggled), w); frame33 = gtk_frame_new(NULL); gtk_box_pack_start(GTK_BOX(page), frame33, FALSE, FALSE, 0); gtk_frame_set_label_align(GTK_FRAME(frame33), 0, 0); gtk_frame_set_shadow_type(GTK_FRAME(frame33), GTK_SHADOW_NONE); alignment36 = gtk_alignment_new(0, 0.5, 1, 1); gtk_container_add(GTK_CONTAINER(frame33), alignment36); gtk_alignment_set_padding(GTK_ALIGNMENT(alignment36), 0, 0, 12, 0); vbox30 = gtk_vbox_new(FALSE, 1); gtk_container_add(GTK_CONTAINER(alignment36), vbox30); w->check_print_basename = gtk_check_button_new_with_mnemonic(_("Use the basename of the printed file")); gtk_box_pack_start(GTK_BOX(vbox30), w->check_print_basename, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(w->check_print_basename, _("Print only the basename(without the path) of the printed file")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w->check_print_basename), printing_prefs.page_header_basename); hbox10 = gtk_hbox_new(FALSE, 5); gtk_box_pack_start(GTK_BOX(vbox30), hbox10, TRUE, TRUE, 0); label203 = gtk_label_new(_("Date format:")); gtk_box_pack_start(GTK_BOX(hbox10), label203, FALSE, FALSE, 0); w->entry_print_dateformat = gtk_entry_new(); ui_entry_add_clear_icon(GTK_ENTRY(w->entry_print_dateformat)); gtk_box_pack_start(GTK_BOX(hbox10), w->entry_print_dateformat, TRUE, TRUE, 0); gtk_widget_set_tooltip_text(w->entry_print_dateformat, _("Specify a format for the date and time stamp which is added to the page header on each page. You can use any conversion specifiers which can be used with the ANSI C strftime function.")); gtk_entry_set_text(GTK_ENTRY(w->entry_print_dateformat), printing_prefs.page_header_datefmt); on_page_header_toggled(GTK_TOGGLE_BUTTON(w->check_print_pageheader), w); gtk_widget_show_all(page); return page; }
static void create_sub_group_widgets(GtkWidget *parent_widget, const char *parent_group) { char **sgrp_syms = uim_custom_group_subgroups(parent_group); char **sgrp_sym; for (sgrp_sym = sgrp_syms; *sgrp_sym; sgrp_sym++) { struct uim_custom_group *sgrp = uim_custom_group_get(*sgrp_sym); char **custom_syms, **custom_sym; GString *sgrp_str; GtkWidget *frame; GtkWidget *vbox; if (!sgrp) continue; /* XXX quick hack to use AND expression of groups */ sgrp_str = g_string_new(""); g_string_printf(sgrp_str, "%s '%s", parent_group, *sgrp_sym); custom_syms = uim_custom_collect_by_group(sgrp_str->str); g_string_free(sgrp_str, TRUE); if (!custom_syms) continue; if (!*custom_syms) { uim_custom_symbol_list_free(custom_syms); continue; } #if GTK_CHECK_VERSION(3, 2, 0) vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 8); #else vbox = gtk_vbox_new(FALSE, 8); #endif if (strcmp(*sgrp_sym, "main")) { frame = gtk_frame_new(sgrp->label); gtk_frame_set_label_align(GTK_FRAME(frame), 0.02, 0.5); gtk_box_pack_start(GTK_BOX(parent_widget), frame, FALSE, FALSE, 0); gtk_container_add(GTK_CONTAINER(frame), vbox); } else { /* * Removing frame for 'main' subgroup. If you feel it * strange, Replace it as you favor. -- YamaKen 2005-02-06 */ gtk_box_pack_start(GTK_BOX(parent_widget), vbox, FALSE, FALSE, 0); } gtk_container_set_border_width(GTK_CONTAINER(vbox), 6); for (custom_sym = custom_syms; *custom_sym; custom_sym++) { uim_pref_gtk_add_custom(vbox, *custom_sym); } uim_custom_symbol_list_free(custom_syms); uim_custom_group_free(sgrp); } uim_custom_symbol_list_free(sgrp_syms); }
void rssyl_gtk_prop(RFolderItem *ritem) { MainWindow *mainwin = mainwindow_get_mainwindow(); RFeedProp *feedprop; GtkWidget *vbox, *urllabel, *urlframe, *urlalign, *table, *label, *inner_vbox, *auth_hbox, *auth_user_label, *auth_pass_label, *hsep, *sep, *bbox, *cancel_button, *cancel_align, *cancel_hbox, *cancel_image, *cancel_label, *ok_button, *ok_align, *ok_hbox, *ok_image, *ok_label, *trim_button, *silent_update_label; GtkObject *adj; gint refresh; gint row = 0; g_return_if_fail(ritem != NULL); feedprop = g_new0(RFeedProp, 1); /**** Create required widgets ****/ /* Window */ feedprop->window = gtk_window_new(GTK_WINDOW_TOPLEVEL); /* URL entry */ feedprop->url = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(feedprop->url), ritem->url); /* URL auth type combo */ #if !GTK_CHECK_VERSION(2, 24, 0) feedprop->auth_type = gtk_combo_box_new_text(); gtk_combo_box_append_text(GTK_COMBO_BOX(feedprop->auth_type), #else feedprop->auth_type = gtk_combo_box_text_new(); gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(feedprop->auth_type), #endif _("No authentication")); #if !GTK_CHECK_VERSION(2, 24, 0) gtk_combo_box_append_text(GTK_COMBO_BOX(feedprop->auth_type), #else gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(feedprop->auth_type), #endif _("HTTP Basic authentication")); gtk_combo_box_set_active(GTK_COMBO_BOX(feedprop->auth_type), ritem->auth->type); /* Auth username */ feedprop->auth_username = gtk_entry_new(); gtk_entry_set_text(GTK_ENTRY(feedprop->auth_username), ritem->auth->username); /* Auth password */ feedprop->auth_password = gtk_entry_new(); gtk_entry_set_visibility(GTK_ENTRY(feedprop->auth_password), FALSE); gtk_entry_set_text(GTK_ENTRY(feedprop->auth_password), ritem->auth->password); /* "Use default refresh interval" checkbutton */ feedprop->default_refresh_interval = gtk_check_button_new_with_mnemonic( _("Use default refresh interval")); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(feedprop->default_refresh_interval), ritem->default_refresh_interval); if( ritem->refresh_interval >= 0 && !ritem->default_refresh_interval ) refresh = ritem->refresh_interval; else refresh = rssyl_prefs_get()->refresh; /* "Keep old items" checkbutton */ feedprop->keep_old = gtk_check_button_new_with_mnemonic( _("Keep old items")); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(feedprop->keep_old), ritem->keep_old); /* "Trim" button */ trim_button = gtk_button_new_with_mnemonic(_("_Trim")); gtk_widget_set_tooltip_text(trim_button, _("Update feed, deleting items which are no longer in the source feed")); feedprop->fetch_comments = gtk_check_button_new_with_mnemonic( _("Fetch comments if possible")); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(feedprop->fetch_comments), ritem->fetch_comments); /* Fetch comments max age spinbutton */ adj = gtk_adjustment_new(ritem->fetch_comments_max_age, -1, 100000, 1, 10, 0); feedprop->fetch_comments_max_age = gtk_spin_button_new(GTK_ADJUSTMENT(adj), 1, 0); /* Refresh interval spinbutton */ adj = gtk_adjustment_new(refresh, 0, 100000, 10, 100, 0); feedprop->refresh_interval = gtk_spin_button_new(GTK_ADJUSTMENT(adj), 1, 0); /* Silent update - combobox */ #if !GTK_CHECK_VERSION(2, 24, 0) feedprop->silent_update = gtk_combo_box_new_text(); gtk_combo_box_append_text(GTK_COMBO_BOX(feedprop->silent_update), #else feedprop->silent_update = gtk_combo_box_text_new(); gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(feedprop->silent_update), #endif _("Always mark as new")); #if !GTK_CHECK_VERSION(2, 24, 0) gtk_combo_box_append_text(GTK_COMBO_BOX(feedprop->silent_update), #else gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(feedprop->silent_update), #endif _("If only its text changed")); #if !GTK_CHECK_VERSION(2, 24, 0) gtk_combo_box_append_text(GTK_COMBO_BOX(feedprop->silent_update), #else gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(feedprop->silent_update), #endif _("Never mark as new")); gtk_combo_box_set_active(GTK_COMBO_BOX(feedprop->silent_update), ritem->silent_update); feedprop->write_heading = gtk_check_button_new_with_mnemonic( _("Add item title to top of message")); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(feedprop->write_heading), ritem->write_heading); /* Ignore title rename - checkbox */ feedprop->ignore_title_rename = gtk_check_button_new_with_mnemonic( _("Ignore title rename")); gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(feedprop->ignore_title_rename), ritem->ignore_title_rename); gtk_widget_set_tooltip_text(feedprop->ignore_title_rename, _("Enable this to keep current folder name, even if feed author changes title of the feed.")); /* Verify SSL peer certificate */ feedprop->ssl_verify_peer = gtk_check_button_new_with_label( _("Verify SSL certificate validity")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(feedprop->ssl_verify_peer), ritem->ssl_verify_peer); /* === Now pack all the widgets */ vbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(feedprop->window), vbox); /* URL frame */ urlframe = gtk_frame_new(NULL); gtk_container_set_border_width(GTK_CONTAINER(urlframe), 5); gtk_frame_set_label_align(GTK_FRAME(urlframe), 0.05, 0.5); gtk_frame_set_shadow_type(GTK_FRAME(urlframe), GTK_SHADOW_ETCHED_OUT); gtk_box_pack_start(GTK_BOX(vbox), urlframe, FALSE, FALSE, 0); /* Label for URL frame */ urllabel = gtk_label_new(_("<b>Source URL:</b>")); gtk_label_set_use_markup(GTK_LABEL(urllabel), TRUE); gtk_misc_set_padding(GTK_MISC(urllabel), 5, 0); gtk_frame_set_label_widget(GTK_FRAME(urlframe), urllabel); /* URL entry (+ alignment in frame) */ urlalign = gtk_alignment_new(0, 0.5, 1, 1); gtk_alignment_set_padding(GTK_ALIGNMENT(urlalign), 5, 5, 5, 5); gtk_container_add(GTK_CONTAINER(urlframe), urlalign); inner_vbox = gtk_vbox_new(FALSE, 5); gtk_box_pack_start(GTK_BOX(inner_vbox), feedprop->url, FALSE, FALSE, 0); gtk_entry_set_activates_default(GTK_ENTRY(feedprop->url), TRUE); gtk_container_add(GTK_CONTAINER(urlalign), inner_vbox); /* Auth combo + user (label + entry) + pass (label + entry) */ auth_hbox = gtk_hbox_new(FALSE, 5); gtk_box_pack_start(GTK_BOX(auth_hbox), feedprop->auth_type, FALSE, FALSE, 0); g_signal_connect(G_OBJECT(feedprop->auth_type), "changed", G_CALLBACK(rssyl_feedprop_auth_type_changed_cb), (gpointer) feedprop); g_signal_emit_by_name(G_OBJECT(feedprop->auth_type), "changed"); auth_user_label = gtk_label_new(_("User name")); gtk_box_pack_start(GTK_BOX(auth_hbox), auth_user_label, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(auth_hbox), feedprop->auth_username, FALSE, FALSE, 0); auth_pass_label = gtk_label_new(_("Password")); gtk_box_pack_start(GTK_BOX(auth_hbox), auth_pass_label, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(auth_hbox), feedprop->auth_password, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(inner_vbox), auth_hbox, FALSE, FALSE, 0); /* Table for remaining properties */ table = gtk_table_new(11, 2, FALSE); gtk_box_pack_start(GTK_BOX(vbox), table, TRUE, TRUE, 0); /* Fetch comments - checkbutton */ gtk_table_attach(GTK_TABLE(table), feedprop->fetch_comments, 0, 2, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 0); g_signal_connect(G_OBJECT(feedprop->fetch_comments), "toggled", G_CALLBACK(rssyl_feedprop_togglebutton_toggled_cb), (gpointer)feedprop); row++; /* Fetch comments max age - label */ label = gtk_label_new(_("<b>Fetch comments on posts aged less than:</b>\n" "<small>(In days; set to -1 to fetch all comments)</small>")); gtk_label_set_use_markup(GTK_LABEL(label), TRUE); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); gtk_table_attach(GTK_TABLE(table), label, 0, 1, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 5); /* Fetch comments max age - spinbutton */ gtk_widget_set_sensitive(feedprop->fetch_comments_max_age, ritem->fetch_comments); gtk_table_attach(GTK_TABLE(table), feedprop->fetch_comments_max_age, 1, 2, row, row+1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 10, 5); row++; /* Separator below comments max age */ hsep = gtk_hseparator_new(); gtk_widget_set_size_request(hsep, -1, 10); gtk_table_attach(GTK_TABLE(table), hsep, 0, 2, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 5); row++; /* Keep old items - checkbutton */ gtk_table_attach(GTK_TABLE(table), feedprop->keep_old, 0, 1, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 0); /* 'Trim' - button */ gtk_table_attach(GTK_TABLE(table), trim_button, 1, 2, row, row+1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 10, 0); g_signal_connect(G_OBJECT(trim_button), "clicked", G_CALLBACK(rssyl_props_trim_cb), ritem); row++; hsep = gtk_hseparator_new(); gtk_widget_set_size_request(hsep, -1, 10); gtk_table_attach(GTK_TABLE(table), hsep, 0, 2, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 5); row++; /* Use default refresh interval - checkbutton */ gtk_table_attach(GTK_TABLE(table), feedprop->default_refresh_interval, 0, 2, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 0); g_signal_connect(G_OBJECT(feedprop->default_refresh_interval), "toggled", G_CALLBACK(rssyl_feedprop_togglebutton_toggled_cb), (gpointer)feedprop); row++; /* Refresh interval - label */ label = gtk_label_new(_("<b>Refresh interval in minutes:</b>\n" "<small>(Set to 0 to disable automatic refreshing for this feed)" "</small>")); gtk_label_set_use_markup(GTK_LABEL(label), TRUE); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); gtk_table_attach(GTK_TABLE(table), label, 0, 1, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 5); /* Refresh interval - spinbutton */ gtk_widget_set_sensitive(feedprop->refresh_interval, !ritem->default_refresh_interval); gtk_table_attach(GTK_TABLE(table), feedprop->refresh_interval, 1, 2, row, row+1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 10, 5); row++; hsep = gtk_hseparator_new(); gtk_widget_set_size_request(hsep, -1, 10); gtk_table_attach(GTK_TABLE(table), hsep, 0, 2, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 5); row++; /* Silent update - label */ silent_update_label = gtk_label_new(_("<b>If an item changes, do not mark it as new:</b>")); gtk_label_set_use_markup(GTK_LABEL(silent_update_label), TRUE); gtk_misc_set_alignment(GTK_MISC(silent_update_label), 0, 0.5); gtk_table_attach(GTK_TABLE(table), silent_update_label, 0, 1, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 5); gtk_table_attach(GTK_TABLE(table), feedprop->silent_update, 1, 2, row, row+1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 10, 5); row++; hsep = gtk_hseparator_new(); gtk_widget_set_size_request(hsep, -1, 10); gtk_table_attach(GTK_TABLE(table), hsep, 0, 2, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 5); row++; /* Write heading - checkbox */ gtk_table_attach(GTK_TABLE(table), feedprop->write_heading, 0, 2, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 0); row++; /* Ignore title rename - checkbutton */ gtk_table_attach(GTK_TABLE(table), feedprop->ignore_title_rename, 0, 1, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 0); row++; /* Verify SSL peer certificate - checkbutton */ gtk_table_attach(GTK_TABLE(table), feedprop->ssl_verify_peer, 0, 1, row, row+1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 10, 0); row++; /* Separator above the button box */ sep = gtk_hseparator_new(); gtk_widget_set_size_request(sep, -1, 10); gtk_box_pack_start(GTK_BOX(vbox), sep, FALSE, FALSE, 0); /* Buttonbox */ bbox = gtk_hbutton_box_new(); gtk_container_set_border_width(GTK_CONTAINER(bbox), 5); gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END); gtk_box_set_spacing(GTK_BOX(bbox), 5); gtk_box_pack_end(GTK_BOX(vbox), bbox, FALSE, FALSE, 0); /* Cancel button */ cancel_button = gtk_button_new(); gtk_container_add(GTK_CONTAINER(bbox), cancel_button); cancel_align = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_container_add(GTK_CONTAINER(cancel_button), cancel_align); cancel_hbox = gtk_hbox_new(FALSE, 2); gtk_container_add(GTK_CONTAINER(cancel_align), cancel_hbox); cancel_image = gtk_image_new_from_stock(GTK_STOCK_CANCEL, GTK_ICON_SIZE_BUTTON); gtk_box_pack_start(GTK_BOX(cancel_hbox), cancel_image, FALSE, FALSE, 0); cancel_label = gtk_label_new_with_mnemonic(_("_Cancel")); gtk_box_pack_end(GTK_BOX(cancel_hbox), cancel_label, FALSE, FALSE, 0); g_signal_connect(G_OBJECT(cancel_button), "clicked", G_CALLBACK(rssyl_props_cancel_cb), ritem); /* OK button */ ok_button = gtk_button_new(); gtk_container_add(GTK_CONTAINER(bbox), ok_button); GTK_WIDGET_SET_FLAGS(ok_button, GTK_CAN_DEFAULT ); ok_align = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_container_add(GTK_CONTAINER(ok_button), ok_align); ok_hbox = gtk_hbox_new(FALSE, 2); gtk_container_add(GTK_CONTAINER(ok_align), ok_hbox); ok_image = gtk_image_new_from_stock(GTK_STOCK_OK, GTK_ICON_SIZE_BUTTON); gtk_box_pack_start(GTK_BOX(ok_hbox), ok_image, FALSE, FALSE, 0); ok_label = gtk_label_new_with_mnemonic(_("_OK")); gtk_box_pack_end(GTK_BOX(ok_hbox), ok_label, FALSE, FALSE, 0); g_signal_connect(G_OBJECT(ok_button), "clicked", G_CALLBACK(rssyl_props_ok_cb), ritem); /* Set some misc. stuff */ gtk_window_set_title(GTK_WINDOW(feedprop->window), g_strdup(_("Set feed properties")) ); gtk_window_set_modal(GTK_WINDOW(feedprop->window), TRUE); gtk_window_set_transient_for(GTK_WINDOW(feedprop->window), GTK_WINDOW(mainwin->window) ); /* Attach callbacks to handle Enter and Escape keys */ g_signal_connect(G_OBJECT(feedprop->window), "key_press_event", G_CALLBACK(rssyl_props_key_press_cb), ritem); /* ...and voila! */ gtk_widget_show_all(feedprop->window); gtk_widget_grab_default(ok_button); /* Unselect the text in URL entry */ gtk_editable_select_region(GTK_EDITABLE(feedprop->url), 0, 0); ritem->feedprop = feedprop; }
void create_plugins_gui(Sven *sven,GtkWidget *vbox1) { GtkTreeViewColumn *column; GtkCellRenderer *cell; GtkWidget *scrolled_win; GtkWidget *hbbox; GtkWidget *hbox; GtkWidget *frame; GtkWidget *alignment; GtkWidget *label; DEBUG_MSG("Start create_plugins_gui\n"); gtk_box_pack_start (GTK_BOX (vbox1), create_header(_("Plugins")), FALSE, FALSE, 0); plugins_model = gtk_tree_store_new (3,G_TYPE_BOOLEAN,G_TYPE_STRING,G_TYPE_STRING); plugins_tree_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (plugins_model)); gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (plugins_tree_view), TRUE); plugins_selection = G_OBJECT (gtk_tree_view_get_selection (GTK_TREE_VIEW (plugins_tree_view))); gtk_tree_selection_set_mode (GTK_TREE_SELECTION (plugins_selection), GTK_SELECTION_SINGLE); g_signal_connect (G_OBJECT (plugins_selection),"changed",G_CALLBACK (prefs_plugins_list_clicked),sven); g_signal_connect(G_OBJECT(plugins_tree_view), "button-press-event",G_CALLBACK(plugin_list_event_mouseclick), sven); scrolled_win = gtk_scrolled_window_new(NULL, NULL); gtk_container_add(GTK_CONTAINER(scrolled_win), plugins_tree_view); gtk_container_border_width(GTK_CONTAINER(scrolled_win), 5); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); gtk_box_pack_start(GTK_BOX(vbox1), scrolled_win, TRUE, TRUE, 0); frame = gtk_frame_new (NULL); gtk_widget_show (frame); gtk_box_pack_start(GTK_BOX(vbox1), frame, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame), 2); gtk_frame_set_label_align (GTK_FRAME (frame), 0.05, 0.5); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_OUT); label = gtk_label_new (_("Description")); gtk_widget_show (label); gtk_frame_set_label_widget (GTK_FRAME (frame), label); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); alignment = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_show (alignment); gtk_container_add (GTK_CONTAINER (frame), alignment); gtk_container_set_border_width (GTK_CONTAINER (alignment), 2); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 5, 5); infotext = gtk_label_new (_("Not information")); gtk_widget_show (infotext); gtk_container_add (GTK_CONTAINER (alignment), infotext); GTK_WIDGET_SET_FLAGS (infotext, GTK_CAN_FOCUS); gtk_label_set_line_wrap (GTK_LABEL (infotext), TRUE); gtk_label_set_selectable (GTK_LABEL (infotext), TRUE); hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox1), hbox, FALSE, FALSE, 5); hbbox = gtk_hbutton_box_new(); gtk_button_box_set_layout(GTK_BUTTON_BOX(hbbox), GTK_BUTTONBOX_START); gtk_button_box_set_spacing(GTK_BUTTON_BOX(hbbox), 10); gtk_button_box_set_child_size(GTK_BUTTON_BOX(hbbox), 85, 17); gtk_box_pack_start(GTK_BOX(hbox), hbbox, TRUE, TRUE, 0); prefs_plugins_config_wid = gtk_button_new_with_label(_("Configure")); g_signal_connect(G_OBJECT(prefs_plugins_config_wid ), "clicked", G_CALLBACK(prefs_plugins_configure),sven); gtk_box_pack_start(GTK_BOX(hbbox), prefs_plugins_config_wid, TRUE, TRUE, 0); prefs_plugins_about_wid = gtk_button_new_with_label(_("About")); g_signal_connect(G_OBJECT(prefs_plugins_about_wid), "clicked", G_CALLBACK(prefs_plugins_about), sven); gtk_box_pack_start(GTK_BOX(hbbox), prefs_plugins_about_wid, TRUE, TRUE, 0); cell = gtk_cell_renderer_toggle_new (); column = gtk_tree_view_column_new_with_attributes (_("Status"), cell, "active",0, NULL); gtk_tree_view_column_set_clickable (column, TRUE); g_signal_connect (G_OBJECT (cell), "toggled",G_CALLBACK (plugin_fixed_toggled),sven); gtk_tree_view_column_set_resizable (column, TRUE); gtk_tree_view_append_column (GTK_TREE_VIEW (plugins_tree_view), column); cell = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes (_("Name"), cell, "markup", 1, NULL); gtk_tree_view_column_set_sort_column_id (column, 0); gtk_tree_view_column_set_resizable (column, TRUE); gtk_tree_view_append_column (GTK_TREE_VIEW (plugins_tree_view), column); cell = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes (_("Module"), cell, "markup",2, NULL); gtk_tree_view_column_set_sort_column_id (column, 1); gtk_tree_view_column_set_resizable (column, TRUE); gtk_tree_view_append_column (GTK_TREE_VIEW (plugins_tree_view), column); gtk_widget_show(plugins_tree_view); add_print_plugins(GTK_TREE_VIEW (plugins_tree_view),sven); }
/* static void PreMult (TImage image) { int i; unsigned char *p; p = (unsigned char *) image->data; for (i=0; i<image->width*image->height*4; i+=4, p+=4) { p[0] = (p[0] * p[3] >> 8) + ((0xFF - p[3]) * 0xFF >> 8); p[1] = (p[1] * p[3] >> 8) + ((0xFF - p[3]) * 0xFF >> 8); p[2] = (p[2] * p[3] >> 8) + ((0xFF - p[3]) * 0xFF >> 8); p[3] = 0xFF; } } static GtkWidget *create_pixmap_png (GtkWidget *widget, const gchar *filename) { TImage image; GtkWidget *pixmap; GdkPixmap *gdkpixmap; GdkGC *gc; image = IMG_Read ((char *)filename); if (!image) { printf ("IMG_Read error: can't load %s\n", filename); exit (1); } PreMult (image); //printf ("%ix%i\n", image->width, image->height); gdkpixmap = gdk_pixmap_new (NULL, IMG_GetWidth(image), IMG_GetHeight(image), (gtk_widget_get_visual (widget))->depth); gc = gdk_gc_new (gdkpixmap); gdk_rgb_init (); gdk_draw_rgb_32_image (gdkpixmap, gc, 0, 0, IMG_GetWidth (image), IMG_GetHeight (image), GDK_RGB_DITHER_NONE, (unsigned char *) IMG_GetData (image), IMG_GetWidth (image) * 4); pixmap = gtk_pixmap_new (gdkpixmap, NULL); gdk_gc_unref (gc); gdk_pixmap_unref (gdkpixmap); IMG_Delete (image); return pixmap; } */ void DLG_Show (TDialogData *dd, const char *demo_name) { GtkWidget *window1; GtkWidget *fixed1; GtkWidget *button1; // GtkWidget *pixmap1; GtkWidget *button2; GtkWidget *frame1; GtkWidget *fixed2; GtkWidget *label1; GtkWidget *label2; GtkWidget *combo1; GtkWidget *combo_entry1; GtkWidget *checkbutton1; GList *glist; int dest_signal; char *res; gtk_init (NULL, NULL); window1 = gtk_window_new (GTK_WINDOW_DIALOG); gtk_object_set_data (GTK_OBJECT (window1), "window1", window1); gtk_widget_set_usize (window1, 256+16*2, 150); gtk_window_set_title (GTK_WINDOW (window1), _(demo_name)); gtk_window_set_position (GTK_WINDOW (window1), GTK_WIN_POS_CENTER); gtk_window_set_modal (GTK_WINDOW (window1), TRUE); gtk_window_set_policy (GTK_WINDOW (window1), FALSE, FALSE, FALSE); fixed1 = gtk_fixed_new (); gtk_widget_ref (fixed1); gtk_object_set_data_full (GTK_OBJECT (window1), "fixed1", fixed1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fixed1); gtk_container_add (GTK_CONTAINER (window1), fixed1); button1 = gtk_button_new_with_label (_("run")); gtk_widget_ref (button1); gtk_object_set_data_full (GTK_OBJECT (window1), "button1", button1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (button1); gtk_fixed_put (GTK_FIXED (fixed1), button1, 64, 112); gtk_widget_set_uposition (button1, 64, 112); gtk_widget_set_usize (button1, 47, 22); gtk_signal_connect (GTK_OBJECT (button1), "clicked", GTK_SIGNAL_FUNC (gtk_main_quit), NULL); //pixmap1 = create_pixmap_xpm (window1, "navmo.xpm"); /* pixmap1 = create_pixmap_png (window1, "menu/navmo.png"); gtk_widget_ref (pixmap1); gtk_object_set_data_full (GTK_OBJECT (window1), "pixmap1", pixmap1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (pixmap1); gtk_fixed_put (GTK_FIXED (fixed1), pixmap1, 128, 64); gtk_widget_set_uposition (pixmap1, 128, 64); gtk_widget_set_usize (pixmap1, 21, 21); */ button2 = gtk_button_new_with_label (_("exit")); gtk_widget_ref (button2); gtk_object_set_data_full (GTK_OBJECT (window1), "button2", button2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (button2); gtk_fixed_put (GTK_FIXED (fixed1), button2, 174, 112); gtk_widget_set_uposition (button2, 174, 112); gtk_widget_set_usize (button2, 47, 22); gtk_signal_connect (GTK_OBJECT (button2), "clicked", GTK_SIGNAL_FUNC (gtk_exit), NULL); frame1 = gtk_frame_new (_(demo_name)); gtk_widget_ref (frame1); gtk_object_set_data_full (GTK_OBJECT (window1), "frame1", frame1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame1); gtk_fixed_put (GTK_FIXED (fixed1), frame1, 16, 11); gtk_widget_set_uposition (frame1, 16, 11); gtk_widget_set_usize (frame1, 256, 95); gtk_frame_set_label_align (GTK_FRAME (frame1), 0.5, 0.5); gtk_frame_set_shadow_type (GTK_FRAME (frame1), GTK_SHADOW_ETCHED_OUT); fixed2 = gtk_fixed_new (); gtk_widget_ref (fixed2); gtk_object_set_data_full (GTK_OBJECT (window1), "fixed2", fixed2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fixed2); gtk_container_add (GTK_CONTAINER (frame1), fixed2); label1 = gtk_label_new (_(">> windowed ::")); gtk_widget_ref (label1); gtk_object_set_data_full (GTK_OBJECT (window1), "label1", label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label1); gtk_fixed_put (GTK_FIXED (fixed2), label1, 16, 12); gtk_widget_set_uposition (label1, 16, 12); gtk_widget_set_usize (label1, 100, 16); label2 = gtk_label_new (_(">> resolution ::")); gtk_widget_ref (label2); gtk_object_set_data_full (GTK_OBJECT (window1), "label2", label2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label2); gtk_fixed_put (GTK_FIXED (fixed2), label2, 16, 44); gtk_widget_set_uposition (label2, 16, 44); gtk_widget_set_usize (label2, 100, 16); combo1 = gtk_combo_new (); gtk_widget_ref (combo1); gtk_object_set_data_full (GTK_OBJECT (window1), "combo1", combo1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (combo1); gtk_fixed_put (GTK_FIXED (fixed2), combo1, 112, 41); gtk_widget_set_uposition (combo1, 112, 41); gtk_widget_set_usize (combo1, 108, 22); combo_entry1 = GTK_COMBO (combo1)->entry; gtk_widget_ref (combo_entry1); gtk_object_set_data_full (GTK_OBJECT (window1), "combo_entry1", combo_entry1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (combo_entry1); checkbutton1 = gtk_check_button_new_with_label (""); gtk_widget_ref (checkbutton1); gtk_object_set_data_full (GTK_OBJECT (window1), "checkbutton1", checkbutton1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (checkbutton1); gtk_fixed_put (GTK_FIXED (fixed2), checkbutton1, 203, 7); gtk_widget_set_uposition (checkbutton1, 203, 7); gtk_widget_set_usize (checkbutton1, 16, 24); GTK_WIDGET_UNSET_FLAGS (checkbutton1, GTK_CAN_FOCUS); glist = NULL; glist = g_list_append (glist, "320x200"); glist = g_list_append (glist, "320x240"); glist = g_list_append (glist, "640x400"); glist = g_list_append (glist, "640x480"); glist = g_list_append (glist, "800x600"); glist = g_list_append (glist, "1024x768"); glist = g_list_append (glist, "1280x1024"); gtk_combo_set_popdown_strings (GTK_COMBO(combo1), glist); gtk_entry_set_text (GTK_ENTRY(combo_entry1), "800x600"); dest_signal = gtk_signal_connect (GTK_OBJECT (window1), "destroy", GTK_SIGNAL_FUNC (gtk_exit), NULL); gtk_widget_show (window1); gtk_main ( ); // Get resolution res = gtk_entry_get_text (GTK_ENTRY(combo_entry1)); if (!strcmp (res, "320x200")) { dd->width = 320; dd->height = 200; } else if (!strcmp (res, "320x240")) { dd->width = 320; dd->height = 240; } else if (!strcmp (res, "640x400")) { dd->width = 640; dd->height = 400; } else if (!strcmp (res, "640x480")) { dd->width = 640; dd->height = 480; } else if (!strcmp (res, "800x600")) { dd->width = 800; dd->height = 600; } else if (!strcmp (res, "1024x768")) { dd->width = 1024; dd->height = 768; } else if (!strcmp (res, "1280x1024")) { dd->width = 1280; dd->height = 1024; } else { // default 800x600 dd->width = 800; dd->height = 600; } dd->windowed = (int) GTK_TOGGLE_BUTTON (checkbutton1)->active; gtk_signal_disconnect (GTK_OBJECT (window1), dest_signal); gtk_widget_hide (window1); gtk_widget_destroy (window1); gtk_main_iteration_do (0); }
/*! *\brief Create the matcher dialog */ static void prefs_filtering_action_create(void) { GtkWidget *window; GtkWidget *vbox; GtkWidget *ok_btn; GtkWidget *cancel_btn; GtkWidget *confirm_area; GtkWidget *vbox1; GtkWidget *frame; GtkWidget *table; GtkWidget *hbox1; GtkWidget *label1; GtkWidget *label2; GtkWidget *label3; GtkWidget *action_combo; GtkWidget *account_combo; GtkWidget *header_combo; GtkWidget *header_entry; #ifndef USE_NEW_ADDRBOOK GtkWidget *addressbook_btn; #endif GtkWidget *dest_entry; GtkWidget *dest_btn; GtkWidget *score_entry; GtkWidget *tags_combo; GtkWidget *reg_hbox; GtkWidget *btn_hbox; GtkWidget *arrow; GtkWidget *reg_btn; GtkWidget *subst_btn; GtkWidget *del_btn; GtkWidget *action_hbox; GtkWidget *action_scrolledwin; GtkWidget *action_list_view; GtkWidget *btn_vbox; GtkWidget *up_btn; GtkWidget *down_btn; GtkWidget *exec_btn; #if !GTK_CHECK_VERSION(3, 0, 0) GtkWidget *color_optmenu; #endif static GdkGeometry geometry; GList * accounts; GSList *tmp, *tags; GtkSizeGroup *size_group = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL); GtkSizeGroup *size_action = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL); GtkTreeModel *model; GtkCellRenderer *renderer; debug_print("Creating matcher configuration window...\n"); window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "prefs_filtering_action"); gtk_container_set_border_width(GTK_CONTAINER(window), VBOX_BORDER); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); gtk_window_set_modal(GTK_WINDOW(window), TRUE); gtk_window_set_resizable(GTK_WINDOW(window), TRUE); vbox = gtk_vbox_new(FALSE, 6); gtk_container_add(GTK_CONTAINER(window), vbox); gtkut_stock_button_set_create(&confirm_area, &cancel_btn, GTK_STOCK_CANCEL, &ok_btn, GTK_STOCK_OK, NULL, NULL); gtk_box_pack_end(GTK_BOX(vbox), confirm_area, FALSE, FALSE, 0); gtk_widget_grab_default(ok_btn); gtk_window_set_title(GTK_WINDOW(window), _("Action configuration")); g_signal_connect(G_OBJECT(window), "delete_event", G_CALLBACK(prefs_filtering_action_deleted), NULL); g_signal_connect(G_OBJECT(window), "size_allocate", G_CALLBACK(prefs_filtering_action_size_allocate_cb), NULL); g_signal_connect(G_OBJECT(window), "key_press_event", G_CALLBACK(prefs_filtering_action_key_pressed), NULL); MANAGE_WINDOW_SIGNALS_CONNECT(window); g_signal_connect(G_OBJECT(ok_btn), "clicked", G_CALLBACK(prefs_filtering_action_ok), NULL); g_signal_connect(G_OBJECT(cancel_btn), "clicked", G_CALLBACK(prefs_filtering_action_cancel), NULL); vbox1 = gtk_vbox_new(FALSE, VSPACING); gtk_box_pack_start(GTK_BOX(vbox), vbox1, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER (vbox1), 2); frame = gtk_frame_new(_("Rule")); gtk_frame_set_label_align(GTK_FRAME(frame), 0.01, 0.5); gtk_box_pack_start (GTK_BOX (vbox1), frame, FALSE, FALSE, 0); gtk_widget_set_size_request(frame, -1, 110); table = gtk_table_new(3, 3, FALSE); gtk_container_set_border_width(GTK_CONTAINER(table), 2); gtk_table_set_row_spacings (GTK_TABLE (table), VSPACING_NARROW_2); gtk_table_set_col_spacings (GTK_TABLE (table), HSPACING_NARROW); gtk_container_add(GTK_CONTAINER(frame), table); /* first row labels */ label1 = gtk_label_new (_("Action")); gtk_widget_set_size_request(label1, LABELS_WIDTH, -1); gtk_size_group_add_widget(size_group, label1); gtk_misc_set_alignment (GTK_MISC (label1), 1, 0.5); gtk_table_attach(GTK_TABLE(table), label1, 0, 1, 0, 1, GTK_FILL, GTK_SHRINK, 0, 0); label2 = gtk_label_new (""); gtk_size_group_add_widget(size_group, label2); gtk_misc_set_alignment (GTK_MISC (label2), 1, 0.5); gtk_table_attach(GTK_TABLE(table), label2, 0, 1, 1, 2, GTK_FILL, GTK_SHRINK, 0, 0); label3 = gtk_label_new (""); gtk_size_group_add_widget(size_group, label3); gtk_misc_set_alignment (GTK_MISC (label3), 1, 0.5); gtk_table_attach(GTK_TABLE(table), label3, 0, 1, 2, 3, GTK_FILL, GTK_SHRINK, 0, 0); /* action combo */ hbox1 = gtk_hbox_new(FALSE, 0); gtk_table_attach(GTK_TABLE(table), hbox1, 1, 2, 0, 1, GTK_FILL, GTK_SHRINK, 0, 0); model = prefs_filtering_action_create_model(); action_combo = gtk_combo_box_new_with_model(model); gtk_size_group_add_widget(size_action, action_combo); renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(action_combo), renderer, TRUE); gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(action_combo), renderer, "text", ACTION_COMBO_TEXT, "sensitive", ACTION_COMBO_SENS, NULL); gtk_cell_layout_set_cell_data_func(GTK_CELL_LAYOUT(action_combo), renderer, cell_is_sensitive, NULL, NULL); combobox_select_by_data(GTK_COMBO_BOX(action_combo), ACTION_MOVE); g_signal_connect(G_OBJECT(action_combo), "changed", G_CALLBACK(prefs_filtering_action_type_selection_changed), NULL); gtk_box_pack_start(GTK_BOX(hbox1), action_combo, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox1), gtk_label_new(""), TRUE, TRUE, 0); /* accounts */ hbox1 = gtk_hbox_new (FALSE, 0); gtk_table_attach(GTK_TABLE(table), hbox1, 1, 2, 1, 2, GTK_FILL | GTK_EXPAND, GTK_SHRINK, 0, 0); #if !GTK_CHECK_VERSION(2, 24, 0) account_combo = gtk_combo_box_new_text (); #else account_combo = gtk_combo_box_text_new (); #endif gtk_size_group_add_widget(size_action, account_combo); for (accounts = account_get_list() ; accounts != NULL; accounts = accounts->next) { PrefsAccount *ac = (PrefsAccount *)accounts->data; gchar *name = g_strdup(ac->account_name); #if !GTK_CHECK_VERSION(2, 24, 0) gtk_combo_box_append_text(GTK_COMBO_BOX(account_combo), (gpointer) name); #else gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(account_combo), (gpointer) name); #endif g_free(name); } prefs_filtering_action_check_widget_width(account_combo); gtk_combo_box_set_active(GTK_COMBO_BOX(account_combo), 0); gtk_box_pack_start (GTK_BOX (hbox1), account_combo, FALSE, FALSE, 0); /* header */ header_combo = combobox_text_new(TRUE, "From", "To", "Cc", "Reply-To", "Sender", NULL); gtk_size_group_add_widget(size_action, header_combo); gtk_box_pack_start (GTK_BOX (hbox1), header_combo, FALSE, FALSE, 0); header_entry = gtk_bin_get_child(GTK_BIN((header_combo))); /* destination */ hbox1 = gtk_hbox_new (FALSE, 0); gtk_table_attach(GTK_TABLE(table), hbox1, 1, 2, 2, 3, GTK_FILL | GTK_EXPAND, GTK_SHRINK, 0, 0); dest_entry = gtk_entry_new (); gtk_box_pack_start (GTK_BOX (hbox1), dest_entry, TRUE, TRUE, 0); score_entry = gtk_spin_button_new_with_range(-1000, 1000, 1); gtk_box_pack_start(GTK_BOX(hbox1), score_entry, FALSE, FALSE, 0); #if !GTK_CHECK_VERSION(3, 0, 0) color_optmenu = gtk_cmoption_menu_new(); gtk_size_group_add_widget(size_action, color_optmenu); gtk_cmoption_menu_set_menu(GTK_CMOPTION_MENU(color_optmenu), colorlabel_create_color_menu()); prefs_filtering_action_check_widget_width(color_optmenu); gtk_box_pack_start(GTK_BOX(hbox1), color_optmenu, FALSE, FALSE, 0); #endif #if !GTK_CHECK_VERSION(2, 24, 0) tags_combo = gtk_combo_box_new_text (); #else tags_combo = gtk_combo_box_text_new (); #endif gtk_size_group_add_widget(size_action, tags_combo); for (tmp = tags = tags_get_list() ; tmp != NULL; tmp = tmp->next) { gchar *name = g_strdup(tags_get_tag(GPOINTER_TO_INT(tmp->data))); #if !GTK_CHECK_VERSION(2, 24, 0) gtk_combo_box_append_text(GTK_COMBO_BOX(tags_combo), (gpointer) name); #else gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(tags_combo), (gpointer) name); #endif g_free(name); } g_slist_free(tags); prefs_filtering_action_check_widget_width(tags_combo); gtk_combo_box_set_active(GTK_COMBO_BOX(tags_combo), 0); gtk_box_pack_start (GTK_BOX (hbox1), tags_combo, FALSE, FALSE, 0); hbox1 = gtk_hbox_new (FALSE, 0); gtk_table_attach(GTK_TABLE(table), hbox1, 2, 3, 2, 3, GTK_FILL, GTK_SHRINK, 0, 0); dest_btn = gtk_button_new_with_label (_("Select...")); gtk_box_pack_start (GTK_BOX (hbox1), dest_btn, FALSE, FALSE, 0); g_signal_connect (G_OBJECT (dest_btn), "clicked", G_CALLBACK(prefs_filtering_action_select_dest), NULL); #ifndef USE_NEW_ADDRBOOK addressbook_btn = gtk_button_new_with_label (_("Select...")); gtk_box_pack_start (GTK_BOX (hbox1), addressbook_btn, FALSE, FALSE, 0); g_signal_connect (G_OBJECT (addressbook_btn), "clicked", G_CALLBACK(prefs_filtering_action_select_addressbook), NULL); #endif exec_btn = gtk_button_new_from_stock(GTK_STOCK_INFO); gtk_box_pack_start (GTK_BOX (hbox1), exec_btn, FALSE, FALSE, 0); g_signal_connect (G_OBJECT (exec_btn), "clicked", G_CALLBACK(prefs_filtering_action_exec_info), window); /* register / substitute / delete */ reg_hbox = gtk_hbox_new(FALSE, 4); gtk_box_pack_start(GTK_BOX(vbox1), reg_hbox, FALSE, FALSE, 0); arrow = gtk_arrow_new(GTK_ARROW_DOWN, GTK_SHADOW_OUT); gtk_box_pack_start(GTK_BOX(reg_hbox), arrow, FALSE, FALSE, 0); gtk_widget_set_size_request(arrow, -1, 16); btn_hbox = gtk_hbox_new(TRUE, 4); gtk_box_pack_start(GTK_BOX(reg_hbox), btn_hbox, FALSE, FALSE, 0); reg_btn = gtk_button_new_from_stock(GTK_STOCK_ADD); gtk_box_pack_start(GTK_BOX(btn_hbox), reg_btn, FALSE, TRUE, 0); g_signal_connect(G_OBJECT(reg_btn), "clicked", G_CALLBACK(prefs_filtering_action_register_cb), NULL); subst_btn = gtkut_get_replace_btn(_("_Replace")); gtk_box_pack_start(GTK_BOX(btn_hbox), subst_btn, FALSE, TRUE, 0); g_signal_connect(G_OBJECT(subst_btn), "clicked", G_CALLBACK(prefs_filtering_action_substitute_cb), NULL); del_btn = gtk_button_new_with_mnemonic (_("Re_move")); gtk_button_set_image(GTK_BUTTON(del_btn), gtk_image_new_from_stock(GTK_STOCK_REMOVE,GTK_ICON_SIZE_BUTTON)); gtk_box_pack_start(GTK_BOX(btn_hbox), del_btn, FALSE, TRUE, 0); g_signal_connect(G_OBJECT(del_btn), "clicked", G_CALLBACK(prefs_filtering_action_delete_cb), NULL); action_hbox = gtk_hbox_new(FALSE, 8); gtk_box_pack_start(GTK_BOX(vbox1), action_hbox, TRUE, TRUE, 0); action_scrolledwin = gtk_scrolled_window_new(NULL, NULL); gtk_widget_set_size_request(action_scrolledwin, -1, 150); gtk_box_pack_start(GTK_BOX(action_hbox), action_scrolledwin, TRUE, TRUE, 0); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(action_scrolledwin), GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(action_scrolledwin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); action_list_view = prefs_filtering_action_list_view_create(); gtk_container_add(GTK_CONTAINER(action_scrolledwin), action_list_view); btn_vbox = gtk_vbox_new(FALSE, 8); gtk_box_pack_start(GTK_BOX(action_hbox), btn_vbox, FALSE, FALSE, 0); up_btn = gtk_button_new_from_stock(GTK_STOCK_GO_UP); gtk_box_pack_start(GTK_BOX(btn_vbox), up_btn, FALSE, FALSE, 0); g_signal_connect(G_OBJECT(up_btn), "clicked", G_CALLBACK(prefs_filtering_action_up), NULL); down_btn = gtk_button_new_from_stock(GTK_STOCK_GO_DOWN); gtk_box_pack_start(GTK_BOX(btn_vbox), down_btn, FALSE, FALSE, 0); g_signal_connect(G_OBJECT(down_btn), "clicked", G_CALLBACK(prefs_filtering_action_down), NULL); if (!geometry.min_height) { geometry.min_width = 490; geometry.min_height = 348; } gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, &geometry, GDK_HINT_MIN_SIZE); gtk_widget_set_size_request(window, prefs_common.filteringactionwin_width, prefs_common.filteringactionwin_height); gtk_widget_show_all(window); filtering_action.window = window; filtering_action.label1 = label1; filtering_action.label2 = label2; filtering_action.label3 = label3; filtering_action.action_combo = action_combo; filtering_action.account_combo = account_combo; filtering_action.tags_combo = tags_combo; filtering_action.dest_entry = dest_entry; filtering_action.dest_btn = dest_btn; filtering_action.exec_btn = exec_btn; #if !GTK_CHECK_VERSION(3, 0, 0) filtering_action.color_optmenu = color_optmenu; #endif filtering_action.score_entry = score_entry; filtering_action.header_combo = header_combo; filtering_action.header_entry = header_entry; #ifndef USE_NEW_ADDRBOOK filtering_action.addressbook_btn = addressbook_btn; #endif filtering_action.ok_btn = ok_btn; filtering_action.action_list_view = action_list_view; prefs_filtering_action_type_selection_changed(NULL, NULL); }
int main (int argc, char *argv[]) { /* this variable will store a pointer to the window object. */ GtkWidget *window; GtkWidget *vbox; /* this will store a text entry */ GtkWidget *entry; GtkWidget *entry2; /* this will store a horizontal box*/ GtkWidget *hbox; GtkWidget *label; GtkWidget *frame; GtkWidget *timeLabel; gint tmp_pos; // ---------------------------------------------------------------------------- /* this is called in all GTK applications. Arguments are parsed from the command line and are returned to the application. */ gtk_init (&argc, &argv); /* create a new window */ window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "PC GTK Entry"); gtk_widget_set_size_request(GTK_WIDGET (window), 200, 350); gtk_container_set_border_width(GTK_CONTAINER (window), 5); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); /* When the window is given the "delete_event" signal (usually by the "close" opthion), we ask it to call the delete_event() function. */ g_signal_connect_swapped (window, "delete-event", G_CALLBACK (gtk_widget_destroy), window); /* Here we connect the "destory" event to a signal handler. This event occurs when we call gtk_widget_destroy() on the window, or if we return FALSE in the "delete_event" callback. */ g_signal_connect (window, "destroy",G_CALLBACK (gtk_main_quit), NULL); // ---------------------------------------------------------------------------- //vbox vbox = gtk_vbox_new (FALSE, 5); // hbox hbox = gtk_hbox_new (FALSE, 5); gtk_container_add (GTK_CONTAINER (window), hbox); gtk_box_pack_start (GTK_BOX (hbox), vbox, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (window), 5); // frame frame = gtk_frame_new("NULL"); gtk_frame_set_label (GTK_FRAME(frame), "STATE"); gtk_frame_set_label_align (GTK_FRAME (frame), 0.5, 0.0); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_OUT); //entry .. entry = gtk_entry_new (); gtk_entry_set_max_length (GTK_ENTRY (entry), 100); gtk_widget_set_size_request(entry, 170, 50); g_signal_connect (entry, "activate",G_CALLBACK (enter1_callback), entry); gtk_entry_set_text (GTK_ENTRY (entry), "Disconnect"); tmp_pos = GTK_ENTRY (entry)->text_length; gtk_editable_select_region (GTK_EDITABLE (entry),0, GTK_ENTRY (entry)->text_length); gtk_container_add (GTK_CONTAINER (frame), entry); gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0); gtk_widget_show (entry); // frame frame = gtk_frame_new("NULL"); gtk_frame_set_label (GTK_FRAME(frame), "DATA"); gtk_frame_set_label_align (GTK_FRAME (frame), 0.5, 0.0); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_OUT); //entry2 .. entry2 = gtk_entry_new (); gtk_entry_set_max_length (GTK_ENTRY (entry2), 100); gtk_widget_set_size_request(entry2, 170, 50); g_signal_connect (entry2, "activate",G_CALLBACK (enter2_callback), entry2); gtk_entry_set_text (GTK_ENTRY (entry2), "What data"); tmp_pos = GTK_ENTRY (entry2)->text_length; gtk_editable_select_region (GTK_EDITABLE (entry2),0, GTK_ENTRY (entry2)->text_length); gtk_container_add (GTK_CONTAINER (frame), entry2); gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0); gtk_widget_show (entry2); //button ... button1 = gtk_button_new_with_label("Open"); //gtk_signal_connect_object (GTK_OBJECT (button), "clicked", // GTK_SIGNAL_FUNC (gtk_widget_destory), // GTK_OBJECT (window)); //gtk_container_add (GTK_CONTAINER (window), button1); gtk_widget_set_size_request(button1, 50, 50); gtk_box_pack_start (GTK_BOX (vbox), button1, FALSE, TRUE, 1); gtk_signal_connect (GTK_OBJECT (button1), "clicked", GTK_SIGNAL_FUNC (on_button1_clicked), NULL); gtk_widget_show(button1); // button2 button2 = gtk_button_new_with_label("Close"); gtk_widget_set_size_request(button2, 50, 50); gtk_box_pack_start (GTK_BOX (vbox), button2, FALSE, TRUE, 1); gtk_signal_connect (GTK_OBJECT (button2), "clicked", GTK_SIGNAL_FUNC (on_button2_clicked), NULL); // test gtk_widget_set_sensitive(button2, FALSE); gtk_widget_show(button2); // button3 button3 = gtk_button_new_with_label("Quit"); gtk_widget_set_size_request(button3, 50, 50); gtk_box_pack_start (GTK_BOX (vbox), button3, FALSE, TRUE, 1); gtk_signal_connect (GTK_OBJECT (button3), "clicked", GTK_SIGNAL_FUNC (on_quit_clicked), NULL); gtk_widget_show(button3); gtk_widget_show_all(window); gtk_main(); return 0; }
void createGamessGuessFrame(GtkWidget *win, GtkWidget *box) { GtkWidget* frame; GtkWidget* vboxFrame; GtkWidget* sep; GtkWidget* combo = NULL; gint l=0; gint c=0; gint ncases=1; GtkWidget *table = gtk_table_new(4,3,FALSE); buttonPrintGuess = NULL; buttonRotate = NULL; frame = gtk_frame_new (_("Mo Guess")); guessFrame = frame; gtk_widget_show (frame); gtk_box_pack_start (GTK_BOX (box), frame, TRUE, TRUE, 3); gtk_frame_set_label_align (GTK_FRAME (frame), 0.5, 0.5); vboxFrame = gtk_vbox_new (FALSE, 3); gtk_widget_show (vboxFrame); gtk_container_add (GTK_CONTAINER (frame), vboxFrame); gtk_box_pack_start (GTK_BOX (vboxFrame), table, TRUE, TRUE, 0); /*------------------ Guess Method -----------------------------------------*/ l=0; c = 0; ncases=1; add_label_table(table,_("Initial Guess"),l,c); c = 1; ncases=1; add_label_table(table,":",l,c); combo = create_list_guessmethods(); c = 2; ncases=1; gtk_table_attach(GTK_TABLE(table),combo,c,c+ncases,l,l+1, (GtkAttachOptions) (GTK_FILL | GTK_EXPAND), (GtkAttachOptions) (GTK_FILL | GTK_SHRINK), 2,2); /*------------------ separator -----------------------------------------*/ l++; sep = gtk_hseparator_new ();; c = 0; ncases=3; gtk_table_attach(GTK_TABLE(table),sep,c,c+ncases,l,l+1, (GtkAttachOptions) (GTK_FILL | GTK_EXPAND), (GtkAttachOptions) (GTK_FILL | GTK_SHRINK), 2,2); /*------------------ Print Orbs L ------------*/ l++; c = 0; ncases=3; buttonPrintGuess = gtk_check_button_new_with_label (_("Print the initial Guess")); gtk_table_attach(GTK_TABLE(table),buttonPrintGuess,c,c+ncases,l,l+1, (GtkAttachOptions) (GTK_FILL | GTK_EXPAND), (GtkAttachOptions) (GTK_FILL | GTK_SHRINK), 2,2); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (buttonPrintGuess), FALSE); /*------------------ Mix ------------*/ l++; c = 0; ncases=3; buttonRotate = gtk_check_button_new_with_label (_("Rotate alpha and beta orbitals")); gtk_table_attach(GTK_TABLE(table),buttonRotate,c,c+ncases,l,l+1, (GtkAttachOptions) (GTK_FILL | GTK_EXPAND), (GtkAttachOptions) (GTK_FILL | GTK_SHRINK), 2,2); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (buttonRotate), FALSE); }
GtkWidget* create_main_window (void) { GtkWidget *main_window; GdkPixbuf *main_window_icon_pixbuf; GtkWidget *hbox12; GtkWidget *vbox30; GtkWidget *expander1; GtkWidget *hbox6; GtkWidget *label11; GtkWidget *vbox5; GtkWidget *hbox7; GtkWidget *label12; GtkWidget *hbox9; GtkWidget *server; GtkWidget *connect; GtkWidget *alignment7; GtkWidget *hbox11; GtkWidget *image7; GtkWidget *label18; GtkWidget *login_at_connect; GtkWidget *hbox8; GtkWidget *label14; GtkWidget *table1; GtkWidget *label13; GtkWidget *label15; GtkWidget *login; GtkWidget *password; GtkWidget *label17; GtkWidget *label10; GtkWidget *hbox1; GtkWidget *frame1; GtkWidget *alignment3; GtkWidget *console_tabs; GtkWidget *alignment4; GtkWidget *vbox1; GtkWidget *console_scroll; GtkWidget *console_view; GtkWidget *label4; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *cmd_entry; GtkWidget *btn_cmdSend; GtkWidget *label6; GtkWidget *alignment5; GtkWidget *pipe_scroll; GtkWidget *pipe_view; GtkWidget *label7; GtkWidget *label2; GtkWidget *vbox2; GtkWidget *frame2; GtkWidget *alignment2; GtkWidget *vbox3; GtkWidget *ctrlButton_0; GtkWidget *ctrlButton_1; GtkWidget *ctrlButton_2; GtkWidget *ctrlButton_3; GtkWidget *alignment6; GtkWidget *hbox3; GtkWidget *image2; GtkWidget *hbox4; GtkWidget *queue_progress; GtkWidget *queue_usage; GtkWidget *label9; GtkWidget *image3; GtkWidget *hbox5; GtkWidget *belts_progress; GtkWidget *belts_usage; GtkWidget *ctrlButton_4; GtkWidget *ctrlButton_5; GtkWidget *ctrlButton_6; GtkWidget *label5; GtkWidget *label3; GtkWidget *label8; GtkWidget *image6; main_window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (main_window), _("WebTester Server Console")); gtk_window_set_resizable (GTK_WINDOW (main_window), FALSE); main_window_icon_pixbuf = create_pixbuf ("wt32.png"); if (main_window_icon_pixbuf) { gtk_window_set_icon (GTK_WINDOW (main_window), main_window_icon_pixbuf); gdk_pixbuf_unref (main_window_icon_pixbuf); } hbox12 = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox12); gtk_container_add (GTK_CONTAINER (main_window), hbox12); vbox30 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox30); gtk_box_pack_start (GTK_BOX (hbox12), vbox30, TRUE, TRUE, 0); expander1 = gtk_expander_new (NULL); gtk_widget_show (expander1); gtk_box_pack_start (GTK_BOX (vbox30), expander1, FALSE, TRUE, 0); gtk_widget_set_size_request (expander1, 640, -1); gtk_expander_set_expanded (GTK_EXPANDER (expander1), TRUE); hbox6 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox6); gtk_container_add (GTK_CONTAINER (expander1), hbox6); label11 = gtk_label_new (""); gtk_widget_show (label11); gtk_box_pack_start (GTK_BOX (hbox6), label11, FALSE, FALSE, 0); gtk_widget_set_size_request (label11, 16, -1); vbox5 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox5); gtk_box_pack_start (GTK_BOX (hbox6), vbox5, FALSE, TRUE, 0); hbox7 = gtk_hbox_new (FALSE, 6); gtk_widget_show (hbox7); gtk_box_pack_start (GTK_BOX (vbox5), hbox7, TRUE, TRUE, 0); label12 = gtk_label_new (_("Server:Port")); gtk_widget_show (label12); gtk_box_pack_start (GTK_BOX (hbox7), label12, FALSE, FALSE, 0); hbox9 = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox9); gtk_box_pack_start (GTK_BOX (hbox7), hbox9, TRUE, TRUE, 0); server = gtk_entry_new (); gtk_widget_show (server); gtk_box_pack_start (GTK_BOX (hbox9), server, TRUE, TRUE, 0); connect = gtk_toggle_button_new (); gtk_widget_show (connect); gtk_box_pack_start (GTK_BOX (hbox9), connect, FALSE, FALSE, 0); alignment7 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment7); gtk_container_add (GTK_CONTAINER (connect), alignment7); hbox11 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox11); gtk_container_add (GTK_CONTAINER (alignment7), hbox11); image7 = create_pixmap (main_window, "connect.png"); gtk_widget_show (image7); gtk_box_pack_start (GTK_BOX (hbox11), image7, FALSE, FALSE, 0); label18 = gtk_label_new (_("Connect")); gtk_widget_show (label18); gtk_box_pack_start (GTK_BOX (hbox11), label18, FALSE, FALSE, 0); login_at_connect = gtk_check_button_new_with_mnemonic (_("Login at connect")); gtk_widget_show (login_at_connect); gtk_box_pack_start (GTK_BOX (vbox5), login_at_connect, FALSE, FALSE, 0); hbox8 = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox8); gtk_box_pack_start (GTK_BOX (hbox6), hbox8, TRUE, TRUE, 0); label14 = gtk_label_new (""); gtk_widget_show (label14); gtk_box_pack_start (GTK_BOX (hbox8), label14, FALSE, FALSE, 0); gtk_widget_set_size_request (label14, 8, -1); table1 = gtk_table_new (2, 2, FALSE); gtk_widget_show (table1); gtk_box_pack_start (GTK_BOX (hbox8), table1, TRUE, TRUE, 0); gtk_table_set_col_spacings (GTK_TABLE (table1), 4); label13 = gtk_label_new (_("Login")); gtk_widget_show (label13); gtk_table_attach (GTK_TABLE (table1), label13, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label13), 0, 0.5); label15 = gtk_label_new (_("Password")); gtk_widget_show (label15); gtk_table_attach (GTK_TABLE (table1), label15, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label15), 0, 0.5); login = gtk_entry_new (); gtk_widget_show (login); gtk_table_attach (GTK_TABLE (table1), login, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_widget_set_sensitive (login, FALSE); password = gtk_entry_new (); gtk_widget_show (password); gtk_table_attach (GTK_TABLE (table1), password, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_widget_set_sensitive (password, FALSE); gtk_entry_set_visibility (GTK_ENTRY (password), FALSE); label17 = gtk_label_new (""); gtk_widget_show (label17); gtk_box_pack_start (GTK_BOX (hbox8), label17, FALSE, FALSE, 0); gtk_widget_set_size_request (label17, 8, -1); label10 = gtk_label_new (_("Connection")); gtk_widget_show (label10); gtk_expander_set_label_widget (GTK_EXPANDER (expander1), label10); hbox1 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox1); gtk_box_pack_start (GTK_BOX (vbox30), hbox1, TRUE, TRUE, 0); frame1 = gtk_frame_new (NULL); gtk_widget_show (frame1); gtk_box_pack_start (GTK_BOX (hbox1), frame1, TRUE, TRUE, 0); gtk_frame_set_label_align (GTK_FRAME (frame1), 0.5, 0.5); alignment3 = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_show (alignment3); gtk_container_add (GTK_CONTAINER (frame1), alignment3); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment3), 2, 4, 4, 4); console_tabs = gtk_notebook_new (); gtk_widget_show (console_tabs); gtk_container_add (GTK_CONTAINER (alignment3), console_tabs); alignment4 = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_show (alignment4); gtk_container_add (GTK_CONTAINER (console_tabs), alignment4); gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (console_tabs), alignment4, TRUE, TRUE, GTK_PACK_START); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment4), 2, 2, 2, 2); vbox1 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox1); gtk_container_add (GTK_CONTAINER (alignment4), vbox1); console_scroll = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (console_scroll); gtk_box_pack_start (GTK_BOX (vbox1), console_scroll, TRUE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (console_scroll), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (console_scroll), GTK_SHADOW_IN); console_view = gtk_text_view_new (); gtk_widget_show (console_view); gtk_container_add (GTK_CONTAINER (console_scroll), console_view); gtk_text_view_set_editable (GTK_TEXT_VIEW (console_view), FALSE); gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (console_view), GTK_WRAP_CHAR); gtk_text_view_set_pixels_above_lines (GTK_TEXT_VIEW (console_view), 4); gtk_text_view_set_pixels_below_lines (GTK_TEXT_VIEW (console_view), 4); gtk_text_view_set_left_margin (GTK_TEXT_VIEW (console_view), 4); gtk_text_view_set_right_margin (GTK_TEXT_VIEW (console_view), 4); label4 = gtk_label_new (""); gtk_widget_show (label4); gtk_box_pack_start (GTK_BOX (vbox1), label4, FALSE, FALSE, 0); gtk_widget_set_size_request (label4, 360, 3); hbox2 = gtk_hbox_new (FALSE, 4); gtk_widget_show (hbox2); gtk_box_pack_start (GTK_BOX (vbox1), hbox2, FALSE, TRUE, 0); image1 = create_pixmap (main_window, "go.png"); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox2), image1, FALSE, TRUE, 0); cmd_entry = gtk_entry_new (); gtk_widget_show (cmd_entry); gtk_box_pack_start (GTK_BOX (hbox2), cmd_entry, TRUE, TRUE, 0); btn_cmdSend = gtk_button_new_with_mnemonic (_("Send")); gtk_widget_show (btn_cmdSend); gtk_box_pack_start (GTK_BOX (hbox2), btn_cmdSend, FALSE, FALSE, 0); label6 = gtk_label_new (_("User's console")); gtk_widget_show (label6); gtk_notebook_set_tab_label (GTK_NOTEBOOK (console_tabs), gtk_notebook_get_nth_page (GTK_NOTEBOOK (console_tabs), 0), label6); alignment5 = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_show (alignment5); gtk_container_add (GTK_CONTAINER (console_tabs), alignment5); gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (console_tabs), alignment5, TRUE, TRUE, GTK_PACK_START); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment5), 2, 2, 2, 2); pipe_scroll = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (pipe_scroll); gtk_container_add (GTK_CONTAINER (alignment5), pipe_scroll); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (pipe_scroll), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (pipe_scroll), GTK_SHADOW_IN); pipe_view = gtk_text_view_new (); gtk_widget_show (pipe_view); gtk_container_add (GTK_CONTAINER (pipe_scroll), pipe_view); gtk_text_view_set_editable (GTK_TEXT_VIEW (pipe_view), FALSE); gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (pipe_view), GTK_WRAP_CHAR); gtk_text_view_set_pixels_above_lines (GTK_TEXT_VIEW (pipe_view), 4); gtk_text_view_set_pixels_below_lines (GTK_TEXT_VIEW (pipe_view), 4); gtk_text_view_set_left_margin (GTK_TEXT_VIEW (pipe_view), 4); gtk_text_view_set_right_margin (GTK_TEXT_VIEW (pipe_view), 4); label7 = gtk_label_new (_("Pipe")); gtk_widget_show (label7); gtk_notebook_set_tab_label (GTK_NOTEBOOK (console_tabs), gtk_notebook_get_nth_page (GTK_NOTEBOOK (console_tabs), 1), label7); gtk_label_set_line_wrap (GTK_LABEL (label7), TRUE); label2 = gtk_label_new (_("<b>WebTester</b> Console")); gtk_widget_show (label2); gtk_frame_set_label_widget (GTK_FRAME (frame1), label2); gtk_label_set_use_markup (GTK_LABEL (label2), TRUE); vbox2 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox2); gtk_box_pack_start (GTK_BOX (hbox1), vbox2, FALSE, TRUE, 0); frame2 = gtk_frame_new (NULL); gtk_widget_show (frame2); gtk_box_pack_start (GTK_BOX (vbox2), frame2, TRUE, TRUE, 0); gtk_frame_set_label_align (GTK_FRAME (frame2), 0.5, 0.5); alignment2 = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_show (alignment2); gtk_container_add (GTK_CONTAINER (frame2), alignment2); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment2), 2, 4, 4, 4); vbox3 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox3); gtk_container_add (GTK_CONTAINER (alignment2), vbox3); ctrlButton_0 = gtk_button_new_with_mnemonic (_("(Unassigned)")); gtk_widget_show (ctrlButton_0); gtk_box_pack_start (GTK_BOX (vbox3), ctrlButton_0, FALSE, FALSE, 0); ctrlButton_1 = gtk_button_new_with_mnemonic (_("(Unassigned)")); gtk_widget_show (ctrlButton_1); gtk_box_pack_start (GTK_BOX (vbox3), ctrlButton_1, FALSE, FALSE, 0); ctrlButton_2 = gtk_button_new_with_mnemonic (_("(Unassigned)")); gtk_widget_show (ctrlButton_2); gtk_box_pack_start (GTK_BOX (vbox3), ctrlButton_2, FALSE, FALSE, 0); ctrlButton_3 = gtk_button_new_with_mnemonic (_("(Unassigned)")); gtk_widget_show (ctrlButton_3); gtk_box_pack_start (GTK_BOX (vbox3), ctrlButton_3, FALSE, FALSE, 0); alignment6 = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_show (alignment6); gtk_box_pack_start (GTK_BOX (vbox3), alignment6, FALSE, FALSE, 0); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment6), 2, 2, 0, 0); hbox3 = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox3); gtk_container_add (GTK_CONTAINER (alignment6), hbox3); image2 = create_pixmap (main_window, "queue.png"); gtk_widget_show (image2); gtk_box_pack_start (GTK_BOX (hbox3), image2, FALSE, TRUE, 0); hbox4 = gtk_hbox_new (FALSE, 1); gtk_widget_show (hbox4); gtk_box_pack_start (GTK_BOX (hbox3), hbox4, FALSE, TRUE, 0); queue_progress = gtk_progress_bar_new (); gtk_widget_show (queue_progress); gtk_box_pack_start (GTK_BOX (hbox4), queue_progress, FALSE, FALSE, 0); gtk_widget_set_size_request (queue_progress, 10, 48); gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (queue_progress), GTK_PROGRESS_BOTTOM_TO_TOP); queue_usage = gtk_progress_bar_new (); gtk_widget_show (queue_usage); gtk_box_pack_start (GTK_BOX (hbox4), queue_usage, FALSE, FALSE, 0); gtk_widget_set_size_request (queue_usage, 10, 48); gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (queue_usage), GTK_PROGRESS_BOTTOM_TO_TOP); label9 = gtk_label_new (""); gtk_widget_show (label9); gtk_box_pack_start (GTK_BOX (hbox3), label9, FALSE, FALSE, 0); gtk_widget_set_size_request (label9, 6, -1); image3 = create_pixmap (main_window, "belts.png"); gtk_widget_show (image3); gtk_box_pack_start (GTK_BOX (hbox3), image3, FALSE, FALSE, 0); hbox5 = gtk_hbox_new (FALSE, 1); gtk_widget_show (hbox5); gtk_box_pack_start (GTK_BOX (hbox3), hbox5, FALSE, FALSE, 0); belts_progress = gtk_progress_bar_new (); gtk_widget_show (belts_progress); gtk_box_pack_start (GTK_BOX (hbox5), belts_progress, FALSE, FALSE, 0); gtk_widget_set_size_request (belts_progress, 10, 48); gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (belts_progress), GTK_PROGRESS_BOTTOM_TO_TOP); belts_usage = gtk_progress_bar_new (); gtk_widget_show (belts_usage); gtk_box_pack_start (GTK_BOX (hbox5), belts_usage, FALSE, FALSE, 0); gtk_widget_set_size_request (belts_usage, 10, 48); gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (belts_usage), GTK_PROGRESS_BOTTOM_TO_TOP); ctrlButton_4 = gtk_button_new_with_mnemonic (_("(Unassigned)")); gtk_widget_show (ctrlButton_4); gtk_box_pack_start (GTK_BOX (vbox3), ctrlButton_4, FALSE, FALSE, 0); ctrlButton_5 = gtk_button_new_with_mnemonic (_("(Unassigned)")); gtk_widget_show (ctrlButton_5); gtk_box_pack_start (GTK_BOX (vbox3), ctrlButton_5, FALSE, FALSE, 0); ctrlButton_6 = gtk_button_new_with_mnemonic (_("(Unassigned)")); gtk_widget_show (ctrlButton_6); gtk_box_pack_start (GTK_BOX (vbox3), ctrlButton_6, FALSE, FALSE, 0); label5 = gtk_label_new (""); gtk_widget_show (label5); gtk_box_pack_start (GTK_BOX (vbox3), label5, TRUE, FALSE, 0); label3 = gtk_label_new (_("Control")); gtk_widget_show (label3); gtk_frame_set_label_widget (GTK_FRAME (frame2), label3); gtk_label_set_use_markup (GTK_LABEL (label3), TRUE); label8 = gtk_label_new (_("2007 (c) nazgul")); gtk_widget_show (label8); gtk_box_pack_start (GTK_BOX (vbox2), label8, FALSE, FALSE, 0); image6 = create_pixmap (main_window, "wt.png"); gtk_widget_show (image6); gtk_box_pack_start (GTK_BOX (hbox12), image6, TRUE, TRUE, 0); g_signal_connect ((gpointer) main_window, "remove", G_CALLBACK (on_main_window_remove), NULL); g_signal_connect ((gpointer) connect, "toggled", G_CALLBACK (on_connect_toggled), NULL); g_signal_connect ((gpointer) login_at_connect, "toggled", G_CALLBACK (on_login_at_connect_toggled), NULL); g_signal_connect ((gpointer) cmd_entry, "key_press_event", G_CALLBACK (on_cmd_entry_key_press_event), NULL); g_signal_connect ((gpointer) btn_cmdSend, "clicked", G_CALLBACK (on_btn_cmdSend_clicked), NULL); g_signal_connect ((gpointer) ctrlButton_0, "clicked", G_CALLBACK (on_ctrlButton_clicked), NULL); g_signal_connect ((gpointer) ctrlButton_1, "clicked", G_CALLBACK (on_ctrlButton_clicked), NULL); g_signal_connect ((gpointer) ctrlButton_2, "clicked", G_CALLBACK (on_ctrlButton_clicked), NULL); g_signal_connect ((gpointer) ctrlButton_3, "clicked", G_CALLBACK (on_ctrlButton_clicked), NULL); g_signal_connect ((gpointer) ctrlButton_4, "clicked", G_CALLBACK (on_ctrlButton_clicked), NULL); g_signal_connect ((gpointer) ctrlButton_5, "clicked", G_CALLBACK (on_ctrlButton_clicked), NULL); g_signal_connect ((gpointer) ctrlButton_6, "clicked", G_CALLBACK (on_ctrlButton_clicked), NULL); /* Store pointers to all widgets, for use by lookup_widget(). */ GLADE_HOOKUP_OBJECT_NO_REF (main_window, main_window, "main_window"); GLADE_HOOKUP_OBJECT (main_window, hbox12, "hbox12"); GLADE_HOOKUP_OBJECT (main_window, vbox30, "vbox30"); GLADE_HOOKUP_OBJECT (main_window, expander1, "expander1"); GLADE_HOOKUP_OBJECT (main_window, hbox6, "hbox6"); GLADE_HOOKUP_OBJECT (main_window, label11, "label11"); GLADE_HOOKUP_OBJECT (main_window, vbox5, "vbox5"); GLADE_HOOKUP_OBJECT (main_window, hbox7, "hbox7"); GLADE_HOOKUP_OBJECT (main_window, label12, "label12"); GLADE_HOOKUP_OBJECT (main_window, hbox9, "hbox9"); GLADE_HOOKUP_OBJECT (main_window, server, "server"); GLADE_HOOKUP_OBJECT (main_window, connect, "connect"); GLADE_HOOKUP_OBJECT (main_window, alignment7, "alignment7"); GLADE_HOOKUP_OBJECT (main_window, hbox11, "hbox11"); GLADE_HOOKUP_OBJECT (main_window, image7, "image7"); GLADE_HOOKUP_OBJECT (main_window, label18, "label18"); GLADE_HOOKUP_OBJECT (main_window, login_at_connect, "login_at_connect"); GLADE_HOOKUP_OBJECT (main_window, hbox8, "hbox8"); GLADE_HOOKUP_OBJECT (main_window, label14, "label14"); GLADE_HOOKUP_OBJECT (main_window, table1, "table1"); GLADE_HOOKUP_OBJECT (main_window, label13, "label13"); GLADE_HOOKUP_OBJECT (main_window, label15, "label15"); GLADE_HOOKUP_OBJECT (main_window, login, "login"); GLADE_HOOKUP_OBJECT (main_window, password, "password"); GLADE_HOOKUP_OBJECT (main_window, label17, "label17"); GLADE_HOOKUP_OBJECT (main_window, label10, "label10"); GLADE_HOOKUP_OBJECT (main_window, hbox1, "hbox1"); GLADE_HOOKUP_OBJECT (main_window, frame1, "frame1"); GLADE_HOOKUP_OBJECT (main_window, alignment3, "alignment3"); GLADE_HOOKUP_OBJECT (main_window, console_tabs, "console_tabs"); GLADE_HOOKUP_OBJECT (main_window, alignment4, "alignment4"); GLADE_HOOKUP_OBJECT (main_window, vbox1, "vbox1"); GLADE_HOOKUP_OBJECT (main_window, console_scroll, "console_scroll"); GLADE_HOOKUP_OBJECT (main_window, console_view, "console_view"); GLADE_HOOKUP_OBJECT (main_window, label4, "label4"); GLADE_HOOKUP_OBJECT (main_window, hbox2, "hbox2"); GLADE_HOOKUP_OBJECT (main_window, image1, "image1"); GLADE_HOOKUP_OBJECT (main_window, cmd_entry, "cmd_entry"); GLADE_HOOKUP_OBJECT (main_window, btn_cmdSend, "btn_cmdSend"); GLADE_HOOKUP_OBJECT (main_window, label6, "label6"); GLADE_HOOKUP_OBJECT (main_window, alignment5, "alignment5"); GLADE_HOOKUP_OBJECT (main_window, pipe_scroll, "pipe_scroll"); GLADE_HOOKUP_OBJECT (main_window, pipe_view, "pipe_view"); GLADE_HOOKUP_OBJECT (main_window, label7, "label7"); GLADE_HOOKUP_OBJECT (main_window, label2, "label2"); GLADE_HOOKUP_OBJECT (main_window, vbox2, "vbox2"); GLADE_HOOKUP_OBJECT (main_window, frame2, "frame2"); GLADE_HOOKUP_OBJECT (main_window, alignment2, "alignment2"); GLADE_HOOKUP_OBJECT (main_window, vbox3, "vbox3"); GLADE_HOOKUP_OBJECT (main_window, ctrlButton_0, "ctrlButton_0"); GLADE_HOOKUP_OBJECT (main_window, ctrlButton_1, "ctrlButton_1"); GLADE_HOOKUP_OBJECT (main_window, ctrlButton_2, "ctrlButton_2"); GLADE_HOOKUP_OBJECT (main_window, ctrlButton_3, "ctrlButton_3"); GLADE_HOOKUP_OBJECT (main_window, alignment6, "alignment6"); GLADE_HOOKUP_OBJECT (main_window, hbox3, "hbox3"); GLADE_HOOKUP_OBJECT (main_window, image2, "image2"); GLADE_HOOKUP_OBJECT (main_window, hbox4, "hbox4"); GLADE_HOOKUP_OBJECT (main_window, queue_progress, "queue_progress"); GLADE_HOOKUP_OBJECT (main_window, queue_usage, "queue_usage"); GLADE_HOOKUP_OBJECT (main_window, label9, "label9"); GLADE_HOOKUP_OBJECT (main_window, image3, "image3"); GLADE_HOOKUP_OBJECT (main_window, hbox5, "hbox5"); GLADE_HOOKUP_OBJECT (main_window, belts_progress, "belts_progress"); GLADE_HOOKUP_OBJECT (main_window, belts_usage, "belts_usage"); GLADE_HOOKUP_OBJECT (main_window, ctrlButton_4, "ctrlButton_4"); GLADE_HOOKUP_OBJECT (main_window, ctrlButton_5, "ctrlButton_5"); GLADE_HOOKUP_OBJECT (main_window, ctrlButton_6, "ctrlButton_6"); GLADE_HOOKUP_OBJECT (main_window, label5, "label5"); GLADE_HOOKUP_OBJECT (main_window, label3, "label3"); GLADE_HOOKUP_OBJECT (main_window, label8, "label8"); GLADE_HOOKUP_OBJECT (main_window, image6, "image6"); return main_window; }
GtkWidget * fill_stream_info(proto_type type, unsigned int pid, unsigned int seq_id) { GtkWidget *vbox; GtkWidget *hbox; GtkWidget *sw; GtkWidget *treeview; GtkWidget *next_button, *apply_button, *quit_button; GtkTreeModel *stream_model; GtkWidget *frame; GtkWidget *text_view; frame = gtk_frame_new(NULL); gtk_frame_set_label_align(GTK_FRAME(frame), 0.5, 0.5); gtk_widget_set_size_request(frame, 300, 200); vbox = gtk_vbox_new(FALSE, 5); gtk_container_add(GTK_CONTAINER(frame), vbox); gtk_box_pack_start(GTK_BOX(vbox), gtk_label_new("Edit Protocol fields"), FALSE, FALSE, 0); sw = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_ETCHED_IN); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0); /* create models */ stream_model = create_stream_model(type, pid, seq_id); /* create tree view */ treeview = gtk_tree_view_new_with_model(stream_model); gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(treeview), TRUE); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)), GTK_SELECTION_SINGLE); add_proto_values_column(GTK_TREE_VIEW(treeview), stream_model); /* Create a multiline text widget. */ text_view = gtk_text_view_new(); gtk_text_view_set_left_margin(GTK_TEXT_VIEW(text_view), 20); gtk_text_view_set_right_margin(GTK_TEXT_VIEW(text_view), 20); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW( text_view), GTK_WRAP_WORD_CHAR); gtk_text_view_set_pixels_inside_wrap(GTK_TEXT_VIEW(text_view), 0); gtk_widget_set_tooltip_text(GTK_WIDGET(text_view), "[L4 HEADER + PAYLOAD]\nInput only hex values(0123456789ABCDEF)"); /* Obtaining the buffer associated with the widget. */ l4_pl_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_view)); /* Set the default buffer text. */ if (type == TYPE_UDP) { udp_reference = g_object_ref(treeview); udp_treeview = treeview; udp_sw = sw; usr_def_reference = g_object_ref(text_view); l4_text_view = text_view; l4_buffer = l4_pl_buffer; } g_object_unref(stream_model); gtk_container_add(GTK_CONTAINER(sw), treeview); /* some buttons */ hbox = gtk_hbox_new(TRUE, 4); gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); next_button = gtk_button_new_with_label("Next"); g_signal_connect(next_button, "clicked", G_CALLBACK(switch_stream_editor_page), notebook); gtk_box_pack_start(GTK_BOX(hbox), next_button, TRUE, TRUE, 0); apply_button = gtk_button_new_with_label("Apply"); g_signal_connect(apply_button, "clicked", G_CALLBACK(apply_stream_callback), NULL); gtk_box_pack_start(GTK_BOX(hbox), apply_button, TRUE, TRUE, 0); quit_button = gtk_button_new_with_label("Close"); g_signal_connect(quit_button, "clicked", G_CALLBACK(close_window_callback), G_OBJECT(stream_window)); gtk_box_pack_start(GTK_BOX(hbox), quit_button, TRUE, TRUE, 0); /* put everything into a scrolled window */ return GTK_WIDGET(frame); }
GtkWidget* create_window1 (void) { GtkWidget *window1; GtkWidget *table1; GtkWidget *table3; GtkWidget *table5; GtkWidget *button4; GtkWidget *popupbutton; GtkWidget *label4; GtkWidget *reference_button; GtkWidget *hseparator1; GtkWidget *table9; GtkWidget *label8; GtkWidget *entry1; GtkWidget *button3; GtkWidget *button1; GtkWidget *hseparator2; GtkWidget *table10; GtkWidget *frame8; GtkWidget *scrolledwindow8; GtkWidget *clist1; GtkWidget *label9; GtkWidget *myNotebook; GtkWidget *scrolledwindow12; GtkWidget *text1; GtkWidget *label57; GtkTooltips *tooltips; tooltips = gtk_tooltips_new (); window1 = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_object_set_data (GTK_OBJECT (window1), "window1", window1); gtk_widget_set_usize (window1, 320, 240); gtk_window_set_title (GTK_WINDOW (window1), _("mydict")); table1 = gtk_table_new (5, 1, FALSE); gtk_widget_ref (table1); gtk_object_set_data_full (GTK_OBJECT (window1), "table1", table1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table1); gtk_container_add (GTK_CONTAINER (window1), table1); gtk_container_set_border_width (GTK_CONTAINER (table1), 2); table3 = gtk_table_new (1, 1, FALSE); gtk_widget_ref (table3); gtk_object_set_data_full (GTK_OBJECT (window1), "table3", table3, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table3); gtk_table_attach (GTK_TABLE (table1), table3, 0, 1, 4, 5, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); table5 = gtk_table_new (1, 4, FALSE); gtk_widget_ref (table5); gtk_object_set_data_full (GTK_OBJECT (window1), "table5", table5, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table5); gtk_table_attach (GTK_TABLE (table3), table5, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); button4 = gtk_button_new_with_label (_(" Quit ")); gtk_widget_ref (button4); gtk_object_set_data_full (GTK_OBJECT (window1), "button4", button4, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (button4); gtk_table_attach (GTK_TABLE (table5), button4, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_tooltips_set_tip (tooltips, button4, _("Give me comments"), NULL); popupbutton = gtk_button_new_with_label (_("Popup Recite")); gtk_widget_ref (popupbutton); gtk_object_set_data_full (GTK_OBJECT (window1), "popupbutton", popupbutton, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (popupbutton); gtk_table_attach (GTK_TABLE (table5), popupbutton, 3, 4, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); label4 = gtk_label_new (_(" MyDict , Powered by brains. ")); gtk_widget_ref (label4); gtk_object_set_data_full (GTK_OBJECT (window1), "label4", label4, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (label4); gtk_table_attach (GTK_TABLE (table5), label4, 2, 3, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label4), 0, 0.5); gtk_misc_set_padding (GTK_MISC (label4), 0, 7); reference_button = gtk_button_new_with_label (_("Reference")); gtk_widget_ref (reference_button); gtk_object_set_data_full (GTK_OBJECT (window1), "reference_button", reference_button, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (reference_button); gtk_table_attach (GTK_TABLE (table5), reference_button, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_container_set_border_width (GTK_CONTAINER (reference_button), 1); hseparator1 = gtk_hseparator_new (); gtk_widget_ref (hseparator1); gtk_object_set_data_full (GTK_OBJECT (window1), "hseparator1", hseparator1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hseparator1); gtk_table_attach (GTK_TABLE (table1), hseparator1, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND), (GtkAttachOptions) (0), 0, 0); table9 = gtk_table_new (1, 4, FALSE); gtk_widget_ref (table9); gtk_object_set_data_full (GTK_OBJECT (window1), "table9", table9, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table9); gtk_table_attach (GTK_TABLE (table1), table9, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); label8 = gtk_label_new (_(" What is: ")); gtk_widget_ref (label8); gtk_object_set_data_full (GTK_OBJECT (window1), "label8", label8, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label8); gtk_table_attach (GTK_TABLE (table9), label8, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label8), 0, 0.5); gtk_misc_set_padding (GTK_MISC (label8), 0, 5); entry1 = gtk_entry_new (); gtk_widget_ref (entry1); gtk_object_set_data_full (GTK_OBJECT (window1), "entry1", entry1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (entry1); gtk_table_attach (GTK_TABLE (table9), entry1, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_tooltips_set_tip (tooltips, entry1, _("Click Right button to clear the entry"), NULL); button3 = gtk_button_new_with_label (_(" Search ")); gtk_widget_ref (button3); gtk_object_set_data_full (GTK_OBJECT (window1), "button3", button3, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (button3); gtk_table_attach (GTK_TABLE (table9), button3, 2, 3, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_tooltips_set_tip (tooltips, button3, _("Look up "), NULL); button1 = gtk_button_new_with_label (_("Add")); gtk_widget_ref (button1); gtk_object_set_data_full (GTK_OBJECT (window1), "button1", button1, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (button1); gtk_table_attach (GTK_TABLE (table9), button1, 3, 4, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_container_set_border_width (GTK_CONTAINER (button1), 2); gtk_tooltips_set_tip (tooltips, button1, _("Need to remember"), NULL); hseparator2 = gtk_hseparator_new (); gtk_widget_ref (hseparator2); gtk_object_set_data_full (GTK_OBJECT (window1), "hseparator2", hseparator2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hseparator2); gtk_table_attach (GTK_TABLE (table1), hseparator2, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); /* */ table10 = gtk_table_new (1, 2, FALSE); gtk_widget_ref (table10); gtk_object_set_data_full (GTK_OBJECT (window1), "table10", table10, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table10); gtk_table_attach (GTK_TABLE (table1), table10, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); frame8 = gtk_frame_new (_("Relative Words")); gtk_widget_ref (frame8); gtk_object_set_data_full (GTK_OBJECT (window1), "frame8", frame8, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (frame8); gtk_table_attach (GTK_TABLE (table10), frame8, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_widget_set_usize (frame8, 130, -2); gtk_container_set_border_width (GTK_CONTAINER (frame8), 1); gtk_frame_set_label_align (GTK_FRAME (frame8), 0.61, 0.5); scrolledwindow8 = gtk_scrolled_window_new (NULL, NULL); gtk_widget_ref (scrolledwindow8); gtk_object_set_data_full (GTK_OBJECT (window1), "scrolledwindow8", scrolledwindow8, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (scrolledwindow8); gtk_container_add (GTK_CONTAINER (frame8), scrolledwindow8); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow8), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); clist1 = gtk_clist_new (1); gtk_widget_ref (clist1); gtk_object_set_data_full (GTK_OBJECT (window1), "clist1", clist1, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (clist1); gtk_container_add (GTK_CONTAINER (scrolledwindow8), clist1); gtk_clist_set_column_width (GTK_CLIST (clist1), 0, 80); gtk_clist_column_titles_hide (GTK_CLIST (clist1)); gtk_clist_set_shadow_type (GTK_CLIST (clist1), GTK_SHADOW_ETCHED_IN); label9 = gtk_label_new (_("label9")); gtk_widget_ref (label9); gtk_object_set_data_full (GTK_OBJECT (window1), "label9", label9, (GtkDestroyNotify) gtk_widget_unref); // gtk_widget_show (label9); gtk_clist_set_column_widget (GTK_CLIST (clist1), 0, label9); myNotebook = gtk_notebook_new (); gtk_widget_ref (myNotebook); gtk_object_set_data_full (GTK_OBJECT (window1), "myNotebook", myNotebook, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (myNotebook); gtk_table_attach (GTK_TABLE (table10), myNotebook, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); gtk_notebook_set_scrollable (GTK_NOTEBOOK (myNotebook), TRUE); scrolledwindow12 = gtk_scrolled_window_new (NULL, NULL); gtk_widget_ref (scrolledwindow12); gtk_object_set_data_full (GTK_OBJECT (window1), "scrolledwindow12", scrolledwindow12, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (scrolledwindow12); gtk_container_add (GTK_CONTAINER (myNotebook), scrolledwindow12); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow12), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); /* */ text1 = gtk_text_new (NULL, NULL); gtk_widget_ref (text1); gtk_object_set_data_full (GTK_OBJECT (window1), "text1", text1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (text1); gtk_container_add (GTK_CONTAINER (scrolledwindow12), text1); gtk_text_insert (GTK_TEXT (text1), NULL, NULL, NULL, _("\nWelcome to gnuDict framework - mydict-client Gtk version\n\n\n\n\n\nNow check the plugins ......."), -1); label57 = gtk_label_new (_("Welcome to mydict")); gtk_widget_ref (label57); gtk_object_set_data_full (GTK_OBJECT (window1), "label57", label57, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label57); gtk_notebook_set_tab_label (GTK_NOTEBOOK (myNotebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (myNotebook), 0), label57); gtk_signal_connect (GTK_OBJECT (window1), "destroy", GTK_SIGNAL_FUNC (on_window1_destroy), NULL); gtk_signal_connect (GTK_OBJECT (button4), "clicked", GTK_SIGNAL_FUNC (on_button4_clicked), NULL); gtk_signal_connect (GTK_OBJECT (popupbutton), "clicked", GTK_SIGNAL_FUNC (on_popupbutton_clicked), NULL); gtk_signal_connect (GTK_OBJECT (reference_button), "clicked", GTK_SIGNAL_FUNC (on_reference_button_clicked), NULL); gtk_signal_connect (GTK_OBJECT (entry1), "key_press_event", GTK_SIGNAL_FUNC (on_entry1_key_press_event), NULL); gtk_signal_connect (GTK_OBJECT (entry1), "button_press_event", GTK_SIGNAL_FUNC (on_entry1_button_press_event), NULL); gtk_signal_connect (GTK_OBJECT (button3), "clicked", GTK_SIGNAL_FUNC (on_button3_clicked), NULL); gtk_signal_connect (GTK_OBJECT (button1), "clicked", GTK_SIGNAL_FUNC (on_button1_clicked), NULL); gtk_signal_connect (GTK_OBJECT (clist1), "select_row", GTK_SIGNAL_FUNC (on_clist1_select_row), NULL); gtk_signal_connect (GTK_OBJECT (clist1), "key_release_event", GTK_SIGNAL_FUNC (on_clist1_key_release_event), clist1); gtk_signal_connect (GTK_OBJECT (myNotebook), "button_release_event", GTK_SIGNAL_FUNC (on_myNotebook_button_press_event), NULL); gtk_object_set_data (GTK_OBJECT (window1), "tooltips", tooltips); gtk_widget_grab_focus(entry1); return window1; }
int CUIHandler::CreateMainWnd() { GtkWidget* menubar; GtkWidget* filemenu, *helpmenu; GtkWidget* file, *quit; GtkWidget* help, *about; GtkWidget* vbox, *hbox; GtkWidget* align; GtkToolItem* toolitem; GtkWidget* frame; GtkWidget* status_menu; GtkWidget* status_menu_item; GtkWidget *hseparator; GtkWidget *statusbarHBox; GtkWidget *statusbarFrameConnection; GtkWidget *statusbarAlignmentConnection; GtkWidget *statusbarHBoxConnection; GtkWidget *statusbarFrameFps; GtkWidget *statusbarAlignmentFps; GtkWidget *statusbarFrameResolution; GtkWidget *statusbarAlignmentResolution; // set up tray icon trayIcon = gtk_status_icon_new_from_pixbuf(disconnectedTrayIcon); gtk_status_icon_set_tooltip(trayIcon, TRAY_TOOLTIP_DISCONNECTED); gtk_status_icon_set_visible(trayIcon, TRUE); g_signal_connect(G_OBJECT(trayIcon), "popup-menu", G_CALLBACK(status_popup), NULL); g_signal_connect(G_OBJECT(trayIcon), "activate", G_CALLBACK(status_activate), NULL); // set up main mainWindow mainWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect(G_OBJECT(mainWindow), "delete_event", G_CALLBACK(delete_event), NULL); g_signal_connect(G_OBJECT(mainWindow), "destroy", G_CALLBACK(destroy), NULL); g_signal_connect(G_OBJECT(mainWindow), "window_state_event", G_CALLBACK(track_minimize), NULL); gtk_window_set_title(GTK_WINDOW(mainWindow), SMARTCAM_WND_TITLE); gtk_container_set_border_width(GTK_CONTAINER(mainWindow), 1); gtk_window_set_resizable(GTK_WINDOW(mainWindow), FALSE); gtk_widget_set_size_request(mainWindow, MAIN_WND_WIDTH, MAIN_WND_HEIGHT); gtk_window_set_position(GTK_WINDOW(mainWindow), GTK_WIN_POS_NONE); gtk_window_set_gravity(GTK_WINDOW (mainWindow), GDK_GRAVITY_CENTER); gtk_window_set_default_icon(connectedTrayIcon); GdkPixbuf* icon; GList* icon_list = NULL; icon = gdk_pixbuf_new_from_file(DATADIR "/icons/hicolor/16x16/apps/smartcam.png", NULL); icon_list = g_list_append(icon_list, icon); icon = gdk_pixbuf_new_from_file(DATADIR "/icons/hicolor/22x22/apps/smartcam.png", NULL); icon_list = g_list_append(icon_list, icon); icon = gdk_pixbuf_new_from_file(DATADIR "/icons/hicolor/24x24/apps/smartcam.png", NULL); icon_list = g_list_append(icon_list, icon); icon = gdk_pixbuf_new_from_file(DATADIR "/icons/hicolor/32x32/apps/smartcam.png", NULL); icon_list = g_list_append(icon_list, icon); icon = gdk_pixbuf_new_from_file(DATADIR "/icons/hicolor/48x48/apps/smartcam.png", NULL); icon_list = g_list_append(icon_list, icon); gtk_window_set_default_icon_list(icon_list); g_list_foreach(icon_list, (GFunc)g_object_unref, NULL ); g_list_free(icon_list); // create menubar menubar = gtk_menu_bar_new(); filemenu = gtk_menu_new(); file = gtk_menu_item_new_with_mnemonic("_File"); miSettings = gtk_image_menu_item_new_with_label("Settings"); gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM(miSettings), gtk_image_new_from_stock(GTK_STOCK_PREFERENCES, GTK_ICON_SIZE_MENU)); g_signal_connect(G_OBJECT(miSettings), "activate", G_CALLBACK(OnSettingsClicked), (gpointer) NULL); quit = gtk_image_menu_item_new_from_stock(GTK_STOCK_QUIT, NULL); g_signal_connect(G_OBJECT(quit), "activate", G_CALLBACK(destroy), NULL); gtk_menu_shell_append(GTK_MENU_SHELL(menubar), file); gtk_menu_item_set_submenu(GTK_MENU_ITEM(file), filemenu); gtk_menu_shell_append(GTK_MENU_SHELL(filemenu), miSettings); gtk_menu_shell_append(GTK_MENU_SHELL(filemenu), quit); helpmenu = gtk_menu_new(); help = gtk_menu_item_new_with_mnemonic("_Help"); about = gtk_image_menu_item_new_from_stock(GTK_STOCK_ABOUT, NULL); g_signal_connect(about, "activate", G_CALLBACK(show_about_dialog), NULL); gtk_menu_shell_append(GTK_MENU_SHELL(menubar), help); gtk_menu_item_set_submenu(GTK_MENU_ITEM(help), helpmenu); gtk_menu_shell_append(GTK_MENU_SHELL(helpmenu), about); // create toolbar toolbar = gtk_toolbar_new(); gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS); gtk_toolbar_set_icon_size(GTK_TOOLBAR(toolbar), GTK_ICON_SIZE_MENU); g_object_set(G_OBJECT(toolbar), "can-focus", FALSE, NULL); tbSettings = gtk_tool_button_new_from_stock(GTK_STOCK_PREFERENCES); g_signal_connect(G_OBJECT(tbSettings), "clicked", G_CALLBACK(OnSettingsClicked), NULL); g_object_set(G_OBJECT(tbSettings), "tooltip-text", "Settings", NULL); g_object_set(G_OBJECT(tbSettings), "can-focus", FALSE, NULL); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), tbSettings, 0); tbDisconnect = gtk_tool_button_new_from_stock(GTK_STOCK_DISCONNECT); g_signal_connect(G_OBJECT(tbDisconnect), "clicked", G_CALLBACK(OnDisconnectClicked), NULL); g_object_set(G_OBJECT(tbDisconnect), "tooltip-text", "Disconnect", NULL); g_object_set(G_OBJECT(tbDisconnect), "can-focus", FALSE, NULL); g_object_set(G_OBJECT(tbDisconnect), "sensitive", FALSE, NULL); // disable disconnect gtk_toolbar_insert(GTK_TOOLBAR(toolbar), tbDisconnect, 1); // create preview frame vbox = gtk_vbox_new(FALSE, 1); gtk_container_set_border_width(GTK_CONTAINER(vbox), 1); gtk_container_add(GTK_CONTAINER(mainWindow), vbox); align = gtk_alignment_new(0.5, 0.5, 0, 0); frame = gtk_frame_new(NULL); gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_OUT); image = gtk_image_new_from_pixbuf(logoIcon); gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), toolbar, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), align, TRUE, TRUE, 0); gtk_container_add(GTK_CONTAINER(align), frame); gtk_container_add(GTK_CONTAINER(frame), image); // set up status bar hseparator = gtk_hseparator_new (); gtk_box_pack_start (GTK_BOX (vbox), hseparator, FALSE, FALSE, 0); statusbarHBox = gtk_hbox_new (FALSE, 0); gtk_box_pack_start (GTK_BOX (vbox), statusbarHBox, FALSE, FALSE, 0); statusbarFrameConnection = gtk_frame_new (NULL); gtk_box_pack_start (GTK_BOX (statusbarHBox), statusbarFrameConnection, TRUE, TRUE, 0); gtk_widget_set_size_request (statusbarFrameConnection, 55, 25); gtk_frame_set_label_align (GTK_FRAME (statusbarFrameConnection), 0, 0); gtk_frame_set_shadow_type (GTK_FRAME (statusbarFrameConnection), GTK_SHADOW_IN); statusbarAlignmentConnection = gtk_alignment_new (0, 0.5, 1, 1); gtk_container_add (GTK_CONTAINER (statusbarFrameConnection), statusbarAlignmentConnection); gtk_alignment_set_padding (GTK_ALIGNMENT (statusbarAlignmentConnection), 0, 0, 3, 0); statusbarHBoxConnection = gtk_hbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (statusbarAlignmentConnection), statusbarHBoxConnection); if(pSmartEngine->GetSettings().connectionType == CONN_BLUETOOTH) { statusbarImageConnection = gtk_image_new_from_pixbuf(btStatusIcon); } else { statusbarImageConnection = gtk_image_new_from_pixbuf(inetStatusIcon); } gtk_box_pack_start (GTK_BOX (statusbarHBoxConnection), statusbarImageConnection, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (statusbarImageConnection), 0, 0.5); statusbarLabelConnection = gtk_label_new ("Disconnected"); gtk_box_pack_start (GTK_BOX (statusbarHBoxConnection), statusbarLabelConnection, TRUE, TRUE, 0); gtk_misc_set_alignment (GTK_MISC (statusbarLabelConnection), 0, 0.5); statusbarFrameFps = gtk_frame_new (NULL); gtk_box_pack_start (GTK_BOX (statusbarHBox), statusbarFrameFps, TRUE, TRUE, 0); gtk_widget_set_size_request (statusbarFrameFps, 17, 25); gtk_frame_set_shadow_type (GTK_FRAME (statusbarFrameFps), GTK_SHADOW_IN); statusbarAlignmentFps = gtk_alignment_new (0, 0.5, 1, 1); gtk_container_add (GTK_CONTAINER (statusbarFrameFps), statusbarAlignmentFps); gtk_alignment_set_padding (GTK_ALIGNMENT (statusbarAlignmentFps), 0, 0, 3, 0); statusbarLabelFps = gtk_label_new (CUIHandler::STATUS_LABEL_FPS); gtk_container_add (GTK_CONTAINER (statusbarAlignmentFps), statusbarLabelFps); gtk_misc_set_alignment (GTK_MISC (statusbarLabelFps), 0, 0.5); statusbarFrameResolution = gtk_frame_new (NULL); gtk_box_pack_start (GTK_BOX (statusbarHBox), statusbarFrameResolution, TRUE, TRUE, 0); gtk_widget_set_size_request (statusbarFrameResolution, 92, 25); gtk_frame_set_shadow_type (GTK_FRAME (statusbarFrameResolution), GTK_SHADOW_IN); statusbarAlignmentResolution = gtk_alignment_new (0, 0.5, 1, 1); gtk_container_add (GTK_CONTAINER (statusbarFrameResolution), statusbarAlignmentResolution); gtk_alignment_set_padding (GTK_ALIGNMENT (statusbarAlignmentResolution), 0, 0, 3, 0); statusbarLabelResolution = gtk_label_new (CUIHandler::STATUS_LABEL_RESOLUTION); gtk_container_add (GTK_CONTAINER (statusbarAlignmentResolution), statusbarLabelResolution); gtk_misc_set_alignment (GTK_MISC (statusbarLabelResolution), 0, 0.5); gtk_widget_show_all(mainWindow); return 0; }
/* * Create GDISP+ sampled symbol list. */ void gdisp_createSampledSymbolList ( Kernel_T *kernel, GtkWidget *parent ) { GtkWidget *sFrame = (GtkWidget*)NULL; GtkWidget *scrolledWindow = (GtkWidget*)NULL; GtkWidget *cTree = (GtkWidget*)NULL; GtkCTreeNode *pNode = (GtkCTreeNode*)NULL; GtkCTreeNode *sNode = (GtkCTreeNode*)NULL; GdkFont *selectedFont = (GdkFont*)NULL; GdkFont *unselectedFont = (GdkFont*)NULL; GList *providerItem = (GList*)NULL; Provider_T *provider = (Provider_T*)NULL; PopupMenu_T *popupMenu = (PopupMenu_T*)NULL; /* ------------------------ FRAME WITH LABEL ------------------------ */ /* * Create a Frame that will contain a scrolled window for sampled symbols. * Align the label at the left of the frame. * Set the style of the frame. */ sFrame = gtk_frame_new(" Sampled Symbols "); gtk_frame_set_label_align(GTK_FRAME(sFrame),0.1,0.0); gtk_frame_set_shadow_type(GTK_FRAME(sFrame),GTK_SHADOW_ETCHED_IN); gtk_container_add(GTK_CONTAINER(parent),sFrame); gtk_widget_show(sFrame); /* ------- SCROLLED WINDOW FOR THE LIST OF SAMPLED SYMBOLS --------- */ /* * This is the scrolled window to put the List widget inside. */ scrolledWindow = gtk_scrolled_window_new(NULL /* H Adjustment */, NULL /* V Adjustment */); gtk_container_border_width(GTK_CONTAINER(scrolledWindow),5); gtk_container_add(GTK_CONTAINER(sFrame),scrolledWindow); gtk_widget_show(scrolledWindow); kernel->widgets.sampledSymbolScrolledWindow = scrolledWindow; /* --------- HIERARCHICAL TREE FOR HANDLING ALL PROVIDERS --------- */ cTree = gdisp_createHierarchicalTree(kernel); gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolledWindow), cTree); kernel->widgets.sampledSymbolHTree = cTree; /* ---------------------- DYNAMIC POPUP MENU ---------------------*/ /* * Create the dynamic menu. */ popupMenu = gdisp_createMenu(kernel, cTree, gdisp_popupMenuHandler, (gpointer)cTree); gdisp_addMenuItem(popupMenu, GD_POPUP_TITLE, "Sampled Symbol Tree", (gpointer)NULL); gdisp_addMenuItem(popupMenu, GD_POPUP_ITEM, "Expand All", (gpointer)GUINT_TO_POINTER(1)); gdisp_addMenuItem(popupMenu, GD_POPUP_ITEM, "Collapse All", (gpointer)GUINT_TO_POINTER(0)); /* ------------------------ NODE PIXMAPS --------------------- */ /* * Create expanded/collapsed node pixmap & mask. */ kernel->widgets.expandedNodePixmap = gdisp_getPixmapById(kernel, GD_PIX_expandedNode, GTK_WIDGET(scrolledWindow)); kernel->widgets.collapsedNodePixmap = gdisp_getPixmapById(kernel, GD_PIX_collapseNode, GTK_WIDGET(scrolledWindow)); /* ------------------------ PER PROVIDER ---------------------- */ providerItem = g_list_first(kernel->providerList); while (providerItem != (GList*)NULL) { provider = (Provider_T*)providerItem->data; /* ----------------- PROVIDER NODE CREATION ------------------ */ /* * Create a node that will contain all provider information. */ gdisp_createProviderNode(kernel, scrolledWindow, cTree, provider, &pNode, &sNode); /* * Next provider. */ providerItem = g_list_next(providerItem); } /* * Create the styles that contain the correct font * for node selection / unselection. */ #define GD_SELECTED_FONT "-adobe-helvetica-bold-r-normal--12-*-*-*-*-*-*-*" #define GD_UNSELECTED_FONT "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-*-*" selectedFont = gdk_font_load(GD_SELECTED_FONT); unselectedFont = gdk_font_load(GD_UNSELECTED_FONT); if (selectedFont == (GdkFont*)NULL || unselectedFont == (GdkFont*)NULL) { if (selectedFont != (GdkFont*)NULL) { gdk_font_unref(selectedFont); selectedFont = (GdkFont*)NULL; } if (unselectedFont != (GdkFont*)NULL) { gdk_font_unref(unselectedFont); unselectedFont = (GdkFont*)NULL; } } else { kernel->widgets.selectedNodeStyle = gtk_style_copy(gtk_widget_get_default_style()); kernel->widgets.selectedNodeStyle = gtk_style_ref(kernel->widgets.selectedNodeStyle); kernel->widgets.selectedNodeStyle->font = selectedFont; kernel->widgets.selectedNodeStyle->fg[GTK_STATE_NORMAL] = kernel->colors[_BLUE_]; kernel->widgets.unselectedNodeStyle = gtk_style_copy(gtk_widget_get_default_style()); kernel->widgets.unselectedNodeStyle = gtk_style_ref(kernel->widgets.unselectedNodeStyle); kernel->widgets.unselectedNodeStyle->font = unselectedFont; kernel->widgets.unselectedNodeStyle->fg[GTK_STATE_NORMAL] = kernel->colors[_BLACK_]; } /* * Finalise. */ gdisp_finaliseHierarchicalTree(kernel, cTree); }