annotate src/adddialog.cpp @ 3:fd4361d2cbbd default tip

add remember function.
author pyon@macmini
date Thu, 24 Sep 2015 07:45:26 +0900
parents e4aa0e7a07ad
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
1 // Filename: adddialog.cpp
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
2 // Last Change: 2015-09-23 Wed 19:59:41.
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
3 //
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
4 #include <wx/valgen.h>
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
5 #include <wx/valtext.h>
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
6
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
7 #include "adddialog.h"
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
8
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
9 AddDialog::AddDialog( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style )
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
10 : wxDialog( parent, id, title, pos, size, style )
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
11 {
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
12 this->SetSizeHints( wxDefaultSize, wxDefaultSize );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
13
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
14 wxBoxSizer* bSizerTop = new wxBoxSizer( wxVERTICAL );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
15
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
16 m_staticText = new wxStaticText( this, wxID_ANY, wxT("Specify Empty text to Use user input(Ctrl-c).\nDescription is option."), wxDefaultPosition, wxDefaultSize, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
17 bSizerTop->Add( m_staticText, 0, wxALL|wxEXPAND, 5 );
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
18
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
19 //
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
20 wxFlexGridSizer* fgSizer = new wxFlexGridSizer( 0, 3, 0, 0 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
21 fgSizer->SetFlexibleDirection( wxBOTH );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
22 fgSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
23
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
24 // Text
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
25 m_staticTextText = new wxStaticText( this, wxID_ANY, wxT("Text"), wxDefaultPosition, wxDefaultSize, 0 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
26 fgSizer->Add( m_staticTextText, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
27
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
28 m_textCtrlText = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
29 fgSizer->Add( m_textCtrlText, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
30
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
31 m_staticTextText2 = new wxStaticText( this, wxID_ANY, wxT("Strings to paste"), wxDefaultPosition, wxDefaultSize, 0 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
32 fgSizer->Add( m_staticTextText2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
33
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
34 // Overwrite
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
35 m_staticTextOverwrite = new wxStaticText( this, wxID_ANY, wxT("Overwrite"), wxDefaultPosition, wxDefaultSize, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
36 fgSizer->Add( m_staticTextOverwrite, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
37
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
38 m_checkBoxOverwrite = new wxCheckBox( this, ID_CKOW, wxT("allow change"), wxDefaultPosition, wxDefaultSize, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
39 fgSizer->Add( m_checkBoxOverwrite, 0, wxALL, 5 );
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
40
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
41 m_staticTextOverwrite2 = new wxStaticText( this, wxID_ANY, wxT("Check if allow change by user"), wxDefaultPosition, wxDefaultSize, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
42 fgSizer->Add( m_staticTextOverwrite2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
43
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
44 // Max Live Time
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
45 m_staticTextMaxLive = new wxStaticText( this, wxID_ANY, wxT("Max LT"), wxDefaultPosition, wxDefaultSize, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
46 fgSizer->Add( m_staticTextMaxLive, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
47
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
48 m_spinCtrlMaxLive = new wxSpinCtrl( this, ID_SPNML, wxT("5"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 28800, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
49 fgSizer->Add( m_spinCtrlMaxLive, 0, wxALL, 5 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
50
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
51 m_staticTextMaxLive2 = new wxStaticText( this, wxID_ANY, wxT("Maximum live time"), wxDefaultPosition, wxDefaultSize, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
52 fgSizer->Add( m_staticTextMaxLive2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
53
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
54 // Max Active Time
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
55 m_staticTextMaxActive = new wxStaticText( this, wxID_ANY, wxT("Max AT"), wxDefaultPosition, wxDefaultSize, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
56 fgSizer->Add( m_staticTextMaxActive, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
57
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
58 m_spinCtrlMaxActive = new wxSpinCtrl( this, ID_SPNMA, wxT("5"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 28800, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
59 fgSizer->Add( m_spinCtrlMaxActive, 0, wxALL, 5 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
60
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
61 m_staticTextMaxActive2 = new wxStaticText( this, wxID_ANY, wxT("Maximum active time"), wxDefaultPosition, wxDefaultSize, 0 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
62 fgSizer->Add( m_staticTextMaxActive2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
63
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
64 // Remember
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
65 m_staticTextRemember = new wxStaticText( this, wxID_ANY, wxT("Remember"), wxDefaultPosition, wxDefaultSize, 0 );
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
66 fgSizer->Add( m_staticTextRemember, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
67
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
68 m_checkBoxRemember = new wxCheckBox( this, ID_CKOW, wxT("reserve text"), wxDefaultPosition, wxDefaultSize, 0 );
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
69 fgSizer->Add( m_checkBoxRemember, 0, wxALL, 5 );
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
70
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
71 m_staticTextRemember2 = new wxStaticText( this, wxID_ANY, wxT("Check if add text to history"), wxDefaultPosition, wxDefaultSize, 0 );
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
72 fgSizer->Add( m_staticTextRemember2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
73
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
74 // Description
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
75 m_staticTextDesc = new wxStaticText( this, wxID_ANY, wxT("Desc"), wxDefaultPosition, wxDefaultSize, 0 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
76 fgSizer->Add( m_staticTextDesc, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
77
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
78 m_textCtrlDesc = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
79 fgSizer->Add( m_textCtrlDesc, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
80
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
81 m_staticTextDesc2 = new wxStaticText( this, wxID_ANY, wxT("Description"), wxDefaultPosition, wxDefaultSize, 0 );
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
82 fgSizer->Add( m_staticTextDesc2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
83
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
84 bSizerTop->Add( fgSizer, 1, wxEXPAND, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
85
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
86 // Buttons
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
87 wxBoxSizer* bSizerBtn = new wxBoxSizer( wxHORIZONTAL );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
88
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
89 m_buttonAdd = new wxButton( this, wxID_OK, wxT("Add"), wxDefaultPosition, wxDefaultSize, 0 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
90 m_buttonAdd->SetDefault();
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
91 bSizerBtn->Add( m_buttonAdd, 0, wxALL, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
92
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
93 m_buttonCancel = new wxButton( this, wxID_CANCEL, wxT("Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
94 bSizerBtn->Add( m_buttonCancel, 0, wxALL, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
95
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
96 bSizerTop->Add( bSizerBtn, 0, wxALIGN_RIGHT, 5 );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
97
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
98 this->SetSizer( bSizerTop );
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
99
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
100 this->Layout();
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
101 bSizerTop->Fit( this );
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
102
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
103 this->Centre( wxBOTH );
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
104
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
105 Init();
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
106 SetValidators();
0
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
107 }
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
108
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
109 AddDialog::~AddDialog()
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
110 {
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
111 }
cb3403ca39b1 First release.
pyon@macmini
parents:
diff changeset
112
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
113 // Event Table
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
114 BEGIN_EVENT_TABLE( AddDialog, wxDialog )
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
115 EVT_CHECKBOX( ID_CKOW, AddDialog::OnCheckOverwrite )
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
116 END_EVENT_TABLE()
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
117
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
118 /* Event Handlers & Functions */
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
119 // Event Handlers
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
120 void AddDialog::OnCheckOverwrite( wxCommandEvent& event )
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
121 {
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
122 if ( event.IsChecked() ) {
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
123 m_textCtrlText->Enable( false );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
124 m_textCtrlText->SetValue( wxEmptyString );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
125 m_spinCtrlMaxLive->Enable( true );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
126 }
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
127 else {
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
128 m_textCtrlText->Enable( true );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
129 m_textCtrlText->SetValue( wxT("Something") );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
130 m_spinCtrlMaxLive->Enable( false );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
131 }
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
132 }
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
133
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
134 // Functions
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
135 void AddDialog::Init()
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
136 {
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
137 m_text = wxT("Something");
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
138 m_owrite = false;
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
139 m_maxat = 5;
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
140 m_maxlt = 20;
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
141 m_remember = false;
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
142 m_desc = wxEmptyString;
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
143 m_spinCtrlMaxLive->Enable( false );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
144 }
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
145
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
146 void AddDialog::SetValidators()
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
147 {
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
148 m_textCtrlText->SetValidator( wxTextValidator( wxFILTER_NONE, &m_text ) );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
149 m_checkBoxOverwrite->SetValidator( wxGenericValidator( &m_owrite ) );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
150 m_spinCtrlMaxLive->SetValidator( wxGenericValidator( &m_maxlt ) );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
151 m_spinCtrlMaxActive->SetValidator( wxGenericValidator( &m_maxat ) );
3
fd4361d2cbbd add remember function.
pyon@macmini
parents: 1
diff changeset
152 m_checkBoxRemember->SetValidator( wxGenericValidator( &m_remember ) );
1
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
153 m_textCtrlDesc->SetValidator( wxTextValidator( wxFILTER_NONE, &m_desc ) );
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
154 }
e4aa0e7a07ad Second release.
pyon@macmini
parents: 0
diff changeset
155