Everything only IMO of course.
Achim.
################## TO DO ##########################
UserGuild.pod
=============
section Item creation: Toplevel exception is a bit ambigious.
Before talks about 'visual' inclusion. (Nevertheless Toplevel
is a child of the parent widget even is visual not true).
options.pod
===========
$var=$w->configure(-option) is not documented. But there's a
bug? Tk::configure and Tk::Derived::configure don't do the
same, return value and optionname, repectively.
Menuoptions
===========
Check args to -command callback. Doc by N.W. as
first -textvariablethem -variable 11.25. IMO should
be -variable first. Check!
options.pod:
-takefocus: Tclish callback describtion. (uh! Try if this works
same in perl/tk)
CmdLine:
o09(0) ~/perl > perl -le 'use Tk; MainWindow->new();print @ARGV;MainLoop' -- -a b -bg green -- -c d
-ab-bggreen---cd
o09(0) ~/perl >
I think CmdLine should not stop argument processing as soon as
an unknown unknown switch is found.
Should be fixed and documented. Also mention priority that the cmd line
switches have compared to -option name class and resource priority.
Name option:
===========
Theo Petersen <theo@acsp.com>:
Aha, the Name option does this. I found it while searching docs for
anything that looked like it assigned a widget's name. Oddly enough, I
found it in Tk::Pane's docs (thanks Graham) but not in any generic
documentation. Have I missed it in some obvious place? It's not
documentend in the Widget or options pod, where standard options are
listed (perhaps because it wasn't inherited from Tcl).
..Theo
Dialog:
=======
Docs still very tclish. (Mhmm Dialog should be derived from
DialogBox and then documented this way).
Menu:
=====
Check B<tearOffCommand> option. Still tclish.
How is it implemented in perl/Tk.
Ditto desc in SPECIAL MENUS IN MENUBARS
Toplevel:
=========
So it should be moved to 14 The Window Manager or To Toplevel, MainWindow,
Menu (etc?). And should be written as:
$is_a_toplevel->Popup(?I<options>?)
Where options can be
B<-popover>, B<-popanchor>, B<-overanchor>
or any other I<$is_a_toplevel>. Mhmm the 3 options above are 'regular'
Toplevel option that are not mentioned in the Tks pod docs. Sigh.
JATI (just another todo item) :-(
added ptk special featues:
==========================
----
Achim Bohnet <ach@mpe.mpg.de> writes:
>tagConfigurere returns a -data option for Tk402.003 and Tk800.003
>tcls Tk8.0 does not have it and therefore it's not in the POD docs.
>
>Are there other places where pTk has more options than tcltk that
>are waiting to be documented?
Not many, but I would not be surprised.
HList and TList elements have -data too.
And of course we have property "command" (at least on X).
----
fileevent:
o remove tcl remnants like gets.
o use 'fileevent' thread of Nick and Andreas Borchert
to clarify the perl/Tk situation.
o Add an save EXAMPLE for cut and paste so people don't
have to worry how to implenent the described details.
Widget.pod
o misses Busy/Unbusy. Check how it's implemtented to
understand why it works as it does
=item I<$widget>-E<gt>B<Busy>
Turn the pointer into a 'watch' for I<$widget> and all
decendants. Beeps on key events for all these widgets.
(Eh? Beeps on mouse clicks for all widgets in the Toplevel Eh?)
Note: Does only with I<descendants> that have a undefined B<-cursor>
value. E.g., B<Entry> and B<Text> widgets don't work with B<Busy>
by default. A simple work around it to set B<-cursor>=E<gt>B<undef>.
=item I<$widget>-E<gt>B<Unbusy>
Undo last L<Busy|/Busy>.
Balloon.pod
===========
-statusbar: Label + -text has the disadvantage
Label may resize for messages that are too
long. Entry + -textvariable has not the problem
but it's editable. -> ROEntry ???
configspec.pod
==============
o IMO use 'fallback' instead of 'default' because the default a widget
uses is taken from the resource database and if there's nothing it
fallbacks to the value specified in ConfigSpecs.
o one should now be able to use $self instead of 'SELF' but I've not
verified it so this is more a reminder for my pod/TODO file :-)
STANDARD OPTIONS
================
o -width listed in Listbox but not in options.pod
There a need for a check what options are listed
in STD OPTIONS section and what's really in options.pod
(maybe same what in options but also listed in widget
specific WIDGET OPTIONS
getOpenFile:
============
o perlize filePattern when it's clear what it should be
(It's not clear if Tcl/Tk scheme will be adopted
discrepancies with docs (on Unix):
o One does not get a dialog when the file does not exists
and path is not absolute as stated in the docs
ptksh> p $mw->getOpenFile
./bla|
o Centers itself always over the parent widget. Even if parent is small
and e.g. in the upper left corner So a lot of the Dialog is outside
the of the screen. E.g. create a main window and
ptksh> $mw->geometry('+0+0')
ptksh> $mw->getOpenFile
o -filetypes option not supported (could be PASSIVE for now).
ptksh> p $mw->getOpenFile(-filetypes=>'*.pod')
Can't set -filetypes to `*.pod' for Tk::FileSelect=HASH(0x1402bbb08): Can't set -filetypes to `*.pod' for Tk::Frame=HASH(0x14061cc78): Bad option `-filetypes' at /home/ach/perl/5.004_64/site+standard/Tk/Derived.pm line 290.
o defaultextention docs not work:
ptksh> p $mw->getOpenFile(-defaultextension=>'pod')
./bla|
ptksh> p $mw->getOpenFile(-defaultextension=>'.pod')
./bla|
o if one currently gives a filepattern '.pod' the filter displays './*..pod'
so one should use 'pod'. On the other hand SPECIFING FILE PATTERS
suggest to use .pod.
Misc. comments:
o It would be useful if the 'File' entry would get the focus on startup
So one can start typing without selecting the entry (with click to focus
policy
o If one clicks on a filename. This is interpreted as the 'accept' and
Dialog disapprear. While confirm with tcl/tk it makes me nervous.
I prefer a double click
o Still much functionality not implemented
HList (and some BUGS)
===========
1) headerSize still returns tclish string. (As documented but this
should change)
2) headerSize err msg for non existant col contains garbage IMO
ptksh> $h->entryconfigure('one.two', -text=>'bar')
ptksh> $h->headerCreate(0, -text=>'heading')
ptksh> $h->configure(-header=>1)
ptksh> p $h->headerSize(0)
74 22|
ptksh> p $h->headerSize(1)
Column "KC@" does not exist at /home/ach/perl/5.004_64/site+standard/Tk/Submethods.pm line 19.
3) Not all Submethods are defined and documented. E.g.
ptksh> p $h->infoSelection
Goto undefined subroutine &Tk::HList::infoSelection at /home/ach/perl/5.004_64/site+standard/Tk/Widget.pm line 305.
ptksh> p $h->info('selection')
one|
one.two|
Wm.pod (BUG?)
======
Eh? What's that?
ptksh> print "okay\n\n" if defined($mw->wm('aspect') )
ptksh> print "okay\n\n" if ("" eq $mw->wm('aspect') )
okay
ptksh> p scalar( $mw->wm('aspect') )
|
Image stuff:
============
o ?? Extract standard constructor options like -file, -data into
Tk::Image/"STANDARD OPTIONS"
o same for common method, e.g., type()
o Use $image or $bitmap, $photo, $pixmap (like $widget and $text, ...)
o DefineBitmap shares names between mainwindows and croak on dubl. names
(See e.g., Tk::Numentry)
Photo.pod
=========
o check and perlize RHS lists of =>
o Photo configure resName, resClass are undefined so
optiondb is not used. Intention? If yes this should
be mentioned in POD.
options.pod
===========
o add note about undef name class prevents optiondb lookup
SYNTAX:
=======
o , and ? are not correct
(?I<switches>,? I<pattern, index, >?I<stopIndex>?)
should be IMO
(?I<switches>,? I<pattern, index>?, I<stopIndex>?)
But first ,? is correct second isn't. !!!!
o Inconsistency in submethod describtion some one methSub, I've
added some meth('sub'.. and methSub, other use only methSub
MARKUP:
======
still lot of $widget instead of I<$widget> Maybe still
some buggy window->$widget from autoconvertion
LINKS:
======
B<Tk_GetPixels> --> L<Tk_GetPixels|Tk::pTk::GetPixels/"DESCRIPTION">
B<Tk_GetBoolean> --> L<Tk_GetBoolean|Tk::pTk::??????????????>
Tk_GetBool.* not found in pTk pods
.... check for other, general case B<Tk_.*> ??
POD Conflict:
=============
pod/Font.pod Tk/Font.pm (I assume pod/Font sould be
pod/font.pm (my guess first char
case script got it wrong) but
having Font and font is same mess
as grid and Grid before.
STILL TCLISH:
=============
getOpenFile
messageBox
?...?
Canvas.pod
==========
o bind method: + to append a binding is not available in perl. Somewhere
(bind.pod?) should be a blurb how to do it. Or provide a AddBind method.
o Mhmm, ->bind without callback returns an error when no callback is defined
bind return undef, blech! (check if really the case)
o Tcl B<continue> -> return from callback or is there more magic. Check it!
o Find Nick's mail that one can't prevent from item callback that canvas
callback get invoked.
o No docs for update method in Widget or After. L<update|Tk::?????>
(check also other pod so insert the link)
o No CanvasLower CanvasRaise methods. ??? Is there a Raise Lower method
that always works on the widget?
Pixmap.pod
==========
o -id not documented
tk8 font:
=========
o I've added L<Tk::Font> to Widget.pod. May be wrong. Deps. on final
name and now tools prefers of name.pod or name.pm
o L<scaling|Tk::Widget/scaling> but /scaling will not work I guess
push A<show this|anchorname> support on top of TODO list :-)
o Add link to Grahams Tk::Font where X11 XFLD are mentioned. Currently
Font.pm and Font.pod collide
tkerror :
=========
o *** Add stuff Nick explained on ptk when 'ideal error msg' thread
finds an end *** Old questions of mine:
o Is it save to document that first arg of Tk::Error is a $mainwindow?
E.g., $label->Error('shit') works (a widget is-a tk). So should
it be Tk::MainWindow::Error to disable $label->Error?
o $w->BackTrace not mentioned/explained. Should it be mentioned?
Has someone a BackTrace describtion at hand? :-)
o what to do with 'command Tk::Error'? Use 'method Tk::Error'?
(Hmm Tk.pm provides default Tk::Error so $w->Tk::Error(...)
is effectively always the same as Tk::Error($w,...) So it would
IMO make more sense to write 'Tk::Error subroutine' or use 'Error
method'.
o IMO require Tk::ErrorDialog should only be used in
perl script and *not* in modules. I would consider it bad style when
a script 'overrides' global error handling (that may occur delayed
due to 'require only when need' of such a module.
o I've also have a need for a special Tk::Error function. How to get
*all* die, warn (even before MainLoop is reached) return a complete
stack trace. If this is not easy to achieve (as I think I found out :-( )
should tkerror include a suggestion to 'use Carp' in Tk:: modules
to help debugging?
Geometry manager:
=================
o Describe their behaviour if a toplevel widget gets resized so
available space is smaller than the requested x/y of the
widgets.
o use same style SYNOPSIS and KEYWORDS' section
o gridSize $master not managed by grid return (0,0) not
documented (intentional)?
o Form:
o check/verify/understand I<anchor_point> syntax:
'%$a' could only work with dyn. var. not lex.
\$a man->pod error?
o make undocumented/partial impl. 'spring' invisible
and a add TODO ???
o add a intro I<-side>, I<-side>B<spring>, -pad<side> so one
faster sees what's going on
o check TRUE FALSE return of formCheck
o try formGrid. the description seem wrong. Missing 'not'?
o check form(-top... -left...) != form(-left...-top...)
o ABREVIATIONS "-0", versus -0 wasn't there something about
that on p5p?
o grid mention raise lower to change stacking order. Works for non
toplevel too. Try it. (add links for raise lower)
o Add a ptkmgr.pod explaining common stuff (e.g., possible
$master's, command 'submethods' mgr, mgrForget, mgrInfo)
mention manager (wm for toplevels: are there similar wmForget
etc. methods, seams useful). *Propagate,
Raise Lower explanations. $master <=> widgettree correlation
composite:
o note that ..$opt=delete $args->{-opt}.. handles const.
only options is confusing. a) There would not be a
'readonly' option as for -class, visual, ...
Using CreateArgs does not work for composites, cries
for a support method (where=READONLY in configspec?)
o Add skeleton of a Frame based composite?
callbacks:
o IMO remove BUGs section closure are not 'the' solution
especially they are not (?) useable in ClassInit
o add some more 'normal' callback examples.
o 'pronouce' that the actual arguments list passed to a
callback may differ.
o Then concentate 'special' handling of a bind callback in
it's own section.
o Describe how emulate bind in your callback handling
o Ev() example/explanations better moved to Tk::bind ?
o BUGS entry?: Missing is a -callback switch that treats
callbacks as bind does automaticly
configspec:
o SETMETHOD, GETMETHOD undocumented (check Derived.pm
for more)
Configure:
o detail about composite widgets are distributed in the
docs. Bundle them into a separate section. First discribe
general interface then go into details about composite:
o Add section with details about Tk::Configure->new
DItem:
o pod markup of ITEM OPTIONS and STYLE OPTIONS is
wrong but fix would conflict with pending
Config:,Name:,Class change
o all STANARD OPTIONS still use res. name not option name
o remove C<>
Text:
o Intentional(?):
o Tag and Tags not documented (doc for Text::Tag?)
o TIE interface undocumented
o Go through EMB IMAGE and image method stuff
o textBind describtion still tclish. See also same item in Canvas.pod below
o dump method output already perlish??
o windowCreate -create requires pathname as
return value (as documented) but should also
accepts
Fix Text.pod when $w is also okay.
o windowNames return path of emb. widgets. So IMO there's a
windowObjects|Refs missing returning the ref to the widgets
(windowSlaves like in packSlaves, gridSlaves ??)
o Missing (intentional?) Tk::submethods
x|yview => [ qw(moveto scroll) ]
a specialcase for x|yviewPickplace ??????????
o sub Tag; and sub Tags; predeclared. Isn't this be done
by autosplit.ix and AutoLoader ?
o search and regexp, check if perl or tcl regexp are used
and document it.
TList:
======
o Click on 'one' in example at the end does not make it 'one'
the 'active item
__END__