diff options
author | Alan Fitton <ajf@eth0.org.uk> | 2011-10-21 23:12:21 +0000 |
---|---|---|
committer | Alan Fitton <ajf@eth0.org.uk> | 2011-10-21 23:12:21 +0000 |
commit | 34c56c7db7c57f5db0184489d01866902e992300 (patch) | |
tree | 8707a14ac8f786ff684279be77e66946f235b751 /src/trg-persistent-tree-view.h | |
parent | 3b8fd9e7274477cfad98d66e41a43417ce8d21bf (diff) |
make the execute command tree view in preferences a generic widget, the "persistent tree view"
Diffstat (limited to 'src/trg-persistent-tree-view.h')
-rw-r--r-- | src/trg-persistent-tree-view.h | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/src/trg-persistent-tree-view.h b/src/trg-persistent-tree-view.h new file mode 100644 index 0000000..2664946 --- /dev/null +++ b/src/trg-persistent-tree-view.h @@ -0,0 +1,77 @@ +/* + * transmission-remote-gtk - A GTK RPC client to Transmission + * Copyright (C) 2011 Alan Fitton + + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#ifndef _TRG_PERSISTENT_TREE_VIEW +#define _TRG_PERSISTENT_TREE_VIEW + +#include <gtk/gtk.h> +#include <glib-object.h> + +#include "trg-preferences-dialog.h" + +G_BEGIN_DECLS + +#define TRG_TYPE_PERSISTENT_TREE_VIEW trg_persistent_tree_view_get_type() + +#define TRG_PERSISTENT_TREE_VIEW(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRG_TYPE_PERSISTENT_TREE_VIEW, TrgPersistentTreeView)) + +#define TRG_PERSISTENT_TREE_VIEW_CLASS(klass) \ + (G_TYPE_CHECK_CLASS_CAST ((klass), TRG_TYPE_PERSISTENT_TREE_VIEW, TrgPersistentTreeViewClass)) + +#define TRG_IS_PERSISTENT_TREE_VIEW(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRG_TYPE_PERSISTENT_TREE_VIEW)) + +#define TRG_IS_PERSISTENT_TREE_VIEW_CLASS(klass) \ + (G_TYPE_CHECK_CLASS_TYPE ((klass), TRG_TYPE_PERSISTENT_TREE_VIEW)) + +#define TRG_PERSISTENT_TREE_VIEW_GET_CLASS(obj) \ + (G_TYPE_INSTANCE_GET_CLASS ((obj), TRG_TYPE_PERSISTENT_TREE_VIEW, TrgPersistentTreeViewClass)) + +typedef struct { + GtkVBox parent; +} TrgPersistentTreeView; + +typedef struct { + GtkTreeViewClass parent_class; +} TrgPersistentTreeViewClass; + +GType trg_persistent_tree_view_get_type (void); + +typedef struct { + GtkTreeViewColumn *column; + gchar *key; + gchar *label; + TrgPersistentTreeView *tv; + gint index; +} trg_persistent_tree_view_column; + +TrgPersistentTreeView* +trg_persistent_tree_view_new (TrgPrefs *prefs, GtkListStore *model, const gchar *key); +trg_pref_widget_desc* trg_persistent_tree_view_get_widget_desc(TrgPersistentTreeView* ptv); +void trg_persistent_tree_view_set_add_select(TrgPersistentTreeView *ptv, trg_persistent_tree_view_column *cd); +trg_persistent_tree_view_column *trg_persistent_tree_view_add_column(TrgPersistentTreeView *ptv, + gint index, + const gchar *key, + const gchar *label); +void trg_persistent_tree_view_build(TrgPersistentTreeView *ptv); + +G_END_DECLS + +#endif /* _TRG_PERSISTENT_TREE_VIEW */ |