Commit 7aaaa046 authored by Rodney Dawes's avatar Rodney Dawes Committed by Rodney Dawes

Grab the accessible AtkObject and set up the name and description for the

2006-11-01  Rodney Dawes  <dobey@novell.com>

	* libslab/document-tile.c (document_tile_new):
	Grab the accessible AtkObject and set up the name and description for
	the tile to use the basename and time_str

	* main-menu/src/file-area-widget.c (file_area_widget_new):
	Set up the mnemonic for the Show: label in the main menu
	Create the browser_link button with a mnemonic with a NULL label
	(update_browser_link): Set mnemonics for the All Documents/Apps text

	* main-menu/src/hard-drive-status-tile.c (hard_drive_status_tile_new):
	Set up the accessible name for the hard drive status tile
	Set up a mnemonic for the hard drive status tile
	(update_tile): Set up the accessible description for the status tile

	* main-menu/src/main-menu-ui.c (create_search_widget):
	Set a mnemonic in the Search label and hook it up to the entry
	(get_section_header_label): Enable mnemonic label text on the label

	* main-menu/src/network-status-tile.c (update_tile):
	Get the AtkObject for the widget and set up the name and description
	Set up a mnemonic for the status tile

	* main-menu/src/system-tile.c (system_tile_new_with_type):
	Reduce the create_header calls into one, and just set the text for
	the tile in the switch statement
	Set up mnemonics for the system tiles
	Set up accessible names for all the system tiles
	Always duplicate/free the uri, image_id, and header_txt strings
	Duplicate the image_id into the private structure
	(system_tile_finalize): Free the duplicate image_id
	Unref the desktop_item object
	(create_header): Enable mnemonic underlines in the label
