instance_connect( this, server, port );
}
gtk_widget_destroy( this->connect );
+ this->guard = 1;
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( lookup_widget( this->window, "button_connect" ) ), TRUE );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( lookup_widget( this->window, "button_disconnect" ) ), FALSE );
+ this->guard = 0;
return FALSE;
}
static gboolean on_cancel_pressed( GtkWidget *button, gpointer user_data )
{
dv1394app this = user_data;
+ if ( this->guard ) return FALSE;
gtk_widget_destroy( this->connect );
return FALSE;
}
dv1394app this = user_data;
GtkWidget *widget;
+ if ( this->guard ) return;
this->connect = create_window_connection( );
/* Connection set up handling */
void on_item_disconnect_activate( GtkMenuItem *menuitem, gpointer user_data )
{
dv1394app this = user_data;
+
+ if ( this->guard ) return;
dv1394app_disconnect( this );
+
+ this->guard = 1;
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( lookup_widget( this->window, "button_connect" ) ), FALSE );
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( lookup_widget( this->window, "button_disconnect" ) ), TRUE );
+ this->guard = 0;
}
/** Main window - quit menu item selected.
dv1394app this = user_data;
int index = 0;
GtkWidget *notebook = lookup_widget( button, "notebook1" );
-
+
+ if ( this->guard ) return TRUE;
+ this->guard = 1;
+ for ( index = 0; index < this->page_count; index ++ )
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( this->page_buttons[ index ] ), FALSE );
for ( index = 0; index < this->page_count; index ++ )
{
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( this->page_buttons[ index ] ), FALSE );
if ( this->page_buttons[ index ] == button )
break;
}
-
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( this->page_buttons[ index ] ), TRUE );
gtk_notebook_set_current_page( GTK_NOTEBOOK( notebook ), index );
+ this->guard = 0;
return TRUE;
}
static void dv1394app_register_page( dv1394app this, page item )
{
- GtkWidget *toolbar = lookup_widget( this->window, "toolbar2" );
+ GtkWidget *toolbar = lookup_widget( this->window, "toolbar1" );
GtkIconSize size = gtk_toolbar_get_icon_size( GTK_TOOLBAR( toolbar ) );
GtkWidget *widget = lookup_widget( this->window, "notebook1" );
GtkWidget *bin = gtk_frame_new( NULL );
gtk_widget_show( bin );
page_get_toolbar_info( item, size, &widget, &label );
- this->page_buttons[ this->page_count ] = gtk_toolbar_append_element( GTK_TOOLBAR ( toolbar ), GTK_TOOLBAR_CHILD_BUTTON, NULL, label, NULL, NULL, widget, NULL, NULL);
+ this->page_buttons[ this->page_count ] = gtk_toolbar_append_element( GTK_TOOLBAR ( toolbar ), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL, label, NULL, NULL, widget, NULL, NULL);
gtk_label_set_use_underline( GTK_LABEL(((GtkToolbarChild*)(g_list_last( GTK_TOOLBAR( toolbar )->children)->data))->label), TRUE);
gtk_widget_show( widget );
gtk_signal_connect( GTK_OBJECT( this->page_buttons[ this->page_count ] ), "clicked", GTK_SIGNAL_FUNC( on_page_switch_pressed ), this );
gtk_signal_connect( GTK_OBJECT( this->window ), "destroy", GTK_SIGNAL_FUNC( on_main_window_delete_event ), this );
/* Menu item signal handling */
- widget = lookup_widget( this->window, "item_connect" );
- gtk_signal_connect( GTK_OBJECT( widget ), "activate", GTK_SIGNAL_FUNC( on_item_connect_activate ), this );
+// widget = lookup_widget( this->window, "item_connect" );
+// gtk_signal_connect( GTK_OBJECT( widget ), "activate", GTK_SIGNAL_FUNC( on_item_connect_activate ), this );
widget = lookup_widget( this->window, "button_connect" );
gtk_signal_connect( GTK_OBJECT( widget ), "clicked", GTK_SIGNAL_FUNC( on_item_connect_activate ), this );
- widget = lookup_widget( this->window, "item_disconnect" );
- gtk_signal_connect( GTK_OBJECT( widget ), "activate", GTK_SIGNAL_FUNC( on_item_disconnect_activate ), this );
+// widget = lookup_widget( this->window, "item_disconnect" );
+// gtk_signal_connect( GTK_OBJECT( widget ), "activate", GTK_SIGNAL_FUNC( on_item_disconnect_activate ), this );
widget = lookup_widget( this->window, "button_disconnect" );
gtk_signal_connect( GTK_OBJECT( widget ), "clicked", GTK_SIGNAL_FUNC( on_item_disconnect_activate ), this );
- widget = lookup_widget( this->window, "item_quit" );
- gtk_signal_connect( GTK_OBJECT( widget ), "activate", GTK_SIGNAL_FUNC( on_item_quit_activate ), this );
- widget = lookup_widget( this->window, "button_quit" );
- gtk_signal_connect( GTK_OBJECT( widget ), "clicked", GTK_SIGNAL_FUNC( on_item_quit_activate ), this );
-
+// widget = lookup_widget( this->window, "item_quit" );
+// gtk_signal_connect( GTK_OBJECT( widget ), "activate", GTK_SIGNAL_FUNC( on_item_quit_activate ), this );
+// widget = lookup_widget( this->window, "button_quit" );
+// gtk_signal_connect( GTK_OBJECT( widget ), "clicked", GTK_SIGNAL_FUNC( on_item_quit_activate ), this );
+
/* Initialise the pages. */
dv1394app_register_page( this, page_status_init( this ) );
dv1394app_register_page( this, page_clips_init( this ) );
dv1394app_register_page( this, page_command_init( this ) );
+ this->guard = 1;
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( this->page_buttons[ 0 ] ), TRUE );
+ this->guard = 0;
/* Remove the empty page */
widget = lookup_widget( this->window, "notebook1" );
*port ++ = '\0';
else
port = "5250";
- instance_connect( this, server, port );
+ this->guard = 1;
+ if ( instance_connect( this, server, port ) )
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( lookup_widget( this->window, "button_connect" ) ), TRUE );
+ else
+ gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( lookup_widget( this->window, "button_disconnect" ) ), TRUE );
+ this->guard = 0;
free( server );
}
{
GtkWidget *gdv1394d;
GtkWidget *vbox1;
- GtkWidget *handlebox2;
+// GtkWidget *handlebox2;
GtkWidget *hbox27;
GtkWidget *vbox9;
- GtkWidget *menubar;
- GtkWidget *menuitem1;
- GtkWidget *menuitem1_menu;
- GtkWidget *item_connect;
- GtkWidget *item_disconnect;
- GtkWidget *separatormenuitem1;
- GtkWidget *item_quit;
+// GtkWidget *menubar;
+// GtkWidget *menuitem1;
+// GtkWidget *menuitem1_menu;
+// GtkWidget *item_connect;
+// GtkWidget *item_disconnect;
+// GtkWidget *separatormenuitem1;
+// GtkWidget *item_quit;
GtkWidget *toolbar1;
GtkWidget *tmp_toolbar_icon;
GtkWidget *button_connect;
GtkWidget *button_disconnect;
- GtkWidget *vseparator1;
- GtkWidget *button_quit;
+// GtkWidget *vseparator1;
+// GtkWidget *button_quit;
GtkWidget *hbox;
- GtkWidget *toolbar2;
+// GtkWidget *toolbar2;
GtkWidget *vbox6;
GtkWidget *notebook1;
GtkWidget *empty_notebook_page;
gtk_widget_show (vbox1);
gtk_container_add (GTK_CONTAINER (gdv1394d), vbox1);
- handlebox2 = gtk_handle_box_new ();
- gtk_widget_show (handlebox2);
- gtk_box_pack_start (GTK_BOX (vbox1), handlebox2, FALSE, FALSE, 0);
+// handlebox2 = gtk_handle_box_new ();
+// gtk_widget_show (handlebox2);
+// gtk_box_pack_start (GTK_BOX (vbox1), handlebox2, FALSE, FALSE, 0);
hbox27 = gtk_hbox_new (FALSE, 0);
gtk_widget_show (hbox27);
- gtk_container_add (GTK_CONTAINER (handlebox2), hbox27);
+// gtk_container_add (GTK_CONTAINER (handlebox2), hbox27);
+ gtk_box_pack_start (GTK_BOX (vbox1), hbox27, FALSE, FALSE, 0);
vbox9 = gtk_vbox_new (FALSE, 0);
gtk_widget_show (vbox9);
gtk_box_pack_start (GTK_BOX (hbox27), vbox9, TRUE, TRUE, 0);
- menubar = gtk_menu_bar_new ();
- gtk_widget_show (menubar);
- gtk_box_pack_start (GTK_BOX (vbox9), menubar, TRUE, TRUE, 0);
+// menubar = gtk_menu_bar_new ();
+// gtk_widget_show (menubar);
+// gtk_box_pack_start (GTK_BOX (vbox9), menubar, TRUE, TRUE, 0);
- menuitem1 = gtk_menu_item_new_with_mnemonic (_("_File"));
- gtk_widget_show (menuitem1);
- gtk_container_add (GTK_CONTAINER (menubar), menuitem1);
+// menuitem1 = gtk_menu_item_new_with_mnemonic (_("_File"));
+// gtk_widget_show (menuitem1);
+// gtk_container_add (GTK_CONTAINER (menubar), menuitem1);
- menuitem1_menu = gtk_menu_new ();
- gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem1), menuitem1_menu);
+// menuitem1_menu = gtk_menu_new ();
+// gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem1), menuitem1_menu);
- item_connect = gtk_menu_item_new_with_mnemonic (_("_Connect"));
- gtk_widget_show (item_connect);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_connect);
+// item_connect = gtk_menu_item_new_with_mnemonic (_("_Connect"));
+// gtk_widget_show (item_connect);
+// gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_connect);
- item_disconnect = gtk_menu_item_new_with_mnemonic (_("_Disconnect"));
- gtk_widget_show (item_disconnect);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_disconnect);
+// item_disconnect = gtk_menu_item_new_with_mnemonic (_("_Disconnect"));
+// gtk_widget_show (item_disconnect);
+// gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_disconnect);
- separatormenuitem1 = gtk_menu_item_new ();
- gtk_widget_show (separatormenuitem1);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), separatormenuitem1);
- gtk_widget_set_sensitive (separatormenuitem1, FALSE);
+// separatormenuitem1 = gtk_menu_item_new ();
+// gtk_widget_show (separatormenuitem1);
+// gtk_container_add (GTK_CONTAINER (menuitem1_menu), separatormenuitem1);
+// gtk_widget_set_sensitive (separatormenuitem1, FALSE);
- item_quit = gtk_menu_item_new_with_mnemonic (_("_Quit"));
- gtk_widget_show (item_quit);
- gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_quit);
+// item_quit = gtk_menu_item_new_with_mnemonic (_("_Quit"));
+// gtk_widget_show (item_quit);
+// gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_quit);
toolbar1 = gtk_toolbar_new ();
gtk_widget_show (toolbar1);
- gtk_box_pack_start (GTK_BOX (hbox27), toolbar1, FALSE, FALSE, 0);
- gtk_toolbar_set_style (GTK_TOOLBAR (toolbar1), GTK_TOOLBAR_ICONS);
+ gtk_box_pack_start (GTK_BOX (hbox27), toolbar1, TRUE, TRUE, 0);
+ gtk_toolbar_set_style (GTK_TOOLBAR (toolbar1), GTK_TOOLBAR_BOTH);
- tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-yes", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
+ tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-connect", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
button_connect = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
- GTK_TOOLBAR_CHILD_BUTTON,
+ GTK_TOOLBAR_CHILD_TOGGLEBUTTON,
NULL,
- "",
+ "Connect",
_("Connect to a server"), NULL,
tmp_toolbar_icon, NULL, NULL);
gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
gtk_widget_show (button_connect);
- tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-stop", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
+ tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-disconnect", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
button_disconnect = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
- GTK_TOOLBAR_CHILD_BUTTON,
+ GTK_TOOLBAR_CHILD_TOGGLEBUTTON,
NULL,
- "",
+ "Disconnect",
_("Disconnect from server"), NULL,
tmp_toolbar_icon, NULL, NULL);
gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
gtk_widget_show (button_disconnect);
- vseparator1 = gtk_vseparator_new ();
- gtk_widget_show (vseparator1);
gtk_toolbar_append_space (GTK_TOOLBAR (toolbar1));
- gtk_toolbar_append_widget (GTK_TOOLBAR (toolbar1), vseparator1, NULL, NULL);
+// vseparator1 = gtk_vseparator_new ();
+// gtk_widget_show (vseparator1);
+// gtk_toolbar_append_widget (GTK_TOOLBAR (toolbar1), vseparator1, NULL, NULL);
- tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-quit", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
- button_quit = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
- GTK_TOOLBAR_CHILD_BUTTON,
- NULL,
- "",
- _("Exit"), NULL,
- tmp_toolbar_icon, NULL, NULL);
- gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
- gtk_widget_show (button_quit);
+// tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-quit", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
+// button_quit = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
+// GTK_TOOLBAR_CHILD_BUTTON,
+// NULL,
+// "",
+// _("Exit"), NULL,
+// tmp_toolbar_icon, NULL, NULL);
+// gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
+// gtk_widget_show (button_quit);
hbox = gtk_hbox_new (FALSE, 0);
gtk_widget_show (hbox);
gtk_box_pack_start (GTK_BOX (vbox1), hbox, TRUE, TRUE, 0);
- toolbar2 = gtk_toolbar_new ();
- gtk_widget_show (toolbar2);
- gtk_box_pack_start (GTK_BOX (hbox), toolbar2, FALSE, TRUE, 0);
- gtk_toolbar_set_style (GTK_TOOLBAR (toolbar2), GTK_TOOLBAR_BOTH);
- gtk_toolbar_set_orientation (GTK_TOOLBAR (toolbar2), GTK_ORIENTATION_VERTICAL);
+// toolbar2 = gtk_toolbar_new ();
+// gtk_widget_show (toolbar2);
+// gtk_box_pack_start (GTK_BOX (hbox), toolbar2, FALSE, TRUE, 0);
+// gtk_toolbar_set_style (GTK_TOOLBAR (toolbar2), GTK_TOOLBAR_BOTH);
+// gtk_toolbar_set_orientation (GTK_TOOLBAR (toolbar2), GTK_ORIENTATION_VERTICAL);
vbox6 = gtk_vbox_new (FALSE, 0);
gtk_widget_show (vbox6);
gtk_notebook_set_show_tabs (GTK_NOTEBOOK (notebook1), FALSE);
gtk_notebook_set_tab_pos (GTK_NOTEBOOK (notebook1), GTK_POS_RIGHT);
gtk_notebook_popup_enable (GTK_NOTEBOOK (notebook1));
+ gtk_notebook_set_show_border (GTK_NOTEBOOK (notebook1), FALSE);
empty_notebook_page = gtk_vbox_new (FALSE, 0);
gtk_widget_show (empty_notebook_page);
/* Store pointers to all widgets, for use by lookup_widget(). */
GLADE_HOOKUP_OBJECT_NO_REF (gdv1394d, gdv1394d, "gdv1394d");
GLADE_HOOKUP_OBJECT (gdv1394d, vbox1, "vbox1");
- GLADE_HOOKUP_OBJECT (gdv1394d, handlebox2, "handlebox2");
+// GLADE_HOOKUP_OBJECT (gdv1394d, handlebox2, "handlebox2");
GLADE_HOOKUP_OBJECT (gdv1394d, hbox27, "hbox27");
GLADE_HOOKUP_OBJECT (gdv1394d, vbox9, "vbox9");
- GLADE_HOOKUP_OBJECT (gdv1394d, menubar, "menubar");
- GLADE_HOOKUP_OBJECT (gdv1394d, menuitem1, "menuitem1");
- GLADE_HOOKUP_OBJECT (gdv1394d, menuitem1_menu, "menuitem1_menu");
- GLADE_HOOKUP_OBJECT (gdv1394d, item_connect, "item_connect");
- GLADE_HOOKUP_OBJECT (gdv1394d, item_disconnect, "item_disconnect");
- GLADE_HOOKUP_OBJECT (gdv1394d, separatormenuitem1, "separatormenuitem1");
- GLADE_HOOKUP_OBJECT (gdv1394d, item_quit, "item_quit");
+// GLADE_HOOKUP_OBJECT (gdv1394d, menubar, "menubar");
+// GLADE_HOOKUP_OBJECT (gdv1394d, menuitem1, "menuitem1");
+// GLADE_HOOKUP_OBJECT (gdv1394d, menuitem1_menu, "menuitem1_menu");
+// GLADE_HOOKUP_OBJECT (gdv1394d, item_connect, "item_connect");
+// GLADE_HOOKUP_OBJECT (gdv1394d, item_disconnect, "item_disconnect");
+// GLADE_HOOKUP_OBJECT (gdv1394d, separatormenuitem1, "separatormenuitem1");
+// GLADE_HOOKUP_OBJECT (gdv1394d, item_quit, "item_quit");
GLADE_HOOKUP_OBJECT (gdv1394d, toolbar1, "toolbar1");
GLADE_HOOKUP_OBJECT (gdv1394d, button_connect, "button_connect");
GLADE_HOOKUP_OBJECT (gdv1394d, button_disconnect, "button_disconnect");
- GLADE_HOOKUP_OBJECT (gdv1394d, vseparator1, "vseparator1");
- GLADE_HOOKUP_OBJECT (gdv1394d, button_quit, "button_quit");
+// GLADE_HOOKUP_OBJECT (gdv1394d, vseparator1, "vseparator1");
+// GLADE_HOOKUP_OBJECT (gdv1394d, button_quit, "button_quit");
GLADE_HOOKUP_OBJECT (gdv1394d, hbox, "hbox");
- GLADE_HOOKUP_OBJECT (gdv1394d, toolbar2, "toolbar2");
+// GLADE_HOOKUP_OBJECT (gdv1394d, toolbar2, "toolbar2");
GLADE_HOOKUP_OBJECT (gdv1394d, vbox6, "vbox6");
GLADE_HOOKUP_OBJECT (gdv1394d, notebook1, "notebook1");
GLADE_HOOKUP_OBJECT (gdv1394d, label40, "label40");