You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Unable to render {include} The included page could not be found.

Project Explorer is a plugin in DelftShell used to visualize Project in a hierarchical form. It uses tree view control interfaces and implementation described here: Tree view (XtraTreeList, Windows.Forms TreeView) control.

Current functionality:

  • visualize items of the project in a tree view form:
    • folders
    • tasks
    • data
      • time series
      • maps
      • model schematizations
      • ...
  • drag drop of project items
  • update of nodes based on a project status (model is running, data is invalid, item was changed, etc.)
  • doubleclick, rightclick actions
  • context menus, specific to project.

Refactoring notes

functionality that should have a new place:
Removing views when the data is removed from folders, scenario's, models

TreeView implementation

ProjectTreeView is a view for project, project treeview manages subscription to changes in the project. Project treeview also adds specific nodepresenters to the treeview that serve as presenter/controller to display nodes for specific dataobjects.

Role of specific items in the class diagram:

  • Project: dataobject
  • Presenters: controller/presenter
  • TreeView, ProjectTreeView: View

Context menus in project explorer

How to implement menus in project explorer? For now we reused the existing context menus, but modified calls to projectguiservice, modelguiservice and taskguiservice (parameterless, so they can become commands).
Next step is to supply contextmenus/contextmenu items through configuration, because we want to enable plugins to provide their own contextmenu for specific data objects.

  • No labels