Demo:UI Development

From ParaQ Wiki
Jump to navigationJump to search

Overview

This page captures the UI components and capabilities required by the Demo:Script. In general, the ParaQ client and its UI is intended to convey that it is a configurable, useful tool. It should be the opposite of ParaView, Maya - tools that present a bewildering array of controls, navigable only by expert users. Instead, the UI should be simple. It should respond logically to user actions. And, it should look neat, professional, and (where appropriate) whizzy.

Components

  1. Window management toolbar. Much like the toolbar in Prism, this toolbar has button for several actions the user can take when creating, deleting, or otherwise manipulating windows. First pass should duplicate Prism's toolbar. Later passes will be revised per group/user input.
  2. Compound Filter toolbar. This toolbar shows several icons, representing the Compound Filters found in a designated directory. These should operate on appropriate selected objects, or they should bring up UI that enables them to operate. For example, if the CF needs a vtkDataSet input, if a vtkDataSet is selected (say, in the Hierarchy editor), this CF button will be enabled.
  3. Hierarchy View. This is a multi-tabbed, dockable window. One tab (the default tab) is the 'Filter View Hierarchy', a simple view that shows much the same information as the current ParaView filter view, except that this view is hierarchical. It shows root nodes (such as sources, file readers, etc.) that have no ancestors, and indented one level from those root nodes are filters that are connected in a straight line - i.e. filters where the output of the first filter is connected to the input of the next filter, and so on.
    1. Requirements:
      1. A representation will show up for every filter in the PVSM.
      2. Clicking on the representation will highlight it.
    2. Restrictions:
      1. For the purposes of this demo, there will be no fan-in or fan-out of filter connections. The Compund Filters and other states expected to be loaded during the demo will be prototyped in ParaView, so developers can look at them, and develop appropriate UI components from them.
  4. Object inspector. Shall display controls and information about a selected item. Tied to Hierarchy view.
    1. Will show exodus file information called out in demo step 6.
  5. Quantitative Components
    1. Histogram (demo step 7)
    2. Line graph (demo step 8)
    3. UI support for creating multiple Histograms and Line graphs for the current session.
  6. Filter menu
  7. Not preset in the demo script, but we'll probably need them:
    1. Selection (are there problems with parallel selection?) It may be necessary to support Selection -> Inspection -> Graphing of selected set. (depending upon how much work this is)
    2. Element inspector. (if we include this, we should use Prism's kick-ass spreadsheet - thanks, Corey :) )

Requirements

  1. UI layout is loaded from a ParaQ state file (xml file from disk)

Tasks

Assignee Task
Wylie Create several ParaView files that will serve as the basis for the Compound Filters that will be used in the demo. These files will be used by ETI and others to enable (and restrict) development of the capabilities of the Demo UI components.
Wylie Determine if Histogram and Line graph are sufficient for quantitative demo needs
ETI/Wong Determine method of interacting with CF's in the toolbar. In particular, is the method detailed in demo step 11 correct and understandable. Appropriate UI actions (such as greying out CF's, etc. that are not supported for the current selection) should be implemented.