You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
|
Feb
(7) |
Mar
(5) |
Apr
(4) |
May
(15) |
Jun
(10) |
Jul
(4) |
Aug
(12) |
Sep
(39) |
Oct
(22) |
Nov
(46) |
Dec
(65) |
2002 |
Jan
(19) |
Feb
(27) |
Mar
(50) |
Apr
(73) |
May
(85) |
Jun
(52) |
Jul
(49) |
Aug
(95) |
Sep
(152) |
Oct
(81) |
Nov
(42) |
Dec
(62) |
2003 |
Jan
(45) |
Feb
(47) |
Mar
(101) |
Apr
(110) |
May
(53) |
Jun
(72) |
Jul
(125) |
Aug
(77) |
Sep
(87) |
Oct
(69) |
Nov
(55) |
Dec
(71) |
2004 |
Jan
(127) |
Feb
(68) |
Mar
(93) |
Apr
(102) |
May
(64) |
Jun
(92) |
Jul
(40) |
Aug
(113) |
Sep
(44) |
Oct
(61) |
Nov
(44) |
Dec
(100) |
2005 |
Jan
(57) |
Feb
(51) |
Mar
(101) |
Apr
(73) |
May
(45) |
Jun
(97) |
Jul
(92) |
Aug
(94) |
Sep
(46) |
Oct
(83) |
Nov
(82) |
Dec
(68) |
2006 |
Jan
(92) |
Feb
(116) |
Mar
(84) |
Apr
(66) |
May
(40) |
Jun
(57) |
Jul
(89) |
Aug
(82) |
Sep
(58) |
Oct
(94) |
Nov
(104) |
Dec
(70) |
2007 |
Jan
(86) |
Feb
(108) |
Mar
(193) |
Apr
(84) |
May
(71) |
Jun
(54) |
Jul
(17) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Everett, T. <TEv...@AL...> - 2002-09-04 21:38:31
|
Just in case there are questions, I'm running wxPerl 0.11, wxWindows 2.2.9, from the PPM package on the website, under ActivePerl build 623. The following code (as small as I could get it - what is the completely minimal Wx "Hello World" program?) reproduces the problems - both can be demonstrated by swapping in a 0 for the 1 in the respective trinary conditionals. In the case of passing -1 to Wx::MenuItem::new, the menuitem simply never shows up in the menu. In the case of passing $mexit instead of $mexit->GetId to EVT_MENU, the event binding isn't implemented. ===== BEGIN CODE===== use strict; package MyFrame; use Wx; use Wx::Event qw(EVT_MENU); use vars qw(@ISA); @ISA=qw(Wx::Frame); sub new { my $class = shift; my $self = $class->SUPER::new(undef, -1, $_[0], $_[1], $_[2]); my $mbar = Wx::MenuBar->new(); $self->SetMenuBar($mbar); my $mfile = Wx::Menu->new(); $mbar->Append($mfile, "&File"); my $mexit = Wx::MenuItem->new($mfile, (1 ? 101 : -1), "E&xit\tAlt-X", "Quit this program"); $mfile->Append($mexit); EVT_MENU($self, (1 ? $mexit->GetId : $mexit), sub {$self->Close(1)}); return $self; } package MyApp; use Wx qw(wxDefaultPosition); use vars qw(@ISA); @ISA=qw(Wx::App); sub OnInit { my $self = shift; my $frame = MyFrame->new("Minimal wxPerl app", wxDefaultPosition, [450, 350]); $self->SetTopWindow($frame); $frame->Show(1); } package main; (my $app = MyApp->new())->MainLoop(); ======END CODE====== --Toby Everett -----Original Message----- From: Mattia Barbon [mailto:mb...@ds...] Sent: Wednesday, September 04, 2002 8:32 AM To: Everett, Toby Cc: wxp...@li... Subject: Re: [wxperl-users] Minor inconsistency using MenuItem and EVT_MENU > I was playing around with using -1 as the passed control ID in the > constructor as described in > http://wxperl.sourceforge.net/manual/manual4.html > <http://wxperl.sourceforge.net/manual/manual4.html> . I noticed that it > doesn't work:). In the interim, I've simply created an interator in my "It does nt work" as in "it works as documented but does not do what I want" or as in "it does not work as documented"? If it is the latter, it might be useful to show some (small) sample code that in your opinion is misbehaving. > package and used that for the constructor. I also noticed that I had to > explicitly call ->GetId() when using EVT_MENU. For this one too. Regards Mattia |
From: Scott L. <sla...@th...> - 2002-09-04 18:28:52
|
Something I've found annoying is that some classes are implemented as scalar references. Say I want to subclass Wx::MenuBar. Because it is a scalar reference instead of the normal hash reference, I can't do this: package MyMenuBar; use base qw(Wx::MenuBar); sub new { my $class = shift; my ($super, $self); $super = $class->SUPER::new(); $self = bless $super, $class; # the class is a scalar reference, so perl dies $self->{'mydata'} = "some string"; ... } I can implement an accessor, or put the Wx::MenuBar into a hash, but it's tedious and a scalar reference is unexpected. (Plus out of laziness I prefer to use things like Class::Accessor::Fast to autoload the accessors.) As said in "Object Oriented Perl" by Damian Conway, "You almost never see a Perl class based on a blessed scalar value. ... "...in those few cases where an object _does_ possess a single value, it's just as easy to go with a more familiar hash-based implementation, using only a single entry.... ...has the advantages of: Familiarity to the implementer. ... [probably not relevant to you] Familiarity to others. ... [relevant to me :)] Readability. ... [not really relevant here] Extensibility in subclasses. ... [WHAT I'M FINDING ANNOYING!!] " I think since wxWindows philosophy/API is very object-oriented, that perhaps (unless there is a technical reason forbidding it) those classes should be hash refs. |
From: Simon F. <sim...@bb...> - 2002-09-04 16:54:54
|
> For the new files, you can use a .zip (or .tar.gz, or > .tar.bz2) archive. > For the modified files I'd like a patch made with either > diff -r -u -2 > cvs diff -u -2 No problem What is the difference between wxPl... and wxPli... classes? I've named the docview classes wxPl... because it's easier to type! But if I've misunderstood the naming convention, I'm happy to change them before I submit the patch. Thanks Simon BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this. |
From: Mattia B. <mb...@ds...> - 2002-09-04 16:50:23
|
> I'm having a problem with the wxDocMDIParentFrame class. I'd like to be able > to override wxMDIParentFrame::OnCreateClient. To do that, you need to use > the default constructor for wxMDIParentFrame and then call Create() with the > params. > > The problem is that wxDocMDIParentFrame just uses the constructor with the > params. Is there a way to get bypass the wxDocMDIParentFrame constructor? <snip> > If there isn't a way to do this, do you think I should suggest to the > wxwindows dev team that wxDocMDIParentFrame use the two stage constuctor by > default? Well, if you nned it, yes; the question is: since no-one (in C++) ever needed this in probably 8 years, why do you need it (apart from the fact that it can be done in wxMDIParentFrame). Of course if you need it, I can commit the change myself. Regards Mattia |
From: Mattia B. <mb...@ds...> - 2002-09-04 16:37:25
|
> When I try to do a ExitMainLoop from a menuitem inside a TaskBarIcon the app > doesn't go out!!!! It is more general: it does not work when you call ->ExitMainLoop from a popup menu. Workaround: set a flag, and call ->ExitMainLoop from an EVT_IDLE handler. Why do you use ->ExitMainLoop, though? Doesn't closing the frame work, too? > Here a sample to test: > Please send your reply and OS about the test! (Including OS and Perl > version) > ---------------------------------------- <snip> > #---------------------------------------- Thanks for the test case; I really appreciate it! Regards Mattia |
From: Mattia B. <mb...@ds...> - 2002-09-04 16:37:20
|
> I was playing around with using -1 as the passed control ID in the > constructor as described in > http://wxperl.sourceforge.net/manual/manual4.html > <http://wxperl.sourceforge.net/manual/manual4.html> . I noticed that it > doesn't work:). In the interim, I've simply created an interator in my "It does nt work" as in "it works as documented but does not do what I want" or as in "it does not work as documented"? If it is the latter, it might be useful to show some (small) sample code that in your opinion is misbehaving. > package and used that for the constructor. I also noticed that I had to > explicitly call ->GetId() when using EVT_MENU. For this one too. Regards Mattia |
From: Mattia B. <mb...@ds...> - 2002-09-04 16:37:10
|
> On Tue, 3 Sep 2002, DH wrote: > > If you have the documentation handy, you'll see > > >wxTextCtrl > [snip] > > >wxControl > > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>wxWindow > [snip] > > since a wxTextCtrl is also a wxWindow, just pass the > > wxSIMPLE_BORDER flag as part of the "style" argument, > > I didn't really overlook it; I mentioned setting background > color. For some reason, setting a border seems counterintuitive > if I want to remove the border... :) > Oh well, not complaining just wondering if it was possible. I am almost sure that changing the textctrl border is not possible in wxGTK (due to limitations of the GTK text widget). Regards Mattia |
From: Simon F. <sim...@bb...> - 2002-09-04 14:48:46
|
Hi, I'm having a problem with the wxDocMDIParentFrame class. I'd like to be able to override wxMDIParentFrame::OnCreateClient. To do that, you need to use the default constructor for wxMDIParentFrame and then call Create() with the params. The problem is that wxDocMDIParentFrame just uses the constructor with the params. Is there a way to get bypass the wxDocMDIParentFrame constructor? I've tried variations on the following: ... public: wxPlDocMDIParentFrame(const char* package, wxDocManager* manager, wxFrame *parent, wxWindowID id, const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, const wxString& name = "frame") : wxDocMDIParentFrame(manager, parent, id, title, pos, size, style, name), m_callback( "Wx::DocMDIParentFrame" ) { Create(parent, id, title, pos, size, style, name); m_docManager = manager; m_callback.SetSelf( wxPli_make_object( this, package ), TRUE); } ... If there isn't a way to do this, do you think I should suggest to the wxwindows dev team that wxDocMDIParentFrame use the two stage constuctor by default? Thanks Simon BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this. |
From: Mattia B. <mb...@ds...> - 2002-09-04 09:14:37
|
> Hi Mattia, > > I have most of this working now. I'd like to get the wxFileHistory class > working and tidy up a bit before I send a patch in. Great! > In all likelyhood this probably won't impliment 100% of the framework > because I'm somewhat an XS\C++ novice, although I hope to be as close as > possible. There's already enough to write an enhanced windows notepad with > MDI, which I'll include for the /samples folder. If you can put a list of missing things somewhere, it will be implemented > I should be ready to send patch for review towards the end of the week. How > do you want that? For the new files, you can use a .zip (or .tar.gz, or .tar.bz2) archive. For the modified files I'd like a patch made with either diff -r -u -2 cvs diff -u -2 Thanks! Mattia |
From: Scott L. <sla...@th...> - 2002-09-04 07:38:29
|
On Tue, 3 Sep 2002, Everett, Toby wrote: [...] > My next goal was to use anonymous subroutines as much as possible. I think a problem with that is if your interface does the same thing from several different places -- toolbar, menubar, treectrl -- then you duplicate code. Plus I think nesting anonymous subroutines is ugly, but that's just me. :) I also am interested in these cool tricks from experience. Also something kind of related is I notice there are no CPAN modules for Wx. I think there could be some convenient classes for tedious things. I'm working on a module now (tentatively called Wx::CGI) which provides a CGI.pm interface to wxPerl. At least some people might be amused if nothing else. :) Example: # set up frame, etc., then my $q = Wx::CGI->new(-parent => $frame); $q->start_html(); $q->h1('Big text'); $q->br(); $q->popup_menu(-name => 'blah', ...); $q->textfield(-name ...); ... I have most of these kind of things implemented (in fact, my question on getting rid of the TextCtrl border was for this project), but not got the ability to "submit" yet (I still am considering how to do it). Hopefully this weekend I can show it. |
From: Scott L. <sla...@th...> - 2002-09-04 07:16:59
|
On Tue, 3 Sep 2002, DH wrote: > If you have the documentation handy, you'll see > >wxTextCtrl [snip] > >wxControl > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>wxWindow [snip] > since a wxTextCtrl is also a wxWindow, just pass the > wxSIMPLE_BORDER flag as part of the "style" argument, I didn't really overlook it; I mentioned setting background color. For some reason, setting a border seems counterintuitive if I want to remove the border... :) Oh well, not complaining just wondering if it was possible. |
From: Graciliano M. P. \(V. Sites\) <gm...@vi...> - 2002-09-04 05:34:03
|
When I try to do a ExitMainLoop from a menuitem inside a TaskBarIcon the app doesn't go out!!!! Graciliano M. P. Here a sample to test: Please send your reply and OS about the test! (Including OS and Perl version) ---------------------------------------- #!/usr/bin/perl use Wx; package MyApp; use strict; use vars qw(@ISA); @ISA=qw(Wx::App); sub OnInit { my( $this ) = @_; my( $frame ) = MyFrame->new( "Minimal wxPerl app", Wx::Point->new( 50, 50 ), Wx::Size->new( 450, 350 ) ); $this->SetTopWindow( $frame ); $frame->Show( 1 ); if( $Wx::_platform == $Wx::_msw ) { my $tmp = Wx::TaskBarIcon->new(); $tmp->SetIcon( Wx::GetWxPerlIcon( 1 ), "Click on me!" ); $this->{TASKBARICON} = $tmp; use Wx::Event qw(EVT_TASKBAR_LEFT_DOWN EVT_TASKBAR_RIGHT_DOWN EVT_MENU); EVT_TASKBAR_RIGHT_DOWN( $tmp, sub { my( $this, $event ) = @_; my $menu = Wx::Menu->new( "TaskBar Menu" ); $menu->Append( 100 , "ExitMainLoop" ); $menu->AppendSeparator(); $menu->Append( 101 , "Close Frame" ); $this->PopupMenu( $menu ); } ); EVT_MENU( $tmp, 100 , sub { $Wx::App::theapp->ExitMainLoop ;} ); EVT_MENU( $tmp, 101 , sub { $frame->Close ;} ); } else { print "** TaskBarIcon only on Win32!!!\n" ;} 1; } package MyFrame; use strict; use vars qw(@ISA); @ISA=qw(Wx::Frame); use Wx::Event qw(EVT_MENU); use Wx qw(wxBITMAP_TYPE_ICO wxMENU_TEAROFF); sub new { my( $class ) = shift; my( $this ) = $class->SUPER::new( undef, -1, $_[0], $_[1], $_[2] ); $this->SetIcon( Wx::GetWxPerlIcon() ); my( $mfile ) = Wx::Menu->new( undef, wxMENU_TEAROFF ); my( $ID_ABOUT, $ID_EXIT ) = ( 1, 2 ); $mfile->Append( $ID_EXIT, "E&xit\tAlt-X", "Quit this program" ); $mfile->Append( 103 , "ExitMainLoop" ); my( $mbar ) = Wx::MenuBar->new(); $mbar->Append( $mfile, "&File" ); $this->SetMenuBar( $mbar ); EVT_MENU( $this, $ID_EXIT, \&OnQuit ); EVT_MENU( $this, 103 , sub { $Wx::App::theapp->ExitMainLoop ;} ); $this->CreateStatusBar( 2 ); $this->SetStatusText( "Welcome to wxWindows!", 1 ); $this; } sub OnCreateStatusBar { my( $this ) = shift; my( $status ) = Wx::StatusBar->new( $this, -1 ); $status->SetFieldsCount( 3 ); $status; } sub OnQuit { my( $this, $event ) = @_; $this->Close( 1 ); } use Wx qw(wxOK wxICON_INFORMATION wxVERSION_STRING); package main; my( $app ) = MyApp->new(); $app->MainLoop(); #---------------------------------------- |
From: Scott L. <sla...@th...> - 2002-09-04 05:16:14
|
On Tue, 3 Sep 2002, Everett, Toby wrote: [center, centre...] > wxLIST_FORMAT_CENTRE > > It's interesting that most of the exports are available only in the > British spelling, a few only in the American spelling, and one in > both. My gut instinct would be to recommend that everything be > exported in both spellings. I think so too, as long as it's consistent. A few times it's tripped me, but it's always easy to spot as it will say something about barewords not allowed while use strict is in effect. (Ironically, I live near Centre Street, so I should be used to it by now. :) |
From: DH <cra...@ya...> - 2002-09-04 05:10:04
|
> Basically I just want to put some copy-able text onto the > window. Maybe I have overlooked something. Well, yes you did *grin* If you have the documentation handy, you'll see >wxTextCtrl >A text control allows text to be displayed and edited. It may be single line or multi-line. > >Derived from > >streambuf >wxControl >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>wxWindow >wxEvtHandler >wxObject since a wxTextCtrl is also a wxWindow, just pass the wxSIMPLE_BORDER flag as part of the "style" argument, and see if that does anything for you. A lot of the other wxWindow flags should work. my $TEXT = new Wx::TextCtrl( $Panel, -1, "foo", [-1,-1],[-1,-1], wxSIMPLE_BORDER ); The only problem with this, is that the textbox will outlined with a black border of 1 px. I don't think there is anything you can do to change it. I tried $TEXT->Clear, but that function is overridden in Wx::TextCtrl, and $TEXT->SUPER::Clear(); doesn't work. SUPER::Clear probably doesn't work because there is some binding/inheritance issues between perl and XS. I figure Mattia has to do a whole lotta work to get that to work (if it's possible at all, which i dunno) __________________________________________________ Do You Yahoo!? Yahoo! Finance - Get real-time stock quotes http://finance.yahoo.com |
From: Everett, T. <TEv...@AL...> - 2002-09-04 02:47:26
|
So I'm playing with different design patterns, and I thought I'd toss out my current one to see if anyone has input. The following code block simply creates a new button, assigns it to a sizer, and hooks the EVT_BUTTON event for it: $wx->{btnExit} = $_ = Wx::Button->new($wx->{pnl}, -1, "Exit"); $wx->{szrButtons}->Add($_, 0, wxALIGN_CENTRE|wxALL, 10); EVT_BUTTON($self, $_, sub { Wx::MessageBox('Exit Button Clicked: Exiting', 'Exiting', wxOK, $self); $self->Close(1); }); My first goal was that widgets should have one and only one name. Most of the existing patterns I've seen either use a variable lexically scoped to the new method or an entry in $self to store the button object and a variable lexically scoped to the file to store the button ID. The disadvantages I see to that are the need to keep the list of IDs updated and the difficulty in accessing the button object from other blocks of code. I initially stuck all the wxPerl objects into the $self hash, but I decided I wanted them to be in their own namespace. In the new method for the package, I use the following initializer: my $wx = $self->{wx} = {}; In all other methods, I simply use: my $wx = $self->{wx}; If there is only one or two accesses to $self->{wx} in the method, I can choose to dispense with the temporary assignment to the lexically scoped variable and simply refer to things as $self->{wx}->{blah}. I thought about using local *wx = $self->{wx} so I could do things like $wx{blah}, but the danger of adding %wx to use vars and then forgetting to alias it at every opportunity dissuaded me. I settled upon some sort of vague Hungarian notation for the widget names. I generally don't like Hungarian notation, but it seems to make sense for GUI programming. I kept the first part to three characters out of an attempt to minimize space utilization. I spend enough scrolling around as it is, and in the absence of an intelligent outlining editor, I try to balance readability with maximizing code density. My next goal was to use anonymous subroutines as much as possible. My general Perl/Tk technique has been to use small anonymous subroutines for event handlers, and if more complicated event handling is required, then the anonymous subroutine makes a call to another method. The other method is generally not an event handler per se - it's designed as a more generic subroutine of sorts. Note that if you are using anonymous subroutines as event handlers, you do not need to access @_ unless you need explicit access to $event. This is because Perl wraps up $self as part of a closure, and so you automatically get access to the right $self depending upon the new() in which you were bound. Finally, I use the $wx->{widgetName} = $_ = Wx... trick so that copying and pasting code is simplified. Since the creation, the sizing, and the event handling are contiguous in the code, I wanted to dispense with the need to type $wx->{widgetName} over and over (or to catch all copies of it), and this seemed a good use of $_. Thoughts? I know 95% of the stuff is purely preference, but I'm interested in feedback or opinions as the more ways I see of doing the same thing, the more likely I am to hit upon something I like. On one hand, it seems awfully premature to be worrying about this right from the beginning, but seeing as I have many years of Tk programming behind me and every program uses a completely different set of patterns, I thought I'd try to standardize a little this time. You know that weird sensation you get from reading someone else's code? Like someone who puts the open brace on the next line while programming in Perl. I'm getting tired of feeling that when reading my own code! --Toby Everett |
From: Everett, T. <TEv...@AL...> - 2002-09-04 00:35:49
|
While continuing my exploration, I managed to figure out how to use sizers in conjunction with a panel. Along the way, I discovered that the following constants are importable: wxALIGN_CENTRE wxALIGN_CENTER_VERTICAL wxALIGN_CENTER_HORIZONTAL wxCENTRE wxCENTER wxCentreX wxCentreY wxSPLASH_CENTRE_ON_PARENT wxSPLASH_CENTRE_ON_SCREEN wxSPLASH_NO_CENTRE wxLIST_FORMAT_CENTRE It's interesting that most of the exports are available only in the British spelling, a few only in the American spelling, and one in both. My gut instinct would be to recommend that everything be exported in both spellings. --Toby Everett |
From: Everett, T. <TEv...@AL...> - 2002-09-03 23:10:11
|
I was playing around with using -1 as the passed control ID in the constructor as described in http://wxperl.sourceforge.net/manual/manual4.html <http://wxperl.sourceforge.net/manual/manual4.html> . I noticed that it doesn't work:). In the interim, I've simply created an interator in my package and used that for the constructor. I also noticed that I had to explicitly call ->GetId() when using EVT_MENU. I've just started playing with wxPerl - someone mentioned it on the PDK mailing list, and my curiosity was piqued. I've been a long-time PerlTk user, but Tk suffers from a rather non-standard look and feel under Win32. As I've started playing with wxPerl, my initial goal has been to develop a set of viable patterns because my experience with Perl/Tk has taught me that the hardest thing to do is to manage all of the widgets in program in a manner that minimizes maintenance headaches. The ID situation struck me as a bit of a kludge, and so I was happy to discover there are ways around it. --Toby Everett |
From: Scott L. <sla...@th...> - 2002-09-03 20:39:59
|
I read on this list a couple days ago (from Mattia) how you should use TextCtrl with read-only style rather than StaticText in order to let the user copy/paste. I want to make the TextCtrl "blend in" to the window behind like StaticText does, though. I set the background color okay, but still there is a border (box) around the text. Is there a way to remove the border? Basically I just want to put some copy-able text onto the window. Maybe I have overlooked something. |
From: Simon F. <sim...@bb...> - 2002-09-03 19:36:01
|
Hi Mattia, I have most of this working now. I'd like to get the wxFileHistory class working and tidy up a bit before I send a patch in. In all likelyhood this probably won't impliment 100% of the framework because I'm somewhat an XS\C++ novice, although I hope to be as close as possible. There's already enough to write an enhanced windows notepad with MDI, which I'll include for the /samples folder. I should be ready to send patch for review towards the end of the week. How do you want that? Simon BBCi at http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system, do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this. |
From: Mattia B. <mb...@ds...> - 2002-09-02 20:50:31
|
> Hi, > > Apologies if this has been covered before.... but I couldn'tfind after > trawling through previous posts. > > I am trying to write a calender/appointment system with wxPerl. I notice > that wxWindows has a wxCalendarCtrl but the perlversion doesn't. > Has anyone managed to get the wxCalendarCtrl to work with wxPerl? It is not wrapped yet. I have not decided yet when I will wrap it. Regards Mattia |
From: Mattia B. <mb...@ds...> - 2002-09-02 16:44:42
|
No platform, wxWindows, wxPerl version Assuming Win32, wxWindows 2.2.x, some wxPerl (does not matter) > Hi. > I've tried using > Set(Fore|Back)groundColour > with Wx::StaticLine, > but it's not working. > > Wx::Static line is a Wx::Window, so it should happen. Yes. > Refresh should help, but it doesn't. > Neither does Clear. > > Calling Show('show') does paint it the default light gray, but only if you pass Show > as string. Show(1) doesn't quite work. (this is also very bizzare ). Well, the bizarre thing is that you need to call Show... why do you call it? As for the string thing, I don't know why it happens. > The color gets set, cause if I set/get it, I can see that the values are correct, > the static line just never gets painted, like it should. > > I believe this to be a bug ( it can't be because it's a "static" line, > or can it ;)? Yes :) it appears Windows treats static controls differently from other windows when it comes to color handling. > My example is below, width peaks at 80 chars ;) I *really* appreciate the test case, but, in general, I will appreciate it much more if it is a *minimal* test case; for example, adding this ---- my $sta = Wx::StaticLine( ... ); $sta->SetBackgroundColour( Wx::Colour->new( 'red' ) ); ---- to the minimal sample, is sufficient to demonstarte the bug. The reason is that, in general, it is much easier to track down bugs with a minimal testcase than with a complex one. Regards Mattia |
From: Andy W. \(Linktra\) <and...@li...> - 2002-09-02 11:35:12
|
Hi, Apologies if this has been covered before.... but I couldn'tfind after trawling through previous posts. I am trying to write a calender/appointment system with wxPerl. I notice that wxWindows has a wxCalendarCtrl but the perlversion doesn't. Has anyone managed to get the wxCalendarCtrl to work with wxPerl? Thanks Andy Williams |
From: Mark W. <ma...@ne...> - 2002-09-02 07:21:34
|
Hi I have successfully compiled several scripts as an executable using the PDK. As a start, try updating the PDK to build 403 as it has numerous fixes. Regards Mark > From: "David Kaufman" <da...@po...> > To: <wxp...@li...> > Date: Sun, 1 Sep 2002 11:19:40 -0400 > Subject: [wxperl-users] how to compile wxPerl script to an > .exe with PerlApp? > > Has anyone successfully converted a simple "hello world" > wxPerl script into an .exe using the Activestate PDK's > PerlApp utility? > > i've been trying all day with no joy. the .exe failed > silently until i tried compiling it without the -gui option. > after droppping the -gui, i see this error on stderr (at run > time, not compile time): > > Can't load 'auto/Wx/Wx.dll' for module Wx: load_file:One of > the library files ne eded to run this application cannot be > found at /PerlApp/DynaLoader.pm line 212. > > but the "verbose" perlapp output (below) clearly shows that > perlapp found and included the Wx.dll: > > PerlApp 4.0.0 build 401 > Copyright (C) ActiveState Corp 2001-2002. All rights > reserved. Commercial license for David Kaufman <da...@gi...> > > +++ C:/Perl/lib/AutoLoader.pm > +++ C:/Perl/lib/Carp.pm > +++ C:/Perl/lib/Carp/Heavy.pm > +++ C:/Perl/lib/Config.pm > +++ DynaLoader.pm (internal) > +++ C:/Perl/lib/Errno.pm > +++ C:/Perl/lib/Exporter.pm > +++ C:/Perl/lib/Exporter/Heavy.pm > +++ C:/Perl/lib/File/Glob.pm > +++ C:/Perl/lib/Text/ParseWords.pm > +++ C:/Perl/lib/Tie/Handle.pm > +++ C:/Perl/site/lib/Wx.pm > +++ C:/Perl/site/lib/Wx/App.pm > +++ C:/Perl/site/lib/Wx/Bitmap.pm > +++ C:/Perl/site/lib/Wx/Brush.pm > +++ C:/Perl/site/lib/Wx/Caret.pm > +++ C:/Perl/site/lib/Wx/Colour.pm C:/Perl/site/lib/Wx/ComboBox.pm > +++ C:/Perl/site/lib/Wx/ControlWithItems.pm > +++ C:/Perl/site/lib/Wx/Cursor.pm > +++ C:/Perl/site/lib/Wx/DC.pm > +++ C:/Perl/site/lib/Wx/DND.pm > +++ C:/Perl/site/lib/Wx/DropSource.pm > +++ C:/Perl/site/lib/Wx/Event.pm > +++ C:/Perl/site/lib/Wx/FS.pm > +++ C:/Perl/site/lib/Wx/Grid.pm > +++ C:/Perl/site/lib/Wx/Help.pm > +++ C:/Perl/site/lib/Wx/Html.pm > +++ C:/Perl/site/lib/Wx/Icon.pm > +++ C:/Perl/site/lib/Wx/Image.pm > +++ C:/Perl/site/lib/Wx/ImageList.pm > +++ C:/Perl/site/lib/Wx/ListCtrl.pm > +++ C:/Perl/site/lib/Wx/Locale.pm > +++ C:/Perl/site/lib/Wx/MDI.pm > +++ C:/Perl/site/lib/Wx/Menu.pm > +++ C:/Perl/site/lib/Wx/Pen.pm > +++ C:/Perl/site/lib/Wx/Print.pm > +++ C:/Perl/site/lib/Wx/RadioBox.pm > +++ C:/Perl/site/lib/Wx/Rect.pm > +++ C:/Perl/site/lib/Wx/Region.pm > +++ C:/Perl/site/lib/Wx/STC.pm > +++ C:/Perl/site/lib/Wx/ScreenDC.pm > +++ C:/Perl/site/lib/Wx/Sizer.pm > +++ C:/Perl/site/lib/Wx/SplashScreen.pm > +++ C:/Perl/site/lib/Wx/StaticBitmap.pm > +++ C:/Perl/site/lib/Wx/Timer.pm > +++ C:/Perl/site/lib/Wx/ToolBar.pm > +++ C:/Perl/site/lib/Wx/TreeCtrl.pm > +++ C:/Perl/site/lib/Wx/Window.pm > +++ C:/Perl/site/lib/Wx/_Constants.pm > +++ C:/Perl/site/lib/Wx/_Exp.pm > +++ C:/Perl/site/lib/Wx/_Functions.pm > +++ C:/Perl/site/lib/Wx/_Inheritance.pm > +++ C:/Perl/site/lib/Wx/_Ovl.pm > +++ XSLoader.pm (internal) > +++ C:/Perl/lib/auto/DynaLoader/autosplit.ix > +++ C:/Perl/lib/auto/DynaLoader/dl_expandspec.al > +++ C:/Perl/lib/auto/DynaLoader/dl_find_symbol_anywhere.al > +++ C:/Perl/lib/auto/DynaLoader/dl_findfile.al > +++ C:/Perl/lib/auto/File/Glob/Glob.dll > +++ C:/Perl/lib/auto/File/Glob/autosplit.ix > +++ C:/Perl/site/lib/auto/Wx/Wx.dll > +++ C:/Perl/lib/base.pm > +++ C:/Perl/lib/fields.pm > +++ C:/Perl/lib/overload.pm > +++ C:/Perl/lib/strict.pm > +++ C:/Perl/lib/vars.pm > +++ C:/Perl/lib/warnings.pm > +++ C:/Perl/lib/warnings/register.pm > > Created 'test.exe' > > > > any help would be greatly appreaciated, > > -dave |
From: David K. <da...@po...> - 2002-09-02 06:12:41
|
Thanks for the reply, Nick! You were quite right. it turned out that perlapp "knew" my app required Wx.dll so it included that properly, but perlapp did *not* notice that Wx.dll has dependencies of it's own, on wx22_9.dll that was installed right next to Wx.dll. my .exe file runs fine as long as the wx22_9.dll is in right there the same directory along side of it, or even if i throw it in the windows directory or, i suspect, anywhere else in the system's path. i haven't figured out just how to have perlapp "bind" it properly into the exe, and expand it at run time, but that's okay; i can just distribute that dll with with .exe anyway, keep the exe size smaller, and save perlapp the trouble of expanding it and cleaning it up for each run... thanks again! -dave Nick Johnston <sk...@er...> wrote: > > I had the exact same problem. > > To fix it, just copy the "auto" directory containing the > wxWindows/wxPerl .DLL files into the directory with your script in it. > It worked fine for me then. > > If the --gui causes a "Bad command or filename" or the equivalent > NT/Win2k error to appear, I have a fix for that too. In Perl's config > files, one of the vars contains the location to Perl's binary. I think > it might be PERL5BIN but I honestly can't remember. Anyway the problem > is caused when this path includes UNIX-style forward slashes rather > than the DOS/Windows style slashes. AFAIK this is because the PerlApp > program runs another program which modifies the executable to be a > GUI program. And command.com doesn't take kindly to UNIX-style > slashes. > > Hope this works. It took me ages to figure this out, I don't know why > PDK cannot include the required files automatically. > > Regards, > > > Nick Johnston > > David Kaufman wrote: > >> Has anyone successfully converted a simple "hello world" wxPerl >> script into an .exe using the Activestate PDK's PerlApp utility? >> >> i've been trying all day with no joy. the .exe failed silently >> until i tried compiling it without the -gui option. after droppping >> the -gui, i see this error on stderr (at run time, not compile time): >> >> Can't load 'auto/Wx/Wx.dll' for module Wx: load_file:One of the >> library files ne >> eded to run this application cannot be found at >> /PerlApp/DynaLoader.pm line 212. >> >> but the "verbose" perlapp output (below) clearly shows that perlapp >> found and included the Wx.dll: >> >> PerlApp 4.0.0 build 401 >> Copyright (C) ActiveState Corp 2001-2002. All rights reserved. >> Commercial license for David Kaufman <da...@gi...> >> >> +++ C:/Perl/lib/AutoLoader.pm >> +++ C:/Perl/lib/Carp.pm >> +++ C:/Perl/lib/Carp/Heavy.pm >> +++ C:/Perl/lib/Config.pm >> +++ DynaLoader.pm (internal) >> +++ C:/Perl/lib/Errno.pm >> +++ C:/Perl/lib/Exporter.pm >> +++ C:/Perl/lib/Exporter/Heavy.pm >> +++ C:/Perl/lib/File/Glob.pm >> +++ C:/Perl/lib/Text/ParseWords.pm >> +++ C:/Perl/lib/Tie/Handle.pm >> +++ C:/Perl/site/lib/Wx.pm >> +++ C:/Perl/site/lib/Wx/App.pm >> +++ C:/Perl/site/lib/Wx/Bitmap.pm >> +++ C:/Perl/site/lib/Wx/Brush.pm >> +++ C:/Perl/site/lib/Wx/Caret.pm >> +++ C:/Perl/site/lib/Wx/Colour.pm >> +++ C:/Perl/site/lib/Wx/ComboBox.pm >> +++ C:/Perl/site/lib/Wx/ControlWithItems.pm >> +++ C:/Perl/site/lib/Wx/Cursor.pm >> +++ C:/Perl/site/lib/Wx/DC.pm >> +++ C:/Perl/site/lib/Wx/DND.pm >> +++ C:/Perl/site/lib/Wx/DropSource.pm >> +++ C:/Perl/site/lib/Wx/Event.pm >> +++ C:/Perl/site/lib/Wx/FS.pm >> +++ C:/Perl/site/lib/Wx/Grid.pm >> +++ C:/Perl/site/lib/Wx/Help.pm >> +++ C:/Perl/site/lib/Wx/Html.pm >> +++ C:/Perl/site/lib/Wx/Icon.pm >> +++ C:/Perl/site/lib/Wx/Image.pm >> +++ C:/Perl/site/lib/Wx/ImageList.pm >> +++ C:/Perl/site/lib/Wx/ListCtrl.pm >> +++ C:/Perl/site/lib/Wx/Locale.pm >> +++ C:/Perl/site/lib/Wx/MDI.pm >> +++ C:/Perl/site/lib/Wx/Menu.pm >> +++ C:/Perl/site/lib/Wx/Pen.pm >> +++ C:/Perl/site/lib/Wx/Print.pm >> +++ C:/Perl/site/lib/Wx/RadioBox.pm >> +++ C:/Perl/site/lib/Wx/Rect.pm >> +++ C:/Perl/site/lib/Wx/Region.pm >> +++ C:/Perl/site/lib/Wx/STC.pm >> +++ C:/Perl/site/lib/Wx/ScreenDC.pm >> +++ C:/Perl/site/lib/Wx/Sizer.pm >> +++ C:/Perl/site/lib/Wx/SplashScreen.pm >> +++ C:/Perl/site/lib/Wx/StaticBitmap.pm >> +++ C:/Perl/site/lib/Wx/Timer.pm >> +++ C:/Perl/site/lib/Wx/ToolBar.pm >> +++ C:/Perl/site/lib/Wx/TreeCtrl.pm >> +++ C:/Perl/site/lib/Wx/Window.pm >> +++ C:/Perl/site/lib/Wx/_Constants.pm >> +++ C:/Perl/site/lib/Wx/_Exp.pm >> +++ C:/Perl/site/lib/Wx/_Functions.pm >> +++ C:/Perl/site/lib/Wx/_Inheritance.pm >> +++ C:/Perl/site/lib/Wx/_Ovl.pm >> +++ XSLoader.pm (internal) >> +++ C:/Perl/lib/auto/DynaLoader/autosplit.ix >> +++ C:/Perl/lib/auto/DynaLoader/dl_expandspec.al >> +++ C:/Perl/lib/auto/DynaLoader/dl_find_symbol_anywhere.al >> +++ C:/Perl/lib/auto/DynaLoader/dl_findfile.al >> +++ C:/Perl/lib/auto/File/Glob/Glob.dll >> +++ C:/Perl/lib/auto/File/Glob/autosplit.ix >> +++ C:/Perl/site/lib/auto/Wx/Wx.dll >> +++ C:/Perl/lib/base.pm >> +++ C:/Perl/lib/fields.pm >> +++ C:/Perl/lib/overload.pm >> +++ C:/Perl/lib/strict.pm >> +++ C:/Perl/lib/vars.pm >> +++ C:/Perl/lib/warnings.pm >> +++ C:/Perl/lib/warnings/register.pm >> >> Created 'test.exe' >> >> >> >> any help would be greatly appreaciated, >> >> -dave |
From: Graciliano M. P. \(V. Sites\) <gm...@vi...> - 2002-09-02 05:44:21
|
I finished wxIE for wxPerl. I haven't ported the evetns yet, but all the functions are ok, and it's very useful now. Here are the wxActiveX and wxIE binarys (only Win32): Perl 5.6.1: http://wxperl.virtuasites.com.br/wxActiveX-561-ppm.zip (30Kb) Perl 5.8.0: http://wxperl.virtuasites.com.br/wxActiveX-580-ppm.zip (30Kb) Source: http://wxperl.virtuasites.com.br/wxActiveX-src-0.1.zip (42Kb) Demo package for demo.pl of wxPerl. http://wxperl.virtuasites.com.br/wxIE.pm For perl-5.8.0 you can download the ppm too, just read the README.txt for instructions. *** NOTE *** This binarys are for wxPerl-0.11, compiled with MSVC++ and wxWindows 2.3.3 If you haven't this version of wxPerl you can get it and install manually from: (They alredy have wxActiveX inside) Perl 5.6.1: http://wxperl.virtuasites.com.br/wxPerl-5.8.0-Win32-wx233-blib.zip (1.7M) Perl 5.8.0: http://wxperl.virtuasites.com.br/wxPerl-5.6.1-Win32-wx233-blib.zip (1.6M) ************ To install manually the blib: * uncompress wxPerl-5.x.x-Win32-wx233-blib.zip * go to ./blib/lib and copy every thing to path/to/perl/site/lib * go to ./blib/arch and copy every thing to path/to/perl/site/lib ************ Now I will try to port Flash... :-P Have Fun! Please, send your feedback! Graciliano M. P. |