0
|
1 // Filename : about.cpp
|
21
|
2 // Last Change: 15-Dec-2014.
|
0
|
3 //
|
|
4
|
|
5 #include "common.h"
|
|
6 #include "about.h"
|
|
7
|
|
8 AboutDialog::AboutDialog( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style )
|
|
9 : wxDialog( parent, id, title, pos, size, style )
|
|
10 {
|
|
11 this->SetSizeHints( wxDefaultSize, wxDefaultSize );
|
|
12
|
|
13 wxBoxSizer* bSizer = new wxBoxSizer( wxVERTICAL );
|
|
14
|
|
15 wxBoxSizer* bSizerOK = new wxBoxSizer( wxHORIZONTAL );
|
|
16
|
|
17 wxString iamge = wxGetCwd() + wxFILE_SEP_PATH + wxT("image") + wxFILE_SEP_PATH + wxT("takashi.png");
|
|
18 wxBitmap bmp = wxBitmap( iamge, wxBITMAP_TYPE_PNG );
|
|
19 m_bitmap = new wxStaticBitmap( this, wxID_ANY, bmp, wxDefaultPosition, wxDefaultSize, 0 );
|
|
20 bSizerOK->Add( m_bitmap, 0, wxALL, 5 );
|
|
21
|
21
|
22 m_staticTextDesc = new wxStaticText( this, wxID_ANY, wxT("我に自由を!\rLet me free !"), wxDefaultPosition, wxSize( -1, 50 ), 0 );
|
0
|
23 bSizerOK->Add( m_staticTextDesc, 0, wxALL|wxALIGN_CENTRE, 5 );
|
|
24
|
|
25 m_buttonOK = new wxButton( this, wxID_OK, wxT("OK"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
26 m_buttonOK->SetDefault();
|
|
27 bSizerOK->Add( m_buttonOK, 0, wxALL|wxALIGN_BOTTOM, 5 );
|
|
28
|
|
29 bSizer->Add( bSizerOK, 0, wxEXPAND, 5 );
|
21
|
30
|
|
31 wxString build;
|
|
32 m_staticTextBuild = new wxStaticText( this, wxID_ANY, build.Format( wxT("Build with %s\n") wxT("running under %s."), wxVERSION_STRING, wxGetOsDescription().c_str() ), wxDefaultPosition, wxDefaultSize, 0 );
|
|
33 bSizer->Add( m_staticTextBuild, 0, wxALL, 5 );
|
0
|
34
|
|
35 m_richText = new wxRichTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxVSCROLL|wxBORDER_NONE|wxWANTS_CHARS );
|
|
36 bSizer->Add( m_richText, 1, wxEXPAND|wxALL, 5 );
|
|
37
|
|
38 this->SetSizer( bSizer );
|
|
39 this->Layout();
|
|
40
|
|
41 this->Centre( wxBOTH );
|
|
42
|
|
43 LoadChangeLog();
|
|
44 }
|
|
45
|
|
46 AboutDialog::~AboutDialog()
|
|
47 {
|
|
48 }
|
|
49
|
|
50 void AboutDialog::LoadChangeLog( void )
|
|
51 {
|
|
52 wxTextFile textfile;
|
|
53 textfile.Open( wxGetCwd() + wxFILE_SEP_PATH + wxT("Changes") );
|
21
|
54 for ( int i = 0; i < textfile.GetLineCount(); i++ ) {
|
0
|
55 if ( textfile[i].StartsWith( wxT("version")) ) {
|
|
56 m_richText->BeginBold();
|
|
57 m_richText->BeginFontSize(16);
|
|
58 m_richText->BeginTextColour( wxColour( 0, 200, 0 ) );
|
|
59 m_richText->WriteText( textfile[i] );
|
|
60 m_richText->EndTextColour();
|
|
61 m_richText->EndFontSize();
|
|
62 m_richText->EndBold();
|
|
63 }
|
7
|
64 else if ( textfile[i].StartsWith( wxT("20")) ) { // year
|
21
|
65 m_richText->WriteText( wxT("\t\t") );
|
0
|
66 m_richText->BeginItalic();
|
|
67 m_richText->WriteText( textfile[i] );
|
|
68 m_richText->EndItalic();
|
|
69 m_richText->Newline();
|
|
70 }
|
|
71 else if ( textfile[i].StartsWith( wxT("----")) ) {
|
|
72 m_richText->WriteText( textfile[i] );
|
|
73 m_richText->Newline();
|
|
74 }
|
21
|
75 else if ( textfile[i].IsEmpty() ) {
|
|
76 m_richText->Newline();
|
|
77 }
|
0
|
78 else {
|
21
|
79 m_richText->BeginSymbolBullet( '*', 60, 0, wxTEXT_ATTR_BULLET_STYLE_SYMBOL );
|
0
|
80 m_richText->WriteText( textfile[i] );
|
|
81 m_richText->EndSymbolBullet();
|
7
|
82 m_richText->Newline();
|
0
|
83 }
|
|
84 }
|
|
85 textfile.Close();
|
|
86 m_richText->SetEditable( false );
|
|
87 }
|
|
88
|