Mercurial > mercurial > hgweb_kaigo.hg.cgi
diff horori/searcher/include/searcher.h @ 0:aaaa401818a1 draft
first commit.
author | pyon <pyon@macmini> |
---|---|
date | Mon, 24 May 2021 21:32:58 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/horori/searcher/include/searcher.h Mon May 24 21:32:58 2021 +0900 @@ -0,0 +1,249 @@ +// Filename : searcher.h +// Last Change: 2021-05-11 火 12:42:07. +// +#pragma once + +#include <wx/artprov.h> +#include <wx/xrc/xmlres.h> +#include <wx/string.h> +#include <wx/stattext.h> +#include <wx/gdicmn.h> +#include <wx/font.h> +#include <wx/colour.h> +#include <wx/settings.h> +#include <wx/listctrl.h> +#include <wx/bitmap.h> +#include <wx/image.h> +#include <wx/icon.h> +#include <wx/button.h> +#include <wx/sizer.h> +#include <wx/frame.h> +#include <wx/dataview.h> +#include <wx/statbmp.h> +#include <wx/textctrl.h> +#include <wx/dateevt.h> +#include <wx/notebook.h> +#include <wx/srchctrl.h> +#include <wx/statline.h> +#include <wx/datectrl.h> +#include <wx/filepicker.h> +#include <wx/spinctrl.h> +#include <wx/choice.h> +#include <wx/listbox.h> +#include <wx/checkbox.h> +#include <wx/gauge.h> +#include <wx/scrolwin.h> +#include <wx/gbsizer.h> + +class SearchFrame; + +class MyStaticBitmap : public wxStaticBitmap +{ + private: + int m_dragx, m_dragy; // for image drag + int cx, cy; // for mouse-gesture + //bool with_stl = false; + wxScrolledWindow* m_parent; + wxNotebook* m_parent1; + SearchFrame* m_parent2; + + public: + int zoom = 0; + + public: + MyStaticBitmap(wxScrolledWindow *parent, wxWindowID id, const wxBitmap &label, const wxPoint &pos, const wxSize &size, long style, const wxString &name); + ~MyStaticBitmap(); + + void OnLeftDown(wxMouseEvent& event); + void OnLeftUp(wxMouseEvent& event); + void OnLeftDClick(wxMouseEvent& event); + void OnRightDClick(wxMouseEvent& event); + void OnStartRGesture(wxMouseEvent& event); + void OnEndRGesture(wxMouseEvent& event); + void OnMotion(wxMouseEvent& event); + void OnWheel(wxMouseEvent& event); + + void ChangeBook(int i); + void SetParentWidows(SearchFrame *sf, wxNotebook *nb) {m_parent2 = sf; m_parent1 = nb;}; + void ParentWinGetSize(int *ww, int *wh) {m_parent->GetSize(ww, wh);}; + void ParentWinScroll(int x, int y) {m_parent->Scroll(x, y);}; + void ParentWinSetScrollbars(int x, int y, int s, int t) {m_parent->SetScrollbars(x, y, s, t);}; +}; + +class SearchFrame : public wxFrame +{ + private: + wxString m_workdir; + wxString m_hhscsv; + wxString m_addr, m_port; + wxRect m_mask1, m_mask2, m_mask3, m_mask4; + int m_searchmode; + wxList m_hist; + wxString m_user, m_usergroup; + + MyStaticBitmap* m_staticBitmap1; + MyStaticBitmap* m_staticBitmap2; + MyStaticBitmap* m_staticBitmap3; + MyStaticBitmap* m_staticBitmap4; + MyStaticBitmap* m_staticBitmap5; + + protected: + wxNotebook* m_notebook; + + wxScrolledWindow* m_scrolledWindow1; + wxScrolledWindow* m_scrolledWindow2; + wxScrolledWindow* m_scrolledWindow3; + wxScrolledWindow* m_scrolledWindow4; + wxScrolledWindow* m_scrolledWindow5; + wxPanel* m_panelBatch; + wxPanel* m_panelMainte; + + // Batch-Print + wxFilePickerCtrl* m_filePicker; + wxButton* m_buttonRead; + wxDataViewListCtrl* m_dataViewListCtrlBatch; + wxDataViewColumn* m_dataViewListColumnBPNo; + wxDataViewColumn* m_dataViewListColumnBPHno; + wxDataViewColumn* m_dataViewListColumnBPName; + wxDataViewColumn* m_dataViewListColumnBPDate; + wxDataViewColumn* m_dataViewListColumnOnlyIk; + wxDataViewColumn* m_dataViewListColumnProgress; + wxDataViewColumn* m_dataViewListColumnDummy; + + // Mainte(Index) + wxStaticText* m_staticTextIndex; + wxStaticText* m_staticTextDrive; + wxStaticText* m_staticTextYear; + wxStaticText* m_staticTextDate; + wxStaticText* m_staticTextCcn; + wxStaticText* m_staticTextData; + + wxStaticText* m_staticTextDB; + wxChoice* m_choiceIdxYear; + wxDataViewListCtrl* m_dataViewListCtrlIdxDate; + wxDataViewColumn* m_dataViewListColumnIdxDateNo; + wxDataViewColumn* m_dataViewListColumnIdxDate; + wxStaticText* m_staticTextIdxCcn; + wxDataViewListCtrl* m_dataViewListCtrlIdx; + wxDataViewColumn* m_dataViewListColumnIdxNo; + wxDataViewColumn* m_dataViewListColumnIdxHno; + wxDataViewColumn* m_dataViewListColumnIdxName; + // - + wxChoice* m_choiceDrv; + wxChoice* m_choiceDrvYear; + wxDataViewListCtrl* m_dataViewListCtrlDrvDate; + wxDataViewColumn* m_dataViewListColumnDrvDateNo; + wxDataViewColumn* m_dataViewListColumnDrvDate; + wxDataViewListCtrl* m_dataViewListCtrlDrvCcn; + wxDataViewColumn* m_dataViewListColumnDrvCcnNo; + wxDataViewColumn* m_dataViewListColumnDrvCcn; + wxDataViewListCtrl* m_dataViewListCtrlDrv; + wxDataViewColumn* m_dataViewListColumnDrvNo; + wxDataViewColumn* m_dataViewListColumnDrvHno; + wxDataViewColumn* m_dataViewListColumnDrvName; + + wxStaticLine* m_staticline1; + + wxStaticText* m_staticTextDBmainte; + wxStaticText* m_staticTextHhsDB; + wxFilePickerCtrl* m_filePickerHhsDB; + wxButton* m_buttonRegHhs; + wxTextCtrl* m_textCtrlLastHhsDB; + + wxStaticText* m_staticTextRegImg; + wxDatePickerCtrl* m_datePicker; + wxButton* m_buttonRegImg; + wxTextCtrl* m_textCtrlLastIndex; + + wxStaticText* m_staticTextCSV; + wxFilePickerCtrl* m_filePickerCSV; + wxButton* m_buttonCSV; + + wxStaticLine* m_staticline2; + + wxStaticText* m_staticTextVersion; + wxTextCtrl* m_textCtrlVersion; + + // Setup + wxPanel* m_panelSetup; + wxDataViewListCtrl* m_dataViewListCtrlPw; + wxDataViewColumn* m_dataViewListColumnUId; + wxDataViewColumn* m_dataViewListColumnUName; + wxDataViewColumn* m_dataViewListColumnUGroup; + wxDataViewColumn* m_dataViewListColumnUPw; + wxTextCtrl* m_textCtrlUPassword; + wxButton* m_buttonPw; + + // Right-Pane + wxSearchCtrl* m_searchCtrl; + wxButton* m_buttonPaste; + wxTextCtrl* m_textCtrlName; + wxTextCtrl* m_textCtrlAddr; + wxDataViewListCtrl* m_dataViewListCtrlAny; + wxDataViewColumn* m_dataViewListColumnAnyNo; + wxDataViewColumn* m_dataViewListColumnAny1; // ymd, hno, kana + wxDataViewColumn* m_dataViewListColumnAny2; // -, name, name + wxDataViewColumn* m_dataViewListColumnAny3; // -, -, addr + wxDataViewColumn* m_dataViewListColumnAny4; // -, -, hno + wxCheckBox* m_checkBoxMask; + wxCheckBox* m_checkBoxBoth; + wxButton* m_buttonPrint; + wxSpinCtrl* m_spinCtrl; + wxGauge* m_gauge; + wxTextCtrl* m_textCtrlPasswd; + + // Virtual event handlers, overide them in your derived class + virtual void OnPageChanged(wxNotebookEvent& event); + + virtual void OnFile(wxFileDirPickerEvent& event); + virtual void OnRead(wxCommandEvent& event); + + virtual void OnSelectBatchListCtrlA(wxKeyEvent& event); + virtual void OnSelectBatchDClicked(wxDataViewEvent& event); + + virtual void OnIdxYearChoice(wxCommandEvent& event); + virtual void OnIdxDateSelected(wxDataViewEvent& event); + virtual void OnIdxDClicked(wxDataViewEvent& event); + + virtual void OnDrvYearChoice(wxCommandEvent& event); + virtual void OnDrvDateSelected(wxDataViewEvent& event); + virtual void OnDrvDateDClicked(wxDataViewEvent& event); + virtual void OnDrvCcnSelected(wxDataViewEvent& event); + virtual void OnDrvCcnDClicked(wxDataViewEvent& event); + virtual void OnDrvDClicked(wxDataViewEvent& event); + + virtual void OnUploadHhsDB(wxCommandEvent& event); + virtual void OnUploadImage(wxCommandEvent& event); + virtual void OnDB2CSV(wxCommandEvent& event); + + virtual void OnUPassword(wxCommandEvent& event); + virtual void OnSavePw(wxCommandEvent& event); + + virtual void OnChar(wxKeyEvent& event); + virtual void OnPaste(wxCommandEvent& event); + virtual void OnSelectAnyListItem(wxDataViewEvent& event); + virtual void OnPrint(wxCommandEvent& event); + virtual void OnPassword(wxCommandEvent& event); + + virtual void OnClose(wxCloseEvent& event); + + void CreateControls(); + void InitializeControlsValue(); + void SearchByHno(wxString hno); + void SetHhsInfo(wxString h); + void SetListAnyHeader(int mode); + void SetImages(); + void LoadBookImage(MyStaticBitmap& mysb, wxString file); + void LoadBookImages(); + void ReadCSV(); + void LoadPasswd(bool show); + void SavePasswd(); + void RemoveTemp(); + void MaskImage(); + void SetVersionInfo(); + + public: + SearchFrame(wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 800,697 ), long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL); + ~SearchFrame(); +}; +