comparison src/myframe.cpp @ 24:cbdfda601609 default tip

myframe layout finished.
author pyon@macmini
date Thu, 28 Jul 2011 23:04:36 +0900
parents a10c2fe880f8
children
comparison
equal deleted inserted replaced
23:a10c2fe880f8 24:cbdfda601609
1 // Filename : mainframe.cpp 1 // Filename : mainframe.cpp
2 // Last Change: 27-Jul-2011. 2 // Last Change: 28-Jul-2011.
3 // 3 //
4 #include "wx/html/htmprint.h" 4 #include "wx/html/htmprint.h"
5 #include "wx/print.h" 5 #include "wx/print.h"
6 6
7 #include "symbol.h" 7 #include "symbol.h"
431 ////////////////////////////////////////////////////////////////////////// 431 //////////////////////////////////////////////////////////////////////////
432 // frame constructor 432 // frame constructor
433 MyFrame::MyFrame( wxWindow* parent, wxWindowID id, const wxString& title ) 433 MyFrame::MyFrame( wxWindow* parent, wxWindowID id, const wxString& title )
434 : wxFrame( parent, id, title ) 434 : wxFrame( parent, id, title )
435 { 435 {
436 this->SetSizeHints( wxDefaultSize, wxDefaultSize );
436 // set the frame icon 437 // set the frame icon
437 SetIcon(wxICON(sample)); 438 SetIcon(wxICON(sample));
438 439
439 // メニューバー 440 // メニューバー
440 m_menubar = new wxMenuBar(); 441 m_menubar = new wxMenuBar();
475 m_statusBar = this->CreateStatusBar( WXSIZEOF(widths), wxST_SIZEGRIP ); 476 m_statusBar = this->CreateStatusBar( WXSIZEOF(widths), wxST_SIZEGRIP );
476 m_statusBar->SetStatusWidths( WXSIZEOF(widths), widths ); 477 m_statusBar->SetStatusWidths( WXSIZEOF(widths), widths );
477 m_statusBar->SetStatusText( wxEmptyString, 0 ); 478 m_statusBar->SetStatusText( wxEmptyString, 0 );
478 479
479 wxBoxSizer* TopSizer = new wxBoxSizer( wxVERTICAL ); 480 wxBoxSizer* TopSizer = new wxBoxSizer( wxVERTICAL );
480 wxBoxSizer* bSizerPanel = new wxBoxSizer( wxVERTICAL ); 481
481 //m_panel = new wxPanel( this ); 482 // インデックスボタン
482 /* 483 m_panelHead = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize );
483
484 // controls here
485 m_panelHead = new wxPanel( m_panel, wxID_ANY, wxDefaultPosition, wxDefaultSize );
486 wxBoxSizer* bSizerHead = new wxBoxSizer( wxHORIZONTAL ); 484 wxBoxSizer* bSizerHead = new wxBoxSizer( wxHORIZONTAL );
487 485
488 bSizerHead->AddStretchSpacer( 1 ); // spacer 486 bSizerHead->Add( 0, 0, 1, wxEXPAND, 5 );
487
489 m_staticTextIdx = new wxStaticText( m_panelHead, wxID_ANY, wxT("インデックス"), wxDefaultPosition, wxDefaultSize, 0 ); 488 m_staticTextIdx = new wxStaticText( m_panelHead, wxID_ANY, wxT("インデックス"), wxDefaultPosition, wxDefaultSize, 0 );
490 bSizerHead->Add( m_staticTextIdx, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); 489 bSizerHead->Add( m_staticTextIdx, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
491 490
492 m_btnLsCcn = new wxButton( m_panelHead, ID_LSCCN, wxT("一覧"), wxDefaultPosition, wxDefaultSize, 0 ); 491 m_btnLsCcn = new wxButton( m_panelHead, ID_LSCCN, wxT("一覧"), wxDefaultPosition, wxDefaultSize, 0 );
493 bSizerHead->Add( m_btnLsCcn, 0, wxALL, 5 ); 492 bSizerHead->Add( m_btnLsCcn, 0, wxALL, 5 );
500 499
501 m_btnNextThu = new wxButton( m_panelHead, ID_NXTTHU, wxT("次木 >>"), wxDefaultPosition, wxDefaultSize, 0 ); 500 m_btnNextThu = new wxButton( m_panelHead, ID_NXTTHU, wxT("次木 >>"), wxDefaultPosition, wxDefaultSize, 0 );
502 bSizerHead->Add( m_btnNextThu, 0, wxALL, 5 ); 501 bSizerHead->Add( m_btnNextThu, 0, wxALL, 5 );
503 502
504 m_btnMkIdx = new wxButton( m_panelHead, ID_MKIDX, wxT("作成"), wxDefaultPosition, wxDefaultSize, 0 ); 503 m_btnMkIdx = new wxButton( m_panelHead, ID_MKIDX, wxT("作成"), wxDefaultPosition, wxDefaultSize, 0 );
505 bSizerHead->Add( m_btnMkIdx, 0, wxALL, 5 ); 504 bSizerHead->Add( m_btnMkIdx, 0, wxALIGN_RIGHT|wxALL, 5 );
506 505
507 //m_panelHead->SetSizer( bSizerHead ); 506 m_panelHead->SetSizer( bSizerHead );
508 //m_panelHead->Layout(); 507 m_panelHead->Layout();
509 //bSizerHead->Fit( m_panelHead ); 508 bSizerHead->Fit( m_panelHead );
510 509 TopSizer->Add( m_panelHead, 0, wxEXPAND|wxALIGN_RIGHT|wxALL, 0 );
510
511 // 検索結果HTML
512 m_panelHtml = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize );
513 wxBoxSizer* bSizerHtml = new wxBoxSizer( wxVERTICAL );
514
515 m_html = new wxHtmlWindow( m_panelHtml, ID_HTML, wxDefaultPosition, wxDefaultSize, wxHW_SCROLLBAR_AUTO );
516 m_html->LoadPage( wxT("html/start.html") );
517 bSizerHtml->Add( m_html, 1, wxEXPAND|wxALL, 0 );
518
519 m_panelHtml->SetSizer( bSizerHtml );
520 m_panelHtml->Layout();
521 bSizerHtml->Fit( m_panelHtml );
522 TopSizer->Add( m_panelHtml, 1, wxEXPAND|wxALL, 0 );
523
511 // コマンドライン 524 // コマンドライン
512 m_panelCmd = new wxPanel( m_panel, wxID_ANY, wxDefaultPosition, wxDefaultSize ); 525 m_panelCmd = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize );
513 wxBoxSizer* bSizerCmd = new wxBoxSizer( wxHORIZONTAL ); 526 wxBoxSizer* bSizerCmd = new wxBoxSizer( wxHORIZONTAL );
514 527
515 m_staticTextCmd = new wxStaticText( m_panelCmd, wxID_ANY, wxT("コマンド?"), wxDefaultPosition, wxDefaultSize, 0 ); 528 m_staticTextCmd = new wxStaticText( m_panelCmd, wxID_ANY, wxT("コマンド?"), wxDefaultPosition, wxDefaultSize, 0 );
516 bSizerCmd->Add( m_staticTextCmd, 0, wxALL, 5 ); 529 bSizerCmd->Add( m_staticTextCmd, 0, wxALL, 5 );
517 530
519 bSizerCmd->Add( m_cmdbox, 1, wxALL, 3 ); 532 bSizerCmd->Add( m_cmdbox, 1, wxALL, 3 );
520 m_cmdbox->SetFocus(); 533 m_cmdbox->SetFocus();
521 534
522 m_panelCmd->SetSizer( bSizerCmd ); 535 m_panelCmd->SetSizer( bSizerCmd );
523 m_panelCmd->Layout(); 536 m_panelCmd->Layout();
524 //bSizerCmd->Fit( m_panelCmd ); 537 bSizerCmd->Fit( m_panelCmd );
525 538 TopSizer->Add( m_panelCmd, 0, wxEXPAND|wxALL, 0 );
526 bSizerPanel->Add( bSizerHead, 0, wxEXPAND|wxTOP, 1 );
527 bSizerPanel->Add( m_html, 1, wxEXPAND|wxALL, 1 );
528 bSizerPanel->Add( bSizerCmd, 0, wxEXPAND|wxALL, 0 );
529 539
530 this->SetMinSize( wxSize( 550, 600 ) );
531 */
532 // 検索結果Html
533 m_html = new wxHtmlWindow( this, ID_HTML, wxDefaultPosition, wxDefaultSize, wxHW_SCROLLBAR_AUTO );
534 m_html->LoadPage( wxT("html/start.html") );
535 bSizerPanel->Add( m_html, 1, wxEXPAND|wxALL, 0 );
536
537 TopSizer->Add( bSizerPanel, 1, wxEXPAND|wxALL, 0 );
538
539 this->SetSizer( TopSizer ); 540 this->SetSizer( TopSizer );
540 TopSizer->Fit(this);
541 TopSizer->SetSizeHints(this);
542
543 this->Layout(); 541 this->Layout();
544 } 542 }
545 543
546 // destructor 544 // destructor
547 MyFrame::~MyFrame() 545 MyFrame::~MyFrame()
568 EVT_CLOSE( MyFrame::SaveConfig ) 566 EVT_CLOSE( MyFrame::SaveConfig )
569 END_EVENT_TABLE() 567 END_EVENT_TABLE()
570 568
571 // Event Handlers 569 // Event Handlers
572 /* サイズ変更 */ 570 /* サイズ変更 */
573 void MyFrame::OnSize(wxSizeEvent& WXUNUSED(event)) 571 //void MyFrame::OnSize(wxSizeEvent& WXUNUSED(event))
574 { 572 void MyFrame::OnSize(wxSizeEvent& event)
573 {
574 this->Refresh( true, NULL );
575 wxRect r = this->GetRect(); 575 wxRect r = this->GetRect();
576 int w = r.GetWidth(); 576 int w = r.GetWidth();
577 int h = r.GetHeight(); 577 int h = r.GetHeight();
578 SetStatusText( wxString::Format(wxT("%dx%d"),w,h), 2 ); 578 SetStatusText( wxString::Format(wxT("%dx%d"),w,h), 2 );
579 return; 579 event.Skip();
580 } 580 }
581 /* ウィンドウ移動 */ 581 /* ウィンドウ移動 */
582 void MyFrame::OnMove(wxMoveEvent& WXUNUSED(event)) 582 void MyFrame::OnMove(wxMoveEvent& WXUNUSED(event))
583 { 583 {
584 wxRect r = this->GetRect(); 584 wxRect r = this->GetRect();