annotate src/myframe.cpp @ 1:7b6dab24f4b8

Gui parts complete.
author pyon@macmini
date Sun, 04 Aug 2013 21:42:49 +0900
parents 0c0701a935f8
children c066fde99517
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
1 // Filename : myframe.cpp
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
2 // Last Change: 04-Aug-2013.
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
3 //
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
4 #include "main.h"
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
5 #include "db.h"
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
6 #include "myframe.h"
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
7 #include "about.h"
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
8 #include "kana.h"
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
9 #include "hist.h"
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
10 #include "index.h"
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
11 #include "mask.h"
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
12
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
13 ///////////////////////////////////////////////////////////////
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
14 // カスタム検索ボックス
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
15 MySearchBox::MySearchBox( wxWindow* parent, wxWindowID id, const wxString& value, const wxPoint& pos, const wxSize& size, long style )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
16 : wxSearchCtrl( parent, id, value, pos, size, style )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
17 {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
18 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
19
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
20 MySearchBox::~MySearchBox()
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
21 {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
22 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
23
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
24 // Event Table
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
25 BEGIN_EVENT_TABLE( MySearchBox, wxSearchCtrl )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
26 EVT_CHAR( MySearchBox::OnKey )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
27 END_EVENT_TABLE()
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
28
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
29 // Event Handlers & Functions
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
30 void MySearchBox::OnKey( wxKeyEvent& event )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
31 {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
32 wxString s = GetValue();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
33 // statustext( s.Len() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
34
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
35 if ( event.GetKeyCode() == 45 ) { // テンキーの '-' キーで1文字削除
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
36 wxString t = GetStringSelection();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
37 if ( t.IsEmpty() ) {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
38 long p = GetInsertionPoint();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
39 if ( p > 0 ) Remove( p - 1, p );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
40 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
41 else {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
42 Cut();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
43 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
44 return;
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
45 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
46
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
47 if ( event.GetKeyCode() == WXK_RETURN ) {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
48
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
49 if ( s.IsSameAs( wxT("+") ) ) {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
50 wxMessageBox(wxT("pripri"));
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
51 return;
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
52 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
53
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
54 wxRegEx reHhs( wxT("^0[1238][0-9]{8}$") );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
55 if ( reHhs.Matches( s ) ) {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
56 wxString t = GetHhsInfoByHhsNo( s );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
57 wxArrayString array = GetPathByHhsNo( s );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
58 wxMessageBox( t );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
59 return;
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
60 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
61
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
62 wxRegEx reNo( wxT("^[0-9]{1,2}$") );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
63 if ( reNo.Matches( s ) ) {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
64 return;
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
65 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
66
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
67 //m_parent->SetStatusMessage(wxT("bad input"), 0 );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
68 return;
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
69 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
70
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
71 event.Skip();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
72 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
73
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
74 ///////////////////////////////////////////////////////////////
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
75 // メインフレーム
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
76 #define WINL_W 400
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
77 #define LOGO_W 200
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
78 #define LOGO_H 92
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
79
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
80 // resources
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
81 #if !defined(__WXMSW__) && !defined(__WXPM__)
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
82 #include "sample.xpm"
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
83 #endif
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
84
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
85 MyFrame::MyFrame( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
86 : wxFrame( parent, id, title, pos, size, style )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
87 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
88 this->SetSizeHints( wxSize( WINL_W, 500 ), wxDefaultSize );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
89 this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_ACTIVEBORDER ) );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
90 //this->SetBackgroundColour( wxColour(wxT("WHEAT")) );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
91
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
92 // set the frame icon
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
93 SetIcon(wxICON(sample));
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
94
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
95 // メニューバー Menu
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
96 m_menubar = new wxMenuBar( 0 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
97 m_menuFile = new wxMenu();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
98
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
99 wxMenuItem* m_menuItemViewMode = new wxMenuItem( m_menuFile, ID_MNVIEW, wxString( wxT("ビューモード") ) , wxT("Toggle ViewMode"), wxITEM_CHECK );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
100 m_menuFile->Append( m_menuItemViewMode );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
101
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
102 m_menuFile->AppendSeparator(); // ----
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
103
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
104 wxMenuItem* m_menuItemIndex = new wxMenuItem( m_menuFile, ID_MNINDEX, wxString( wxT("インデックス") ) , wxT("Update index"), wxITEM_NORMAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
105 m_menuFile->Append( m_menuItemIndex );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
106
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
107 wxMenuItem* m_menuItemMask = new wxMenuItem( m_menuFile, ID_MNMASKPARAM, wxString( wxT("マスクパラメータ") ) , wxT("Setup mask parameters"), wxITEM_NORMAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
108 m_menuFile->Append( m_menuItemMask );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
109
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
110 wxMenuItem* m_menuItemAppDir = new wxMenuItem( m_menuFile, ID_MNAPPDIR, wxString( wxT("アプリケーションフォルダを開く") ) , wxT("Open application directory"), wxITEM_NORMAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
111 m_menuFile->Append( m_menuItemAppDir );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
112
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
113 m_menuFile->AppendSeparator(); // ----
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
114
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
115 wxMenuItem* m_menuItemAbout = new wxMenuItem( m_menuFile, ID_MNABOUT, wxString( wxT("&About...\tF1") ) , wxT("Show about dialog"), wxITEM_NORMAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
116 m_menuFile->Append( m_menuItemAbout );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
117
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
118 m_menubar->Append( m_menuFile, wxT("ファイル(&F)") );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
119
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
120 this->SetMenuBar( m_menubar );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
121
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
122 //
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
123 wxBoxSizer* bSizerTop = new wxBoxSizer( wxVERTICAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
124
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
125 m_splitter = new wxSplitterWindow( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSP_3D );
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
126 wxBoxSizer* bSizerL = new wxBoxSizer( wxVERTICAL );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
127
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
128 // left-pane
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
129 m_panelL = new wxPanel( m_splitter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
130
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
131 wxString logo = wxGetCwd() + wxFILE_SEP_PATH + wxT("image") + wxFILE_SEP_PATH + wxT("logo.png");
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
132 wxBitmap bmp = wxBitmap( logo, wxBITMAP_TYPE_PNG );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
133 m_bitmap = new wxStaticBitmap( m_panelL, wxID_ANY, bmp, wxDefaultPosition, wxSize( LOGO_W, LOGO_H ), 0 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
134 bSizerL->Add( m_bitmap, 0, wxALL, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
135
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
136 m_textCtrlName = new wxTextCtrl( m_panelL, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 200, -1 ), 0 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
137 bSizerL->Add( m_textCtrlName, 0, wxALL, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
138
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
139 m_textCtrlAddr = new wxTextCtrl( m_panelL, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 380, -1 ), 0 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
140 bSizerL->Add( m_textCtrlAddr, 0, wxALL, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
141
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
142 m_listCtrl = new wxListCtrl( m_panelL, ID_LIST, wxDefaultPosition, wxDefaultSize, wxLC_REPORT );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
143 wxListItem itemCol;
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
144 itemCol.SetText( wxT("通番") );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
145 m_listCtrl->InsertColumn( 0, itemCol );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
146 m_listCtrl->SetColumnWidth( 0, 50 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
147 itemCol.SetText( wxT("年月日") );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
148 m_listCtrl->InsertColumn( 1, itemCol );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
149 m_listCtrl->SetColumnWidth( 1, 80 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
150 itemCol.SetText( wxT("場所") );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
151 m_listCtrl->InsertColumn( 2, itemCol );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
152 m_listCtrl->SetColumnWidth( 2, 300 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
153 bSizerL->Add( m_listCtrl, 1, wxALL|wxEXPAND, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
154
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
155 wxBoxSizer* bSizerCmd = new wxBoxSizer( wxHORIZONTAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
156
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
157 m_staticText = new wxStaticText( m_panelL, wxID_ANY, wxT("コマンド?"), wxDefaultPosition, wxDefaultSize, 0 );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
158 bSizerCmd->Add( m_staticText, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
159
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
160 m_searchBox = new MySearchBox( m_panelL, ID_SEARCH, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
161 #ifndef __WXMAC__
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
162 m_searchBox->ShowSearchButton( true );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
163 #endif
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
164 m_searchBox->ShowCancelButton( false );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
165 m_searchBox->SetFocus();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
166 bSizerCmd->Add( m_searchBox, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
167
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
168 m_buttonKana = new wxButton( m_panelL, ID_KANA, wxT("カナ検索"), wxDefaultPosition, wxSize( 65, -1 ), 0 );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
169 bSizerCmd->Add( m_buttonKana, 0, wxLEFT|wxALIGN_CENTER_VERTICAL, 20 );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
170
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
171 m_buttonHist = new wxButton( m_panelL, ID_HIST, wxT("検索履歴"), wxDefaultPosition, wxSize( 65, -1 ), 0 );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
172 bSizerCmd->Add( m_buttonHist, 0, wxALL, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
173
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
174 bSizerL->Add( bSizerCmd, 0, wxEXPAND, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
175
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
176 m_panelL->SetSizer( bSizerL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
177 m_panelL->Layout();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
178 bSizerL->Fit( m_panelL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
179
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
180 // right-pane
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
181 m_panelR = new wxPanel( m_splitter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
182 wxBoxSizer* bSizerR = new wxBoxSizer( wxHORIZONTAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
183
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
184 m_bitmapView = new wxStaticBitmap( m_panelR, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
185 bSizerR->Add( m_bitmapView, 1, wxALL|wxEXPAND, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
186
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
187 m_listCtrlThumb = new wxListCtrl( m_panelR, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_ICON );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
188 bSizerR->Add( m_listCtrlThumb, 0, wxALL|wxEXPAND, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
189
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
190 m_panelR->SetSizer( bSizerR );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
191 m_panelR->Layout();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
192 bSizerR->Fit( m_panelR );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
193
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
194 m_panelR->Show( false );
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
195 m_splitter->Initialize( m_panelL );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
196 bSizerTop->Add( m_splitter, 1, wxEXPAND, 5 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
197
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
198 this->SetSizer( bSizerTop );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
199 this->Layout();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
200
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
201 // ステータスバー Statusbar
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
202 m_statusBar = new wxStatusBar( this, wxID_ANY, wxST_SIZEGRIP );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
203 int widths[] = { 200, 100, -1, 90 };
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
204 m_statusBar->SetFieldsCount( 4, widths );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
205 this->SetStatusBar( m_statusBar );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
206 SetStatusText( wxT("被保番を入力してスタート!") );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
207
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
208 this->Centre( wxBOTH );
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
209 LoadMaskParam();
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
210 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
211
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
212 MyFrame::~MyFrame()
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
213 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
214 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
215
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
216 // Event Table
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
217 BEGIN_EVENT_TABLE( MyFrame, wxFrame )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
218 EVT_MENU( ID_MNABOUT, MyFrame::OnAbout )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
219 EVT_MENU( wxID_EXIT, MyFrame::OnQuit )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
220 EVT_MENU( ID_MNVIEW, MyFrame::OnViewMode )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
221 EVT_MENU( ID_MNINDEX, MyFrame::OnIndex )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
222 EVT_MENU( ID_MNMASKPARAM, MyFrame::OnMaskParam )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
223 EVT_MENU( ID_MNAPPDIR, MyFrame::OnOpenAppDir )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
224 EVT_LIST_ITEM_ACTIVATED( ID_LIST, MyFrame::OnOpenHhsDir )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
225 EVT_BUTTON( ID_KANA, MyFrame::OnKana )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
226 EVT_BUTTON( ID_HIST, MyFrame::OnHistory )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
227 EVT_SIZE( MyFrame::OnWinSize )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
228 EVT_MOVE( MyFrame::OnWinMove )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
229 EVT_CLOSE( MyFrame::SaveConfig )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
230 END_EVENT_TABLE()
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
231
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
232 // Event Handlers & Functions
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
233 /* インデックス作成ダイアログ */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
234 void MyFrame::OnIndex( wxCommandEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
235 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
236 IndexDialog* index = new IndexDialog( this, wxID_ANY, wxT("インデックス作成"), wxDefaultPosition, wxSize( 500, 600 ), wxCAPTION|wxFRAME_NO_TASKBAR|wxSTAY_ON_TOP|wxTAB_TRAVERSAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
237 index->ShowWithEffect( wxSHOW_EFFECT_SLIDE_TO_BOTTOM );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
238 index->ShowModal();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
239 }
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
240 /* マスクパラメータを設定ファイルから読み込む */
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
241 void MyFrame::LoadMaskParam( void )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
242 {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
243 conf_file = wxGetCwd() + wxFILE_SEP_PATH + wxT("app.conf");
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
244 config = new wxFileConfig( wxT("MyApp"), wxT("T.Mutoh"), conf_file, wxEmptyString, wxCONFIG_USE_LOCAL_FILE );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
245
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
246 int x, y, w, h;
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
247
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
248 config->SetPath( wxT("/Mask") );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
249
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
250 config->Read( wxT("x1"), &x );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
251 config->Read( wxT("y1"), &y );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
252 config->Read( wxT("w1"), &w );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
253 config->Read( wxT("h1"), &h );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
254 m_mask1.SetPosition( wxPoint( x, y ) );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
255 m_mask1.SetSize( wxSize( w, h ) );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
256
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
257 config->Read( wxT("x2"), &x );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
258 config->Read( wxT("y2"), &y );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
259 config->Read( wxT("w2"), &w );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
260 config->Read( wxT("h2"), &h );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
261 m_mask2.SetPosition( wxPoint( x, y ) );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
262 m_mask2.SetSize( wxSize( w, h ) );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
263
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
264 config->Read( wxT("x3"), &x );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
265 config->Read( wxT("y3"), &y );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
266 config->Read( wxT("w3"), &w );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
267 config->Read( wxT("h3"), &h );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
268 m_mask3.SetPosition( wxPoint( x, y ) );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
269 m_mask3.SetSize( wxSize( w, h ) );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
270
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
271 }
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
272 /* マスクパラメータ設定ダイアログ */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
273 void MyFrame::OnMaskParam( wxCommandEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
274 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
275 MaskDialog* mask = new MaskDialog( this, wxID_ANY, wxT("マスク位置とサイズの指定"), wxDefaultPosition, wxSize( 400, 210 ), wxCAPTION|wxFRAME_NO_TASKBAR|wxSTAY_ON_TOP|wxTAB_TRAVERSAL );
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
276 mask->SetMask1( m_mask1 );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
277 mask->SetMask2( m_mask2 );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
278 mask->SetMask3( m_mask3 );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
279 mask->LoadParams();
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
280 mask->ShowWithEffect( wxSHOW_EFFECT_SLIDE_TO_BOTTOM );
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
281
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
282 if ( mask->ShowModal() == wxID_OK ) {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
283 m_mask1 = mask->GetMask1();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
284 m_mask2 = mask->GetMask2();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
285 m_mask3 = mask->GetMask3();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
286
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
287 config->SetPath( wxT("/Mask") );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
288
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
289 config->Write( wxT("x1"), m_mask1.GetX() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
290 config->Write( wxT("y1"), m_mask1.GetY() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
291 config->Write( wxT("w1"), m_mask1.GetWidth() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
292 config->Write( wxT("h1"), m_mask1.GetHeight() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
293
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
294 config->Write( wxT("x2"), m_mask2.GetX() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
295 config->Write( wxT("y2"), m_mask2.GetY() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
296 config->Write( wxT("w2"), m_mask2.GetWidth() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
297 config->Write( wxT("h2"), m_mask2.GetHeight() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
298
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
299 config->Write( wxT("x3"), m_mask3.GetX() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
300 config->Write( wxT("y3"), m_mask3.GetY() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
301 config->Write( wxT("w3"), m_mask3.GetWidth() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
302 config->Write( wxT("h3"), m_mask3.GetHeight() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
303
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
304 delete config;
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
305 }
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
306 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
307 /* アプリフォルダを開く */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
308 void MyFrame::OnOpenAppDir( wxCommandEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
309 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
310 wxString appdir = wxGetCwd();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
311 wxString execmd = wxT("explorer ") + appdir;
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
312 wxExecute( execmd );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
313 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
314 /* ビューモードの切替え */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
315 void MyFrame::OnViewMode( wxCommandEvent& event )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
316 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
317 if ( event.IsChecked() ) {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
318 int x, y;
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
319 GetSize( &x, &y );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
320 SetSize( WINL_W + 500, y );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
321 m_splitter->SplitVertically( m_panelL, m_panelR, 0 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
322 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
323 else {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
324 m_splitter->Unsplit();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
325 SetSize( WINL_W, -1 );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
326 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
327 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
328 /* 被保険者フォルダを開く */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
329 void MyFrame::OnOpenHhsDir( wxListEvent& event )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
330 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
331 wxString hhsdir;
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
332 /*
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
333 hhsdir = m_textCtrlDist->GetValue() + wxFILE_SEP_PATH;
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
334
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
335 int i = event.GetIndex();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
336 wxListItem item;
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
337 item.SetId(i);
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
338
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
339 item.SetColumn(1);
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
340 item.SetMask(wxLIST_MASK_TEXT);
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
341 m_listCtrlHhsDir->GetItem( item );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
342 hhsdir.Append( item.GetText() );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
343
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
344 DirViewFrame* dvf = new DirViewFrame( (wxWindow*)this, wxID_ANY, wxEmptyString );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
345 dvf->m_dir = hhsdir;
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
346 dvf->LoadListImage();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
347 dvf->Show(true);
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
348 */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
349 }
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
350
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
351 /* カナ検索ダイアログ */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
352 void MyFrame::OnKana( wxCommandEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
353 {
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
354 KanaDialog* kana = new KanaDialog( this, wxID_ANY, wxT("カナ氏名で被保番を検索"), wxDefaultPosition, wxSize( 600, 600 ), wxCAPTION|wxFRAME_NO_TASKBAR|wxRESIZE_BORDER|wxSTAY_ON_TOP|wxTAB_TRAVERSAL );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
355 kana->ShowWithEffect( wxSHOW_EFFECT_SLIDE_TO_BOTTOM );
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
356
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
357 if ( kana->ShowModal() == wxID_OK ) {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
358 wxMessageBox( kana->GetHhsNo() );
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
359 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
360
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
361 UpdateList();
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
362 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
363 /* 検索履歴検索ダイアログ */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
364 void MyFrame::OnHistory( wxCommandEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
365 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
366 HistDialog* hist = new HistDialog( this, wxID_ANY, wxT("検索履歴"), wxDefaultPosition, wxSize( 550, 500 ), wxCAPTION|wxFRAME_NO_TASKBAR|wxSTAY_ON_TOP|wxTAB_TRAVERSAL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
367 hist->ShowWithEffect( wxSHOW_EFFECT_SLIDE_TO_BOTTOM );
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
368
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
369 if ( hist->ShowModal() == wxID_OK ) {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
370
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
371 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
372
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
373 UpdateList();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
374 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
375
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
376 /* 検索結果をリストアップ */
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
377 void MyFrame::UpdateList( void )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
378 {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
379 m_listCtrl->DeleteAllItems();
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
380 }
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
381
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
382 /* ステータスバーにメッセージを出力 */
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
383 void MyFrame::SetStatusMessage( wxString msg, long n )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
384 {
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
385 if ( GetStatusBar() )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
386 SetStatusText( msg, n );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
387 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
388
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
389 /* サイズ変更 */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
390 void MyFrame::OnWinSize( wxSizeEvent& event )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
391 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
392 this->Refresh( true, NULL );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
393 TellLocation();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
394 event.Skip();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
395 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
396 /* ウィンドウ移動 */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
397 void MyFrame::OnWinMove( wxMoveEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
398 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
399 TellLocation();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
400 return;
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
401 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
402 /* ウィンドウ位置とサイズを表示 */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
403 void MyFrame::TellLocation( void )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
404 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
405 wxRect r = this->GetRect();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
406 int x = r.GetX();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
407 int y = r.GetY();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
408 int w = r.GetWidth();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
409 int h = r.GetHeight();
1
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
410
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
411 if ( GetStatusBar() )
7b6dab24f4b8 Gui parts complete.
pyon@macmini
parents: 0
diff changeset
412 SetStatusText( wxString::Format(wxT( "(%d,%d) %dx%d"),x,y,w,h ), 3 );
0
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
413 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
414 /* 終了 */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
415 void MyFrame::OnQuit( wxCommandEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
416 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
417 Close( true );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
418 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
419 /* 設定を保存 */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
420 void MyFrame::SaveConfig( wxCloseEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
421 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
422 if ( !IsIconized() && !IsMaximized() ) {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
423 wxGetApp().rect = this->GetRect();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
424 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
425 Destroy();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
426 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
427 /* アバウトダイアログ */
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
428 void MyFrame::OnAbout( wxCommandEvent& WXUNUSED(event) )
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
429 {
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
430 AboutDialog* aboutDlg = new AboutDialog( this, wxID_ANY, wxT("About this Software"), wxDefaultPosition, wxSize(320,280), wxDEFAULT_DIALOG_STYLE|wxSTAY_ON_TOP );
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
431 aboutDlg->ShowModal();
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
432 }
0c0701a935f8 Start Development.
pyon@macmini
parents:
diff changeset
433