[PD] UI developer volunteering to help

David Golightly davigoli at gmail.com
Sun May 25 02:22:40 CEST 2008


Since it's been a few days since my last update, and I haven't received any
responses, I submitted patch #1971585 to SourceForge, including the updates
to the Path and Startup dialogs.  Any further suggestions are still welcome;
I will be investigating consolidation of the 4 preferences dialogs into a
tabbed dialog of some sort (a la Tk notebook).  However, perhaps an earlier
priority for me will be figuring out some improvements to GUI control
dialogs; perhaps bulk-editing/updates modeled (I think) on the iTunes UI for
editing the metadata on multiple songs.

Anyways, thank you to everyone who offered feedback and code reviews to my
efforts!  Much appreciated.  I'm grateful to be able to contribute code to a
piece of software that has been so useful to me in the past.

Best,
David


On Wed, May 21, 2008 at 8:50 PM, David Golightly <davigoli at gmail.com> wrote:

> 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/20080524/9bee3575/attachment.htm>


More information about the Pd-list mailing list