Package org.jdesktop.wonderland.client.scenemanager.event

Examples of org.jdesktop.wonderland.client.scenemanager.event.SelectionEvent


       
        if (policy.isClearedSelection(event) == true) {
            // If we wish to clear the selection, then simply clear out the
            // list and fire an event
            selectedEntityList.clear();
            inputManager.postEvent(new SelectionEvent(new LinkedList(selectedEntityList)));
            return;
        }
        else if (policy.isSingleSelection(event) == true) {
            // issue #1115: ignore the event if it is selecting an object that
            // is already selected
            if (selectedEntityList.contains(entity) == true) {
                // OWL issue #177: send an empty context event to ensure that
                // any visible context menus are hidden in this case
                MouseEvent mouseEvent = (MouseEvent) ((MouseEvent3D) event).getAwtEvent();
                inputManager.postEvent(new ContextEvent(new LinkedList(), mouseEvent));
               
                return;
            }

            // Clear out the list, add the new Entity and fire an event
            selectedEntityList.clear();
            selectedEntityList.add(entity);
            inputManager.postEvent(new SelectionEvent(new LinkedList(selectedEntityList)));
            return;
        }
        else if (policy.isMultiSelection(event) == true) {
            // If the Entity is already selected, then remove it from the
            // selection list. If not already present, then add it
            // Reset the selection possible. If the entity is not selected,
            // then select it (only). If the entity is selected, then do
            // nothing (if it is part of a group of selected entities)
            if (selectedEntityList.contains(entity) == false) {
                selectedEntityList.add(entity);
            }
            else {
                selectedEntityList.remove(entity);
            }
            inputManager.postEvent(new SelectionEvent(new LinkedList(selectedEntityList)));
            return;
        }
        else if (policy.isEnter(event) == true) {
            enterEntity = entity;
            inputManager.postEvent(new EnterExitEvent(entity, true));
        }
        else if (policy.isExit(event) == true) {
            Entity eventEntity = enterEntity;
            enterEntity = null;
            inputManager.postEvent(new EnterExitEvent(eventEntity, false));
        }
        else if (policy.isActivation(event) == true) {
            inputManager.postEvent(new ActivatedEvent(entity));
        }
        else if (policy.isContext(event) == true) {
            // We use the context event to clear the selected entity list first
            selectedEntityList.clear();

            // If there is an entity for the mouse event, then add the entity to
            // the list and pass a Selection event too.
            if (entity != null) {
                selectedEntityList.add(entity);
                LinkedList entityList = new LinkedList(selectedEntityList);
                inputManager.postEvent(new SelectionEvent(entityList));
            }

            // Pass the mouse event for now so we know where the event was
            // fired. We sent this even if the entity is null, so the context
            // menu can be cleared.
View Full Code Here


        if (event instanceof SelectionEvent) {
            // If a selection event, then set the list of entities and re-port
            // the event
            selectedEntityList.clear();
            selectedEntityList.addAll(event.getEntityList());
            inputManager.postEvent(new SelectionEvent(new LinkedList(selectedEntityList)));
            return;
        }

        // If an enter/exit event, then note the Entity we are entering or
        // exiting and repost the event.
        if (event instanceof EnterExitEvent) {
            if (((EnterExitEvent)event).isEnter() == true) {
                enterEntity = entity;
                inputManager.postEvent(new EnterExitEvent(entity, true));
            }
            else {
                Entity eventEntity = enterEntity;
                enterEntity = null;
                inputManager.postEvent(new EnterExitEvent(eventEntity, false));
            }
            return;
        }

        // If an activation event, the simply repost the event
        if (event instanceof ActivatedEvent) {
            inputManager.postEvent(new ActivatedEvent(entity));
            return;
        }

        // If a context event, then set the list of entities associated with
        // the context and re-post the event.
        if (event instanceof ContextEvent) {
            Logger.getLogger(SceneManager.class.getName()).warning("RECEIVED CONTEXT EVENT " +
                    entity.getName());
            // We use the context event to clear the selected entity list first
            selectedEntityList.clear();

            // If there is an entity for the mouse event, then add the entity to
            // the list and pass a Selection event too.
            if (entity != null) {
                selectedEntityList.add(entity);
                LinkedList entityList = new LinkedList(selectedEntityList);
                inputManager.postEvent(new SelectionEvent(entityList));
            }

            // Pass the mouse event for now so we know where the event was
            // fired. We sent this even if the entity is null, so the context
            // menu can be cleared.
View Full Code Here

    /**
     * Clears out the currently selection set of entities.
     */
    public void clearSelection() {
        selectedEntityList.clear();
        InputManager.inputManager().postEvent(new SelectionEvent(new LinkedList(selectedEntityList)));
    }
View Full Code Here

TOP

Related Classes of org.jdesktop.wonderland.client.scenemanager.event.SelectionEvent

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.