Commit Graph

22 Commits

Author SHA1 Message Date
Barry Warsaw ca07ba00ac Many changes to support a second mode of operation. Pynche can now be
run either as a standalone application (by running pynche or
pynche.pyw), or as a modal dialog inside another application.  This
can be done by importing pyColorChooser and running askcolor().  The
API for this is the same as the tkColorChooser.askcolor() API, namely:

    When `Okay' is hit, askcolor() returns ((r, g, b), "name").  When
    `Cancel' is hit, askcolor() returns (None, None).

Note the following differences:

    1. pyColorChooser.askcolor() takes an optional keyword `master'
       which if set tells Pynche to run as a modal dialog.  `master'
       is a Tkinter parent window.  Without the `master' keyword
       Pynche runs standalone.

    2. in pyColorChooser.askcolor() will return a Tk/X11 color name as
       "name" if there is an exact match, otherwise it will return a
       color spec, e.g. "#rrggbb".  tkColorChooser can't return a
       color name.

There are also some UI differences when running standalone vs. modal.
When modal, there is no "File" menu, but instead there are "Okay" and
"Cancel" buttons.

The implementation of all this is a bit of a hack, but it seems to
work moderately well.  I'm not guaranteeing the pyColorChooser.Chooser
class has the same semantics as the tkColorChooser.Chooser class.
1998-10-22 03:25:59 +00:00
Barry Warsaw 8a09e1ccda Saving/Restoring state into ~/.pynche file 1998-10-20 20:45:46 +00:00
Barry Warsaw 84f52e0a16 RightARrow._create(): justify=RIGHT on the text object 1998-10-06 23:04:55 +00:00
Barry Warsaw 5b67839ca3 Added a hex button so arrow numbers can display in decimal or hex. 1998-10-06 16:13:35 +00:00
Barry Warsaw 4638c5b7f3 Docstring 1998-10-02 16:20:14 +00:00
Barry Warsaw 65f0b6be47 Add a nice divider 1998-10-01 14:26:04 +00:00
Barry Warsaw d344165f48 Added options to visible window 1998-10-01 03:08:07 +00:00
Barry Warsaw d7d4725dba Added an extra frame in widget heirarchy in case I want to add
separators later
1998-09-29 17:36:43 +00:00
Barry Warsaw 26f4b5dfe4 Fixed the brightness calculation 1998-09-28 22:52:02 +00:00
Barry Warsaw 0dc9c92b10 Updated to new post-PMW framework. Moved generators to here and added
the StripViewer class.
1998-09-28 22:42:44 +00:00
Barry Warsaw 5177c48411 formatting 1998-09-28 21:01:55 +00:00
Barry Warsaw 6a3ea7468e Un PMW-ified 1998-09-28 20:58:06 +00:00
Barry Warsaw a341fc3bf7 update while dragging defaults to 0 1998-03-17 16:19:05 +00:00
Barry Warsaw ee6d8a5b45 No update while dragging still tracks the arrows 1998-03-17 15:59:26 +00:00
Barry Warsaw 70787ed8ae Add option for no updates on dragging 1998-03-16 23:08:53 +00:00
Barry Warsaw 4435d5a8d8 Very modest improvements 1998-02-18 17:00:24 +00:00
Barry Warsaw 49c5b0d1be Get rid of commented out, slower versions 1998-02-18 16:22:52 +00:00
Barry Warsaw 4c2fab51ed Implementation using TCLPROC loaded into the Tcl interpreter 1998-02-18 16:22:22 +00:00
Barry Warsaw f67a50c2e1 Several optimizations:
self.__chips now contains the list of rgbtuple values for the
    chips named i - 1 (Tkinter counts from 1, we count from zero).
    The chip number was just the index + 1.  This means color lookup
    need not do an itemcget(), it can just index into __chips.

    instead of calling __canvas.itemconfigure(), we glom up a huge Tcl
    script and call tk.eval() directly.  Actually we do many appends
    to a Python list, then string.join() them together into one huge
    string.  This reduces the overhead of Tkinter but making one fast
    call to Tcl.
1998-02-18 00:05:59 +00:00
Barry Warsaw bc6893062a Added chip selection stuff, strip label 1998-02-17 03:09:40 +00:00
Barry Warsaw 35ae864ab7 get arrow movement, and text updating. also outlining of highlight 1998-02-13 21:28:47 +00:00
Barry Warsaw 9d882bc4de Initial revision 1998-02-12 19:51:57 +00:00