Search in sources :

Example 6 with Target

use of com.android.tools.idea.uibuilder.scene.target.Target in project android by JetBrains.

the class SceneComponent method addHit.

public void addHit(@NotNull SceneContext sceneTransform, @NotNull ScenePicker picker) {
    if (myDrawState == DrawState.HOVER) {
        myDrawState = DrawState.NORMAL;
    }
    picker.addRect(this, 0, sceneTransform.getSwingX(myCurrentLeft), sceneTransform.getSwingY(myCurrentTop), sceneTransform.getSwingX(myCurrentRight), sceneTransform.getSwingY(myCurrentBottom));
    int num = myTargets.size();
    for (int i = 0; i < num; i++) {
        Target target = myTargets.get(i);
        target.addHit(sceneTransform, picker);
    }
    int childCount = myChildren.size();
    for (int i = 0; i < childCount; i++) {
        SceneComponent child = myChildren.get(i);
        child.addHit(sceneTransform, picker);
    }
}
Also used : ResizeTarget(com.android.tools.idea.uibuilder.scene.target.ResizeTarget) DragDndTarget(com.android.tools.idea.uibuilder.scene.target.DragDndTarget) AnchorTarget(com.android.tools.idea.uibuilder.scene.target.AnchorTarget) Target(com.android.tools.idea.uibuilder.scene.target.Target)

Example 7 with Target

use of com.android.tools.idea.uibuilder.scene.target.Target in project android by JetBrains.

the class SceneComponent method setExpandTargetArea.

public void setExpandTargetArea(boolean expandArea) {
    int count = myTargets.size();
    for (int i = 0; i < count; i++) {
        Target target = myTargets.get(i);
        if (target instanceof AnchorTarget) {
            AnchorTarget anchor = (AnchorTarget) target;
            anchor.setExpandSize(expandArea);
        }
    }
    myScene.needsRebuildList();
}
Also used : ResizeTarget(com.android.tools.idea.uibuilder.scene.target.ResizeTarget) DragDndTarget(com.android.tools.idea.uibuilder.scene.target.DragDndTarget) AnchorTarget(com.android.tools.idea.uibuilder.scene.target.AnchorTarget) Target(com.android.tools.idea.uibuilder.scene.target.Target) AnchorTarget(com.android.tools.idea.uibuilder.scene.target.AnchorTarget)

Example 8 with Target

use of com.android.tools.idea.uibuilder.scene.target.Target in project android by JetBrains.

the class SceneMouseInteraction method mouseDown.

/**
   * Simulate a click on a given resize handle of the component with componentId
   *
   * @param componentId the id of the component we want to click on
   * @param targetClass the class of target we want to click on
   * @param pos         which target to click on
   */
public void mouseDown(String componentId, Class targetClass, int pos) {
    SceneComponent component = myScene.getSceneComponent(componentId);
    if (component != null) {
        ArrayList<Target> targets = component.getTargets();
        int n = 0;
        for (Target target : targets) {
            if (targetClass.isInstance(target)) {
                if (pos == n) {
                    mouseDown(target.getCenterX(), target.getCenterY());
                    return;
                }
                n++;
            }
        }
    }
}
Also used : AnchorTarget(com.android.tools.idea.uibuilder.scene.target.AnchorTarget) Target(com.android.tools.idea.uibuilder.scene.target.Target) ResizeTarget(com.android.tools.idea.uibuilder.scene.target.ResizeTarget)

Aggregations

Target (com.android.tools.idea.uibuilder.scene.target.Target)8 DragDndTarget (com.android.tools.idea.uibuilder.scene.target.DragDndTarget)6 AnchorTarget (com.android.tools.idea.uibuilder.scene.target.AnchorTarget)5 ResizeTarget (com.android.tools.idea.uibuilder.scene.target.ResizeTarget)5 DragTarget (com.android.tools.idea.uibuilder.scene.target.DragTarget)3 NlComponent (com.android.tools.idea.uibuilder.model.NlComponent)1 Nullable (org.jetbrains.annotations.Nullable)1