@@ -114,17 +114,22 @@ namespace lsp
114
114
protected:
115
115
bool bResizable;
116
116
117
- tk::WidgetContainer *wContent; // The main box containing all widgets
118
- tk::Window *wGreeting; // Greeting message window
119
- tk::Window *wAbout; // About message window
120
- tk::Menu *wMenu; // Menu
121
- tk::Menu *wUIScaling; // UI Scaling menu
122
- tk::Menu *wFontScaling; // UI Scaling menu
123
- tk::Menu *wResetSettings; // Reset settings menu
124
- tk::FileDialog *wExport; // Export settings dialog
125
- tk::FileDialog *wImport; // Import settings dialog
126
- tk::MenuItem *wPreferHost; // Prefer host menu item
127
- tk::CheckBox *wRelPaths; // Relative path checkbox
117
+ ctl::Window *pUserPaths; // User paths controller
118
+
119
+ tk::WidgetContainer *wContent; // The main box containing all widgets
120
+ tk::Window *wGreeting; // Greeting message window
121
+ tk::Window *wAbout; // About message window
122
+ tk::Window *wUserPaths; // User paths configuration
123
+ tk::Menu *wMenu; // Menu
124
+ tk::Menu *wUIScaling; // UI Scaling menu
125
+ tk::Menu *wFontScaling; // UI Scaling menu
126
+ tk::Menu *wResetSettings; // Reset settings menu
127
+ tk::FileDialog *wExport; // Export settings dialog
128
+ tk::FileDialog *wImport; // Import settings dialog
129
+ tk::MenuItem *wPreferHost; // Prefer host menu item
130
+ tk::MenuItem *wKnobScaleEnable; // Enable knob scale actions
131
+ tk::MenuItem *wOverrideHydrogen; // Override Hydrogen kits feature
132
+ tk::CheckBox *wRelPaths; // Relative path checkbox
128
133
129
134
ui::IPort *pPVersion;
130
135
ui::IPort *pPBypass;
@@ -136,6 +141,8 @@ namespace lsp
136
141
ui::IPort *pUIScalingHost;
137
142
ui::IPort *pUIFontScaling;
138
143
ui::IPort *pVisualSchema;
144
+ ui::IPort *pKnobScaleEnable;
145
+ ui::IPort *pOverrideHydrogen;
139
146
140
147
ConfigSink *pConfigSink; // Configuration sink
141
148
@@ -164,7 +171,7 @@ namespace lsp
164
171
static status_t slot_export_settings_to_clipboard (tk::Widget *sender, void *ptr, void *data);
165
172
static status_t slot_import_settings_from_file (tk::Widget *sender, void *ptr, void *data);
166
173
static status_t slot_import_settings_from_clipboard (tk::Widget *sender, void *ptr, void *data);
167
- static status_t slot_reset_settings (tk::Widget *sender, void *ptr, void *data);\
174
+ static status_t slot_reset_settings (tk::Widget *sender, void *ptr, void *data);
168
175
static status_t slot_confirm_reset_settings (tk::Widget *sender, void *ptr, void *data);
169
176
170
177
static status_t slot_debug_dump (tk::Widget *sender, void *ptr, void *data);
@@ -199,6 +206,13 @@ namespace lsp
199
206
static status_t slot_scale_mouse_up (tk::Widget *sender, void *ptr, void *data);
200
207
201
208
static status_t slot_relative_path_changed (tk::Widget *sender, void *ptr, void *data);
209
+ static status_t slot_enable_slot_scale_changed (tk::Widget *sender, void *ptr, void *data);
210
+
211
+ static status_t slot_show_user_paths_dialog (tk::Widget *sender, void *ptr, void *data);
212
+ static status_t slot_user_paths_submit (tk::Widget *sender, void *ptr, void *data);
213
+ static status_t slot_user_paths_close (tk::Widget *sender, void *ptr, void *data);
214
+
215
+ static status_t slot_override_hydrogen_kits_changed (tk::Widget *sender, void *ptr, void *data);
202
216
203
217
protected:
204
218
static i18n::IDictionary *get_default_dict (tk::Widget *src);
@@ -209,6 +223,7 @@ namespace lsp
209
223
void do_destroy ();
210
224
status_t show_greeting_window ();
211
225
status_t show_about_window ();
226
+ status_t show_user_paths_window ();
212
227
status_t locate_window ();
213
228
status_t show_menu (tk::Widget *menu, tk::Widget *actor, void *data);
214
229
tk::Label *create_label (tk::WidgetContainer *dst, const char *key, const char *style_name);
@@ -223,6 +238,7 @@ namespace lsp
223
238
status_t init_scaling_support (tk::Menu *menu);
224
239
status_t init_font_scaling_support (tk::Menu *menu);
225
240
status_t init_visual_schema_support (tk::Menu *menu);
241
+ status_t init_ui_behaviour (tk::Menu *menu);
226
242
status_t init_presets (tk::Menu *menu);
227
243
status_t scan_presets (const char *location, lltl::darray<resource::resource_t > *presets);
228
244
status_t create_main_menu ();
@@ -232,6 +248,13 @@ namespace lsp
232
248
void sync_ui_scaling ();
233
249
void sync_font_scaling ();
234
250
void sync_visual_schemas ();
251
+ void sync_knob_scale_enabled ();
252
+ void sync_override_hydrogen ();
253
+ void apply_user_paths_settings ();
254
+ void read_path_param (tk::String *value, const char *port_id);
255
+ void read_bool_param (tk::Boolean *value, const char *port_id);
256
+ void commit_path_param (tk::String *value, const char *port_id);
257
+ void commit_bool_param (tk::Boolean *value, const char *port_id);
235
258
void bind_trigger (const char *uid, tk::slot_t ev, tk::event_handler_t handler);
236
259
237
260
status_t init_context (ui::UIContext *ctx);
0 commit comments