[PD] UI developer volunteering to help

David Golightly davigoli at gmail.com
Thu May 22 05:50:29 CEST 2008


Ok, how does this look?

I was still unable to reproduce the clicking bug, but I changed the code to
avoid the scenario that your stack trace seems to indicate as the problem,
hopefully you won't see it any more.

Turns out I also have Tcl/Tk 8.4.7.  Don't know where I got the idea I had
8.5 installed.  So it seems either the tcllib or the Tile/ttk widgets might
be a good bet for the next revision to these dialogs.  One goal here also I
think is to eventually provide a good basis for further customization of the
Pd environment and UI, which will of course require someone to delve in the
C for some of it, although perhaps to the extent that some customization can
be done in pure Tcl/Tk, C work can be avoided.

Thanks again,

David


On Tue, May 20, 2008 at 3:00 AM, Hans-Christoph Steiner <hans at eds.org>
wrote:

>
> Just tried your new version, very nice, I think it's sorted, except one
> tiny bug with the resizing of "Add new startup command".  I think you'll
> want to set a minimum window width, since you can resize it smaller and make
> the OK button disappear.
>
> You might look into the Tile/ttk widgets, they are now included in Tcl/Tk
> 8.5.  I'd like to use 8.5 for Pd-extended 0.41, so they would be there.  For
> example, a ttk::notebook could be used to host all of the pref panes into a
> single window.
>
> About the error, I just dropped your u_main.tk into Pd-vanilla 0.41-4, so
> that uses the version of Tcl/Tk included with Mac OS X, 8.4.7.  I have
> Tcl/Tk 8.4.18 installed, it might be using that.  But I definitely don't
> have 8.5  Here's the error:
>
> Startup panel:
>
> can't use empty string as operand of "+"
> can't use empty string as operand of "+"
>     while executing
> "expr {$height + $top}"
>     (procedure "ScrollBox::dbl_click" line 8)
>     invoked from within
> "ScrollBox::dbl_click .gfxstub5b1230 dlg_Startup::edit dlg_Startup::add 65
> 45"
>     (command bound to event)
>
> Path pane:
>
> can't use empty string as operand of "+"
> can't use empty string as operand of "+"
>     while executing
> "expr {$height + $top}"
>     (procedure "ScrollBox::dbl_click" line 8)
>     invoked from within
> "ScrollBox::dbl_click .gfxstub5b1930 dlg_Path::edit dlg_Path::add 81 42"
>     (command bound to event)
>
> .hc
>
>
> On May 20, 2008, at 8:32 AM, David Golightly wrote:
>
> PS I was unable to reproduce that issue where you saw an error message from
> clicking on an empty cell.  For me, clicking on empty cells just brought up
> the "Add new item" dialog.  Could this be a difference of platform/TclTk
> version?  I'm running 8.5 on OS X 10.4.  I'd also like to get the specific
> error message if you can get it.
>
> Thanks,
>
> David
>
> On Mon, May 19, 2008 at 10:07 PM, David Golightly <davigoli at gmail.com>
> wrote:
>
>> Here's a revised copy with a few minor changes (the "startup flags" field
>> now expands to fill the window, you can resize the startup command popup
>> arbitrarily).
>>
>> I'm wondering about the protocol of introducing dependencies in PD.  It
>> seems that BWidget gives us a widget that we can use for the listbox (
>> http://tcllib.sourceforge.net/BWman/ListBox.html), however, it's perhaps
>> not distributed with older distributions of Tcl/Tk.  BWidget is distributed
>> with Tcllib, which is apparently a default library packaged with most
>> installs of Tcl, http://wiki.tcl.tk/12099 says that it comes by default
>> with the ActiveState distro, with .deb and .rpm packages, and it was
>> installed by default on my Mac OS X 10.4 distribution.  But it's not
>> guaranteed to be installed with ALL distributions of Tcl/Tk - I just have no
>> idea exactly how many users might lack it.
>>
>> Failing that, the popup should behave exactly as inline editing does, even
>> though it looks a little strange.  You can still use the keyboard to
>> navigate: down, down, enter, type, enter, up, enter, esc...  Just think of
>> it as inline listbox editing with extra window chrome :)
>>
>>
>>
>> On Mon, May 19, 2008 at 11:37 AM, Hans-Christoph Steiner <hans at eds.org>
>> wrote:
>>
>>>
>>> Oops, found a little bug:  double-clicking on an empty cell through up an
>>> error dialog.
>>>
>>> Also, an idea: if you just draw that popup entry box just below the
>>> listbox with the OK button, add a Cancel button, then use "pack forget" when
>>> the user hits OK or Cancel.  Just a thought.  That mini-popup window is the
>>> only thing about these panels that is weird, I guess that why I still am
>>> thinking about how to ditch it.
>>>
>>> .hc
>>>
>>> On May 19, 2008, at 7:09 PM, Hans-Christoph Steiner wrote:
>>>
>>>
>>> Looks good to me.  This is already a massive improvement over what is
>>> there.  I don't know if you are sick of working on it, but I thought I'd
>>> throw a couple of minor ideas:
>>>
>>> - it would be useful if the "startup flags" entry widget would stretch
>>> with the resizing window.  Then you could see more of those flags.
>>>
>>> - perhaps the windows should open above the Pd window instead of the
>>> center of the screen?  I think you can get that info using [winfo rootx .]
>>> and [winfo rooty .]
>>>
>>> .hc
>>>
>>> On May 18, 2008, at 7:26 PM, David Golightly wrote:
>>>
>>> As requested, I've put back the "Edit" and "Delete" buttons and added
>>> BackSpace as a Delete event for Mac OS X.  I couldn't get Cmd-BackSpace to
>>> fire effectively, but perhaps someone knows something I don't about getting
>>> that to work.
>>>
>>>
>>> On Sun, May 18, 2008 at 7:15 AM, Hans-Christoph Steiner <hans at eds.org>
>>> wrote:
>>>
>>>>
>>>> Very nice!  The mouse/keyboard interactive is well done, I only worry
>>>> that the buttons are now too sparse.  I think delete and edit buttons would
>>>> still be useful, maybe people don't use keyboard shortcuts at all.
>>>>
>>>> Also, on Mac OS X, Delete is not commonly used, so it would be good to
>>>> also have BackSpace work for deleting.  Or maybe Cmd-BackSpace since that is
>>>> what is used for deleting in the Finder.
>>>>
>>>>
>>>> .hc
>>>>
>>>> On May 18, 2008, at 9:46 AM, David Golightly wrote:
>>>>
>>>> A note on the latest changes: I removed all the list manipulation
>>>> buttons and added the following bindings:
>>>>
>>>> - The list items can be re-ordered by drag-and-drop.
>>>> - Clicking on a list item allows you to edit it.
>>>> - Clicking anywhere else in the listbox allows you to add a new list
>>>> item.
>>>> - You can also traverse the list using up and down arrow keys, then
>>>> press "Enter" to change the selected item.
>>>> - Press "Delete" to delete the currently selected list item.
>>>>
>>>> I kept around the "New..." button, since it may not be immediately
>>>> obvious to newbies how to add new things to the list.
>>>>
>>>> I also removed the "Save all settings" button and folded its action in
>>>> to the "Apply" command (and, by extension, the OK command).  I played around
>>>> with trying to get an in-place editable listbox control for the Startup
>>>> dialog, but to no avail - it's apparently no trivial task in Tcl/Tk.
>>>> Perhaps for a future revision.  However, the popup dialog functions
>>>> effective the same, as "Enter" will submit your edit and "Esc" will cancel;
>>>> once you get used to it it shouldn't be much different.
>>>>
>>>> I'm also now centering the dialog windows on the screen.  I'd like to do
>>>> this also (especially) for the "Properties" dialogs that are used to edit
>>>> GUI controls.  Tk like to try and "cascade" new dialogs as they appear; this
>>>> is too clever by half, and really annoying once if you do a lot of editing.
>>>> But I've only tested this centering behavior on my own Macbook 15" screen,
>>>> so it would be great if others could verify it's still usable on other
>>>> screen sizes.
>>>>
>>>> One other thing: these dialogs can now be resized, but they appear at
>>>> their minimum size, so you can't shrink them any further (you can only
>>>> expand them).
>>>>
>>>> Please let me know what you think and as always let me know if you run
>>>> into any trouble!
>>>>
>>>> Thanks,
>>>> David
>>>>
>>>>
>>>> On Sat, May 17, 2008 at 6:06 PM, David Golightly <davigoli at gmail.com>
>>>> wrote:
>>>>
>>>>> Ok, with the path/startup dialogs, this is about the feature set I'd
>>>>> like to end up with for now.  Please, everyone, review it for usability &
>>>>> obvious bugs, and if it looks good I'll submit it as a patch.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> David
>>>>>
>>>>>
>>>>>
>>>>> On Tue, May 13, 2008 at 11:53 PM, Steffen Juul <stffn at dibidut.dk>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>> On 14/05/2008, at 0.16, marius schebella wrote:
>>>>>>
>>>>>>  David Golightly wrote:
>>>>>>>
>>>>>>>> Keep in mind I'm
>>>>>>>> still learning Tcl/Tk, so some of these ideas, while excellent, are
>>>>>>>> a
>>>>>>>> little beyond my technical grasp at this point and may be
>>>>>>>> improvements
>>>>>>>> that we make incrementally over time.  Also, I have a limited amount
>>>>>>>> of
>>>>>>>> my time to budget for this kind of work
>>>>>>>>
>>>>>>>
>>>>>>> david,
>>>>>>> if you spend 1 hour on coding and one hour on documenting of how to
>>>>>>> get
>>>>>>> to that step, (instead of 2 hours coding), then the chance that more
>>>>>>> people will be able to jump in is bigger. tcl/tk is new to most
>>>>>>> people.
>>>>>>> being able to concentrate on design and ui aspects would make life
>>>>>>> easier. the hard part is to get started.
>>>>>>>
>>>>>>
>>>>>> Especially since the names in Tk are to my experience somewhat
>>>>>> different to what one put in the search bar, ie. of my/your(?)/normal
>>>>>> vocabulary.
>>>>>>
>>>>>> Example: tabs ~= notebook. See http://wiki.tcl.tk/2298
>>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> PD-list at iem.at mailing list
>>>> UNSUBSCRIBE and account-management ->
>>>> http://lists.puredata.info/listinfo/pd-list
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> ----------------------------------------------------------------------------
>>>>
>>>> I spent 33 years and four months in active military service and during
>>>> that period I spent most of my time as a high class muscle man for Big
>>>> Business, for Wall Street and the bankers.      - General Smedley Butler
>>>>
>>>>
>>>>
>>> <u_main.tk>
>>>
>>>
>>>
>>>
>>>
>>> ----------------------------------------------------------------------------
>>>
>>> "[W]e have invented the technology to eliminate scarcity, but we are
>>> deliberately throwing it away to benefit those who profit from scarcity."
>>>     -John Gilmore
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> ----------------------------------------------------------------------------
>>>
>>> "It is convenient to imagine a power beyond us because that means we
>>> don't have to examine our own lives.", from "The Idols of Environmentalism",
>>> by Curtis White
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> PD-list at iem.at mailing list
>>> UNSUBSCRIBE and account-management ->
>>> http://lists.puredata.info/listinfo/pd-list
>>>
>>>
>>
>
>
>
>
> ----------------------------------------------------------------------------
>
> Man has survived hitherto because he was too ignorant to know how to
> realize his wishes.  Now that he can realize them, he must either change
> them, or perish.    -William Carlos Williams
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20080521/1d7f5f2f/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: u_main.tk
Type: application/octet-stream
Size: 167104 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20080521/1d7f5f2f/attachment.obj>


More information about the Pd-list mailing list