Keyboard shortcuts in Capella Project Explorer

All the time I work with Capella I ask myself why keyboard shortcuts are not used in Capella Project Eplorer and Table Views.
Why not to use Insert keybord to add new function/requirement and so on.
In most cases default element type that should be added can be obtained from context.
May be I don’t understand something. Can somebody explain me why keyboard shortcuts are not used?

No particular reason… but the team already has a significant backlog, and users never gave this feature a high priority…

Stephane Bonnet wrote on Mon, 22 January 2018 01:26
No particular reason…
I can’t undertand this user position.
From my user point of view keyboard shortcuts should be used in Capella project explorer.
Many users switch to modeling aproach from hierarchical documents.
I always say that modeling tool can help them for example
to CREATE functional decomposition PLUS visualize
hierarchy and data flows on diagrams, easy navigate between elements based on their relationships and so on.
Capella is very good in visualization but not very good in creation of hierarchies.
Users need to have in modeling tool possibility to create hierarchies of elements
the same way as they create topics in hierarchical documents.
Decomposition diagrams not always good in CREATING decompositions. They good to visualize.
Trees should also used to create decompositions.
Using keyboard shortcuts for creating elements in trees makes users much more productive.
Now I have problems with context menus in Capella Project Expororer.
https://forum.mbse-capella.org/t/494/
So I need to find some solution now.
I’ve started tomorrow to create Capella plugin that adds to Capella Explorer possibility
for creating decompostions using keyboard shortcuts.
Today I’ve already have possibility to create the following elements using keyboard

  • system actor + actor part in system context
  • child system function
  • sibling system function
  • child logical function
  • sibling logical function
  • logical component + component part
  • logical actor + part in logical context
    Creating model elements using keyboard I now feel myself much more productive.
    I will share result plugin when it become a little bit mature.

I’ve uploaded initial video demo with keyboard shortcuts usage in Capella for fact creating model elements
https://www.youtube.com/watch?v=izQyB3HSZ2Q
In the video demo I only use 3 keyboard command for all element types

  • Ins - to create sibling element
  • Alt-Ins - to create child element
  • Right Arrow - to show childs of model elements
    I also plan to add commands for changing element level (up and bottom)

I’ve uploaded Eclipse update site with Capella plugin
that adds initial keyboard shortcuts to Capella Project Explorer
https://yadi.sk/d/rx5PzQUh3RfRff
My experience with Eclipse plugin development is not very big.
Now I need some help to enhance usablity of the plugin.
When new element is added into model I need to select new element in Capella Project Explorer.
Now I add sibling element next to the currently selected element.
Now current selection is not changing.
To rename new added element I need to press Down arrow to select it and F2 to rename.
I need new added element to be selected automatically.
To select new element in capella explorer I use ISetSelectionTarget interface
for project explorer view. But in does not work. I miss something and need some help

Your work is interesting and maybe at some point you would be able to submit a patch to the Capella development team si that they can integrate that directly in Capella.
About the user position: From all the Capella users I have seen so far, very few rely intensively on the project explorer to create elements. That probably explains why the request for “add element” shortcuts has never been really strong.

Uploaded updated plugin (version 0.2)
https://yadi.sk/d/IOs23v7q3RgFjg
In this version keyboard shortcuts are provided for the following Capella meta types:

  • all architecture types: OA, SA, LA, PA, EPBS
  • all main element types in all architecture types: Function, Capability, Requirement, Interface, Class, Actor/Part, Component/Part
  • all main package types in all architecture types: FunctionPkg, CapabilityPkg, RequirementPkg, InterfacePkg, DataPkg, EntityPkg,
    ActorPkg
    The folowing keyboard shortcuts are supported in this version:
  • Ins - adds sibling element\package for the selected element\package
  • Alt-Ins - adds child element\package of the same type for the selected element\package
  • Ctrl-Ins - adds child element with default type for selected package

Stephane Bonnet wrote on Mon, 22 January 2018 05:53
Your work is interesting and maybe at some point you would be able to submit a patch to the Capella development team si that they can integrate that directly in Capella.
About the user position: From all the Capella users I have seen so far, very few rely intensively on the project explorer to create elements. That probably explains why the request for “add element” shortcuts has never been really strong.
Good. I am ready to contribute.
And I understand that most users think about models as about creating diagrams.
I try to explain users that models are formal hierarchical documents
that can be created and visualized using diagrams.

Hi,
Thanks for your contibution, it is an interesting feature
To contribute, you just have to :

  • Create a Bugzilla Ticket,
    https://bugs.polarsys.org/enter_bug.cgi?product=Capella
  • Go to :
    Development Environment and follow process to retrieve Capella GIT code repository. (Clone
    https://git.polarsys.org/r/capella/capella)
  • It will be easier if you contribute directly your code in the code of Capella Project Explorer (without adding a new plugin). You can import core/org.polarsys.capella.core.platform.sirius.ui.navigator plugin (The Capella Project Explorer is called in the code ‘navigator’)
  • Add your handler in org.polarsys.capella.core.platform.sirius.ui.navigator.handl ers.
    You can inspire from ShowImpactAnalysisHandler located the same package that inherits from a Capella class AbstractUiHandler providing some methods about selection.
  • Contribute to the plugin.xml of this plugin to add the keys shortcut. org.polarsys.capella.core.platform.sirius.ui.navigator/plugi n.xml
  • Contribute to the documentation about Capella Project Explorer :
    doc\plugins\org.polarsys.capella.ui.doc\html\04. User Interface\4.04. Project Explorer.mediawiki and generate html file running build.xml from the org.polarsys.capella.ui.doc plugin.
  • Push to Gerrit (follow steps here
    Development Environment)
    Thanks !
    Regards
    Philippe