Mercurial > mercurial > hgweb_searcher2.cgi
view src/preview.cpp @ 7:c6099901f666
fix makefile ( for MinGW ).
author | pyon@macmini |
---|---|
date | Mon, 18 Apr 2011 18:59:41 +0900 |
parents | 0f566397974e |
children | db7bd315e52c |
line wrap: on
line source
// Filename : preview.cpp // Last Change: 16-Apr-2011. // #include "preview.h" // for all others, include the necessary headers (this file is usually all you // need because it includes almost all "standard" wxWidgets headers) #ifndef WX_PRECOMP #include "wx/utils.h" #include "wx/dir.h" #endif // constructor FramePreview::FramePreview( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style ) { this->SetSize( 1200, 1000 ); this->SetBackgroundColour( wxColour(wxT("WHEAT")) ); wxBoxSizer* bSizer; bSizer = new wxBoxSizer( wxHORIZONTAL ); // LeftPain ( thumbnail ) wxBoxSizer* bSizerL; bSizerL = new wxBoxSizer( wxVERTICAL ); m_listCtrl = new wxListCtrl( this, ID_LSTCTRL, wxDefaultPosition, wxSize( 160, 900 ), wxLC_ICON|wxLC_SINGLE_SEL ); bSizerL->Add( m_listCtrl, 1, wxEXPAND|wxALL|wxALIGN_CENTRE, 0 ); m_imageList = new wxImageList( 105, 148 ); m_listCtrl->AssignImageList( m_imageList, wxIMAGE_LIST_NORMAL ); bSizer->Add( bSizerL, 0, wxEXPAND, 5 ); // MainPain ( preview ) m_scrolledWindow = new wxScrolledWindow( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL ); m_scrolledWindow->SetScrollbars( 10, 10, 83, 117 ); //m_scrolledWindow->SetScrollRate( 5, 5 ); m_bitmap = new wxStaticBitmap( m_scrolledWindow, ID_IMG, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); bSizer->Add( m_scrolledWindow, 1, wxEXPAND|wxALL, 0 ); // RightPain ( manip ) wxBoxSizer* bSizerR; bSizerR = new wxBoxSizer( wxVERTICAL ); m_staticText = new wxStaticText( this, wxID_ANY, wxT("倍率"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerR->Add( m_staticText, 0, wxALL, 5 ); m_textCtrl = new wxTextCtrl( this, ID_MGNFY, wxT("100%"), wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER ); m_textCtrl->SetMaxLength( 4 ); bSizerR->Add( m_textCtrl, 0, wxALL, 5 ); m_staticTextLarge = new wxStaticText( this, wxID_ANY, wxT("[+]"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerR->Add( m_staticTextLarge, 0, wxALL, 5 ); m_slider = new wxSlider( this, ID_SLDR, 0, 0, 100, wxDefaultPosition, wxDefaultSize, wxSL_LEFT|wxSL_VERTICAL ); bSizerR->Add( m_slider, 0, wxALL, 5 ); m_staticTextSmall = new wxStaticText( this, wxID_ANY, wxT("[-]"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerR->Add( m_staticTextSmall, 0, wxALL, 5 ); bSizerR->Add( 0, 0, 1, wxEXPAND, 5 ); m_buttonEdit = new wxButton( this, ID_PRINT, wxT("編集"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerR->Add( m_buttonEdit, 0, wxALL|wxALIGN_CENTRE, 5 ); m_buttonMask = new wxButton( this, ID_PRINT, wxT("マスク"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerR->Add( m_buttonMask, 0, wxALL|wxALIGN_CENTRE, 5 ); m_buttonPrint = new wxButton( this, ID_PRINT, wxT("印刷"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerR->Add( m_buttonPrint, 0, wxALL|wxALIGN_CENTRE, 5 ); m_buttonPrintAll = new wxButton( this, ID_PRTALL, wxT("一括印刷"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerR->Add( m_buttonPrintAll, 0, wxALL|wxALIGN_CENTRE, 5 ); m_buttonClose = new wxButton( this, ID_CLSFRM, wxT("閉じる"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerR->Add( m_buttonClose, 0, wxALL|wxALIGN_CENTRE, 5 ); bSizer->Add( bSizerR, 0, wxEXPAND, 5 ); this->SetSizer( bSizer ); this->Layout(); this->Centre( wxBOTH ); LoadImages( wxEmptyString ); } // destructor FramePreview::~FramePreview() { } // Event Table BEGIN_EVENT_TABLE( FramePreview, wxFrame ) //EVT_LIST_ITEM_SELECTED( ID_LSTCTRL, FramePreview::ChageImage ) //EVT_BUTTON( ID_PRINT, FramePreview::PrintImage ) //EVT_BUTTON( ID_PRTALL, FramePreview::PrintAllImages ) EVT_BUTTON( ID_CLSFRM, FramePreview::CloseFrame ) END_EVENT_TABLE() // Event Handlers void FramePreview::CloseFrame(wxCommandEvent& WXUNUSED(event)) { this->Close(); return; } void FramePreview::ChageImage(wxCommandEvent& WXUNUSED(event)) { return; } // Functions void FramePreview::LoadImages(wxString path) { path = wxGetCwd() + wxT("/testdrive"); // now test! wxDir dir(path); wxString file; if ( !dir.IsOpened() ) return; bool cout = dir.GetFirst( &file, wxT("*.jpg"), wxDIR_FILES ); // preview if ( cout ) { wxString mfile = path + wxFILE_SEP_PATH + file; wxImage img( mfile, wxBITMAP_TYPE_JPEG ); wxBitmap bmp( img.Scale( 640, 877, wxIMAGE_QUALITY_HIGH ) ); m_bitmap->SetBitmap( bmp); } // thumbnail int i=0; while ( cout ) { m_listCtrl->InsertItem( i, file, i ); file = path + wxFILE_SEP_PATH + file; wxImage img( file, wxBITMAP_TYPE_JPEG ); wxBitmap bmp( img.Scale( 105, 148, wxIMAGE_QUALITY_HIGH ) ); m_imageList->Add( bmp ); i++; cout = dir.GetNext( &file ); } return; }