Changeset 7cf5ddb in mainline for uspace/lib/ui/private/filelist.h
- Timestamp:
- 2023-03-08T18:21:22Z (13 months ago)
- Branches:
- master, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 42c2e65, 72ac106
- Parents:
- bea6233
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ui/private/filelist.h
rbea6233 r7cf5ddb 1 1 /* 2 * Copyright (c) 202 2Jiri Svoboda2 * Copyright (c) 2023 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 37 37 #define _UI_PRIVATE_FILELIST_H 38 38 39 #include <adt/list.h>40 39 #include <gfx/color.h> 41 #include <gfx/coord.h>42 40 #include <ipc/loc.h> 41 #include <ui/list.h> 43 42 #include <ui/window.h> 44 43 #include <stdint.h> … … 61 60 /** Containing file list */ 62 61 struct ui_file_list *flist; 63 /** Li nk to @c flist->entries*/64 link_t lentries;62 /** List entry */ 63 ui_list_entry_t *entry; 65 64 /** File name */ 66 65 char *name; … … 82 81 83 82 /** Containing window */ 84 ui_window_t *window; 83 struct ui_window *window; 84 85 /** UI list */ 86 ui_list_t *list; 85 87 86 88 /** Callbacks */ … … 90 92 void *cb_arg; 91 93 92 /** File list rectangle */93 gfx_rect_t rect;94 95 /** Scrollbar */96 struct ui_scrollbar *scrollbar;97 98 94 /** Directory-type entry color */ 99 95 gfx_color_t *dir_color; … … 102 98 gfx_color_t *svc_color; 103 99 104 /** File list entries (list of ui_file_list_entry_t) */105 list_t entries;106 107 /** Number of entries */108 size_t entries_cnt;109 110 /** First entry of current page */111 ui_file_list_entry_t *page;112 113 /** Index of first entry of current page */114 size_t page_idx;115 116 /** Cursor position */117 ui_file_list_entry_t *cursor;118 119 /** Index of entry under cursor */120 size_t cursor_idx;121 122 /** @c true iff the file list is active */123 bool active;124 125 100 /** Directory */ 126 101 char *dir; 127 102 } ui_file_list_t; 128 103 129 extern gfx_coord_t ui_file_list_entry_height(ui_file_list_t *);130 extern errno_t ui_file_list_entry_paint(ui_file_list_entry_t *, size_t);131 extern errno_t ui_file_list_paint(ui_file_list_t *);132 extern ui_evclaim_t ui_file_list_kbd_event(ui_file_list_t *, kbd_event_t *);133 extern ui_evclaim_t ui_file_list_pos_event(ui_file_list_t *, pos_event_t *);134 extern unsigned ui_file_list_page_size(ui_file_list_t *);135 extern void ui_file_list_inside_rect(ui_file_list_t *, gfx_rect_t *);136 extern void ui_file_list_scrollbar_rect(ui_file_list_t *, gfx_rect_t *);137 extern gfx_coord_t ui_file_list_scrollbar_pos(ui_file_list_t *);138 extern void ui_file_list_scrollbar_update(ui_file_list_t *);139 104 extern bool ui_file_list_is_active(ui_file_list_t *); 140 105 extern void ui_file_list_entry_delete(ui_file_list_entry_t *); … … 142 107 extern errno_t ui_file_list_sort(ui_file_list_t *); 143 108 extern int ui_file_list_entry_ptr_cmp(const void *, const void *); 109 extern void ui_file_list_entry_attr_init(ui_file_list_entry_attr_t *); 110 extern errno_t ui_file_list_entry_append(ui_file_list_t *, 111 ui_file_list_entry_attr_t *); 144 112 extern ui_file_list_entry_t *ui_file_list_first(ui_file_list_t *); 145 113 extern ui_file_list_entry_t *ui_file_list_last(ui_file_list_t *); 146 114 extern ui_file_list_entry_t *ui_file_list_next(ui_file_list_entry_t *); 147 115 extern ui_file_list_entry_t *ui_file_list_prev(ui_file_list_entry_t *); 148 extern ui_file_list_entry_t *ui_file_list_page_nth_entry(ui_file_list_t *,149 size_t, size_t *);150 extern void ui_file_list_entry_attr_init(ui_file_list_entry_attr_t *);151 extern errno_t ui_file_list_entry_append(ui_file_list_t *,152 ui_file_list_entry_attr_t *);153 extern void ui_file_list_cursor_move(ui_file_list_t *, ui_file_list_entry_t *,154 size_t);155 extern void ui_file_list_cursor_up(ui_file_list_t *);156 extern void ui_file_list_cursor_down(ui_file_list_t *);157 extern void ui_file_list_cursor_top(ui_file_list_t *);158 extern void ui_file_list_cursor_bottom(ui_file_list_t *);159 extern void ui_file_list_page_up(ui_file_list_t *);160 extern void ui_file_list_page_down(ui_file_list_t *);161 extern void ui_file_list_scroll_up(ui_file_list_t *);162 extern void ui_file_list_scroll_down(ui_file_list_t *);163 extern void ui_file_list_scroll_page_up(ui_file_list_t *);164 extern void ui_file_list_scroll_page_down(ui_file_list_t *);165 extern void ui_file_list_scroll_pos(ui_file_list_t *, size_t);166 116 extern errno_t ui_file_list_open_dir(ui_file_list_t *, ui_file_list_entry_t *); 167 117 extern errno_t ui_file_list_open_file(ui_file_list_t *, ui_file_list_entry_t *); 168 118 extern void ui_file_list_activate_req(ui_file_list_t *); 169 119 extern void ui_file_list_selected(ui_file_list_t *, const char *); 120 extern errno_t ui_file_list_paint(ui_file_list_t *); 121 extern int ui_file_list_list_compare(ui_list_entry_t *, ui_list_entry_t *); 170 122 171 123 #endif
Note:
See TracChangeset
for help on using the changeset viewer.