2 * DO NOT EDIT THIS FILE - it is generated by Glade.
15 #include <gdk/gdkkeysyms.h>
18 #include "callbacks.h"
19 #include "interface.h"
22 #define GLADE_HOOKUP_OBJECT(component,widget,name) \
23 g_object_set_data_full (G_OBJECT (component), name, \
24 gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
26 #define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
27 g_object_set_data (G_OBJECT (component), name, widget)
31 create_buttons_transport(GtkWidget
*top
, int type
)
47 "Beginning of playlist",
48 "begin-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
54 "prev-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
60 "rew-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
66 "prev-frame-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
72 "player_play_64x32_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
78 "player_pause_32x32_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
84 "player_stop_32x32_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
90 "next-frame-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
96 "fwd-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
102 "next-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
108 "end-16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
114 "loop_on_16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
120 "loop_off_16x16_(Axialis_Team).png" /* Free Icons by Axialis Software http://www.axialis.com */
130 hbox
= gtk_hbox_new (FALSE
, 0);
131 gtk_widget_show (hbox
);
134 for(i
= 0; buttons
[i
].filename
; i
++)
136 GtkWidget
*transport
, *image
;
138 if ( type
!= buttons
[i
].type
)
141 transport
= gtk_button_new ();
142 gtk_widget_show (transport
);
143 gtk_box_pack_start (GTK_BOX (hbox
), transport
, TRUE
, FALSE
, 0);
144 GTK_WIDGET_UNSET_FLAGS (transport
, GTK_CAN_FOCUS
);
145 gtk_button_set_relief (GTK_BUTTON (transport
), GTK_RELIEF_NONE
);
146 gtk_widget_set_tooltip_text (transport
, buttons
[i
].tooltip
);
148 image
= gtk_image_new_from_pixbuf(create_pixbuf(buttons
[i
].filename
));
149 gtk_widget_show (image
);
150 gtk_container_add (GTK_CONTAINER (transport
), image
);
152 snprintf(name
, sizeof(name
), "transport_%d", buttons
[i
].idx
);
153 GLADE_HOOKUP_OBJECT (top
, transport
, name
);
155 snprintf(name
, sizeof(name
), "transport_image_%d", buttons
[i
].idx
);
156 GLADE_HOOKUP_OBJECT (top
, image
, name
);
159 snprintf(name
, sizeof(name
), "buttons_transport_hbox_%d", type
);
160 GLADE_HOOKUP_OBJECT (top
, hbox
, name
);
167 create_block_buttons_transport(GtkWidget
*top
, int type
)
170 GtkWidget
*hbox
, *label
[2];
172 hbox
= gtk_hbox_new (FALSE
, 0);
173 gtk_widget_show (hbox
);
175 snprintf(name
, sizeof(name
), "bbt_label_%da", type
);
176 label
[0] = gtk_label_new ("");
177 gtk_widget_show (label
[0]);
178 gtk_box_pack_start (GTK_BOX (hbox
), label
[0], TRUE
, TRUE
, 0);
179 gtk_label_set_justify (GTK_LABEL (label
[0]), GTK_JUSTIFY_LEFT
);
180 GLADE_HOOKUP_OBJECT (top
, label
[0], name
);
183 gtk_box_pack_start (GTK_BOX (hbox
),
184 create_buttons_transport(top
, type
),
187 snprintf(name
, sizeof(name
), "bbt_label_%db", type
);
188 label
[1] = gtk_label_new ("");
189 gtk_widget_show (label
[1]);
190 gtk_box_pack_start (GTK_BOX (hbox
), label
[1], TRUE
, TRUE
, 0);
191 gtk_label_set_justify (GTK_LABEL (label
[1]), GTK_JUSTIFY_LEFT
);
192 GLADE_HOOKUP_OBJECT (top
, label
[0], name
);
198 create_gdv1394d (void)
202 // GtkWidget *handlebox2;
205 // GtkWidget *menubar;
206 // GtkWidget *menuitem1;
207 // GtkWidget *menuitem1_menu;
208 // GtkWidget *item_connect;
209 // GtkWidget *item_disconnect;
210 // GtkWidget *separatormenuitem1;
211 // GtkWidget *item_quit;
213 GtkWidget
*tmp_toolbar_icon
;
214 GtkWidget
*button_connect
;
215 GtkWidget
*button_disconnect
;
216 // GtkWidget *vseparator1;
217 // GtkWidget *button_quit;
219 // GtkWidget *toolbar2;
221 GtkWidget
*notebook1
;
222 GtkWidget
*empty_notebook_page
;
224 GtkWidget
*vbox_trim
;
225 GtkWidget
*statusbar
;
226 GtkWidget
*button_open_playlist
, *button_save_playlist
;
228 gdv1394d
= gtk_window_new (GTK_WINDOW_TOPLEVEL
);
229 gtk_window_set_title (GTK_WINDOW (gdv1394d
), _("Melted Client"));
230 gtk_window_set_default_size (GTK_WINDOW (gdv1394d
), 640, 480);
232 vbox1
= gtk_vbox_new (FALSE
, 0);
233 gtk_widget_show (vbox1
);
234 gtk_container_add (GTK_CONTAINER (gdv1394d
), vbox1
);
236 // handlebox2 = gtk_handle_box_new ();
237 // gtk_widget_show (handlebox2);
238 // gtk_box_pack_start (GTK_BOX (vbox1), handlebox2, FALSE, FALSE, 0);
240 hbox27
= gtk_hbox_new (FALSE
, 0);
241 gtk_widget_show (hbox27
);
242 // gtk_container_add (GTK_CONTAINER (handlebox2), hbox27);
243 gtk_box_pack_start (GTK_BOX (vbox1
), hbox27
, FALSE
, FALSE
, 0);
245 vbox9
= gtk_vbox_new (FALSE
, 0);
246 gtk_widget_show (vbox9
);
247 gtk_box_pack_start (GTK_BOX (hbox27
), vbox9
, TRUE
, TRUE
, 0);
249 // menubar = gtk_menu_bar_new ();
250 // gtk_widget_show (menubar);
251 // gtk_box_pack_start (GTK_BOX (vbox9), menubar, TRUE, TRUE, 0);
253 // menuitem1 = gtk_menu_item_new_with_mnemonic (_("_File"));
254 // gtk_widget_show (menuitem1);
255 // gtk_container_add (GTK_CONTAINER (menubar), menuitem1);
257 // menuitem1_menu = gtk_menu_new ();
258 // gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem1), menuitem1_menu);
260 // item_connect = gtk_menu_item_new_with_mnemonic (_("_Connect"));
261 // gtk_widget_show (item_connect);
262 // gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_connect);
264 // item_disconnect = gtk_menu_item_new_with_mnemonic (_("_Disconnect"));
265 // gtk_widget_show (item_disconnect);
266 // gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_disconnect);
268 // separatormenuitem1 = gtk_menu_item_new ();
269 // gtk_widget_show (separatormenuitem1);
270 // gtk_container_add (GTK_CONTAINER (menuitem1_menu), separatormenuitem1);
271 // gtk_widget_set_sensitive (separatormenuitem1, FALSE);
273 // item_quit = gtk_menu_item_new_with_mnemonic (_("_Quit"));
274 // gtk_widget_show (item_quit);
275 // gtk_container_add (GTK_CONTAINER (menuitem1_menu), item_quit);
277 toolbar1
= gtk_toolbar_new ();
278 gtk_widget_show (toolbar1
);
279 gtk_box_pack_start (GTK_BOX (hbox27
), toolbar1
, TRUE
, TRUE
, 0);
280 gtk_toolbar_set_style (GTK_TOOLBAR (toolbar1
), GTK_TOOLBAR_BOTH_HORIZ
);
282 tmp_toolbar_icon
= gtk_image_new_from_stock ("gtk-connect", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1
)));
283 button_connect
= gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1
),
284 GTK_TOOLBAR_CHILD_TOGGLEBUTTON
,
287 _("Connect to a server"), NULL
,
288 tmp_toolbar_icon
, NULL
, NULL
);
289 gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild
*) (g_list_last (GTK_TOOLBAR (toolbar1
)->children
)->data
))->label
), TRUE
);
290 gtk_widget_show (button_connect
);
292 tmp_toolbar_icon
= gtk_image_new_from_stock ("gtk-disconnect", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1
)));
293 button_disconnect
= gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1
),
294 GTK_TOOLBAR_CHILD_TOGGLEBUTTON
,
297 _("Disconnect from server"), NULL
,
298 tmp_toolbar_icon
, NULL
, NULL
);
299 gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild
*) (g_list_last (GTK_TOOLBAR (toolbar1
)->children
)->data
))->label
), TRUE
);
300 gtk_widget_show (button_disconnect
);
302 gtk_toolbar_append_space (GTK_TOOLBAR (toolbar1
));
304 tmp_toolbar_icon
= gtk_image_new_from_stock ("gtk-open",
305 gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1
)));
306 button_open_playlist
= gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1
),
307 GTK_TOOLBAR_CHILD_BUTTON
,
310 _("Open playlist"), NULL
,
311 tmp_toolbar_icon
, NULL
, NULL
);
312 gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild
*) (g_list_last (GTK_TOOLBAR (toolbar1
)->children
)->data
))->label
), TRUE
);
313 gtk_widget_show (button_open_playlist
);
314 GLADE_HOOKUP_OBJECT (gdv1394d
, button_open_playlist
, "button_open_playlist");
316 tmp_toolbar_icon
= gtk_image_new_from_stock ("gtk-save-as",
317 gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1
)));
318 button_save_playlist
= gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1
),
319 GTK_TOOLBAR_CHILD_BUTTON
,
322 _("Save playlist"), NULL
,
323 tmp_toolbar_icon
, NULL
, NULL
);
324 gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild
*) (g_list_last (GTK_TOOLBAR (toolbar1
)->children
)->data
))->label
), TRUE
);
325 gtk_widget_show (button_save_playlist
);
326 GLADE_HOOKUP_OBJECT (gdv1394d
, button_save_playlist
, "button_save_playlist");
328 gtk_toolbar_append_space (GTK_TOOLBAR (toolbar1
));
330 // vseparator1 = gtk_vseparator_new ();
331 // gtk_widget_show (vseparator1);
332 // gtk_toolbar_append_widget (GTK_TOOLBAR (toolbar1), vseparator1, NULL, NULL);
334 // tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-quit", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
335 // button_quit = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
336 // GTK_TOOLBAR_CHILD_BUTTON,
340 // tmp_toolbar_icon, NULL, NULL);
341 // gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
342 // gtk_widget_show (button_quit);
344 hbox
= gtk_hbox_new (FALSE
, 0);
345 gtk_widget_show (hbox
);
346 gtk_box_pack_start (GTK_BOX (vbox1
), hbox
, TRUE
, TRUE
, 0);
348 // toolbar2 = gtk_toolbar_new ();
349 // gtk_widget_show (toolbar2);
350 // gtk_box_pack_start (GTK_BOX (hbox), toolbar2, FALSE, TRUE, 0);
351 // gtk_toolbar_set_style (GTK_TOOLBAR (toolbar2), GTK_TOOLBAR_BOTH);
352 // gtk_toolbar_set_orientation (GTK_TOOLBAR (toolbar2), GTK_ORIENTATION_VERTICAL);
354 vbox6
= gtk_vbox_new (FALSE
, 0);
355 gtk_widget_show (vbox6
);
356 gtk_box_pack_start (GTK_BOX (hbox
), vbox6
, TRUE
, TRUE
, 0);
358 notebook1
= gtk_notebook_new ();
359 gtk_widget_show (notebook1
);
360 gtk_box_pack_start (GTK_BOX (vbox6
), notebook1
, TRUE
, TRUE
, 0);
361 GTK_WIDGET_UNSET_FLAGS (notebook1
, GTK_CAN_FOCUS
);
362 gtk_notebook_set_show_tabs (GTK_NOTEBOOK (notebook1
), FALSE
);
363 gtk_notebook_set_tab_pos (GTK_NOTEBOOK (notebook1
), GTK_POS_RIGHT
);
364 gtk_notebook_popup_enable (GTK_NOTEBOOK (notebook1
));
365 gtk_notebook_set_show_border (GTK_NOTEBOOK (notebook1
), FALSE
);
367 empty_notebook_page
= gtk_vbox_new (FALSE
, 0);
368 gtk_widget_show (empty_notebook_page
);
369 gtk_container_add (GTK_CONTAINER (notebook1
), empty_notebook_page
);
371 label40
= gtk_label_new ("label40");
372 gtk_widget_show (label40
);
373 gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1
), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1
), 0), label40
);
374 gtk_label_set_justify (GTK_LABEL (label40
), GTK_JUSTIFY_LEFT
);
376 gtk_box_pack_start (GTK_BOX (vbox6
),
377 create_block_buttons_transport(gdv1394d
, 1),
380 gtk_box_pack_start (GTK_BOX (vbox6
),
381 create_block_buttons_transport(gdv1394d
, 2),
384 vbox_trim
= gtk_vbox_new (FALSE
, 0);
385 gtk_widget_show (vbox_trim
);
386 gtk_box_pack_start (GTK_BOX (vbox6
), vbox_trim
, FALSE
, TRUE
, 0);
388 statusbar
= gtk_statusbar_new ();
389 gtk_widget_show (statusbar
);
390 gtk_box_pack_start (GTK_BOX (vbox1
), statusbar
, FALSE
, FALSE
, 0);
392 /* Store pointers to all widgets, for use by lookup_widget(). */
393 GLADE_HOOKUP_OBJECT_NO_REF (gdv1394d
, gdv1394d
, "gdv1394d");
394 GLADE_HOOKUP_OBJECT (gdv1394d
, vbox1
, "vbox1");
395 // GLADE_HOOKUP_OBJECT (gdv1394d, handlebox2, "handlebox2");
396 GLADE_HOOKUP_OBJECT (gdv1394d
, hbox27
, "hbox27");
397 GLADE_HOOKUP_OBJECT (gdv1394d
, vbox9
, "vbox9");
398 // GLADE_HOOKUP_OBJECT (gdv1394d, menubar, "menubar");
399 // GLADE_HOOKUP_OBJECT (gdv1394d, menuitem1, "menuitem1");
400 // GLADE_HOOKUP_OBJECT (gdv1394d, menuitem1_menu, "menuitem1_menu");
401 // GLADE_HOOKUP_OBJECT (gdv1394d, item_connect, "item_connect");
402 // GLADE_HOOKUP_OBJECT (gdv1394d, item_disconnect, "item_disconnect");
403 // GLADE_HOOKUP_OBJECT (gdv1394d, separatormenuitem1, "separatormenuitem1");
404 // GLADE_HOOKUP_OBJECT (gdv1394d, item_quit, "item_quit");
405 GLADE_HOOKUP_OBJECT (gdv1394d
, toolbar1
, "toolbar1");
406 GLADE_HOOKUP_OBJECT (gdv1394d
, button_connect
, "button_connect");
407 GLADE_HOOKUP_OBJECT (gdv1394d
, button_disconnect
, "button_disconnect");
408 // GLADE_HOOKUP_OBJECT (gdv1394d, vseparator1, "vseparator1");
409 // GLADE_HOOKUP_OBJECT (gdv1394d, button_quit, "button_quit");
410 GLADE_HOOKUP_OBJECT (gdv1394d
, hbox
, "hbox");
411 // GLADE_HOOKUP_OBJECT (gdv1394d, toolbar2, "toolbar2");
412 GLADE_HOOKUP_OBJECT (gdv1394d
, vbox6
, "vbox6");
413 GLADE_HOOKUP_OBJECT (gdv1394d
, notebook1
, "notebook1");
414 GLADE_HOOKUP_OBJECT (gdv1394d
, label40
, "label40");
415 GLADE_HOOKUP_OBJECT (gdv1394d
, vbox_trim
, "vbox_trim");
416 GLADE_HOOKUP_OBJECT (gdv1394d
, statusbar
, "statusbar");
422 create_window_connection (void)
424 GtkWidget
*window_connection
;
428 GtkWidget
*entry_server
;
429 GtkWidget
*hbuttonbox4
;
430 GtkWidget
*button_connect
;
431 GtkWidget
*alignment2
;
435 GtkWidget
*button_cancel
;
436 GtkWidget
*alignment3
;
441 GtkWidget
*entry_port
;
442 GtkAccelGroup
*accel_group
;
444 accel_group
= gtk_accel_group_new ();
446 window_connection
= gtk_window_new (GTK_WINDOW_TOPLEVEL
);
447 gtk_window_set_title (GTK_WINDOW (window_connection
), _("Connection"));
448 gtk_window_set_position (GTK_WINDOW (window_connection
), GTK_WIN_POS_MOUSE
);
449 gtk_window_set_modal (GTK_WINDOW (window_connection
), TRUE
);
450 gtk_window_set_resizable (GTK_WINDOW (window_connection
), FALSE
);
451 gtk_container_set_border_width (GTK_CONTAINER (window_connection
), 8);
453 table2
= gtk_table_new (3, 2, FALSE
);
454 gtk_widget_show (table2
);
455 gtk_container_add (GTK_CONTAINER (window_connection
), table2
);
456 gtk_table_set_row_spacings (GTK_TABLE (table2
), 8);
457 gtk_table_set_col_spacings (GTK_TABLE (table2
), 8);
459 label30
= gtk_label_new (_("Server "));
460 gtk_widget_show (label30
);
461 gtk_table_attach (GTK_TABLE (table2
), label30
, 0, 1, 0, 1,
462 (GtkAttachOptions
) (GTK_FILL
),
463 (GtkAttachOptions
) (0), 0, 0);
464 gtk_label_set_justify (GTK_LABEL (label30
), GTK_JUSTIFY_LEFT
);
465 gtk_misc_set_alignment (GTK_MISC (label30
), 0, 0.5);
467 label31
= gtk_label_new (_("Port"));
468 gtk_widget_show (label31
);
469 gtk_table_attach (GTK_TABLE (table2
), label31
, 0, 1, 1, 2,
470 (GtkAttachOptions
) (GTK_FILL
),
471 (GtkAttachOptions
) (0), 0, 0);
472 gtk_label_set_justify (GTK_LABEL (label31
), GTK_JUSTIFY_LEFT
);
473 gtk_misc_set_alignment (GTK_MISC (label31
), 0, 0.5);
475 entry_server
= gtk_entry_new ();
476 gtk_widget_show (entry_server
);
477 gtk_table_attach (GTK_TABLE (table2
), entry_server
, 1, 2, 0, 1,
478 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
479 (GtkAttachOptions
) (0), 0, 0);
480 gtk_entry_set_text (GTK_ENTRY (entry_server
), _("localhost"));
482 hbuttonbox4
= gtk_hbutton_box_new ();
483 gtk_widget_show (hbuttonbox4
);
484 gtk_table_attach (GTK_TABLE (table2
), hbuttonbox4
, 1, 2, 2, 3,
485 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
486 (GtkAttachOptions
) (0), 0, 0);
487 gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox4
), GTK_BUTTONBOX_SPREAD
);
489 button_cancel
= gtk_button_new ();
490 gtk_widget_show (button_cancel
);
491 gtk_container_add (GTK_CONTAINER (hbuttonbox4
), button_cancel
);
492 GTK_WIDGET_SET_FLAGS (button_cancel
, GTK_CAN_DEFAULT
);
493 gtk_button_set_relief (GTK_BUTTON (button_cancel
), GTK_RELIEF_NONE
);
495 alignment3
= gtk_alignment_new (0.5, 0.5, 0, 0);
496 gtk_widget_show (alignment3
);
497 gtk_container_add (GTK_CONTAINER (button_cancel
), alignment3
);
499 hbox9
= gtk_hbox_new (FALSE
, 2);
500 gtk_widget_show (hbox9
);
501 gtk_container_add (GTK_CONTAINER (alignment3
), hbox9
);
503 image3
= gtk_image_new_from_stock ("gtk-cancel", GTK_ICON_SIZE_BUTTON
);
504 gtk_widget_show (image3
);
505 gtk_box_pack_start (GTK_BOX (hbox9
), image3
, FALSE
, FALSE
, 0);
507 label33
= gtk_label_new_with_mnemonic (_("Cancel"));
508 gtk_widget_show (label33
);
509 gtk_box_pack_start (GTK_BOX (hbox9
), label33
, FALSE
, FALSE
, 0);
510 gtk_label_set_justify (GTK_LABEL (label33
), GTK_JUSTIFY_LEFT
);
512 button_connect
= gtk_button_new ();
513 gtk_widget_show (button_connect
);
514 gtk_container_add (GTK_CONTAINER (hbuttonbox4
), button_connect
);
515 GTK_WIDGET_SET_FLAGS (button_connect
, GTK_CAN_DEFAULT
);
516 gtk_widget_add_accelerator (button_connect
, "clicked", accel_group
,
519 gtk_button_set_relief (GTK_BUTTON (button_connect
), GTK_RELIEF_NONE
);
521 alignment2
= gtk_alignment_new (0.5, 0.5, 0, 0);
522 gtk_widget_show (alignment2
);
523 gtk_container_add (GTK_CONTAINER (button_connect
), alignment2
);
525 hbox8
= gtk_hbox_new (FALSE
, 2);
526 gtk_widget_show (hbox8
);
527 gtk_container_add (GTK_CONTAINER (alignment2
), hbox8
);
529 image2
= gtk_image_new_from_stock ("gtk-ok", GTK_ICON_SIZE_BUTTON
);
530 gtk_widget_show (image2
);
531 gtk_box_pack_start (GTK_BOX (hbox8
), image2
, FALSE
, FALSE
, 0);
533 label32
= gtk_label_new_with_mnemonic (_("Connect"));
534 gtk_widget_show (label32
);
535 gtk_box_pack_start (GTK_BOX (hbox8
), label32
, FALSE
, FALSE
, 0);
536 gtk_label_set_justify (GTK_LABEL (label32
), GTK_JUSTIFY_LEFT
);
538 hbox10
= gtk_hbox_new (FALSE
, 0);
539 gtk_widget_show (hbox10
);
540 gtk_table_attach (GTK_TABLE (table2
), hbox10
, 1, 2, 1, 2,
541 (GtkAttachOptions
) (GTK_FILL
),
542 (GtkAttachOptions
) (GTK_FILL
), 0, 0);
544 entry_port
= gtk_entry_new ();
545 gtk_widget_show (entry_port
);
546 gtk_box_pack_start (GTK_BOX (hbox10
), entry_port
, FALSE
, TRUE
, 0);
547 gtk_entry_set_max_length (GTK_ENTRY (entry_port
), 5);
548 gtk_entry_set_text (GTK_ENTRY (entry_port
), _("5250"));
549 gtk_entry_set_width_chars (GTK_ENTRY (entry_port
), 5);
551 /* Store pointers to all widgets, for use by lookup_widget(). */
552 GLADE_HOOKUP_OBJECT_NO_REF (window_connection
, window_connection
, "window_connection");
553 GLADE_HOOKUP_OBJECT (window_connection
, table2
, "table2");
554 GLADE_HOOKUP_OBJECT (window_connection
, label30
, "label30");
555 GLADE_HOOKUP_OBJECT (window_connection
, label31
, "label31");
556 GLADE_HOOKUP_OBJECT (window_connection
, entry_server
, "entry_server");
557 GLADE_HOOKUP_OBJECT (window_connection
, hbuttonbox4
, "hbuttonbox4");
558 GLADE_HOOKUP_OBJECT (window_connection
, button_connect
, "button_connect");
559 GLADE_HOOKUP_OBJECT (window_connection
, alignment2
, "alignment2");
560 GLADE_HOOKUP_OBJECT (window_connection
, hbox8
, "hbox8");
561 GLADE_HOOKUP_OBJECT (window_connection
, image2
, "image2");
562 GLADE_HOOKUP_OBJECT (window_connection
, label32
, "label32");
563 GLADE_HOOKUP_OBJECT (window_connection
, button_cancel
, "button_cancel");
564 GLADE_HOOKUP_OBJECT (window_connection
, alignment3
, "alignment3");
565 GLADE_HOOKUP_OBJECT (window_connection
, hbox9
, "hbox9");
566 GLADE_HOOKUP_OBJECT (window_connection
, image3
, "image3");
567 GLADE_HOOKUP_OBJECT (window_connection
, label33
, "label33");
568 GLADE_HOOKUP_OBJECT (window_connection
, hbox10
, "hbox10");
569 GLADE_HOOKUP_OBJECT (window_connection
, entry_port
, "entry_port");
571 gtk_widget_grab_default (button_connect
);
572 gtk_window_add_accel_group (GTK_WINDOW (window_connection
), accel_group
);
574 return window_connection
;
577 static GtkWidget
* create_pane_status (GtkWidget
* parent
, GtkWidget
* top
)
582 GtkWidget
*scrolledwindow
;
585 GSList
*radiobutton_group
= NULL
;
587 // create a scrolled area
588 scrolledwindow
= gtk_scrolled_window_new (NULL
, NULL
);
589 gtk_widget_show (scrolledwindow
);
591 gtk_container_add (GTK_CONTAINER (parent
), scrolledwindow
);
592 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow
), GTK_POLICY_AUTOMATIC
, GTK_POLICY_AUTOMATIC
);
593 GLADE_HOOKUP_OBJECT (top
, scrolledwindow
, "scrolledwindow4");
596 viewport
= gtk_viewport_new (NULL
, NULL
);
597 gtk_widget_show (viewport
);
598 gtk_container_add (GTK_CONTAINER (scrolledwindow
), viewport
);
599 GLADE_HOOKUP_OBJECT (top
, viewport
, "viewport1");
601 // create a table for displaying radios
602 table
= gtk_table_new (32, 1, FALSE
);
603 gtk_widget_show (table
);
604 gtk_container_add (GTK_CONTAINER (viewport
), table
);
605 GLADE_HOOKUP_OBJECT (top
, table
, "table3");
607 for (i
= 0; i
< 16; i
++)
609 GtkWidget
*label_unit
;
610 GtkWidget
*radiobutton
;
613 snprintf(buf
, sizeof(buf
), "%.2d", i
);
614 label_unit
= gtk_label_new (buf
);
615 gtk_table_attach (GTK_TABLE (table
), label_unit
, 0, 1, i
* 2 + 1, i
* 2 + 2,
616 (GtkAttachOptions
) (GTK_FILL
),
617 (GtkAttachOptions
) (0), 0, 0);
618 gtk_label_set_justify (GTK_LABEL (label_unit
), GTK_JUSTIFY_LEFT
);
619 gtk_misc_set_alignment (GTK_MISC (label_unit
), 0, 0.5);
620 snprintf(buf
, sizeof(buf
), "label_unit_%d", i
);
621 GLADE_HOOKUP_OBJECT (top
, label_unit
, buf
);
624 radiobutton
= gtk_radio_button_new_with_mnemonic (NULL
, _("<disconnected>"));
625 gtk_table_attach (GTK_TABLE (table
), radiobutton
, 0, 1, i
* 2, i
* 2 + 1,
626 (GtkAttachOptions
) (GTK_EXPAND
| GTK_FILL
),
627 (GtkAttachOptions
) (0), 0, 0);
628 gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton
), radiobutton_group
);
629 radiobutton_group
= gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton
));
630 snprintf(buf
, sizeof(buf
), "radiobutton_%d", i
);
631 GLADE_HOOKUP_OBJECT (top
, radiobutton
, buf
);
634 return scrolledwindow
;
639 create_playlist_buttons( GtkWidget
* parent
, GtkWidget
* top
)
654 "button_clips_refresh",
681 "Remove all but current clip",
687 NULL
, NULL
, NULL
, NULL
691 GtkWidget
*label44
, *label45
, *hbuttonbox5
;
693 label44
= gtk_label_new (_(" "));
694 gtk_widget_show (label44
);
695 gtk_box_pack_start (GTK_BOX (parent
), label44
, TRUE
, TRUE
, 0);
696 gtk_label_set_justify (GTK_LABEL (label44
), GTK_JUSTIFY_LEFT
);
698 for(i
= 0; buttons
[i
].stock
; i
++)
700 GtkWidget
*button
, *alignment
, *hbox
, *image
, *label
;
702 button
= gtk_button_new ();
703 gtk_widget_show (button
);
704 gtk_box_pack_start (GTK_BOX (parent
), button
, FALSE
, FALSE
, 0);
705 GTK_WIDGET_UNSET_FLAGS (button
, GTK_CAN_FOCUS
);
706 GTK_WIDGET_SET_FLAGS (button
, GTK_CAN_DEFAULT
);
707 gtk_button_set_relief (GTK_BUTTON (button
), GTK_RELIEF_NONE
);
708 gtk_widget_set_tooltip_text (button
, buttons
[i
].tooltip
);
710 alignment
= gtk_alignment_new (0, 0.5, 0, 0);
711 gtk_widget_show (alignment
);
712 gtk_container_add (GTK_CONTAINER (button
), alignment
);
714 hbox
= gtk_hbox_new (FALSE
, 2);
715 gtk_widget_show (hbox
);
716 gtk_container_add (GTK_CONTAINER (alignment
), hbox
);
718 image
= gtk_image_new_from_stock (buttons
[i
].stock
, GTK_ICON_SIZE_MENU
);
719 gtk_widget_show (image
);
720 gtk_box_pack_start (GTK_BOX (hbox
), image
, FALSE
, FALSE
, 0);
722 label
= gtk_label_new_with_mnemonic (buttons
[i
].label
);
723 gtk_widget_show (label
);
724 gtk_box_pack_start (GTK_BOX (hbox
), label
, FALSE
, FALSE
, 0);
725 gtk_label_set_justify (GTK_LABEL (label
), GTK_JUSTIFY_LEFT
);
727 GLADE_HOOKUP_OBJECT (top
, button
, buttons
[i
].hookup
);
730 hbuttonbox5
= gtk_hbutton_box_new ();
731 gtk_widget_show (hbuttonbox5
);
732 gtk_box_pack_start (GTK_BOX (parent
), hbuttonbox5
, FALSE
, FALSE
, 0);
734 label45
= gtk_label_new (_(" "));
735 gtk_widget_show (label45
);
736 gtk_box_pack_start (GTK_BOX (parent
), label45
, TRUE
, TRUE
, 0);
737 gtk_label_set_justify (GTK_LABEL (label45
), GTK_JUSTIFY_LEFT
);
744 create_pane_filedir( GtkWidget
* top
)
747 GtkWidget
* scrolledwindow
[2];
749 GtkWidget
* label_directory
;
752 /* create vbox for label pack */
753 vbox
= gtk_vbox_new (FALSE
, 0);
754 gtk_widget_show (vbox
);
756 /* create a label for dir name */
757 label_directory
= gtk_label_new (_("Disconnected"));
758 gtk_widget_show (label_directory
);
759 gtk_box_pack_start (GTK_BOX (vbox
), label_directory
, FALSE
, FALSE
, 0);
760 gtk_misc_set_alignment (GTK_MISC (label_directory
), 0, 0.5);
761 GLADE_HOOKUP_OBJECT (top
, label_directory
, "label_directory");
763 /* create a vertical pane for dirs list and clips list */
764 vpaned
= gtk_vpaned_new ();
765 gtk_widget_show (vpaned
);
766 gtk_box_pack_start (GTK_BOX (vbox
), vpaned
, TRUE
, TRUE
, 0);
768 /* create two scrolled window for lists areas */
769 scrolledwindow
[0] = gtk_scrolled_window_new (NULL
, NULL
);
770 gtk_widget_show (scrolledwindow
[0]);
771 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow
[0]),
772 GTK_POLICY_AUTOMATIC
, GTK_POLICY_AUTOMATIC
);
773 scrolledwindow
[1] = gtk_scrolled_window_new (NULL
, NULL
);
774 gtk_widget_show (scrolledwindow
[1]);
775 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow
[1]),
776 GTK_POLICY_AUTOMATIC
, GTK_POLICY_AUTOMATIC
);
779 gtk_paned_pack1 (GTK_PANED (vpaned
), scrolledwindow
[0], FALSE
, FALSE
);
780 gtk_widget_set_size_request (scrolledwindow
[0], 250, -1);
781 gtk_paned_pack2 (GTK_PANED (vpaned
), scrolledwindow
[1], TRUE
, FALSE
);
782 gtk_widget_set_size_request (scrolledwindow
[1], 450, -1);
783 gtk_paned_set_position(GTK_PANED (vpaned
), 250);
786 list
[0] = gtk_tree_view_new ();
787 gtk_widget_show (list
[0]);
788 gtk_container_add (GTK_CONTAINER (scrolledwindow
[0]), list
[0]);
789 gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (list
[0]), FALSE
);
790 GLADE_HOOKUP_OBJECT (top
, list
[0], "list_dir");
793 list
[1] = gtk_tree_view_new ();
794 gtk_widget_show (list
[1]);
795 gtk_container_add (GTK_CONTAINER (scrolledwindow
[1]), list
[1]);
796 gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (list
[1]), FALSE
);
797 gtk_tree_view_set_enable_search (GTK_TREE_VIEW (list
[1]), FALSE
);
798 GLADE_HOOKUP_OBJECT (top
, list
[1], "list_clips");
800 gtk_widget_grab_focus (list
[0]);
807 create_pane_playlist( GtkWidget
* top
)
810 GtkWidget
*scrolledwindow
;
812 GtkWidget
*alignment
;
815 table
= gtk_table_new (2, 1, FALSE
);
817 scrolledwindow
= gtk_scrolled_window_new (NULL
, NULL
);
818 gtk_widget_show (scrolledwindow
);
819 gtk_table_attach (GTK_TABLE (table
), scrolledwindow
, 0, 1, 1, 2,
820 (GtkAttachOptions
) (GTK_EXPAND
| GTK_SHRINK
| GTK_FILL
),
821 (GtkAttachOptions
) (GTK_EXPAND
| GTK_SHRINK
| GTK_FILL
), 0, 0);
822 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow
),
823 GTK_POLICY_AUTOMATIC
, GTK_POLICY_AUTOMATIC
);
825 treeview
= gtk_tree_view_new ();
826 gtk_widget_show (treeview
);
827 gtk_container_add (GTK_CONTAINER (scrolledwindow
), treeview
);
829 alignment
= gtk_alignment_new (0.5, 0.5, 1, 1);
830 gtk_widget_show (alignment
);
831 gtk_table_attach (GTK_TABLE (table
), alignment
, 0, 1, 0, 1,
832 (GtkAttachOptions
) (GTK_FILL
),
833 (GtkAttachOptions
) (GTK_FILL
), 0, 0);
835 hbox
= gtk_hbox_new (FALSE
, 0);
836 gtk_widget_show (hbox
);
837 gtk_container_add (GTK_CONTAINER (alignment
), hbox
);
839 create_playlist_buttons(hbox
, top
);
841 GLADE_HOOKUP_OBJECT (top
, table
, "table4");
842 GLADE_HOOKUP_OBJECT (top
, scrolledwindow
, "scrolledwindow5");
843 GLADE_HOOKUP_OBJECT (top
, treeview
, "treeview1");
844 GLADE_HOOKUP_OBJECT (top
, alignment
, "alignment12");
845 GLADE_HOOKUP_OBJECT (top
, hbox
, "hbox19");
851 create_page_operate (void)
853 GtkWidget
*page_clips
;
856 GtkWidget
*frame1
, *frame2
;
858 page_clips
= gtk_window_new (GTK_WINDOW_TOPLEVEL
);
859 gtk_window_set_title (GTK_WINDOW (page_clips
), _("page_operate"));
860 GLADE_HOOKUP_OBJECT_NO_REF (page_clips
, page_clips
, "page_operate");
862 hpaned0
= gtk_hpaned_new ();
863 gtk_widget_show (hpaned0
);
864 gtk_container_add (GTK_CONTAINER (page_clips
), hpaned0
);
865 GLADE_HOOKUP_OBJECT (page_clips
, hpaned0
, "hpaned0");
867 frame1
= gtk_frame_new ("Playlist");
868 frame2
= gtk_frame_new ("Units");
869 gtk_frame_set_shadow_type (GTK_FRAME (frame1
), GTK_SHADOW_IN
);
870 gtk_frame_set_shadow_type (GTK_FRAME (frame2
), GTK_SHADOW_IN
);
871 gtk_widget_show(frame1
);
872 GLADE_HOOKUP_OBJECT (page_clips
, frame1
, "page_clips");
873 gtk_widget_show(frame2
);
874 GLADE_HOOKUP_OBJECT (page_clips
, frame2
, "page_status");
876 gtk_widget_set_size_request (hpaned0
, 200 , -1);
877 gtk_paned_pack1 (GTK_PANED (hpaned0
), frame1
, TRUE
, FALSE
);
878 gtk_widget_set_size_request (frame1
, 50, -1);
879 gtk_paned_pack2 (GTK_PANED (hpaned0
), frame2
, FALSE
, FALSE
);
880 gtk_widget_set_size_request (frame2
, 250, -1);
882 create_pane_status (frame2
, page_clips
);
884 hpaned1
= gtk_hpaned_new ();
885 gtk_widget_show (hpaned1
);
886 gtk_container_add (GTK_CONTAINER (frame1
), hpaned1
);
887 gtk_paned_set_position (GTK_PANED (hpaned1
), 120);
889 gtk_paned_pack1 (GTK_PANED (hpaned1
),
890 create_pane_filedir(page_clips
),
893 gtk_paned_pack2 (GTK_PANED (hpaned1
),
894 create_pane_playlist(page_clips
),
899 /* Store pointers to all widgets, for use by lookup_widget(). */
900 GLADE_HOOKUP_OBJECT (page_clips
, hpaned1
, "hpaned1");
906 create_page_shell (void)
908 GtkWidget
*page_shell
;
912 GtkWidget
*entry_command
;
913 GtkWidget
*button_command
;
914 GtkWidget
*alignment7
;
918 GtkWidget
*button_command_clear
;
919 GtkWidget
*alignment8
;
923 GtkWidget
*scrolledwindow3
;
924 GtkWidget
*textview_command
;
925 GtkWidget
*hbuttonbox3
;
927 page_shell
= gtk_window_new (GTK_WINDOW_TOPLEVEL
);
928 gtk_window_set_title (GTK_WINDOW (page_shell
), _("page_shell"));
930 vbox4
= gtk_vbox_new (FALSE
, 0);
931 gtk_widget_show (vbox4
);
932 gtk_container_add (GTK_CONTAINER (page_shell
), vbox4
);
934 hbox6
= gtk_hbox_new (FALSE
, 0);
935 gtk_widget_show (hbox6
);
936 gtk_box_pack_start (GTK_BOX (vbox4
), hbox6
, FALSE
, TRUE
, 0);
938 label10
= gtk_label_new (_("Command "));
939 gtk_widget_show (label10
);
940 gtk_box_pack_start (GTK_BOX (hbox6
), label10
, FALSE
, FALSE
, 0);
941 gtk_label_set_justify (GTK_LABEL (label10
), GTK_JUSTIFY_LEFT
);
943 entry_command
= gtk_entry_new ();
944 gtk_widget_show (entry_command
);
945 gtk_box_pack_start (GTK_BOX (hbox6
), entry_command
, TRUE
, TRUE
, 0);
947 button_command
= gtk_button_new ();
948 gtk_widget_show (button_command
);
949 gtk_box_pack_start (GTK_BOX (hbox6
), button_command
, FALSE
, FALSE
, 0);
950 GTK_WIDGET_SET_FLAGS (button_command
, GTK_CAN_DEFAULT
);
951 gtk_button_set_relief (GTK_BUTTON (button_command
), GTK_RELIEF_NONE
);
953 alignment7
= gtk_alignment_new (0.5, 0.5, 0, 0);
954 gtk_widget_show (alignment7
);
955 gtk_container_add (GTK_CONTAINER (button_command
), alignment7
);
957 hbox14
= gtk_hbox_new (FALSE
, 2);
958 gtk_widget_show (hbox14
);
959 gtk_container_add (GTK_CONTAINER (alignment7
), hbox14
);
961 image7
= gtk_image_new_from_stock ("gtk-ok", GTK_ICON_SIZE_BUTTON
);
962 gtk_widget_show (image7
);
963 gtk_box_pack_start (GTK_BOX (hbox14
), image7
, FALSE
, FALSE
, 0);
965 label38
= gtk_label_new_with_mnemonic (_("_OK"));
966 gtk_widget_show (label38
);
967 gtk_box_pack_start (GTK_BOX (hbox14
), label38
, FALSE
, FALSE
, 0);
968 gtk_label_set_justify (GTK_LABEL (label38
), GTK_JUSTIFY_LEFT
);
970 button_command_clear
= gtk_button_new ();
971 gtk_widget_show (button_command_clear
);
972 gtk_box_pack_start (GTK_BOX (hbox6
), button_command_clear
, FALSE
, FALSE
, 0);
973 GTK_WIDGET_SET_FLAGS (button_command_clear
, GTK_CAN_DEFAULT
);
974 gtk_button_set_relief (GTK_BUTTON (button_command_clear
), GTK_RELIEF_NONE
);
976 alignment8
= gtk_alignment_new (0.5, 0.5, 0, 0);
977 gtk_widget_show (alignment8
);
978 gtk_container_add (GTK_CONTAINER (button_command_clear
), alignment8
);
980 hbox15
= gtk_hbox_new (FALSE
, 2);
981 gtk_widget_show (hbox15
);
982 gtk_container_add (GTK_CONTAINER (alignment8
), hbox15
);
984 image8
= gtk_image_new_from_stock ("gtk-delete", GTK_ICON_SIZE_BUTTON
);
985 gtk_widget_show (image8
);
986 gtk_box_pack_start (GTK_BOX (hbox15
), image8
, FALSE
, FALSE
, 0);
988 label39
= gtk_label_new_with_mnemonic (_("Clear"));
989 gtk_widget_show (label39
);
990 gtk_box_pack_start (GTK_BOX (hbox15
), label39
, FALSE
, FALSE
, 0);
991 gtk_label_set_justify (GTK_LABEL (label39
), GTK_JUSTIFY_LEFT
);
993 scrolledwindow3
= gtk_scrolled_window_new (NULL
, NULL
);
994 gtk_widget_show (scrolledwindow3
);
995 gtk_box_pack_start (GTK_BOX (vbox4
), scrolledwindow3
, TRUE
, TRUE
, 0);
996 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow3
), GTK_POLICY_AUTOMATIC
, GTK_POLICY_AUTOMATIC
);
998 textview_command
= gtk_text_view_new ();
999 gtk_widget_show (textview_command
);
1000 gtk_container_add (GTK_CONTAINER (scrolledwindow3
), textview_command
);
1001 GTK_WIDGET_UNSET_FLAGS (textview_command
, GTK_CAN_FOCUS
);
1002 gtk_text_view_set_editable (GTK_TEXT_VIEW (textview_command
), FALSE
);
1003 gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (textview_command
), GTK_WRAP_WORD
);
1004 gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (textview_command
), FALSE
);
1006 hbuttonbox3
= gtk_hbutton_box_new ();
1007 gtk_widget_show (hbuttonbox3
);
1008 gtk_box_pack_start (GTK_BOX (vbox4
), hbuttonbox3
, FALSE
, TRUE
, 0);
1009 gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox3
), GTK_BUTTONBOX_SPREAD
);
1011 /* Store pointers to all widgets, for use by lookup_widget(). */
1012 GLADE_HOOKUP_OBJECT_NO_REF (page_shell
, page_shell
, "page_shell");
1013 GLADE_HOOKUP_OBJECT (page_shell
, vbox4
, "vbox4");
1014 GLADE_HOOKUP_OBJECT (page_shell
, hbox6
, "hbox6");
1015 GLADE_HOOKUP_OBJECT (page_shell
, label10
, "label10");
1016 GLADE_HOOKUP_OBJECT (page_shell
, entry_command
, "entry_command");
1017 GLADE_HOOKUP_OBJECT (page_shell
, button_command
, "button_command");
1018 GLADE_HOOKUP_OBJECT (page_shell
, alignment7
, "alignment7");
1019 GLADE_HOOKUP_OBJECT (page_shell
, hbox14
, "hbox14");
1020 GLADE_HOOKUP_OBJECT (page_shell
, image7
, "image7");
1021 GLADE_HOOKUP_OBJECT (page_shell
, label38
, "label38");
1022 GLADE_HOOKUP_OBJECT (page_shell
, button_command_clear
, "button_command_clear");
1023 GLADE_HOOKUP_OBJECT (page_shell
, alignment8
, "alignment8");
1024 GLADE_HOOKUP_OBJECT (page_shell
, hbox15
, "hbox15");
1025 GLADE_HOOKUP_OBJECT (page_shell
, image8
, "image8");
1026 GLADE_HOOKUP_OBJECT (page_shell
, label39
, "label39");
1027 GLADE_HOOKUP_OBJECT (page_shell
, scrolledwindow3
, "scrolledwindow3");
1028 GLADE_HOOKUP_OBJECT (page_shell
, textview_command
, "textview_command");
1029 GLADE_HOOKUP_OBJECT (page_shell
, hbuttonbox3
, "hbuttonbox3");
1031 gtk_widget_grab_default (button_command
);