/[pcsx2_0.9.7]/branch/r3113_0.9.7_beta/3rdparty/wxWidgets/src/generic/textdlgg.cpp
ViewVC logotype

Annotation of /branch/r3113_0.9.7_beta/3rdparty/wxWidgets/src/generic/textdlgg.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 31 - (hide annotations) (download)
Tue Sep 7 03:24:11 2010 UTC (10 years ago) by william
Original Path: trunk/3rdparty/wxWidgets/src/generic/textdlgg.cpp
File size: 5500 byte(s)
committing r3113 initial commit again...
1 william 31 /////////////////////////////////////////////////////////////////////////////
2     // Name: src/generic/textdlgg.cpp
3     // Purpose: wxTextEntryDialog
4     // Author: Julian Smart
5     // Modified by:
6     // Created: 04/01/98
7     // RCS-ID: $Id: textdlgg.cpp 41838 2006-10-09 21:08:45Z VZ $
8     // Copyright: (c) Julian Smart
9     // Licence: wxWindows licence
10     /////////////////////////////////////////////////////////////////////////////
11    
12     // ============================================================================
13     // declarations
14     // ============================================================================
15    
16     // ----------------------------------------------------------------------------
17     // headers
18     // ----------------------------------------------------------------------------
19    
20     // For compilers that support precompilation, includes "wx.h".
21     #include "wx/wxprec.h"
22    
23     #ifdef __BORLANDC__
24     #pragma hdrstop
25     #endif
26    
27     #if wxUSE_TEXTDLG
28    
29     #include "wx/generic/textdlgg.h"
30    
31     #ifndef WX_PRECOMP
32     #include "wx/utils.h"
33     #include "wx/dialog.h"
34     #include "wx/button.h"
35     #include "wx/stattext.h"
36     #include "wx/textctrl.h"
37     #include "wx/intl.h"
38     #include "wx/sizer.h"
39     #endif
40    
41     #if wxUSE_STATLINE
42     #include "wx/statline.h"
43     #endif
44    
45     const wxChar wxGetTextFromUserPromptStr[] = wxT("Input Text");
46     const wxChar wxGetPasswordFromUserPromptStr[] = wxT("Enter Password");
47    
48     // ----------------------------------------------------------------------------
49     // constants
50     // ----------------------------------------------------------------------------
51    
52     static const int wxID_TEXT = 3000;
53    
54     // ============================================================================
55     // implementation
56     // ============================================================================
57    
58     // ----------------------------------------------------------------------------
59     // wxTextEntryDialog
60     // ----------------------------------------------------------------------------
61    
62     BEGIN_EVENT_TABLE(wxTextEntryDialog, wxDialog)
63     EVT_BUTTON(wxID_OK, wxTextEntryDialog::OnOK)
64     END_EVENT_TABLE()
65    
66     IMPLEMENT_CLASS(wxTextEntryDialog, wxDialog)
67    
68     wxTextEntryDialog::wxTextEntryDialog(wxWindow *parent,
69     const wxString& message,
70     const wxString& caption,
71     const wxString& value,
72     long style,
73     const wxPoint& pos)
74     : wxDialog(parent, wxID_ANY, caption, pos, wxDefaultSize,
75     wxDEFAULT_DIALOG_STYLE),
76     m_value(value)
77     {
78     m_dialogStyle = style;
79     m_value = value;
80    
81     wxBeginBusyCursor();
82    
83     wxBoxSizer *topsizer = new wxBoxSizer( wxVERTICAL );
84    
85     wxSizerFlags flagsBorder2;
86     flagsBorder2.DoubleBorder();
87    
88     #if wxUSE_STATTEXT
89     // 1) text message
90     topsizer->Add(CreateTextSizer(message), flagsBorder2);
91     #endif
92    
93     // 2) text ctrl
94     m_textctrl = new wxTextCtrl(this, wxID_TEXT, value,
95     wxDefaultPosition, wxSize(300, wxDefaultCoord),
96     style & ~wxTextEntryDialogStyle);
97    
98     topsizer->Add(m_textctrl,
99     wxSizerFlags(style & wxTE_MULTILINE ? 1 : 0).
100     Expand().
101     TripleBorder(wxLEFT | wxRIGHT));
102    
103     #if wxUSE_VALIDATORS
104     wxTextValidator validator( wxFILTER_NONE, &m_value );
105     m_textctrl->SetValidator( validator );
106     #endif // wxUSE_VALIDATORS
107    
108     // 3) buttons if any
109     wxSizer *buttonSizer = CreateSeparatedButtonSizer(style & ButtonSizerFlags);
110     if ( buttonSizer )
111     {
112     topsizer->Add(buttonSizer, wxSizerFlags(flagsBorder2).Expand());
113     }
114    
115     SetAutoLayout( true );
116     SetSizer( topsizer );
117    
118     topsizer->SetSizeHints( this );
119     topsizer->Fit( this );
120    
121     if ( style & wxCENTRE )
122     Centre( wxBOTH );
123    
124     m_textctrl->SetSelection(-1, -1);
125     m_textctrl->SetFocus();
126    
127     wxEndBusyCursor();
128     }
129    
130     void wxTextEntryDialog::OnOK(wxCommandEvent& WXUNUSED(event) )
131     {
132     #if wxUSE_VALIDATORS
133     if( Validate() && TransferDataFromWindow() )
134     {
135     EndModal( wxID_OK );
136     }
137     #else
138     m_value = m_textctrl->GetValue();
139    
140     EndModal(wxID_OK);
141     #endif
142     // wxUSE_VALIDATORS
143     }
144    
145     void wxTextEntryDialog::SetValue(const wxString& val)
146     {
147     m_value = val;
148    
149     m_textctrl->SetValue(val);
150     }
151    
152     #if wxUSE_VALIDATORS
153     void wxTextEntryDialog::SetTextValidator( long style )
154     {
155     wxTextValidator validator( style, &m_value );
156     m_textctrl->SetValidator( validator );
157     }
158    
159     void wxTextEntryDialog::SetTextValidator( const wxTextValidator& validator )
160     {
161     m_textctrl->SetValidator( validator );
162     }
163    
164     #endif
165     // wxUSE_VALIDATORS
166    
167     // ----------------------------------------------------------------------------
168     // wxPasswordEntryDialog
169     // ----------------------------------------------------------------------------
170    
171     IMPLEMENT_CLASS(wxPasswordEntryDialog, wxTextEntryDialog)
172    
173     wxPasswordEntryDialog::wxPasswordEntryDialog(wxWindow *parent,
174     const wxString& message,
175     const wxString& caption,
176     const wxString& value,
177     long style,
178     const wxPoint& pos)
179     : wxTextEntryDialog(parent, message, caption, value,
180     style | wxTE_PASSWORD, pos)
181     {
182     // Only change from wxTextEntryDialog is the password style
183     }
184    
185     #endif // wxUSE_TEXTDLG

  ViewVC Help
Powered by ViewVC 1.1.22