girara
|
00001 /* See LICENSE file for license and copyright information */ 00002 00003 #ifndef GIRARA_INTERNAL_H 00004 #define GIRARA_INTERNAL_H 00005 00006 #include "types.h" 00007 #include "macros.h" 00008 #include <glib.h> 00009 00010 #define FORMAT_COMMAND "<b>%s</b>" 00011 #define FORMAT_DESCRIPTION "<i>%s</i>" 00012 00013 #define UNUSED(x) GIRARA_UNUSED(x) 00014 #define HIDDEN GIRARA_HIDDEN 00015 00016 #define LENGTH(x) (sizeof(x)/sizeof((x)[0])) 00017 00023 HIDDEN void girara_setting_free(girara_setting_t* setting); 00024 00025 HIDDEN void girara_config_handle_free(girara_config_handle_t* handle); 00026 00027 HIDDEN void girara_shortcut_mapping_free(girara_shortcut_mapping_t* mapping); 00028 00029 HIDDEN void girara_shortcut_free(girara_shortcut_t* shortcut); 00030 00031 HIDDEN void girara_inputbar_shortcut_free(girara_inputbar_shortcut_t* shortcut); 00032 00033 HIDDEN void girara_mode_string_free(girara_mode_string_t* mode); 00034 00035 HIDDEN void girara_statusbar_item_free(girara_statusbar_item_t* statusbaritem); 00036 00037 HIDDEN void girara_argument_mapping_free( 00038 girara_argument_mapping_t* argument_mapping); 00039 00040 HIDDEN void girara_special_command_free( 00041 girara_special_command_t* special_command); 00042 00043 HIDDEN void girara_command_free(girara_command_t* command); 00044 00045 HIDDEN void girara_mouse_event_free(girara_mouse_event_t* mouse_event); 00046 00053 HIDDEN girara_completion_t* girara_cc_set(girara_session_t* session, 00054 const char* input); 00055 00064 HIDDEN bool girara_cmd_map(girara_session_t* session, 00065 girara_list_t* argument_list); 00066 00075 HIDDEN bool girara_cmd_unmap(girara_session_t* session, 00076 girara_list_t* argument_list); 00077 00086 HIDDEN bool girara_cmd_quit(girara_session_t* session, 00087 girara_list_t* argument_list); 00088 00097 HIDDEN bool girara_cmd_set(girara_session_t* session, 00098 girara_list_t* argument_list); 00099 00107 HIDDEN bool girara_cmd_exec(girara_session_t* session, 00108 girara_list_t* argument_list); 00109 00113 struct girara_command_s 00114 { 00115 char* command; 00116 char* abbr; 00117 girara_command_function_t function; 00118 girara_completion_function_t completion; 00119 char* description; 00120 }; 00121 00122 struct girara_mode_string_s 00123 { 00124 girara_mode_t index; 00125 char* name; 00126 }; 00127 00131 struct girara_shortcut_mapping_s 00132 { 00133 char* identifier; 00134 girara_shortcut_function_t function; 00135 }; 00136 00140 struct girara_argument_mapping_s 00141 { 00142 char* identifier; 00143 int value; 00144 }; 00145 00149 struct girara_shortcut_s 00150 { 00151 guint mask; 00152 guint key; 00153 const char* buffered_command; 00154 girara_shortcut_function_t function; 00155 girara_mode_t mode; 00156 girara_argument_t argument; 00157 }; 00158 00162 struct girara_inputbar_shortcut_s 00163 { 00164 guint mask; 00165 guint key; 00166 girara_shortcut_function_t function; 00167 girara_argument_t argument; 00168 }; 00169 00173 struct girara_special_command_s 00174 { 00175 char identifier; 00176 girara_inputbar_special_function_t function; 00177 bool always; 00178 girara_argument_t argument; 00179 }; 00180 00184 struct girara_mouse_event_s 00185 { 00186 guint mask; 00187 guint button; 00188 girara_shortcut_function_t function; 00189 girara_mode_t mode; 00190 girara_event_type_t event_type; 00191 girara_argument_t argument; 00192 }; 00193 00197 struct girara_config_handle_s 00198 { 00199 char* identifier; 00200 girara_command_function_t handle; 00201 }; 00202 00203 #endif