Commit 82f63dd2 authored by Dominique Dumont's avatar Dominique Dumont

Imported Upstream version 0.9922

parent eee93c2c
Revision history for Perl extension Wx.
0.9922 Wed May 01 2013
- added wxCommandLinkButton
- updates to ID creation methods
- rt#84633
- added wxUIActionSimulator
- wxFindReplaceDialog new return a hash type object
- wxProgressDialog updates
- IPC classes object deletion updates
- wxString conversion UTF-8 only in Unicode builds
- typemap template missing some specs since 0.9917
0.9921 Sun Apr 14 2013
- Fix 2.9.4 handling of wxConnection::Execute
0.9919 Sat Apr 13 2013
- Makefile checks for supported Wx version
- Fixed wxUSE_DATAVIEWCTRL constant ( rt#84566 )
- wrapped wxRegionIterator
- wrapped IPC - wxConnection / wxServer / wxClient
0.9918 Wed Apr 03 2013
- Added missing GetItemFont / SetItemFont for Wx::ListCtrl
- Fixed wxFontEnumerator GetEncodings / GetFacenames
( thanks to Marton Papp )
- Wrapped wxFontEnumerator callbacks
0.9917 Mon Feb 11 2013
- Stopped wxWidgets >= 2.9.0 from setting locale to current user locale
( thanks to Tarek Unger )
0.9916 Sat Jan 19 2013
- put correct version check around wxLogChain::DetachOldLog
- fixed paper type tests in ext/print/09_paper.t
0.9915 Sun Dec 30 2012
- fix bug for wxMac and wxwidgets 2.9.4+ in cpp/app.h
- add some missing aui events
0.9914 Tue Oct 02 2012
- Wx::StyledTextCtrl additions for 2.9.4
- wxLog functions for 2.9.x added
- wrapped wxRearrangeCtrl
- added start of Wx::PerlTest - to aid documentation and examples
- Additions for Wx::XSP::* classes
- wrapped wxEventFilter for 2.9.3 +
- updated missing Wx::App methods for 2.9.4 +
- added wxEvtHandler::ProcessEventLocally for 2.9.1+
- added some absent wxWindow methods
- updated wxTopLevelWindow
- added wxFrame::ProcessCommand
0.9913 Fri Sep 28 2012
- ld build fix for some 64 bit *nix
0.9912 Fri Sep 21 2012
- wrapped wxListCtrl::SetItemPtrData.
- updated to use sv_magicext / mg_findext so
external modules do not stomp on our magic.
- updated wxListView so that LC_VIRTUAL style works.
- set wxListCtrl full constructor to create evthandler.
- updated Wx::Ribbon controls for 2.9.4 interface +
tool/button 'Add' and 'Insert' methods now return objects
as described in the docs instead of int id's.
- added SetClientData to PGProperty and PropertyGridInterface
- Wx::ToolBar->SetClientData now deletes any prior set Wx::Object
- wxDataViewListCtrl and wxDataViewListStore - fix ClientData for >= 2.9.4
- /usr/local/lib needs removing from LD:DL:FLAGS on all *nix types
- nostdinc now removed from any flags on MacOSX
- Fixed handling of asserts and debug level > 0 on wxWidgets >= 2.9.3
- Added wxApp::OnAssertFailure
0.9911 Fri Aug 24 2012
- wxDataView - updated for 2.9.4
- wxTreeEvent::GetKeyEvent() added
......
......@@ -4,7 +4,7 @@
// Author: Mattia Barbon
// Modified by:
// Created: 29/10/2000
// RCS-ID: $Id: Constant.xs 3313 2012-07-13 02:14:15Z mdootson $
// RCS-ID: $Id: Constant.xs 3470 2013-04-13 08:38:19Z mdootson $
// Copyright: (c) 2000-2011 Mattia Barbon
// Licence: This program is free software; you can redistribute it and/or
// modify it under the same terms as Perl itself
......@@ -467,6 +467,7 @@ static wxPlINH inherit[] =
#endif
I( Font, GDIObject )
I( Region, GDIObject )
I( RegionIterator, Object )
I( Bitmap, GDIObject )
I( Pen, GDIObject )
I( Palette, GDIObject )
......@@ -481,6 +482,7 @@ static wxPlINH inherit[] =
#ifdef __WXMSW__
I( EnhMetaFileDC, DC )
#endif
I( PlFontEnumerator, FontEnumerator )
I( BMPHandler, ImageHandler )
I( PNGHandler, ImageHandler )
......@@ -3466,7 +3468,7 @@ _get_packages()
#if wxPERL_USE_DATETIME
"use Wx::DateTime;"
#endif
#if wxPERL_USE_DATAVIEW && wxUSE_DATAVIEW && WXPERL_W_VERSION_GE( 2, 9, 0 )
#if wxPERL_USE_DATAVIEW && wxUSE_DATAVIEWCTRL && WXPERL_W_VERSION_GE( 2, 9, 0 )
"use Wx::DataView;"
#endif
#if wxPERL_USE_MEDIA && wxUSE_MEDIACTRL && WXPERL_W_VERSION_GE( 2, 6, 0 )
......
......@@ -4,8 +4,8 @@
// Author: Mattia Barbon
// Modified by:
// Created: 29/10/2000
// RCS-ID: $Id: Controls.xs 3228 2012-03-19 03:59:13Z mdootson $
// Copyright: (c) 2000-2010 Mattia Barbon
// RCS-ID: $Id: Controls.xs 3478 2013-04-16 10:31:53Z mdootson $
// Copyright: (c) 2000-2013 Mattia Barbon
// Licence: This program is free software; you can redistribute it and/or
// modify it under the same terms as Perl itself
/////////////////////////////////////////////////////////////////////////////
......@@ -106,12 +106,16 @@ INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp interface/w
INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp interface/wx/button.h
INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp interface/wx/commandlinkbutton.h
INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp interface/wx/treelist.h
INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp interface/wx/richtooltip.h
INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp interface/wx/bannerwindow.h
INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp interface/wx/rearrangectrl.h
INCLUDE: XS/CheckBox.xs
INCLUDE: XS/CheckListBox.xs
INCLUDE: XS/Choice.xs
......
......@@ -4,7 +4,7 @@
// Author: Mattia Barbon
// Modified by:
// Created: 29/10/2000
// RCS-ID: $Id: Frames.xs 2935 2010-07-04 11:46:58Z mbarbon $
// RCS-ID: $Id: Frames.xs 3486 2013-04-16 17:39:27Z mdootson $
// Copyright: (c) 2000-2003, 2005-2010 Mattia Barbon
// Licence: This program is free software; you can redistribute it and/or
// modify it under the same terms as Perl itself
......@@ -48,7 +48,8 @@ INCLUDE: XS/ProgressDialog.xs
INCLUDE: XS/SingleChoiceDialog.xs
INCLUDE: XS/MultiChoiceDialog.xs
INCLUDE: XS/FontDialog.xs
INCLUDE: XS/FindReplaceDialog.xs
INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp XS/FindReplaceDialog.xsp
INCLUDE_COMMAND: $^X -MExtUtils::XSpp::Cmd -e xspp -- -t typemap.xsp XS/AboutDialog.xsp
......
......@@ -208,6 +208,15 @@ ext/html/XS/HtmlPrintout.xsp
ext/html/XS/HtmlTag.xsp
ext/html/XS/HtmlTagHandler.xsp
ext/html/XS/HtmlWindow.xsp
ext/ipc/cpp/ipc.h
ext/ipc/IPC.xs
ext/ipc/lib/Wx/IPC.pm
ext/ipc/Makefile.PL
ext/ipc/t/01_load.t
ext/ipc/t/02_inheritance.t
ext/ipc/t/03_threads.t
ext/ipc/typemap
ext/ipc/XS/IPC.xsp
ext/Makefile.PL
ext/mdi/cpp/mdi.h
ext/mdi/lib/Wx/MDI.pm
......@@ -248,6 +257,7 @@ ext/print/Print.xs
ext/print/t/01_load.t
ext/print/t/02_inheritance.t
ext/print/t/03_threads.t
ext/print/t/09_paper.t
ext/print/typemap
ext/print/XS/PageSetupDialog.xs
ext/print/XS/PageSetupDialogData.xs
......@@ -282,6 +292,7 @@ ext/propgrid/XS/PropertyGridPage.xsp
ext/propgrid/XS/PropertyGridPageState.xsp
ext/ribbon/cpp/ribbon_constants.cpp
ext/ribbon/cpp/ribbongalleryitem.h
ext/ribbon/cpp/toolbarbases.h
ext/ribbon/lib/Wx/Ribbon.pm
ext/ribbon/Makefile.PL
ext/ribbon/Ribbon.xs
......@@ -342,6 +353,18 @@ ext/stc/t/02_inheritance.t
ext/stc/typemap
ext/stc/XS/StyledTextCtrl.xsp
ext/stc/XS/StyledTextEvent.xsp
ext/test/cpp/include/perltest.h
ext/test/cpp/src/perltest.cpp
ext/test/lib/Wx/PerlTest.pm
ext/test/Makefile.PL
ext/test/PerlTest.xs
ext/test/t/01_load.t
ext/test/t/02_inheritance.t
ext/test/t/03_threads.t
ext/test/t/07_callback.t
ext/test/typemap
ext/test/typemap.xsp
ext/test/XS/PerlTest.xsp
ext/webview/cpp/webview_constants.cpp
ext/webview/lib/Wx/WebView.pm
ext/webview/Makefile.PL
......@@ -369,6 +392,7 @@ GDI.xs
interface/wx/bannerwindow.h
interface/wx/bmpbuttn.h
interface/wx/button.h
interface/wx/commandlinkbutton.h
interface/wx/dataview/dataviewlistctrl.h
interface/wx/dataview/dataviewliststore.h
interface/wx/dataview/dataviewvirtuallistmodel.h
......@@ -377,8 +401,10 @@ interface/wx/grid/gridtablebase.h
interface/wx/headercol.h
interface/wx/headerctrl.h
interface/wx/infobar.h
interface/wx/rearrangectrl.h
interface/wx/richtooltip.h
interface/wx/treelist.h
interface/wx/uiaction.h
lib/Wx/Api.pod
lib/Wx/App.pm
lib/Wx/ArtProvider.pm
......@@ -480,14 +506,15 @@ XS/DirCtrl.xsp
XS/DirDialog.xs
XS/Display.xsp
XS/EditableListBox.xsp
XS/EventFilter.xsp
XS/EvtHandler.xs
XS/FileCtrl.xsp
XS/FileDialog.xs
XS/FilePickerCtrl.xsp
XS/FindReplaceDialog.xs
XS/FindReplaceDialog.xsp
XS/Font.xs
XS/FontDialog.xs
XS/FontEnumerator.xs
XS/FontEnumerator.xsp
XS/FontMapper.xs
XS/FontPickerCtrl.xsp
XS/Frame.xs
......@@ -575,4 +602,5 @@ XS/VScrolledWindow.xsp
XS/Wave.xs
XS/Window.xsp
XS/Wizard.xs
META.yml Module meta-data (added by MakeMaker)
META.yml Module YAML meta-data (added by MakeMaker)
META.json Module JSON meta-data (added by MakeMaker)
......@@ -9,9 +9,10 @@
\.o$
\.obj$
\.pdb$
\.pdf$
\.poedit$
^Opt$
^Wx-\d+\.\d+\.(zip|tar\.gz|tgz)$
^Wx-\d+\.\d+\.(zip|tar\.gz|tgz|tar\.gzbak)$
^bak
^blib
^cpp/setup\.h$
......@@ -21,3 +22,4 @@
^MANIFEST\.bak$
(?:^|/)MYMETA\.yml$
(?:^|/)MYMETA\.json$
xspp/
{
"abstract" : "interface to the wxWidgets cross-platform GUI toolkit",
"author" : [
"Mattia Barbon <mbarbon@cpan.org>"
],
"dynamic_config" : 1,
"generated_by" : "ExtUtils::MakeMaker version 6.6302, CPAN::Meta::Converter version 2.120630",
"license" : [
"perl_5"
],
"meta-spec" : {
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
"version" : "2"
},
"name" : "Wx",
"no_index" : {
"directory" : [
"samples",
"script"
],
"package" : [
"MY",
"Parse::Yapp::Driver"
]
},
"prereqs" : {
"build" : {
"requires" : {
"Alien::wxWidgets" : "0.25",
"ExtUtils::MakeMaker" : "6.48",
"ExtUtils::ParseXS" : "3.15",
"ExtUtils::XSpp" : "0.1602",
"File::Spec::Functions" : "0.82",
"Test::Harness" : "2.26",
"Test::More" : "0.45",
"if" : "0.03"
}
},
"configure" : {
"requires" : {
"Alien::wxWidgets" : "0.25"
}
},
"runtime" : {
"requires" : {
"Alien::wxWidgets" : "0.25"
}
}
},
"release_status" : "stable",
"resources" : {
"bugtracker" : {
"web" : "http://rt.cpan.org/NoAuth/Bugs.html?Dist=Wx"
},
"homepage" : "http://www.wxperl.it/",
"license" : [
"http://dev.perl.org/licenses/"
],
"repository" : {
"url" : "http://svn.code.sf.net/p/wxperl/code/wxPerl"
},
"x_MailingList" : "http://lists.perl.org/list/wxperl-users.html"
},
"version" : "0.9922"
}
--- #YAML:1.0
name: Wx
version: 0.9911
abstract: interface to the wxWidgets cross-platform GUI toolkit
---
abstract: 'interface to the wxWidgets cross-platform GUI toolkit'
author:
- Mattia Barbon <mbarbon@cpan.org>
license: perl
distribution_type: module
configure_requires:
Alien::wxWidgets: 0.25
- 'Mattia Barbon <mbarbon@cpan.org>'
build_requires:
Alien::wxWidgets: 0.25
ExtUtils::MakeMaker: 6.48
ExtUtils::ParseXS: 3.15
ExtUtils::XSpp: 0.1602
File::Spec::Functions: 0.82
if: 0.03
Test::Harness: 2.26
Test::More: 0.45
Alien::wxWidgets: 0.25
ExtUtils::MakeMaker: 6.48
ExtUtils::ParseXS: 3.15
ExtUtils::XSpp: 0.1602
File::Spec::Functions: 0.82
Test::Harness: 2.26
Test::More: 0.45
if: 0.03
configure_requires:
Alien::wxWidgets: 0.25
dynamic_config: 1
generated_by: 'ExtUtils::MakeMaker version 6.6302, CPAN::Meta::Converter version 2.120630'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
name: Wx
no_index:
directory:
- samples
- script
package:
- MY
- Parse::Yapp::Driver
requires:
Alien::wxWidgets: 0.25
Alien::wxWidgets: 0.25
resources:
bugtracker: http://rt.cpan.org/NoAuth/Bugs.html?Dist=Wx
homepage: http://wxperl.eu/
license: http://dev.perl.org/licenses/
MailingList: http://lists.perl.org/list/wxperl-users.html
repository: https://wxperl.svn.sourceforge.net/svnroot/wxperl/wxPerl
no_index:
directory:
- samples
- script
package:
- MY
- Parse::Yapp::Driver
generated_by: ExtUtils::MakeMaker version 6.56
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
dynamic_config: 1
bugtracker: http://rt.cpan.org/NoAuth/Bugs.html?Dist=Wx
homepage: http://www.wxperl.it/
license: http://dev.perl.org/licenses/
repository: http://svn.code.sf.net/p/wxperl/code/wxPerl
x_MailingList: http://lists.perl.org/list/wxperl-users.html
version: 0.9922
......@@ -5,7 +5,7 @@
## Author: Mattia Barbon
## Modified by:
## Created: 01/10/2000
## RCS-ID: $Id: Makefile.PL 3258 2012-03-27 08:57:58Z mdootson $
## RCS-ID: $Id: Makefile.PL 3462 2013-04-11 12:28:19Z mdootson $
## Copyright: (c) 2000-2012 Mattia Barbon
## Licence: This program is free software; you can redistribute it and/or
## modify it under the same terms as Perl itself
......@@ -74,9 +74,9 @@ wxWriteMakefile(
},
resources => {
'license' => 'http://dev.perl.org/licenses/',
'homepage' => 'http://wxperl.eu/',
'homepage' => 'http://www.wxperl.it/',
'bugtracker' => 'http://rt.cpan.org/NoAuth/Bugs.html?Dist=Wx',
'repository' => 'https://wxperl.svn.sourceforge.net/svnroot/wxperl/wxPerl',
'repository' => 'http://svn.code.sf.net/p/wxperl/code/wxPerl',
'MailingList' => 'http://lists.perl.org/list/wxperl-users.html',
},
no_index => { directory => [ qw(samples script) ],
......
......@@ -4,7 +4,7 @@
// Author: Mattia Barbon
// Modified by:
// Created: 29/10/2000
// RCS-ID: $Id: Window.xs 2979 2010-09-07 20:39:08Z mbarbon $
// RCS-ID: $Id: Window.xs 3481 2013-04-16 14:21:03Z mdootson $
// Copyright: (c) 2000-2002, 2004-2010 Mattia Barbon
// Licence: This program is free software; you can redistribute it and/or
// modify it under the same terms as Perl itself
......@@ -67,15 +67,14 @@ wxGetActiveWindow()
MODULE=Wx_Win PACKAGE=Wx::Window
#if WXPERL_W_VERSION_LT( 2, 9, 0 )
int
NewControlId( winid )
int winid
NewControlId()
CODE:
RETVAL = wxWindowBase::NewControlId();
OUTPUT: RETVAL
#if WXPERL_W_VERSION_LT( 2, 9, 0 )
int
NextControlId( winid )
int winid
......@@ -90,6 +89,22 @@ PrevControlId( winid )
RETVAL = wxWindowBase::PrevControlId( winid );
OUTPUT: RETVAL
#else
wxWindowID
NewControlId( idcount = 1 )
int idcount
CODE:
RETVAL = wxWindowBase::NewControlId( idcount );
OUTPUT: RETVAL
void
UnreserveControlId( id, idcount = 1)
wxWindowID id
int idcount
CODE:
wxWindowBase::UnreserveControlId( id, idcount );
#endif
void
......
......@@ -4,8 +4,8 @@
## Author: Mattia Barbon
## Modified by:
## Created: 01/10/2000
## RCS-ID: $Id: Wx.pm 3304 2012-05-31 02:18:07Z mdootson $
## Copyright: (c) 2000-2011 Mattia Barbon
## RCS-ID: $Id: Wx.pm 3476 2013-04-15 00:00:55Z mdootson $
## Copyright: (c) 2000-2013 Mattia Barbon
## Licence: This program is free software; you can redistribute it and/or
## modify it under the same terms as Perl itself
#############################################################################
......@@ -21,7 +21,7 @@ use vars qw(@ISA $VERSION $XS_VERSION $AUTOLOAD @EXPORT_OK %EXPORT_TAGS
$_msw = 1; $_gtk = 2; $_motif = 3; $_mac = 4; $_x11 = 5;
@ISA = qw(Exporter);
$VERSION = '0.9911';
$VERSION = '0.9922';
$XS_VERSION = $VERSION;
$VERSION = eval $VERSION;
......@@ -318,35 +318,56 @@ can download it from http://wxperl.sourceforge.net/
Please see F<docs/INSTALL.pod> in source package.
=head1 Windows XP look
=head1 Runtime Assertions
For standalone (packed using PAR, Perl2Exe, Perl2App, ...)
applications to get Windows XP look, a file named C<App.exe.manifest>
(assuming the program is named C<App.exe>) and containing the text below
must be placed in the same directory as the executable file.
For wxWidgets 2.9.3 and greater, Wx can switch runtime assertions on
and off. In wxWidgets 2.9.x and above, there are three levels of
debuging
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
processorArchitecture="x86"
version="5.1.0.0"
type="win32"
name="Controls"
/>
<description>Super wxPerl Application</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccf1df"
language="*"
processorArchitecture="x86"
/>
</dependentAssembly>
</dependency>
</assembly>
0 - No debug assertions
1 - Low cost debug assertions
2 - All debug assertions
If you used Alien::wxWidgets 0.61 or greater to build your wxWidgets,
then the libraries will be built using debug level 1. If you
specified --wxWidgets-debug for a debug build, then debug level 2
will have been used.
By default in Wx, debug assertions are switched off. However you may
switch assertions on by using
Wx::EnableDefaultAssertHandler();
you can switch assertions off again by using
Wx::DisableAssertHandler();
You may also set en enviroment variable to cause all invocations
of Wx to call Wx::EnableDefaultAssertHandler().
export WXPERL_OPTIONS=ENABLE_DEFAULT_ASSERT_HANDLER
This may be useful during tests.
The enviroment setting WXPERL_OPTIONS can contain multiple
options. Options are checked for using a simple regex match.
So
export WXPERL_OPTIONS="ENABLE_DEFAULT_ASSERT_HANDLER SOME_OTHER_SETTING"
would evaluate as ENABLE_DEFAULT_ASSERT_HANDLER being set.
If you want to handle assert failures yourself you can override
wxApp::OnAssertFailure in your Wx::App derived class.
sub OnAssertFailure {
my ( $self, $file, $line, $function, $condition, $msg ) = @_;
......
}
For wxWidgets 2.8.x, the assert methods have no effect. You may
however still usefully override wxApp::OnAssertFailure in a debug
build.
=head1 Running on Mac OSX
......@@ -359,15 +380,23 @@ gives it the focus.
In a syntax checking editor you may prevent Wx code from being
given focus as the front process by setting an environment variable
export WXPERL_OPTIONS=NO_MAC_SETFRONTPROCESS
export WXPERL_OPTIONS=NO_MAC_SETFRONTPROCESS
or
$ENV{WXPERL_OPTIONS} = 'NO_MAC_SETFRONTPROCESS';
$ENV{WXPERL_OPTIONS} = 'NO_MAC_SETFRONTPROCESS';
The enviroment setting WXPERL_OPTIONS can contain multiple
options. Options are checked for using a simple regex match.
So
export WXPERL_OPTIONS="NO_MAC_SETFRONTPROCESS SOME_OTHER_SETTING"
would evaluate as NO_MAC_SETFRONTPROCESS being set.
The code that makes the SetFrontProcess call is in Wx::Mini as
Wx::MacSetFrontProcess();
Wx::MacSetFrontProcess();
so it is also straightforward to override this method if you wish.
......@@ -375,8 +404,77 @@ Finally, any code can force the running application to become the
front process regardless of environment settings by calling the xs
method directly. (Note the underscore in the method name).
Wx::_MacSetFrontProcess();
Wx::_MacSetFrontProcess();
=head1 Locale Behaviour
Beginning with 2.9.0 wxWidgets sets the application locale to the current
system locale. Formally in wxWidgets 2.8.x, the locale by default was 'C'.
A problem arises because in addition to loading gettext translation
files, this affects other C calls like printf, sprintf,...
Perl makes calls to these functions when formatting numbers.
Number formatting always uses underlying C library functions.
The statements 'use locale', or 'no locale' make no difference here.
So, if your locale is 'de' then when Wx starts, the C library locale gets
set accordingly.
use Wx;
print 8.3
will output 8,3 to the terminal. Formatting uses ',' as the fractional
separator.
This, whilst possibly correct, isn't what most users will be expecting.
If you want to set the locale to the system default you can do so explicitly.
$app->{locale} = Wx::Locale->new( &Wx::wxLANGUAGE_DEFAULT );
You can then also reset just the locale for number formatting to 'C' if
that is what you require
use POSIX qw( setlocale LC_NUMERIC );
setlocale( LC_NUMERIC, C );
This code applies equally regardless of which wxWidgets version is being
used.
=head1 Windows XP look
For standalone (packed using PAR, Perl2Exe, Perl2App, ...)
applications to get Windows XP look, a file named C<App.exe.manifest>
(assuming the program is named C<App.exe>) and containing the text below
must either be placed in the same directory as the executable file or
compiled into the file itself. The module Win32::Exe can place a manifest
in an executable file
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" type="win32" name="Super.wxPerl.Application" />
<description>Super wxPerl Application</description>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccf1df"
language="*"
processorArchitecture="*" />
</dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
=head1 AUTHOR
......
......@@ -4,8 +4,8 @@
// Author: Mattia Barbon
// Modified by:
// Created: 01/10/2000
// RCS-ID: $Id: Wx.xs 3220 2012-03-18 03:02:46Z mdootson $
// Copyright: (c) 2000-2002, 2004-2010 Mattia Barbon
// RCS-ID: $Id: Wx.xs 3486 2013-04-16 17:39:27Z mdootson $
// Copyright: (c) 2000-2002, 2004-2013 Mattia Barbon
// Licence: This program is free software; you can redistribute it and/or
// modify it under the same terms as Perl itself
/////////////////////////////////////////////////////////////////////////////
......@@ -153,16 +153,21 @@ static int call_oninit( pTHX_ SV* This, SV* sub )
int wxEntryStart( int argc, char** argv )
{
#if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT
// This seems to be necessary since there are 'rogue'
// objects present at this point (perhaps global objects?)
// Setting a checkpoint will ignore them as far as the
// memory checking facility is concerned.
// Of course you may argue that memory allocated in globals should be
// checked, but this is a reasonable compromise.
#if WXPERL_W_VERSION_GE( 2, 9, 3 )
#if ( ( wxDEBUG_LEVEL > 1 ) && wxUSE_MEMORY_TRACING ) || wxUSE_DEBUG_CONTEXT
wxDebugContext::SetCheckpoint();
#endif
#else
#if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING ) || wxUSE_DEBUG_CONTEXT
wxDebugContext::SetCheckpoint();
#endif
#endif
if (!wxApp::Initialize())
return -1;
......@@ -249,6 +254,40 @@ BOOT:
#define wxPliEntryStart( argc, argv ) ( wxEntryStart( (argc), (argv) ) == 0 )
#endif
bool
EnableDefaultAssertHandler()
CODE:
#if WXPERL_W_VERSION_GE( 2, 9, 3 )
wxSetDefaultAssertHandler();
RETVAL = 1;
#else
RETVAL = 0;
#endif
OUTPUT: RETVAL
bool
DisableAssertHandler()
CODE:
#if WXPERL_W_VERSION_GE( 2, 9, 3 )
wxDisableAsserts();
RETVAL = 1;
#else
RETVAL = 0;
#endif
OUTPUT: RETVAL
##// bool