|
1 | | -#include "ConfigDialog.h" |
2 | | -#include "PyPlugin.h" |
3 | | - |
4 | | -#include <vector> |
5 | | - |
6 | | -int ID_NEW=wxNewId(); |
7 | | -int ID_COPY=wxNewId(); |
8 | | -int ID_EDIT=wxNewId(); |
9 | | -int ID_DELETE=wxNewId(); |
10 | | -int ID_UP=wxNewId(); |
11 | | -int ID_DOWN=wxNewId(); |
12 | | -int ID_INTERP_LIST=wxNewId(); |
13 | | - |
14 | | - |
15 | | -int ID_NAME=wxNewId(); |
16 | | -int ID_EXEC=wxNewId(); |
17 | | -int ID_BROWSE_EXEC=wxNewId(); |
18 | | -int ID_EXT=wxNewId(); |
19 | | -int ID_ACTIONS=wxNewId(); |
20 | | -int ID_OK=wxNewId(); |
21 | | -int ID_CANCEL=wxNewId(); |
22 | | -int ID_DEBUGCMDLINE=wxNewId(); |
23 | | - |
24 | | - |
25 | | -BEGIN_EVENT_TABLE(ConfigDialog, wxPanel) |
26 | | -// EVT_BUTTON(ID_OK, ConfigDialog::OnApply) |
27 | | -// EVT_BUTTON(ID_CANCEL, ConfigDialog::OnEditCancel) |
28 | | -END_EVENT_TABLE() |
29 | | - |
30 | | -ConfigDialog::ConfigDialog(wxWindow* parent, PyPlugin* plugin) //: cbConfigurationPanel() |
31 | | -{ |
32 | | - m_plugin=plugin; |
33 | | - |
34 | | - cbConfigurationPanel::Create(parent, -1, wxDefaultPosition, wxDefaultSize, |
35 | | - wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER); |
36 | | - |
37 | | - |
38 | | -///////////////////////////////////////////// Form Builder generated code |
39 | | - wxBoxSizer* bSizer12; |
40 | | - bSizer12 = new wxBoxSizer( wxVERTICAL ); |
41 | | - |
42 | | - m_staticText1 = new wxStaticText( this, wxID_DEFAULT, wxT("Python Interpreter Settings"), wxDefaultPosition, wxDefaultSize, 0 ); |
43 | | - bSizer12->Add( m_staticText1, 0, wxALL, 5 ); |
44 | | - |
45 | | - wxBoxSizer* bSizer18; |
46 | | - bSizer18 = new wxBoxSizer( wxVERTICAL ); |
47 | | - |
48 | | - wxBoxSizer* bSizer20; |
49 | | - bSizer20 = new wxBoxSizer( wxHORIZONTAL ); |
50 | | - |
51 | | - m_staticText3 = new wxStaticText( this, wxID_DEFAULT, wxT("Interpreter Executable"), wxDefaultPosition, wxDefaultSize, 0 ); |
52 | | - bSizer20->Add( m_staticText3, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
53 | | - |
54 | | - m_editexec = new wxTextCtrl( this, ID_EXEC, wxT(""), wxDefaultPosition, wxDefaultSize, 0 ); |
55 | | - bSizer20->Add( m_editexec, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
56 | | - |
57 | | - m_butbrowse = new wxButton( this, ID_BROWSE_EXEC, wxT("..."), wxDefaultPosition, wxSize( 30,-1 ), 0 ); |
58 | | - bSizer20->Add( m_butbrowse, 0, wxALIGN_CENTER_VERTICAL, 5 ); |
59 | | - |
60 | | - bSizer18->Add( bSizer20, 0, wxEXPAND, 5 ); |
61 | | - |
62 | | - wxBoxSizer* bSizer21; |
63 | | - bSizer21 = new wxBoxSizer( wxHORIZONTAL ); |
64 | | - |
65 | | - m_staticText5 = new wxStaticText( this, wxID_DEFAULT, wxT("File Extensions (example: *.py;*.pyw)"), wxDefaultPosition, wxDefaultSize, 0 ); |
66 | | - bSizer21->Add( m_staticText5, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
67 | | - |
68 | | - m_editext = new wxTextCtrl( this, ID_EXT, wxT(""), wxDefaultPosition, wxDefaultSize, 0 ); |
69 | | - bSizer21->Add( m_editext, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
70 | | - |
71 | | - bSizer18->Add( bSizer21, 0, wxEXPAND, 5 ); |
72 | | - |
73 | | - wxBoxSizer* bSizer14; |
74 | | - bSizer14 = new wxBoxSizer( wxHORIZONTAL ); |
75 | | - |
76 | | - m_staticText6 = new wxStaticText( this, wxID_DEFAULT, wxT("Debugger: Command Line"), wxDefaultPosition, wxDefaultSize, 0 ); |
77 | | - bSizer14->Add( m_staticText6, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
78 | | - |
79 | | - m_debugcmdline = new wxTextCtrl( this, ID_DEBUGCMDLINE, wxT(""), wxDefaultPosition, wxDefaultSize, 0 ); |
80 | | - bSizer14->Add( m_debugcmdline, 1, wxALL, 5 ); |
81 | | - |
82 | | - bSizer18->Add( bSizer14, 0, wxEXPAND, 5 ); |
83 | | - |
84 | | - m_staticText4 = new wxStaticText( this, wxID_DEFAULT, wxT("Debugger: Input Commands and Output Regular Expressions (NOT IMPLEMENTED)"), wxDefaultPosition, wxDefaultSize, 0 ); |
85 | | - bSizer18->Add( m_staticText4, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
86 | | - |
87 | | - wxBoxSizer* bSizer10; |
88 | | - bSizer10 = new wxBoxSizer( wxHORIZONTAL ); |
89 | | - |
90 | | - m_interplist = new wxListBox( this, ID_INTERP_LIST, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_SINGLE ); |
91 | | - bSizer10->Add( m_interplist, 1, wxEXPAND|wxALL, 5 ); |
92 | | - |
93 | | - m_buttedit = new wxButton( this, ID_EDIT, wxT("Edit..."), wxDefaultPosition, wxDefaultSize, 0 ); |
94 | | - bSizer10->Add( m_buttedit, 0, wxALL, 5 ); |
95 | | - |
96 | | - bSizer18->Add( bSizer10, 1, wxEXPAND, 5 ); |
97 | | - |
98 | | - bSizer12->Add( bSizer18, 1, wxEXPAND, 5 ); |
99 | | - |
100 | | - this->SetSizer( bSizer12 ); |
101 | | -///////////////////////////////////////////////////////////////////////////////// |
102 | | - bSizer12->SetSizeHints(this); |
103 | | - |
104 | | - ReadDialogItems(); |
105 | | -} |
106 | | - |
107 | | - |
108 | | - |
109 | | -ConfigDialog::~ConfigDialog() |
110 | | -{ |
111 | | - //dtor |
112 | | -} |
113 | | - |
114 | | -void ConfigDialog::Edit(wxCommandEvent& event) |
115 | | -{ |
116 | | -} |
117 | | - |
118 | | -void ConfigDialog::OnApply() |
119 | | -{ |
120 | | - WriteDialogItems(); |
121 | | - m_plugin->UpdateConfig(); |
122 | | -} |
123 | | - |
124 | | - |
125 | | -void ConfigDialog::NameChange(wxCommandEvent& event) |
126 | | -{ |
127 | | -} |
128 | | - |
129 | | -void ConfigDialog::ChangeSelection(wxCommandEvent& event) |
130 | | -{ |
131 | | -} |
132 | | - |
133 | | -// Updates the Dialog controls to the stored values for the current interpreter |
134 | | -void ConfigDialog::ReadDialogItems() |
135 | | -{ |
136 | | - ConfigManager* cfg = Manager::Get()->GetConfigManager(_T("PyPlugin")); |
| 1 | +#include "ConfigDialog.h" |
| 2 | +#include "PyPlugin.h" |
| 3 | + |
| 4 | +#include <vector> |
| 5 | + |
| 6 | +int ID_NEW=wxNewId(); |
| 7 | +int ID_COPY=wxNewId(); |
| 8 | +int ID_EDIT=wxNewId(); |
| 9 | +int ID_DELETE=wxNewId(); |
| 10 | +int ID_UP=wxNewId(); |
| 11 | +int ID_DOWN=wxNewId(); |
| 12 | +int ID_INTERP_LIST=wxNewId(); |
| 13 | + |
| 14 | + |
| 15 | +int ID_NAME=wxNewId(); |
| 16 | +int ID_EXEC=wxNewId(); |
| 17 | +int ID_BROWSE_EXEC=wxNewId(); |
| 18 | +int ID_EXT=wxNewId(); |
| 19 | +int ID_ACTIONS=wxNewId(); |
| 20 | +int ID_OK=wxNewId(); |
| 21 | +int ID_CANCEL=wxNewId(); |
| 22 | +int ID_DEBUGCMDLINE=wxNewId(); |
| 23 | + |
| 24 | + |
| 25 | +BEGIN_EVENT_TABLE(ConfigDialog, wxPanel) |
| 26 | +// EVT_BUTTON(ID_OK, ConfigDialog::OnApply) |
| 27 | +// EVT_BUTTON(ID_CANCEL, ConfigDialog::OnEditCancel) |
| 28 | +END_EVENT_TABLE() |
| 29 | + |
| 30 | +ConfigDialog::ConfigDialog(wxWindow* parent, PyPlugin* plugin) //: cbConfigurationPanel() |
| 31 | +{ |
| 32 | + m_plugin=plugin; |
| 33 | + |
| 34 | + cbConfigurationPanel::Create(parent, -1, wxDefaultPosition, wxDefaultSize, |
| 35 | + wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER); |
| 36 | + |
| 37 | + |
| 38 | +///////////////////////////////////////////// Form Builder generated code |
| 39 | + wxBoxSizer* bSizer12; |
| 40 | + bSizer12 = new wxBoxSizer( wxVERTICAL ); |
| 41 | + |
| 42 | + m_staticText1 = new wxStaticText( this, wxID_DEFAULT, wxT("Python Interpreter Settings"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 43 | + bSizer12->Add( m_staticText1, 0, wxALL, 5 ); |
| 44 | + |
| 45 | + wxBoxSizer* bSizer18; |
| 46 | + bSizer18 = new wxBoxSizer( wxVERTICAL ); |
| 47 | + |
| 48 | + wxBoxSizer* bSizer20; |
| 49 | + bSizer20 = new wxBoxSizer( wxHORIZONTAL ); |
| 50 | + |
| 51 | + m_staticText3 = new wxStaticText( this, wxID_DEFAULT, wxT("Interpreter Executable"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 52 | + bSizer20->Add( m_staticText3, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
| 53 | + |
| 54 | + m_editexec = new wxTextCtrl( this, ID_EXEC, wxT(""), wxDefaultPosition, wxDefaultSize, 0 ); |
| 55 | + bSizer20->Add( m_editexec, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
| 56 | + |
| 57 | + m_butbrowse = new wxButton( this, ID_BROWSE_EXEC, wxT("..."), wxDefaultPosition, wxSize( 30,-1 ), 0 ); |
| 58 | + bSizer20->Add( m_butbrowse, 0, wxALIGN_CENTER_VERTICAL, 5 ); |
| 59 | + |
| 60 | + bSizer18->Add( bSizer20, 0, wxEXPAND, 5 ); |
| 61 | + |
| 62 | + wxBoxSizer* bSizer21; |
| 63 | + bSizer21 = new wxBoxSizer( wxHORIZONTAL ); |
| 64 | + |
| 65 | + m_staticText5 = new wxStaticText( this, wxID_DEFAULT, wxT("File Extensions (example: *.py;*.pyw)"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 66 | + bSizer21->Add( m_staticText5, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
| 67 | + |
| 68 | + m_editext = new wxTextCtrl( this, ID_EXT, wxT(""), wxDefaultPosition, wxDefaultSize, 0 ); |
| 69 | + bSizer21->Add( m_editext, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
| 70 | + |
| 71 | + bSizer18->Add( bSizer21, 0, wxEXPAND, 5 ); |
| 72 | + |
| 73 | + wxBoxSizer* bSizer14; |
| 74 | + bSizer14 = new wxBoxSizer( wxHORIZONTAL ); |
| 75 | + |
| 76 | + m_staticText6 = new wxStaticText( this, wxID_DEFAULT, wxT("Debugger: Command Line"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 77 | + bSizer14->Add( m_staticText6, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
| 78 | + |
| 79 | + m_debugcmdline = new wxTextCtrl( this, ID_DEBUGCMDLINE, wxT(""), wxDefaultPosition, wxDefaultSize, 0 ); |
| 80 | + bSizer14->Add( m_debugcmdline, 1, wxALL, 5 ); |
| 81 | + |
| 82 | + bSizer18->Add( bSizer14, 0, wxEXPAND, 5 ); |
| 83 | + |
| 84 | + m_staticText4 = new wxStaticText( this, wxID_DEFAULT, wxT("Debugger: Input Commands and Output Regular Expressions (NOT IMPLEMENTED)"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 85 | + bSizer18->Add( m_staticText4, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); |
| 86 | + |
| 87 | + wxBoxSizer* bSizer10; |
| 88 | + bSizer10 = new wxBoxSizer( wxHORIZONTAL ); |
| 89 | + |
| 90 | + m_interplist = new wxListBox( this, ID_INTERP_LIST, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_SINGLE ); |
| 91 | + bSizer10->Add( m_interplist, 1, wxEXPAND|wxALL, 5 ); |
| 92 | + |
| 93 | + m_buttedit = new wxButton( this, ID_EDIT, wxT("Edit..."), wxDefaultPosition, wxDefaultSize, 0 ); |
| 94 | + bSizer10->Add( m_buttedit, 0, wxALL, 5 ); |
| 95 | + |
| 96 | + bSizer18->Add( bSizer10, 1, wxEXPAND, 5 ); |
| 97 | + |
| 98 | + bSizer12->Add( bSizer18, 1, wxEXPAND, 5 ); |
| 99 | + |
| 100 | + this->SetSizer( bSizer12 ); |
| 101 | +///////////////////////////////////////////////////////////////////////////////// |
| 102 | + bSizer12->SetSizeHints(this); |
| 103 | + |
| 104 | + ReadDialogItems(); |
| 105 | +} |
| 106 | + |
| 107 | + |
| 108 | + |
| 109 | +ConfigDialog::~ConfigDialog() |
| 110 | +{ |
| 111 | + //dtor |
| 112 | +} |
| 113 | + |
| 114 | +void ConfigDialog::Edit(wxCommandEvent& event) |
| 115 | +{ |
| 116 | +} |
| 117 | + |
| 118 | +void ConfigDialog::OnApply() |
| 119 | +{ |
| 120 | + WriteDialogItems(); |
| 121 | + m_plugin->UpdateConfig(); |
| 122 | +} |
| 123 | + |
| 124 | + |
| 125 | +void ConfigDialog::NameChange(wxCommandEvent& event) |
| 126 | +{ |
| 127 | +} |
| 128 | + |
| 129 | +void ConfigDialog::ChangeSelection(wxCommandEvent& event) |
| 130 | +{ |
| 131 | +} |
| 132 | + |
| 133 | +// Updates the Dialog controls to the stored values for the current interpreter |
| 134 | +void ConfigDialog::ReadDialogItems() |
| 135 | +{ |
| 136 | + ConfigManager* cfg = Manager::Get()->GetConfigManager(_T("PyPlugin")); |
137 | 137 | m_debugcmdline->SetValue(cfg->Read(_T("debug_cmd_line"),_T(" -u -m pdb "))); |
138 | 138 | m_editexec->SetValue(cfg->Read(_T("python_executable"),_T("python"))); //TODO: make default command platform specific |
139 | | - m_editext->SetValue(cfg->Read(_T("python_file_extensions"),_T("*.py;*.pyc"))); |
140 | | -} |
141 | | - |
142 | | -// Retrieve configuration values from the dialog widgets and store them appropriately |
143 | | -void ConfigDialog::WriteDialogItems() |
144 | | -{ |
145 | | - ConfigManager* cfg = Manager::Get()->GetConfigManager(_T("PyPlugin")); |
146 | | - cfg->Write(_T("debug_cmd_line"),m_debugcmdline->GetValue()); |
147 | | - cfg->Write(_T("python_executable"),m_editexec->GetValue()); |
148 | | - cfg->Write(_T("python_file_extensions"),m_editext->GetValue()); |
149 | | -} |
150 | | - |
151 | | - |
152 | | -void ConfigDialog::New(wxCommandEvent &event) |
153 | | -{ |
154 | | -} |
155 | | - |
156 | | -void ConfigDialog::Copy(wxCommandEvent &event) |
157 | | -{ |
158 | | -} |
159 | | - |
160 | | - |
161 | | -void ConfigDialog::Delete(wxCommandEvent &event) |
162 | | -{ |
163 | | -} |
164 | | - |
165 | | - |
166 | | -void ConfigDialog::OnEditBrowseExec(wxCommandEvent &event) |
167 | | -{ |
168 | | - wxString interpextension=_T("*.*"); |
169 | | - wxFileDialog *fd=new wxFileDialog(NULL,_T("Choose the interpreter executable"),_T(""),_T(""),interpextension,wxOPEN|wxFILE_MUST_EXIST); |
170 | | - if(fd->ShowModal()==wxID_OK) |
171 | | - { |
172 | | - m_editexec->SetValue(fd->GetPath()); |
173 | | - } |
174 | | - delete fd; |
175 | | -} |
176 | | - |
| 139 | + m_editext->SetValue(cfg->Read(_T("python_file_extensions"),_T("*.py;*.pyc"))); |
| 140 | +} |
| 141 | + |
| 142 | +// Retrieve configuration values from the dialog widgets and store them appropriately |
| 143 | +void ConfigDialog::WriteDialogItems() |
| 144 | +{ |
| 145 | + ConfigManager* cfg = Manager::Get()->GetConfigManager(_T("PyPlugin")); |
| 146 | + cfg->Write(_T("debug_cmd_line"),m_debugcmdline->GetValue()); |
| 147 | + cfg->Write(_T("python_executable"),m_editexec->GetValue()); |
| 148 | + cfg->Write(_T("python_file_extensions"),m_editext->GetValue()); |
| 149 | +} |
| 150 | + |
| 151 | + |
| 152 | +void ConfigDialog::New(wxCommandEvent &event) |
| 153 | +{ |
| 154 | +} |
| 155 | + |
| 156 | +void ConfigDialog::Copy(wxCommandEvent &event) |
| 157 | +{ |
| 158 | +} |
| 159 | + |
| 160 | + |
| 161 | +void ConfigDialog::Delete(wxCommandEvent &event) |
| 162 | +{ |
| 163 | +} |
| 164 | + |
| 165 | + |
| 166 | +void ConfigDialog::OnEditBrowseExec(wxCommandEvent &event) |
| 167 | +{ |
| 168 | + wxString interpextension=_T("*.*"); |
| 169 | + wxFileDialog *fd=new wxFileDialog(NULL,_T("Choose the interpreter executable"),_T(""),_T(""),interpextension,wxOPEN|wxFILE_MUST_EXIST); |
| 170 | + if(fd->ShowModal()==wxID_OK) |
| 171 | + { |
| 172 | + m_editexec->SetValue(fd->GetPath()); |
| 173 | + } |
| 174 | + delete fd; |
| 175 | +} |
| 176 | + |
0 commit comments