| 85 void application_create_menu(void) { |
85 void application_create_menu(void) { |
| 86 // menu |
86 // menu |
| 87 ui_menu("File") { |
87 ui_menu("File") { |
| 88 ui_menuitem(.label = "New Window", .onclick = action_window_new); |
88 ui_menuitem(.label = "New Window", .onclick = action_window_new); |
| 89 ui_menuseparator(); |
89 ui_menuseparator(); |
| 90 ui_menuitem(.label = "New Folder", .onclick = action_mkcol, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
90 ui_menuitem(.label = "New Folder", .onclick = action_mkcol, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 91 ui_menuitem(.label = "New File", .onclick = action_newfile, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
91 ui_menuitem(.label = "New File", .onclick = action_newfile, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 92 ui_menuitem(.label = "Delete", .onclick = action_delete, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
92 ui_menuitem(.label = "Delete", .onclick = action_delete, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 93 ui_menuseparator(); |
93 ui_menuseparator(); |
| 94 ui_menuitem(.label = "Upload File", .onclick = action_upload_file, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
94 ui_menuitem(.label = "Upload File", .onclick = action_upload_file, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 95 ui_menuitem(.label = "Upload Folder", .onclick = action_upload_dir, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
95 ui_menuitem(.label = "Upload Folder", .onclick = action_upload_dir, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 96 ui_menuitem(.label = "Download", .onclick = action_download, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
96 ui_menuitem(.label = "Download", .onclick = action_download, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
| 97 ui_menuitem("Open Properties", .onclick = action_open_properties, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
97 ui_menuitem("Open Properties", .onclick = action_open_properties, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
| 98 ui_menuitem("Open as Text File", .onclick = action_open_properties, .onclickdata = "text/plain", .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
98 ui_menuitem("Open as Text File", .onclick = action_open_properties, .onclickdata = "text/plain", .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
| 99 ui_menuseparator(); |
99 ui_menuseparator(); |
| 100 ui_menuitem(.label = "Close", .onclick = action_window_close); |
100 ui_menuitem(.label = "Close", .onclick = action_window_close); |
| 101 } |
101 } |
| 102 |
102 |
| 103 ui_menu("Edit") { |
103 ui_menu("Edit") { |
| 104 ui_menuitem(.label = "Preferences", .onclick = action_open_settings); |
104 ui_menuitem(.label = "Preferences", .onclick = action_open_settings); |
| 105 } |
105 } |
| 106 |
106 |
| 107 ui_menu("Go") { |
107 ui_menu("Go") { |
| 108 ui_menuitem(.label = "Parent", .onclick = action_go_parent, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
108 ui_menuitem(.label = "Parent", .onclick = action_go_parent, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 109 ui_menuitem(.label = "Back", .onclick = action_go_back, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
109 ui_menuitem(.label = "Back", .onclick = action_go_back, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 110 ui_menuitem(.label = "Forward", .onclick = action_go_forward, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
110 ui_menuitem(.label = "Forward", .onclick = action_go_forward, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 111 ui_menuseparator(); |
111 ui_menuseparator(); |
| 112 ui_menu("Repositories") { |
112 ui_menu("Repositories") { |
| 113 ui_menu_itemlist(.varname = "repolist", .getvalue = davrepo_getname, .onselect = action_repo_selected); |
113 ui_menu_itemlist(.varname = "repolist", .getvalue = davrepo_getname, .onselect = action_repo_selected); |
| 114 } |
114 } |
| 115 } |
115 } |
| 119 } |
119 } |
| 120 |
120 |
| 121 // toolbar |
121 // toolbar |
| 122 ui_toolbar_item("Home", .icon = UI_ICON_HOME); |
122 ui_toolbar_item("Home", .icon = UI_ICON_HOME); |
| 123 ui_toolbar_item("NewWindow", .icon = UI_ICON_NEW_WINDOW, .onclick = action_window_new); |
123 ui_toolbar_item("NewWindow", .icon = UI_ICON_NEW_WINDOW, .onclick = action_window_new); |
| 124 ui_toolbar_item("Refresh", .icon = UI_ICON_REFRESH, .onclick = action_refresh, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
124 ui_toolbar_item("Refresh", .icon = UI_ICON_REFRESH, .onclick = action_refresh, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 125 ui_toolbar_menu("Repo", .label = "Repository") { |
125 ui_toolbar_menu("Repo", .label = "Repository") { |
| 126 ui_menu_itemlist(.varname = "repolist", .getvalue = davrepo_getname, .onselect = action_repo_selected); |
126 ui_menu_itemlist(.varname = "repolist", .getvalue = davrepo_getname, .onselect = action_repo_selected); |
| 127 } |
127 } |
| 128 ui_toolbar_item("NewFolder", .icon = UI_ICON_NEW_FOLDER, .onclick = action_mkcol, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
128 ui_toolbar_item("NewFolder", .icon = UI_ICON_NEW_FOLDER, .onclick = action_mkcol, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 129 ui_toolbar_item("NewFile", .icon = UI_ICON_ADD, .onclick = action_newfile, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
129 ui_toolbar_item("NewFile", .icon = UI_ICON_ADD, .onclick = action_newfile, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 130 ui_toolbar_item("Upload", .label = "Upload", .icon = UI_ICON_UPLOAD, .onclick = action_upload_file, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
130 ui_toolbar_item("Upload", .label = "Upload", .icon = UI_ICON_UPLOAD, .onclick = action_upload_file, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 131 ui_toolbar_item("Download", .icon = UI_ICON_SAVE_LOCAL, .onclick = action_download, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
131 ui_toolbar_item("Download", .icon = UI_ICON_SAVE_LOCAL, .onclick = action_download, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
| 132 ui_toolbar_item("Remove", .icon = UI_ICON_DELETE, .onclick = action_delete, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
132 ui_toolbar_item("Remove", .icon = UI_ICON_DELETE, .onclick = action_delete, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
| 133 ui_toolbar_toggleitem("LocalBrowser", .icon = UI_ICON_DOCK_LEFT, .label = "Local Browser"); |
133 ui_toolbar_toggleitem("LocalBrowser", .icon = UI_ICON_DOCK_LEFT, .label = "Local Browser"); |
| 134 ui_toolbar_toggleitem("PreviewPane", .icon = UI_ICON_DOCK_RIGHT); |
134 ui_toolbar_toggleitem("PreviewPane", .icon = UI_ICON_DOCK_RIGHT); |
| 135 |
135 |
| 136 ui_toolbar_appmenu() { |
136 ui_toolbar_appmenu() { |
| 137 ui_menuitem("New Window", .onclick = action_window_new); |
137 ui_menuitem("New Window", .onclick = action_window_new); |
| 138 ui_menuseparator(); |
138 ui_menuseparator(); |
| 139 ui_menuitem(.label = "New Folder", .onclick = action_mkcol, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
139 ui_menuitem(.label = "New Folder", .onclick = action_mkcol, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 140 ui_menuitem(.label = "New File", .onclick = action_newfile, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
140 ui_menuitem(.label = "New File", .onclick = action_newfile, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 141 ui_menuitem("Download", .onclick = action_download, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
141 ui_menuitem("Download", .onclick = action_download, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
| 142 ui_menuitem("Upload Files", .onclick = action_upload_file, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
142 ui_menuitem("Upload Files", .onclick = action_upload_file, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 143 ui_menuitem("Upload Directory", .onclick = action_upload_dir, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
143 ui_menuitem("Upload Directory", .onclick = action_upload_dir, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION)); |
| 144 ui_menuitem("Open Properties", .onclick = action_open_properties, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
144 ui_menuitem("Open Properties", .onclick = action_open_properties, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
| 145 ui_menuitem("Open as Text File", .onclick = action_open_properties, .onclickdata = "text/plain", .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
145 ui_menuitem("Open as Text File", .onclick = action_open_properties, .onclickdata = "text/plain", .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION)); |
| 146 ui_menuseparator(); |
146 ui_menuseparator(); |
| 147 ui_menu("Downloads/Uploads") { |
147 ui_menu("Downloads/Uploads") { |
| 148 ui_menu_itemlist(.varname = "transferlist", .getvalue = transfers_getlabel, .onselect = action_transfer_selected); |
148 ui_menu_itemlist(.varname = "transferlist", .getvalue = transfers_getlabel, .onselect = action_transfer_selected); |
| 149 } |
149 } |
| 150 ui_menuseparator(); |
150 ui_menuseparator(); |