annotate src/rsearcher.cpp @ 5:e3b10fb860b3

release v1.0.
author pyon@macmini
date Mon, 22 Oct 2018 22:17:02 +0900
parents 06342fc544e4
children 9a8b581c1993
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
1 // Filename : rsearcher.cpp
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
2 // Last Change: 2018-10-22 ŒŽ 16:20:03.
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
3 //
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
4
2
pyon@macmini
parents: 1
diff changeset
5 #include <wx/arrstr.h>
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
6 #include <wx/html/htmprint.h>
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
7 #include <wx/clipbrd.h>
4
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
8 #include "id.h"
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
9 #include "rsearcher.h"
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
10 #include "main.h"
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
11
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
12
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
13 /********************/
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
14 /** HhsClass **/
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
15 /********************/
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
16 HhsClass::HhsClass( wxArrayString& buf )
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
17 {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
18 no = buf[0];
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
19 birth = buf[1];
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
20 name = buf[2];
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
21 kana = buf[3];
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
22 addr = buf[4];
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
23 sex = buf[5];
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
24 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
25
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
26 /********************/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
27 /** MySearchCtrl **/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
28 /********************/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
29 MySearchCtrl::MySearchCtrl( wxWindow* parent, wxWindowID id, const wxString& value, const wxPoint& pos, const wxSize& size, long style )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
30 : wxSearchCtrl( parent, id, value, pos, size, style )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
31 {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
32 m_parent = parent;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
33 SetMaxLength( 10 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
34 #ifndef __WXMAC__
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
35 ShowSearchButton( true );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
36 #endif
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
37 ShowCancelButton( false );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
38
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
39 wxFont font( 12, wxFONTFAMILY_TELETYPE, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
40 SetFont( font );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
41 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
42
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
43 MySearchCtrl::~MySearchCtrl()
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
44 {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
45 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
46
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
47 // Event Table
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
48 BEGIN_EVENT_TABLE( MySearchCtrl, wxSearchCtrl )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
49 EVT_CHAR( MySearchCtrl::OnKey )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
50 END_EVENT_TABLE()
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
51
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
52 // Event Handlers & Functions
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
53 void MySearchCtrl::OnKey( wxKeyEvent& event )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
54 {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
55 int kc = event.GetKeyCode();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
56
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
57 if ( kc == 13 ) { // Enter
2
pyon@macmini
parents: 1
diff changeset
58 SelectAll();
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
59
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
60 MainFrame* f = (MainFrame*)FindWindowById( ID_MAIN );
2
pyon@macmini
parents: 1
diff changeset
61 f->Cmd( GetValue() );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
62
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
63 event.Skip();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
64 return;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
65 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
66
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
67 if ( kc == 45 ) { // Num-Key '-' as Backspace
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
68 wxString t = GetStringSelection();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
69 if ( t.IsEmpty() ) {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
70 long p = GetInsertionPoint();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
71 if ( p > 0 ) Remove( p - 1, p );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
72 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
73 else {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
74 Cut();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
75 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
76 return;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
77 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
78
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
79 if ( kc == WXK_ESCAPE ) { // clear by ESC
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
80 this->Clear();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
81 return;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
82 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
83
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
84 event.Skip();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
85 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
86
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
87 /********************/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
88 /** MyStaticBitmap **/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
89 /********************/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
90 MyStaticBitmap::MyStaticBitmap( wxScrolledWindow *parent, wxWindowID id, const wxBitmap &label, const wxPoint &pos, const wxSize &size, long style, const wxString &name )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
91 : wxStaticBitmap( parent, id, label, pos, size, style, name )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
92 {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
93 m_parent = parent;
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
94 Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler( OnLeftDown ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
95 Connect( wxEVT_LEFT_UP, wxMouseEventHandler( OnLeftUp ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
96 Connect( wxEVT_MOTION, wxMouseEventHandler( OnMotion ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
97 Connect( wxEVT_MOUSEWHEEL, wxMouseEventHandler( OnWheel ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
98
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
99 Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( OnStartRGesture ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
100 Connect( wxEVT_RIGHT_UP, wxMouseEventHandler( OnEndRGesture ), NULL, this );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
101 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
102
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
103 MyStaticBitmap::~MyStaticBitmap()
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
104 {
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
105 Disconnect( wxEVT_LEFT_DOWN, wxMouseEventHandler( OnLeftDown ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
106 Disconnect( wxEVT_LEFT_UP, wxMouseEventHandler( OnLeftUp ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
107 Disconnect( wxEVT_MOTION, wxMouseEventHandler( OnMotion ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
108 Disconnect( wxEVT_MOUSEWHEEL, wxMouseEventHandler( OnWheel ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
109
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
110 Disconnect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( OnStartRGesture ), NULL, this );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
111 Disconnect( wxEVT_RIGHT_UP, wxMouseEventHandler( OnEndRGesture ), NULL, this );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
112 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
113
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
114 // Event Handlers
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
115 void MyStaticBitmap::OnWheel( wxMouseEvent& event )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
116 {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
117 if ( event.ControlDown() ) {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
118 if ( event.GetWheelRotation() < 0 ) {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
119 if ( m_zoom < 4 ) m_zoom++;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
120 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
121 else {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
122 if ( m_zoom > 0 ) m_zoom--;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
123 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
124 SetBitmap( m_bmp[ m_zoom ] );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
125 m_parent->SetScrollbars( 10, 10, m_bmp[ m_zoom ].GetWidth() / 10, m_bmp[ m_zoom ].GetHeight() / 10 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
126 return;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
127 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
128 event.Skip();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
129 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
130
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
131 void MyStaticBitmap::OnLeftDown( wxMouseEvent& event )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
132 {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
133 event.GetPosition( &m_dragx, &m_dragy );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
134 SetCursor( wxCursor( wxCURSOR_SIZING ) );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
135 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
136
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
137 void MyStaticBitmap::OnLeftUp( wxMouseEvent& WXUNUSED(event) )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
138 {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
139 SetCursor( wxCursor( wxCURSOR_ARROW ) );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
140 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
141
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
142 void MyStaticBitmap::OnMotion( wxMouseEvent& event )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
143 {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
144 if ( event.RightIsDown() ) return;
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
145 if ( event.Dragging() ) {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
146 int xv, yv, x, y;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
147 m_parent->GetViewStart( &xv, &yv );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
148
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
149 event.GetPosition( &x, &y );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
150
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
151 int xa = abs( x - m_dragx );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
152 int ya = abs( y - m_dragy );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
153 int xs = x - m_dragx < 0 ? -1 : 1;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
154 int ys = y - m_dragy < 0 ? -1 : 1;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
155
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
156 /* handai dakedo sumu-zu
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
157 m_parent->Scroll( xv + xs * log10( xa + 1 ), yv + ys * log10( ya + 1 ) );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
158 */
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
159 m_parent->Scroll( xv + xs * log10( xa + 1 ), yv + ys * log10( ya + 1 ) );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
160
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
161 m_dragx = x; m_dragy = y;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
162 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
163 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
164
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
165 /* right-gesture: start detect */
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
166 void MyStaticBitmap::OnStartRGesture( wxMouseEvent& event )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
167 {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
168 event.GetPosition( &cx, &cy );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
169 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
170
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
171 /* right-gesture: judge */
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
172 void MyStaticBitmap::OnEndRGesture( wxMouseEvent& event )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
173 {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
174 int x, y;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
175 event.GetPosition( &x, &y );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
176
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
177 int dx = x - cx;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
178 int dy = y - cy;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
179 float rad = fabs( atan2( dy, dx ) );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
180 float pi = 3.14159;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
181
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
182 // to right
4
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
183 if ( rad < pi / 8 && dx > 0 ) {
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
184 ChangeBook( 1 );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
185 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
186 // to left
4
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
187 else if ( rad > pi / 8 * 7 && rad < pi && dx < 0 ) {
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
188 ChangeBook( -1 );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
189 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
190 // to up-right
4
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
191 else if ( rad > pi / 8 && rad < pi / 8 * 3 && dx > 0 ) {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
192 MainFrame* mf = (MainFrame*)FindWindowById( ID_MAIN );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
193 mf->Close();
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
194 }
4
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
195 // down
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
196 else if ( rad > pi / 8 * 3 && rad < pi / 8 * 5 && dy > 0 ) {
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
197 MainFrame* mf = (MainFrame*)FindWindowById( ID_MAIN );
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
198 mf->PrintImages();
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
199 }
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
200 //wxMessageBox( wxString::Format( "%d %d %f", dx, dy, rad ));
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
201 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
202
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
203 // Functions
4
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
204 void MyStaticBitmap::ChangeBook( int i )
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
205 {
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
206 wxNotebook* nb = (wxNotebook*)FindWindowById( ID_NBOOK );
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
207 int n = nb->GetSelection();
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
208 if ( i > 0 ) {
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
209 if ( n == nb->GetPageCount() - 1 ) return;
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
210 nb->SetSelection( ++n );
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
211 } else {
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
212 if ( n == 0 ) return;
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
213 nb->SetSelection( --n );
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
214 }
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
215 }
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
216
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
217 /********************/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
218 /** Main Frame **/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
219 /********************/
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
220 MainFrame::MainFrame( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
221 : wxFrame( parent, id, title, pos, size, style )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
222 {
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
223 CreateControls();
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
224 SetAccelerator();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
225 LoadBitmaps( wxEmptyString, false );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
226 m_timer.SetOwner( this, ID_TIMER );
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
227 }
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
228
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
229 MainFrame::~MainFrame()
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
230 {
2
pyon@macmini
parents: 1
diff changeset
231 RemoveFile( wxT( "auth.db" ) );
pyon@macmini
parents: 1
diff changeset
232 RemoveFile( wxT( "hhs.db" ) );
pyon@macmini
parents: 1
diff changeset
233 RemoveFile( wxT( ".cache/*" ) );
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
234 }
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
235
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
236 // Event Table
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
237 BEGIN_EVENT_TABLE( MainFrame, wxFrame )
2
pyon@macmini
parents: 1
diff changeset
238 EVT_DATAVIEW_SELECTION_CHANGED( ID_LIST, MainFrame::OnItemSelected )
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
239 EVT_DATAVIEW_ITEM_ACTIVATED( ID_LIST, MainFrame::OnItemDClicked )
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
240 EVT_NOTEBOOK_PAGE_CHANGED( ID_NBOOK, MainFrame::OnNBookChanged )
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
241 EVT_BUTTON( wxID_PRINT, MainFrame::OnPrint )
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
242 EVT_BUTTON( ID_PSEARCH, MainFrame::OnPasteSearch )
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
243 EVT_BUTTON( wxID_HELP, MainFrame::OnHelp )
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
244 EVT_BUTTON( ID_LOGOUT, MainFrame::OnLogout )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
245 EVT_CLOSE( MainFrame::OnClose )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
246 EVT_IDLE( MainFrame::OnIdle )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
247 EVT_TIMER( ID_TIMER, MainFrame::OnTimer )
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
248 END_EVENT_TABLE()
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
249
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
250
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
251 // Event Handler
2
pyon@macmini
parents: 1
diff changeset
252 void MainFrame::OnItemSelected( wxDataViewEvent& WXUNUSED(event) )
pyon@macmini
parents: 1
diff changeset
253 {
pyon@macmini
parents: 1
diff changeset
254 int r = m_dataViewListCtrl->GetSelectedRow();
pyon@macmini
parents: 1
diff changeset
255 wxString ready = m_dataViewListCtrl->GetTextValue( r, 2 );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
256 if ( ready.IsSameAs( wxT( "OK" ), true ) ) {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
257 wxString date = m_dataViewListCtrl->GetTextValue( r, 1 );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
258 date.Replace( wxT( "-" ), wxEmptyString, true );
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
259 LoadBitmaps( date, false );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
260 } else {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
261 LoadBitmaps( wxEmptyString, false );
2
pyon@macmini
parents: 1
diff changeset
262 }
pyon@macmini
parents: 1
diff changeset
263 }
pyon@macmini
parents: 1
diff changeset
264
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
265 void MainFrame::OnItemDClicked( wxDataViewEvent& WXUNUSED(event) )
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
266 {
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
267 int r = m_dataViewListCtrl->GetSelectedRow();
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
268 wxString status = m_dataViewListCtrl->GetTextValue( r, 2 );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
269 if ( status.IsSameAs( wxT( "OK" ), true ) ) return;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
270
2
pyon@macmini
parents: 1
diff changeset
271 wxString date = m_dataViewListCtrl->GetTextValue( r, 1 );
pyon@macmini
parents: 1
diff changeset
272 date.Replace( wxT( "-" ), wxEmptyString, true );
pyon@macmini
parents: 1
diff changeset
273 GetImages( m_hhs, date );
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
274 if ( LoadBitmaps( date, true ) )
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
275 m_dataViewListCtrl->SetTextValue( wxT( "OK" ), r, 2 );
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
276 }
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
277
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
278 void MainFrame::OnNBookChanged( wxBookCtrlEvent& WXUNUSED(event) )
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
279 {
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
280 for ( int i = 0; i < m_notebook->GetPageCount(); i++ ) {
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
281 m_notebook->SetPageImage( i, 1 );
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
282 }
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
283 m_notebook->SetPageImage( m_notebook->GetSelection(), 0 );
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
284 }
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
285
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
286 void MainFrame::OnClose( wxCloseEvent& WXUNUSED(event) ) // save config
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
287 {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
288 WriteLog( wxT( "[logout]" ) );
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
289 if ( !IsIconized() && !IsMaximized() ) {
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
290 wxGetApp().rect = this->GetRect();
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
291 }
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
292 Destroy();
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
293 }
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
294
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
295 void MainFrame::OnPasteSearch( wxCommandEvent& WXUNUSED(event) )
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
296 {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
297 PasteSeaarch();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
298 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
299
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
300 void MainFrame::OnPrint( wxCommandEvent& WXUNUSED(event) )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
301 {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
302 PrintImages();
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
303 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
304
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
305 void MainFrame::OnHelp( wxCommandEvent& WXUNUSED(event) )
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
306 {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
307 wxString version, build;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
308 version = wxString::Format( wxT( "Re:Searcher-- version %s / %s\n\n" ), RSVER, RSRELEASE );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
309 build = wxString::Format( wxT( "build with %s\nrunning under %s." ), wxVERSION_STRING, wxGetOsDescription() );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
310
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
311 wxMessageBox( version + build, wxT( "Help" ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
312 return;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
313 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
314
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
315 void MainFrame::OnLogout( wxCommandEvent& WXUNUSED(event) )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
316 {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
317 wxMessageBox("logout");
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
318 return;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
319 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
320
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
321 void MainFrame::OnTimer( wxTimerEvent& WXUNUSED(event) )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
322 {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
323 //wxMessageBox( "timer !" );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
324 // logout
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
325 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
326
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
327 void MainFrame::OnIdle( wxIdleEvent& event )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
328 {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
329 if ( !m_timer.IsRunning() ) {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
330 m_timer.Start( 300 * 1000, wxTIMER_ONE_SHOT );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
331 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
332 event.RequestMore();
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
333 event.Skip();
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
334 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
335
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
336 // Functions
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
337 void MainFrame::CreateControls( void )
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
338 {
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
339 this->SetIcon( wxIcon( wxT( "sample" ) ) );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
340 this->SetSizeHints( wxDefaultSize, wxDefaultSize );
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
341 this->SetBackgroundColour( wxColour( 30, 80, 40 ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
342 //this->SetBackgroundColour( wxColour( 153, 153, 153 ) );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
343
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
344 wxBoxSizer* bSizerTop = new wxBoxSizer( wxHORIZONTAL );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
345
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
346 // Left
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
347 wxImageList* imgList = new wxImageList( 16, 16, false, 1 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
348 wxBitmap bmp( wxT( "image/blue.png" ), wxBITMAP_TYPE_PNG );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
349 imgList->Add( bmp, wxNullBitmap );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
350 bmp.LoadFile( wxT( "image/water.png" ), wxBITMAP_TYPE_PNG );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
351 imgList->Add( bmp, wxNullBitmap );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
352
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
353 m_notebook = new wxNotebook( this, ID_NBOOK, wxDefaultPosition, wxDefaultSize, 0 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
354 m_notebook->SetImageList( imgList );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
355
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
356 m_scrolledWindow1 = new wxScrolledWindow( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
357 m_scrolledWindow1->SetScrollRate( 5, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
358 m_notebook->AddPage( m_scrolledWindow1, wxT( "Image-01" ), false, 0 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
359
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
360 m_scrolledWindow2 = new wxScrolledWindow( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
361 m_scrolledWindow2->SetScrollRate( 5, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
362 m_notebook->AddPage( m_scrolledWindow2, wxT( "Image-02" ), false, 0 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
363
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
364 m_scrolledWindow3 = new wxScrolledWindow( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
365 m_scrolledWindow3->SetScrollRate( 5, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
366 m_notebook->AddPage( m_scrolledWindow3, wxT( "Image-03" ), false, 0 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
367
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
368 m_scrolledWindow4 = new wxScrolledWindow( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
369 m_scrolledWindow4->SetScrollRate( 5, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
370 m_notebook->AddPage( m_scrolledWindow4, wxT( "Image-04" ), false, 0 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
371
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
372 m_scrolledWindow5 = new wxScrolledWindow( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
373 m_scrolledWindow5->SetScrollRate( 5, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
374 m_notebook->AddPage( m_scrolledWindow5, wxT( "Image-05" ), false, 0 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
375
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
376 m_scrolledWindow6 = new wxScrolledWindow( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
377 m_scrolledWindow6->SetScrollRate( 5, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
378 m_notebook->AddPage( m_scrolledWindow6, wxT( "Image-06" ), false, 0 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
379
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
380 bSizerTop->Add( m_notebook, 1, wxEXPAND|wxALL, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
381
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
382 // Right
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
383 wxBoxSizer* bSizerRight = new wxBoxSizer( wxVERTICAL );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
384
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
385 m_searchCtrl = new MySearchCtrl( this, ID_SEARCH, wxEmptyString, wxDefaultPosition, wxSize( -1, 24 ), wxTE_PROCESS_ENTER );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
386 bSizerRight->Add( m_searchCtrl, 0, wxALL, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
387 m_searchCtrl->SetFocus();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
388
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
389 m_textCtrlName = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 80, -1 ), wxTE_READONLY );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
390 m_textCtrlName->SetBackgroundColour( wxColour( 180, 210, 240 ) );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
391 bSizerRight->Add( m_textCtrlName, 0, wxALL, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
392
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
393 m_textCtrlAddr = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 160, -1 ), wxTE_READONLY );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
394 m_textCtrlAddr->SetBackgroundColour( wxColour( 180, 210, 240 ) );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
395 bSizerRight->Add( m_textCtrlAddr, 0, wxALL|wxEXPAND, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
396
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
397 m_dataViewListCtrl = new wxDataViewListCtrl( this, ID_LIST, wxDefaultPosition, wxDefaultSize, wxDV_ROW_LINES|wxDV_SINGLE );
2
pyon@macmini
parents: 1
diff changeset
398 m_dataViewListColumnNo = m_dataViewListCtrl->AppendTextColumn( wxT( "No" ), wxDATAVIEW_CELL_INERT, 30, wxALIGN_RIGHT, wxDATAVIEW_COL_RESIZABLE|wxDATAVIEW_COL_SORTABLE );
pyon@macmini
parents: 1
diff changeset
399 m_dataViewListColumnDate = m_dataViewListCtrl->AppendTextColumn( wxT( "Date" ), wxDATAVIEW_CELL_INERT, 80, wxALIGN_CENTER, wxDATAVIEW_COL_RESIZABLE|wxDATAVIEW_COL_SORTABLE );
pyon@macmini
parents: 1
diff changeset
400 m_dataViewListColumnDate = m_dataViewListCtrl->AppendTextColumn( wxT( "Ready" ), wxDATAVIEW_CELL_INERT, 60, wxALIGN_CENTER, wxDATAVIEW_COL_RESIZABLE|wxDATAVIEW_COL_SORTABLE );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
401
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
402 bSizerRight->Add( m_dataViewListCtrl, 1, wxALL|wxEXPAND, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
403
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
404 m_textCtrlLog = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
405 bSizerRight->Add( m_textCtrlLog, 1, wxALL|wxEXPAND, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
406
2
pyon@macmini
parents: 1
diff changeset
407 m_slider = new wxSlider( this, ID_SLDR, 1, 1, 5, wxDefaultPosition, wxSize( -1, 200 ), wxSL_AUTOTICKS|wxSL_INVERSE|wxSL_LABELS|wxSL_VERTICAL );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
408 bSizerRight->Add( m_slider, 0, wxALL, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
409
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
410 m_buttonPsearch = new wxButton( this, ID_PSEARCH, wxT( "Paste-Search" ), wxDefaultPosition, wxDefaultSize, 0 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
411 bSizerRight->Add( m_buttonPsearch, 0, wxALL, 5 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
412
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
413 m_buttonPrint = new wxButton( this, wxID_PRINT, wxT( "Print" ), wxDefaultPosition, wxDefaultSize, 0 );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
414 bSizerRight->Add( m_buttonPrint, 0, wxALL, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
415
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
416 m_buttonHelp = new wxButton( this, wxID_HELP, wxT( "Help" ), wxDefaultPosition, wxDefaultSize, 0 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
417 bSizerRight->Add( m_buttonHelp, 0, wxALL, 5 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
418
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
419 m_buttonLogout = new wxButton( this, ID_LOGOUT, wxT( "Logout" ), wxDefaultPosition, wxDefaultSize, 0 );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
420 bSizerRight->Add( m_buttonLogout, 0, wxALL, 5 );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
421
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
422 bSizerTop->Add( bSizerRight, 0, wxEXPAND, 5 );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
423
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
424 this->SetSizer( bSizerTop );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
425 this->Layout();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
426
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
427 //this->Centre( wxBOTH );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
428
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
429 m_staticBitmap1 = new MyStaticBitmap( m_scrolledWindow1, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0, wxEmptyString );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
430 m_staticBitmap2 = new MyStaticBitmap( m_scrolledWindow2, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0, wxEmptyString );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
431 m_staticBitmap3 = new MyStaticBitmap( m_scrolledWindow3, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0, wxEmptyString );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
432 m_staticBitmap4 = new MyStaticBitmap( m_scrolledWindow4, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0, wxEmptyString );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
433 m_staticBitmap5 = new MyStaticBitmap( m_scrolledWindow5, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0, wxEmptyString );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
434 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
435
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
436 void MainFrame::SetAccelerator( void )
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
437 {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
438 wxAcceleratorEntry entries[2];
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
439 entries[0].Set( wxACCEL_CTRL, (int) 'P', wxID_PRINT );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
440 entries[1].Set( wxACCEL_NORMAL, WXK_F1, wxID_HELP );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
441 /*
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
442 entries[1].Set( wxACCEL_CTRL, (int) 'X', wxID_EXIT );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
443 entries[2].Set( wxACCEL_SHIFT, (int) 'A', ID_ABOUT);
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
444 entries[3].Set( wxACCEL_NORMAL, WXK_DELETE, wxID_CUT);
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
445 */
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
446 wxAcceleratorTable accel( 2, entries );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
447 SetAcceleratorTable( accel );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
448 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
449
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
450 void MainFrame::Cmd( wxString cmd )
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
451 {
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
452 m_dataViewListCtrl->DeleteAllItems();
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
453 LoadBitmaps( wxEmptyString, false );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
454 wxRegEx reHhs( wxT( "^0[1238][0-9]{8}$" ) );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
455
2
pyon@macmini
parents: 1
diff changeset
456 if ( cmd.IsSameAs( wxT( "q" ), true ) || cmd.IsSameAs( wxT( "9" ), true ) ) {
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
457 Close();
2
pyon@macmini
parents: 1
diff changeset
458 return;
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
459 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
460
2
pyon@macmini
parents: 1
diff changeset
461 if ( cmd.IsSameAs( wxT( "c" ), true ) || cmd.IsSameAs( wxT( "cmd" ), true ) ) {
pyon@macmini
parents: 1
diff changeset
462 return;
pyon@macmini
parents: 1
diff changeset
463 }
pyon@macmini
parents: 1
diff changeset
464
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
465 if ( cmd.IsSameAs( wxT( "k" ), true ) ) {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
466 // hiragana kensaku
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
467 return;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
468 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
469
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
470 if ( cmd.IsSameAs( wxT( "." ), false ) ) {
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
471 wxString appdir = wxGetCwd();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
472 wxString execmd = wxT( "explorer " ) + appdir;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
473 wxExecute( execmd );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
474 return;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
475 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
476
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
477 if ( cmd.IsSameAs( wxT( "*" ), false ) ) {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
478 PasteSeaarch();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
479 return;
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
480 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
481
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
482 if ( cmd.IsSameAs( wxT( "+" ), false ) ) {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
483 PrintImages();
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
484 return;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
485 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
486
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
487 if ( reHhs.Matches( cmd ) ) {
2
pyon@macmini
parents: 1
diff changeset
488 m_hhs = m_searchCtrl->GetValue();
pyon@macmini
parents: 1
diff changeset
489 Search();
pyon@macmini
parents: 1
diff changeset
490 return;
pyon@macmini
parents: 1
diff changeset
491 }
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
492
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
493 wxMessageBox( wxT( "Bad Input !!" ) );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
494 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
495
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
496 bool MainFrame::LoadBitmap( wxScrolledWindow* sc, wxStaticBitmap* sb, wxString file )
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
497 {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
498 sb->SetBitmap( wxNullBitmap );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
499 sc->Scroll( 0, 0 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
500
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
501 bool ok = true;
2
pyon@macmini
parents: 1
diff changeset
502 if ( startup ) {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
503 file = wxT( "image/hello.jpg" );
2
pyon@macmini
parents: 1
diff changeset
504 startup = false;
pyon@macmini
parents: 1
diff changeset
505 }
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
506 if ( !wxFileExists( file ) ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
507 file = wxT( "image/testpattern.jpg" );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
508 ok = false;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
509 }
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
510 wxBitmap bmp( file, wxBITMAP_TYPE_JPEG );
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
511 int width = bmp.GetWidth();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
512 int height = bmp.GetHeight();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
513 wxImage img = bmp.ConvertToImage();
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
514
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
515 int ww, wh;
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
516 sc->GetSize( &ww, &wh );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
517
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
518 float w = ww - 30;
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
519 float h = w * height / width;
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
520 sb->SetBitmap( wxBitmap( img.Scale( w, h, wxIMAGE_QUALITY_HIGH ) ) );
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
521 sc->SetScrollbars( 10, 10, (int)w / 10, (int)h / 10 );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
522
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
523 return ok;
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
524 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
525
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
526 bool MainFrame::LoadBitmaps( wxString date, bool reload )
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
527 {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
528 bool ok;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
529 ok = LoadBitmap( m_scrolledWindow1, m_staticBitmap1, wxString::Format( wxT( ".cache/%08s_1" ), date ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
530 ok = LoadBitmap( m_scrolledWindow2, m_staticBitmap2, wxString::Format( wxT( ".cache/%08s_2" ), date ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
531 ok = LoadBitmap( m_scrolledWindow3, m_staticBitmap3, wxString::Format( wxT( ".cache/%08s_3" ), date ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
532 ok = LoadBitmap( m_scrolledWindow4, m_staticBitmap4, wxString::Format( wxT( ".cache/%08s_4" ), date ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
533 ok = LoadBitmap( m_scrolledWindow5, m_staticBitmap5, wxString::Format( wxT( ".cache/%08s_5" ), date ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
534
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
535 if ( !ok && reload ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
536 wxSleep( 5 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
537 LoadBitmaps( date, false );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
538 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
539 return ok;
2
pyon@macmini
parents: 1
diff changeset
540 }
pyon@macmini
parents: 1
diff changeset
541
pyon@macmini
parents: 1
diff changeset
542 void MainFrame::GetImages( wxString hhs, wxString date )
pyon@macmini
parents: 1
diff changeset
543 {
pyon@macmini
parents: 1
diff changeset
544 wxArrayString args; // http get
pyon@macmini
parents: 1
diff changeset
545 args.Add( wxT( "client.exe" ) );
pyon@macmini
parents: 1
diff changeset
546 args.Add( m_server );
pyon@macmini
parents: 1
diff changeset
547 args.Add( hhs );
pyon@macmini
parents: 1
diff changeset
548 args.Add( date );
pyon@macmini
parents: 1
diff changeset
549
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
550 int estimate = 5;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
551 wxProgressDialog pd( wxT( "Connecting Server" ), wxT( "Start..." ), estimate, NULL, wxPD_APP_MODAL|wxPD_ELAPSED_TIME|wxPD_REMAINING_TIME|wxPD_AUTO_HIDE );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
552 pd.SetSize( wxSize( 320, 140 ) );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
553
2
pyon@macmini
parents: 1
diff changeset
554 wxExecute( wxJoin( args, ' ', '\\' ), wxEXEC_ASYNC|wxEXEC_HIDE_CONSOLE );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
555 for ( int i = 0; i < estimate; i++ ) {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
556 wxSleep( 1 );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
557 pd.Update( i, wxT( "Now Loading..." ) );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
558 }
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
559 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
560
2
pyon@macmini
parents: 1
diff changeset
561 void MainFrame::Search( void )
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
562 {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
563 // hhs info
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
564 if ( hhash.count( m_hhs ) ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
565 m_textCtrlName->SetValue( hhash[ m_hhs ]->name );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
566 m_textCtrlAddr->SetValue( hhash[ m_hhs ]->addr );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
567 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
568
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
569 // index
2
pyon@macmini
parents: 1
diff changeset
570 wxString date;
pyon@macmini
parents: 1
diff changeset
571 int match_cnt = 0;
pyon@macmini
parents: 1
diff changeset
572 for ( int i = 0; i < m_index.GetCount(); i++ ) {
pyon@macmini
parents: 1
diff changeset
573 if ( m_index[i].StartsWith( m_hhs, &date ) ) {
pyon@macmini
parents: 1
diff changeset
574 wxVector<wxVariant> data;
pyon@macmini
parents: 1
diff changeset
575 data.push_back( wxString::Format( wxT( "%02d" ), ++match_cnt ) );
pyon@macmini
parents: 1
diff changeset
576 date = date.Mid( 1, 4 ) + wxT( "-" ) + date.Mid( 5, 2 ) + wxT( "-" ) + date.Mid( 7, 2 );
pyon@macmini
parents: 1
diff changeset
577 data.push_back( date );
pyon@macmini
parents: 1
diff changeset
578 data.push_back( wxEmptyString );
pyon@macmini
parents: 1
diff changeset
579 m_dataViewListCtrl->AppendItem( data );
pyon@macmini
parents: 1
diff changeset
580 data.clear();
pyon@macmini
parents: 1
diff changeset
581 }
pyon@macmini
parents: 1
diff changeset
582 }
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
583
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
584 if ( match_cnt == 0 ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
585 wxMessageBox( wxT( "Not Matched !!" ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
586 } else {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
587 wxString date = m_dataViewListCtrl->GetTextValue( 0, 1 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
588 date.Replace( wxT( "-" ), wxEmptyString, true );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
589 GetImages( m_hhs, date );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
590 if ( LoadBitmaps( date, true ) ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
591 m_dataViewListCtrl->SetTextValue( wxT( "OK" ), 0, 2 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
592 m_dataViewListCtrl->SelectRow( 0 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
593 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
594 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
595
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
596 WriteLog( wxT( "[search] " ) + m_hhs );
2
pyon@macmini
parents: 1
diff changeset
597 }
pyon@macmini
parents: 1
diff changeset
598
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
599 void MainFrame::LoadDB( void )
2
pyon@macmini
parents: 1
diff changeset
600 {
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
601 wxProgressDialog pd( wxT( "Load Data" ), wxT( "Now loading..." ), 100, NULL, wxPD_APP_MODAL|wxPD_ELAPSED_TIME|wxPD_REMAINING_TIME|wxPD_AUTO_HIDE );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
602 pd.SetSize( wxSize( 320, 140 ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
603
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
604 // index
2
pyon@macmini
parents: 1
diff changeset
605 wxTextFile file;
pyon@macmini
parents: 1
diff changeset
606 file.Open( wxT( "index.db" ) );
pyon@macmini
parents: 1
diff changeset
607 for ( int i = 0; i < file.GetLineCount(); i++ )
pyon@macmini
parents: 1
diff changeset
608 m_index.Add( file.GetLine( i ) );
pyon@macmini
parents: 1
diff changeset
609 file.Close();
pyon@macmini
parents: 1
diff changeset
610 m_index.Sort( true );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
611
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
612 // decrypto
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
613 wxString key = wxT( "12345678900123456789abcdefabcdef" );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
614 wxArrayString args;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
615 args.Add( wxT( "crypto.exe" ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
616 args.Add( wxT( "-d" ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
617 args.Add( wxT( "hhs.db" ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
618 args.Add( wxT( "-k" ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
619 args.Add( key );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
620
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
621 wxArrayString output, errors;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
622 wxExecute( wxJoin( args, ' ', '\\' ), output, errors );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
623
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
624 for ( int i = 0; i < 100; i++ ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
625 wxMilliSleep( 2 );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
626 pd.Update( i, wxString::Format( wxT( "Now loding ... ( %0.1f %% )" ), (float)i ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
627 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
628 if ( errors.GetCount() > 0 ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
629 wxMessageBox( errors[0] );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
630 return;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
631 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
632 for ( int i = 0; i < output.GetCount(); i++ ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
633 wxArrayString buf = wxSplit( output[i], ',', '\\' );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
634 hhash[ buf[0] ] = new HhsClass( buf ); // no, birth, name, kana, addr, sex
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
635 }
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
636 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
637
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
638 void MainFrame::PasteSeaarch( void )
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
639 {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
640 wxString s;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
641 if ( wxTheClipboard->Open() ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
642 if ( wxTheClipboard->IsSupported( wxDF_TEXT ) ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
643 wxTextDataObject data;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
644 wxTheClipboard->GetData( data );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
645 s = data.GetText();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
646 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
647 wxTheClipboard->Close();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
648 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
649
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
650 s.Replace( wxT(" "), wxT(""), true );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
651 wxRegEx reHhs( wxT( "^0[1238][0-9]{8}$" ) );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
652 if ( reHhs.Matches( s ) ) {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
653 m_searchCtrl->SetValue( s );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
654 m_hhs = m_searchCtrl->GetValue();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
655 Search();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
656 return;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
657 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
658 wxMessageBox( wxT( "Bad Input !!" ) );
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
659 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
660
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
661 void MainFrame::PrintImages( void )
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
662 {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
663 int r = m_dataViewListCtrl->GetSelectedRow();
4
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
664 if ( r == wxNOT_FOUND ) {
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
665 wxMessageBox( wxT( "Not Ready for Print !!" ) );
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
666 return;
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
667 }
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
668 wxString ready = m_dataViewListCtrl->GetTextValue( r, 2 );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
669
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
670 if ( !ready.IsSameAs( wxT( "OK" ), true ) ) {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
671 wxMessageBox( wxT( "Not Ready for Print !!" ) );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
672 return;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
673 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
674
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
675 wxDateTime now = wxDateTime::Now();
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
676 wxString nowstr = now.Format( "%Y/%m/%d %H:%M", wxDateTime::GMT9 ).c_str();
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
677
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
678 wxString date = m_dataViewListCtrl->GetTextValue( r, 1 );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
679 date.Replace( wxT( "-" ), wxEmptyString, true );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
680
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
681 wxString html, file;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
682 html = wxT( "<html><body>\n" );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
683
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
684 for ( int i = 1; i < 6; i++ ) {
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
685 file = wxString::Format( wxT( ".cache/%08s_%d" ), date, i );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
686 html = html + wxT( "<img src=\"" ) + file + wxT( "\" width=\"750\" height=\"1060\"/>\n" );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
687 html = html + wxT( "<div align=right><font size=-2><u>" ) + m_hhs + wxT( "@" ) + m_user + wxT( "#" ) + nowstr + wxT( "</u></font></div>\n\n" );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
688 }
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
689 html = html + wxT( "</body></html>" );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
690
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
691 // start printing
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
692 wxHtmlPrintout hpout( wxT( "Re:Searcher" ) );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
693 hpout.SetMargins( 0, 0, 0, 0, 0 );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
694 wxPrintDialogData pd;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
695 wxPrinter p( &pd );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
696
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
697 hpout.SetHtmlText( html, wxEmptyString, false );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
698 p.Print( NULL, &hpout, true );
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
699
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
700 WriteLog( wxT( "[print]" ) );
2
pyon@macmini
parents: 1
diff changeset
701 }
pyon@macmini
parents: 1
diff changeset
702
pyon@macmini
parents: 1
diff changeset
703 void MainFrame::RemoveFile( wxString pattern )
pyon@macmini
parents: 1
diff changeset
704 {
pyon@macmini
parents: 1
diff changeset
705 wxString file = wxFindFirstFile( pattern );
pyon@macmini
parents: 1
diff changeset
706 while ( !file.empty() ) {
pyon@macmini
parents: 1
diff changeset
707 wxRemoveFile( file );
pyon@macmini
parents: 1
diff changeset
708 file = wxFindNextFile();
pyon@macmini
parents: 1
diff changeset
709 }
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
710 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
711
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
712 void MainFrame::WriteLog( wxString msg )
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
713 {
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
714 wxDateTime now = wxDateTime::Now();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
715 wxString file = wxGetCwd() + wxFILE_SEP_PATH + wxT( "log" ) + wxFILE_SEP_PATH + now.Format( wxT( "%Y%m%d" ) ) + wxT( ".log" );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
716
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
717 wxTextFile logfile;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
718 if ( !wxFileExists( file ) ) logfile.Create( file );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
719
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
720 logfile.Open( file );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
721 logfile.AddLine( now.Format( wxT("%Y-%m-%d %H:%M:%S ") ) + msg );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
722 logfile.Write();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
723 logfile.Close();
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
724 }
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
725
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
726 void MainFrame::InDevelop( bool flag )
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
727 {
1
eaa27e4ed5be add client_ui.go
pyon@macmini
parents: 0
diff changeset
728 if ( !flag ) return;
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
729
5
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
730 bool he = false;
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
731 m_buttonHelp->Enable( he );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
732 m_buttonHelp->Show( he );
e3b10fb860b3 release v1.0.
pyon@macmini
parents: 4
diff changeset
733
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
734 bool lo = false;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
735 m_buttonLogout->Enable( lo );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
736 m_buttonLogout->Show( lo );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
737
3
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
738 bool sl = false;
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
739 m_slider->Enable( sl );
db4813125eb8 many changes.
pyon@macmini
parents: 2
diff changeset
740 m_slider->Show( sl );
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
741
4
06342fc544e4 mouse gesture.
pyon@macmini
parents: 3
diff changeset
742 return;
0
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
743 }
d3b8cd5aeb70 make repo.
pyon@macmini
parents:
diff changeset
744