# generated by wxGlade 1.1.1 on Thu Mar 27 15:20:04 2025
#
# To get wxPerl visit http://www.wxperl.it
#

use Wx;
use strict;

# begin wxGlade: dependencies
# end wxGlade

# begin wxGlade: extracode
# end wxGlade

package ChordPro::Wx::SongbookExportPanel_wxg;

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

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

    # begin wxGlade: ChordPro::Wx::SongbookExportPanel_wxg::new
    use ChordPro::Wx::Utils;
    $self = $self->SUPER::new( $parent, $id, $pos, $size, $style, $name );
    
    $self->{sizer_1} = Wx::BoxSizer->new(wxVERTICAL);
    
    $self->{sz_outer} = Wx::BoxSizer->new(wxVERTICAL);
    $self->{sizer_1}->Add($self->{sz_outer}, 1, wxEXPAND, 0);
    
    $self->{sz_toolbar} = Wx::BoxSizer->new(wxHORIZONTAL);
    $self->{sz_outer}->Add($self->{sz_toolbar}, 0, wxBOTTOM|wxEXPAND, 3);
    
    $self->{l_status} = Wx::StaticText->new($self, wxID_ANY, _T("Create a Songbook"));
    $self->{l_status}->SetForegroundColour(Wx::Colour->new(0, 104, 217));
    $self->{l_status}->SetFont(Wx::Font->new(20, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, 0, ""));
    $self->{sz_toolbar}->Add($self->{l_status}, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5);
    
    $self->{sz_toolbar}->Add(5, 1, 1, wxEXPAND, 0);
    
    $self->{bmp_preferences} = Wx::Button->new($self, wxID_ANY, _T("Settings"));
    $self->{bmp_preferences}->SetToolTip(_T("Open the Settings dialog"));
    $self->{bmp_preferences}->SetBitmap(Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-toolbar-preferences.png", wxBITMAP_TYPE_ANY), wxTOP);
    $self->{sz_toolbar}->Add($self->{bmp_preferences}, 0, wxALL|wxEXPAND, 5);
    
    $self->{bmb_preview} = Wx::Button->new($self, wxID_ANY, _T("Preview"));
    $self->{bmb_preview}->SetBitmap(Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-toolbar-preview.png", wxBITMAP_TYPE_ANY), wxTOP);
    $self->{sz_toolbar}->Add($self->{bmb_preview}, 0, wxALL, 5);
    
    $self->{bmb_messages} = Wx::Button->new($self, wxID_ANY, _T("Messages"));
    $self->{bmb_messages}->SetBitmap(Wx::Bitmap->new("/usr/local/src/ChordPro/lib/ChordPro/res/icons/wx-toolbar-messages.png", wxBITMAP_TYPE_ANY), wxTOP);
    $self->{sz_toolbar}->Add($self->{bmb_messages}, 0, wxBOTTOM|wxLEFT|wxTOP, 5);
    
    $self->{sw_tb} = Wx::SplitterWindow->new($self, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSP_NOBORDER);
    $self->{sw_tb}->SetMinimumPaneSize(20);
    $self->{sz_outer}->Add($self->{sw_tb}, 1, wxALL|wxEXPAND, 5);
    
    $self->{p_top} = Wx::Panel->new($self->{sw_tb}, wxID_ANY);
    
    $self->{sz_ep} = Wx::BoxSizer->new(wxVERTICAL);
    
    $self->{sw_lr} = Wx::SplitterWindow->new($self->{p_top}, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSP_NOBORDER);
    $self->{sw_lr}->SetMinimumPaneSize(20);
    $self->{sw_lr}->SetSashGravity(0.5);
    $self->{sz_ep}->Add($self->{sw_lr}, 1, wxEXPAND, 0);
    
    $self->{p_left} = Wx::Panel->new($self->{sw_lr}, wxID_ANY);
    
    $self->{sz_left} = Wx::BoxSizer->new(wxVERTICAL);
    
    $self->{sz_export_inner} = Wx::BoxSizer->new(wxVERTICAL);
    $self->{sz_left}->Add($self->{sz_export_inner}, 0, wxEXPAND, 0);
    
    $self->{sz_sbexp} = Wx::FlexGridSizer->new(6, 2, 10, 10);
    $self->{sz_export_inner}->Add($self->{sz_sbexp}, 0, wxEXPAND, 5);
    
    $self->{label_1} = Wx::StaticText->new($self->{p_left}, wxID_ANY, _T("Folder"));
    $self->{sz_sbexp}->Add($self->{label_1}, 0, wxALIGN_CENTER_VERTICAL, 5);
    
    use ChordPro::Wx::FileDirPickerCtrl;
    $self->{dp_folder} = ChordPro::Wx::FileDirPickerCtrl->new($self->{p_left}, wxID_ANY, "", "Select a songbook folder", "");
    $self->{dp_folder}->SetToolTip(_T("Browse for a new folder to open"));
    $self->{sz_sbexp}->Add($self->{dp_folder}, 0, wxEXPAND, 0);
    
    $self->{sz_sbexp}->Add(1, 1, 0, 0, 0);
    
    $self->{sizer_2} = Wx::BoxSizer->new(wxHORIZONTAL);
    $self->{sz_sbexp}->Add($self->{sizer_2}, 1, wxEXPAND, 0);
    
    $self->{l_info} = Wx::StaticText->new($self->{p_left}, wxID_ANY, _T("Select a folder with ChordPro songs"));
    $self->{sizer_2}->Add($self->{l_info}, 1, wxALIGN_CENTER_VERTICAL, 0);
    
    $self->{cb_recursive} = Wx::CheckBox->new($self->{p_left}, wxID_ANY, _T("Include Subfolders"));
    $self->{cb_recursive}->SetToolTip(_T("Include songs in subfolders"));
    $self->{cb_recursive}->Enable(0);
    $self->{cb_recursive}->SetValue(1);
    $self->{sizer_2}->Add($self->{cb_recursive}, 0, wxEXPAND, 0);
    
    $self->{cb_filelist} = Wx::CheckBox->new($self->{p_left}, wxID_ANY, _T("Use File List"));
    $self->{cb_filelist}->SetToolTip(_T("Use the contents of a filelist.txt document to list the file names"));
    $self->{cb_filelist}->Enable(0);
    $self->{cb_filelist}->Show(0);
    $self->{sizer_2}->Add($self->{cb_filelist}, 0, wxEXPAND|wxLEFT, 10);
    
    my $label_3 = Wx::StaticText->new($self->{p_left}, wxID_ANY, "");
    $self->{sz_sbexp}->Add($label_3, 0, 0, 0);
    
    $self->{cb_stdcover} = Wx::CheckBox->new($self->{p_left}, wxID_ANY, _T("Add a standard cover page"));
    $self->{cb_stdcover}->SetToolTip(_T("Add a standard cover page to the output"));
    $self->{cb_stdcover}->SetValue(1);
    $self->{sz_sbexp}->Add($self->{cb_stdcover}, 0, wxEXPAND, 0);
    
    $self->{l_exporttitle} = Wx::StaticText->new($self->{p_left}, wxID_ANY, _T("Title"));
    $self->{l_exporttitle}->Enable(0);
    $self->{sz_sbexp}->Add($self->{l_exporttitle}, 0, wxALIGN_CENTER_VERTICAL, 5);
    
    $self->{t_exporttitle} = Wx::TextCtrl->new($self->{p_left}, wxID_ANY, "");
    $self->{t_exporttitle}->SetToolTip(_T("Specify the title for the standard cover page"));
    $self->{t_exporttitle}->Enable(0);
    $self->{sz_sbexp}->Add($self->{t_exporttitle}, 0, wxEXPAND, 5);
    
    $self->{l_exportstitle} = Wx::StaticText->new($self->{p_left}, wxID_ANY, _T("Subtitle"));
    $self->{l_exportstitle}->Enable(0);
    $self->{sz_sbexp}->Add($self->{l_exportstitle}, 0, wxALIGN_CENTER_VERTICAL, 5);
    
    $self->{t_exportstitle} = Wx::TextCtrl->new($self->{p_left}, wxID_ANY, "");
    $self->{t_exportstitle}->SetToolTip(_T("Specify a subtitle for the standard cover page"));
    $self->{t_exportstitle}->Enable(0);
    $self->{sz_sbexp}->Add($self->{t_exportstitle}, 0, wxEXPAND, 5);
    
    $self->{l_cover} = Wx::StaticText->new($self->{p_left}, wxID_ANY, _T("Cover"));
    $self->{sz_sbexp}->Add($self->{l_cover}, 0, wxALIGN_CENTER_VERTICAL, 0);
    
    use ChordPro::Wx::FileDirPickerCtrl;
    $self->{fp_cover} = ChordPro::Wx::FileDirPickerCtrl->new($self->{p_left}, wxID_ANY, "", "Select a PDF cover document", "PDF files (*.pdf)|*.pdf");
    $self->{fp_cover}->SetToolTip(_T("Select a PDF document to be prepended as cover page"));
    $self->{sz_sbexp}->Add($self->{fp_cover}, 0, wxEXPAND, 0);
    
    $self->{sl_rearrange} = Wx::StaticLine->new($self->{p_left}, wxID_ANY);
    $self->{sz_left}->Add($self->{sl_rearrange}, 0, wxBOTTOM|wxEXPAND|wxTOP, 5);
    
    $self->{l_rearrange} = Wx::StaticText->new($self->{p_left}, wxID_ANY, _T("Rearrange file list. Double-click a song to view or edit it."));
    $self->{sz_left}->Add($self->{l_rearrange}, 0, wxEXPAND, 0);
    
    $self->{sz_rearrange} = Wx::BoxSizer->new(wxHORIZONTAL);
    $self->{sz_left}->Add($self->{sz_rearrange}, 1, wxEXPAND, 0);
    
    $self->{w_rearrange} = Wx::RearrangeList->new($self->{p_left}, wxID_ANY, wxDefaultPosition, wxDefaultSize, [], []);
    $self->{w_rearrange}->SetToolTip(_T("Select the songs and the order they will be included in de songbook"));
    $self->{sz_rearrange}->Add($self->{w_rearrange}, 1, wxEXPAND, 0);
    
    $self->{sz_rearrangebuttons} = Wx::BoxSizer->new(wxVERTICAL);
    $self->{sz_rearrange}->Add($self->{sz_rearrangebuttons}, 0, wxEXPAND, 0);
    
    $self->{sz_rearrangebuttons}->Add(20, 20, 1, wxEXPAND, 0);
    
    $self->{b_up} = Wx::Button->new($self->{p_left}, wxID_UP, "");
    $self->{b_up}->SetToolTip(_T("Move the selected song up"));
    $self->{sz_rearrangebuttons}->Add($self->{b_up}, 0, wxBOTTOM|wxEXPAND|wxLEFT, 5);
    
    $self->{b_down} = Wx::Button->new($self->{p_left}, wxID_DOWN, "");
    $self->{b_down}->SetToolTip(_T("Move the selected song down"));
    $self->{sz_rearrangebuttons}->Add($self->{b_down}, 0, wxEXPAND|wxLEFT, 5);
    
    my $static_line_1 = Wx::StaticLine->new($self->{p_left}, wxID_ANY);
    $self->{sz_rearrangebuttons}->Add($static_line_1, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxTOP, 5);
    
    $self->{b_selectall} = Wx::Button->new($self->{p_left}, wxID_ANY, _T("Select All"));
    $self->{b_selectall}->SetToolTip(_T("Select all the songs"));
    $self->{sz_rearrangebuttons}->Add($self->{b_selectall}, 0, wxBOTTOM|wxEXPAND|wxLEFT, 5);
    
    $self->{b_deselectall} = Wx::Button->new($self->{p_left}, wxID_ANY, _T("Select None"));
    $self->{b_deselectall}->SetMinSize($self->{b_deselectall}->ConvertDialogSizeToPixels(Wx::Size->new(41, 13)));
    $self->{b_deselectall}->SetToolTip(_T("Remove all selections"));
    $self->{sz_rearrangebuttons}->Add($self->{b_deselectall}, 0, wxEXPAND|wxLEFT, 5);
    
    my $static_line_4 = Wx::StaticLine->new($self->{p_left}, wxID_ANY);
    $static_line_4->Show(0);
    $self->{sz_rearrangebuttons}->Add($static_line_4, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxTOP, 5);
    
    $self->{b_open} = Wx::Button->new($self->{p_left}, wxID_OPEN, "");
    $self->{b_open}->SetToolTip(_T("Open a new File list"));
    $self->{b_open}->Show(0);
    $self->{sz_rearrangebuttons}->Add($self->{b_open}, 0, wxBOTTOM|wxEXPAND|wxLEFT, 5);
    
    $self->{b_save} = Wx::Button->new($self->{p_left}, wxID_SAVE, "");
    $self->{b_save}->SetToolTip(_T("Save the current selection to a new file list"));
    $self->{b_save}->Show(0);
    $self->{sz_rearrangebuttons}->Add($self->{b_save}, 0, wxEXPAND|wxLEFT, 5);
    
    $self->{sz_rearrangebuttons}->Add(20, 20, 1, wxEXPAND, 0);
    
    $self->{p_right} = Wx::Panel->new($self->{sw_lr}, wxID_ANY);
    
    $self->{sz_preview} = Wx::BoxSizer->new(wxVERTICAL);
    
    $self->{webview} = Wx::TextCtrl->new($self->{p_right}, wxID_ANY, _T("Preview not available"), wxDefaultPosition, wxDefaultSize, wxTE_READONLY);
    $self->{sz_preview}->Add($self->{webview}, 1, wxEXPAND, 0);
    
    $self->{p_bottom} = Wx::Panel->new($self->{sw_tb}, wxID_ANY);
    
    $self->{sz_messages} = Wx::BoxSizer->new(wxHORIZONTAL);
    
    $self->{t_messages} = Wx::TextCtrl->new($self->{p_bottom}, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE|wxTE_READONLY);
    $self->{t_messages}->SetFont(Wx::Font->new(12, wxFONTFAMILY_TELETYPE, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, 0, ""));
    $self->{sz_messages}->Add($self->{t_messages}, 1, wxEXPAND, 0);
    
    $self->{sz_msgbuttons} = Wx::BoxSizer->new(wxVERTICAL);
    $self->{sz_messages}->Add($self->{sz_msgbuttons}, 0, wxALL|wxEXPAND, 0);
    
    $self->{sz_msgbuttons}->Add(1, 1, 1, wxEXPAND, 0);
    
    $self->{b_msgclear} = Wx::Button->new($self->{p_bottom}, wxID_ANY, _T("Clear"));
    $self->{b_msgclear}->SetToolTip(_T("Clear the messages in the message panel."));
    $self->{sz_msgbuttons}->Add($self->{b_msgclear}, 0, wxBOTTOM|wxEXPAND|wxLEFT, 5);
    
    $self->{b_msgsave} = Wx::Button->new($self->{p_bottom}, wxID_ANY, _T("Save As..."));
    $self->{b_msgsave}->SetMinSize($self->{b_msgsave}->ConvertDialogSizeToPixels(Wx::Size->new(41, 13)));
    $self->{b_msgsave}->SetToolTip(_T("Save the messages onto disk, e.g. for reporting a bug."));
    $self->{sz_msgbuttons}->Add($self->{b_msgsave}, 0, wxEXPAND|wxLEFT, 5);
    
    $self->{b_msgclose} = Wx::Button->new($self->{p_bottom}, wxID_ANY, _T("Close"));
    $self->{b_msgclose}->SetToolTip(_T("Close the message panel."));
    $self->{sz_msgbuttons}->Add($self->{b_msgclose}, 0, wxEXPAND|wxLEFT|wxTOP, 5);
    
    $self->{sz_msgbuttons}->Add(1, 1, 1, 0, 0);
    
    $self->{w_infobar} = Wx::InfoBar->new($self);
    $self->{sz_outer}->Add($self->{w_infobar}, 0, wxEXPAND|wxTOP, 5);
    
    $self->{p_bottom}->SetSizer($self->{sz_messages});
    
    $self->{p_right}->SetSizer($self->{sz_preview});
    
    $self->{sz_sbexp}->AddGrowableCol(1);
    
    $self->{p_left}->SetSizer($self->{sz_left});
    
    $self->{sw_lr}->SplitVertically($self->{p_left}, $self->{p_right}, , 658);
    
    $self->{p_top}->SetSizer($self->{sz_ep});
    
    $self->{sw_tb}->SplitHorizontally($self->{p_top}, $self->{p_bottom}, );
    
    $self->SetSizer($self->{sizer_1});
    $self->{sizer_1}->Fit($self);
    
    $self->Layout();
    Wx::Event::EVT_BUTTON($self, $self->{bmp_preferences}->GetId, $self->can('OnPreferences'));
    Wx::Event::EVT_BUTTON($self, $self->{bmb_preview}->GetId, $self->can('OnShowPreview'));
    Wx::Event::EVT_BUTTON($self, $self->{bmb_messages}->GetId, $self->can('OnShowMessages'));
    Wx::Event::EVT_DIRPICKER_CHANGED($self, $self->{dp_folder}->GetId, $self->can('OnDirPickerChanged'));
    Wx::Event::EVT_CHECKBOX($self, $self->{cb_recursive}->GetId, $self->can('OnRecursive'));
    Wx::Event::EVT_CHECKBOX($self, $self->{cb_filelist}->GetId, $self->can('OnFilelistUse'));
    Wx::Event::EVT_CHECKBOX($self, $self->{cb_stdcover}->GetId, $self->can('OnStdCoverChecked'));
    Wx::Event::EVT_LISTBOX($self, $self->{w_rearrange}->GetId, $self->can('OnRearrangeSelect'));
    Wx::Event::EVT_LISTBOX_DCLICK($self, $self->{w_rearrange}->GetId, $self->can('OnRearrangeDSelect'));
    Wx::Event::EVT_BUTTON($self, $self->{b_up}->GetId, $self->can('OnRearrangeUp'));
    Wx::Event::EVT_BUTTON($self, $self->{b_down}->GetId, $self->can('OnRearrangeDown'));
    Wx::Event::EVT_BUTTON($self, $self->{b_selectall}->GetId, $self->can('OnFilelistSelectAll'));
    Wx::Event::EVT_BUTTON($self, $self->{b_deselectall}->GetId, $self->can('OnFilelistDeselectAll'));
    Wx::Event::EVT_BUTTON($self, $self->{b_open}->GetId, $self->can('OnFilelistOpen'));
    Wx::Event::EVT_BUTTON($self, $self->{b_save}->GetId, $self->can('OnFilelistSave'));
    Wx::Event::EVT_BUTTON($self, $self->{b_msgclear}->GetId, $self->can('OnMessagesClear'));
    Wx::Event::EVT_BUTTON($self, $self->{b_msgsave}->GetId, $self->can('OnMessagesSave'));
    Wx::Event::EVT_BUTTON($self, $self->{b_msgclose}->GetId, $self->can('OnShowMessages'));

    # end wxGlade
    return $self;

}


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


# end of class ChordPro::Wx::SongbookExportPanel_wxg

1;

