Mercurial > mercurial > hgweb_lesearcher.cgi
diff src/search.cpp @ 0:615a15029602 default tip
first commit.
author | pyon@macmini |
---|---|
date | Sun, 10 Nov 2019 08:39:41 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/search.cpp Sun Nov 10 08:39:41 2019 +0900 @@ -0,0 +1,126 @@ +/* Filename : search.cpp + Last Change: 2019-11-08 金 14:23:23. + by Takayuki Mutoh +*/ +#include "search.h" + +SearcherFrame::SearcherFrame(wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style) + : wxFrame(parent, id, title, pos, size, style) +{ + this->SetSizeHints(wxDefaultSize, wxDefaultSize); + this->SetBackgroundColour(wxColour(225, 225, 225)); + + m_menubar = new wxMenuBar(0); + m_menuFile = new wxMenu(); + wxMenuItem* m_menuItemUpdateDB; + m_menuItemUpdateDB = new wxMenuItem(m_menuFile, ID_MN_UPDB, wxString(wxT("データベース更新")) , wxEmptyString, wxITEM_NORMAL); + m_menuFile->Append(m_menuItemUpdateDB); + m_menuItemUpdateDB->Enable(false); + + wxMenuItem* m_menuItemUser; + m_menuItemUser = new wxMenuItem(m_menuFile, ID_MN_USER, wxString(wxT("ユーザ管理")) , wxEmptyString, wxITEM_NORMAL); + m_menuFile->Append(m_menuItemUser); + m_menuItemUser->Enable(false); + + wxMenuItem* m_menuItemSetting; + m_menuItemSetting = new wxMenuItem(m_menuFile, ID_MN_SETTING, wxString(wxT("設定")) , wxEmptyString, wxITEM_NORMAL); + m_menuFile->Append(m_menuItemSetting); + m_menuItemSetting->Enable(false); + + m_menuFile->AppendSeparator(); + + wxMenuItem* m_menuItemVersion; + m_menuItemVersion = new wxMenuItem(m_menuFile, ID_MN_VERSION, wxString(wxT("バージョン")) , wxEmptyString, wxITEM_NORMAL); + m_menuFile->Append(m_menuItemVersion); + + m_menubar->Append(m_menuFile, wxT("ファイル")); + + m_menuTool = new wxMenu(); + wxMenuItem* m_menuItemKana; + m_menuItemKana = new wxMenuItem(m_menuTool, ID_MN_KANA, wxString(wxT("カナ検索")) + wxT('\t') + wxT("ALT-k"), wxEmptyString, wxITEM_NORMAL); + m_menuTool->Append(m_menuItemKana); + m_menuItemKana->Enable(false); + + wxMenuItem* m_menuItemHist; + m_menuItemHist = new wxMenuItem(m_menuTool, ID_MN_HIST, wxString(wxT("検索履歴")) + wxT('\t') + wxT("ALT-H"), wxEmptyString, wxITEM_NORMAL); + m_menuTool->Append(m_menuItemHist); + m_menuItemHist->Enable(false); + + m_menuTool->AppendSeparator(); + + wxMenuItem* m_menuItemIndex; + m_menuItemIndex = new wxMenuItem(m_menuTool, ID_MN_INDEX, wxString(wxT("インデックス")) , wxEmptyString, wxITEM_NORMAL); + m_menuTool->Append(m_menuItemIndex); + m_menuItemIndex->Enable(false); + + wxMenuItem* m_menuItemBPrint; + m_menuItemBPrint = new wxMenuItem(m_menuTool, ID_MN_BPRINT, wxString(wxT("バッチ印刷")) , wxEmptyString, wxITEM_NORMAL); + m_menuTool->Append(m_menuItemBPrint); + m_menuItemBPrint->Enable(false); + + wxMenuItem* m_menuItemMergeMove; + m_menuItemMergeMove = new wxMenuItem(m_menuTool, ID_MN_MRGMV, wxString(wxT("資料作成")) , wxEmptyString, wxITEM_NORMAL); + m_menuTool->Append(m_menuItemMergeMove); + m_menuItemMergeMove->Enable(false); + + m_menubar->Append(m_menuTool, wxT("ツール")); + + this->SetMenuBar(m_menubar); + + wxGridBagSizer* gbSizer; + gbSizer = new wxGridBagSizer(0, 0); + gbSizer->SetFlexibleDirection(wxBOTH); + gbSizer->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED); + + m_staticTextCommand = new wxStaticText(this, wxID_ANY, wxT("コマンド?"), wxDefaultPosition, wxDefaultSize, 0); + gbSizer->Add(m_staticTextCommand, wxGBPosition(0, 0), wxGBSpan(1, 1), wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5); + + m_searchCtrl = new wxSearchCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0); + #ifndef __WXMAC__ + m_searchCtrl->ShowSearchButton(true); + #endif + m_searchCtrl->ShowCancelButton(false); + gbSizer->Add(m_searchCtrl, wxGBPosition(0, 1), wxGBSpan(1, 1), wxALL|wxALIGN_CENTER_VERTICAL, 5); + + m_staticTextMessage = new wxStaticText(this, wxID_ANY, wxT("メッセージ"), wxDefaultPosition, wxDefaultSize, 0); + gbSizer->Add(m_staticTextMessage, wxGBPosition(1, 0), wxGBSpan(1, 1), wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5); + + m_textCtrlMessage = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0); + gbSizer->Add(m_textCtrlMessage, wxGBPosition(1, 1), wxGBSpan(1, 1), wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5); + + m_staticTextResult = new wxStaticText(this, wxID_ANY, wxT("検索結果"), wxDefaultPosition, wxDefaultSize, 0); + gbSizer->Add(m_staticTextResult, wxGBPosition(2, 0), wxGBSpan(1, 1), wxALL|wxALIGN_RIGHT, 5); + + m_dataViewListCtrlResult = new wxDataViewListCtrl(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxDV_HORIZ_RULES|wxDV_ROW_LINES|wxDV_SINGLE); + m_dataViewListColumnNo = m_dataViewListCtrlResult->AppendTextColumn(wxT("No "), wxDATAVIEW_CELL_INERT, 40, static_cast<wxAlignment>(wxALIGN_RIGHT), 0); + m_dataViewListColumnDate = m_dataViewListCtrlResult->AppendTextColumn(wxT("日付"), wxDATAVIEW_CELL_INERT, 80, static_cast<wxAlignment>(wxALIGN_CENTER), 0); + m_dataViewListColumnDir = m_dataViewListCtrlResult->AppendTextColumn(wxT("場所"), wxDATAVIEW_CELL_INERT, 200, static_cast<wxAlignment>(wxALIGN_LEFT), 0); + gbSizer->Add(m_dataViewListCtrlResult, wxGBPosition(2, 1), wxGBSpan(2, 1), wxALL|wxEXPAND, 5); + + m_bitmapLogo = new wxStaticBitmap(this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0); + gbSizer->Add(m_bitmapLogo, wxGBPosition(3, 0), wxGBSpan(1, 1), wxALL|wxALIGN_BOTTOM, 5); + + gbSizer->AddGrowableCol(1); + gbSizer->AddGrowableRow(2); + + this->SetSizer(gbSizer); + this->Layout(); + + this->Centre(wxBOTH); + + // Connect Events + m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(SearcherFrame::OnMenuVersion), this, m_menuItemVersion->GetId()); + m_searchCtrl->Connect(wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler(SearcherFrame::OnText), NULL, this); + m_searchCtrl->Connect(wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler(SearcherFrame::OnSearch), NULL, this); + m_dataViewListCtrlResult->Connect(wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED, wxDataViewEventHandler(SearcherFrame::OnDclickResult), NULL, this); +} + +SearcherFrame::~SearcherFrame() +{ + // Disconnect Events + m_searchCtrl->Disconnect(wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler(SearcherFrame::OnText), NULL, this); + m_searchCtrl->Disconnect(wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler(SearcherFrame::OnSearch), NULL, this); + m_dataViewListCtrlResult->Disconnect(wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED, wxDataViewEventHandler(SearcherFrame::OnDclickResult), NULL, this); +} + +