Mercurial > mercurial > hgweb_searcher2.cgi
comparison src/preview.cpp @ 3:75fefb53d983
update preview.
| author | pyon@macmini |
|---|---|
| date | Sat, 09 Apr 2011 12:48:20 +0900 |
| parents | e0cf49906039 |
| children | d924b09ea2f3 |
comparison
equal
deleted
inserted
replaced
| 2:0830b0d7c550 | 3:75fefb53d983 |
|---|---|
| 1 // Filename : preview.cpp | 1 // Filename : preview.cpp |
| 2 // Last Change: 07-Apr-2011. | 2 // Last Change: 09-Apr-2011. |
| 3 // | 3 // |
| 4 | 4 |
| 5 #include "preview.h" | 5 #include "preview.h" |
| 6 | 6 |
| 7 // for all others, include the necessary headers (this file is usually all you | 7 // for all others, include the necessary headers (this file is usually all you |
| 8 // need because it includes almost all "standard" wxWidgets headers) | 8 // need because it includes almost all "standard" wxWidgets headers) |
| 9 #ifndef WX_PRECOMP | 9 #ifndef WX_PRECOMP |
| 10 #include "wx/utils.h" | 10 #include "wx/utils.h" |
| 11 #include "wx/dir.h" | |
| 11 #endif | 12 #endif |
| 12 | 13 |
| 13 | 14 |
| 14 | 15 // constructor |
| 15 MyFramePreview::MyFramePreview( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style ) | 16 FramePreview::FramePreview( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style ) |
| 16 { | 17 { |
| 17 this->SetSizeHints( wxDefaultSize, wxDefaultSize ); | 18 this->SetSize( 1600, 900 ); |
| 18 | 19 |
| 19 wxBoxSizer* bSizer; | 20 wxBoxSizer* bSizer; |
| 20 bSizer = new wxBoxSizer( wxHORIZONTAL ); | 21 bSizer = new wxBoxSizer( wxHORIZONTAL ); |
| 21 | 22 |
| 23 // LeftPain ( thumbnail ) | |
| 22 wxBoxSizer* bSizerL; | 24 wxBoxSizer* bSizerL; |
| 23 bSizerL = new wxBoxSizer( wxVERTICAL ); | 25 bSizerL = new wxBoxSizer( wxVERTICAL ); |
| 24 | 26 |
| 25 m_staticText1 = new wxStaticText( this, wxID_ANY, wxT("MyLabel"), wxDefaultPosition, wxDefaultSize, 0 ); | 27 m_staticText1 = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); |
| 26 m_staticText1->Wrap( -1 ); | 28 bSizerL->Add( m_staticText1, 0, wxTOP|wxALIGN_CENTRE, 5 ); |
| 27 bSizerL->Add( m_staticText1, 0, wxALL, 5 ); | |
| 28 | |
| 29 m_bitmap1 = new wxStaticBitmap( this, ID_IMG1, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); | 29 m_bitmap1 = new wxStaticBitmap( this, ID_IMG1, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); |
| 30 bSizerL->Add( m_bitmap1, 0, wxALL, 5 ); | 30 bSizerL->Add( m_bitmap1, 0, wxALL|wxALIGN_CENTRE, 5 ); |
| 31 | 31 m_staticText2 = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); |
| 32 m_staticText2 = new wxStaticText( this, wxID_ANY, wxT("MyLabel"), wxDefaultPosition, wxDefaultSize, 0 ); | 32 bSizerL->Add( m_staticText2, 0, wxTOP|wxALIGN_CENTRE, 5 ); |
| 33 m_staticText2->Wrap( -1 ); | |
| 34 bSizerL->Add( m_staticText2, 0, wxALL, 5 ); | |
| 35 | |
| 36 m_bitmap2 = new wxStaticBitmap( this, ID_IMG2, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); | 33 m_bitmap2 = new wxStaticBitmap( this, ID_IMG2, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); |
| 37 bSizerL->Add( m_bitmap2, 0, wxALL, 5 ); | 34 bSizerL->Add( m_bitmap2, 0, wxALL|wxALIGN_CENTRE, 5 ); |
| 38 | 35 m_staticText3 = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); |
| 39 m_staticText3 = new wxStaticText( this, wxID_ANY, wxT("MyLabel"), wxDefaultPosition, wxDefaultSize, 0 ); | 36 bSizerL->Add( m_staticText3, 0, wxTOP|wxALIGN_CENTRE, 5 ); |
| 40 m_staticText3->Wrap( -1 ); | |
| 41 bSizerL->Add( m_staticText3, 0, wxALL, 5 ); | |
| 42 | |
| 43 m_bitmap3 = new wxStaticBitmap( this, ID_IMG3, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); | 37 m_bitmap3 = new wxStaticBitmap( this, ID_IMG3, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); |
| 44 bSizerL->Add( m_bitmap3, 0, wxALL, 5 ); | 38 bSizerL->Add( m_bitmap3, 0, wxALL|wxALIGN_CENTRE, 5 ); |
| 45 | 39 m_staticText4 = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); |
| 46 m_staticText4 = new wxStaticText( this, wxID_ANY, wxT("MyLabel"), wxDefaultPosition, wxDefaultSize, 0 ); | 40 bSizerL->Add( m_staticText4, 0, wxTOP|wxALIGN_CENTRE, 5 ); |
| 47 m_staticText4->Wrap( -1 ); | |
| 48 bSizerL->Add( m_staticText4, 0, wxALL, 5 ); | |
| 49 | |
| 50 m_bitmap4 = new wxStaticBitmap( this, ID_IMG4, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); | 41 m_bitmap4 = new wxStaticBitmap( this, ID_IMG4, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); |
| 51 bSizerL->Add( m_bitmap4, 0, wxALL, 5 ); | 42 bSizerL->Add( m_bitmap4, 0, wxALL|wxALIGN_CENTRE, 5 ); |
| 52 | 43 m_staticText5 = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); |
| 53 m_staticText5 = new wxStaticText( this, wxID_ANY, wxT("MyLabel"), wxDefaultPosition, wxDefaultSize, 0 ); | 44 bSizerL->Add( m_staticText5, 0, wxTOP|wxALIGN_CENTRE, 5 ); |
| 54 m_staticText5->Wrap( -1 ); | |
| 55 bSizerL->Add( m_staticText5, 0, wxALL, 5 ); | |
| 56 | |
| 57 m_bitmap5 = new wxStaticBitmap( this, ID_IMG5, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); | 45 m_bitmap5 = new wxStaticBitmap( this, ID_IMG5, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); |
| 58 bSizerL->Add( m_bitmap5, 0, wxALL, 5 ); | 46 bSizerL->Add( m_bitmap5, 0, wxALL|wxALIGN_CENTRE, 5 ); |
| 59 | 47 |
| 60 bSizer->Add( bSizerL, 0, wxEXPAND, 5 ); | 48 bSizer->Add( bSizerL, 0, wxEXPAND, 5 ); |
| 61 | 49 |
| 50 // MainPain ( preview ) | |
| 62 m_scrolledWindow = new wxScrolledWindow( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL ); | 51 m_scrolledWindow = new wxScrolledWindow( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL ); |
| 63 m_scrolledWindow->SetScrollRate( 5, 5 ); | 52 m_scrolledWindow->SetScrollRate( 5, 5 ); |
| 64 bSizer->Add( m_scrolledWindow, 1, wxEXPAND | wxALL, 5 ); | 53 bSizer->Add( m_scrolledWindow, 1, wxEXPAND | wxALL, 5 ); |
| 65 | |
| 66 m_bitmap = new wxStaticBitmap( this, ID_IMG, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); | 54 m_bitmap = new wxStaticBitmap( this, ID_IMG, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); |
| 67 bSizer->Add( m_bitmap, 0, wxALL, 5 ); | 55 bSizer->Add( m_bitmap, 0, wxALL, 5 ); |
| 68 | 56 |
| 57 // RightPain ( manip ) | |
| 69 wxBoxSizer* bSizerR; | 58 wxBoxSizer* bSizerR; |
| 70 bSizerR = new wxBoxSizer( wxVERTICAL ); | 59 bSizerR = new wxBoxSizer( wxVERTICAL ); |
| 71 | 60 |
| 72 m_staticText = new wxStaticText( this, wxID_ANY, wxT("倍率"), wxDefaultPosition, wxDefaultSize, 0 ); | 61 m_staticText = new wxStaticText( this, wxID_ANY, wxT("倍率"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 73 m_staticText->Wrap( -1 ); | |
| 74 bSizerR->Add( m_staticText, 0, wxALL, 5 ); | 62 bSizerR->Add( m_staticText, 0, wxALL, 5 ); |
| 75 | |
| 76 m_textCtrl = new wxTextCtrl( this, ID_MGNFY, wxT("100%"), wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER ); | 63 m_textCtrl = new wxTextCtrl( this, ID_MGNFY, wxT("100%"), wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER ); |
| 77 m_textCtrl->SetMaxLength( 4 ); | 64 m_textCtrl->SetMaxLength( 4 ); |
| 78 bSizerR->Add( m_textCtrl, 0, wxALL, 5 ); | 65 bSizerR->Add( m_textCtrl, 0, wxALL, 5 ); |
| 79 | |
| 80 m_staticTextLarge = new wxStaticText( this, wxID_ANY, wxT("[+]"), wxDefaultPosition, wxDefaultSize, 0 ); | 66 m_staticTextLarge = new wxStaticText( this, wxID_ANY, wxT("[+]"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 81 m_staticTextLarge->Wrap( -1 ); | |
| 82 bSizerR->Add( m_staticTextLarge, 0, wxALL, 5 ); | 67 bSizerR->Add( m_staticTextLarge, 0, wxALL, 5 ); |
| 83 | |
| 84 m_slider = new wxSlider( this, ID_SLDR, 0, 0, 100, wxDefaultPosition, wxDefaultSize, wxSL_LEFT|wxSL_VERTICAL ); | 68 m_slider = new wxSlider( this, ID_SLDR, 0, 0, 100, wxDefaultPosition, wxDefaultSize, wxSL_LEFT|wxSL_VERTICAL ); |
| 85 bSizerR->Add( m_slider, 0, wxALL, 5 ); | 69 bSizerR->Add( m_slider, 0, wxALL, 5 ); |
| 86 | |
| 87 m_staticTextSmall = new wxStaticText( this, wxID_ANY, wxT("[-]"), wxDefaultPosition, wxDefaultSize, 0 ); | 70 m_staticTextSmall = new wxStaticText( this, wxID_ANY, wxT("[-]"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 88 m_staticTextSmall->Wrap( -1 ); | |
| 89 bSizerR->Add( m_staticTextSmall, 0, wxALL, 5 ); | 71 bSizerR->Add( m_staticTextSmall, 0, wxALL, 5 ); |
| 90 | |
| 91 | 72 |
| 92 bSizerR->Add( 0, 0, 1, wxEXPAND, 5 ); | 73 bSizerR->Add( 0, 0, 1, wxEXPAND, 5 ); |
| 93 | 74 |
| 94 m_buttonPrint = new wxButton( this, ID_PRINT, wxT("印刷"), wxDefaultPosition, wxDefaultSize, 0 ); | 75 m_buttonPrint = new wxButton( this, ID_PRINT, wxT("印刷"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 95 bSizerR->Add( m_buttonPrint, 0, wxALL, 5 ); | 76 bSizerR->Add( m_buttonPrint, 0, wxALL, 5 ); |
| 96 | |
| 97 m_buttonPrintAll = new wxButton( this, ID_PRTALL, wxT("一括印刷"), wxDefaultPosition, wxDefaultSize, 0 ); | 77 m_buttonPrintAll = new wxButton( this, ID_PRTALL, wxT("一括印刷"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 98 bSizerR->Add( m_buttonPrintAll, 0, wxALL, 5 ); | 78 bSizerR->Add( m_buttonPrintAll, 0, wxALL, 5 ); |
| 99 | |
| 100 m_buttonClose = new wxButton( this, ID_CLSFRM, wxT("閉じる"), wxDefaultPosition, wxDefaultSize, 0 ); | 79 m_buttonClose = new wxButton( this, ID_CLSFRM, wxT("閉じる"), wxDefaultPosition, wxDefaultSize, 0 ); |
| 101 bSizerR->Add( m_buttonClose, 0, wxALL, 5 ); | 80 bSizerR->Add( m_buttonClose, 0, wxALL, 5 ); |
| 102 | 81 |
| 103 bSizer->Add( bSizerR, 0, wxEXPAND, 5 ); | 82 bSizer->Add( bSizerR, 0, wxEXPAND, 5 ); |
| 104 | 83 |
| 105 this->SetSizer( bSizer ); | 84 this->SetSizer( bSizer ); |
| 106 this->Layout(); | 85 this->Layout(); |
| 107 | 86 |
| 108 this->Centre( wxBOTH ); | 87 this->Centre( wxBOTH ); |
| 88 | |
| 89 LoadImages( wxEmptyString ); | |
| 109 } | 90 } |
| 110 | 91 |
| 111 MyFramePreview::~MyFramePreview() | 92 // destructor |
| 93 FramePreview::~FramePreview() | |
| 112 { | 94 { |
| 113 } | 95 } |
| 114 | 96 |
| 97 // Event Table | |
| 98 BEGIN_EVENT_TABLE( FramePreview, wxFrame ) | |
| 99 //EVT_BUTTON( ID_PRINT, FramePreview::PrintImage ) | |
| 100 //EVT_BUTTON( ID_PRTALL, FramePreview::PrintAllImages ) | |
| 101 EVT_BUTTON( ID_CLSFRM, FramePreview::CloseFrame ) | |
| 102 END_EVENT_TABLE() | |
| 103 | |
| 104 // Event Handlers | |
| 105 void FramePreview::CloseFrame(wxCommandEvent& WXUNUSED(event)) | |
| 106 { | |
| 107 this->Close(); | |
| 108 return; | |
| 109 } | |
| 110 | |
| 111 // Functions | |
| 112 void FramePreview::LoadImages(wxString path) | |
| 113 { | |
| 114 path = wxGetCwd() + wxT("/testdrive"); // now test! | |
| 115 wxDir dir(path); | |
| 116 wxString file; | |
| 117 if ( !dir.IsOpened() ) return; | |
| 118 | |
| 119 bool cout = dir.GetFirst( &file, wxT("*.jpg"), wxDIR_FILES ); | |
| 120 SetThumbnail( this->m_staticText1, this->m_bitmap1, path, file ); | |
| 121 dir.GetNext( &file ); | |
| 122 SetThumbnail( this->m_staticText2, this->m_bitmap2, path, file ); | |
| 123 dir.GetNext( &file ); | |
| 124 SetThumbnail( this->m_staticText3, this->m_bitmap3, path, file ); | |
| 125 dir.GetNext( &file ); | |
| 126 SetThumbnail( this->m_staticText4, this->m_bitmap4, path, file ); | |
| 127 dir.GetNext( &file ); | |
| 128 SetThumbnail( this->m_staticText5, this->m_bitmap5, path, file ); | |
| 129 | |
| 130 return; | |
| 131 } | |
| 132 | |
| 133 void FramePreview::SetThumbnail( wxStaticText* st, wxStaticBitmap* sb, wxString path, wxString file ) | |
| 134 { | |
| 135 st->SetLabel(file); | |
| 136 file = path + wxFILE_SEP_PATH + file; | |
| 137 wxImage img( file, wxBITMAP_TYPE_JPEG ); | |
| 138 wxBitmap bmp( img.Scale( 105, 148, wxIMAGE_QUALITY_HIGH ) ); | |
| 139 sb->SetBitmap( bmp ); | |
| 140 | |
| 141 return; | |
| 142 } |
