summaryrefslogtreecommitdiff
path: root/src/zenity-tree-column-view.h
diff options
context:
space:
mode:
authorLogan Rathbone <poprocks@gmail.com>2023-02-01 09:09:28 -0500
committerLogan Rathbone <poprocks@gmail.com>2023-02-01 21:00:29 -0500
commit7a80b6702a3a3f2eac26640b369c9c87ae163041 (patch)
treea4d1e3a15300294c9ebaec55ca0b470b9e971840 /src/zenity-tree-column-view.h
parente2df75b842334878f0b234eed6613544f102af48 (diff)
downloadzenity-7a80b6702a3a3f2eac26640b369c9c87ae163041.tar.gz
tree: Initial port to GtkColumnView
There are likely bugs. Search functionality still needs to be implemented.
Diffstat (limited to 'src/zenity-tree-column-view.h')
-rw-r--r--src/zenity-tree-column-view.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/zenity-tree-column-view.h b/src/zenity-tree-column-view.h
new file mode 100644
index 0000000..c66e323
--- /dev/null
+++ b/src/zenity-tree-column-view.h
@@ -0,0 +1,54 @@
+#pragma once
+
+#include <gtk/gtk.h>
+
+#include "zenity-tree-column-view-enums.h" /* auto-generated by build system */
+
+G_BEGIN_DECLS
+
+typedef enum
+{
+ ZENITY_TREE_LIST_NONE,
+ ZENITY_TREE_LIST_CHECK,
+ ZENITY_TREE_LIST_RADIO,
+ ZENITY_TREE_LIST_IMAGE
+} ZenityTreeListType;
+
+/* ZenityTreeItem */
+
+#define ZENITY_TREE_TYPE_ITEM (zenity_tree_item_get_type ())
+G_DECLARE_FINAL_TYPE (ZenityTreeItem, zenity_tree_item, ZENITY_TREE, ITEM, GObject)
+
+ZenityTreeItem * zenity_tree_item_new (const char *text, GtkWidget *child);
+GtkWidget * zenity_tree_item_get_child (ZenityTreeItem *item);
+const char * zenity_tree_item_get_text (ZenityTreeItem *item);
+void zenity_tree_item_set_text (ZenityTreeItem *item, const char *text);
+
+/* ZenityTreeRow */
+
+#define ZENITY_TREE_TYPE_ROW (zenity_tree_row_get_type ())
+G_DECLARE_FINAL_TYPE (ZenityTreeRow, zenity_tree_row, ZENITY_TREE, ROW, GObject)
+
+ZenityTreeRow * zenity_tree_row_new (void);
+void zenity_tree_row_add (ZenityTreeRow *row, ZenityTreeItem *item);
+guint zenity_tree_row_get_n_items (ZenityTreeRow *row);
+ZenityTreeItem * zenity_tree_row_get_item (ZenityTreeRow *row, guint index);
+
+/* ZenityTreeColumnView */
+
+#define ZENITY_TREE_TYPE_COLUMN_VIEW (zenity_tree_column_view_get_type ())
+G_DECLARE_FINAL_TYPE (ZenityTreeColumnView, zenity_tree_column_view, ZENITY_TREE, COLUMN_VIEW, GtkWidget)
+
+void zenity_tree_column_view_set_model (ZenityTreeColumnView *self, GListModel *model);
+GListModel * zenity_tree_column_view_get_model (ZenityTreeColumnView *self);
+void zenity_tree_column_view_set_list_type (ZenityTreeColumnView *self, ZenityTreeListType type);
+ZenityTreeListType zenity_tree_column_view_get_list_type (ZenityTreeColumnView *self);
+void zenity_tree_column_view_add_column (ZenityTreeColumnView *self, const char *col_name);
+void zenity_tree_column_view_foreach_item (ZenityTreeColumnView *self, GFunc func, gpointer user_data);
+void zenity_tree_column_view_foreach_row (ZenityTreeColumnView *self, GFunc func, gpointer user_data);
+int zenity_tree_column_view_get_n_columns (ZenityTreeColumnView *self);
+gboolean zenity_tree_column_view_get_editable (ZenityTreeColumnView *self);
+gboolean zenity_tree_column_view_get_multi (ZenityTreeColumnView *self);
+gboolean zenity_tree_column_view_is_selected (ZenityTreeColumnView *self, guint pos);
+
+G_END_DECLS