| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464 | 
							- /////////////////////////////////////////////////////////////////////////////
 
- // Name:        wx/generic/choicdgg.h
 
- // Purpose:     Generic choice dialogs
 
- // Author:      Julian Smart
 
- // Modified by: 03.11.00: VZ to add wxArrayString and multiple sel functions
 
- // Created:     01/02/97
 
- // Copyright:   (c) wxWidgets team
 
- // Licence:     wxWindows licence
 
- /////////////////////////////////////////////////////////////////////////////
 
- #ifndef _WX_GENERIC_CHOICDGG_H_
 
- #define _WX_GENERIC_CHOICDGG_H_
 
- #include "wx/dynarray.h"
 
- #include "wx/dialog.h"
 
- class WXDLLIMPEXP_FWD_CORE wxListBoxBase;
 
- // ----------------------------------------------------------------------------
 
- // some (ugly...) constants
 
- // ----------------------------------------------------------------------------
 
- #define wxCHOICE_HEIGHT 150
 
- #define wxCHOICE_WIDTH 200
 
- #ifdef __WXWINCE__
 
- #define wxCHOICEDLG_STYLE \
 
-     (wxDEFAULT_DIALOG_STYLE | wxOK | wxCANCEL | wxCENTRE)
 
- #else
 
- #define wxCHOICEDLG_STYLE \
 
-     (wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxOK | wxCANCEL | wxCENTRE)
 
- #endif
 
- // ----------------------------------------------------------------------------
 
- // wxAnyChoiceDialog: a base class for dialogs containing a listbox
 
- // ----------------------------------------------------------------------------
 
- class WXDLLIMPEXP_CORE wxAnyChoiceDialog : public wxDialog
 
- {
 
- public:
 
-     wxAnyChoiceDialog() { }
 
-     wxAnyChoiceDialog(wxWindow *parent,
 
-                       const wxString& message,
 
-                       const wxString& caption,
 
-                       int n, const wxString *choices,
 
-                       long styleDlg = wxCHOICEDLG_STYLE,
 
-                       const wxPoint& pos = wxDefaultPosition,
 
-                       long styleLbox = wxLB_ALWAYS_SB)
 
-     {
 
-         (void)Create(parent, message, caption, n, choices,
 
-                      styleDlg, pos, styleLbox);
 
-     }
 
-     wxAnyChoiceDialog(wxWindow *parent,
 
-                       const wxString& message,
 
-                       const wxString& caption,
 
-                       const wxArrayString& choices,
 
-                       long styleDlg = wxCHOICEDLG_STYLE,
 
-                       const wxPoint& pos = wxDefaultPosition,
 
-                       long styleLbox = wxLB_ALWAYS_SB)
 
-     {
 
-         (void)Create(parent, message, caption, choices,
 
-                      styleDlg, pos, styleLbox);
 
-     }
 
-     bool Create(wxWindow *parent,
 
-                 const wxString& message,
 
-                 const wxString& caption,
 
-                 int n, const wxString *choices,
 
-                 long styleDlg = wxCHOICEDLG_STYLE,
 
-                 const wxPoint& pos = wxDefaultPosition,
 
-                 long styleLbox = wxLB_ALWAYS_SB);
 
-     bool Create(wxWindow *parent,
 
-                 const wxString& message,
 
-                 const wxString& caption,
 
-                 const wxArrayString& choices,
 
-                 long styleDlg = wxCHOICEDLG_STYLE,
 
-                 const wxPoint& pos = wxDefaultPosition,
 
-                 long styleLbox = wxLB_ALWAYS_SB);
 
- protected:
 
-     wxListBoxBase *m_listbox;
 
-     virtual wxListBoxBase *CreateList(int n,
 
-                                       const wxString *choices,
 
-                                       long styleLbox);
 
-     wxDECLARE_NO_COPY_CLASS(wxAnyChoiceDialog);
 
- };
 
- // ----------------------------------------------------------------------------
 
- // wxSingleChoiceDialog: a dialog with single selection listbox
 
