@@ -43,57 +43,24 @@ MultiView::MultiView()
43
43
m_table_view = add<TableView>();
44
44
m_columns_view = add<ColumnsView>();
45
45
46
- m_icon_view->on_activation = [&](auto & index) {
47
- if (on_activation)
48
- on_activation (index);
49
- };
50
- m_columns_view->on_activation = [&](auto & index) {
51
- if (on_activation)
52
- on_activation (index);
53
- };
54
- m_table_view->on_activation = [&](auto & index) {
55
- if (on_activation)
56
- on_activation (index);
57
- };
58
-
59
- m_table_view->on_selection_change = [this ] {
60
- if (on_selection_change)
61
- on_selection_change ();
62
- };
63
- m_icon_view->on_selection_change = [this ] {
64
- if (on_selection_change)
65
- on_selection_change ();
66
- };
67
- m_columns_view->on_selection_change = [this ] {
68
- if (on_selection_change)
69
- on_selection_change ();
70
- };
71
-
72
- m_table_view->on_context_menu_request = [this ](auto & index, auto & event) {
73
- if (on_context_menu_request)
74
- on_context_menu_request (index, event);
75
- };
76
- m_icon_view->on_context_menu_request = [this ](auto & index, auto & event) {
77
- if (on_context_menu_request)
78
- on_context_menu_request (index, event);
79
- };
80
- m_columns_view->on_context_menu_request = [this ](auto & index, auto & event) {
81
- if (on_context_menu_request)
82
- on_context_menu_request (index, event);
83
- };
84
-
85
- m_table_view->on_drop = [this ](auto & index, auto & event) {
86
- if (on_drop)
87
- on_drop (index, event);
88
- };
89
- m_icon_view->on_drop = [this ](auto & index, auto & event) {
90
- if (on_drop)
91
- on_drop (index, event);
92
- };
93
- m_columns_view->on_drop = [this ](auto & index, auto & event) {
94
- if (on_drop)
95
- on_drop (index, event);
96
- };
46
+ for_each_view_implementation ([&](auto & view) {
47
+ view.on_activation = [this ](auto & index) {
48
+ if (on_activation)
49
+ on_activation (index);
50
+ };
51
+ view.on_selection_change = [this ] {
52
+ if (on_selection_change)
53
+ on_selection_change ();
54
+ };
55
+ view.on_context_menu_request = [this ](auto & index, auto & event) {
56
+ if (on_context_menu_request)
57
+ on_context_menu_request (index, event);
58
+ };
59
+ view.on_drop = [this ](auto & index, auto & event) {
60
+ if (on_drop)
61
+ on_drop (index, event);
62
+ };
63
+ });
97
64
98
65
build_actions ();
99
66
set_view_mode (ViewMode::Icon);
0 commit comments