summaryrefslogtreecommitdiffstats
path: root/include/view-internal.h
diff options
context:
space:
mode:
authorDave Davenport <qball@gmpclient.org>2016-02-06 14:27:36 +0100
committerDave Davenport <qball@gmpclient.org>2016-02-06 14:27:36 +0100
commitadfc83f07d17b6eed67a3e37ca3ced75bb6ec96d (patch)
treec18281792c3c984ca8daacbc2306f0b1a503e323 /include/view-internal.h
parent73169af793c59ee1847325d7faa3f3cf6b4c08c0 (diff)
Restructuring, my biggest joy.
Diffstat (limited to 'include/view-internal.h')
-rw-r--r--include/view-internal.h73
1 files changed, 73 insertions, 0 deletions
diff --git a/include/view-internal.h b/include/view-internal.h
new file mode 100644
index 00000000..5c41fd14
--- /dev/null
+++ b/include/view-internal.h
@@ -0,0 +1,73 @@
+#ifndef ROFI_VIEW_INTERNAL_H
+#define ROFI_VIEW_INTERNAL_H
+#include "widget.h"
+#include "textbox.h"
+#include "scrollbar.h"
+
+/**
+ * @ingroup View
+ *
+ * @{
+ */
+// State of the menu.
+
+typedef struct RofiViewState
+{
+ Mode *sw;
+ unsigned int menu_lines;
+ unsigned int max_elements;
+ unsigned int max_rows;
+ unsigned int columns;
+
+ // window width,height
+ unsigned int w, h;
+ int x, y;
+ unsigned int element_width;
+ int top_offset;
+
+ // Update/Refilter list.
+ int update;
+ int refilter;
+ int rchanged;
+ int cur_page;
+
+ // Entries
+ textbox *text;
+ textbox *prompt_tb;
+ textbox *message_tb;
+ textbox *case_indicator;
+ textbox **boxes;
+ scrollbar *scrollbar;
+ int *distance;
+ unsigned int *line_map;
+
+ unsigned int num_lines;
+
+ // Selected element.
+ unsigned int selected;
+ unsigned int filtered_lines;
+ // Last offset in paginating.
+ unsigned int last_offset;
+
+ KeySym prev_key;
+ Time last_button_press;
+
+ int quit;
+ int skip_absorb;
+ // Return state
+ unsigned int selected_line;
+ MenuReturn retv;
+ int *lines_not_ascii;
+ int line_height;
+ unsigned int border;
+ workarea mon;
+
+ // Sidebar view
+ ssize_t num_modi;
+ textbox **modi;
+ // Handlers.
+ void ( *x11_event_loop )( struct RofiViewState *state, XEvent *ev );
+ void ( *finalize )( struct RofiViewState *state );
+}RofiViewState;
+/** @} */
+#endif