James (jmlynesjr): Thank you for your positive answer. I have downloaded the Smart, Roebling et Al. document you mentioned. It refers to samples/examples, but does not contain them. Can you refer me to the examples? Referring to the dearth and scarcity of documentation on wxPerl, I can't seem to find good wxPerl documentation on wxListCTRL, and especially on tying a database table to a list control - while there is lots of Python documentation. It's interesting to note this emotional expression of frustration: http://osdir.com/ml/lang.perl.wxperl/2006-06/msg00010.html Quote: Trying to search for solutions in the WxPerl arena is like trying to find water in a desert, docs and good examples are slim to none. UnquoteMany thanks again - Helen
| [reply] [d/l] |
There is a new site: http://www.wxperl.it/, maintained by Mark Dootson that looks promising as a reference regarding WxPerl documentation.
| [reply] |
no offline docs (esp chm) download -- i live on the chm
| [reply] |
| [reply] |
Helen:
I have seen the references to the samples/examples, but I haven't found them either. The wxBook references a CDROM that didn't come with my book. The wxPerl Demo package is pretty good, but the wrapper code added to allow the mass of widgets to be included into a unified application can add to the confusion.
In addition, the questions come in multiple layers. Once you get past the "Hello World" and individual widget examples, there's finding information on the style and structure of complete applications which is maybe not just a wxPerl issue.
Just post specific questions here and to the mailing list and see what comes up. Please note when you cross post to multiple forums.:)
Update1: See the file "TheBridge" on the GitHub repository to see where I have gotten so far in documenting the next steps. This is a draft that I hope to keep adding to.
James
There's never enough time to do it right, but always enough time to do it over...
| [reply] |
some thoughts I wrote down
but these also have the problem of being C++ documentation which will require interpretation.
But its not a lot of interpretation :) is it?
Not a big deal, but this could be automated, much like the wxwidget docs are automated (now with more automation)
And there could be a wxPerlDocs distribution release, that uses File::ShareDir to package up a perl-ified version of the wxwidgets docs, that comes with a wxperldocs command that launches the docs in your favorite browser (mimeopen, openit )
update: http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk/docs/doxygen/scripts/swig_tools.py
http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk/docs/doxygen/
swigtools uses xml generated by doxygen to generate swig, swig can be used to generate perl bindings
without much work, perl-specific docs could be generated, missing member accessors could be exposed, missing methods could be exposed, missing classes could be exposed ...
$ ls -loanh *
-rw-rw-rw- 1 0 47M 2013-03-09 01:04 DoxyDocs.pm
-rw-rw-rw- 1 0 5.2K 2013-03-09 01:04 doxyformat.tex
-rw-rw-rw- 1 0 469 2013-03-09 01:04 doxylatex-structure.pl
-rw-rw-rw- 1 0 2.9K 2013-03-09 01:04 doxylatex.pl
-rw-rw-rw- 1 0 311 2013-03-09 01:04 doxylatex.tex
-rw-rw-rw- 1 0 2.0K 2013-03-09 01:04 doxyrules.make
-rw-rw-rw- 1 0 3.7K 2013-03-09 01:04 DoxyStructure.pm
-rw-rw-rw- 1 0 182 2013-03-09 01:04 Makefile
$ ack name.*bpp -C3 *pm
DoxyDocs.pm
1356519- },
1356520- all_members => [
1356521- {
1356522: name => 'bpp',
1356523- virtualness => 'non_virtual',
1356524- protection => 'public',
1356525- scope => 'wxVideoMode'
--
1356818- },
1356819- {
1356820- kind => 'variable',
1356821: name => 'bpp',
1356822- virtualness => 'non_virtual',
1356823- protection => 'public',
1356824- static => 'no',
http://sourceforge.net/p/wxperl/code/3445/tree/dist-tools/trunk/?? Its unclear how often these beginWxPerlOnly amendments are updated in wxWidgets docs
there is module_info but it doesn't work too well with Wx but these oneliners do :)
perl -MWx -le " $p=q{Wx::Frame}; for(sort keys %Wx::Frame::){ eval{$p-
+>$_((0)x120)}; $@=~s{.at.*$}{}; print qq{$p\n$@\n}; } "
Wx::Frame
Usage: Wx::Frame::Create(THIS, parent, id, title, pos = wxDefaultPosit
+ion, size = wxDefaultSize, style = wxDEFAULT_FRAME_STYLE, name = wxFr
+ameNameStr) at -e line 1.
Wx::Frame
Usage: Wx::Frame::CreateStatusBar(THIS, number = 1, style = 0, id = wx
+ID_ANY, name = wxEmptyString) at -e line 1.
Wx::Frame
Usage: Wx::Frame::CreateToolBar(THIS, style = wxNO_BORDER | wxTB_HORIZ
+ONTAL, id = wxID_ANY, name = wxToolBarNameStr) at -e line 1.
Wx::Frame
Usage: Wx::Frame::GetClientAreaOrigin(THIS) at -e line 1.
Wx::Frame
Usage: Wx::Frame::GetMenuBar(THIS) at -e line 1.
Wx::Frame
Usage: Wx::Frame::GetStatusBar(THIS) at -e line 1.
Wx::Frame
Usage: Wx::Frame::GetStatusBarPane(THIS) at -e line 1.
Wx::Frame
Usage: Wx::Frame::GetTitle(THIS) at -e line 1.
Wx::Frame
Usage: Wx::Frame::GetToolBar(THIS) at -e line 1.
Wx::Frame
Can't locate object method "ISA" via package "Wx::Frame" at -e line 1.
Wx::Frame
Usage: Wx::Frame::OnCreateStatusBar(THIS, number, style, id, name) at
+-e line 1.
Wx::Frame
Usage: Wx::Frame::ProcessCommand(THIS, id) at -e line 1.
Wx::Frame
Usage: Wx::Frame::SendSizeEvent(THIS) at -e line 1.
Wx::Frame
Usage: Wx::Frame::SetIcon(THIS, icon) at -e line 1.
Wx::Frame
Usage: Wx::Frame::SetIcons(THIS, icons) at -e line 1.
Wx::Frame
Usage: Wx::Frame::SetMenuBar(THIS, menubar) at -e line 1.
Wx::Frame
Usage: Wx::Frame::SetStatusBar(THIS, statusBar) at -e line 1.
Wx::Frame
Usage: Wx::Frame::SetStatusBarPane(THIS, n) at -e line 1.
Wx::Frame
Usage: Wx::Frame::SetStatusText(THIS, text, number = 0) at -e line 1.
Wx::Frame
variable is not an object: it must have type Wx::Frame at -e line 1.
Wx::Frame
Usage: Wx::Frame::SetTitle(THIS, title) at -e line 1.
Wx::Frame
Usage: Wx::Frame::SetToolBar(THIS, toolbar) at -e line 1.
Wx::Frame
Usage: Wx::Frame::newFull(CLASS, parent, id, title, pos = wxDefaultPos
+ition, size = wxDefaultSize, style = wxDEFAULT_FRAME_STYLE, name = wx
+FrameNameStr) at -e line 1.
Wx::Frame
Usage: Wx::Frame::newDefault(CLASS) at -e line 1.
Wx::Frame
Usage: Wx::Frame::newFull(CLASS, parent, id, title, pos = wxDefaultPos
+ition, size = wxDefaultSize, style = wxDEFAULT_FRAME_STYLE, name = wx
+FrameNameStr) at -e line 1.
| [reply] [d/l] [select] |
| [reply] |