diff options
author | Dave Davenport <qball@gmpclient.org> | 2016-02-06 14:27:36 +0100 |
---|---|---|
committer | Dave Davenport <qball@gmpclient.org> | 2016-02-06 14:27:36 +0100 |
commit | adfc83f07d17b6eed67a3e37ca3ced75bb6ec96d (patch) | |
tree | c18281792c3c984ca8daacbc2306f0b1a503e323 /include/view.h | |
parent | 73169af793c59ee1847325d7faa3f3cf6b4c08c0 (diff) |
Restructuring, my biggest joy.
Diffstat (limited to 'include/view.h')
-rw-r--r-- | include/view.h | 89 |
1 files changed, 30 insertions, 59 deletions
diff --git a/include/view.h b/include/view.h index 8c7d02bc..8e94c77f 100644 --- a/include/view.h +++ b/include/view.h @@ -1,63 +1,13 @@ +#ifndef ROFI_VIEW_H +#define ROFI_VIEW_H -// 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; - - ssize_t num_modi; - textbox **modi; - // Handlers. - void ( *x11_event_loop )( struct RofiViewState *state, XEvent *ev ); - void ( *finalize )( struct RofiViewState *state ); -}RofiViewState; +/** + * @defgroup View View + * + * The rofi Menu view. + * + * @{ + */ /** * @param state The Menu Handle @@ -67,3 +17,24 @@ typedef struct RofiViewState void rofi_view_finalize ( RofiViewState *state ); RofiViewState * rofi_view_state_create ( void ); + +MenuReturn rofi_view_get_return_value ( const RofiViewState *state ); +unsigned int rofi_view_get_selected_line ( const RofiViewState *state ); +unsigned int rofi_view_get_next_position ( const RofiViewState *state ); +void rofi_view_itterrate ( RofiViewState *state, XEvent *event ); +unsigned int rofi_view_get_completed ( const RofiViewState *state ); +const char * rofi_view_get_user_input ( const RofiViewState *state ); +void rofi_view_free ( RofiViewState *state ); +void rofi_view_restart ( RofiViewState *state ); +void rofi_view_set_selected_line ( RofiViewState *state, unsigned int selected_line ); +void rofi_view_queue_redraw ( void ); +void rofi_view_set_active ( RofiViewState *state ); + +void rofi_view_call_thread ( gpointer data, gpointer user_data ); + +void menu_update ( RofiViewState *state ); +void menu_setup_fake_transparency ( Display *display, RofiViewState *state ); + +void rofi_view_cleanup ( void ); +/** @} */ +#endif |