Mercurial > mercurial > hgweb_lesearcher.cgi
view 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 source
/* 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); }