view release on metacpan or search on metacpan
0.47 Thu 30 Jun 2011
- Added generic bitmap "Load From File" support
- Added bitmap support for Wx::Tool
0.46 Mon 27 Jun 2011
- Added Wx::Tool support
- Added Wx::ToolBar support
- Added Wx::ToolBar separator
0.45 Fri 24 Jun 2011
- Added Wx::MenuItem.OnMenuSelection event support
- Added object_scope method to centralise the "my/our" code generation.
- Refactored some window_ methods to object_ now they are usable for
more than just FBP::Window objects.
0.44 Fri 24 Jun 2011
- Added support for Wx::MenuBar
- Added support for Wx::Menu
- Added support for Wx::MenuItem
- Added support for menu separators
- Always create Wx::StatusBar at the top of the constructor. Adding them
below sizers will confuse them and result in corrupt sizing.
0.43 Mon 20 Jun 2011
- Added support for Wx::StatusBar
- Improved SYNOPSIS and created an initial basic DESCRIPTION
0.42 Mon 20 Jun 2011
- Don't use Wx::SearchCtrl::ShowSearchButton on Mac
lib/FBP/Perl.pm view on Meta::CPAN
# wxCommandEvent
OnButtonClick => [ 2, 'EVT_BUTTON' ],
OnToggleButton => [ 2, 'EVT_TOGGLEBUTTON' ],
OnCheckBox => [ 2, 'EVT_CHECKBOX' ],
OnChoice => [ 2, 'EVT_CHOICE' ],
OnCombobox => [ 2, 'EVT_COMBOBOX' ],
OnListBox => [ 2, 'EVT_LISTBOX' ],
OnListBoxDClick => [ 2, 'EVT_LISTBOX_DCLICK' ],
OnText => [ 2, 'EVT_TEXT' ],
OnTextEnter => [ 2, 'EVT_TEXT_ENTER' ],
OnMenu => [ 2, 'EVT_MENU' ],
# wxColourPickerCtrl
OnColourChanged => [ 2, 'EVT_COLOURPICKER_CHANGED' ],
# wxCloseEvent
OnClose => [ 1, 'EVT_CLOSE' ],
# wxDatePickerCtrl
OnDateChanged => [ 2, 'EVT_DATE_CHANGED' ],
lib/FBP/Perl.pm view on Meta::CPAN
OnListItemFocused => [ 2, 'EVT_LIST_ITEM_FOCUSED' ],
OnListItemMiddleClick => [ 2, 'EVT_LIST_MIDDLE_CLICK' ],
OnListItemRightClick => [ 2, 'EVT_LIST_RIGHT_CLICK' ],
OnListKeyDown => [ 2, 'EVT_LIST_KEY_DOWN' ],
OnListColClick => [ 2, 'EVT_LIST_COL_CLICK' ],
OnListColRightClick => [ 2, 'EVT_LIST_COL_RIGHT_CLICK' ],
OnListColBeginDrag => [ 2, 'EVT_LIST_COL_BEGIN_DRAG' ],
OnListColDragging => [ 2, 'EVT_LIST_COL_DRAGGING' ],
OnListColEndDrag => [ 2, 'EVT_LIST_COL_END_DRAG' ],
# wxMenuEvent
OnMenuSelection => [ 2, 'EVT_MENU' ],
# wxMouseEvent
OnEnterWindow => [ 1, 'EVT_ENTER_WINDOW' ],
OnLeaveWindow => [ 1, 'EVT_LEAVE_WINDOW' ],
OnLeftDClick => [ 1, 'EVT_LEFT_DCLICK' ],
OnLeftDown => [ 1, 'EVT_LEFT_DOWN' ],
OnLeftUp => [ 1, 'EVT_LEFT_UP' ],
OnMiddleDClick => [ 1, 'EVT_MIDDLE_DCLICK' ],
OnMiddleDown => [ 1, 'EVT_MIDDLE_DOWN' ],
OnMiddleUp => [ 1, 'EVT_MIDDLE_UP' ],
lib/FBP/Perl.pm view on Meta::CPAN
OnTreeItemActivated => [ 2, 'EVT_TREE_ITEM_ACTIVATED' ],
OnTreeItemCollapsed => [ 2, 'EVT_TREE_ITEM_COLLAPSED' ],
OnTreeItemCollapsing => [ 2, 'EVT_TREE_ITEM_COLLAPSING' ],
OnTreeItemExpanded => [ 2, 'EVT_TREE_ITEM_EXPANDED' ],
OnTreeItemExpanding => [ 2, 'EVT_TREE_ITEM_EXPANDING' ],
OnTreeItemRightClick => [ 2, 'EVT_TREE_ITEM_RIGHT_CLICK' ],
OnTreeItemMiddleClick => [ 2, 'EVT_TREE_ITEM_MIDDLE_CLICK' ],
OnTreeSelChanged => [ 2, 'EVT_TREE_SEL_CHANGED' ],
OnTreeSelChanging => [ 2, 'EVT_TREE_SEL_CHANGING' ],
OnTreeKeyDown => [ 2, 'EVT_TREE_KEY_DOWN' ],
OnTreeItemMenu => [ 2, 'EVT_TREE_ITEM_MENU' ],
);
# Event Connect Binding Table
our %CONNECT = (
# Common low level events
# OnEraseBackground => 'wxEVT_ERASE_BACKGROUND',
# OnPaint => 'wxEVT_PAINT',
# OnUpdateUI => 'wxEVT_UPDATE_UI',
# # wxActivateEvent
lib/FBP/Perl.pm view on Meta::CPAN
# # wxCommandEvent
# OnButtonClick => 'wxEVT_COMMAND_BUTTON_CLICKED',
# OnCheckBox => 'wxEVT_COMMAND_CHECKBOX_CLICKED',
# OnChoice => 'wxEVT_COMMAND_CHOICE_SELECTED',
# OnCombobox => 'wxEVT_COMMAND_COMBOBOX_SELECTED',
# OnListBox => 'wxEVT_COMMAND_LISTBOX_SELECTED',
# OnListBoxDClick => 'wxEVT_COMMAND_LISTBOX_DOUBLECLICKED',
# OnText => 'wxEVT_COMMAND_TEXT_UPDATED',
# OnTextEnter => 'wxEVT_COMMAND_TEXT_ENTER',
# OnMenu => 'wxEVT_COMMAND_MENU_SELECTED',
# # wxColourPickerCtrl
# OnColourChanged => 'wxEVT_COLOURPICKER_CHANGED',
# # wxCloseEvent
# OnClose => 'wxEVT_CLOSE_WINDOW',
# # wxDatePickerCtrl
# OnDateChanged => 'wxEVT_DATE_CHANGED',
lib/FBP/Perl.pm view on Meta::CPAN
return 0;
}
sub form_methods {
my $self = shift;
my $form = shift;
my @objects = (
$form,
$form->find( isa => 'FBP::Window' ),
$form->find( isa => 'FBP::MenuItem' ),
$form->find( isa => 'FBP::StdDialogButtonSizer' ),
);
my %seen = ();
my %done = ();
my @methods = ();
# Add the accessor methods
foreach my $object ( @objects ) {
next unless $object->can('name');
next unless $object->can('permission');
lib/FBP/Perl.pm view on Meta::CPAN
# We emulate the creation of simple listbooks via treebooks
if ( $window->wxclass eq 'Wx::Treebook' ) {
$lines = $self->treebook_create($window, $parent);
} else {
$lines = $self->listbook_create($window, $parent);
}
} elsif ( $window->isa('FBP::ListBox') ) {
$lines = $self->listbox_create($window, $parent);
} elsif ( $window->isa('FBP::ListCtrl') ) {
$lines = $self->listctrl_create($window, $parent);
} elsif ( $window->isa('FBP::MenuBar') ) {
$lines = $self->menubar_create($window, $parent);
} elsif ( $window->isa('FBP::Notebook') ) {
$lines = $self->notebook_create($window, $parent);
} elsif ( $window->isa('FBP::Panel') ) {
$lines = $self->panel_create($window, $parent);
} elsif ( $window->isa('FBP::RadioBox') ) {
$lines = $self->radiobox_create($window, $parent);
} elsif ( $window->isa('FBP::RadioButton') ) {
$lines = $self->radiobutton_create($window, $parent);
} elsif ( $window->isa('FBP::RichTextCtrl') ) {
lib/FBP/Perl.pm view on Meta::CPAN
}
sub menu_create {
my $self = shift;
my $menu = shift;
my $scope = $self->object_scope($menu);
my $variable = $self->object_variable($menu);
# Generate our children
my @lines = (
"$scope$variable = Wx::Menu->new;",
"",
);
foreach my $child ( @{$menu->children} ) {
if ( $child->isa('FBP::Menu') ) {
push @lines, @{ $self->menu_create($child, $menu) };
} elsif ( $child->isa('FBP::MenuItem') ) {
push @lines, @{ $self->menuitem_create($child, $menu) };
} else {
next;
}
push @lines, "";
}
# Fill the menu
foreach my $child ( @{$menu->children} ) {
if ( $child->isa('FBP::Menu') ) {
push @lines, $self->nested(
"$variable->Append(",
$self->object_variable($_) . ',',
$self->object_label($_) . ',',
");",
);
} elsif ( $child->isa('FBP::MenuItem') ) {
push @lines, "$variable->Append( "
. $self->object_variable($child)
. " );";
} elsif ( $child->isa('FBP::MenuSeparator') ) {
push @lines, "$variable->AppendSeparator;";
}
}
return \@lines;
}
sub menubar_create {
my $self = shift;
my $window = shift;
lib/FBP/Perl.pm view on Meta::CPAN
$self->nested(
"$variable->Append(",
$self->object_variable($_) . ',',
$self->object_label($_) . ',',
");",
)
} @{$window->children};
return [
( map { @$_, "" } @children ),
"$scope$variable = Wx::MenuBar->new($style);",
"",
@append,
"",
"$parent->SetMenuBar( $variable );",
];
}
sub menuitem_create {
my $self = shift;
my $menu = shift;
my $parent = $self->object_parent(@_);
my $scope = $self->object_scope($menu);
my $variable = $self->object_variable($menu);
my $id = $self->object_id($menu);
my $label = $self->object_label($menu);
my $help = $self->text( $menu->help );
my $kind = $self->wx( $menu->kind );
# Create the menu item
my $lines = $self->nested(
"$scope$variable = Wx::MenuItem->new(",
"$parent,",
"$id,",
"$label,",
"$help,",
"$kind,",
");",
);
# Add the event bindings
push @$lines, $self->object_bindings($menu);
t/data/simple.fbp view on Meta::CPAN
<event name="OnTreeDeleteItem"></event>
<event name="OnTreeEndDrag"></event>
<event name="OnTreeEndLabelEdit"></event>
<event name="OnTreeGetInfo"></event>
<event name="OnTreeItemActivated"></event>
<event name="OnTreeItemCollapsed"></event>
<event name="OnTreeItemCollapsing"></event>
<event name="OnTreeItemExpanded"></event>
<event name="OnTreeItemExpanding"></event>
<event name="OnTreeItemGetTooltip"></event>
<event name="OnTreeItemMenu"></event>
<event name="OnTreeItemMiddleClick"></event>
<event name="OnTreeItemRightClick"></event>
<event name="OnTreeKeyDown"></event>
<event name="OnTreeSelChanged"></event>
<event name="OnTreeSelChanging"></event>
<event name="OnTreeSetInfo"></event>
<event name="OnTreeStateImageClick"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
t/data/simple.fbp view on Meta::CPAN
<event name="OnTreeBeginLabelEdit"></event>
<event name="OnTreeBeginRDrag"></event>
<event name="OnTreeDeleteItem"></event>
<event name="OnTreeEndDrag"></event>
<event name="OnTreeEndLabelEdit"></event>
<event name="OnTreeItemActivated"></event>
<event name="OnTreeItemCollapsed"></event>
<event name="OnTreeItemCollapsing"></event>
<event name="OnTreeItemExpanded"></event>
<event name="OnTreeItemExpanding"></event>
<event name="OnTreeItemMenu"></event>
<event name="OnTreeItemMiddleClick"></event>
<event name="OnTreeItemRightClick"></event>
<event name="OnTreeKeyDown"></event>
<event name="OnTreeSelChanged"></event>
<event name="OnTreeSelChanging"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
</object>
</object>
t/data/simple.fbp view on Meta::CPAN
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
<object class="wxMenuBar" expanded="0">
<property name="bg"></property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="font"></property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="label">MyMenuBar</property>
<property name="maximum_size"></property>
<property name="minimum_size"></property>
<property name="name">m_menubar1</property>
<property name="permission">protected</property>
<property name="pos"></property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
<property name="validator_data_type"></property>
t/data/simple.fbp view on Meta::CPAN
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
<object class="wxMenu" expanded="0">
<property name="label">File</property>
<property name="name">m_menu1</property>
<property name="permission">protected</property>
<object class="wxMenuItem" expanded="0">
<property name="bitmap"></property>
<property name="checked">0</property>
<property name="enabled">1</property>
<property name="help"></property>
<property name="id">wxID_ANY</property>
<property name="kind">wxITEM_NORMAL</property>
<property name="label">MyMenuItem</property>
<property name="name">m_menuItem1</property>
<property name="permission">none</property>
<property name="shortcut"></property>
<property name="unchecked_bitmap"></property>
<event name="OnMenuSelection">menu_event</event>
<event name="OnUpdateUI"></event>
</object>
<object class="separator" expanded="0">
<property name="name">m_separator1</property>
<property name="permission">none</property>
</object>
<object class="wxMenuItem" expanded="0">
<property name="bitmap"></property>
<property name="checked">0</property>
<property name="enabled">1</property>
<property name="help"></property>
<property name="id">wxID_ANY</property>
<property name="kind">wxITEM_NORMAL</property>
<property name="label">MyMenuItem...</property>
<property name="name">m_menuItem2</property>
<property name="permission">none</property>
<property name="shortcut"></property>
<property name="unchecked_bitmap"></property>
<event name="OnMenuSelection"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
</object>
<object class="wxToolBar" expanded="0">
<property name="bg"></property>
<property name="bitmapsize"></property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="enabled">1</property>
t/data/simple.fbp view on Meta::CPAN
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
<object class="tool" expanded="0">
<property name="bitmap">padre-plugin.png; Load From File</property>
<property name="id">wxID_ANY</property>
<property name="kind">wxITEM_NORMAL</property>
<property name="label">Tool 1</property>
<property name="name">m_tool3</property>
<property name="statusbar"></property>
<property name="tooltip"></property>
<event name="OnMenuSelection"></event>
<event name="OnToolClicked"></event>
<event name="OnToolEnter"></event>
<event name="OnToolRClicked"></event>
<event name="OnUpdateUI"></event>
</object>
<object class="toolSeparator" expanded="0" />
<object class="tool" expanded="0">
<property name="bitmap"></property>
<property name="id">wxID_ANY</property>
<property name="kind">wxITEM_NORMAL</property>
<property name="label">Tool 2</property>
<property name="name">m_tool4</property>
<property name="statusbar"></property>
<property name="tooltip"></property>
<event name="OnMenuSelection"></event>
<event name="OnToolClicked"></event>
<event name="OnToolEnter"></event>
<event name="OnToolRClicked"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="wxBoxSizer" expanded="0">
<property name="minimum_size"></property>
<property name="name">bSizer7</property>
<property name="orient">wxVERTICAL</property>
t/lib/MyFrame1.pm view on Meta::CPAN
},
);
Wx::Event::EVT_IDLE(
$self,
sub {
shift->on_idle(@_);
},
);
$self->{m_menu1} = Wx::Menu->new;
my $m_menuItem1 = Wx::MenuItem->new(
$self->{m_menu1},
-1,
Wx::gettext("MyMenuItem"),
'',
Wx::wxITEM_NORMAL,
);
Wx::Event::EVT_MENU(
$self,
$m_menuItem1,
sub {
shift->menu_event(@_);
},
);
my $m_menuItem2 = Wx::MenuItem->new(
$self->{m_menu1},
-1,
Wx::gettext("MyMenuItem..."),
'',
Wx::wxITEM_NORMAL,
);
$self->{m_menu1}->Append( $m_menuItem1 );
$self->{m_menu1}->AppendSeparator;
$self->{m_menu1}->Append( $m_menuItem2 );
$self->{m_menubar1} = Wx::MenuBar->new(0);
$self->{m_menubar1}->Append(
$self->{m_menu1},
Wx::gettext("File"),
);
$self->SetMenuBar( $self->{m_menubar1} );
$self->{m_toolBar1} = $self->CreateToolBar( Wx::wxTB_HORIZONTAL, -1 );
$self->{m_toolBar1}->AddTool(
-1,
Wx::gettext("Tool 1"),
Wx::Bitmap->new( "padre-plugin.png", Wx::wxBITMAP_TYPE_ANY ),
'',
Wx::wxITEM_NORMAL,
);
$self->{m_toolBar1}->AddSeparator;
t/lib/MyFrame1.pm view on Meta::CPAN
sub on_iconize {
warn 'Handler method on_iconize for event t::lib::MyFrame1.OnIconize not implemented';
}
sub on_idle {
warn 'Handler method on_idle for event t::lib::MyFrame1.OnIdle not implemented';
}
sub menu_event {
warn 'Handler method menu_event for event m_menuItem1.OnMenuSelection not implemented';
}
sub yes_clicked {
warn 'Handler method yes_clicked for event m_sdbSizer1.OnYesButtonClick not implemented';
}
1;