- // ----------------------------------------------------------------------------
 
- class WXDLLIMPEXP_CORE wxSingleChoiceDialog : public wxAnyChoiceDialog
 
- {
 
- public:
 
-     wxSingleChoiceDialog()
 
-     {
 
-         m_selection = -1;
 
-     }
 
-     wxSingleChoiceDialog(wxWindow *parent,
 
-                          const wxString& message,
 
-                          const wxString& caption,
 
-                          int n,
 
-                          const wxString *choices,
 
-                          void **clientData = NULL,
 
-                          long style = wxCHOICEDLG_STYLE,
 
-                          const wxPoint& pos = wxDefaultPosition)
 
-     {
 
-         Create(parent, message, caption, n, choices, clientData, style, pos);
 
-     }
 
-     wxSingleChoiceDialog(wxWindow *parent,
 
-                          const wxString& message,
 
-                          const wxString& caption,
 
-                          const wxArrayString& choices,
 
-                          void **clientData = NULL,
 
-                          long style = wxCHOICEDLG_STYLE,
 
-                          const wxPoint& pos = wxDefaultPosition)
 
-     {
 
-         Create(parent, message, caption, choices, clientData, style, pos);
 
-     }
 
-     bool Create(wxWindow *parent,
 
-                 const wxString& message,
 
-                 const wxString& caption,
 
-                 int n,
 
-                 const wxString *choices,
 
-                 void **clientData = NULL,
 
-                 long style = wxCHOICEDLG_STYLE,
 
-                 const wxPoint& pos = wxDefaultPosition);
 
-     bool Create(wxWindow *parent,
 
-                 const wxString& message,
 
-                 const wxString& caption,
 
-                 const wxArrayString& choices,
 
-                 void **clientData = NULL,
 
-                 long style = wxCHOICEDLG_STYLE,
 
-                 const wxPoint& pos = wxDefaultPosition);
 
-     void SetSelection(int sel);
 
-     int GetSelection() const { return m_selection; }
 
-     wxString GetStringSelection() const { return m_stringSelection; }
 
-     void* GetSelectionData() const { return m_clientData; }
 
- #if WXWIN_COMPATIBILITY_2_8
 
-     // Deprecated overloads taking "char**" client data.
 
-     wxDEPRECATED_CONSTRUCTOR
 
-     (
 
-         wxSingleChoiceDialog(wxWindow *parent,
 
-                              const wxString& message,
 
-                              const wxString& caption,
 
-                              int n,
 
-                              const wxString *choices,
 
-                              char **clientData,
 
-                              long style = wxCHOICEDLG_STYLE,
 
-                              const wxPoint& pos = wxDefaultPosition)
 
-     )
 
-     {
 
-         Create(parent, message, caption, n, choices,
 
-                (void**)clientData, style, pos);
 
-     }
 
-     wxDEPRECATED_CONSTRUCTOR
 
-     (
 
-         wxSingleChoiceDialog(wxWindow *parent,
 
-                              const wxString& message,
 
-                              const wxString& caption,
 
-                              const wxArrayString& choices,
 
-                              char **clientData,
 
-                              long style = wxCHOICEDLG_STYLE,
 
-                              const wxPoint& pos = wxDefaultPosition)
 
-     )
 
-     {
 
-         Create(parent, message, caption, choices,
 
-                (void**)clientData, style, pos);
 
-     }
 
-     wxDEPRECATED_INLINE
 
-     (
 
-         bool Create(wxWindow *parent,
 
-                     const wxString& message,
 
-                     const wxString& caption,
 
-                     int n,
 
-                     const wxString *choices,
 
-                     char **clientData,
 
-                     long style = wxCHOICEDLG_STYLE,
 
-                     const wxPoint& pos = wxDefaultPosition),
 
-         return Create(parent, message, caption, n, choices,
 
-                       (void**)clientData, style, pos);
 
-     )
 
-     wxDEPRECATED_INLINE
 
-     (
 
-         bool Create(wxWindow *parent,
 
-                     const wxString& message,
 
-                     const wxString& caption,
 
-                     const wxArrayString& choices,
 
-                     char **clientData,
 
-                     long style = wxCHOICEDLG_STYLE,
 
-                     const wxPoint& pos = wxDefaultPosition),
 
-         return Create(parent, message, caption, choices,
 
-                       (void**)clientData, style, pos);
 
-     )
 
-     // NB: no need to make it return wxChar, it's untyped
 
-     wxDEPRECATED_ACCESSOR
 
-     (
 
-         char* GetSelectionClientData() const,
 
-         (char*)GetSelectionData()
 
-     )
 
- #endif // WXWIN_COMPATIBILITY_2_8
 
-     // implementation from now on
 
-     void OnOK(wxCommandEvent& event);
 
- #ifndef __SMARTPHONE__
 
-     void OnListBoxDClick(wxCommandEvent& event);
 
- #endif
 
- #ifdef __WXWINCE__
 
-     void OnJoystickButtonDown(wxJoystickEvent& event);
 
- #endif
 
- protected:
 
-     int         m_selection;
 
-     wxString    m_stringSelection;
 
-     void DoChoice();
 
- private:
 
-     DECLARE_DYNAMIC_CLASS_NO_COPY(wxSingleChoiceDialog)
 
-     DECLARE_EVENT_TABLE()
 
- };
 
