Code::Blocks  SVN r11506
multiselectdlg.h
Go to the documentation of this file.
1 /*
2  * This file is part of the Code::Blocks IDE and licensed under the GNU Lesser General Public License, version 3
3  * http://www.gnu.org/licenses/lgpl-3.0.html
4  */
5 
6 #ifndef MULTISELECTDLG_H
7 #define MULTISELECTDLG_H
8 
9 #include <wx/intl.h>
10 #include <wx/string.h>
11 #include <wx/dynarray.h>
12 #include "scrollingdialog.h"
13 
15 {
16  public:
17  MultiSelectDlg(wxWindow* parent,
18  const wxArrayString& items,
19  const wxString& wildcard,
20  const wxString& label = _("Select items:"),
21  const wxString& title = _("Multiple selection"));
22  MultiSelectDlg(wxWindow* parent,
23  const wxArrayString& items,
24  bool selectall = false,
25  const wxString& label = _("Select items:"),
26  const wxString& title = _("Multiple selection"));
27  ~MultiSelectDlg() override;
28 
29  wxArrayString GetSelectedStrings() const;
30  wxArrayInt GetSelectedIndices() const;
31 
32  void SelectWildCard(const wxString& wild, bool select = true, bool clearOld = false);
33  protected:
34  void Init(const wxArrayString& items, const wxString& wildcard);
35  void UpdateStatus();
36  void OnWildcard(wxCommandEvent& event);
37  void OnToggle(wxCommandEvent& event);
38  void OnSelectAll(wxCommandEvent& event);
39  void OnDeselectAll(wxCommandEvent& event);
40  void OnItemToggle(wxCommandEvent& event);
41  private:
42  DECLARE_EVENT_TABLE();
43 };
44 
45 #endif // MULTISELECTDLG_H
#define DLLIMPORT
Definition: settings.h:16
const wxString & _(const wxString &string)
wxArray< int > wxArrayInt