1. 21 Sep, 2013 11 commits
    • Artur Grunau's avatar
      Add support for boxed display of property widgets · 8b316f0c
      Artur Grunau authored
      Previously, property widgets have always had their components displayed
      horizontally next to a label with the property name. However, that made
      widgets consisting of many components (e.g. widgets for vector
      properties) hard to use because their components were squeezed together.
      
      Now AbstractPropertyWidget takes one additional optional argument,
      displayBoxed. If it's false, the widget is displayed as before. When
      it's true, the widget is laid out vertically in a QGroupBox. For now
      only widgets for vector properties set displayBoxed to true.
      8b316f0c
    • Artur Grunau's avatar
      Use DoubleAdjusterWidget in vector property widgets · e5e1bff3
      Artur Grunau authored
      Previously, widgets for double-valued vector properties used only spin
      boxes to display and let users modify the values of their associated
      property.
      
      Now that we have DoubleAdjusterWidget, vector property widgets have been
      updated to use it to make it possible to change the values of their
      components with not only a spin box, but also a slider.
      e5e1bff3
    • Artur Grunau's avatar
      FloatPropertyWidget: use DoubleAdjusterWidget · 77653ee0
      Artur Grunau authored
      Previously, FloatPropertyWidget used standard spin boxes and sliders to
      display and let users modify the value of its associated property.
      Consequently, it had to synchronise the states of those widgets on its
      own.
      
      Now that we have a separate widget that implements the two ways of
      changing double values that FloatPropertyWidget provides, it makes sense
      to simplify FloatPropertyWidget's code by making it use
      DoubleAdjusterWidget internally.
      77653ee0
    • Artur Grunau's avatar
      DoubleAdjusterWidget: widget modifying doubles · 778445ea
      Artur Grunau authored
      DoubleAdjusterWidget displays and provides two ways of modifying
      double-precision floating-point numbers: a slider that can be used to
      quickly change numeric values, and a spin box, which is better suited
      for precise adjustments.
      
      DoubleAdjusterWidget is designed to be used by FloatPropertyWidget and
      widgets for vector properties storing floats.
      778445ea
    • Artur Grunau's avatar
      PipelineTreeWidget: provide a sensible height hint · d585148e
      Artur Grunau authored
      The sizeHint method has been overridden in PipelineTreeWidget to return
      a sensible height for the wigdet, while still reusing QTreeView's
      hardcoded width.
      
      The main window makes use of that to limit PipelineTreeWidget's maximum
      height and give any vertical space reclaimed in this way over to the
      widget displaying pipeline properties.
      d585148e
    • Artur Grunau's avatar
      Add a slider to FloatPropertyWidget · 163acaae
      Artur Grunau authored
      Each FloatPropertyWidget now gives the user two ways of modifying its
      underlying property's value: the slider can be used for quick changes,
      the spin box — for precise adjustments.
      163acaae
    • Artur Grunau's avatar
      Fix the redrawing of threaded GL canvases · 5fbb429e
      Artur Grunau authored
      QtThreadedCanvas used to ignore all repaint events send to it by Qt in
      order to avoid problems with threading. As a result, however, it would
      become blank when docked/undocked, and display garbage in those of its
      regions that some other widgets have moved over.
      
      To fix this, the API of TGT's Painter class had to be slightly modified
      and now mirrors that of Canvas with regard to painting-related
      operations. The paint method has been made protected; it's supposed to
      implement the painting logic and shouldn't be called directly. A public
      repaint method has been introduced to let canvases notify their
      associated painters that they need to be redrawn. The default
      implementation simply calls paint() immediately; threaded painters,
      however, override it to schedule render jobs that run in separate
      threads.
      
      All existing threaded painters have been updated to reduce the
      visibility of their paint methods and provide public repaint functions.
      Consequently, QtThreadedCanvas can now properly handle repaint events by
      delegating to its associated painter's repaint method.
      5fbb429e
    • Artur Grunau's avatar
      Display pipeline properties in a scroll area · cfc3e7ba
      Artur Grunau authored
      To stop the widget that contains pipeline properties from constant
      resizing and taking space away from other widgets, its contents were put
      in a scroll area that only resizes horizontally, and scrolls vertically.
      cfc3e7ba
    • Artur Grunau's avatar
      Highlight the structure of log messages · 3a030e62
      Artur Grunau authored
      Things like date-stamps, time-stamps, categories, and log levels are now
      highlighted in every log message. This should make the contents of the
      log viewer easier to scan by indicating which information is important.
      3a030e62
    • Artur Grunau's avatar
      Support dragging VP widgets back into the MDI area · f12ee2f7
      Artur Grunau authored
      VisualizationPipelineWidget and PipelineMdiSubwindow have been extended
      to report changes in their positions to VisualizationPipelineWrapper.
      Based on the information the latter receives, it decides when to undock
      MDI subwindows and dock floating pipeline widgets.
      
      As a result, it's now possible to drag visualization pipeline widgets
      back into the MDI area and turn them into MDI subwindows.
      f12ee2f7
    • Artur Grunau's avatar
      Handle dragging VP widgets out of the MDI area · 62373ebf
      Artur Grunau authored
      The way visualization pipelines are displayed has been considerably
      reworked. A new class, VisualizationPipelineWrapper, is now responsible
      for creating all necessary representations (VisualizationPipelineWidget,
      PipelineMdiSubwindow) of a visualization pipeline and seamlessly
      switching between them in response to the user's actions (window
      dragging, key presses, etc). As a result, it's now possible to drag
      visualization pipeline widgets out of the MDI area and turn them into
      top-level floating windows.
      62373ebf
  2. 17 Sep, 2013 2 commits
  3. 15 Sep, 2013 1 commit
  4. 14 Sep, 2013 1 commit
  5. 10 Sep, 2013 4 commits
  6. 05 Sep, 2013 1 commit
  7. 04 Sep, 2013 2 commits
  8. 03 Sep, 2013 8 commits
  9. 02 Sep, 2013 2 commits
  10. 29 Aug, 2013 1 commit
    • Christian Schulte zu Berge's avatar
      Branching work to introduce new FBO handling concept: · 42480c65
      Christian Schulte zu Berge authored
       * each VisualizationProcessor manages its own FBO
       * instead of creating a whole new FBO each process(), the processors shall only create and attach textures to the FBO
       * the FramebufferActivationGuard offers automatic (de)activation and detachment of all textures
      
      SimpleRaycaster already uses the new concept, the rest still uses the legacy API
      42480c65
  11. 27 Aug, 2013 1 commit
  12. 23 Aug, 2013 1 commit
  13. 21 Aug, 2013 3 commits
  14. 19 Aug, 2013 2 commits