Author: rpmcruz
Date: Sat Feb 20 00:45:03 2010
New Revision: 60902
URL: http://svn.opensuse.org/viewcvs/yast?rev=60902&view=rev
Log:
* src/YGMenuButton.cc: bug fix: YContextMenu wasn't
emiting signal when canceled. Also, added stock icons.
Modified:
trunk/gtk/ChangeLog
trunk/gtk/src/YGFrame.cc
trunk/gtk/src/YGMenuButton.cc
trunk/gtk/src/YGTable.cc
trunk/gtk/src/YGUtils.cc
trunk/gtk/src/ygtkbargraph.c
Modified: trunk/gtk/ChangeLog
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/ChangeLog?rev=60902&r1=60901&r2=60902&view=diff
==============================================================================
--- trunk/gtk/ChangeLog (original)
+++ trunk/gtk/ChangeLog Sat Feb 20 00:45:03 2010
@@ -1,5 +1,10 @@
2010-02-19 Ricardo Cruz
+ * src/YGMenuButton.cc: bug fix: YContextMenu wasn't
+ emiting signal when canceled. Also, added stock icons.
+
+2010-02-19 Ricardo Cruz
+
* src/pkg/ygtkpkgstatusbar.cc: got rid of "To install:"
and other statistical info.
Modified: trunk/gtk/src/YGFrame.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/src/YGFrame.cc?rev=60902&r1=60901&r2=60902&view=diff
==============================================================================
--- trunk/gtk/src/YGFrame.cc (original)
+++ trunk/gtk/src/YGFrame.cc Sat Feb 20 00:45:03 2010
@@ -10,7 +10,7 @@
// Instead of traditional looking frames, we use Gnome convention for the
// frame's look. That is: don't draw a frame, use bold header and pad the child.
-#define CHILD_INDENTATION 12
+#define CHILD_INDENTATION 8
class YGBaseFrame : public YGWidget
{
@@ -21,7 +21,7 @@
public:
YGBaseFrame (YWidget *ywidget, YWidget *parent)
: YGWidget (ywidget, parent,
- GTK_TYPE_FRAME, /*"shadow-type", GTK_SHADOW_NONE, */NULL)
+ GTK_TYPE_FRAME, "shadow-type", GTK_SHADOW_NONE, NULL)
{
m_containee = gtk_alignment_new (0, 0, 1, 1);
gtk_alignment_set_padding (GTK_ALIGNMENT (m_containee),
Modified: trunk/gtk/src/YGMenuButton.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/src/YGMenuButton.cc?rev=60902&r1=60901&r2=60902&view=diff
==============================================================================
--- trunk/gtk/src/YGMenuButton.cc (original)
+++ trunk/gtk/src/YGMenuButton.cc Sat Feb 20 00:45:03 2010
@@ -12,6 +12,10 @@
static void selected_item_cb (GtkMenuItem *menuitem, YItem *item)
{
+ // HACK: gtk_menu_get_active() doesn't work properly
+ GtkWidget *menu = gtk_widget_get_ancestor (GTK_WIDGET (menuitem), GTK_TYPE_MENU);
+ g_object_set_data (G_OBJECT (menu), "active", menuitem);
+
YGUI::ui()->sendEvent (new YMenuEvent (item));
}
@@ -28,6 +32,11 @@
g_object_unref (G_OBJECT (pixbuf));
}
}
+ else {
+ const char *stock = YGUtils::mapStockIcon (str);
+ if (stock)
+ image = gtk_image_new_from_stock (stock, GTK_ICON_SIZE_MENU);
+ }
if (image) {
entry = gtk_image_menu_item_new_with_mnemonic (str.c_str());
@@ -89,7 +98,8 @@
: YContextMenu(),
YGWidget (this, NULL, GTK_TYPE_MENU, NULL)
{
- connect (getWidget(), "cancel", G_CALLBACK (cancel_cb), this);
+ // "cancel" signal doesnt seem to work properly
+ connect (getWidget(), "deactivate", G_CALLBACK (deactivate_cb), this);
}
// YContextMenu
@@ -102,8 +112,17 @@
}
// callbacks
- static void cancel_cb (GtkMenuShell *menu, YGContextMenu *pThis)
- { YGUI::ui()->sendEvent (new YCancelEvent()); }
+ static gboolean cancel_cb (gpointer data)
+ {
+ if (!g_object_get_data (G_OBJECT (data), "active"))
+ YGUI::ui()->sendEvent (new YCancelEvent());
+ return FALSE;
+ }
+
+ static void deactivate_cb (GtkMenuShell *menu, YGContextMenu *pThis)
+ { // ugly: we need to make sure a selection was made before this callback called
+ g_idle_add_full (G_PRIORITY_LOW, cancel_cb, menu, NULL);
+ }
YGWIDGET_IMPL_COMMON (YContextMenu)
};
Modified: trunk/gtk/src/YGTable.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/src/YGTable.cc?rev=60902&r1=60901&r2=60902&view=diff
==============================================================================
--- trunk/gtk/src/YGTable.cc (original)
+++ trunk/gtk/src/YGTable.cc Sat Feb 20 00:45:03 2010
@@ -227,9 +227,7 @@
#if YAST2_VERSION > 2018003
static void right_click_cb (YGtkTreeView *view, gboolean outreach, YGTableView *pThis)
- {
- pThis->emitEvent (YEvent::ContextMenuActivated);
- }
+ { pThis->emitEvent (YEvent::ContextMenuActivated); }
#endif
};
Modified: trunk/gtk/src/YGUtils.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/src/YGUtils.cc?rev=60902&r1=60901&r2=60902&view=diff
==============================================================================
--- trunk/gtk/src/YGUtils.cc (original)
+++ trunk/gtk/src/YGUtils.cc Sat Feb 20 00:45:03 2010
@@ -639,6 +639,7 @@
stockMap [_("Enable")] = GTK_STOCK_YES;
stockMap [_("Disable")] = GTK_STOCK_NO;
stockMap [_("Exit")] = GTK_STOCK_QUIT;
+ stockMap [_("Resize")] = GTK_STOCK_FULLSCREEN;
}
std::string id = cutUnderline (label);
Modified: trunk/gtk/src/ygtkbargraph.c
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/src/ygtkbargraph.c?rev=60902&r1=60901&r2=60902&view=diff
==============================================================================
--- trunk/gtk/src/ygtkbargraph.c (original)
+++ trunk/gtk/src/ygtkbargraph.c Sat Feb 20 00:45:03 2010
@@ -23,7 +23,7 @@
static void ygtk_bar_graph_size_request (GtkWidget *widget, GtkRequisition *requisition)
{
GTK_WIDGET_CLASS (ygtk_bar_graph_parent_class)->size_request (widget, requisition);
- requisition->height += 6; // give room for the labels
+ requisition->height += 18; // give room for the labels
}
GtkWidget *ygtk_bar_graph_new (void)
--
To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org
For additional commands, e-mail: yast-commit+help@opensuse.org