mirror of https://github.com/djcb/mu.git
* add mug_msg_list_view_move_first, move to first item after running query
This commit is contained in:
parent
34b997ad3c
commit
6bfa535e6a
5
mug/TODO
5
mug/TODO
|
@ -20,3 +20,8 @@
|
|||
|
||||
|
||||
|
||||
|
||||
** TODO focus search bar at startup
|
||||
** DONE focus first msg after query
|
||||
CLOSED: [2010-11-02 Tue 22:44]
|
||||
** TODO sorting for columns
|
||||
|
|
|
@ -205,6 +205,20 @@ mug_msg_list_view_finalize (GObject *obj)
|
|||
G_OBJECT_CLASS(parent_class)->finalize (obj);
|
||||
}
|
||||
|
||||
void
|
||||
mug_msg_list_view_move_first (MugMsgListView *self)
|
||||
{
|
||||
GtkTreePath *path;
|
||||
|
||||
g_return_val_if_fail (MUG_IS_MSG_LIST_VIEW(self), FALSE);
|
||||
|
||||
path = gtk_tree_path_new_first ();
|
||||
gtk_tree_view_set_cursor (GTK_TREE_VIEW(self), path,
|
||||
NULL, FALSE);
|
||||
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
|
||||
static gboolean
|
||||
msg_list_view_move (MugMsgListView *self, gboolean next)
|
||||
|
|
|
@ -56,6 +56,9 @@ GtkWidget* mug_msg_list_view_new (const char *xpath);
|
|||
|
||||
int mug_msg_list_view_query (MugMsgListView *self, const char *query);
|
||||
|
||||
|
||||
void mug_msg_list_view_move_first (MugMsgListView *self);
|
||||
|
||||
gboolean mug_msg_list_view_move_prev (MugMsgListView *self);
|
||||
gboolean mug_msg_list_view_move_next (MugMsgListView *self);
|
||||
|
||||
|
|
13
mug/mug.cc
13
mug/mug.cc
|
@ -36,6 +36,7 @@ struct _MugData {
|
|||
GtkWidget *mlist;
|
||||
GtkWidget *toolbar;
|
||||
GtkWidget *msgview;
|
||||
GtkWidget *querybar;
|
||||
};
|
||||
typedef struct _MugData MugData;
|
||||
|
||||
|
@ -150,6 +151,7 @@ on_query_changed (MugQueryBar *bar, const char* query, MugData *mugdata)
|
|||
(MUG_MSG_LIST_VIEW(mugdata->mlist)));
|
||||
gtk_statusbar_push (GTK_STATUSBAR(mugdata->statusbar), 0, msg);
|
||||
g_free (msg);
|
||||
mug_msg_list_view_move_first (MUG_MSG_LIST_VIEW(mugdata->mlist));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -199,7 +201,7 @@ static GtkWidget*
|
|||
mug_query_area (MugData *mugdata)
|
||||
{
|
||||
GtkWidget *queryarea;
|
||||
GtkWidget *paned, *querybar;
|
||||
GtkWidget *paned;
|
||||
GtkWidget *scrolled;
|
||||
|
||||
gchar* xdir;
|
||||
|
@ -225,13 +227,13 @@ mug_query_area (MugData *mugdata)
|
|||
mugdata->msgview);
|
||||
gtk_paned_add2 (GTK_PANED (paned), scrolled);
|
||||
|
||||
querybar = mug_querybar();
|
||||
g_signal_connect (G_OBJECT(querybar), "query_changed",
|
||||
mugdata->querybar = mug_querybar();
|
||||
g_signal_connect (G_OBJECT(mugdata->querybar), "query_changed",
|
||||
G_CALLBACK(on_query_changed),
|
||||
mugdata);
|
||||
|
||||
gtk_box_pack_start (GTK_BOX(queryarea),
|
||||
querybar, FALSE, FALSE, 2);
|
||||
mugdata->querybar, FALSE, FALSE, 2);
|
||||
gtk_box_pack_start (GTK_BOX(queryarea),
|
||||
paned, TRUE, TRUE, 2);
|
||||
|
||||
|
@ -267,7 +269,7 @@ mug_shell (MugData *mugdata)
|
|||
mugdata->toolbar = mug_toolbar(mugdata);
|
||||
gtk_box_pack_start (GTK_BOX(vbox), mugdata->toolbar, FALSE, FALSE, 2);
|
||||
gtk_box_pack_start (GTK_BOX(vbox), mug_main_area(mugdata), TRUE, TRUE, 2);
|
||||
|
||||
|
||||
mugdata->statusbar = mug_statusbar();
|
||||
gtk_box_pack_start (GTK_BOX(vbox), mugdata->statusbar, FALSE, FALSE, 2);
|
||||
|
||||
|
@ -293,6 +295,7 @@ main (int argc, char *argv[])
|
|||
G_CALLBACK(gtk_main_quit), NULL);
|
||||
|
||||
gtk_widget_show (mugshell);
|
||||
|
||||
gtk_main ();
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Reference in New Issue