From 51b5511017b632129df78d2906882abafd92c38a Mon Sep 17 00:00:00 2001 From: Dave Davenport Date: Thu, 7 Jan 2016 16:01:56 +0100 Subject: More doxygen sugar. --- include/keyb.h | 14 ++++ include/rofi.h | 220 ++++++++--------------------------------------------- include/settings.h | 157 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 201 insertions(+), 190 deletions(-) create mode 100644 include/settings.h (limited to 'include') diff --git a/include/keyb.h b/include/keyb.h index 5f4ab520..bd195017 100644 --- a/include/keyb.h +++ b/include/keyb.h @@ -9,19 +9,33 @@ typedef enum _KeyBindingAction { + /** Paste from primary clipboard */ PASTE_PRIMARY = 0, + /** Paste from secondary clipboard */ PASTE_SECONDARY, + /** Clear the entry box. */ CLEAR_LINE, + /** Move to front of text */ MOVE_FRONT, + /** Move to end of text */ MOVE_END, + /** Move on word back */ MOVE_WORD_BACK, + /** Move on word forward */ MOVE_WORD_FORWARD, + /** Move character back */ MOVE_CHAR_BACK, + /** Move character forward */ MOVE_CHAR_FORWARD, + /** Remove previous word */ REMOVE_WORD_BACK, + /** Remove next work */ REMOVE_WORD_FORWARD, + /** Remove next character */ REMOVE_CHAR_FORWARD, + /** Remove previous character */ REMOVE_CHAR_BACK, + /** Accept the current selected entry */ ACCEPT_ENTRY, ACCEPT_CUSTOM, ACCEPT_ENTRY_CONTINUE, diff --git a/include/rofi.h b/include/rofi.h index b2c5eda1..86c37acc 100644 --- a/include/rofi.h +++ b/include/rofi.h @@ -14,6 +14,10 @@ * @defgroup Widgets Widgets */ +/** + * @defgroup Main Main + * @{ + */ /** * Pointer to xdg cache directory. */ @@ -67,38 +71,6 @@ typedef enum */ void catch_exit ( __attribute__( ( unused ) ) int sig ); -/** - * Enumeration indicating location or gravity of window. - * - * WL_NORTH_WEST WL_NORTH WL_NORTH_EAST - * - * WL_EAST WL_CENTER WL_EAST - * - * WL_SOUTH_WEST WL_SOUTH WL_SOUTH_EAST - * - */ -typedef enum _WindowLocation -{ - /** Center */ - WL_CENTER = 0, - /** Left top corner. */ - WL_NORTH_WEST = 1, - /** Top middle */ - WL_NORTH = 2, - /** Top right */ - WL_NORTH_EAST = 3, - /** Middle right */ - WL_EAST = 4, - /** Bottom right */ - WL_EAST_SOUTH = 5, - /** Bottom middle */ - WL_SOUTH = 6, - /** Bottom left */ - WL_SOUTH_WEST = 7, - /** Middle left */ - WL_WEST = 8 -} WindowLocation; - /** * @param sw the Mode to show. * @param lines An array of strings to display. @@ -117,128 +89,6 @@ typedef enum _WindowLocation */ MenuReturn menu ( Mode *sw, char **input, char *prompt, unsigned int *selected_line, unsigned int *next_pos, const char *message ) __attribute__ ( ( nonnull ( 1, 2, 3, 4 ) ) ); -/** - * Settings - */ - -typedef struct _Settings -{ - /** List of enabled modi */ - char *modi; - /** Window settings */ - unsigned int window_opacity; - /** Border width */ - unsigned int menu_bw; - /** Width (0-100 in %, > 100 in pixels, < 0 in char width.) */ - int menu_width; - /** # lines */ - unsigned int menu_lines; - /** # Columns */ - unsigned int menu_columns; - /** Font string (pango format) */ - char * menu_font; - - /** New row colors */ - unsigned int color_enabled; - char * color_normal; - char * color_active; - char * color_urgent; - char * color_window; - /** Foreground color */ - char * menu_fg; - char * menu_fg_urgent; - char * menu_fg_active; - /** Background color */ - char * menu_bg; - char * menu_bg_urgent; - char * menu_bg_active; - /** Background color alt */ - char * menu_bg_alt; - /** Highlight foreground color */ - char * menu_hlfg; - char * menu_hlfg_urgent; - char * menu_hlfg_active; - /** Highlight background color */ - char * menu_hlbg; - char * menu_hlbg_urgent; - char * menu_hlbg_active; - /** Border color */ - char * menu_bc; - /** Terminal to use */ - char * terminal_emulator; - /** SSH client to use */ - char * ssh_client; - /** Command to execute when ssh session is selected */ - char * ssh_command; - /** Command for executing an application */ - char * run_command; - /** Command for executing an application in a terminal */ - char * run_shell_command; - /** Command for listing executables */ - char * run_list_command; - - /** Windows location/gravity */ - WindowLocation location; - /** Padding between elements */ - unsigned int padding; - /** Y offset */ - int y_offset; - /** X offset */ - int x_offset; - /** Always should config.menu_lines lines, even if less lines are available */ - unsigned int fixed_num_lines; - /** Do not use history */ - unsigned int disable_history; - /** Use levenshtein sorting when matching */ - unsigned int levenshtein_sort; - /** Search case sensitivity */ - unsigned int case_sensitive; - /** Separator to use for dmenu mode */ - char separator; - /** Height of an element in number of rows */ - int element_height; - /** Sidebar mode, show the modi */ - unsigned int sidebar_mode; - /** Lazy filter limit. */ - unsigned int lazy_filter_limit; - /** Auto select. */ - unsigned int auto_select; - /** Hosts file parsing */ - unsigned int parse_hosts; - /** Knonw_hosts file parsing */ - unsigned int parse_known_hosts; - /** Combi Modes */ - char *combi_modi; - /** Fuzzy match */ - unsigned int fuzzy; - unsigned int glob; - unsigned int tokenize; - unsigned int regex; - /** Monitors */ - int monitor; - /** Line margin */ - unsigned int line_margin; - /** filter */ - char *filter; - /** style */ - char *separator_style; - /** hide scrollbar */ - unsigned int hide_scrollbar; - /** show markup in elements. */ - unsigned int markup_rows; - /** fullscreen */ - unsigned int fullscreen; - /** bg image */ - unsigned int fake_transparency; - /** dpi */ - int dpi; - /** Number threads (1 to disable) */ - unsigned int threads; - unsigned int scrollbar_width; -} Settings; - -/** Global Settings structure. */ -extern Settings config; /** * @param msg The error message to show. @@ -283,9 +133,9 @@ typedef int ( *switcher_is_not_ascii )( const Mode *sw, unsigned int index ); */ struct _Mode { - // Name (max 31 char long) + /** Name (max 31 char long) */ char name[32]; - // Keybindings (keysym and modmask) + /** Keybindings (keysym and modmask) */ char * keycfg; char * keystr; KeySym keysym; @@ -294,54 +144,44 @@ struct _Mode /** * A switcher normally consists of the following parts: */ - // Initialize the Mode + /** Initialize the Mode */ switcher_init init; - // Destroy the switcher, e.g. free all its memory. + /** Destroy the switcher, e.g. free all its memory. */ switcher_destroy destroy; - // Get number of entries to display. (unfiltered). + /** Get number of entries to display. (unfiltered). */ switcher_get_num_entries get_num_entries; - // Check if the element is ascii. + /** Check if the element is ascii. */ switcher_is_not_ascii is_not_ascii; - // Process the result of the user selection. + /** Process the result of the user selection. */ switcher_result result; - // Token match. + /** Token match. */ switcher_token_match token_match; - // Get the string to display for the entry. + /** Get the string to display for the entry. */ switcher_get_display_value mgrv; - // Get the 'completed' entry. + /** Get the 'completed' entry. */ switcher_get_completion get_completion; - // Pointer to private data. + /** Pointer to private data. */ void *private_data; - // Free SWitcher - // Only to be used when the switcher object itself is dynamic. - // And has data in `ed` + /** + * Free SWitcher + * Only to be used when the switcher object itself is dynamic. + * And has data in `ed` + */ switcher_free free; - // Extra fields for script + /** Extra fields for script */ void *ed; }; -#define color_reset "\033[0m" -#define color_bold "\033[1m" -#define color_italic "\033[2m" -#define color_underline "\033[4m" -#define color_black "\033[0;30m" -#define color_red "\033[0;31m" -#define color_green "\033[0;32m" -#define color_yellow "\033[0;33m" -#define color_blue "\033[0;34m" -#define color_magenta "\033[0;35m" -#define color_cyan "\033[0;36m" -#define color_white "\033[0;37m" -#define color_white_bold "\033[1;37m" -#define color_black_bold "\033[1;30m" -#define color_red_bold "\033[1;31m" -#define color_green_bold "\033[1;32m" -#define color_yellow_bold "\033[1;33m" -#define color_blue_bold "\033[1;34m" -#define color_magenta_bold "\033[1;35m" -#define color_cyan_bold "\033[1;36m" - +/** Reset terminal */ +#define color_reset "\033[0m" +/** Set terminal text bold */ +#define color_bold "\033[1m" +/** Set terminal text italic */ +#define color_italic "\033[2m" +/** Set terminal foreground text green */ +#define color_green "\033[0;32m" int show_error_message ( const char *msg, int markup ); +/*@}*/ #endif diff --git a/include/settings.h b/include/settings.h new file mode 100644 index 00000000..fb68a713 --- /dev/null +++ b/include/settings.h @@ -0,0 +1,157 @@ +#ifndef ROFI_SETTINGS_H +#define ROFI_SETTINGS_H + +/** + * Enumeration indicating location or gravity of window. + * + * \verbatim WL_NORTH_WEST WL_NORTH WL_NORTH_EAST \endverbatim + * \verbatim WL_EAST WL_CENTER WL_EAST \endverbatim + * \verbatim WL_SOUTH_WEST WL_SOUTH WL_SOUTH_EAST\endverbatim + * \endverbatim + * + * @ingroup CONFIGURATION + */ +typedef enum _WindowLocation +{ + /** Center */ + WL_CENTER = 0, + /** Left top corner. */ + WL_NORTH_WEST = 1, + /** Top middle */ + WL_NORTH = 2, + /** Top right */ + WL_NORTH_EAST = 3, + /** Middle right */ + WL_EAST = 4, + /** Bottom right */ + WL_EAST_SOUTH = 5, + /** Bottom middle */ + WL_SOUTH = 6, + /** Bottom left */ + WL_SOUTH_WEST = 7, + /** Middle left */ + WL_WEST = 8 +} WindowLocation; + +/** + * Settings structure holding all (static) configurable options. + * @ingroup CONFIGURATION + */ +typedef struct _Settings +{ + /** List of enabled modi */ + char *modi; + /** Window settings */ + unsigned int window_opacity; + /** Border width */ + unsigned int menu_bw; + /** Width (0-100 in %, > 100 in pixels, < 0 in char width.) */ + int menu_width; + /** # lines */ + unsigned int menu_lines; + /** # Columns */ + unsigned int menu_columns; + /** Font string (pango format) */ + char * menu_font; + + /** New row colors */ + unsigned int color_enabled; + char * color_normal; + char * color_active; + char * color_urgent; + char * color_window; + /** Foreground color */ + char * menu_fg; + char * menu_fg_urgent; + char * menu_fg_active; + /** Background color */ + char * menu_bg; + char * menu_bg_urgent; + char * menu_bg_active; + /** Background color alt */ + char * menu_bg_alt; + /** Highlight foreground color */ + char * menu_hlfg; + char * menu_hlfg_urgent; + char * menu_hlfg_active; + /** Highlight background color */ + char * menu_hlbg; + char * menu_hlbg_urgent; + char * menu_hlbg_active; + /** Border color */ + char * menu_bc; + /** Terminal to use */ + char * terminal_emulator; + /** SSH client to use */ + char * ssh_client; + /** Command to execute when ssh session is selected */ + char * ssh_command; + /** Command for executing an application */ + char * run_command; + /** Command for executing an application in a terminal */ + char * run_shell_command; + /** Command for listing executables */ + char * run_list_command; + + /** Windows location/gravity */ + WindowLocation location; + /** Padding between elements */ + unsigned int padding; + /** Y offset */ + int y_offset; + /** X offset */ + int x_offset; + /** Always should config.menu_lines lines, even if less lines are available */ + unsigned int fixed_num_lines; + /** Do not use history */ + unsigned int disable_history; + /** Use levenshtein sorting when matching */ + unsigned int levenshtein_sort; + /** Search case sensitivity */ + unsigned int case_sensitive; + /** Separator to use for dmenu mode */ + char separator; + /** Height of an element in number of rows */ + int element_height; + /** Sidebar mode, show the modi */ + unsigned int sidebar_mode; + /** Lazy filter limit. */ + unsigned int lazy_filter_limit; + /** Auto select. */ + unsigned int auto_select; + /** Hosts file parsing */ + unsigned int parse_hosts; + /** Knonw_hosts file parsing */ + unsigned int parse_known_hosts; + /** Combi Modes */ + char *combi_modi; + /** Fuzzy match */ + unsigned int fuzzy; + unsigned int glob; + unsigned int tokenize; + unsigned int regex; + /** Monitors */ + int monitor; + /** Line margin */ + unsigned int line_margin; + /** filter */ + char *filter; + /** style */ + char *separator_style; + /** hide scrollbar */ + unsigned int hide_scrollbar; + /** show markup in elements. */ + unsigned int markup_rows; + /** fullscreen */ + unsigned int fullscreen; + /** bg image */ + unsigned int fake_transparency; + /** dpi */ + int dpi; + /** Number threads (1 to disable) */ + unsigned int threads; + unsigned int scrollbar_width; +} Settings; +/** Global Settings structure. */ +extern Settings config; +#endif // ROFI_SETTINGS_H -- cgit v1.2.3