- // ----------------------------------------------------------------------------
 
- // wxMultiChoiceDialog: a dialog with multi selection listbox
 
- // ----------------------------------------------------------------------------
 
- class WXDLLIMPEXP_CORE wxMultiChoiceDialog : public wxAnyChoiceDialog
 
- {
 
- public:
 
-     wxMultiChoiceDialog() { }
 
-     wxMultiChoiceDialog(wxWindow *parent,
 
-                         const wxString& message,
 
-                         const wxString& caption,
 
-                         int n,
 
-                         const wxString *choices,
 
-                         long style = wxCHOICEDLG_STYLE,
 
-                         const wxPoint& pos = wxDefaultPosition)
 
-     {
 
-         (void)Create(parent, message, caption, n, choices, style, pos);
 
-     }
 
-     wxMultiChoiceDialog(wxWindow *parent,
 
-                         const wxString& message,
 
-                         const wxString& caption,
 
-                         const wxArrayString& choices,
 
-                         long style = wxCHOICEDLG_STYLE,
 
-                         const wxPoint& pos = wxDefaultPosition)
 
-     {
 
-         (void)Create(parent, message, caption, choices, style, pos);
 
-     }
 
-     bool Create(wxWindow *parent,
 
-                 const wxString& message,
 
-                 const wxString& caption,
 
-                 int n,
 
-                 const wxString *choices,
 
-                 long style = wxCHOICEDLG_STYLE,
 
-                 const wxPoint& pos = wxDefaultPosition);
 
-     bool Create(wxWindow *parent,
 
-                 const wxString& message,
 
-                 const wxString& caption,
 
-                 const wxArrayString& choices,
 
-                 long style = wxCHOICEDLG_STYLE,
 
-                 const wxPoint& pos = wxDefaultPosition);
 
-     void SetSelections(const wxArrayInt& selections);
 
-     wxArrayInt GetSelections() const { return m_selections; }
 
-     // implementation from now on
 
-     virtual bool TransferDataFromWindow();
 
- protected:
 
- #if wxUSE_CHECKLISTBOX
 
-     virtual wxListBoxBase *CreateList(int n,
 
-                                       const wxString *choices,
 
-                                       long styleLbox);
 
- #endif // wxUSE_CHECKLISTBOX
 
-     wxArrayInt m_selections;
 
- private:
 
-     DECLARE_DYNAMIC_CLASS_NO_COPY(wxMultiChoiceDialog)
 
- };
 
- // ----------------------------------------------------------------------------
 
- // wrapper functions which can be used to get selection(s) from the user
 
