コード例 #1
0
ファイル: gtkimagemenuitem.c プロジェクト: raja651/gtk
static void
gtk_image_menu_item_recalculate (GtkImageMenuItem *image_menu_item)
{
    GtkImageMenuItemPrivate    *priv = image_menu_item->priv;
    GtkStockItem             stock_item;
    GtkWidget               *image;
    const gchar             *resolved_label = priv->label;

    if (priv->use_stock && priv->label)
    {

        G_GNUC_BEGIN_IGNORE_DEPRECATIONS;

        if (!priv->image)
        {
            image = gtk_image_new_from_stock (priv->label, GTK_ICON_SIZE_MENU);
            gtk_image_menu_item_set_image (image_menu_item, image);
        }

        if (gtk_stock_lookup (priv->label, &stock_item))
            resolved_label = stock_item.label;

        gtk_menu_item_set_use_underline (GTK_MENU_ITEM (image_menu_item), TRUE);

        G_GNUC_END_IGNORE_DEPRECATIONS;
    }

    GTK_MENU_ITEM_CLASS
    (gtk_image_menu_item_parent_class)->set_label (GTK_MENU_ITEM (image_menu_item), resolved_label);

}
コード例 #2
0
void GtkMenuItem_::set_use_underline(Php::Parameters &parameters)
{
	gboolean setting = (gboolean)parameters[0];

	gtk_menu_item_set_use_underline (GTK_MENU_ITEM(instance), setting);

}
コード例 #3
0
extern "C" int addToGui(gpointer data)
{
	GtkWidget*	menu;
	char*		command;

	plugdata=(plugData*)data;
	currentClip=-1;
	setTextDomain(true,plugdata);

	menuPlug=gtk_menu_item_new_with_label(gettext("C_lipboard"));
	gtk_menu_item_set_use_underline((GtkMenuItem*)menuPlug,true);
	menu=gtk_menu_new();
	gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuPlug),menu);

	for(int j=0;j<MAXCLIPS;j++)
		{
			sinkInt=asprintf(&command,gettext("Clip Number. %i"),j+1);
			clip[j].menuItem=(GtkWidget*)gtk_menu_item_new_with_label(command);
			gtk_widget_set_name(clip[j].menuItem,command);
			free(command);
			clip[j].text=NULL;
			g_signal_connect(G_OBJECT(clip[j].menuItem),"activate",G_CALLBACK(theCallBack),(void*)(long)j);
			gtk_menu_shell_append(GTK_MENU_SHELL(menu),clip[j].menuItem);
		}

	gtk_menu_shell_append(GTK_MENU_SHELL(plugdata->mlist.menuBar),menuPlug);					

	mainClipboard=gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);
	clipid=g_signal_connect(G_OBJECT(mainClipboard),"owner-change",G_CALLBACK(clipChanged),plugdata);
	setTextDomain(false,plugdata);
	return(0);
}
コード例 #4
0
ファイル: gtk_MenuItem.cpp プロジェクト: Klaim/falcon
/*#
    @method set_use_underline GtkMenuItem
    @brief If true, an underline in the text indicates the next character should be used for the mnemonic accelerator key.
    @param setting TRUE if underlines in the text indicate mnemonics
 */
FALCON_FUNC MenuItem::set_use_underline( VMARG )
{
    Item* i_bool = vm->param( 0 );
#ifndef NO_PARAMETER_CHECK
    if ( !i_bool || i_bool->isNil() || !i_bool->isBoolean() )
        throw_inv_params( "B" );
#endif
    MYSELF;
    GET_OBJ( self );
    gtk_menu_item_set_use_underline( (GtkMenuItem*)_obj,
                                     i_bool->asBoolean() ? TRUE : FALSE );
}
コード例 #5
0
ファイル: testmenubutton.c プロジェクト: 3dfxmadscientist/gtk
int main (int argc, char **argv)
{
	GtkWidget *window;
	GtkWidget *button;
	GtkWidget *grid;
	GtkWidget *entry;
	GtkWidget *menu_widget;
	GtkAccelGroup *accel_group;
	guint i;
	GMenu *menu;

	gtk_init (&argc, &argv);

	window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
	gtk_window_resize (GTK_WINDOW (window), 400, 300);

	grid = gtk_grid_new ();
	gtk_container_add (GTK_CONTAINER (window), grid);

	accel_group = gtk_accel_group_new ();
	gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);

	/* Button next to entry */
	entry = gtk_entry_new ();
	gtk_grid_attach (GTK_GRID (grid),
			 entry,
			 0, 0,
			 1, 1);
	button = gtk_menu_button_new ();
	gtk_grid_attach (GTK_GRID (grid),
			 button,
			 1, 0,
			 1, 1);

	/* Button with GtkMenu */
	menu_widget = gtk_menu_new ();
	for (i = 5; i > 0; i--) {
		GtkWidget *item;

		if (i == 3) {
			item = gtk_menu_item_new_with_mnemonic ("_Copy");
		} else {
			char *label;

			label = g_strdup_printf ("Item _%d", i);
			item = gtk_menu_item_new_with_mnemonic (label);
			g_free (label);
		}
		gtk_menu_item_set_use_underline (GTK_MENU_ITEM (item), TRUE);
		gtk_menu_attach (GTK_MENU (menu_widget),
				 item,
				 0, 1,
				 i - 1, i);
	}
	gtk_widget_show_all (menu_widget);

	button = gtk_menu_button_new ();
	gtk_menu_button_set_popup (GTK_MENU_BUTTON (button), menu_widget);
	gtk_grid_attach (GTK_GRID (grid),
			 button,
			 1, 1,
			 1, 1);
	gtk_widget_show (create_prop_editor (G_OBJECT (button), 0));

	/* Button with GMenuModel */
	menu = g_menu_new ();
	for (i = 5; i > 0; i--) {
		char *label;
                GMenuItem *item;
		label = g_strdup_printf ("Item _%d", i);
                item = g_menu_item_new (label, NULL);
                if (i == 3)
                  g_menu_item_set_attribute (item, "icon", "s", "preferences-desktop-locale-symbolic");
		g_menu_insert_item (menu, i - 1, item);
                g_object_unref (item);
		g_free (label);
	}
	button = gtk_menu_button_new ();
	gtk_menu_button_set_menu_model (GTK_MENU_BUTTON (button), G_MENU_MODEL (menu));
	gtk_grid_attach (GTK_GRID (grid),
			 button,
			 1, 2,
			 1, 1);

	gtk_widget_show_all (window);

	gtk_main ();

	return 0;
}