gnome-utils r8264 - trunk/logview



Author: cosimoc
Date: Tue Dec 23 13:26:32 2008
New Revision: 8264
URL: http://svn.gnome.org/viewvc/gnome-utils?rev=8264&view=rev

Log:
Add the "close" signal to the findbar.

Modified:
   trunk/logview/logview-findbar.c
   trunk/logview/logview-findbar.h

Modified: trunk/logview/logview-findbar.c
==============================================================================
--- trunk/logview/logview-findbar.c	(original)
+++ trunk/logview/logview-findbar.c	Tue Dec 23 13:26:32 2008
@@ -36,6 +36,7 @@
 enum {
   PREVIOUS,
   NEXT,
+  CLOSE,
   TEXT_CHANGED,
   LAST_SIGNAL
 };
@@ -106,7 +107,7 @@
   LogviewFindbar *findbar = user_data;
 
   if (event->keyval == GDK_Escape) {
-    gtk_widget_hide (GTK_WIDGET (findbar));
+    g_signal_emit (findbar, signals[CLOSE], 0);
     return TRUE;
   }
 
@@ -218,7 +219,7 @@
 
   signals[PREVIOUS] = g_signal_new ("previous",
                                     G_OBJECT_CLASS_TYPE (oclass),
-                                    G_SIGNAL_RUN_FIRST,
+                                    G_SIGNAL_RUN_LAST,
                                     G_STRUCT_OFFSET (LogviewFindbarClass, previous),
                                     NULL, NULL,
                                     g_cclosure_marshal_VOID__VOID,
@@ -226,15 +227,23 @@
 
   signals[NEXT] = g_signal_new ("next",
                                 G_OBJECT_CLASS_TYPE (oclass),
-                                G_SIGNAL_RUN_FIRST,
+                                G_SIGNAL_RUN_LAST,
                                 G_STRUCT_OFFSET (LogviewFindbarClass, next),
                                 NULL, NULL,
                                 g_cclosure_marshal_VOID__VOID,
                                 G_TYPE_NONE, 0);
 
+  signals[CLOSE] = g_signal_new ("close",
+                                 G_OBJECT_CLASS_TYPE (oclass),
+                                 G_SIGNAL_RUN_LAST,
+                                 G_STRUCT_OFFSET (LogviewFindbarClass, close),
+                                 NULL, NULL,
+                                 g_cclosure_marshal_VOID__VOID,
+                                 G_TYPE_NONE, 0);
+
   signals[TEXT_CHANGED] = g_signal_new ("text-changed",
                                         G_OBJECT_CLASS_TYPE (oclass),
-                                        G_SIGNAL_RUN_FIRST,
+                                        G_SIGNAL_RUN_LAST,
                                         G_STRUCT_OFFSET (LogviewFindbarClass, text_changed),
                                         NULL, NULL,
                                         g_cclosure_marshal_VOID__STRING,
@@ -244,6 +253,8 @@
   g_type_class_add_private (klass, sizeof (LogviewFindbarPrivate));
 }
 
+/* public methods */
+
 GtkWidget *
 logview_findbar_new (void)
 {
@@ -260,3 +271,11 @@
   gtk_widget_show (GTK_WIDGET (findbar));
   gtk_widget_grab_focus (GTK_WIDGET (findbar));
 }
+
+const char *
+logview_findbar_get_text (LogviewFindbar *findbar)
+{
+  g_assert (LOGVIEW_IS_FINDBAR (findbar));
+
+  return findbar->priv->string;
+}
\ No newline at end of file

Modified: trunk/logview/logview-findbar.h
==============================================================================
--- trunk/logview/logview-findbar.h	(original)
+++ trunk/logview/logview-findbar.h	Tue Dec 23 13:26:32 2008
@@ -53,6 +53,7 @@
   /* signals */
   void (* previous)     (LogviewFindbar *findbar);
   void (* next)         (LogviewFindbar *findbar);
+  void (* close)        (LogviewFindbar *findbar);
   void (* text_changed) (LogviewFindbar *findbar,
                          const char * new_text);
 };



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]