gnome-utils r8231 - trunk/logview
- From: cosimoc svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-utils r8231 - trunk/logview
- Date: Tue, 23 Dec 2008 13:25:34 +0000 (UTC)
Author: cosimoc
Date: Tue Dec 23 13:25:33 2008
New Revision: 8231
URL: http://svn.gnome.org/viewvc/gnome-utils?rev=8231&view=rev
Log:
Implement logview_log_get_display_name () and use it for setting the
window title.
Modified:
trunk/logview/logview-log.c
trunk/logview/logview-log.h
trunk/logview/logview.c
trunk/logview/logview.h
Modified: trunk/logview/logview-log.c
==============================================================================
--- trunk/logview/logview-log.c (original)
+++ trunk/logview/logview-log.c Tue Dec 23 13:25:33 2008
@@ -46,6 +46,7 @@
/* stats about the file */
GTimeVal file_time;
goffset file_size;
+ char *display_name;
/* stream poiting to the log */
GDataInputStream *stream;
@@ -266,6 +267,7 @@
log->priv->file_size = g_file_info_get_size (info);
g_file_info_get_modification_time (info, &log->priv->file_time);
+ log->priv->display_name = g_strdup (g_file_info_get_display_name (info));
g_object_unref (info);
@@ -339,4 +341,12 @@
log->priv->file = g_file_new_for_path (filename);
log_setup_load (log, callback, user_data);
+}
+
+const char *
+logview_log_get_display_name (LogviewLog *log)
+{
+ g_assert (LOGVIEW_IS_LOG (log));
+
+ return log->priv->display_name;
}
\ No newline at end of file
Modified: trunk/logview/logview-log.h
==============================================================================
--- trunk/logview/logview-log.h (original)
+++ trunk/logview/logview-log.h Tue Dec 23 13:25:33 2008
@@ -83,6 +83,7 @@
void logview_log_read_new_lines (LogviewLog *log,
LogviewNewLinesCallback callback,
gpointer user_data);
+const char * logview_log_get_display_name (LogviewLog *log);
G_END_DECLS
Modified: trunk/logview/logview.c
==============================================================================
--- trunk/logview/logview.c (original)
+++ trunk/logview/logview.c Tue Dec 23 13:25:33 2008
@@ -147,36 +147,6 @@
gtk_widget_grab_focus (logview->view);
}
-void
-logview_set_window_title (LogviewWindow *logview)
-{
- gchar *window_title;
- gchar *logname;
- Log *log;
-
- g_assert (LOGVIEW_IS_WINDOW (logview));
-
- log = logview->curlog;
- if (log == NULL)
- return;
-
- if (log->name != NULL) {
-
- if (log->display_name != NULL)
- logname = log->display_name;
- else
- logname = log->name;
-
- window_title = g_strdup_printf ("%s - %s", logname, APP_NAME);
-
- }
- else
- window_title = g_strdup_printf (APP_NAME);
-
- gtk_window_set_title (GTK_WINDOW (logview), window_title);
- g_free (window_title);
-}
-
/* private functions */
static void
@@ -293,6 +263,24 @@
}
static void
+logview_set_window_title (LogviewWindow *logview, const char * log_name)
+{
+ char *window_title;
+
+ g_assert (LOGVIEW_IS_WINDOW (logview));
+
+ if (log_name) {
+ window_title = g_strdup_printf ("%s - %s", log_name, APP_NAME);
+ } else {
+ window_title = g_strdup_printf (APP_NAME);
+ }
+
+ gtk_window_set_title (GTK_WINDOW (logview), window_title);
+
+ g_free (window_title);
+}
+
+static void
logview_menu_item_set_state (LogviewWindow *logview, char *path, gboolean state)
{
GtkAction *action;
@@ -633,6 +621,18 @@
}
static void
+active_log_changed_cb (LogviewManager *manager,
+ LogviewLog *log,
+ gpointer data)
+{
+ LogviewWindow *window = data;
+
+
+ /* update the tile for the new log */
+ logview_set_window_title (window, logview_log_get_display_name (log));
+}
+
+static void
logview_window_finalize (GObject *object)
{
LogviewWindow *logview = LOGVIEW_WINDOW (object);
@@ -801,6 +801,8 @@
G_CALLBACK (font_changed_cb), logview);
g_signal_connect (priv->prefs, "have-tearoff-changed",
G_CALLBACK (tearoff_changed_cb), logview);
+ g_signal_connect (priv->manager, "active-changed",
+ G_CALLBACK (active_log_changed_cb), logview);
/* Status area at bottom */
priv->statusbar = gtk_statusbar_new ();
Modified: trunk/logview/logview.h
==============================================================================
--- trunk/logview/logview.h (original)
+++ trunk/logview/logview.h Tue Dec 23 13:25:33 2008
@@ -52,6 +52,5 @@
/* public methods */
GtkWidget *logview_window_new (void);
void logview_select_log (LogviewWindow *logview, Log *log);
-void logview_set_window_title (LogviewWindow *window);
#endif /* __LOGVIEW_WINDOW_H__ */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]