本文整理汇总了C++中gtk_widget_ref函数的典型用法代码示例。如果您正苦于以下问题:C++ gtk_widget_ref函数的具体用法?C++ gtk_widget_ref怎么用?C++ gtk_widget_ref使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了gtk_widget_ref函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: gw_status_bar_create
GtkWidget * gw_status_bar_create ( GtkWindow *w)
{
GtkWidget *gw_status_bar_box;
GtkWidget *hbox;
GtkWidget *status_bar1;
GtkWidget *status_bar2;
#ifdef GW_DEBUG_GUI_COMPONENT
g_print ( "*** GW - %s (%d) :: %s()\n", __FILE__, __LINE__, __PRETTY_FUNCTION__);
#endif
gw_status_bar_box = gtk_viewport_new ( NULL, NULL);
gtk_viewport_set_shadow_type ( GTK_VIEWPORT ( gw_status_bar_box), GTK_SHADOW_NONE);
hbox = gtk_hbox_new ( FALSE, 0);
gtk_container_add ( GTK_CONTAINER ( gw_status_bar_box), hbox);
/* First status bar */
status_bar1 = gtk_statusbar_new ( );
gtk_widget_ref ( status_bar1);
gtk_object_set_data_full ( GTK_OBJECT ( w), GW_REF_STATUS_BAR_FIRST_STATUS, status_bar1, (GtkDestroyNotify) gtk_widget_unref);
gtk_box_pack_start ( GTK_BOX ( hbox), status_bar1, FALSE, FALSE, 0);
gtk_widget_set_usize ( status_bar1, 500, -2);
/* Second status bar */
status_bar2 = gtk_statusbar_new ( );
gtk_widget_ref ( status_bar2);
gtk_object_set_data_full ( GTK_OBJECT ( w), GW_REF_STATUS_BAR_SECOND_STATUS, status_bar2, (GtkDestroyNotify) gtk_widget_unref);
gtk_box_pack_start ( GTK_BOX ( hbox), status_bar2, TRUE, TRUE, 0);
return gw_status_bar_box;
}
开发者ID:dvst,项目名称:gwhere-catalog,代码行数:33,代码来源:gwstatusbar.c
示例2: StartProgress
void StartProgress(char *message, int canstop)
{
GtkWidget *label;
GtkWidget *table;
GtkWidget *window;
GtkAdjustment *adj;
GtkWidget *sbut;
GtkWidget *hseparator2;
pdata= g_malloc (sizeof (typProgressData));
pdata->nLastPct= -1;
pdata->bProgressUp=TRUE;
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
pdata->window=window;
gtk_signal_connect(GTK_OBJECT (window), "delete_event",
GTK_SIGNAL_FUNC ((gint)CanWindowClose), pdata);
gtk_container_border_width(GTK_CONTAINER (window),10);
table=gtk_table_new(4,2,TRUE);
gtk_container_add(GTK_CONTAINER(window),table);
label=gtk_label_new(message);
gtk_table_attach_defaults (GTK_TABLE(table),label,0,2,0,1);
gtk_widget_show(label);
adj= (GtkAdjustment *) gtk_adjustment_new (0,0,400,0,0,0);
pdata->progressbar= gtk_progress_bar_new_with_adjustment(adj);
gtk_table_attach_defaults(GTK_TABLE(table),pdata->progressbar,0,2,1,2);
gtk_widget_show(pdata->progressbar);
if(canstop==TRUE) {
hseparator2 = gtk_hseparator_new ();
gtk_widget_ref (hseparator2);
gtk_object_set_data_full (GTK_OBJECT (window), "hseparator2", hseparator2,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (hseparator2);
gtk_table_attach (GTK_TABLE (table), hseparator2, 0, 2, 2, 3,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_FILL), 0, 0);
sbut = gtk_button_new_with_label (("stop me...!"));
gtk_widget_ref (sbut);
gtk_object_set_data_full (GTK_OBJECT (window), "sbut", sbut,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (sbut);
gtk_table_attach (GTK_TABLE (table), sbut, 0, 2, 3, 4,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_FILL), 0, 0);
gtk_signal_connect (GTK_OBJECT (sbut), "clicked",GTK_SIGNAL_FUNC (stop_process),NULL);
}
gtk_window_set_position(GTK_WINDOW(window),GTK_WIN_POS_CENTER);
gtk_widget_show(table);
gtk_grab_add (window);
gtk_widget_show(window);
}
开发者ID:bion,项目名称:ats,代码行数:59,代码来源:progress.c
示例3: gtk_dialog_new_with_buttons
static GtkWidget *create_dlg_about(GtkWindow * parent)
{
GtkWidget *dialog;
GtkWidget *vbox;
GtkWidget *title_label;
GtkWidget *body_label;
/*
* Create outer window.
*/
dialog = gtk_dialog_new_with_buttons(dlg_title, parent, 0,
GTK_STOCK_CLOSE,
GTK_RESPONSE_CLOSE, NULL);
g_object_set_data(G_OBJECT(dialog), "dlg_about", dialog);
/*
* Get vertical box packing widget.
*/
vbox = GTK_DIALOG(dialog)->vbox;
g_object_set_data(G_OBJECT(dialog), "vbox", vbox);
gtk_container_set_border_width(GTK_CONTAINER(vbox), 10);
gtk_widget_show(vbox);
/*
* Make title label
*/
title_label = gtk_label_new(dlg_header);
gtk_widget_ref(title_label);
g_object_set_data_full(G_OBJECT(dialog), "title_label",
title_label,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show(title_label);
gtk_box_pack_start(GTK_BOX(vbox), title_label, FALSE, FALSE, 0);
/*
* Make body label
*/
body_label = gtk_label_new(dlg_content);
gtk_widget_ref(body_label);
g_object_set_data_full(G_OBJECT(dialog), "body_label", body_label,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show(body_label);
gtk_box_pack_start(GTK_BOX(vbox), body_label, FALSE, FALSE, 0);
gtk_label_set_justify(GTK_LABEL(body_label), GTK_JUSTIFY_LEFT);
/*
* Set up callbacks
*/
g_signal_connect(dialog, "delete_event",
GTK_SIGNAL_FUNC(gtk_widget_destroy), NULL);
g_signal_connect(dialog, "response",
GTK_SIGNAL_FUNC(gtk_widget_destroy), NULL);
/*
* Done!
*/
return dialog;
}
开发者ID:ralight,项目名称:ggz,代码行数:58,代码来源:dlg_about.c
示例4: create_window1
GtkWidget*
create_window1 (void)
{
GtkWidget *window1;
GtkWidget *table1;
GtkWidget *label1;
GtkWidget *quit;
GtkWidget *entry1;
window1 = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_object_set_data (GTK_OBJECT (window1), "window1", window1);
gtk_window_set_title (GTK_WINDOW (window1), _("window1"));
table1 = gtk_table_new (6, 3, 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);
label1 = gtk_label_new (_("label1"));
gtk_widget_ref (label1);
gtk_object_set_data_full (GTK_OBJECT (window1), "label1", label1,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (label1);
gtk_table_attach (GTK_TABLE (table1), label1, 2, 3, 0, 1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
quit = gtk_button_new_with_label (_("button1"));
gtk_widget_ref (quit);
gtk_object_set_data_full (GTK_OBJECT (window1), "quit", quit,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (quit);
gtk_table_attach (GTK_TABLE (table1), quit, 2, 3, 2, 3,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_FILL), 0, 0);
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 (table1), entry1, 2, 3, 1, 2,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
gtk_signal_connect (GTK_OBJECT (window1), "delete_event",
GTK_SIGNAL_FUNC (on_window1_delete_event),
NULL);
gtk_signal_connect (GTK_OBJECT (quit), "clicked",
GTK_SIGNAL_FUNC (on_button1_clicked),
NULL);
return window1;
}
开发者ID:polyactis,项目名称:test,代码行数:56,代码来源:interface.c
示例5: gw_menu_options_create
GtkWidget * gw_menu_options_create ( GtkWindow *w, GtkAccelGroup *ag, GtkWidget *parent)
{
GtkWidget *gw_menu_options_header = NULL;
GtkWidget *menu_options = NULL;
GtkWidget *gw_menu_options_settings = NULL;
GtkAccelGroup *gw_menu_options_ag = NULL;
guint tmp_key;
gchar *text_utf8 = NULL;
#ifdef GW_DEBUG_GUI_COMPONENT
g_print ( "*** GW - %s (%d) :: %s()\n", __FILE__, __LINE__, __PRETTY_FUNCTION__);
#endif
if ( w != NULL )
{
/* Menu action header */
gw_menu_options_header = gtk_menu_item_new_with_label ( "");
g_strdup_to_gtk_text ( _( "_Options"), text_utf8);
tmp_key = gtk_label_parse_uline ( GTK_LABEL ( GTK_BIN ( gw_menu_options_header)->child), text_utf8);
g_free ( text_utf8);
#if defined ( HAVE_GTK12)
gtk_widget_add_accelerator ( gw_menu_options_header, "activate-item", ag, tmp_key, GDK_MOD1_MASK, 0);
#endif
gtk_widget_ref ( gw_menu_options_header);
gtk_object_set_data_full ( GTK_OBJECT ( w), GW_REF_MENU_BAR_OPTIONS_MENU_HEADER, gw_menu_options_header, (GtkDestroyNotify) gtk_widget_unref);
menu_options = gtk_menu_new ( );
gtk_widget_ref ( menu_options);
gtk_object_set_data_full ( GTK_OBJECT ( w), GW_REF_MENU_BAR_OPTIONS_MENU, menu_options, (GtkDestroyNotify) gtk_widget_unref);
gtk_menu_item_set_submenu ( GTK_MENU_ITEM ( gw_menu_options_header), menu_options);
#if defined ( HAVE_GTK12)
gw_menu_options_ag = gtk_menu_ensure_uline_accel_group ( GTK_MENU ( menu_options));
#else
gw_menu_options_ag = gtk_accel_group_new ( );
#endif
/* Menu action -> edit categories */
gw_menu_options_settings = gtk_menu_item_new_with_label ( "");
g_strdup_to_gtk_text ( _( "Se_ttings"), text_utf8);
tmp_key = gtk_label_parse_uline ( GTK_LABEL ( GTK_BIN ( gw_menu_options_settings)->child), text_utf8);
g_free ( text_utf8);
#if defined ( HAVE_GTK12)
gtk_widget_add_accelerator ( gw_menu_options_settings, "activate-item", gw_menu_options_ag, tmp_key, 0, 0);
#endif
gtk_widget_ref ( gw_menu_options_settings);
gtk_object_set_data_full ( GTK_OBJECT ( w), GW_REF_MENU_BAR_OPTIONS_MENU_SETTINGS, gw_menu_options_settings, (GtkDestroyNotify) gtk_widget_unref);
gtk_container_add ( GTK_CONTAINER ( menu_options), gw_menu_options_settings);
gtk_widget_add_accelerator ( gw_menu_options_settings, "activate", ag, GDK_t, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
gtk_signal_connect ( GTK_OBJECT ( gw_menu_options_settings), "activate", GTK_SIGNAL_FUNC ( gw_menu_options_settings_click), w);
}
return gw_menu_options_header;
}
开发者ID:Jeoxs,项目名称:gwhere-catalog,代码行数:54,代码来源:gwmenuoptions.c
示例6: dialogAllianceCreate
GtkWidget* dialogAllianceCreate (void) {
GtkWidget *dialogAlliance;
GtkWidget *vbox1;
GtkWidget *hbox1;
GtkWidget *button1;
GtkWidget *button2;
dialogAlliance = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_object_set_data (GTK_OBJECT (dialogAlliance), "dialogAlliance", dialogAlliance);
gtk_container_set_border_width (GTK_CONTAINER (dialogAlliance), 15);
gtk_window_set_title (GTK_WINDOW (dialogAlliance), "Alliance Request");
vbox1 = gtk_vbox_new (FALSE, 0);
gtk_widget_ref (vbox1);
gtk_object_set_data_full (GTK_OBJECT (dialogAlliance), "vbox1", vbox1,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (vbox1);
gtk_container_add (GTK_CONTAINER (dialogAlliance), vbox1);
label1 = gtk_label_new ("%s requests alliance. Accept?\n");
gtk_widget_ref (label1);
gtk_object_set_data_full (GTK_OBJECT (dialogAlliance), "label1", label1,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (label1);
gtk_box_pack_start (GTK_BOX (vbox1), label1, FALSE, FALSE, 0);
hbox1 = gtk_hbox_new (FALSE, 0);
gtk_widget_ref (hbox1);
gtk_object_set_data_full (GTK_OBJECT (dialogAlliance), "hbox1", hbox1,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (hbox1);
gtk_box_pack_start (GTK_BOX (vbox1), hbox1, TRUE, TRUE, 0);
button1 = gtk_button_new_with_label ("Accept");
gtk_widget_ref (button1);
gtk_object_set_data_full (GTK_OBJECT (dialogAlliance), "button1", button1,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (button1);
gtk_box_pack_start (GTK_BOX (hbox1), button1, TRUE, TRUE, 0);
GTK_WIDGET_UNSET_FLAGS (button1, GTK_CAN_FOCUS);
button2 = gtk_button_new_with_label ("Reject");
gtk_widget_ref (button2);
gtk_object_set_data_full (GTK_OBJECT (dialogAlliance), "button2", button2,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (button2);
gtk_box_pack_start (GTK_BOX (hbox1), button2, TRUE, TRUE, 0);
gtk_signal_connect(GTK_OBJECT(button1), "clicked", GTK_SIGNAL_FUNC(dialogAllianceAccept), 0);
gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(dialogAllianceReject), 0);
dialogAllianceUs = dialogAlliance;
return dialogAlliance;
}
开发者ID:1taplay,项目名称:winbolo,代码行数:54,代码来源:dialogalliance.c
示例7: gw_menu_help_create
GtkWidget * gw_menu_help_create ( GtkWindow *w, GtkAccelGroup *ag, GtkWidget *parent)
{
GtkWidget *gw_menu_help_header = NULL;
GtkWidget *menu_help = NULL;
GtkWidget *gw_menu_help_about = NULL;
GtkAccelGroup *gw_menu_help_ag = NULL;
guint tmp_key;
gchar *text_utf8 = NULL;
#ifdef GW_DEBUG_GUI_COMPONENT
g_print ( "*** GW - %s (%d) :: %s()\n", __FILE__, __LINE__, __PRETTY_FUNCTION__);
#endif
/* Menu help header */
gw_menu_help_header = gtk_menu_item_new_with_label ( "");
g_strdup_to_gtk_text ( _( "_Help"), text_utf8);
tmp_key = gtk_label_parse_uline ( GTK_LABEL ( GTK_BIN ( gw_menu_help_header)->child), text_utf8);
g_free ( text_utf8);
#if defined ( HAVE_GTK12)
gtk_widget_add_accelerator ( gw_menu_help_header, "activate-item", ag, tmp_key, GDK_MOD1_MASK, 0);
#endif
gtk_widget_ref ( gw_menu_help_header);
gtk_object_set_data_full ( GTK_OBJECT ( w), GW_REF_MENU_BAR_HELP_MENU_HEADER, gw_menu_help_header, (GtkDestroyNotify) gtk_widget_unref);
menu_help = gtk_menu_new ( );
gtk_widget_ref ( menu_help);
gtk_object_set_data_full ( GTK_OBJECT ( w), GW_REF_MENU_BAR_HELP_MENU, menu_help, (GtkDestroyNotify) gtk_widget_unref);
gtk_menu_item_set_submenu ( GTK_MENU_ITEM ( gw_menu_help_header), menu_help);
#if defined ( HAVE_GTK12)
gw_menu_help_ag = gtk_menu_ensure_uline_accel_group ( GTK_MENU ( menu_help));
#else
gw_menu_help_ag = gtk_accel_group_new ( );
#endif
/* Menu help -> about */
gw_menu_help_about = gtk_menu_item_new_with_label ( "");
g_strdup_to_gtk_text ( _( "A_bout"), text_utf8);
tmp_key = gtk_label_parse_uline ( GTK_LABEL ( GTK_BIN ( gw_menu_help_about)->child), text_utf8);
g_free ( text_utf8);
#if defined ( HAVE_GTK12)
gtk_widget_add_accelerator ( gw_menu_help_about, "activate-item", gw_menu_help_ag, tmp_key, 0, 0);
#endif
gtk_widget_ref ( gw_menu_help_about);
gtk_object_set_data_full ( GTK_OBJECT ( w), GW_REF_MENU_BAR_HELP_MENU_ABOUT, gw_menu_help_about, (GtkDestroyNotify) gtk_widget_unref);
gtk_container_add ( GTK_CONTAINER ( menu_help), gw_menu_help_about);
gtk_widget_add_accelerator ( gw_menu_help_about, "activate", ag, GDK_b, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
gtk_signal_connect ( GTK_OBJECT ( gw_menu_help_about), "activate", GTK_SIGNAL_FUNC ( gw_menu_help_about_click), w);
return gw_menu_help_header;
}
开发者ID:Jeoxs,项目名称:gwhere-catalog,代码行数:52,代码来源:gwmenuhelp.c
示例8: tree_select
void tree_select( GtkTree *tree, xmlNode *action)
{
int i = 0;
if ( strcmp (action->name, "action") != 0) {
gtk_widget_destroy(table[cur_pid].page.text1);
table[cur_pid].page.text1 = gtk_html_new ();
gtk_widget_set_name (table[cur_pid].page.text1, "text1");
gtk_widget_ref (table[cur_pid].page.text1);
gtk_object_set_data_full (GTK_OBJECT (Peos), "text1", table[cur_pid].page.text1,
(GtkDestroyNotify) gtk_widget_unref);
gtk_widget_show (table[cur_pid].page.text1);
gtk_container_add (GTK_CONTAINER (table[cur_pid].page.scrollwindow2), table[cur_pid].page.text1);
deactivate();
}
else {
table[cur_pid].page.curr = action;
/* set index to save position when destroyed */
if (table[cur_pid].process != NULL ) {
if(process_count > 0) while(linklist[cur_pid][i].cur != table[cur_pid].page.curr && i <= counting_action) i++;
table[cur_pid].page.index = i;
draw_text(action);
check_state();
}
}
}
开发者ID:jimiszm,项目名称:peos,代码行数:27,代码来源:tree.c
示例9: gtk_widget_ref
wxNotebookPage *wxNotebook::DoRemovePage( size_t page )
{
if ( m_selection != wxNOT_FOUND && (size_t)m_selection >= page )
{
// the index will become invalid after the page is deleted
m_selection = wxNOT_FOUND;
}
wxNotebookPage *client = wxNotebookBase::DoRemovePage(page);
if ( !client )
return NULL;
gtk_widget_ref( client->m_widget );
gtk_widget_unrealize( client->m_widget );
gtk_widget_unparent( client->m_widget );
// gtk_notebook_remove_page() sends "switch_page" signal with some strange
// new page index (when deleting selected page 0, new page is 1 although,
// clearly, the selection should stay 0), so suppress this
gtk_signal_disconnect_by_func( GTK_OBJECT(m_widget),
GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer) this );
gtk_notebook_remove_page( GTK_NOTEBOOK(m_widget), page );
gtk_signal_connect( GTK_OBJECT(m_widget), "switch_page",
GTK_SIGNAL_FUNC(gtk_notebook_page_change_callback), (gpointer)this );
wxGtkNotebookPage* p = GetNotebookPage(page);
m_pagesData.DeleteObject(p);
delete p;
return client;
}
开发者ID:beanhome,项目名称:dev,代码行数:33,代码来源:notebook.cpp
示例10: view_new
GtkWidget*
view_new (Scene *scene, GLDrawingArea *context)
{
View *view = VIEW (g_object_new (view_get_type (), NULL));
GtkWidget *box, *window;
view->xml = glade_xml_new (GLADEDIR "/view.glade", NULL, NULL);
if (!view->xml)
return NULL;
box = glade_xml_get_widget (view->xml, "view vbox");
window = glade_xml_get_widget (view->xml, "window");
gtk_widget_ref (box);
gtk_container_remove (GTK_CONTAINER (window), box);
gtk_box_pack_start (GTK_BOX (view), GTK_WIDGET (box), TRUE, TRUE, 0);
gtk_widget_unref (box);
gtk_box_pack_start (GTK_BOX (box), GTK_WIDGET (context), TRUE, TRUE, 0);
gtk_box_reorder_child (GTK_BOX (box), GTK_WIDGET (context), 0);
if (scene == NULL)
scene = scene_new ();
view->scene = scene;
view->context = context;
g_signal_connect_after (G_OBJECT (context), "realize", G_CALLBACK (on_gl_context_realize), (gpointer) view);
return GTK_WIDGET (view);
}
开发者ID:mvanderkolff,项目名称:navi-misc,代码行数:30,代码来源:view.c
示例11: GetPage
wxNotebookPage *wxNotebook::DoRemovePage( size_t page )
{
// We cannot remove the page yet, as GTK sends the "switch_page"
// signal before it has removed the notebook-page from its
// corresponding list. Thus, if we were to remove the page from
// m_pages at this point, the two lists of pages would be out
// of sync during the PAGE_CHANGING/PAGE_CHANGED events.
wxNotebookPage *client = GetPage(page);
if ( !client )
return NULL;
gtk_widget_ref( client->m_widget );
gtk_widget_unrealize( client->m_widget );
// we don't need to unparent the client->m_widget; GTK+ will do
// that for us (and will throw a warning if we do it!)
gtk_notebook_remove_page( GTK_NOTEBOOK(m_widget), page );
// It's safe to remove the page now.
wxASSERT_MSG(GetPage(page) == client, wxT("pages changed during delete"));
wxNotebookBase::DoRemovePage(page);
wxGtkNotebookPage* p = GetNotebookPage(page);
m_pagesData.DeleteObject(p);
delete p;
return client;
}
开发者ID:EdgarTx,项目名称:wx,代码行数:28,代码来源:notebook.cpp
示例12: create_ui_context_menu
void
create_ui_context_menu(GtkWidget *parent_window)
{
ui_context_menu = gtk_menu_new();
gtk_widget_ref (ui_context_menu);
gtk_object_set_data_full (GTK_OBJECT (parent_window), "ui_context_menu", ui_context_menu,
(GtkDestroyNotify) gtk_widget_unref);
ui_context_menu_launch = gtk_menu_item_new_with_label ("Launch UI");
gtk_widget_show (ui_context_menu_launch);
gtk_menu_append (GTK_MENU (ui_context_menu), ui_context_menu_launch);
ui_context_menu_show = gtk_menu_item_new_with_label ("Show UI");
gtk_widget_show (ui_context_menu_show);
gtk_menu_append (GTK_MENU (ui_context_menu), ui_context_menu_show);
ui_context_menu_hide = gtk_menu_item_new_with_label ("Hide UI");
gtk_widget_show (ui_context_menu_hide);
gtk_menu_append (GTK_MENU (ui_context_menu), ui_context_menu_hide);
ui_context_menu_exit = gtk_menu_item_new_with_label ("Exit UI");
gtk_widget_show (ui_context_menu_exit);
gtk_menu_append (GTK_MENU (ui_context_menu), ui_context_menu_exit);
gtk_signal_connect (GTK_OBJECT (ui_context_menu_launch), "activate",
GTK_SIGNAL_FUNC (on_ui_context_menu_activate),
(gpointer)0);
gtk_signal_connect (GTK_OBJECT (ui_context_menu_show), "activate",
GTK_SIGNAL_FUNC (on_ui_context_menu_activate),
(gpointer)1);
gtk_signal_connect (GTK_OBJECT (ui_context_menu_hide), "activate",
GTK_SIGNAL_FUNC (on_ui_context_menu_activate),
(gpointer)2);
gtk_signal_connect (GTK_OBJECT (ui_context_menu_exit), "activate",
GTK_SIGNAL_FUNC (on_ui_context_menu_activate),
(gpointer)3);
}
开发者ID:smbolton,项目名称:ghostess,代码行数:33,代码来源:gui_interface.c
示例13: debug_print
static MimeViewer *mathml_viewer_create(void)
{
MathMLViewer *viewer;
debug_print("mathml_viewer_create\n");
viewer = g_new0(MathMLViewer, 1);
viewer->mimeviewer.factory = &mathml_viewer_factory;
viewer->mimeviewer.get_widget = mathml_get_widget;
viewer->mimeviewer.show_mimepart = mathml_show_mimepart;
viewer->mimeviewer.clear_viewer = mathml_clear_viewer;
viewer->mimeviewer.destroy_viewer = mathml_destroy_viewer;
viewer->scrollwin = GTK_SCROLLED_WINDOW(gtk_scrolled_window_new(NULL, NULL));
gtk_widget_show(GTK_WIDGET(viewer->scrollwin));
gtk_widget_ref(GTK_WIDGET(viewer->scrollwin));
gtk_scrolled_window_set_policy(viewer->scrollwin, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
viewer->mathview = GTK_MATH_VIEW(gtk_math_view_new(NULL, NULL));
gtk_widget_show(GTK_WIDGET(viewer->mathview));
viewer->filename = NULL;
gtk_container_add(GTK_CONTAINER(viewer->scrollwin), GTK_WIDGET(viewer->mathview));
return (MimeViewer *) viewer;
}
开发者ID:moreorless,项目名称:claws-mail,代码行数:26,代码来源:mathml_viewer.c
示例14: defaults_show
void
defaults_show(ObjectType *objtype)
{
GtkWidget *defaults;
if ((objtype != NULL) && (objtype->ops->get_defaults != NULL)) {
defaults = objtype->ops->get_defaults();
} else {
defaults = NULL;
}
if (dialog == NULL)
create_dialog();
if ((objtype==NULL) || (defaults == NULL)) {
/* No defaults or no object */
defaults = no_defaults_dialog;
objtype = NULL;
}
if (object_part != NULL) {
gtk_widget_ref(object_part);
gtk_container_remove(GTK_CONTAINER(dialog_vbox), object_part);
gtk_widget_unparent(object_part);
object_part = NULL;
}
gtk_signal_connect (GTK_OBJECT (defaults), "destroy",
GTK_SIGNAL_FUNC(defaults_dialog_destroyed), NULL);
gtk_box_pack_start(GTK_BOX(dialog_vbox), defaults, TRUE, TRUE, 0);
gtk_widget_show (defaults);
gtk_widget_show (dialog);
object_part = defaults;
current_objtype = objtype;
}
开发者ID:TVilaboa,项目名称:Proyecto-Parser-C,代码行数:34,代码来源:defaults.c
示例15: dialog_build_children
static void
dialog_build_children(GladeXML *self, GtkWidget *w,
GladeWidgetInfo *info)
{
MateDialog *dialog = MATE_DIALOG (w);
GtkWidget *aa;
GList *children, *list;
char *label;
glade_standard_build_children (self, w, info);
aa = dialog->action_area;
if (!aa)
return;
children = gtk_container_get_children (GTK_CONTAINER (aa));
for (list = children; list; list = list->next) {
gtk_widget_ref (GTK_WIDGET (list->data));
gtk_container_remove (GTK_CONTAINER (aa), GTK_WIDGET (list->data));
}
for (list = children; list; list = list->next) {
g_object_get (G_OBJECT (list->data), "label", &label, NULL);
if (label) {
mate_dialog_append_button (dialog, label);
g_free (label);
}
}
g_list_foreach (children, (GFunc)gtk_widget_unref, NULL);
g_list_free (children);
}
开发者ID:TheCoffeMaker,项目名称:Mate-Desktop-Environment,代码行数:33,代码来源:glade-mate.c
示例16: create_gnomeprint_session
gint create_gnomeprint_session(void)
{
GnomePrintJob *job = NULL;
static GnomePrintConfig *gpc = NULL;
GtkWidget *dialog, *preview;
gint res, page_num = 0;
GtkWidget *notebook, *page;
if (gpc == NULL)
gpc = gnome_print_config_default();
job = gnome_print_job_new(gpc);
if (job == NULL)
return -1;
dialog = gnome_print_dialog_new(job, (guchar *)_("Print"), 0);
notebook = gtk_container_get_children(
GTK_CONTAINER(GTK_DIALOG(dialog)->vbox))->data;
gtk_widget_hide(notebook);
if (!GTK_WIDGET_VISIBLE(gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), page_num)))
page_num++;
page = gtk_widget_ref(
gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), page_num));
gtk_notebook_remove_page(GTK_NOTEBOOK(notebook), page_num);
gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),
page, FALSE, FALSE, 0);
gtk_widget_set_size_request(
gtk_container_get_children(GTK_CONTAINER(page))->data, -1, 240);
gtk_window_set_transient_for(GTK_WINDOW(dialog),
GTK_WINDOW(pub->mw->window));
do {
res = gtk_dialog_run(GTK_DIALOG(dialog));
gnome_print_config_unref(gpc);
gpc = gnome_print_dialog_get_config(GNOME_PRINT_DIALOG(dialog));
switch (res) {
case GNOME_PRINT_DIALOG_RESPONSE_PRINT:
g_object_unref(job);
job = create_job(gpc);
gnome_print_job_print(job);
break;
case GNOME_PRINT_DIALOG_RESPONSE_PREVIEW:
g_object_unref(job);
job = create_job(gpc);
preview = gnome_print_job_preview_new(job,
(guchar *)_("Print Preview"));
// gtk_window_set_transient_for(GTK_WINDOW(preview), GTK_WINDOW(dialog));
gtk_window_set_modal(GTK_WINDOW(preview), TRUE);
gtk_widget_show(preview);
g_signal_connect(G_OBJECT(preview), "destroy",
G_CALLBACK(gtk_main_quit), NULL);
gtk_main();
break;
}
} while (res == GNOME_PRINT_DIALOG_RESPONSE_PREVIEW);
gtk_widget_destroy(dialog);
g_object_unref(job);
return res;
}
开发者ID:viviparous,项目名称:leafpad,代码行数:60,代码来源:gnomeprint.c
示例17: gtk_accel_group_new
void wxMenu::Init()
{
m_accel = gtk_accel_group_new();
m_menu = gtk_menu_new();
// NB: keep reference to the menu so that it is not destroyed behind
// our back by GTK+ e.g. when it is removed from menubar:
gtk_widget_ref(m_menu);
m_owner = NULL;
// Tearoffs are entries, just like separators. So if we want this
// menu to be a tear-off one, we just append a tearoff entry
// immediately.
if ( m_style & wxMENU_TEAROFF )
{
GtkWidget *tearoff = gtk_tearoff_menu_item_new();
gtk_menu_append(GTK_MENU(m_menu), tearoff);
}
m_prevRadio = NULL;
// append the title as the very first entry if we have it
if ( !m_title.empty() )
{
Append(wxGTK_TITLE_ID, m_title);
AppendSeparator();
}
}
开发者ID:beanhome,项目名称:dev,代码行数:29,代码来源:menu.cpp
示例18: wxASSERT_MSG
void wxFrame::DetachMenuBar()
{
wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") );
wxASSERT_MSG( (m_wxwindow != NULL), wxT("invalid frame") );
if ( m_frameMenuBar )
{
m_frameMenuBar->Attach( this );
if (m_frameMenuBar->GetWindowStyle() & wxMB_DOCKABLE)
{
gtk_signal_disconnect_by_func( GTK_OBJECT(m_frameMenuBar->m_widget),
GTK_SIGNAL_FUNC(gtk_menu_attached_callback), (gpointer)this );
gtk_signal_disconnect_by_func( GTK_OBJECT(m_frameMenuBar->m_widget),
GTK_SIGNAL_FUNC(gtk_menu_detached_callback), (gpointer)this );
}
gtk_widget_ref( m_frameMenuBar->m_widget );
gtk_container_remove( GTK_CONTAINER(m_mainWidget), m_frameMenuBar->m_widget );
}
wxFrameBase::DetachMenuBar();
}
开发者ID:3v1n0,项目名称:wxWidgets,代码行数:25,代码来源:frame.cpp
示例19: bst_choice_menu_createv
GtkWidget*
bst_choice_menu_createv (const gchar *menu_path,
BstChoice *first_choice,
...)
{
BstChoice *choice;
GtkWidget *menu;
va_list args;
va_start (args, first_choice);
menu = g_object_connect (gtk_widget_new (GTK_TYPE_MENU,
NULL),
"signal::selection-done", check_modal_quit, NULL,
NULL);
gtk_menu_set_accel_path (GTK_MENU (menu), menu_path);
gtk_widget_ref (menu);
gtk_object_sink (GTK_OBJECT (menu));
choice = first_choice;
while (choice)
{
bst_choice_menu_add_choice_and_free (menu, choice);
choice = va_arg (args, BstChoice*);
}
va_end (args);
return menu;
}
开发者ID:whitelynx,项目名称:beast,代码行数:30,代码来源:bstmenus.c
示例20: strcat
GtkObject *create_adj(GtkWidget *window, GtkWidget *table, float min, float max, float value,
int p1, int p2, int p3, int p4, char *ID)
{
GtkObject *adj;
GtkWidget *spin;
char *str;
int flag;
str=(char*)malloc(32*sizeof(char));
*str=0;
strcat(str, "spin");
strcat(str, ID);
flag=atoi(ID);
adj = gtk_adjustment_new(value, min, max, 1. ,10., 10.);
spin = gtk_spin_button_new(GTK_ADJUSTMENT (adj), 1, 0);
gtk_widget_ref (spin);
g_object_set_data_full (G_OBJECT (window), "spin", spin,
(GDestroyNotify) gtk_widget_unref);
gtk_widget_show (spin);
gtk_table_attach (GTK_TABLE (table), spin, p1, p2, p3, p4,
(GtkAttachOptions) (0),
(GtkAttachOptions) (0), 0, 0);
gtk_widget_set_size_request (spin, 75, 22);
gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spin), TRUE);
g_signal_connect (G_OBJECT (adj) ,"value_changed", G_CALLBACK(get_values),GINT_TO_POINTER(flag));
free(str);
return(adj);
}
开发者ID:bion,项目名称:ats,代码行数:33,代码来源:sel.c
注:本文中的gtk_widget_ref函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论