App-Music-ChordPro

 view release on metacpan or  search on metacpan

lib/ChordPro/Wx/Main_wxg.pm  view on Meta::CPAN

# begin wxGlade: dependencies
# end wxGlade

# begin wxGlade: extracode
# end wxGlade

package ChordPro::Wx::Main_wxg;

use Wx qw[:everything];
use base qw(Wx::Frame);
use strict;

use Wx::Locale gettext => '_T';
sub new {
    my( $self, $parent, $id, $title, $pos, $size, $style, $name ) = @_;
    $parent = undef              unless defined $parent;
    $id     = -1                 unless defined $id;
    $title  = ""                 unless defined $title;
    $pos    = wxDefaultPosition  unless defined $pos;
    $size   = wxDefaultSize      unless defined $size;
    $name   = ""                 unless defined $name;

    # begin wxGlade: ChordPro::Wx::Main_wxg::new
    use ChordPro::Wx::Utils;
    $style = wxDEFAULT_FRAME_STYLE
        unless defined $style;

    $self = $self->SUPER::new( $parent, $id, $title, $pos, $size, $style, $name );
    $self->SetTitle(_T("ChordPro"));
    
    $self->{sz_outer} = Wx::BoxSizer->new(wxVERTICAL);
    
    $self->{sz_main} = Wx::BoxSizer->new(wxVERTICAL);
    $self->{sz_outer}->Add($self->{sz_main}, 1, wxALL|wxEXPAND, 5);
    
    $self->{p_initial} = Wx::Panel->new($self, wxID_ANY);
    $self->{sz_main}->Add($self->{p_initial}, 1, wxEXPAND, 0);
    
    $self->{sz_init} = Wx::BoxSizer->new(wxHORIZONTAL);
    
    $self->{sz_init}->Add(100, 1, 1, wxALL|wxEXPAND, 0);
    
    $self->{sizer_13} = Wx::BoxSizer->new(wxVERTICAL);
    $self->{sz_init}->Add($self->{sizer_13}, 0, wxEXPAND, 0);
    
    $self->{sizer_13}->Add(1, 1, 1, wxEXPAND, 0);
    
    $self->{l_init} = Wx::StaticText->new($self->{p_initial}, wxID_ANY, _T("Welcome to ChordPro!"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTER_HORIZONTAL);
    $self->{l_init}->SetForegroundColour(Wx::Colour->new(0, 104, 217));
    $self->{l_init}->SetFont(Wx::Font->new(26, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, 0, ""));
    $self->{sizer_13}->Add($self->{l_init}, 0, wxALIGN_CENTER_HORIZONTAL|wxBOTTOM|wxTOP, 20);
    
    $self->{sizer_14} = Wx::BoxSizer->new(wxHORIZONTAL);
    $self->{sizer_13}->Add($self->{sizer_14}, 0, wxEXPAND, 0);
    
    $self->{sizer_8} = Wx::BoxSizer->new(wxVERTICAL);
    $self->{sizer_14}->Add($self->{sizer_8}, 1, wxEXPAND, 0);
    
    $self->{sizer_8}->Add(1, 30, 0, wxEXPAND, 0);
    
    my $bm_init = Wx::StaticBitmap->new($self->{p_initial}, wxID_ANY, Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/chordpro-logo-narrow.png", wxBITMAP_TYPE_ANY));
    $self->{sizer_8}->Add($bm_init, 0, wxEXPAND, 0);
    
    $self->{sizer_8}->Add(1, 1, 1, wxEXPAND, 0);
    
    $self->{sizer_2} = Wx::BoxSizer->new(wxVERTICAL);
    $self->{sizer_14}->Add($self->{sizer_2}, 2, wxEXPAND|wxFIXED_MINSIZE|wxLEFT, 20);
    
    $self->{notebook_1} = Wx::Notebook->new($self->{p_initial}, wxID_ANY);
    $self->{sizer_2}->Add($self->{notebook_1}, 1, wxEXPAND, 0);
    
    $self->{p_create} = Wx::Panel->new($self->{notebook_1}, wxID_ANY);
    $self->{p_create}->SetToolTip(_T("Open or create songs and songbooks"));
    $self->{notebook_1}->AddPage($self->{p_create}, _T("Create"));
    
    $self->{sizer_3} = Wx::BoxSizer->new(wxVERTICAL);
    
    $self->{pn_new} = Wx::Panel->new($self->{p_create}, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_THEME);
    $self->{pn_new}->SetBackgroundColour(Wx::SystemSettings::GetColour(wxSYS_COLOUR_BTNHIGHLIGHT));
    $self->{pn_new}->SetToolTip(_T("Create a new song"));
    $self->{sizer_3}->Add($self->{pn_new}, 0, wxEXPAND, 0);
    
    $self->{sizer_12} = Wx::BoxSizer->new(wxHORIZONTAL);
    
    my $bitmap_7 = Wx::StaticBitmap->new($self->{pn_new}, wxID_ANY, Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-main-new-doc.png", wxBITMAP_TYPE_ANY));
    $self->{sizer_12}->Add($bitmap_7, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10);
    
    my $label_7 = Wx::StaticText->new($self->{pn_new}, wxID_ANY, _T("Create a new song"));
    $self->{sizer_12}->Add($label_7, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 10);
    
    $self->{sizer_3}->Add(1, 5, 1, wxEXPAND, 0);
    
    $self->{pn_open} = Wx::Panel->new($self->{p_create}, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_THEME);
    $self->{pn_open}->SetBackgroundColour(Wx::SystemSettings::GetColour(wxSYS_COLOUR_BTNHIGHLIGHT));
    $self->{pn_open}->SetToolTip(_T("Open an existing song"));
    $self->{sizer_3}->Add($self->{pn_open}, 0, wxEXPAND, 0);
    
    $self->{sizer_20} = Wx::BoxSizer->new(wxHORIZONTAL);
    
    my $bitmap_8 = Wx::StaticBitmap->new($self->{pn_open}, wxID_ANY, Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-main-existing-doc.png", wxBITMAP_TYPE_ANY));
    $self->{sizer_20}->Add($bitmap_8, 0, wxALL, 10);
    
    my $label_8 = Wx::StaticText->new($self->{pn_open}, wxID_ANY, _T("Open an existing song"));
    $self->{sizer_20}->Add($label_8, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 10);
    
    $self->{sizer_3}->Add(1, 5, 1, wxEXPAND, 0);
    
    $self->{pn_sbexport} = Wx::Panel->new($self->{p_create}, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_THEME);
    $self->{pn_sbexport}->SetBackgroundColour(Wx::SystemSettings::GetColour(wxSYS_COLOUR_BTNHIGHLIGHT));
    $self->{pn_sbexport}->SetToolTip(_T("Create a song book"));
    $self->{sizer_3}->Add($self->{pn_sbexport}, 0, wxEXPAND, 10);
    
    $self->{sizer_21} = Wx::BoxSizer->new(wxHORIZONTAL);
    
    my $bitmap_9 = Wx::StaticBitmap->new($self->{pn_sbexport}, wxID_ANY, Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-main-book.png", wxBITMAP_TYPE_ANY));
    $self->{sizer_21}->Add($bitmap_9, 0, wxALL, 10);
    
    my $label_9 = Wx::StaticText->new($self->{pn_sbexport}, wxID_ANY, _T("Create a songbook"));
    $self->{sizer_21}->Add($label_9, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 10);
    
    $self->{sizer_3}->Add(1, 5, 1, wxEXPAND, 0);
    
    $self->{pn_example} = Wx::Panel->new($self->{p_create}, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_THEME);
    $self->{pn_example}->SetBackgroundColour(Wx::SystemSettings::GetColour(wxSYS_COLOUR_BTNHIGHLIGHT));
    $self->{pn_example}->SetToolTip(_T("Open an example song"));
    $self->{sizer_3}->Add($self->{pn_example}, 0, wxEXPAND, 0);
    
    $self->{sizer_22} = Wx::BoxSizer->new(wxHORIZONTAL);
    
    my $bitmap_10 = Wx::StaticBitmap->new($self->{pn_example}, wxID_ANY, Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-main-sample-doc.png", wxBITMAP_TYPE_ANY));
    $self->{sizer_22}->Add($bitmap_10, 0, wxALL, 10);
    
    my $label_10 = Wx::StaticText->new($self->{pn_example}, wxID_ANY, _T("Open an example song"));
    $self->{sizer_22}->Add($label_10, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 10);
    
    $self->{p_recent} = Wx::Panel->new($self->{notebook_1}, wxID_ANY);
    $self->{p_recent}->SetToolTip(_T("Select songs that were recently used"));
    $self->{notebook_1}->AddPage($self->{p_recent}, _T("Recent"));
    
    $self->{sizer_4} = Wx::BoxSizer->new(wxVERTICAL);
    
    $self->{lb_recent} = Wx::ListBox->new($self->{p_recent}, wxID_ANY, wxDefaultPosition, wxDefaultSize, [_T("No recent songs")], wxLB_SINGLE);
    $self->{lb_recent}->Enable(0);
    $self->{sizer_4}->Add($self->{lb_recent}, 1, wxEXPAND, 0);
    
    $self->{l_recent} = Wx::StaticText->new($self->{p_recent}, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxST_ELLIPSIZE_MIDDLE|wxST_NO_AUTORESIZE);
    $self->{l_recent}->SetToolTip(_T("Full file name will show here."));
    $self->{sizer_4}->Add($self->{l_recent}, 0, wxALL|wxEXPAND, 2);
    
    $self->{sizer_2}->Add(1, 10, 0, wxEXPAND, 0);
    
    my $static_line_1 = Wx::StaticLine->new($self->{p_initial}, wxID_ANY);
    $self->{sizer_2}->Add($static_line_1, 0, wxEXPAND, 0);
    
    $self->{sizer_2}->Add(1, 10, 0, wxEXPAND, 0);
    
    $self->{pn_site} = Wx::Panel->new($self->{p_initial}, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_THEME);
    $self->{pn_site}->SetBackgroundColour(Wx::SystemSettings::GetColour(wxSYS_COLOUR_BTNHIGHLIGHT));
    $self->{pn_site}->SetToolTip(_T("Visit the ChordPro site"));
    $self->{sizer_2}->Add($self->{pn_site}, 0, wxEXPAND, 0);
    
    $self->{sizer_18} = Wx::BoxSizer->new(wxHORIZONTAL);
    
    my $bitmap_5 = Wx::StaticBitmap->new($self->{pn_site}, wxID_ANY, Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-main-website.png", wxBITMAP_TYPE_ANY));
    $self->{sizer_18}->Add($bitmap_5, 0, wxALL, 10);
    
    my $label_5 = Wx::StaticText->new($self->{pn_site}, wxID_ANY, _T("Visit the ChordPro site"));
    $self->{sizer_18}->Add($label_5, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 10);
    
    $self->{sizer_2}->Add(1, 5, 0, wxEXPAND, 0);
    
    $self->{pn_help} = Wx::Panel->new($self->{p_initial}, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_THEME);
    $self->{pn_help}->SetBackgroundColour(Wx::SystemSettings::GetColour(wxSYS_COLOUR_BTNHIGHLIGHT));
    $self->{pn_help}->SetToolTip(_T("Read the documentation"));
    $self->{sizer_2}->Add($self->{pn_help}, 0, wxEXPAND, 0);
    
    $self->{sizer_19} = Wx::BoxSizer->new(wxHORIZONTAL);
    
    my $bitmap_6 = Wx::StaticBitmap->new($self->{pn_help}, wxID_ANY, Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-main-documentation.png", wxBITMAP_TYPE_ANY));
    $self->{sizer_19}->Add($bitmap_6, 0, wxALL, 10);
    
    my $label_6 = Wx::StaticText->new($self->{pn_help}, wxID_ANY, _T("Read the documentation"));
    $self->{sizer_19}->Add($label_6, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 10);
    
    $self->{sizer_2}->Add(1, 10, 0, wxEXPAND, 0);
    
    $self->{sizer_13}->Add(1, 20, 1, wxEXPAND, 0);
    
    $self->{sz_init}->Add(100, 1, 1, wxEXPAND, 0);
    
    require ChordPro::Wx::EditorPanel;
    $self->{p_editor} = ChordPro::Wx::EditorPanel->new($self, wxID_ANY);
    $self->{p_editor}->Show(0);
    $self->{sz_main}->Add($self->{p_editor}, 1, wxEXPAND, 0);
    
    require ChordPro::Wx::SongbookExportPanel;
    $self->{p_sbexport} = ChordPro::Wx::SongbookExportPanel->new($self, wxID_ANY);
    $self->{p_sbexport}->Show(0);
    $self->{sz_main}->Add($self->{p_sbexport}, 1, wxEXPAND, 0);
    
    $self->{pn_help}->SetSizer($self->{sizer_19});
    
    $self->{pn_site}->SetSizer($self->{sizer_18});
    
    $self->{p_recent}->SetSizer($self->{sizer_4});
    
    $self->{pn_example}->SetSizer($self->{sizer_22});
    
    $self->{pn_sbexport}->SetSizer($self->{sizer_21});
    
    $self->{pn_open}->SetSizer($self->{sizer_20});
    
    $self->{pn_new}->SetSizer($self->{sizer_12});
    
    $self->{p_create}->SetSizer($self->{sizer_3});
    
    $self->{p_initial}->SetSizer($self->{sz_init});
    
    $self->SetSizer($self->{sz_outer});
    $self->{sz_outer}->Fit($self);
    
    $self->Layout();
    Wx::Event::EVT_LISTBOX($self, $self->{lb_recent}->GetId, $self->can('OnRecentSelect'));
    Wx::Event::EVT_LISTBOX_DCLICK($self, $self->{lb_recent}->GetId, $self->can('OnRecentDclick'));

    # end wxGlade
    return $self;

}


sub OnRecentSelect {
    my ($self, $event) = @_;
    # wxGlade: ChordPro::Wx::Main_wxg::OnRecentSelect <event_handler>
    warn "Event handler (OnRecentSelect) not implemented";
    $event->Skip;
    # end wxGlade
}



( run in 1.064 second using v1.01-cache-2.11-cpan-5c0b1e786e0 )