diff --git a/org.fortiss.af3.platform.raspberry.ui/trunk/plugin.xml b/org.fortiss.af3.platform.raspberry.ui/trunk/plugin.xml index 708b0d2ea4c6e10a6ab0f58fb6b4552bf664e43a..5826e263d3e4aaa0a57f6df115c2f138d81ada03 100644 --- a/org.fortiss.af3.platform.raspberry.ui/trunk/plugin.xml +++ b/org.fortiss.af3.platform.raspberry.ui/trunk/plugin.xml @@ -53,6 +53,9 @@ </modelElementClass> <modelElementClass modelElementClass="org.fortiss.af3.platform.raspberry.model.gamepad.GamepadReceiverBase"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.RumblepadReceiverBase"> </modelElementClass> <modelElementClass modelElementClass="org.fortiss.af3.platform.raspberry.model.brick.UIDUnit"> @@ -169,7 +172,73 @@ modelElementClass="org.fortiss.af3.platform.raspberry.model.brick.ActuatorDigits"> </modelElementClass> </modelElementHandler> -</extension> + <modelElementHandler + handler="org.fortiss.af3.platform.raspberry.ui.handler.RumblepadReceiverHandler"> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonA"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonB"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonX"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonY"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonStart"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonSelect"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonHome"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL1"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL3"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR1"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR3"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.DPadUp"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.DPadDown"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.DPadLeft"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.DPadRight"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.L2_Position"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.R2_Position"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickX_Position"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickY_Position"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickX_Position"> + </modelElementClass> + <modelElementClass + modelElementClass="org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickY_Position"> + </modelElementClass> + </modelElementHandler> + </extension> <extension point="org.eclipse.ui.views.properties.tabbed.propertySections"> <propertySections diff --git a/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/editpart/EditPartFactory.java b/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/editpart/EditPartFactory.java index 24a0eda75bfe43d2bed7ffbb7a50486b2ba3f1db..d1dc2aff474aba65f253e049771fee92d983b757 100644 --- a/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/editpart/EditPartFactory.java +++ b/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/editpart/EditPartFactory.java @@ -26,6 +26,7 @@ import org.fortiss.af3.platform.raspberry.model.CanConnector; import org.fortiss.af3.platform.raspberry.model.RaspberryPi; import org.fortiss.af3.platform.raspberry.model.brick.UIDUnit; import org.fortiss.af3.platform.raspberry.model.gamepad.GamepadReceiverBase; +import org.fortiss.af3.platform.raspberry.model.rumblepad.RumblepadReceiverBase; import org.fortiss.af3.platform.ui.DefaultStyle; import org.fortiss.af3.platform.ui.editpart.generic.ExecutionUnitEditPart; import org.fortiss.af3.platform.ui.editpart.generic.StickyPlatformConnectorUnitEditPart; @@ -61,7 +62,8 @@ public class EditPartFactory implements IEditPartFactory { } else if(model instanceof CanBus) { return new TransmissionUnitDefaultEditPart((CanBus)model); } else if(model instanceof CanConnector || model instanceof ActuatorPWM || - model instanceof GamepadReceiverBase || model instanceof UIDUnit) { + model instanceof GamepadReceiverBase || model instanceof RumblepadReceiverBase || + model instanceof UIDUnit) { return new StickyPlatformConnectorUnitEditPart((PlatformConnectorUnit)model); } return null; diff --git a/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/handler/RumblepadReceiverHandler.java b/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/handler/RumblepadReceiverHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..e4191de315c99ab9b7d17f0fd9b17defebfae35f --- /dev/null +++ b/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/handler/RumblepadReceiverHandler.java @@ -0,0 +1,41 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2011 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.ui.handler; + +import static org.fortiss.af3.platform.raspberry.ui.AF3PlatformRaspberryUIActivator.getImageDescriptor; + +import org.eclipse.jface.resource.ImageDescriptor; +import org.fortiss.af3.platform.raspberry.model.rumblepad.RumblepadReceiverBase; +import org.fortiss.tooling.kernel.ui.extension.base.NamedCommentedModelElementHandlerBase; + +/** + * Handler for {@link RumblepadReceiverBase}s. + * + * @author hoelzl + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating GREEN Hash: D80CF94CBBADB4627AAEDA1F34ABF0A5 + */ +public class RumblepadReceiverHandler extends + NamedCommentedModelElementHandlerBase<RumblepadReceiverBase> { + /** {@inheritDoc} */ + @Override + public ImageDescriptor getIconImageDescriptor() { + return getImageDescriptor("icons/gamepad.png"); + } +} diff --git a/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/prototype/ProtoypeProvider.java b/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/prototype/ProtoypeProvider.java index dd295007c3ca61a81c004b007570880f51b0a1df..42fb85840e3e4a2c22e41585095775fab2abe26d 100644 --- a/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/prototype/ProtoypeProvider.java +++ b/org.fortiss.af3.platform.raspberry.ui/trunk/src/org/fortiss/af3/platform/raspberry/ui/prototype/ProtoypeProvider.java @@ -49,6 +49,21 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonA; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonB; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonHome; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL3; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR3; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonSelect; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonStart; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonX; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonY; +import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadDown; +import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadLeft; +import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadRight; +import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadUp; +import org.fortiss.af3.platform.raspberry.model.rumblepad.L2_Position; +import org.fortiss.af3.platform.raspberry.model.rumblepad.R2_Position; import org.fortiss.af3.platform.raspberry.util.RaspberryModelElementFactory; import org.fortiss.tooling.kernel.extension.base.PrototypeProviderBase; import org.fortiss.tooling.kernel.extension.data.PrototypeCategory; @@ -66,6 +81,8 @@ public class ProtoypeProvider extends PrototypeProviderBase { protected final static String CATEGORY_NAME = "RaspberryPI Platform"; /** Category for gamepad elements. */ protected final static String GAMEPAD = "Gamepad"; + /** Category for rumblepad elements. */ + protected final static String RUMBLEPAD = "Rumblepad"; /** Category for brick elements. */ protected final static String BRICK = "Bricklets"; @@ -76,6 +93,7 @@ public class ProtoypeProvider extends PrototypeProviderBase { registerPrimaryPrototype("RaspberryPi", pi, CATEGORY_NAME); PrototypeCategory prototypeCategory = registerPrototypeCategory(CATEGORY_NAME); registerPrototypeCategory(prototypeCategory, GAMEPAD); + registerPrototypeCategory(prototypeCategory, RUMBLEPAD); registerPrototypeCategory(prototypeCategory, BRICK); CanBus bus = RaspberryModelElementFactory.createCanBus(); @@ -197,5 +215,116 @@ public class ProtoypeProvider extends PrototypeProviderBase { setNodePosition(avZ, 0, 0); setConnectorPosition(avZ, 0, 0); registerPrototype(avZ.getName(), avZ, BRICK); + + org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickX_Position rplsx = + RaspberryModelElementFactory.createRumbleLeftStickX(); + setNodePosition(rplsx, 0, 0); + setConnectorPosition(rplsx, 0, 0); + registerPrototype(rplsx.getName(), rplsx, RUMBLEPAD); + + org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickY_Position rplsy = + RaspberryModelElementFactory.createRumbleLeftStickY(); + setNodePosition(rplsy, 0, 0); + setConnectorPosition(rplsy, 0, 0); + registerPrototype(rplsy.getName(), rplsy, RUMBLEPAD); + + org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickX_Position rprsx = + RaspberryModelElementFactory.createRumbleRightStickX(); + setNodePosition(rprsx, 0, 0); + setConnectorPosition(rprsx, 0, 0); + registerPrototype(rprsx.getName(), rprsx, RUMBLEPAD); + + org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickY_Position rprsy = + RaspberryModelElementFactory.createRumbleRightStickY(); + setNodePosition(rprsy, 0, 0); + setConnectorPosition(rprsy, 0, 0); + registerPrototype(rprsy.getName(), rprsy, RUMBLEPAD); + + org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL1 rpl1 = + RaspberryModelElementFactory.createRumbleButtonL1(); + setNodePosition(rpl1, 0, 0); + setConnectorPosition(rpl1, 0, 0); + registerPrototype(rpl1.getName(), rpl1, RUMBLEPAD); + + org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR1 rpr1 = + RaspberryModelElementFactory.createRumbleButtonR1(); + setNodePosition(rpr1, 0, 0); + setConnectorPosition(rpr1, 0, 0); + registerPrototype(rpr1.getName(), rpr1, RUMBLEPAD); + + L2_Position rpl2 = RaspberryModelElementFactory.createRumbleL2Position(); + setNodePosition(rpl2, 0, 0); + setConnectorPosition(rpl2, 0, 0); + registerPrototype(rpl2.getName(), rpl2, RUMBLEPAD); + + R2_Position rpr2 = RaspberryModelElementFactory.createRumbleR2Position(); + setNodePosition(rpr2, 0, 0); + setConnectorPosition(rpr2, 0, 0); + registerPrototype(rpr2.getName(), rpr2, RUMBLEPAD); + + ButtonL3 rpl3 = RaspberryModelElementFactory.createRumbleButtonL3(); + setNodePosition(rpl3, 0, 0); + setConnectorPosition(rpl3, 0, 0); + registerPrototype(rpl3.getName(), rpl3, RUMBLEPAD); + + ButtonR3 rpr3 = RaspberryModelElementFactory.createRumbleButtonR3(); + setNodePosition(rpr3, 0, 0); + setConnectorPosition(rpr3, 0, 0); + registerPrototype(rpr3.getName(), rpr3, RUMBLEPAD); + + DPadUp rpdpu = RaspberryModelElementFactory.createRumbleDPadUp(); + setNodePosition(rpdpu, 0, 0); + setConnectorPosition(rpdpu, 0, 0); + registerPrototype(rpdpu.getName(), rpdpu, RUMBLEPAD); + + DPadDown rpdpd = RaspberryModelElementFactory.createRumbleDPadDown(); + setNodePosition(rpdpd, 0, 0); + setConnectorPosition(rpdpd, 0, 0); + registerPrototype(rpdpd.getName(), rpdpd, RUMBLEPAD); + + DPadLeft rpdpl = RaspberryModelElementFactory.createRumbleDPadLeft(); + setNodePosition(rpdpl, 0, 0); + setConnectorPosition(rpdpl, 0, 0); + registerPrototype(rpdpl.getName(), rpdpl, RUMBLEPAD); + + DPadRight rpdpr = RaspberryModelElementFactory.createRumbleDPadRight(); + setNodePosition(rpdpr, 0, 0); + setConnectorPosition(rpdpr, 0, 0); + registerPrototype(rpdpr.getName(), rpdpr, RUMBLEPAD); + + ButtonA rpba = RaspberryModelElementFactory.createRumbleButtonA(); + setNodePosition(rpba, 0, 0); + setConnectorPosition(rpba, 0, 0); + registerPrototype(rpba.getName(), rpba, RUMBLEPAD); + + ButtonB rpbb = RaspberryModelElementFactory.createRumbleButtonB(); + setNodePosition(rpbb, 0, 0); + setConnectorPosition(rpbb, 0, 0); + registerPrototype(rpbb.getName(), rpbb, RUMBLEPAD); + + ButtonX rpbx = RaspberryModelElementFactory.createRumbleButtonX(); + setNodePosition(rpbx, 0, 0); + setConnectorPosition(rpbx, 0, 0); + registerPrototype(rpbx.getName(), rpbx, RUMBLEPAD); + + ButtonY rpby = RaspberryModelElementFactory.createRumbleButtonY(); + setNodePosition(rpby, 0, 0); + setConnectorPosition(rpby, 0, 0); + registerPrototype(rpby.getName(), rpby, RUMBLEPAD); + + ButtonStart rpbst = RaspberryModelElementFactory.createRumbleButtonStart(); + setNodePosition(rpbst, 0, 0); + setConnectorPosition(rpbst, 0, 0); + registerPrototype(rpbst.getName(), rpbst, RUMBLEPAD); + + ButtonSelect rpbse = RaspberryModelElementFactory.createRumbleButtonSelect(); + setNodePosition(rpbse, 0, 0); + setConnectorPosition(rpbse, 0, 0); + registerPrototype(rpbse.getName(), rpbse, RUMBLEPAD); + + ButtonHome rpbh = RaspberryModelElementFactory.createRumbleButtonHome(); + setNodePosition(rpbh, 0, 0); + setConnectorPosition(rpbh, 0, 0); + registerPrototype(rpbh.getName(), rpbh, RUMBLEPAD); } } diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/compose/RaspberryPiCompositor.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/compose/RaspberryPiCompositor.java index 798a89dc7f0d531246f87ab55ea940d46aec6e99..8363aad9b5435c7e88ad916c1a73888566540c40 100644 --- a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/compose/RaspberryPiCompositor.java +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/compose/RaspberryPiCompositor.java @@ -46,6 +46,7 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position; +import org.fortiss.af3.platform.raspberry.model.rumblepad.RumblepadReceiverBase; import org.fortiss.tooling.kernel.extension.data.IElementCompositionContext; import org.fortiss.tooling.kernel.extension.data.Prototype; @@ -85,12 +86,12 @@ public class RaspberryPiCompositor extends LaserRangeSensor.class, AccelerationXSensor.class, AccelerationYSensor.class, AccelerationZSensor.class, AngularVelocityXSensor.class, AngularVelocityYSensor.class, - AngularVelocityZSensor.class, ActuatorDigits.class); + AngularVelocityZSensor.class, ActuatorDigits.class, + RumblepadReceiverBase.class); if(container != null) { final boolean instanceOfAny = isInstanceOfAny(container, RaspberryPi.class); return instanceOfAny && instanceOfAny2; } return instanceOfAny2; } - } diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/util/RaspberryModelElementFactory.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/util/RaspberryModelElementFactory.java index 8b756a0ad902bdade30fce6ce18c7c67d130815d..3480010180b6cc373618f1b37c152fbcfd90b30a 100644 --- a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/util/RaspberryModelElementFactory.java +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/util/RaspberryModelElementFactory.java @@ -47,6 +47,22 @@ import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position; import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonA; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonB; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonHome; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL3; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR3; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonSelect; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonStart; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonX; +import org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonY; +import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadDown; +import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadLeft; +import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadRight; +import org.fortiss.af3.platform.raspberry.model.rumblepad.DPadUp; +import org.fortiss.af3.platform.raspberry.model.rumblepad.L2_Position; +import org.fortiss.af3.platform.raspberry.model.rumblepad.R2_Position; +import org.fortiss.af3.platform.raspberry.model.rumblepad.RumblepadFactory; import org.fortiss.tooling.base.utils.LayoutModelElementFactory; /** @@ -264,4 +280,184 @@ public class RaspberryModelElementFactory { createConnectorLayout(ad); return ad; } + + /** Creates a {@link ButtonA}. */ + public static ButtonA createRumbleButtonA() { + ButtonA button = RumblepadFactory.eINSTANCE.createButtonA(); + button.setName("ButtonA"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link ButtonA}. */ + public static ButtonB createRumbleButtonB() { + ButtonB button = RumblepadFactory.eINSTANCE.createButtonB(); + button.setName("ButtonB"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link ButtonA}. */ + public static ButtonX createRumbleButtonX() { + ButtonX button = RumblepadFactory.eINSTANCE.createButtonX(); + button.setName("ButtonX"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link ButtonY}. */ + public static ButtonY createRumbleButtonY() { + ButtonY button = RumblepadFactory.eINSTANCE.createButtonY(); + button.setName("ButtonY"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link ButtonStart}. */ + public static ButtonStart createRumbleButtonStart() { + ButtonStart button = RumblepadFactory.eINSTANCE.createButtonStart(); + button.setName("ButtonStart"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link ButtonSelect}. */ + public static ButtonSelect createRumbleButtonSelect() { + ButtonSelect button = RumblepadFactory.eINSTANCE.createButtonSelect(); + button.setName("ButtonSelect"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link ButtonHome}. */ + public static ButtonHome createRumbleButtonHome() { + ButtonHome button = RumblepadFactory.eINSTANCE.createButtonHome(); + button.setName("ButtonHome"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL1}. */ + public static org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL1 + createRumbleButtonL1() { + org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonL1 button = + RumblepadFactory.eINSTANCE.createButtonL1(); + button.setName("ButtonL1"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link ButtonL3}. */ + public static ButtonL3 createRumbleButtonL3() { + ButtonL3 button = RumblepadFactory.eINSTANCE.createButtonL3(); + button.setName("ButtonL3"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR1}. */ + public static org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR1 + createRumbleButtonR1() { + org.fortiss.af3.platform.raspberry.model.rumblepad.ButtonR1 button = + RumblepadFactory.eINSTANCE.createButtonR1(); + button.setName("ButtonR1"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link ButtonR3}. */ + public static ButtonR3 createRumbleButtonR3() { + ButtonR3 button = RumblepadFactory.eINSTANCE.createButtonR3(); + button.setName("ButtonR3"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link DPadUp}. */ + public static DPadUp createRumbleDPadUp() { + DPadUp button = RumblepadFactory.eINSTANCE.createDPadUp(); + button.setName("DPadUp"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link DPadDown}. */ + public static DPadDown createRumbleDPadDown() { + DPadDown button = RumblepadFactory.eINSTANCE.createDPadDown(); + button.setName("DPadDown"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link DPadLeft}. */ + public static DPadLeft createRumbleDPadLeft() { + DPadLeft button = RumblepadFactory.eINSTANCE.createDPadLeft(); + button.setName("DPadLeft"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link DPadRight}. */ + public static DPadRight createRumbleDPadRight() { + DPadRight button = RumblepadFactory.eINSTANCE.createDPadRight(); + button.setName("DPadRight"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickX_Position}. */ + public static org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickX_Position + createRumbleLeftStickX() { + org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickX_Position button = + RumblepadFactory.eINSTANCE.createLeft_StickX_Position(); + button.setName("Left_StickX"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickY_Position}. */ + public static org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickY_Position + createRumbleLeftStickY() { + org.fortiss.af3.platform.raspberry.model.rumblepad.Left_StickY_Position button = + RumblepadFactory.eINSTANCE.createLeft_StickY_Position(); + button.setName("Left_StickY"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickX_Position}. */ + public static org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickX_Position + createRumbleRightStickX() { + org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickX_Position button = + RumblepadFactory.eINSTANCE.createRight_StickX_Position(); + button.setName("Right_StickX"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickY_Position}. */ + public static org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickY_Position + createRumbleRightStickY() { + org.fortiss.af3.platform.raspberry.model.rumblepad.Right_StickY_Position button = + RumblepadFactory.eINSTANCE.createRight_StickY_Position(); + button.setName("Right_StickY"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link L2_Position}. */ + public static L2_Position createRumbleL2Position() { + L2_Position button = RumblepadFactory.eINSTANCE.createL2_Position(); + button.setName("L2Position"); + createConnectorLayout(button); + return button; + } + + /** Creates a {@link R2_Position}. */ + public static R2_Position createRumbleR2Position() { + R2_Position button = RumblepadFactory.eINSTANCE.createR2_Position(); + button.setName("R2Position"); + createConnectorLayout(button); + return button; + } }