Author: rpmcruz
Date: Thu Mar 18 19:26:09 2010
New Revision: 61392
URL: http://svn.opensuse.org/viewcvs/yast?rev=61392&view=rev
Log:
* src/ygtkwizard.c & src/pkg/ygtkpkgsearchentry.cc: use
yellow color for search entry when changed like Rhythmbox
and other gnome apps.
* src/ygtkwizard.c & src/YGPushButton.cc: enlarge wizard
and dialog buttons to reflect settings from GtkButtonBox.
Modified:
trunk/gtk/ChangeLog
trunk/gtk/src/YGPushButton.cc
trunk/gtk/src/pkg/ygtkpkgsearchentry.cc
trunk/gtk/src/ygtkwizard.c
Modified: trunk/gtk/ChangeLog
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/ChangeLog?rev=61392&r1=61391&r2=61392&view=diff
==============================================================================
--- trunk/gtk/ChangeLog (original)
+++ trunk/gtk/ChangeLog Thu Mar 18 19:26:09 2010
@@ -1,3 +1,12 @@
+2010-03-18 Ricardo Cruz
+
+ * src/ygtkwizard.c & src/pkg/ygtkpkgsearchentry.cc: use
+ yellow color for search entry when changed like Rhythmbox
+ and other gnome apps.
+
+ * src/ygtkwizard.c & src/YGPushButton.cc: enlarge wizard
+ and dialog buttons to reflect settings from GtkButtonBox.
+
2010-03-16 Ricardo Cruz
* src/pkg/yzyppwrapper.cc: bug fix 588561: wrong
Modified: trunk/gtk/src/YGPushButton.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/src/YGPushButton.cc?rev=61392&r1=61391&r2=61392&view=diff
==============================================================================
--- trunk/gtk/src/YGPushButton.cc (original)
+++ trunk/gtk/src/YGPushButton.cc Thu Mar 18 19:26:09 2010
@@ -8,6 +8,7 @@
#include
#include "YGUtils.h"
#include "YGWidget.h"
+#include
#include
@@ -24,6 +25,7 @@
gtk_button_set_use_underline (GTK_BUTTON (getWidget()), TRUE);
setLabel (label);
connect (getWidget(), "clicked", G_CALLBACK (clicked_cb), this);
+ g_signal_connect (getWidget(), "size-request", G_CALLBACK (size_request_cb), this);
}
void setStockIcon (const std::string &label)
@@ -197,6 +199,19 @@
static void clicked_cb (GtkButton *button, YGPushButton *pThis)
{ pThis->emitEvent (YEvent::Activated, IGNORE_NOTIFY_EVENT); }
+// default values from gtkbbox.c; can vary from style to style, but no way to query those
+#define DEFAULT_CHILD_MIN_WIDTH 85
+#define DEFAULT_CHILD_MIN_HEIGHT 27
+
+ static void size_request_cb (GtkWidget *widget, GtkRequisition *req, YGPushButton *pThis)
+ { // enlarge button if parent is ButtonBox
+ YWidget *yparent = pThis->m_ywidget->parent();
+ if (!strcmp (yparent->widgetClass(), "YButtonBox")) {
+ req->width = MAX (req->width, DEFAULT_CHILD_MIN_WIDTH);
+ req->height = MAX (req->height, DEFAULT_CHILD_MIN_HEIGHT);
+ }
+ }
+
YGWIDGET_IMPL_COMMON (YPushButton)
};
Modified: trunk/gtk/src/pkg/ygtkpkgsearchentry.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/src/pkg/ygtkpkgsearchentry.cc?rev=61392&r1=61391&r2=61392&view=diff
==============================================================================
--- trunk/gtk/src/pkg/ygtkpkgsearchentry.cc (original)
+++ trunk/gtk/src/pkg/ygtkpkgsearchentry.cc Thu Mar 18 19:26:09 2010
@@ -21,6 +21,9 @@
int item = gtk_combo_box_get_active (GTK_COMBO_BOX (pThis->impl->combo));
pThis->notifyDelay (item == 0 ? 150 : 500);
+ static GdkColor yellow = { 0, 0xf7f7, 0xf7f7, 0xbdbd };
+
+ GtkWidget *widget = GTK_WIDGET (editable);
GtkEntry *entry = GTK_ENTRY (editable); // show clear icon if text
const gchar *name = gtk_entry_get_text (entry);
bool showIcon = *name;
@@ -29,9 +32,14 @@
GTK_ENTRY_ICON_SECONDARY, showIcon);
gtk_entry_set_icon_from_stock (entry,
GTK_ENTRY_ICON_SECONDARY, showIcon ? GTK_STOCK_CLEAR : NULL);
- if (showIcon)
+
+ if (showIcon) {
gtk_entry_set_icon_tooltip_text (entry,
GTK_ENTRY_ICON_SECONDARY, _("Clear"));
+ gtk_widget_modify_base (widget, GTK_STATE_NORMAL, &yellow);
+ }
+ else // revert
+ gtk_widget_modify_base (widget, GTK_STATE_NORMAL, NULL);
}
}
Modified: trunk/gtk/src/ygtkwizard.c
URL: http://svn.opensuse.org/viewcvs/yast/trunk/gtk/src/ygtkwizard.c?rev=61392&r1=61391&r2=61392&view=diff
==============================================================================
--- trunk/gtk/src/ygtkwizard.c (original)
+++ trunk/gtk/src/ygtkwizard.c Thu Mar 18 19:26:09 2010
@@ -46,18 +46,24 @@
static void search_entry_changed_cb (GtkEditable *editable, YGtkHelpDialog *dialog)
{
+ static GdkColor red = { 0, 255 << 8, 102 << 8, 102 << 8 };
+ static GdkColor white = { 0, 255 << 8, 255 << 8, 255 << 8 };
+ static GdkColor yellow = { 0, 0xf7f7, 0xf7f7, 0xbdbd };
+
+ GtkWidget *widget = GTK_WIDGET (editable);
GtkEntry *entry = GTK_ENTRY (editable);
const gchar *text = gtk_entry_get_text (entry);
gboolean found = ygtk_html_wrap_search (dialog->help_text, text);
- GtkWidget *widget = GTK_WIDGET (entry);
- if (found) { // revert
+ if (found && *text) {
+ gtk_widget_modify_base (widget, GTK_STATE_NORMAL, &yellow);
+ gtk_widget_modify_text (widget, GTK_STATE_NORMAL, NULL);
+ }
+ else if (found) { // revert
gtk_widget_modify_base (widget, GTK_STATE_NORMAL, NULL);
gtk_widget_modify_text (widget, GTK_STATE_NORMAL, NULL);
}
else {
- GdkColor red = { 0, 255 << 8, 102 << 8, 102 << 8 },
- white = { 0, 255 << 8, 255 << 8, 255 << 8 };
gtk_widget_modify_base (widget, GTK_STATE_NORMAL, &red);
gtk_widget_modify_text (widget, GTK_STATE_NORMAL, &white);
gtk_widget_error_bell (widget);
@@ -142,13 +148,17 @@
dialog->close_button = gtk_button_new_from_stock (GTK_STOCK_CLOSE);
GTK_WIDGET_SET_FLAGS (dialog->close_button, GTK_CAN_DEFAULT);
+ GtkWidget *close_box = gtk_hbutton_box_new();
+ gtk_container_add (GTK_CONTAINER (close_box), dialog->close_button);
+
GtkWidget *bottom_box, *label = gtk_label_new_with_mnemonic (_("_Find:"));
gtk_misc_set_alignment (GTK_MISC (label), 0, .5);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), dialog->search_entry);
+
bottom_box = gtk_hbox_new (FALSE, 2);
gtk_box_pack_start (GTK_BOX (bottom_box), label, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (bottom_box), dialog->search_entry, FALSE, FALSE, 0);
- gtk_box_pack_end (GTK_BOX (bottom_box), dialog->close_button, FALSE, FALSE, 0);
+ gtk_box_pack_end (GTK_BOX (bottom_box), close_box, FALSE, FALSE, 0);
#ifdef SET_HELP_HISTORY
dialog->history_combo = gtk_combo_box_new_text();
@@ -629,15 +639,18 @@
g_signal_connect (G_OBJECT (wizard->help_button), "toggled",
G_CALLBACK (help_button_toggled_cb), wizard);
- wizard->m_buttons = gtk_hbox_new (FALSE, 6);
+ wizard->m_buttons = gtk_hbutton_box_new();
+ gtk_button_box_set_layout (GTK_BUTTON_BOX (wizard->m_buttons), GTK_BUTTONBOX_END);
gtk_widget_show (wizard->m_buttons);
gtk_box_pack_start (GTK_BOX (wizard->m_buttons), wizard->help_button, FALSE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (wizard->m_buttons), wizard->release_notes_button,
FALSE, TRUE, 0);
+ gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (wizard->m_buttons), wizard->help_button, TRUE);
+ gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (wizard->m_buttons), wizard->release_notes_button, TRUE);
- gtk_box_pack_end (GTK_BOX (wizard->m_buttons), wizard->next_button, FALSE, TRUE, 0);
- gtk_box_pack_end (GTK_BOX (wizard->m_buttons), wizard->back_button, FALSE, TRUE, 0);
gtk_box_pack_end (GTK_BOX (wizard->m_buttons), wizard->abort_button, FALSE, TRUE, 0);
+ gtk_box_pack_end (GTK_BOX (wizard->m_buttons), wizard->back_button, FALSE, TRUE, 0);
+ gtk_box_pack_end (GTK_BOX (wizard->m_buttons), wizard->next_button, FALSE, TRUE, 0);
// make buttons all having the same size
GtkSizeGroup *buttons_group = gtk_size_group_new (GTK_SIZE_GROUP_BOTH);
--
To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org
For additional commands, e-mail: yast-commit+help@opensuse.org