X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/31528cd3cac75558beef4bce0ba21fd182a808ab..a9e8bf2dd9bccb38eb39fba955125aaf23d6f500:/include/wx/generic/textdlgg.h diff --git a/include/wx/generic/textdlgg.h b/include/wx/generic/textdlgg.h index 13169fe86a..88a65fbd9b 100644 --- a/include/wx/generic/textdlgg.h +++ b/include/wx/generic/textdlgg.h @@ -1,55 +1,88 @@ ///////////////////////////////////////////////////////////////////////////// // Name: textdlgg.h -// Purpose: wxStatusBar class +// Purpose: wxTextEntryDialog class // Author: Julian Smart // Modified by: // Created: 01/02/97 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem -// Licence: wxWindows license +// Copyright: (c) Julian Smart +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef __TEXTDLGH_G__ #define __TEXTDLGH_G__ -#ifdef __GNUG__ - #pragma interface "textdlgg.h" -#endif - #include "wx/defs.h" +#if wxUSE_TEXTDLG + #include "wx/dialog.h" +#if wxUSE_VALIDATORS +#include "wx/valtext.h" +#endif + class WXDLLEXPORT wxTextCtrl; -// Handy dialog functions (will be converted into classes at some point) -WXDLLEXPORT_DATA(extern const wxChar*) wxGetTextFromUserPromptStr; -WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString; +extern WXDLLEXPORT_DATA(const wxChar) wxGetTextFromUserPromptStr[]; +extern WXDLLEXPORT_DATA(const wxChar) wxGetPasswordFromUserPromptStr[]; + +#define wxTextEntryDialogStyle (wxOK | wxCANCEL | wxCENTRE | wxWS_EX_VALIDATE_RECURSIVELY) + +// ---------------------------------------------------------------------------- +// wxTextEntryDialog: a dialog with text control, [ok] and [cancel] buttons +// ---------------------------------------------------------------------------- class WXDLLEXPORT wxTextEntryDialog : public wxDialog { - DECLARE_DYNAMIC_CLASS(wxTextEntryDialog) - public: wxTextEntryDialog(wxWindow *parent, const wxString& message, const wxString& caption = wxGetTextFromUserPromptStr, const wxString& value = wxEmptyString, - long style = wxOK | wxCANCEL | wxCENTRE, + long style = wxTextEntryDialogStyle, const wxPoint& pos = wxDefaultPosition); - void SetValue(const wxString& val) { m_value = val; } + void SetValue(const wxString& val); wxString GetValue() const { return m_value; } +#if wxUSE_VALIDATORS + void SetTextValidator( const wxTextValidator& validator ); + void SetTextValidator( long style = wxFILTER_NONE ); + wxTextValidator* GetTextValidator() { return (wxTextValidator*)m_textctrl->GetValidator(); } +#endif + // wxUSE_VALIDATORS + // implementation only void OnOK(wxCommandEvent& event); protected: wxTextCtrl *m_textctrl; wxString m_value; + long m_dialogStyle; private: DECLARE_EVENT_TABLE() + DECLARE_DYNAMIC_CLASS(wxTextEntryDialog) + DECLARE_NO_COPY_CLASS(wxTextEntryDialog) +}; + +// ---------------------------------------------------------------------------- +// wxPasswordEntryDialog: dialog with password control, [ok] and [cancel] +// ---------------------------------------------------------------------------- + +class WXDLLEXPORT wxPasswordEntryDialog : public wxTextEntryDialog +{ +public: + wxPasswordEntryDialog(wxWindow *parent, + const wxString& message, + const wxString& caption = wxGetPasswordFromUserPromptStr, + const wxString& value = wxEmptyString, + long style = wxTextEntryDialogStyle, + const wxPoint& pos = wxDefaultPosition); +private: + DECLARE_DYNAMIC_CLASS(wxPasswordEntryDialog) + DECLARE_NO_COPY_CLASS(wxPasswordEntryDialog) }; // ---------------------------------------------------------------------------- @@ -61,9 +94,20 @@ wxGetTextFromUser(const wxString& message, const wxString& caption = wxGetTextFromUserPromptStr, const wxString& default_value = wxEmptyString, wxWindow *parent = (wxWindow *) NULL, - int x = -1, - int y = -1, - bool centre = TRUE); + wxCoord x = wxDefaultCoord, + wxCoord y = wxDefaultCoord, + bool centre = true); +wxString WXDLLEXPORT +wxGetPasswordFromUser(const wxString& message, + const wxString& caption = wxGetPasswordFromUserPromptStr, + const wxString& default_value = wxEmptyString, + wxWindow *parent = (wxWindow *) NULL, + wxCoord x = wxDefaultCoord, + wxCoord y = wxDefaultCoord, + bool centre = true); + +#endif + // wxUSE_TEXTDLG #endif // __TEXTDLGH_G__