#ifndef KOLIBRI_FILEBROWSE_H #define KOLIBRI_FILEBROWSE_H typedef struct { uint32_t type; uint32_t x_w; // 10, 400 uint32_t y_h; // 45, 550 uint32_t icon_size_xy; // x_y (16, 16) uint16_t line_size_x; uint16_t line_size_y; // 18 or 17 - высота линии uint16_t type_size_x; uint16_t size_size_x; uint16_t date_size_x; uint16_t attributes_size_x; uint32_t icon_assoc_area; uint32_t icon_raw_area; // z_icons.png uint32_t icon_resolution_raw; // ... uint32_t palette_raw; // ... uint32_t directory_path_area; uint32_t file_name_area; uint32_t select_flag; color_t background_color; // 0xffffff color_t select_color; // 0xbbddff color_t select_text_color; color_t text_color; color_t reduct_text_color; // 0xff0000 color_t marked_text_color; uint32_t max_panel_line; // // moved to scrollbar->cur_area, - максимальное число строк в окне uint32_t select_panel_counter; // 1 if focused uint32_t folder_block; // количество блоков данных входа каталога (БДВК) ????? format BDVK == bdfe,, // moved to scrollbar->max_area uint32_t start_draw_line; // moved to scrollbar->position and back uint16_t start_draw_cursor_line; void* folder_data; // ??? format 32 byte - header, +4 = number, +32 - bdvk[], size of rec(bdvk cp866) = 304byte uint32_t temp_counter; uint32_t file_name_length; uint32_t marked_file; uint32_t extension_size; uint32_t extension_start; void* type_table; //dd features_table ; +122 ? table format char* ini_file_start; // icons.ini char* ini_file_end; // start + filesize uint32_t draw_scroll_bar; // 1 = need redraw sb after key() uint32_t font_size_xy; // x_y (6, 9) uint32_t mouse_keys; uint32_t mouse_keys_old; uint32_t mouse_pos; uint32_t mouse_keys_delta; uint32_t mouse_key_delay; // 50 uint32_t mouse_keys_tick; uint16_t start_draw_cursor_line_2; uint32_t all_redraw; // 1 - force draw, 2 - ???? uint32_t selected_BDVK_adress; uint16_t key_action; // fill before key(), 1..12, wiki uint16_t key_action_num; // fill before key() fn2 >> 8 char* name_temp_area dd name_temp_area ;+180 uint32_t max_name_temp_size; uint32_t display_name_max_length; uint32_t draw_panel_selection_flag; uint32_t mouse_pos_old; uint32_t marked_counter; char* keymap_pointer dd keymap_area ;+204 } file_browser; /* features_table: .type_table: db '