Add two step creation to wxTextEntryDialog.

Add Create() method and default ctor for consistency with the other classes.

See #14702.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2012-09-27 22:41:33 +00:00
parent 70680b6177
commit b8d6be7f57
3 changed files with 51 additions and 8 deletions

View File

@@ -37,12 +37,27 @@ extern WXDLLIMPEXP_DATA_CORE(const char) wxGetPasswordFromUserPromptStr[];
class WXDLLIMPEXP_CORE wxTextEntryDialog : public wxDialog
{
public:
wxTextEntryDialog()
{
m_textctrl = NULL;
}
wxTextEntryDialog(wxWindow *parent,
const wxString& message,
const wxString& caption = wxGetTextFromUserPromptStr,
const wxString& value = wxEmptyString,
long style = wxTextEntryDialogStyle,
const wxPoint& pos = wxDefaultPosition);
const wxPoint& pos = wxDefaultPosition)
{
Create(parent, message, caption, value, style, pos);
}
bool Create(wxWindow *parent,
const wxString& message,
const wxString& caption = wxGetTextFromUserPromptStr,
const wxString& value = wxEmptyString,
long style = wxTextEntryDialogStyle,
const wxPoint& pos = wxDefaultPosition);
void SetValue(const wxString& val);
wxString GetValue() const { return m_value; }

View File

@@ -78,8 +78,28 @@ class wxTextEntryDialog : public wxDialog
{
public:
/**
Constructor. Use ShowModal() to show the dialog.
Default constructor.
Call Create() to really create the dialog later.
@since 2.9.5
*/
wxTextEntryDialog();
/**
Constructor.
Use ShowModal() to show the dialog.
See Create() method for parameter description.
*/
wxTextEntryDialog(wxWindow* parent, const wxString& message,
const wxString& caption = wxGetTextFromUserPromptStr,
const wxString& value = wxEmptyString,
long style = wxTextEntryDialogStyle,
const wxPoint& pos = wxDefaultPosition);
/**
@param parent
Parent window.
@param message
@@ -95,8 +115,10 @@ public:
here.
@param pos
Dialog position.
@since 2.9.5
*/
wxTextEntryDialog(wxWindow* parent, const wxString& message,
bool Create(wxWindow* parent, const wxString& message,
const wxString& caption = wxGetTextFromUserPromptStr,
const wxString& value = wxEmptyString,
long style = wxTextEntryDialogStyle,

View File

@@ -65,17 +65,21 @@ END_EVENT_TABLE()
IMPLEMENT_CLASS(wxTextEntryDialog, wxDialog)
wxTextEntryDialog::wxTextEntryDialog(wxWindow *parent,
bool wxTextEntryDialog::Create(wxWindow *parent,
const wxString& message,
const wxString& caption,
const wxString& value,
long style,
const wxPoint& pos)
: wxDialog(GetParentForModalDialog(parent, style),
wxID_ANY, caption, pos, wxDefaultSize,
wxDEFAULT_DIALOG_STYLE),
m_value(value)
{
if ( !wxDialog::Create(GetParentForModalDialog(parent, style),
wxID_ANY, caption,
pos, wxDefaultSize,
wxDEFAULT_DIALOG_STYLE) )
{
return false;
}
m_dialogStyle = style;
m_value = value;
@@ -126,6 +130,8 @@ wxTextEntryDialog::wxTextEntryDialog(wxWindow *parent,
m_textctrl->SetFocus();
wxEndBusyCursor();
return true;
}
void wxTextEntryDialog::OnOK(wxCommandEvent& WXUNUSED(event) )