Skip to content

Commit b3d2d84

Browse files
authored
Renamed GOMidiListDialog to GOMidiObjectsDialog (#2125)
1 parent abf4bbf commit b3d2d84

File tree

4 files changed

+69
-74
lines changed

4 files changed

+69
-74
lines changed

src/grandorgue/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ gui/dialogs/settings/GOSettingsOptions.cpp
8989
gui/dialogs/settings/GOSettingsOrgans.cpp
9090
gui/dialogs/settings/GOSettingsReverb.cpp
9191
gui/dialogs/settings/GOSettingsTemperaments.cpp
92-
gui/dialogs/GOMidiListDialog.cpp
92+
gui/dialogs/GOMidiObjectsDialog.cpp
9393
gui/dialogs/GONewReleaseDialog.cpp
9494
gui/dialogs/GOProgressDialog.cpp
9595
gui/dialogs/GOPropertiesDialog.cpp

src/grandorgue/GODocument.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
#include "config/GOConfig.h"
1313
#include "document-base/GOView.h"
14-
#include "gui/dialogs/GOMidiListDialog.h"
14+
#include "gui/dialogs/GOMidiObjectstDialog.h"
1515
#include "gui/dialogs/midi-event/GOMidiEventDialog.h"
1616
#include "gui/dialogs/organ-settings/GOOrganSettingsDialog.h"
1717
#include "gui/frames/GOFrame.h"
@@ -182,7 +182,7 @@ void GODocument::ShowMidiList() {
182182
registerWindow(
183183
GODocument::MIDI_LIST,
184184
NULL,
185-
new GOMidiListDialog(
185+
new GOMidiObjectsDialog(
186186
this,
187187
NULL,
188188
m_OrganController->GetConfig().m_DialogSizes,

src/grandorgue/gui/dialogs/GOMidiListDialog.cpp src/grandorgue/gui/dialogs/GOMidiObjectsDialog.cpp

+51-57
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
* (https://www.gnu.org/licenses/old-licenses/gpl-2.0.html).
66
*/
77

8-
#include "GOMidiListDialog.h"
8+
#include "GOMidiObjectstDialog.h"
99

1010
#include <wx/button.h>
1111
#include <wx/sizer.h>
@@ -24,18 +24,18 @@ enum {
2424
ID_BUTTON_LAST = ID_BUTTON + 2,
2525
};
2626

27-
BEGIN_EVENT_TABLE(GOMidiListDialog, GOSimpleDialog)
28-
EVT_GRID_CMD_SELECT_CELL(ID_LIST, GOMidiListDialog::OnObjectClick)
29-
EVT_GRID_CMD_CELL_LEFT_DCLICK(ID_LIST, GOMidiListDialog::OnObjectDoubleClick)
30-
EVT_BUTTON(ID_STATUS, GOMidiListDialog::OnStatus)
31-
EVT_BUTTON(ID_EDIT, GOMidiListDialog::OnEdit)
27+
BEGIN_EVENT_TABLE(GOMidiObjectsDialog, GOSimpleDialog)
28+
EVT_GRID_CMD_SELECT_CELL(ID_LIST, GOMidiObjectsDialog::OnSelectCell)
29+
EVT_GRID_CMD_CELL_LEFT_DCLICK(ID_LIST, GOMidiObjectsDialog::OnObjectDoubleClick)
30+
EVT_BUTTON(ID_EDIT, GOMidiObjectsDialog::OnConfigureButton)
31+
EVT_BUTTON(ID_STATUS, GOMidiObjectsDialog::OnStatusButton)
3232
EVT_COMMAND_RANGE(
33-
ID_BUTTON, ID_BUTTON_LAST, wxEVT_BUTTON, GOMidiListDialog::OnButton)
33+
ID_BUTTON, ID_BUTTON_LAST, wxEVT_BUTTON, GOMidiObjectsDialog::OnActionButton)
3434
END_EVENT_TABLE()
3535

3636
enum { GRID_COL_TYPE = 0, GRID_COL_ELEMENT };
3737

38-
GOMidiListDialog::GOMidiListDialog(
38+
GOMidiObjectsDialog::GOMidiObjectsDialog(
3939
GODocumentBase *doc,
4040
wxWindow *parent,
4141
GODialogSizeSet &dialogSizes,
@@ -53,33 +53,34 @@ GOMidiListDialog::GOMidiListDialog(
5353
wxBoxSizer *topSizer = new wxBoxSizer(wxVERTICAL);
5454
topSizer->AddSpacer(5);
5555

56-
m_Objects = new GOGrid(this, ID_LIST, wxDefaultPosition, wxSize(250, 200));
57-
m_Objects->CreateGrid(0, 2, wxGrid::wxGridSelectRows);
58-
m_Objects->HideRowLabels();
59-
m_Objects->EnableEditing(false);
60-
m_Objects->SetColLabelValue(GRID_COL_TYPE, _("Type"));
61-
m_Objects->SetColLabelValue(GRID_COL_ELEMENT, _("Element"));
62-
m_Objects->SetColSize(GRID_COL_TYPE, 100);
63-
m_Objects->SetColSize(GRID_COL_ELEMENT, 100);
56+
m_ObjectsGrid
57+
= new GOGrid(this, ID_LIST, wxDefaultPosition, wxSize(250, 200));
58+
m_ObjectsGrid->CreateGrid(0, 2, wxGrid::wxGridSelectRows);
59+
m_ObjectsGrid->HideRowLabels();
60+
m_ObjectsGrid->EnableEditing(false);
61+
m_ObjectsGrid->SetColLabelValue(GRID_COL_TYPE, _("Type"));
62+
m_ObjectsGrid->SetColLabelValue(GRID_COL_ELEMENT, _("Element"));
63+
m_ObjectsGrid->SetColSize(GRID_COL_TYPE, 100);
64+
m_ObjectsGrid->SetColSize(GRID_COL_ELEMENT, 100);
6465

65-
topSizer->Add(m_Objects, 1, wxEXPAND | wxALL, 5);
66+
topSizer->Add(m_ObjectsGrid, 1, wxEXPAND | wxALL, 5);
6667

6768
wxBoxSizer *sizer = new wxBoxSizer(wxHORIZONTAL);
6869
for (unsigned id = ID_BUTTON; id <= ID_BUTTON_LAST; id++) {
6970
wxButton *button = new wxButton(this, id, wxEmptyString);
7071
sizer->Add(button, 0, id == ID_BUTTON ? wxRESERVE_SPACE_EVEN_IF_HIDDEN : 0);
7172
button->Hide();
72-
m_Buttons.push_back(button);
73+
m_ActionButtons.push_back(button);
7374
}
7475
topSizer->Add(sizer, 0, wxALIGN_LEFT | wxALL, 1);
7576

7677
wxBoxSizer *buttons = new wxBoxSizer(wxHORIZONTAL);
77-
m_Edit = new wxButton(this, ID_EDIT, _("C&onfigure..."));
78-
m_Edit->Disable();
79-
buttons->Add(m_Edit);
80-
m_Status = new wxButton(this, ID_STATUS, _("&Status"));
81-
m_Status->Disable();
82-
buttons->Add(m_Status);
78+
m_ConfigureButton = new wxButton(this, ID_EDIT, _("C&onfigure..."));
79+
m_ConfigureButton->Disable();
80+
buttons->Add(m_ConfigureButton);
81+
m_StatusButton = new wxButton(this, ID_STATUS, _("&Status"));
82+
m_StatusButton->Disable();
83+
buttons->Add(m_StatusButton);
8384
topSizer->Add(buttons, 0, wxALIGN_RIGHT | wxALL, 1);
8485

8586
topSizer->AddSpacer(5);
@@ -88,77 +89,70 @@ GOMidiListDialog::GOMidiListDialog(
8889

8990
static const wxString WX_GRID_MIDI_OBJECTS = wxT("GridMidiObjects");
9091

91-
void GOMidiListDialog::ApplyAdditionalSizes(
92+
void GOMidiObjectsDialog::ApplyAdditionalSizes(
9293
const GOAdditionalSizeKeeper &sizeKeeper) {
9394
GOAdditionalSizeKeeperProxy proxyMidiObjects(
9495
const_cast<GOAdditionalSizeKeeper &>(sizeKeeper), WX_GRID_MIDI_OBJECTS);
9596

96-
m_Objects->ApplyColumnSizes(proxyMidiObjects);
97+
m_ObjectsGrid->ApplyColumnSizes(proxyMidiObjects);
9798
}
9899

99-
void GOMidiListDialog::CaptureAdditionalSizes(
100+
void GOMidiObjectsDialog::CaptureAdditionalSizes(
100101
GOAdditionalSizeKeeper &sizeKeeper) const {
101102
GOAdditionalSizeKeeperProxy proxyMidiObjects(
102103
sizeKeeper, WX_GRID_MIDI_OBJECTS);
103104

104-
m_Objects->CaptureColumnSizes(proxyMidiObjects);
105+
m_ObjectsGrid->CaptureColumnSizes(proxyMidiObjects);
105106
}
106107

107-
bool GOMidiListDialog::TransferDataToWindow() {
108-
unsigned oldRowCnt = m_Objects->GetNumberRows();
108+
bool GOMidiObjectsDialog::TransferDataToWindow() {
109+
unsigned oldRowCnt = m_ObjectsGrid->GetNumberRows();
109110
unsigned newRowCnt = r_MidiObjects.size();
110111

111112
if (oldRowCnt)
112-
m_Objects->DeleteRows(0, oldRowCnt);
113+
m_ObjectsGrid->DeleteRows(0, oldRowCnt);
113114

114-
m_Objects->AppendRows(newRowCnt);
115+
m_ObjectsGrid->AppendRows(newRowCnt);
115116
for (unsigned i = 0; i < newRowCnt; i++) {
116117
GOMidiObject *obj = r_MidiObjects[i];
117118

118-
m_Objects->SetCellValue(i, GRID_COL_TYPE, obj->GetMidiTypeName());
119-
m_Objects->SetCellValue(i, GRID_COL_ELEMENT, obj->GetName());
119+
m_ObjectsGrid->SetCellValue(i, GRID_COL_TYPE, obj->GetMidiTypeName());
120+
m_ObjectsGrid->SetCellValue(i, GRID_COL_ELEMENT, obj->GetName());
120121
}
121122
return true;
122123
}
123124

124-
GOMidiObject *GOMidiListDialog::GetSelectedObject() const {
125-
return r_MidiObjects[m_Objects->GetGridCursorRow()];
125+
GOMidiObject *GOMidiObjectsDialog::GetSelectedObject() const {
126+
return r_MidiObjects[m_ObjectsGrid->GetGridCursorRow()];
126127
}
127128

128-
void GOMidiListDialog::OnButton(wxCommandEvent &event) {
129-
GOMidiObject *obj = GetSelectedObject();
130-
obj->TriggerElementActions(event.GetId() - ID_BUTTON);
129+
void GOMidiObjectsDialog::ConfigureSelectedObject() {
130+
GetSelectedObject()->ShowConfigDialog();
131131
}
132132

133-
void GOMidiListDialog::OnObjectClick(wxGridEvent &event) {
133+
void GOMidiObjectsDialog::OnSelectCell(wxGridEvent &event) {
134134
int index = event.GetRow();
135135
bool isAnySelected = index >= 0;
136136

137-
m_Edit->Enable(isAnySelected);
138-
m_Status->Enable(isAnySelected);
137+
m_ConfigureButton->Enable(isAnySelected);
138+
m_StatusButton->Enable(isAnySelected);
139139
if (isAnySelected) {
140-
m_Objects->SelectRow(index);
140+
m_ObjectsGrid->SelectRow(index);
141141
GOMidiObject *obj = r_MidiObjects[index];
142142
std::vector<wxString> actions = obj->GetElementActions();
143143

144-
for (unsigned i = 0; i < m_Buttons.size(); i++)
144+
for (unsigned i = 0; i < m_ActionButtons.size(); i++)
145145
if (i < actions.size()) {
146-
m_Buttons[i]->SetLabel(actions[i]);
147-
m_Buttons[i]->Show();
146+
m_ActionButtons[i]->SetLabel(actions[i]);
147+
m_ActionButtons[i]->Show();
148148
} else
149-
m_Buttons[i]->Hide();
149+
m_ActionButtons[i]->Hide();
150150
}
151151
Layout();
152152
event.StopPropagation();
153153
}
154154

155-
void GOMidiListDialog::OnObjectDoubleClick(wxGridEvent &event) {
156-
GOMidiObject *obj = GetSelectedObject();
157-
158-
obj->ShowConfigDialog();
159-
}
160-
161-
void GOMidiListDialog::OnStatus(wxCommandEvent &event) {
155+
void GOMidiObjectsDialog::OnStatusButton(wxCommandEvent &event) {
162156
GOMidiObject *obj = GetSelectedObject();
163157
wxString status = obj->GetElementStatus();
164158

@@ -168,7 +162,7 @@ void GOMidiListDialog::OnStatus(wxCommandEvent &event) {
168162
wxOK);
169163
}
170164

171-
void GOMidiListDialog::OnEdit(wxCommandEvent &event) {
172-
wxGridEvent listevent;
173-
OnObjectDoubleClick(listevent);
165+
void GOMidiObjectsDialog::OnActionButton(wxCommandEvent &event) {
166+
GOMidiObject *obj = GetSelectedObject();
167+
obj->TriggerElementActions(event.GetId() - ID_BUTTON);
174168
}

src/grandorgue/gui/dialogs/GOMidiListDialog.h src/grandorgue/gui/dialogs/GOMidiObjectstDialog.h

+15-14
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
* (https://www.gnu.org/licenses/old-licenses/gpl-2.0.html).
66
*/
77

8-
#ifndef GOMIDILISTDIALOG_H
9-
#define GOMIDILISTDIALOG_H
8+
#ifndef GOMIDIOBJECTSDIALOG_H
9+
#define GOMIDIOBJECTSDIALOG_H
1010

1111
#include <vector>
1212

@@ -19,17 +19,17 @@ class wxGridEvent;
1919
class GOGrid;
2020
class GOMidiObject;
2121

22-
class GOMidiListDialog : public GOSimpleDialog, public GOView {
22+
class GOMidiObjectsDialog : public GOSimpleDialog, public GOView {
2323
private:
2424
const std::vector<GOMidiObject *> &r_MidiObjects;
2525

26-
GOGrid *m_Objects;
27-
wxButton *m_Edit;
28-
wxButton *m_Status;
29-
std::vector<wxButton *> m_Buttons;
26+
GOGrid *m_ObjectsGrid;
27+
wxButton *m_ConfigureButton;
28+
wxButton *m_StatusButton;
29+
std::vector<wxButton *> m_ActionButtons;
3030

3131
public:
32-
GOMidiListDialog(
32+
GOMidiObjectsDialog(
3333
GODocumentBase *doc,
3434
wxWindow *parent,
3535
GODialogSizeSet &dialogSizes,
@@ -43,14 +43,15 @@ class GOMidiListDialog : public GOSimpleDialog, public GOView {
4343
bool TransferDataToWindow() override;
4444

4545
GOMidiObject *GetSelectedObject() const;
46+
void ConfigureSelectedObject();
4647

47-
void OnObjectClick(wxGridEvent &event);
48-
void OnObjectDoubleClick(wxGridEvent &event);
49-
void OnEdit(wxCommandEvent &event);
50-
void OnStatus(wxCommandEvent &event);
51-
void OnButton(wxCommandEvent &event);
48+
void OnSelectCell(wxGridEvent &event);
49+
void OnObjectDoubleClick(wxGridEvent &event) { ConfigureSelectedObject(); }
50+
void OnConfigureButton(wxCommandEvent &event) { ConfigureSelectedObject(); }
51+
void OnStatusButton(wxCommandEvent &event);
52+
void OnActionButton(wxCommandEvent &event);
5253

5354
DECLARE_EVENT_TABLE()
5455
};
5556

56-
#endif
57+
#endif // GOMIDIOBJECTSDIALOG_H

0 commit comments

Comments
 (0)