Horizon
Loading...
Searching...
No Matches
preferences_window_keys.hpp
1#pragma once
2#include <gtkmm.h>
3#include "imp/action.hpp"
4
5namespace horizon {
6
7class KeySequencesPreferencesEditor : public Gtk::Grid {
8public:
9 KeySequencesPreferencesEditor(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &x,
10 class Preferences &prefs);
11 static KeySequencesPreferencesEditor *create(Preferences &prefs);
12
13private:
14 class Preferences &preferences;
15 class KeySequencesPreferences &keyseq_preferences;
16
17 class TreeColumns : public Gtk::TreeModelColumnRecord {
18 public:
19 TreeColumns()
20 {
21 Gtk::TreeModelColumnRecord::add(name);
22 Gtk::TreeModelColumnRecord::add(keys);
23 Gtk::TreeModelColumnRecord::add(action);
24 }
25 Gtk::TreeModelColumn<Glib::ustring> name;
26 Gtk::TreeModelColumn<Glib::ustring> keys;
27 Gtk::TreeModelColumn<ActionToolID> action;
28 };
29 TreeColumns tree_columns;
30
31 Glib::RefPtr<Gtk::TreeStore> key_sequences_store;
32 Gtk::TreeView *key_sequences_treeview = nullptr;
33
34 Gtk::FlowBox *action_editors = nullptr;
35
36 void update_action_editors();
37 void update_keys();
38 void handle_save();
39 void handle_load();
40 void handle_load_default();
41};
42
43} // namespace horizon
Definition preferences_window_keys.hpp:7
Definition preferences.hpp:48
Definition preferences.hpp:167