Skip to content
Aleš Erjavec edited this page Jul 13, 2015 · 6 revisions

List of functionality to preserve after rebasing the project to use an external orange canvas package.

  1. Scheme workflow model has a working_directory property.

    • -> Moved the property definition into a OASYSScheme subclass.
  2. Scheme workflow model allows cyclic connections.

    • -> Override the relevant methods in OASYSScheme subclass.
    • -> Add support for cyclic connections in base workflow model.
  3. WidgetManager has an extra responsibility of setting the working directory on the created OWWidget instance.

    • -> WidgetManager remains implemented in OASYS so this is not a problem.
  4. WidgetsSignalManager enforces custom signal ordering (OWWidget.process_last flag).

    • -> WidgetsSignalManager remains in OASYS.
  5. Extra undo-able SchemeDocument.setWorkingDirectory method.

    • -> The method is only ever called by the main window. Create the undo command there an push it onto the undo stack.
  6. SplashScreen.showMessage uses sleep after each message is displayed.

    • -> Will be removed for religious reasons.
  7. MenuRegistry and OMenu discovery.

    • -> This will be separated from the WidgetDiscovery, specifically invoked in __main__.py
  8. scheme.readwrite and working_directory save/restore.

    • -> The whole 'ask the user to select a working directory' dance is moved into OASYSMainWindow and the load is done in two passes. First the xml is parsed to retrieve the stored working directory (after this ensure it exists/ask user to change), an new empty workflow instance is created with the working directory set and then populated with readwrite.parse_scheme.
  9. Close/exit if the welcome dialog is closed.

    • -> __main__.py remains in OASYS so this is not a problem.
  10. Workflow info/properties dialog has an extra Working directory edit control.

    • -> Subclass and insert the control into the dialog's layout.
  11. Welcome dialog has no 'Show at startup' check box

    • -> Subclass, find the widget's bottom bar by its object name and hide it.
  12. User preferences/settings dialog and the default working directory.

    • -> Subclass an insert the control into the existing layout.
  13. 'output/default-working-directory' in the config.spec settings.

    • -> the config.spec list is modified on import.
  14. CanvasMainWindow.set_menu_registry

    • -> Implemented in CanvasMainWindow subclass.
  15. CanvasMainWindow.load_scheme returns a QDialog.Status, all methods calling it check or return this value.

    • -> This method signature has also been implemented in orange canvas package.
  16. The canvas graphics NodeItem's styling in selected state, uses a more saturated color.

    • -> Unresolved, needs better selection state indication in orange canvas package.
  17. Hardcoded stylesheet in SchemeEdit's context menu (without it the Plastique style displays the context menu as black text on black background; why?).

    • -> set the default style in OASYS __main__.py (this works i.e. the menu is displayed correctly; probably because the orange stylesheet is set after the style).
    • -> Remove the style override in Orange-Shadow.
  18. preview.scanner.scheme_svg_thumbnail and ignore_working_directory

    • -> See #8
Clone this wiki locally