"Fossies" - the Fresh Open Source Software Archive

Member "Tk-804.036/pod/TODO" (15 Nov 2013, 17021 Bytes) of package /linux/misc/Tk-804.036.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 Everything only IMO of course.
    2 
    3 Achim Bohnet <ach@mpe.mpg.de>
    4 
    5 ################## TO DO  ##########################
    6 
    7 -----------------------------------------------------------------
    8 
    9 
   10 ---- removed by accident ------------
   11 >
   12 >	I still have my Tk402.004 html documents here and they include
   13 >the update.htm file, but I do not see an update document in the latest
   14 >Tk800.008 distribution.  Are there some documents missing from the
   15 >latest distribution?
   16 
   17 Oh dear what has happened here?
   18 The update and idletask fragments were merged into Widget.pod (I thought),
   19 and then the update.pod disposed of. But looks like something has lost
   20 the stuff from Widget.pod :-(
   21 --------------------------------------
   22 
   23 contrib.pod (idea/skeleton)
   24 
   25 =head1 NAME
   26 
   27 Tk::contrib - how to find/contribute perl/Tk code
   28 
   29 =for category  Introduction
   30 
   31 =head1 DESCRIPTION
   32 
   33 Here are some guidelines you can use to find a peace
   34 of code is already available and how to contribute your
   35 code.
   36 
   37 I<If you have perl/Tk code that can be reused or used as an
   38 example or starting point please check if one could find it
   39 using the method in the next section.  If it's not findable
   40 think about to contribute your work (described later).>
   41 
   42 =head2 What's already avaiable?
   43 
   44 If you are B<seriously> planning to write the beast you are
   45 looking for when it does not exists you can take the short
   46 route and ask the ptk list <ptk@lists.stanford.edu>.  Make
   47 sure to mention Tk::contrib to prevent RTFM replies.
   48 Otherwise try the checklist below first:
   49 
   50 	o http://www.perl.com/ptk/ or Grahams perl/Tk home page ??
   51 	o tk-modules-list
   52 	o tcl/tk faq 4&5
   53 	o http://www.perl.com/CPAN/modules/by-modules/Tk
   54 		                        /scripts/??????
   55 	o Archive http://www.xray.mpe.mpg.de/mailing-lists/ptk/
   56 
   57 =head2 How to contribute code?
   58 
   59 Have spend a lot time of on a specific topic and it was
   60 not at the end and RFTM?  Yes? Please least take
   61 the time to post your solution to the perl/Tk mailing
   62 list ptk@lists.stanford.edu.  So other can find it later
   63 in the list archive http://www.xray.mpe.mpg.de/mailing-lists/ptk/
   64 If it's a common problem this may be even enough to enhance/extend
   65 the perl/Tk FAQ
   66 
   67 But wait there is more you can do without much afford:
   68 
   69 	?? scripts. What's the status of CPAN/scripts ??
   70 
   71 =over 4
   72 
   73 =item Perl/Tk Module List
   74 
   75 is a central reference of modules B<and> scripts
   76 
   77     http://www.connect.net/gbarr/PerlTk/tk-modlist.html
   78 
   79 Send a mail to <ptk@lists.standford.edu> and
   80 Graham Barr <gbarr@pobox.com> that describes your contribution.
   81 
   82 It's enough if would send your contribution on an e-mail request.
   83 But there more ...
   84 
   85 =item CPAN account
   86 
   87 Simply send mail to ptk
   88 	o handling of modules (widget) and scripts (applications)
   89 	o send code to ptk for comments (widget name!, etc.)
   90 	o Tk-modules list: register early (even if alpha)
   91 	o CPAN account. Refer to docs how to do it
   92 	o Tk-Contrib ask for addition on ptk (also happy users of
   93 	  an widget for).  Use convenience method
   94 	  before stuff gets lost.
   95 	o Still to complicated? :-(  Then post at least your code
   96 	  to ptk@lists.stanford.edu.  So other could find it later
   97 	  in the list archive http://www.xray.mpe.mpg.de/mailing-lists/ptk/
   98 
   99 =cut
  100 
  101 -----------------------------------------------------------------
  102 
  103 UserGuild.pod
  104 =============
  105 
  106 section Item creation:  Toplevel exception is a bit ambigious.
  107 Before talks about 'visual' inclusion.  (Nevertheless Toplevel
  108 is a child of the parent widget even is visual not true).
  109 
  110 options.pod
  111 ===========
  112 
  113 $var=$w->configure(-option) is not documented. But there's a
  114 bug?  Tk::configure and Tk::Derived::configure don't do the
  115 same, return value and optionname, repectively.
  116 
  117 Menuoptions
  118 ===========
  119 
  120 	Check args to -command callback. Doc by N.W. as
  121 	first -textvariablethem -variable 11.25. IMO should
  122 	be -variable first.  Check!
  123 
  124 options.pod:
  125 
  126 -takefocus:  Tclish callback describtion.  (uh! Try if this works
  127 same in perl/tk)
  128 
  129 CmdLine:
  130 
  131 o09(0) ~/perl > perl -le 'use Tk; MainWindow->new();print @ARGV;MainLoop' -- -a b -bg green -- -c d
  132 -ab-bggreen---cd
  133 o09(0) ~/perl >
  134 
  135 I think CmdLine should not stop argument processing as soon as
  136 an unknown unknown switch is found.
  137 
  138 Should be fixed and documented.  Also mention priority that the cmd line
  139 switches have compared to -option name class and resource priority.
  140 
  141 Name option:
  142 ===========
  143 Theo Petersen <theo@acsp.com>:
  144 Aha, the Name option does this.  I found it while searching docs for
  145 anything that looked like it assigned a widget's name.  Oddly enough, I
  146 found it in Tk::Pane's docs (thanks Graham) but not in any generic
  147 documentation.  Have I missed it in some obvious place?  It's not
  148 documentend in the Widget or options pod, where standard options are
  149 listed (perhaps because it wasn't inherited from Tcl).
  150 
  151 ..Theo
  152 
  153 Dialog:
  154 =======
  155 
  156 Docs still very tclish. (Mhmm Dialog should be derived from
  157 DialogBox and then documented this way).
  158 
  159 Menu:
  160 =====
  161 
  162 Check B<tearOffCommand> option.  Still tclish.
  163 How is it implemented in perl/Tk.
  164 
  165 Ditto desc in SPECIAL MENUS IN MENUBARS
  166 
  167 Toplevel:
  168 =========
  169 
  170 So it should be moved to 14 The Window Manager or To Toplevel, MainWindow,
  171 Menu (etc?).  And should be written as:
  172 
  173 	$is_a_toplevel->Popup(?I<options>?)
  174 
  175 Where options can be
  176 
  177 	B<-popover>, B<-popanchor>, B<-overanchor>
  178 
  179 or any other I<$is_a_toplevel>.  Mhmm the 3 options above are 'regular'
  180 Toplevel option that are not mentioned in the Tks pod docs.  Sigh.
  181 JATI (just another todo item) :-(
  182 
  183 
  184 added ptk special featues:
  185 ==========================
  186 
  187 ----
  188 Achim Bohnet <ach@mpe.mpg.de> writes:
  189 >tagConfigurere returns a -data option for Tk402.003 and Tk800.003
  190 >tcls Tk8.0 does not have it and therefore it's not in the POD docs.
  191 >
  192 >Are there other places where pTk has more options than tcltk that
  193 >are waiting to be documented?
  194 
  195 Not many, but I would not be surprised.
  196 
  197 HList and TList elements have -data too.
  198 
  199 And of course we have property "command" (at least on X).
  200 ----
  201 
  202 fileevent:
  203 
  204 o remove tcl remnants like gets.
  205 o use 'fileevent' thread of Nick and Andreas Borchert
  206   to clarify the perl/Tk situation.
  207 o Add an save EXAMPLE for cut and paste so people don't
  208   have to worry how to implenent the described details.
  209 
  210 Widget.pod
  211 
  212 o misses Busy/Unbusy.  Check how it's implemtented to
  213   understand why it works as it does
  214 
  215 =item I<$widget>-E<gt>B<Busy>
  216 
  217 Turn the pointer into a 'watch' for I<$widget> and all
  218 decendants.  Beeps on key events for all these widgets.
  219 (Eh? Beeps on mouse clicks for all widgets in the Toplevel Eh?)
  220 
  221 Note: Does only with I<descendants> that have a undefined B<-cursor>
  222 value.  E.g., B<Entry> and B<Text> widgets don't work with B<Busy>
  223 by default.  A simple work around it to set B<-cursor>=E<gt>B<undef>.
  224 
  225 =item I<$widget>-E<gt>B<Unbusy>
  226 
  227 Undo last L<Busy|/Busy>.
  228 
  229 Balloon.pod
  230 ===========
  231 
  232 	-statusbar: Label + -text has the disadvantage
  233 		Label may resize for messages that are too
  234 		long.   Entry + -textvariable has not the problem
  235 		but it's editable. -> ROEntry ???
  236 
  237 configspec.pod
  238 ==============
  239 	o IMO use 'fallback' instead of 'default' because the default a widget
  240 	  uses is taken from the resource database and if there's nothing it
  241 	  fallbacks to the value specified in ConfigSpecs.
  242 
  243         o one should now be able to use $self instead of 'SELF' but I've not
  244           verified it so this is more a reminder for my pod/TODO file :-)
  245 
  246 STANDARD OPTIONS
  247 ================
  248 
  249 o -width  listed in Listbox but not in options.pod
  250 
  251 There a need for a check what options are listed
  252 in STD OPTIONS section and what's really in options.pod
  253 (maybe same what in options but also listed in widget
  254 specific WIDGET OPTIONS
  255 
  256 
  257 getOpenFile:
  258 ============
  259 
  260 o perlize filePattern when it's clear what it should be
  261   (It's not clear if Tcl/Tk scheme will be adopted
  262 
  263 o the file box should be probably pop up in the middle of the screen
  264 
  265 o check whether the -filetypes option works the same in unix and windows
  266 
  267 HList (and some BUGS)
  268 ===========
  269 
  270 1) headerSize still returns tclish string. (As documented but this
  271    should change)
  272 2) headerSize err msg for non existant col contains garbage IMO
  273 
  274 ptksh> $h->entryconfigure('one.two', -text=>'bar')
  275 ptksh> $h->headerCreate(0, -text=>'heading')
  276 ptksh> $h->configure(-header=>1)
  277 ptksh> p $h->headerSize(0)
  278 74 22|
  279 ptksh> p $h->headerSize(1)
  280 Column "KC@" does not exist at /home/ach/perl/5.004_64/site+standard/Tk/Submethods.pm line 19.
  281 
  282 3) Not all Submethods are defined and documented. E.g.
  283 
  284 ptksh> p $h->infoSelection
  285 Goto undefined subroutine &Tk::HList::infoSelection at /home/ach/perl/5.004_64/site+standard/Tk/Widget.pm line 305.
  286 
  287 ptksh> p $h->info('selection')
  288 one|
  289 one.two|
  290 
  291 Wm.pod (BUG?)
  292 ======
  293 
  294 Eh? What's that?
  295 
  296 ptksh> print "okay\n\n" if defined($mw->wm('aspect') )
  297 ptksh> print "okay\n\n" if ("" eq $mw->wm('aspect') )
  298 okay
  299 
  300 ptksh> p scalar( $mw->wm('aspect') )
  301 |
  302 
  303 
  304 Image stuff:
  305 ============
  306 
  307 	o ?? Extract standard constructor options like -file, -data into
  308 	  Tk::Image/"STANDARD OPTIONS"
  309 	o same for common method, e.g., type()
  310 	o Use $image or $bitmap, $photo, $pixmap (like $widget and $text, ...)
  311 
  312 	o DefineBitmap shares names between mainwindows and croak on dubl. names
  313 	  (See e.g., Tk::Numentry)
  314 
  315 Dunnigan,Jack [Edm] wrote:
  316 >
  317 > How does one ingest a bitmap into an icon for a perl/Tk application?
  318 >
  319 > The reference guide has:
  320 >
  321 >         $main->iconbitmap(?bitmap?);
  322 >
  323 > but I'm unsure as to what form (?bitmap?) should be written?
  324 > My full path name to the file is: /users/im/perlscripts/image/pirep.bmp
  325 >
  326 > Can someone show me the proper format?
  327 
  328 You need an X11 bitmap (typical "externsion" is .xbm):
  329 
  330         $icbm = $w->iconbitmap('@path_to_bitmap');
  331 
  332 The '@' differentiates a pathname from an builtin bitmap name.
  333 
  334 Photo.pod
  335 =========
  336 
  337 	o check and perlize RHS lists of =>
  338 
  339 	o Photo configure resName, resClass are undefined so
  340 	  optiondb is not used.  Intention? If yes this should
  341 	  be mentioned in POD.
  342 
  343 options.pod
  344 ===========
  345 
  346 	o add note about undef name class prevents optiondb lookup
  347 
  348 SYNTAX:
  349 =======
  350 
  351   o , and ? are not correct
  352 	(?I<switches>,? I<pattern, index, >?I<stopIndex>?)
  353     should be IMO
  354 	(?I<switches>,? I<pattern, index>?, I<stopIndex>?)
  355     But first ,? is correct second isn't.   !!!!
  356 
  357   o Inconsistency in submethod describtion some one methSub, I've
  358     added some meth('sub'.. and methSub, other use only methSub
  359 
  360 MARKUP:
  361 ======
  362 	still lot of   $widget  instead of I<$widget>	Maybe still
  363 	some buggy window->$widget from autoconvertion
  364 
  365 LINKS:
  366 ======
  367 	B<Tk_GetPixels> --> L<Tk_GetPixels|Tk::pTk::GetPixels/"DESCRIPTION">
  368 	B<Tk_GetBoolean> --> L<Tk_GetBoolean|Tk::pTk::??????????????>
  369 				Tk_GetBool.* not found in pTk pods
  370 
  371 	.... check for other, general case B<Tk_.*> ??
  372 
  373 
  374 POD Conflict:
  375 =============
  376 	pod/Font.pod	Tk/Font.pm  	(I assume pod/Font sould be
  377 					pod/font.pm (my guess first char
  378 					case script got it wrong) but
  379 					having Font and font is same mess
  380 					as grid and Grid before.
  381 
  382 STILL TCLISH:
  383 =============
  384 	getOpenFile
  385 	messageBox
  386 	?...?
  387 
  388 Canvas.pod
  389 ==========
  390 
  391 o bind method: + to append a binding is not available in perl.  Somewhere
  392  (bind.pod?) should be a blurb how to do it.  Or provide a AddBind method.
  393 
  394 o Mhmm, ->bind without callback returns an error when no callback is defined
  395   bind return undef,  blech!  (check if really the case)
  396 
  397 o Tcl B<continue>  -> return from callback or is there more magic. Check it!
  398 
  399 o Find Nick's mail that one can't prevent from item callback that canvas
  400   callback get invoked.
  401 
  402 o No docs for update method in Widget or After.  L<update|Tk::?????>
  403   (check also other pod so insert the link)
  404 
  405 o No CanvasLower CanvasRaise methods.  ???  Is there a Raise Lower method
  406   that always works on the widget?
  407 
  408 
  409 Pixmap.pod
  410 ==========
  411 	o -id not documented
  412 
  413 tk8 font:
  414 =========
  415 
  416 	o I've added L<Tk::Font> to Widget.pod. May be wrong. Deps. on final
  417 	  name and now tools prefers of name.pod or name.pm
  418 
  419 	o L<scaling|Tk::Widget/scaling>  but /scaling will not work I guess
  420 	  push A<show this|anchorname> support on top of TODO list :-)
  421 
  422 	o Add link to Grahams Tk::Font where X11 XFLD  are mentioned. Currently
  423 	  Font.pm and Font.pod collide
  424 
  425 tkerror :
  426 =========
  427 
  428 o *** Add stuff Nick explained on ptk when 'ideal error msg' thread
  429   finds an end ***  Old questions of mine:
  430 
  431 o Is it save to document that first arg of Tk::Error is a $mainwindow?
  432   E.g., $label->Error('shit') works (a widget is-a tk).   So should
  433   it be Tk::MainWindow::Error  to disable $label->Error?
  434 
  435 o $w->BackTrace not mentioned/explained.  Should it be mentioned?
  436   Has someone a BackTrace describtion at hand? :-)
  437 
  438 
  439 o what to do with 'command Tk::Error'?  Use  'method  Tk::Error'?
  440   (Hmm Tk.pm provides default Tk::Error so $w->Tk::Error(...)
  441   is effectively always the same as Tk::Error($w,...)   So it would
  442   IMO make more sense to write  'Tk::Error subroutine'  or use 'Error
  443   method'.
  444 
  445 o IMO require Tk::ErrorDialog should only be used in
  446   perl script and *not* in modules.  I would consider it bad style when
  447   a script 'overrides' global error handling (that may occur delayed
  448   due to 'require only when need' of such a module.
  449 
  450 o I've also have a need for a special Tk::Error function.  How to get
  451 *all*  die, warn  (even before MainLoop is reached) return a complete
  452 stack trace.  If this is not easy to achieve (as I think I found out :-( )
  453 should tkerror include a suggestion to 'use Carp' in Tk:: modules
  454 to help debugging?
  455 
  456 
  457 
  458 Geometry manager:
  459 =================
  460 
  461 	o Describe their behaviour if a toplevel widget gets resized so
  462 	  available space is smaller than the requested x/y of the
  463 	  widgets.
  464 
  465 	o use same style SYNOPSIS and KEYWORDS' section
  466 
  467 	o gridSize  $master not managed by grid return (0,0) not
  468 		documented (intentional)?
  469 	o Form:
  470 		o check/verify/understand I<anchor_point> syntax:
  471 		  	'%$a'  could only work with dyn. var. not lex.
  472 			\$a  man->pod error?
  473 		o make undocumented/partial impl. 'spring' invisible
  474 		  and a add TODO ???
  475 		o add a intro I<-side>, I<-side>B<spring>, -pad<side> so one
  476 		  faster sees what's going on
  477 		o check TRUE FALSE return of formCheck
  478 		o try formGrid.  the description seem wrong. Missing 'not'?
  479 		o check form(-top... -left...) != form(-left...-top...)
  480 		o ABREVIATIONS "-0", versus -0  wasn't there something about
  481 		  that on p5p?
  482 
  483 	o grid mention raise lower to change stacking order.  Works for non
  484 	  toplevel too.   Try it.  (add links for raise lower)
  485 
  486 	o Add a ptkmgr.pod  explaining common stuff (e.g., possible
  487 	  $master's, command 'submethods' mgr, mgrForget, mgrInfo)
  488 	  mention manager (wm for toplevels: are there similar wmForget
  489 	  etc. methods, seams useful).   *Propagate,
  490 	  Raise Lower explanations.   $master <=> widgettree correlation
  491 
  492 composite:
  493 
  494 	o note that ..$opt=delete $args->{-opt}.. handles const.
  495 	  only options is confusing. a) There would not be a
  496 	  'readonly' option as for -class, visual, ...
  497 	  Using CreateArgs does not work for composites, cries
  498 	  for a support method  (where=READONLY in configspec?)
  499 	o Add skeleton of a Frame based composite?
  500 
  501 callbacks:
  502 
  503 	o IMO remove BUGs section closure are not 'the' solution
  504 	  especially they are not (?) useable in ClassInit
  505 	o add some more 'normal' callback examples.
  506 	o 'pronouce' that the actual arguments list passed to a
  507 	   callback may differ.
  508 	o Then concentate 'special' handling of a bind callback in
  509 	  it's own section.
  510 	o Describe how emulate bind in your callback handling
  511 	o Ev() example/explanations better moved to Tk::bind ?
  512 	o BUGS entry?: Missing is a -callback switch that treats
  513 	  callbacks as bind does automaticly
  514 
  515 configspec:
  516 
  517 	o SETMETHOD, GETMETHOD undocumented (check Derived.pm
  518           for more)
  519 
  520 Configure:
  521 
  522 	o detail about composite widgets are distributed in the
  523 	  docs. Bundle them into a separate section. First discribe
  524 	  general interface then go into details about composite:
  525 
  526 	o Add section with details about Tk::Configure->new
  527 
  528 DItem:
  529 	o pod markup of ITEM OPTIONS and STYLE OPTIONS is
  530 	  wrong but fix would conflict with pending
  531 	  Config:,Name:,Class  change
  532 
  533 	o all STANARD OPTIONS still use res. name not option name
  534 
  535 	o remove C<>
  536 
  537 Text:
  538 
  539 o Intentional(?):
  540 	o Tag and Tags not documented (doc for Text::Tag?)
  541 	o TIE interface undocumented
  542 
  543 o Go through EMB IMAGE and image method stuff
  544 
  545 o textBind describtion still tclish. See also same item in Canvas.pod below
  546 o dump method output already perlish??
  547 
  548 o windowCreate -create requires pathname as
  549   return value (as documented) but should also
  550   accepts
  551 
  552   Fix Text.pod when $w is also okay.
  553 
  554 o windowNames return path of emb. widgets.  So IMO there's a
  555   windowObjects|Refs missing returning the ref to the widgets
  556   (windowSlaves  like in packSlaves, gridSlaves ??)
  557 
  558 o Missing (intentional?) Tk::submethods
  559 
  560 	x|yview => [ qw(moveto scroll) ]
  561 
  562   a specialcase for  x|yviewPickplace ??????????
  563 
  564 o sub Tag; and sub Tags; predeclared.  Isn't this be done
  565   by autosplit.ix and AutoLoader ?
  566 
  567 o search and regexp, check if perl or tcl regexp are used
  568 	and document it.
  569 
  570 TList:
  571 ======
  572 
  573 o Click on 'one' in example at the end does not make it 'one'
  574   the 'active item
  575 
  576 __END__