parent 92c9962b
2006-11-01 Rodney Dawes <dobey@novell.com>
* libslab/document-tile.c (document_tile_new):
Grab the accessible AtkObject and set up the name and description for
the tile to use the basename and time_str
* main-menu/src/file-area-widget.c (file_area_widget_new):
Set up the mnemonic for the Show: label in the main menu
Create the browser_link button with a mnemonic with a NULL label
(update_browser_link): Set mnemonics for the All Documents/Apps text
* main-menu/src/hard-drive-status-tile.c (hard_drive_status_tile_new):
Set up the accessible name for the hard drive status tile
Set up a mnemonic for the hard drive status tile
(update_tile): Set up the accessible description for the status tile
* main-menu/src/main-menu-ui.c (create_search_widget):
Set a mnemonic in the Search label and hook it up to the entry
(get_section_header_label): Enable mnemonic label text on the label
* main-menu/src/network-status-tile.c (update_tile):
Get the AtkObject for the widget and set up the name and description
Set up a mnemonic for the status tile
* main-menu/src/system-tile.c (system_tile_new_with_type):
Reduce the create_header calls into one, and just set the text for
the tile in the switch statement
Set up mnemonics for the system tiles
Set up accessible names for all the system tiles
Always duplicate/free the uri, image_id, and header_txt strings
Duplicate the image_id into the private structure
(system_tile_finalize): Free the duplicate image_id
Unref the desktop_item object
(create_header): Enable mnemonic underlines in the label
2006-11-01 Rodrigo Moya <rodrigo@novell.com> 2006-11-01 Rodrigo Moya <rodrigo@novell.com>
* util/*: * util/*:
......
...@@ -122,6 +122,8 @@ document_tile_new (const gchar *in_uri, const gchar *mime_type, time_t modified) ...@@ -122,6 +122,8 @@ document_tile_new (const gchar *in_uri, const gchar *mime_type, time_t modified)
gchar *markup; gchar *markup;
AtkObject *accessible;
uri = g_strdup (in_uri); uri = g_strdup (in_uri);
image = gtk_image_new (); image = gtk_image_new ();
...@@ -141,7 +143,6 @@ document_tile_new (const gchar *in_uri, const gchar *mime_type, time_t modified) ...@@ -141,7 +143,6 @@ document_tile_new (const gchar *in_uri, const gchar *mime_type, time_t modified)
g_date_free (time_stamp); g_date_free (time_stamp);
subheader = create_subheader (time_str); subheader = create_subheader (time_str);
g_free (time_str);
context_menu = GTK_MENU (gtk_menu_new ()); context_menu = GTK_MENU (gtk_menu_new ());
...@@ -152,7 +153,7 @@ document_tile_new (const gchar *in_uri, const gchar *mime_type, time_t modified) ...@@ -152,7 +153,7 @@ document_tile_new (const gchar *in_uri, const gchar *mime_type, time_t modified)
g_free (uri); g_free (uri);
priv = DOCUMENT_TILE_GET_PRIVATE (this); priv = DOCUMENT_TILE_GET_PRIVATE (this);
priv->basename = basename; priv->basename = g_strdup (basename);
priv->mime_type = g_strdup (mime_type); priv->mime_type = g_strdup (mime_type);
priv->modified = modified; priv->modified = modified;
priv->header_bin = GTK_BIN (header); priv->header_bin = GTK_BIN (header);
...@@ -275,6 +276,15 @@ document_tile_new (const gchar *in_uri, const gchar *mime_type, time_t modified) ...@@ -275,6 +276,15 @@ document_tile_new (const gchar *in_uri, const gchar *mime_type, time_t modified)
load_image (this); load_image (this);
accessible = gtk_widget_get_accessible (GTK_WIDGET (this));
if (basename)
atk_object_set_name (accessible, basename);
if (time_str)
atk_object_set_description (accessible, time_str);
g_free (basename);
g_free (time_str);
return GTK_WIDGET (this); return GTK_WIDGET (this);
} }
......
...@@ -134,7 +134,7 @@ GtkWidget *file_area_widget_new (MainMenuUI * ui, MainMenuEngine * engine) ...@@ -134,7 +134,7 @@ GtkWidget *file_area_widget_new (MainMenuUI * ui, MainMenuEngine * engine)
priv->engine = engine; priv->engine = engine;
priv->recent_monitor = main_menu_recent_monitor_new (); priv->recent_monitor = main_menu_recent_monitor_new ();
this->selector_label = get_main_menu_section_header (_("Show:")); this->selector_label = get_main_menu_section_header (_("Sho_w:"));
priv->notebook = GTK_NOTEBOOK (gtk_notebook_new ()); priv->notebook = GTK_NOTEBOOK (gtk_notebook_new ());
gtk_notebook_set_show_tabs (priv->notebook, FALSE); gtk_notebook_set_show_tabs (priv->notebook, FALSE);
...@@ -146,6 +146,10 @@ GtkWidget *file_area_widget_new (MainMenuUI * ui, MainMenuEngine * engine) ...@@ -146,6 +146,10 @@ GtkWidget *file_area_widget_new (MainMenuUI * ui, MainMenuEngine * engine)
priv->selector = priv->selector =
GTK_COMBO_BOX (gtk_combo_box_new_with_model (GTK_TREE_MODEL (priv->file_tables))); GTK_COMBO_BOX (gtk_combo_box_new_with_model (GTK_TREE_MODEL (priv->file_tables)));
/* Set the mnemonic up for Show: */
gtk_label_set_use_underline (GTK_LABEL (this->selector_label), TRUE);
gtk_label_set_mnemonic_widget (GTK_LABEL (this->selector_label), GTK_WIDGET (priv->selector));
renderer = gtk_cell_renderer_text_new (); renderer = gtk_cell_renderer_text_new ();
gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (priv->selector), renderer, TRUE); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (priv->selector), renderer, TRUE);
gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (priv->selector), renderer, "text", 1, gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (priv->selector), renderer, "text", 1,
...@@ -240,7 +244,7 @@ GtkWidget *file_area_widget_new (MainMenuUI * ui, MainMenuEngine * engine) ...@@ -240,7 +244,7 @@ GtkWidget *file_area_widget_new (MainMenuUI * ui, MainMenuEngine * engine)
g_signal_connect (G_OBJECT (priv->notebook), "show", G_CALLBACK (notebook_show_cb), this); g_signal_connect (G_OBJECT (priv->notebook), "show", G_CALLBACK (notebook_show_cb), this);
if (GPOINTER_TO_INT (get_gconf_value (AB_LINK_VISIBLE_GCONF_KEY))) { if (GPOINTER_TO_INT (get_gconf_value (AB_LINK_VISIBLE_GCONF_KEY))) {
priv->browser_link = GTK_BUTTON (gtk_button_new ()); priv->browser_link = GTK_BUTTON (gtk_button_new_with_mnemonic (NULL));
update_browser_link (this, update_browser_link (this,
GPOINTER_TO_INT (get_gconf_value (FILE_CLASS_GCONF_KEY))); GPOINTER_TO_INT (get_gconf_value (FILE_CLASS_GCONF_KEY)));
...@@ -340,11 +344,11 @@ update_browser_link (FileAreaWidget *this, FileClass file_class) ...@@ -340,11 +344,11 @@ update_browser_link (FileAreaWidget *this, FileClass file_class)
switch (file_class) { switch (file_class) {
case RECENTLY_USED_APPS: case RECENTLY_USED_APPS:
case USER_SPECIFIED_APPS: case USER_SPECIFIED_APPS:
gtk_button_set_label (priv->browser_link, _("More Applications...")); gtk_button_set_label (priv->browser_link, _("More _Applications..."));
break; break;
case RECENT_FILES: case RECENT_FILES:
gtk_button_set_label (priv->browser_link, _("All Documents...")); gtk_button_set_label (priv->browser_link, _("_All Documents..."));
break; break;
default: default:
......
...@@ -97,10 +97,16 @@ hard_drive_status_tile_new () ...@@ -97,10 +97,16 @@ hard_drive_status_tile_new ()
GtkWidget *header; GtkWidget *header;
GtkWidget *subheader; GtkWidget *subheader;
AtkObject *accessible;
char *name;
image = gtk_image_new (); image = gtk_image_new ();
slab_load_image (GTK_IMAGE (image), GTK_ICON_SIZE_BUTTON, "gnome-dev-harddisk"); slab_load_image (GTK_IMAGE (image), GTK_ICON_SIZE_BUTTON, "gnome-dev-harddisk");
header = gtk_label_new (_("Hard Drive")); name = g_strdup (_("Hard _Drive"));
header = gtk_label_new (name);
gtk_label_set_use_underline (GTK_LABEL (header), TRUE);
gtk_misc_set_alignment (GTK_MISC (header), 0.0, 0.5); gtk_misc_set_alignment (GTK_MISC (header), 0.0, 0.5);
subheader = gtk_label_new (NULL); subheader = gtk_label_new (NULL);
...@@ -124,6 +130,13 @@ hard_drive_status_tile_new () ...@@ -124,6 +130,13 @@ hard_drive_status_tile_new ()
g_signal_connect (G_OBJECT (tile), "hide", G_CALLBACK (tile_hide_event_cb), NULL); g_signal_connect (G_OBJECT (tile), "hide", G_CALLBACK (tile_hide_event_cb), NULL);
g_signal_connect (G_OBJECT (tile), "show", G_CALLBACK (tile_show_event_cb), NULL); g_signal_connect (G_OBJECT (tile), "show", G_CALLBACK (tile_show_event_cb), NULL);
accessible = gtk_widget_get_accessible (tile);
atk_object_set_name (accessible, name);
gtk_label_set_mnemonic_widget (GTK_LABEL (header), GTK_WIDGET (tile));
g_free (name);
return GTK_WIDGET (tile); return GTK_WIDGET (tile);
} }
...@@ -338,6 +351,7 @@ static void ...@@ -338,6 +351,7 @@ static void
update_tile (HardDriveStatusTile * tile) update_tile (HardDriveStatusTile * tile)
{ {
HardDriveStatusTilePrivate *priv = HARD_DRIVE_STATUS_TILE_GET_PRIVATE (tile); HardDriveStatusTilePrivate *priv = HARD_DRIVE_STATUS_TILE_GET_PRIVATE (tile);
AtkObject *accessible;
gchar *markup = NULL; gchar *markup = NULL;
...@@ -353,6 +367,10 @@ update_tile (HardDriveStatusTile * tile) ...@@ -353,6 +367,10 @@ update_tile (HardDriveStatusTile * tile)
gtk_label_set_text (GTK_LABEL (NAMEPLATE_TILE (tile)->subheader), markup); gtk_label_set_text (GTK_LABEL (NAMEPLATE_TILE (tile)->subheader), markup);
accessible = gtk_widget_get_accessible (GTK_WIDGET (tile));
if (markup)
atk_object_set_description (accessible, markup);
g_free (available); g_free (available);
g_free (capacity); g_free (capacity);
g_free (markup); g_free (markup);
......
...@@ -880,7 +880,7 @@ create_search_widget (MainMenuUI * ui, GtkSizeGroup * label_group) ...@@ -880,7 +880,7 @@ create_search_widget (MainMenuUI * ui, GtkSizeGroup * label_group)
hbox = gtk_hbox_new (FALSE, 12); hbox = gtk_hbox_new (FALSE, 12);
search_label = get_section_header_label (_("Search:")); search_label = get_section_header_label (_("_Search:"));
gtk_misc_set_alignment (GTK_MISC (search_label), 0.0, 0.5); gtk_misc_set_alignment (GTK_MISC (search_label), 0.0, 0.5);
gtk_size_group_add_widget (label_group, search_label); gtk_size_group_add_widget (label_group, search_label);
gtk_box_pack_start (GTK_BOX (hbox), search_label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), search_label, FALSE, FALSE, 0);
...@@ -888,6 +888,8 @@ create_search_widget (MainMenuUI * ui, GtkSizeGroup * label_group) ...@@ -888,6 +888,8 @@ create_search_widget (MainMenuUI * ui, GtkSizeGroup * label_group)
search_entry = gtk_entry_new (); search_entry = gtk_entry_new ();
gtk_box_pack_start (GTK_BOX (hbox), search_entry, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (hbox), search_entry, TRUE, TRUE, 0);
gtk_label_set_mnemonic_widget (GTK_LABEL (search_label), search_entry);
g_signal_connect (G_OBJECT (search_entry), "activate", g_signal_connect (G_OBJECT (search_entry), "activate",
G_CALLBACK (search_entry_activate_cb), ui); G_CALLBACK (search_entry_activate_cb), ui);
...@@ -963,6 +965,7 @@ get_section_header_label (const gchar * markup) ...@@ -963,6 +965,7 @@ get_section_header_label (const gchar * markup)
label = gtk_label_new (text); label = gtk_label_new (text);
gtk_label_set_use_markup (GTK_LABEL (label), TRUE); gtk_label_set_use_markup (GTK_LABEL (label), TRUE);
gtk_label_set_use_underline (GTK_LABEL (label), TRUE);
gtk_widget_set_name (label, "gnome-main-menu-section-header"); gtk_widget_set_name (label, "gnome-main-menu-section-header");
g_signal_connect (G_OBJECT (label), "style-set", g_signal_connect (G_OBJECT (label), "style-set",
......
...@@ -184,6 +184,7 @@ static void ...@@ -184,6 +184,7 @@ static void
update_tile (NetworkStatusTile * tile) update_tile (NetworkStatusTile * tile)
{ {
NetworkStatusTilePrivate *priv = NETWORK_STATUS_TILE_GET_PRIVATE (tile); NetworkStatusTilePrivate *priv = NETWORK_STATUS_TILE_GET_PRIVATE (tile);
AtkObject *accessible;
gchar *icon_name; gchar *icon_name;
gchar *header_text; gchar *header_text;
...@@ -194,7 +195,7 @@ update_tile (NetworkStatusTile * tile) ...@@ -194,7 +195,7 @@ update_tile (NetworkStatusTile * tile)
if (!priv->status_info) if (!priv->status_info)
{ {
icon_name = "nm-no-connection"; icon_name = "nm-no-connection";
header_text = _("Network: None"); header_text = _("Networ_k: None");
subheader_text = _("Click to configure network"); subheader_text = _("Click to configure network");
} }
...@@ -206,7 +207,7 @@ update_tile (NetworkStatusTile * tile) ...@@ -206,7 +207,7 @@ update_tile (NetworkStatusTile * tile)
markup = g_strdup_printf (_("Connected to: %s"), priv->status_info->essid); markup = g_strdup_printf (_("Connected to: %s"), priv->status_info->essid);
icon_name = "nm-device-wireless"; icon_name = "nm-device-wireless";
header_text = _("Network: Wireless"); header_text = _("Networ_k: Wireless");
subheader_text = markup; subheader_text = markup;
break; break;
...@@ -215,7 +216,7 @@ update_tile (NetworkStatusTile * tile) ...@@ -215,7 +216,7 @@ update_tile (NetworkStatusTile * tile)
priv->status_info->iface); priv->status_info->iface);
icon_name = "nm-device-wired"; icon_name = "nm-device-wired";
header_text = _("Network: Wired"); header_text = _("Networ_k: Wired");
subheader_text = markup; subheader_text = markup;
break; break;
...@@ -231,6 +232,15 @@ update_tile (NetworkStatusTile * tile) ...@@ -231,6 +232,15 @@ update_tile (NetworkStatusTile * tile)
gtk_label_set_text (GTK_LABEL (NAMEPLATE_TILE (tile)->header), header_text); gtk_label_set_text (GTK_LABEL (NAMEPLATE_TILE (tile)->header), header_text);
gtk_label_set_text (GTK_LABEL (NAMEPLATE_TILE (tile)->subheader), subheader_text); gtk_label_set_text (GTK_LABEL (NAMEPLATE_TILE (tile)->subheader), subheader_text);
gtk_label_set_use_underline (GTK_LABEL (NAMEPLATE_TILE (tile)->header), TRUE);
gtk_label_set_mnemonic_widget (GTK_LABEL (NAMEPLATE_TILE (tile)->header), GTK_WIDGET (tile));
accessible = gtk_widget_get_accessible (GTK_WIDGET (tile));
if (header_text)
atk_object_set_name (accessible, header_text);
if (subheader_text)
atk_object_set_description (accessible, subheader_text);
g_free (markup); g_free (markup);
} }
......
...@@ -82,6 +82,9 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf) ...@@ -82,6 +82,9 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf)
GnomeDesktopItem *desktop_item = NULL; GnomeDesktopItem *desktop_item = NULL;
gchar *image_id = NULL; gchar *image_id = NULL;
gchar *header_txt = NULL;
AtkObject *accessible = NULL;
if (!(0 <= type && type < SYSTEM_TILE_TYPE_SENTINEL)) if (!(0 <= type && type < SYSTEM_TILE_TYPE_SENTINEL))
return NULL; return NULL;
...@@ -97,7 +100,7 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf) ...@@ -97,7 +100,7 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf)
g_strdup (gnome_desktop_item_get_localestring (desktop_item, g_strdup (gnome_desktop_item_get_localestring (desktop_item,
"Icon")); "Icon"));
uri = g_strdup (gnome_desktop_item_get_location (desktop_item)); uri = g_strdup (gnome_desktop_item_get_location (desktop_item));
header = create_header (_("Help")); header_txt = g_strdup (_("_Help"));
} }
break; break;
...@@ -111,7 +114,7 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf) ...@@ -111,7 +114,7 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf)
image_id = g_strdup ( image_id = g_strdup (
gnome_desktop_item_get_localestring (desktop_item, "Icon")); gnome_desktop_item_get_localestring (desktop_item, "Icon"));
uri = g_strdup (gnome_desktop_item_get_location (desktop_item)); uri = g_strdup (gnome_desktop_item_get_location (desktop_item));
header = create_header (_("Control Center")); header_txt = g_strdup (_("_Control Center"));
} }
break; break;
...@@ -125,22 +128,22 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf) ...@@ -125,22 +128,22 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf)
image_id = g_strdup ( image_id = g_strdup (
gnome_desktop_item_get_localestring (desktop_item, "Icon")); gnome_desktop_item_get_localestring (desktop_item, "Icon"));
uri = g_strdup (gnome_desktop_item_get_location (desktop_item)); uri = g_strdup (gnome_desktop_item_get_location (desktop_item));
header = create_header (_("Install Software")); header_txt = g_strdup (_("I_nstall Software"));
} }
break; break;
case SYSTEM_TILE_TYPE_LOG_OUT: case SYSTEM_TILE_TYPE_LOG_OUT:
image_id = "gnome-logout"; image_id = g_strdup ("gnome-logout");
header = create_header (_("Log Out ...")); header_txt = g_strdup (_("Log _Out ..."));
uri = "system-tile://logout"; uri = g_strdup ("system-tile://logout");
break; break;
case SYSTEM_TILE_TYPE_LOCK_SCREEN: case SYSTEM_TILE_TYPE_LOCK_SCREEN:
image_id = "gnome-lockscreen"; image_id = g_strdup ("gnome-lockscreen");
header = create_header (_("Lock Screen ...")); header_txt = g_strdup (_("_Lock Screen ..."));
uri = "system-tile://lockscreen"; uri = g_strdup ("system-tile://lockscreen");
break; break;
...@@ -151,13 +154,15 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf) ...@@ -151,13 +154,15 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf)
if (!uri) if (!uri)
return NULL; return NULL;
if (!header) if (!header_txt)
{ {
g_warning ("Unable to make header for SystemTileType:%d\n", type); g_warning ("Unable to make header for SystemTileType:%d\n", type);
header = create_header (_("Unknown")); header_txt = g_strdup (_("_Unknown"));
} }
header = create_header (header_txt);
tile = g_object_new (SYSTEM_TILE_TYPE, "tile-uri", uri, "nameplate-image", gtk_image_new (), tile = g_object_new (SYSTEM_TILE_TYPE, "tile-uri", uri, "nameplate-image", gtk_image_new (),
"nameplate-header", header, "nameplate-subheader", NULL, NULL); "nameplate-header", header, "nameplate-subheader", NULL, NULL);
...@@ -172,11 +177,23 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf) ...@@ -172,11 +177,23 @@ system_tile_new_with_type (SystemTileType type, MainMenuConf * conf)
priv = SYSTEM_TILE_GET_PRIVATE (tile); priv = SYSTEM_TILE_GET_PRIVATE (tile);
priv->type = type; priv->type = type;
priv->desktop_item = desktop_item; priv->desktop_item = desktop_item;
priv->image_id = image_id; priv->image_id = g_strdup (image_id);
priv->conf = conf; priv->conf = conf;
load_image (tile); load_image (tile);
/* Set up the mnemonic for the tile */
gtk_label_set_mnemonic_widget (GTK_LABEL (header), GTK_WIDGET (tile));
/* Set up the accessible name for the tile */
accessible = gtk_widget_get_accessible (GTK_WIDGET (tile));
if (header_txt)
atk_object_set_name (accessible, header_txt);
g_free (header_txt);
g_free (image_id);
g_free (uri);
return GTK_WIDGET (tile); return GTK_WIDGET (tile);
} }
...@@ -193,6 +210,12 @@ system_tile_init (SystemTile * tile) ...@@ -193,6 +210,12 @@ system_tile_init (SystemTile * tile)
static void static void
system_tile_finalize (GObject * g_object) system_tile_finalize (GObject * g_object)
{ {
SystemTile *tile = SYSTEM_TILE (g_object);
SystemTilePrivate *priv = SYSTEM_TILE_GET_PRIVATE (tile);
g_free (priv->image_id);
gnome_desktop_item_unref (priv->desktop_item);
/* FIXME - more to free ? */ /* FIXME - more to free ? */
(*G_OBJECT_CLASS (system_tile_parent_class)->finalize) (g_object); (*G_OBJECT_CLASS (system_tile_parent_class)->finalize) (g_object);
} }
...@@ -218,6 +241,7 @@ create_header (const gchar * name) ...@@ -218,6 +241,7 @@ create_header (const gchar * name)
GtkWidget *header; GtkWidget *header;
header = gtk_label_new (name); header = gtk_label_new (name);
gtk_label_set_use_underline (GTK_LABEL (header), TRUE);
gtk_misc_set_alignment (GTK_MISC (header), 0.0, 0.5); gtk_misc_set_alignment (GTK_MISC (header), 0.0, 0.5);
return header; return header;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment