Skip to content
Snippets Groups Projects
Commit 66d4e5ff authored by Simon Barner's avatar Simon Barner
Browse files

Implement expert mode filter to "Model Elements" library

* Filters prototypes via IModelElementHandler.hiddenInNonExpertView()

Issue-ref: 4242
Issue-URL: af3#4242



Signed-off-by: default avatarSimon Barner <barner@fortiss.org>
parent 0083d70b
No related branches found
No related tags found
1 merge request!1974242: Implement expert mode filter to "Model Elements" library
Pipeline #37243 passed
Pipeline: maven-releng

#37244

    DoubleClick.java a94d27299814a93b0d8914050a5da7378a7eccd1 GREEN
    GenericNewMenu.java 7e0dd435cb5ca6d4b486235ec17eef3e5c7aa5f6 GREEN
    LinkWithEditorPartListener.java c5ab74424378e7b158a805c4dd14fc03c8abeded GREEN
    ModelElementsView.java 412cd549f6b3c764a0a842dd3b852563a5496201 GREEN
    ModelElementsView.java bc97ed1edbfa4473d23cbbb71d16f8eb0249bb73 YELLOW
    NavigatorNewMenu.java a35e391960d1dacbe7f77982e53e1891e9382d5a GREEN
    NavigatorTreeContentComparator.java d9f1354cfdff78b104b28887d2397e5ca0e9755b GREEN
    NavigatorTreeContentProvider.java 8162138aab09b2cf833cf5f90ff6ab1fc3edc4d8 GREEN
    ......
    ......@@ -35,10 +35,12 @@ import org.fortiss.tooling.kernel.extension.data.Prototype;
    import org.fortiss.tooling.kernel.extension.data.PrototypeCategory;
    import org.fortiss.tooling.kernel.internal.PrototypeService;
    import org.fortiss.tooling.kernel.service.IPrototypeService;
    import org.fortiss.tooling.kernel.ui.extension.IModelElementHandler;
    import org.fortiss.tooling.kernel.ui.extension.base.EditorBase;
    import org.fortiss.tooling.kernel.ui.internal.editor.ExtendableMultiPageEditor;
    import org.fortiss.tooling.kernel.ui.listener.ExtendableMultiPageEditorPageChangeListener;
    import org.fortiss.tooling.kernel.ui.service.IModelElementHandlerService;
    import org.fortiss.tooling.kernel.ui.service.INavigatorService;
    import javafx.scene.Node;
    import javafx.scene.Scene;
    ......@@ -175,13 +177,24 @@ public final class ModelElementsView extends FXViewPart {
    return false;
    }
    if(supportedBaseClasses.contains(element)) {
    if(filterValue == null || "".equals(filterValue)) {
    return true;
    }
    if(element instanceof Prototype) {
    boolean isExpertViewActive =
    INavigatorService.getInstance().isExpertViewActive();
    Prototype proto = (Prototype)element;
    IModelElementHandlerService mhs = IModelElementHandlerService.getInstance();
    IModelElementHandler<EObject> handler =
    mhs.getModelElementHandler(proto.getPrototype());
    if(!isExpertViewActive && handler.hiddenInNonExpertView()) {
    return false;
    }
    if(filterValue == null || "".equals(filterValue)) {
    return true;
    }
    return proto.getName().toLowerCase().contains(filterValue.toLowerCase());
    }
    throw new RuntimeException("Model Elements view: encountered unexpected type: " +
    element.getClass().getSimpleName());
    }
    return false;
    }
    ......
    0% Loading or .
    You are about to add 0 people to the discussion. Proceed with caution.
    Finish editing this message first!
    Please register or to comment