2016-02-01 05:03:42 +00:00
|
|
|
/*
|
|
|
|
* Mr. 4th Dimention - Allen Webster
|
|
|
|
*
|
2016-05-06 15:34:08 +00:00
|
|
|
* 06.05.2016 (dd.mm.yyyy)
|
2016-02-01 05:03:42 +00:00
|
|
|
*
|
|
|
|
* Global app level settings definition
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
// TOP
|
|
|
|
|
|
|
|
struct App_Settings{
|
|
|
|
char *user_file;
|
|
|
|
b32 user_file_is_strict;
|
|
|
|
|
|
|
|
char *init_files[8];
|
|
|
|
i32 init_files_count;
|
|
|
|
i32 init_files_max;
|
|
|
|
|
|
|
|
i32 initial_line;
|
|
|
|
b32 lctrl_lalt_is_altgr;
|
2016-03-21 22:27:27 +00:00
|
|
|
|
|
|
|
i32 font_size;
|
2016-09-19 02:49:25 +00:00
|
|
|
|
|
|
|
i32 custom_arg_start;
|
|
|
|
i32 custom_arg_end;
|
2016-02-01 05:03:42 +00:00
|
|
|
};
|
|
|
|
|
2016-06-07 16:26:11 +00:00
|
|
|
struct Debug_Input_Event{
|
2016-07-01 05:42:19 +00:00
|
|
|
Key_Code key;
|
2016-06-07 16:26:11 +00:00
|
|
|
|
2016-06-07 17:49:18 +00:00
|
|
|
char consumer[32];
|
|
|
|
|
2016-06-07 16:26:11 +00:00
|
|
|
b8 is_hold;
|
|
|
|
b8 is_ctrl;
|
|
|
|
b8 is_alt;
|
|
|
|
b8 is_shift;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct Debug_Data{
|
|
|
|
Debug_Input_Event input_events[16];
|
2016-06-07 17:49:18 +00:00
|
|
|
i32 this_frame_count;
|
2016-06-07 16:26:11 +00:00
|
|
|
};
|
|
|
|
|
2016-03-07 05:13:20 +00:00
|
|
|
struct Models{
|
2016-03-04 01:41:52 +00:00
|
|
|
Mem_Options mem;
|
|
|
|
App_Settings settings;
|
|
|
|
|
|
|
|
Command_Map map_top;
|
|
|
|
Command_Map map_file;
|
|
|
|
Command_Map map_ui;
|
|
|
|
Command_Map *user_maps;
|
|
|
|
i32 *map_id_table;
|
|
|
|
i32 user_map_count;
|
|
|
|
|
|
|
|
Command_Binding prev_command;
|
|
|
|
|
|
|
|
Coroutine *command_coroutine;
|
|
|
|
u32 command_coroutine_flags[2];
|
|
|
|
|
2016-03-07 05:13:20 +00:00
|
|
|
Hook_Function *hooks[hook_type_count];
|
2016-05-14 20:08:11 +00:00
|
|
|
Application_Links app_links;
|
2016-03-04 01:41:52 +00:00
|
|
|
|
2016-09-09 13:04:51 +00:00
|
|
|
Custom_API config_api;
|
|
|
|
|
|
|
|
Open_File_Hook_Function *hook_open_file;
|
|
|
|
Open_File_Hook_Function *hook_new_file;
|
2016-12-26 22:49:01 +00:00
|
|
|
Open_File_Hook_Function *hook_save_file;
|
2016-09-09 13:04:51 +00:00
|
|
|
Command_Caller_Hook_Function *command_caller;
|
|
|
|
Input_Filter_Function *input_filter;
|
|
|
|
Scroll_Rule_Function *scroll_rule;
|
|
|
|
|
2016-03-04 01:41:52 +00:00
|
|
|
Font_Set *font_set;
|
|
|
|
Style_Font global_font;
|
|
|
|
Style_Library styles;
|
|
|
|
u32 *palette;
|
|
|
|
i32 palette_size;
|
|
|
|
|
|
|
|
Editing_Layout layout;
|
|
|
|
Working_Set working_set;
|
2016-06-10 03:20:45 +00:00
|
|
|
struct Live_Views *live_set;
|
2016-03-20 21:51:58 +00:00
|
|
|
Editing_File *message_buffer;
|
2016-06-29 17:45:26 +00:00
|
|
|
Editing_File *scratch_buffer;
|
2016-05-19 18:01:36 +00:00
|
|
|
|
2016-03-04 01:41:52 +00:00
|
|
|
char hot_dir_base_[256];
|
|
|
|
Hot_Directory hot_directory;
|
2016-05-19 18:01:36 +00:00
|
|
|
|
2016-03-04 01:41:52 +00:00
|
|
|
Panel *prev_mouse_panel;
|
|
|
|
|
2016-05-29 21:34:52 +00:00
|
|
|
b32 keep_playing;
|
2016-06-07 16:26:11 +00:00
|
|
|
|
|
|
|
Debug_Data debug;
|
2016-10-27 23:45:41 +00:00
|
|
|
|
|
|
|
i16 user_up_key;
|
|
|
|
i16 user_down_key;
|
2016-03-04 01:41:52 +00:00
|
|
|
};
|
|
|
|
|
2016-02-01 05:03:42 +00:00
|
|
|
// BOTTOM
|
|
|
|
|
2016-05-06 15:34:08 +00:00
|
|
|
|
|
|
|
|