- // ----------------------------------------------------------------------------
 
- // get the user selection as a string
 
- WXDLLIMPEXP_CORE wxString wxGetSingleChoice(const wxString& message,
 
-                                        const wxString& caption,
 
-                                        const wxArrayString& choices,
 
-                                        wxWindow *parent = NULL,
 
-                                        int x = wxDefaultCoord,
 
-                                        int y = wxDefaultCoord,
 
-                                        bool centre = true,
 
-                                        int width = wxCHOICE_WIDTH,
 
-                                        int height = wxCHOICE_HEIGHT,
 
-                                        int initialSelection = 0);
 
- WXDLLIMPEXP_CORE wxString wxGetSingleChoice(const wxString& message,
 
-                                        const wxString& caption,
 
-                                        int n, const wxString *choices,
 
-                                        wxWindow *parent = NULL,
 
-                                        int x = wxDefaultCoord,
 
-                                        int y = wxDefaultCoord,
 
-                                        bool centre = true,
 
-                                        int width = wxCHOICE_WIDTH,
 
-                                        int height = wxCHOICE_HEIGHT,
 
-                                        int initialSelection = 0);
 
- WXDLLIMPEXP_CORE wxString wxGetSingleChoice(const wxString& message,
 
-                                             const wxString& caption,
 
-                                             const wxArrayString& choices,
 
-                                             int initialSelection,
 
-                                             wxWindow *parent = NULL);
 
- WXDLLIMPEXP_CORE wxString wxGetSingleChoice(const wxString& message,
 
-                                             const wxString& caption,
 
-                                             int n, const wxString *choices,
 
-                                             int initialSelection,
 
-                                             wxWindow *parent = NULL);
 
- // Same as above but gets position in list of strings, instead of string,
 
- // or -1 if no selection
 
- WXDLLIMPEXP_CORE int wxGetSingleChoiceIndex(const wxString& message,
 
-                                        const wxString& caption,
 
-                                        const wxArrayString& choices,
 
-                                        wxWindow *parent = NULL,
 
-                                        int x = wxDefaultCoord,
 
-                                        int y = wxDefaultCoord,
 
-                                        bool centre = true,
 
-                                        int width = wxCHOICE_WIDTH,
 
-                                        int height = wxCHOICE_HEIGHT,
 
-                                        int initialSelection = 0);
 
- WXDLLIMPEXP_CORE int wxGetSingleChoiceIndex(const wxString& message,
 
-                                        const wxString& caption,
 
-                                        int n, const wxString *choices,
 
-                                        wxWindow *parent = NULL,
 
-                                        int x = wxDefaultCoord,
 
-                                        int y = wxDefaultCoord,
 
-                                        bool centre = true,
 
-                                        int width = wxCHOICE_WIDTH,
 
-                                        int height = wxCHOICE_HEIGHT,
 
-                                        int initialSelection = 0);
 
- WXDLLIMPEXP_CORE int wxGetSingleChoiceIndex(const wxString& message,
 
-                                             const wxString& caption,
 
-                                             const wxArrayString& choices,
 
-                                             int initialSelection,
 
-                                             wxWindow *parent = NULL);
 
- WXDLLIMPEXP_CORE int wxGetSingleChoiceIndex(const wxString& message,
 
-                                             const wxString& caption,
 
-                                             int n, const wxString *choices,
 
-                                             int initialSelection,
 
-                                             wxWindow *parent = NULL);
 
- // Return client data instead or NULL if canceled
 
- WXDLLIMPEXP_CORE void* wxGetSingleChoiceData(const wxString& message,
 
-                                         const wxString& caption,
 
-                                         const wxArrayString& choices,
 
-                                         void **client_data,
 
-                                         wxWindow *parent = NULL,
 
-                                         int x = wxDefaultCoord,
 
-                                         int y = wxDefaultCoord,
 
-                                         bool centre = true,
 
-                                         int width = wxCHOICE_WIDTH,
 
-                                         int height = wxCHOICE_HEIGHT,
 
-                                         int initialSelection = 0);
 
