X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c67daf87774c71ae9f73af9969008af220e52a11..af67f39da8ecf7c29ba5071ac49456d506c111cf:/include/wx/generic/textdlgg.h diff --git a/include/wx/generic/textdlgg.h b/include/wx/generic/textdlgg.h index 5b5eccb267..5fd6056dda 100644 --- a/include/wx/generic/textdlgg.h +++ b/include/wx/generic/textdlgg.h @@ -1,51 +1,113 @@ ///////////////////////////////////////////////////////////////////////////// // 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__ +#ifndef _WX_TEXTDLGG_H_ +#define _WX_TEXTDLGG_H_ -#ifdef __GNUG__ -#pragma interface "textdlgg.h" -#endif +#include "wx/defs.h" + +#if wxUSE_TEXTDLG -#include "wx/setup.h" #include "wx/dialog.h" -// Handy dialog functions (will be converted into classes at some point) -WXDLLEXPORT_DATA(extern const char*) wxGetTextFromUserPromptStr; -WXDLLEXPORT_DATA(extern const char*) wxEmptyString; +#if wxUSE_VALIDATORS +#include "wx/valtext.h" +#include "wx/textctrl.h" +#endif + +class WXDLLIMPEXP_FWD_CORE wxTextCtrl; + +extern WXDLLIMPEXP_DATA_CORE(const char) wxGetTextFromUserPromptStr[]; +extern WXDLLIMPEXP_DATA_CORE(const char) wxGetPasswordFromUserPromptStr[]; -#define wxID_TEXT 3000 +#define wxTextEntryDialogStyle (wxOK | wxCANCEL | wxCENTRE | wxWS_EX_VALIDATE_RECURSIVELY) -class WXDLLEXPORT wxTextEntryDialog: public wxDialog +// ---------------------------------------------------------------------------- +// wxTextEntryDialog: a dialog with text control, [ok] and [cancel] buttons +// ---------------------------------------------------------------------------- + +class WXDLLIMPEXP_CORE wxTextEntryDialog : public wxDialog { -DECLARE_DYNAMIC_CLASS(wxTextEntryDialog) -protected: - long m_dialogStyle; - wxString m_value; public: - wxTextEntryDialog(wxWindow *parent, const wxString& message, const wxString& caption = wxGetTextFromUserPromptStr, - const wxString& value = wxEmptyString, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition); + wxTextEntryDialog(wxWindow *parent, + const wxString& message, + const wxString& caption = wxGetTextFromUserPromptStr, + const wxString& value = wxEmptyString, + long style = wxTextEntryDialogStyle, + const wxPoint& pos = wxDefaultPosition); - inline void SetValue(const wxString& val) { m_value = val; } - inline wxString GetValue(void) const { return m_value; } + 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); -DECLARE_EVENT_TABLE() +protected: + wxTextCtrl *m_textctrl; + wxString m_value; + long m_dialogStyle; + +private: + DECLARE_EVENT_TABLE() + DECLARE_DYNAMIC_CLASS(wxTextEntryDialog) + DECLARE_NO_COPY_CLASS(wxTextEntryDialog) }; -wxString WXDLLEXPORT 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); +// ---------------------------------------------------------------------------- +// wxPasswordEntryDialog: dialog with password control, [ok] and [cancel] +// ---------------------------------------------------------------------------- + +class WXDLLIMPEXP_CORE 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) +}; + +// ---------------------------------------------------------------------------- +// function to get a string from user +// ---------------------------------------------------------------------------- + +WXDLLIMPEXP_CORE wxString + wxGetTextFromUser(const wxString& message, + const wxString& caption = wxGetTextFromUserPromptStr, + const wxString& default_value = wxEmptyString, + wxWindow *parent = (wxWindow *) NULL, + wxCoord x = wxDefaultCoord, + wxCoord y = wxDefaultCoord, + bool centre = true); + +WXDLLIMPEXP_CORE wxString + 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 - // __TEXTDLGH_G__ + // wxUSE_TEXTDLG +#endif // _WX_TEXTDLGG_H_