1. 14 Apr, 2022 2 commits
  2. 17 Jan, 2022 1 commit
  3. 14 Jan, 2022 1 commit
  4. 12 Jan, 2022 1 commit
  5. 10 Jan, 2022 1 commit
  6. 15 Jun, 2021 1 commit
  7. 11 Jun, 2021 1 commit
  8. 04 Jun, 2021 1 commit
  9. 03 May, 2021 2 commits
  10. 22 Apr, 2021 1 commit
  11. 21 Apr, 2021 1 commit
    • Steven Pehrson's avatar
      Handle sub-menu's and keyboard navigation · ea5b256b
      Steven Pehrson authored
      What I mean by sub-menu is when one of the QActions in a QMenu is a
      Keyboard navigation is using keyboard accelearators, or using the arrow
      keys to navigate the QMenu.
      Here is an example widget that demonstrates when these features are
      class QMenuTester : public QLabel
          setText( "Right-click me" );
        void contextMenuEvent( QContextMenuEvent* event ) override
          QMenu submenu( "Sub-Menu 1" );
          submenu.setObjectName( "mSubMenu1" );
          auto action1 = submenu.addAction( "&Action in sub-menu 1" );
          action1->setShortcut( QKeySequence( Qt::CTRL + Qt::Key_0 ));
          QMenu submenu2( "Sub-Menu 2 (added via action)" );
          submenu2.setObjectName( "mSubMenu2FromAction" );
          auto action = submenu2.addAction( "From action added sub-menu" );
          submenu.addAction( submenu2.menuAction() );
          auto submenu2b = submenu.addMenu( "Sub-Menu 2 (Added directly" );
          submenu2b->setObjectName( "mSubMenu2AddedDirectly" );
          submenu2b->addAction( "From directly added sub-menu" );
          QList< QAction* > actions;
          actions.append( new QAction( "Action 1", this ) );
          actions.append( submenu.menuAction() );
          QMenu::exec( actions, event->globalPos() );
  12. 30 Mar, 2021 1 commit
  13. 08 Mar, 2021 1 commit
  14. 05 Mar, 2021 3 commits
  15. 23 Feb, 2021 5 commits
  16. 08 Dec, 2020 1 commit
  17. 05 Dec, 2020 1 commit
  18. 23 Nov, 2020 9 commits
    • Steven Pehrson's avatar
      Handle when no model is set yet and when the model is changed · 2c94823c
      Steven Pehrson authored
      When there is no model, there is no selectionModel either. Also when
      setting the model (or the selectionModel directly) we need to reconnect
      the selectionModel signals.
    • Steven Pehrson's avatar
      Block recording commands using a "BlockRecordCommands" dynamic property · e7594c12
      Steven Pehrson authored
      The motivation for this is to avoid recording commands that are
      triggered programmatically. Many translators connect to signals that are
      fired both when a user interacts with the widget and when methods are
      called by the programmer.  For example the
      pqAbstractItemViewEventTranslatorBase connects to the currentChanged
      Recording programmatic events is problematic because the previous
      command in the script has already triggered the recorded programmatic
      changes.  This unneessarily complicates the script and also causes the
      programmatic commands to be executed twice.  I also encountered a case
      where programmatic events were recorded *before* the user event which
      created an invalid script.
    • Steven Pehrson's avatar
      Improve special handling of tabified QDockWidgets · 211eace0
      Steven Pehrson authored
      The previous approach relied on finding an arbitrary QTabBar then
      looking for siblings of that QTabBar. However there were several
      drawbacks of that approach
      1) The arbitrary QTabBar may not be discoverable using the unnamed
      object naming scheme.  This was the case in at least one instance where
      the object was named 1QTabBar16 when recorded on Linux, but when played
      back on Windows there weren't 16 hidden QTabBar children of QMainWindow.
      2) The previous approach was documented to be specifically for
      QDockWidgets, but was not guarded as such.  i.e. Anytime the named tab
      is not found it will revert to looking for siblings even for named
      objects or unnamed QTabBars that aren't children of QMainWindow.
      This commit also fixes incorrect qCritical() usage.  Since qCritical()
      causes program termination, there must be only one call with the full
      message, rather than multiple calls with partial messages.  I suspect
      Paraview installs a qtMessageHandler that doesn't cause program
      termination since there is also an error flag.
    • Steven Pehrson's avatar
      Fix opening context menu on abstract item view items · b6ad2b50
      Steven Pehrson authored
      Fixed by using an openContextMenu command instead of relying on lower
      level events.
    • Steven Pehrson's avatar
      Improve error message when a QAction cannot be found in a menu · 9a8192c1
      Steven Pehrson authored
      Report which actions are available in the QMenu so that the macro can
      easily be fixed.
    • Steven Pehrson's avatar
    • Steven Pehrson's avatar
      Remove unused Value member · 9ee51fbc
      Steven Pehrson authored
    • Steven Pehrson's avatar
      Allow callers to interact with and monitor player dialog · 309ef7ce
      Steven Pehrson authored
      My use case was to react to the player dialog closing.
    • Steven Pehrson's avatar
      Fix pqTestUtility test using clean directory comparison · 121bdc8f
      Steven Pehrson authored
      The directories were equivalent, but one was represented by '${HOME}/',
      and the other was '${HOME}/.'
  19. 27 Oct, 2020 1 commit
  20. 09 Oct, 2020 2 commits
  21. 29 Jun, 2020 1 commit
  22. 25 Jun, 2020 1 commit
    • Christos Tsolakis's avatar
      Added ability to check widget's size and aspect ratio. · 59ac2a76
      Christos Tsolakis authored
      check if the widget size is at least a given size:
      <pqevent object=".../MultiViewWidget1" command="sizeGreaterOrEqual"
      arguments="640,400" />
      check if the widget aspect ratio matches:
      <pqevent object=".../MultiViewWidget1" command="aspectRatio"
      arguments="1.6" />
  23. 09 Feb, 2020 1 commit