- WXDLLIMPEXP_CORE void* wxGetSingleChoiceData(const wxString& message,
 
-                                         const wxString& caption,
 
-                                         int n, const wxString *choices,
 
-                                         void **client_data,
 
-                                         wxWindow *parent = NULL,
 
-                                         int x = wxDefaultCoord,
 
-                                         int y = wxDefaultCoord,
 
-                                         bool centre = true,
 
-                                         int width = wxCHOICE_WIDTH,
 
-                                         int height = wxCHOICE_HEIGHT,
 
-                                         int initialSelection = 0);
 
- WXDLLIMPEXP_CORE void* wxGetSingleChoiceData(const wxString& message,
 
-                                              const wxString& caption,
 
-                                              const wxArrayString& choices,
 
-                                              void **client_data,
 
-                                              int initialSelection,
 
-                                              wxWindow *parent = NULL);
 
- WXDLLIMPEXP_CORE void* wxGetSingleChoiceData(const wxString& message,
 
-                                              const wxString& caption,
 
-                                              int n, const wxString *choices,
 
-                                              void **client_data,
 
-                                              int initialSelection,
 
-                                              wxWindow *parent = NULL);
 
- // fill the array with the indices of the chosen items, it will be empty
 
- // if no items were selected or Cancel was pressed - return the number of
 
- // selections or -1 if cancelled
 
- WXDLLIMPEXP_CORE int wxGetSelectedChoices(wxArrayInt& selections,
 
-                                         const wxString& message,
 
-                                         const wxString& caption,
 
-                                         int n, const wxString *choices,
 
-                                         wxWindow *parent = NULL,
 
-                                         int x = wxDefaultCoord,
 
-                                         int y = wxDefaultCoord,
 
-                                         bool centre = true,
 
-                                         int width = wxCHOICE_WIDTH,
 
-                                         int height = wxCHOICE_HEIGHT);
 
- WXDLLIMPEXP_CORE int wxGetSelectedChoices(wxArrayInt& selections,
 
-                                         const wxString& message,
 
-                                         const wxString& caption,
 
-                                         const wxArrayString& choices,
 
-                                         wxWindow *parent = NULL,
 
-                                         int x = wxDefaultCoord,
 
-                                         int y = wxDefaultCoord,
 
-                                         bool centre = true,
 
-                                         int width = wxCHOICE_WIDTH,
 
-                                         int height = wxCHOICE_HEIGHT);
 
- #if WXWIN_COMPATIBILITY_2_8
 
- // fill the array with the indices of the chosen items, it will be empty
 
- // if no items were selected or Cancel was pressed - return the number of
 
- // selections
 
- wxDEPRECATED( WXDLLIMPEXP_CORE size_t wxGetMultipleChoices(wxArrayInt& selections,
 
-                                         const wxString& message,
 
-                                         const wxString& caption,
 
-                                         int n, const wxString *choices,
 
-                                         wxWindow *parent = NULL,
 
-                                         int x = wxDefaultCoord,
 
-                                         int y = wxDefaultCoord,
 
-                                         bool centre = true,
 
-                                         int width = wxCHOICE_WIDTH,
 
-                                         int height = wxCHOICE_HEIGHT) );
 
- wxDEPRECATED( WXDLLIMPEXP_CORE size_t wxGetMultipleChoices(wxArrayInt& selections,
 
-                                         const wxString& message,
 
-                                         const wxString& caption,
 
-                                         const wxArrayString& choices,
 
-                                         wxWindow *parent = NULL,
 
-                                         int x = wxDefaultCoord,
 
-                                         int y = wxDefaultCoord,
 
-                                         bool centre = true,
 
-                                         int width = wxCHOICE_WIDTH,
 
-                                         int height = wxCHOICE_HEIGHT));
 
- #endif // WXWIN_COMPATIBILITY_2_8
 
- #endif // _WX_GENERIC_CHOICDGG_H_
 
 
  |