Mercurial > mercurial > hgweb_searcher03.cgi
diff src/mask.cpp @ 0:0c0701a935f8
Start Development.
author | pyon@macmini |
---|---|
date | Sun, 21 Jul 2013 16:07:19 +0900 |
parents | |
children | 7b6dab24f4b8 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/mask.cpp Sun Jul 21 16:07:19 2013 +0900 @@ -0,0 +1,159 @@ +// Filename : mask.cpp +// Last Change: 21-Jul-2013. +// + +#include "mask.h" + +MaskDialog::MaskDialog( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) + : wxDialog( parent, id, title, pos, size, style ) +{ + this->SetSizeHints( wxDefaultSize, wxDefaultSize ); + + wxBoxSizer* bSizerTop = new wxBoxSizer( wxVERTICAL ); + + wxFlexGridSizer* fgSizer = new wxFlexGridSizer( 0, 5, 0, 0 ); + fgSizer->SetFlexibleDirection( wxBOTH ); + fgSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); + + m_staticTextDummy0 = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + fgSizer->Add( m_staticTextDummy0, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 ); + + m_staticTextX = new wxStaticText( this, wxID_ANY, wxT("(x)"), wxDefaultPosition, wxDefaultSize, 0 ); + fgSizer->Add( m_staticTextX, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 ); + + m_staticTextY = new wxStaticText( this, wxID_ANY, wxT("(y)"), wxDefaultPosition, wxDefaultSize, 0 ); + fgSizer->Add( m_staticTextY, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 ); + + m_staticTextW = new wxStaticText( this, wxID_ANY, wxT("(w)"), wxDefaultPosition, wxDefaultSize, 0 ); + fgSizer->Add( m_staticTextW, 0, wxALL|wxALIGN_BOTTOM|wxALIGN_CENTER_HORIZONTAL, 5 ); + + m_staticTextH = new wxStaticText( this, wxID_ANY, wxT("(h)"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticTextH->Wrap( -1 ); + fgSizer->Add( m_staticTextH, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 ); + + m_staticTextMask1 = new wxStaticText( this, wxID_ANY, wxT("マスク1"), wxDefaultPosition, wxDefaultSize, 0 ); + fgSizer->Add( m_staticTextMask1, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM1x = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM1x, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM1y = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM1y, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); + + m_textCtrlM1w = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM1w, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM1h = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM1h, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); + + m_staticTextMask2 = new wxStaticText( this, wxID_ANY, wxT("マスク2"), wxDefaultPosition, wxDefaultSize, 0 ); + fgSizer->Add( m_staticTextMask2, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM2x = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM2x, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM2y = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM2y, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); + + m_textCtrlM2w = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM2w, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM2h = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM2h, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); + + m_staticTextMask3 = new wxStaticText( this, wxID_ANY, wxT("マスク3"), wxDefaultPosition, wxDefaultSize, 0 ); + fgSizer->Add( m_staticTextMask3, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM3x = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM3x, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM3y = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM3y, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); + + m_textCtrlM3w = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM3w, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); + + m_textCtrlM3h = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 60,-1 ), wxTE_RIGHT ); + fgSizer->Add( m_textCtrlM3h, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); + + bSizerTop->Add( fgSizer, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 ); + + wxBoxSizer* bSizerBtn = new wxBoxSizer( wxHORIZONTAL ); + + m_buttonCancel = new wxButton( this, wxID_CANCEL, wxT("キャンセル"), wxDefaultPosition, wxDefaultSize, 0 ); + m_buttonCancel->SetDefault(); + bSizerBtn->Add( m_buttonCancel, 0, wxALL, 5 ); + + m_buttonSet = new wxButton( this, ID_SETPARAM, wxT("セット"), wxDefaultPosition, wxDefaultSize, 0 ); + bSizerBtn->Add( m_buttonSet, 0, wxALL, 5 ); + + bSizerTop->Add( bSizerBtn, 0, wxALIGN_RIGHT|wxALL, 5 ); + + this->SetSizer( bSizerTop ); + this->Layout(); + + this->Centre( wxBOTH ); + + conf_file = wxGetCwd() + wxFILE_SEP_PATH + wxT("app.conf"); + config = new wxFileConfig( wxT("MyApp"), wxT("T.Mutoh"), conf_file, wxEmptyString, wxCONFIG_USE_LOCAL_FILE ); + + GetParams(); +} + +MaskDialog::~MaskDialog() +{ + delete config; +} + +// Event Table +BEGIN_EVENT_TABLE( MaskDialog, wxDialog ) + EVT_BUTTON( ID_SETPARAM, MaskDialog::SetParams ) +END_EVENT_TABLE() + +void MaskDialog::GetParams( void ) +{ + wxString x, y, w, h; + + config->SetPath( wxT("/Mask") ); + + config->Read( wxT("x1"), &x ); + config->Read( wxT("y1"), &y ); + config->Read( wxT("w1"), &w ); + config->Read( wxT("h1"), &h ); + + m_textCtrlM1x->SetValue( x ); + m_textCtrlM1y->SetValue( y ); + m_textCtrlM1w->SetValue( w ); + m_textCtrlM1h->SetValue( h ); + + config->Read( wxT("x2"), &x ); + config->Read( wxT("y2"), &y ); + config->Read( wxT("w2"), &w ); + config->Read( wxT("h2"), &h ); + + m_textCtrlM2x->SetValue( x ); + m_textCtrlM2y->SetValue( y ); + m_textCtrlM2w->SetValue( w ); + m_textCtrlM2h->SetValue( h ); + + config->Read( wxT("x3"), &x ); + config->Read( wxT("y3"), &y ); + config->Read( wxT("w3"), &w ); + config->Read( wxT("h3"), &h ); + + m_textCtrlM3x->SetValue( x ); + m_textCtrlM3y->SetValue( y ); + m_textCtrlM3w->SetValue( w ); + m_textCtrlM3h->SetValue( h ); +} + +void MaskDialog::SetParams( wxCommandEvent& WXUNUSED(event) ) +{ + config->SetPath( wxT("/Mask") ); + + config->Write( wxT("h3"), m_textCtrlM3h->GetValue() ); + config->Flush(); + + Close(); +} +