Special topic breakout: KWWidgets

From NAMIC Wiki
Jump to: navigation, search
Home < Special topic breakout: KWWidgets





KWWidgets Breakout Session

June 26th, 1-2pm

Location: Grier Rooms A & B: 34-401A & 34-401B







Attendees:

  • Yumin Yuan
  • Steve Pieper
  • Alex Yarmarkovich
  • Wendy Plesniak
  • Nicole Aucoin
  • Curt Lisle
  • Csaba Csoma
  • Brad Davis
  • David Gobbi
  • Kiran Shivanna
  • Kevin Teich


Agenda

  • Roadmap (to help KWWidgets developers prioritize their work)
  • Widget feature requests / feedback
  • Talk about best approaches to making some widget behavior appear consistent across platforms.
  • Separate Tutorial Session for New Users (to happen possibly on Wednesday)

Specific Issues

From Nicole Aucoin

Directory selection dialog box on linux:

- it pops up with a default width such that the right scroll bar isn't visible.

- request: an entry box where I can type a path to reduce clicking through the tree (useful before setting up a favourite)

From Curtis Lisle

idea #1 - I have had trouble initializing widgets to specific values in advance of user input. For example, I've created interfaces with sliders and buttons but I have had trouble getting the widgets to initialize in a state different then the default state. For example, setting a slider to value=26 in the middle of its range without dragging the mouse. The API looks like it is there, but I couldn't get it to work for me. I'm sure I tried setting the state before and after creation, if I remember, but no luck. It may be that I'm not updating the GUI successfully after changing values.

idea #2 - discuss when UI elements need to have Modified() / Update() invoked to refresh their appearance. I used a histogram widget on a project and had to experiment a lot calling the panel and RenderWidowWidget, etc. before I finally got the histogram to update when the input changed.

From Brad Davis

Bug: Double-clicking does not work with slicer3 and linux

Feature request: Tree with additional columns widget

File->Add Data does not use new file browser.

From Alex:

I would lile to address the performance of building GUI in slicer3 Modules: When selecting a module for the first time (Volumes or Models) it takes noticable time before the UI panel is displayed.

Customizable tree widget similar to slicer2 model hierarchy editor: allow to add push-buttons or check boxes for the individual tree leaves.

From Wendy:

Pesky issues: Creating special versions of menubutton drop-down menus with scroll capability, checkbuttons and radiobuttons with consistent "on/off" visual representation across platforms. (either special Slicer widgets or KWWidgets). Also, if a radiobutton's indicator visibility is off, the widget gets rendered with a 3D effect (even if we're using an icon to display the button's on/off state). Can we turn that 3D effect off? It would be good to decide on a strategy for addressing these things.

From KWW-Users mailing list

http://public.kitware.com/pipermail/kwwidgets/2007-June/000456.html

http://public.kitware.com/pipermail/kwwidgets/2007-June/000461.html

http://public.kitware.com/pipermail/kwwidgets/2007-May/000433.html

From Steve:

I'd like to have a discussion of GUI Tracing. In slicer3 we've started to experiment with a MRML-based tracing structure using the scene snapshot infrastructure, but we should consider if this is preferable to a GUI-based solution or not. See, for example, the vtkSlicerRecordSnapshotWidget.

Performance of the file browser could be improved (request for multi-threaded solution or a helper process that does the glob'ing so the main application does not block).

Look and feel issues:

  • On windows, the menu bar and scroll bar do not get the appearance
  • On linux, font size is sometimes way too small

Maybe just me, but I find the new file browser sometimes ignores doubleclicks -- perhaps it is more picky about any small mouse movement between clicks?

Configure event management is still a problem - dragging the split frame or hiding the left panel (with F5) causes a lot of extraneous ConfigureEvents.