Mercurial > mercurial > hgweb_iklist.hg.cgi
annotate src/iklist.cpp @ 3:d3e201c48ff8 draft default tip
bug fix.
author | pyon |
---|---|
date | Wed, 29 Sep 2021 22:04:51 +0900 |
parents | c0f76f8e67fa |
children |
rev | line source |
---|---|
0 | 1 // Filename : iklist.cpp |
3 | 2 // Last Change: 2021-09-29 水 16:56:26. |
0 | 3 // |
4 #include <wx/textfile.h> | |
5 #include <wx/utils.h> | |
6 #include <wx/dir.h> | |
7 #include <wx/filefn.h> | |
8 #include <wx/wfstream.h> | |
3 | 9 #include <wx/sstream.h> |
0 | 10 #include <wx/txtstrm.h> |
11 #include <wx/fs_zip.h> | |
12 #include <wx/filesys.h> | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
13 #include <wx/datetime.h> |
0 | 14 #include <wx/msgdlg.h> |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
15 #include <wx/fileconf.h> |
0 | 16 |
17 #include "iklist.h" | |
18 | |
19 /////////////////////////////////////////////////////////////////////////// | |
20 | |
21 MainFrame::MainFrame(wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style) | |
22 : wxFrame(parent, id, title, pos, size, style) | |
23 { | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
24 // Check Limit Date |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
25 wxDateTime today = wxDateTime::Today(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
26 wxDateTime limit(30, wxDateTime::Month::Sep, 2022); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
27 if (today.IsLaterThan(limit)) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
28 wxMessageBox(wxT("使用期限が過ぎています.")); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
29 Close(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
30 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
31 |
0 | 32 CreateControls(); |
33 LoadConfig(); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
34 m_statusBar->SetStatusText(wxString::Format(wxT(" Welcome to I.K.List - version %s"), m_version), 0); |
0 | 35 |
36 // Connect Events | |
37 m_searchCtrl->Connect(wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN, wxCommandEventHandler(MainFrame::OnCancel), NULL, this); | |
38 m_searchCtrl->Connect(wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN, wxCommandEventHandler(MainFrame::OnSearch), NULL, this); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
39 m_searchCtrl->Connect(wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler(MainFrame::OnText), NULL, this); |
0 | 40 m_searchCtrl->Connect(wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler(MainFrame::OnSearch), NULL, this); |
41 m_textCtrl->Connect(wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler(MainFrame::OnTextEnter), NULL, this); | |
42 m_button->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(MainFrame::OnClick), NULL, this); | |
43 m_dataViewListCtrl->Connect(wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED, wxDataViewEventHandler(MainFrame::OnListItemActivated), NULL, this); | |
44 } | |
45 | |
46 MainFrame::~MainFrame() | |
47 { | |
48 // Clean TempFile | |
49 wxString tmpdir, filename; | |
50 wxGetEnv(wxT("TEMP"), &tmpdir); | |
51 wxDir dir(tmpdir); | |
52 dir.IsOpened(); | |
53 bool cont = dir.GetFirst(&filename, wxT("iklist-*"), wxDIR_FILES); | |
54 while (cont) { | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
55 wxString file = tmpdir + wxFILE_SEP_PATH + filename; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
56 if (wxFileName::IsFileWritable(file)) |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
57 wxRemoveFile(file); |
0 | 58 cont = dir.GetNext(&filename); |
59 } | |
60 | |
61 // Disconnect Events | |
62 m_searchCtrl->Disconnect(wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN, wxCommandEventHandler(MainFrame::OnCancel), NULL, this); | |
63 m_searchCtrl->Disconnect(wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN, wxCommandEventHandler(MainFrame::OnSearch), NULL, this); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
64 m_searchCtrl->Disconnect(wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler(MainFrame::OnText), NULL, this); |
0 | 65 m_searchCtrl->Disconnect(wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler(MainFrame::OnSearch), NULL, this); |
66 m_choiceCity->Disconnect(wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler(MainFrame::OnCityChoice), NULL, this); | |
67 m_choiceKind->Disconnect(wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler(MainFrame::OnKindChoice), NULL, this); | |
68 m_dataViewListCtrl->Disconnect(wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED, wxDataViewEventHandler(MainFrame::OnListItemActivated), NULL, this); | |
69 } | |
70 | |
71 // Event Handlers | |
72 void MainFrame::OnSearch(wxCommandEvent& WXUNUSED(event)) | |
73 { | |
74 SetList(); | |
75 } | |
76 | |
77 void MainFrame::OnCancel(wxCommandEvent& WXUNUSED(event)) | |
78 { | |
79 m_searchCtrl->Clear(); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
80 SetList(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
81 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
82 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
83 void MainFrame::OnText(wxCommandEvent& WXUNUSED(event)) |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
84 { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
85 SetList(); |
0 | 86 } |
87 | |
88 void MainFrame::OnTextEnter(wxCommandEvent& WXUNUSED(event)) | |
89 { | |
90 CheckPassword(); | |
91 } | |
92 | |
93 void MainFrame::OnClick(wxCommandEvent& WXUNUSED(event)) | |
94 { | |
95 CheckPassword(); | |
96 } | |
97 | |
98 void MainFrame::OnCityChoice(wxCommandEvent& WXUNUSED(event)) | |
99 { | |
100 SetList(); | |
101 } | |
102 | |
103 void MainFrame::OnKindChoice(wxCommandEvent& WXUNUSED(event)) | |
104 { | |
105 SetList(); | |
106 } | |
107 | |
108 void MainFrame::OnListItemActivated(wxDataViewEvent& WXUNUSED(event)) | |
109 { | |
110 int n = m_dataViewListCtrl->GetSelectedRow(); | |
111 wxString index = m_dataViewListCtrl->GetTextValue(n, 0); | |
112 wxString pdf = MakePDF(index); | |
113 | |
114 wxString cmd = wxT("cmd /c start ") + pdf; | |
115 wxArrayString output, error; | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
116 wxExecute(cmd, output, error, wxEXEC_ASYNC|wxEXEC_HIDE_CONSOLE); |
0 | 117 } |
118 | |
119 // Functions | |
120 void MainFrame::SetList() | |
121 { | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
122 wxString text = m_searchCtrl->GetValue(); |
0 | 123 wxString city = m_choiceCity->GetString(m_choiceCity->GetSelection()); |
124 wxString kind = m_choiceKind->GetString(m_choiceKind->GetSelection()); | |
125 | |
126 m_dataViewListCtrl->DeleteAllItems(); | |
127 wxVector<wxVariant> data; | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
128 unsigned int n = 0; |
0 | 129 for (int i = 0; i < m_data.GetCount(); i++) { |
130 wxArrayString str = wxSplit(m_data[i], ':'); | |
131 | |
132 data.push_back(wxVariant(wxString::Format(wxT("%04d"), i + 1))); // ID | |
133 data.push_back(wxVariant(str[0])); // Name | |
134 data.push_back(wxVariant(str[1])); // City | |
135 data.push_back(wxVariant(str[2])); // Kind | |
136 | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
137 bool matched = true; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
138 if (!text.IsEmpty() && str[0].Find(text) == wxNOT_FOUND) matched =false; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
139 if (!city.IsEmpty() && !str[1].IsSameAs(city)) matched =false; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
140 if (!kind.IsEmpty() && !str[2].IsSameAs(kind)) matched =false; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
141 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
142 if (!m_inarea && str.GetCount() == 4 && str[3].IsSameAs(wxT("*"))) matched =false; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
143 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
144 if (matched) { |
0 | 145 m_dataViewListCtrl->AppendItem(data); |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
146 n++; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
147 } |
0 | 148 |
149 data.clear(); | |
150 } | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
151 //m_dataViewListCtrl->SetScrollPos(wxVERTICAL, 0, true); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
152 m_dataViewListCtrl->Scroll(0, 0); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
153 m_statusBar->SetStatusText(wxString::Format(wxT(" %d found."), n), 0); |
0 | 154 } |
3 | 155 |
0 | 156 wxString MainFrame::MakePDF(wxString index) |
157 { | |
158 wxString tmpdir; | |
159 wxGetEnv(wxT("TEMP"), &tmpdir); | |
160 wxString pdf = tmpdir + "/iklist-" + index + ".pdf"; | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
161 if (wxFile::Exists(pdf)) return pdf; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
162 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
163 wxStringInputStream si0(wxT("%PDF")); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
164 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
165 wxString file; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
166 file = SearchFile(wxT("data/03"), index); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
167 wxFileInputStream si1(file); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
168 file = SearchFile(wxT("data/04"), index); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
169 wxFileInputStream si2(file); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
170 file = SearchFile(wxT("data/08"), index); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
171 wxFileInputStream si3(file); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
172 |
0 | 173 wxFileOutputStream so(pdf); |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
174 so << si0; |
0 | 175 so << si1 << si2 << si3; // use chunk buffer to copy if file is big. |
176 | |
177 return pdf; | |
178 } | |
179 | |
180 wxString MainFrame::SearchFile(wxString directory, wxString index) | |
181 { | |
182 wxDir dir(directory); | |
183 if (!dir.IsOpened()) | |
184 return wxEmptyString; | |
185 | |
186 wxString filename; | |
187 bool cont = dir.GetFirst(&filename, wxEmptyString, wxDIR_FILES); | |
188 while (cont) { | |
189 if (filename.Mid(8, 4).IsSameAs(index, false)) | |
190 break; | |
191 cont = dir.GetNext(&filename); | |
192 } | |
193 return directory + wxT("/") + filename; | |
194 } | |
195 | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
196 void MainFrame::LoadConfig() |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
197 { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
198 wxFileSystem::AddHandler(new wxZipFSHandler); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
199 wxFileSystem* fs = new wxFileSystem; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
200 wxString archive = wxT("iklist.lib"); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
201 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
202 // Load Password |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
203 wxString pwfn = wxT("p8wypswd5c0x"); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
204 wxFSFile* pwfile = fs->OpenFile(archive + wxT("#zip:") + pwfn); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
205 wxString buf; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
206 if (pwfile) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
207 wxInputStream *zstream = pwfile->GetStream(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
208 wxTextInputStream tstream(*zstream); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
209 buf = tstream.ReadLine(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
210 delete pwfile; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
211 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
212 for (int i = 0; i < buf.Len(); i++) { // XOR 17 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
213 m_pswd += wxString::Format(wxT("%c"), buf[i].GetValue() ^ 17); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
214 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
215 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
216 pwfn = wxT("_p8wypswd5c0x"); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
217 wxFSFile* gpwfile = fs->OpenFile(archive + wxT("#zip:") + pwfn); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
218 if (gpwfile) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
219 wxInputStream *zstream = gpwfile->GetStream(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
220 wxTextInputStream tstream(*zstream); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
221 buf = tstream.ReadLine(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
222 delete gpwfile; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
223 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
224 for (int i = 0; i < buf.Len(); i++) { // XOR 17 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
225 m_gpswd += wxString::Format(wxT("%c"), buf[i].GetValue() ^ 17); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
226 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
227 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
228 // Load List |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
229 wxString listfn = wxT("q534list8mor"); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
230 wxFSFile* listfile = fs->OpenFile(archive + wxT("#zip:") + listfn); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
231 if (listfile) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
232 wxInputStream *zstream = listfile->GetStream(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
233 wxTextInputStream tstream(*zstream); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
234 for (int i = 0; i < 543; i++) { //######################### |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
235 //while (!zstream->Eof()) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
236 m_data.Add(tstream.ReadLine()); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
237 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
238 delete listfile; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
239 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
240 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
241 // Load config |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
242 wxString conf_file = wxGetCwd() + wxFILE_SEP_PATH + wxT("app.conf"); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
243 wxFileConfig* conf = new wxFileConfig(wxT("MyApp"), wxT("T.Mutoh"), conf_file, wxEmptyString, wxCONFIG_USE_LOCAL_FILE); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
244 conf->SetPath(wxT("/Misc")); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
245 conf->Read(wxT("version"), &m_version); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
246 delete conf; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
247 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
248 // Set Filter |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
249 wxArrayString filter = GetChoiceArray(1); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
250 for (int i = 0; i < filter.GetCount(); i++) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
251 m_choiceCity->Append(filter[i]); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
252 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
253 m_choiceCity->SetSelection(0); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
254 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
255 filter = GetChoiceArray(2); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
256 for (int i = 0; i < filter.GetCount(); i++) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
257 m_choiceKind->Append(filter[i]); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
258 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
259 m_choiceKind->SetSelection(0); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
260 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
261 delete fs; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
262 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
263 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
264 wxArrayString MainFrame::GetChoiceArray(int n) |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
265 { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
266 wxArrayString filter; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
267 filter.Add(wxEmptyString); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
268 for (int i = 0; i < m_data.GetCount(); i++) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
269 wxArrayString str = wxSplit(m_data[i], ':'); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
270 bool seen; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
271 for (int j = 0; j < filter.GetCount(); j++) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
272 if (filter[j].IsSameAs(str[n])) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
273 seen = true; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
274 break; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
275 } else { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
276 seen = false; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
277 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
278 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
279 if (!seen) filter.Add(str[n]); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
280 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
281 return filter; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
282 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
283 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
284 void MainFrame::CheckPassword() |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
285 { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
286 m_inarea = false; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
287 if (m_textCtrl->GetValue().IsSameAs(m_pswd, true)) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
288 m_inarea = true; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
289 } else if (m_textCtrl->GetValue().IsSameAs(m_gpswd, true)) { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
290 //; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
291 } else { |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
292 m_textCtrl->SetBackgroundColour(wxColour(255, 160, 160)); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
293 m_textCtrl->SelectAll(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
294 return; |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
295 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
296 m_staticTextWord->SetLabel(wxT("キーワード:")); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
297 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
298 m_textCtrl->Disconnect(wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler(MainFrame::OnTextEnter), NULL, this); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
299 m_button->Disconnect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(MainFrame::OnClick), NULL, this); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
300 m_textCtrl->Destroy(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
301 m_button->Destroy(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
302 m_searchCtrl->Show(); |
3 | 303 m_choiceCity->Connect(wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler(MainFrame::OnCityChoice), NULL, this); |
304 m_choiceKind->Connect(wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler(MainFrame::OnKindChoice), NULL, this); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
305 this->Layout(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
306 |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
307 SetList(); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
308 } |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
309 |
0 | 310 void MainFrame::CreateControls() |
311 { | |
312 this->SetIcon(wxIcon(wxT("sample"))); | |
313 this->SetSizeHints(wxDefaultSize, wxDefaultSize); | |
314 this->SetBackgroundColour(wxColour(130, 170, 210)); | |
315 | |
316 wxBoxSizer* bSizerTop = new wxBoxSizer(wxVERTICAL); | |
317 | |
318 //-- | |
319 wxBoxSizer* bSizerWord = new wxBoxSizer(wxHORIZONTAL); | |
320 | |
321 m_staticTextWord = new wxStaticText(this, wxID_ANY, wxT("パスワード:"), wxDefaultPosition, wxDefaultSize, 0); | |
322 bSizerWord->Add(m_staticTextWord, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); | |
323 | |
324 m_textCtrl = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(200, -1), wxTE_PASSWORD|wxTE_PROCESS_ENTER); | |
325 bSizerWord->Add(m_textCtrl, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); | |
326 m_textCtrl->SetFocus(); | |
327 | |
328 m_button = new wxButton(this, wxID_ANY, wxT("OK"), wxDefaultPosition, wxSize(60, -1), 0); | |
329 bSizerWord->Add(m_button, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); | |
330 | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
331 m_searchCtrl = new wxSearchCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(200, -1), 0); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
332 #ifndef __WXMAC__ |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
333 m_searchCtrl->ShowSearchButton(true); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
334 #endif |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
335 m_searchCtrl->ShowCancelButton(true); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
336 bSizerWord->Add(m_searchCtrl, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
337 |
0 | 338 bSizerTop->Add(bSizerWord, 0, wxEXPAND, 5); |
339 | |
340 //-- | |
341 wxBoxSizer* bSizerFilter = new wxBoxSizer(wxHORIZONTAL); | |
342 | |
343 m_staticTextFilter = new wxStaticText(this, wxID_ANY, wxT("フィルター:"), wxDefaultPosition, wxDefaultSize, 0); | |
344 bSizerFilter->Add(m_staticTextFilter, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); | |
345 | |
346 m_staticTextCity = new wxStaticText(this, wxID_ANY, wxT("市町村"), wxDefaultPosition, wxDefaultSize, 0); | |
347 bSizerFilter->Add(m_staticTextCity, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); | |
348 | |
349 wxArrayString m_choiceCityChoices; | |
350 m_choiceCity = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceCityChoices, 0); | |
351 m_choiceCity->SetSelection(0); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
352 m_choiceCity->SetBackgroundColour(wxColour(220, 255, 255)); |
0 | 353 bSizerFilter->Add(m_choiceCity, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); |
354 | |
355 m_staticTextKind = new wxStaticText(this, wxID_ANY, wxT("区分"), wxDefaultPosition, wxDefaultSize, 0); | |
356 bSizerFilter->Add(m_staticTextKind, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); | |
357 | |
358 wxArrayString m_choiceKindChoices; | |
359 m_choiceKind = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceKindChoices, 0); | |
360 m_choiceKind->SetSelection(0); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
361 m_choiceKind->SetBackgroundColour(wxColour(220, 255, 255)); |
0 | 362 bSizerFilter->Add(m_choiceKind, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5); |
363 | |
364 bSizerTop->Add(bSizerFilter, 0, wxEXPAND, 5); | |
365 | |
366 //-- | |
367 m_dataViewListCtrl = new wxDataViewListCtrl(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxDV_SINGLE|wxDV_VERT_RULES|wxDV_ROW_LINES); | |
368 m_dataViewListColumnID = m_dataViewListCtrl->AppendTextColumn(wxT("ID"), wxDATAVIEW_CELL_INERT, 40, static_cast<wxAlignment>(wxALIGN_CENTER), wxDATAVIEW_COL_RESIZABLE|wxDATAVIEW_COL_SORTABLE); | |
369 m_dataViewListColumnName = m_dataViewListCtrl->AppendTextColumn(wxT(" 名称"), wxDATAVIEW_CELL_INERT, 280, static_cast<wxAlignment>(wxALIGN_LEFT), wxDATAVIEW_COL_RESIZABLE|wxDATAVIEW_COL_SORTABLE); | |
370 m_dataViewListColumnCity = m_dataViewListCtrl->AppendTextColumn(wxT("市町村"), wxDATAVIEW_CELL_INERT, -1, static_cast<wxAlignment>(wxALIGN_CENTER), wxDATAVIEW_COL_RESIZABLE|wxDATAVIEW_COL_SORTABLE); | |
371 m_dataViewListColumnKind = m_dataViewListCtrl->AppendTextColumn(wxT(" 区分"), wxDATAVIEW_CELL_INERT, -1, static_cast<wxAlignment>(wxALIGN_LEFT), wxDATAVIEW_COL_RESIZABLE|wxDATAVIEW_COL_SORTABLE); | |
372 bSizerTop->Add(m_dataViewListCtrl, 1, wxALL|wxEXPAND, 5); | |
373 | |
374 this->SetSizer(bSizerTop); | |
375 this->Layout(); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
376 m_statusBar = this->CreateStatusBar(1, wxSTB_SIZEGRIP, wxID_ANY); |
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
377 m_statusBar->SetBackgroundColour(wxColour(130, 170, 210)); |
0 | 378 |
379 this->Centre(wxBOTH); | |
2
c0f76f8e67fa
ver 1.0.0 release (add 2 items, time-limit@2022-09-30. & bug fix.)
pyon <pyon@macmini>
parents:
0
diff
changeset
|
380 m_searchCtrl->Hide(); |
0 | 381 } |
382 |