### Eclipse Workspace Patch 1.0 #P org.eclipse.gmf.examples.runtime.diagram.logic Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/LEDEditPart.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/LEDEditPart.java,v retrieving revision 1.10 diff -u -r1.10 LEDEditPart.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/LEDEditPart.java 23 Jan 2006 20:55:23 -0000 1.10 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/LEDEditPart.java 22 Mar 2006 21:18:40 -0000 @@ -26,10 +26,10 @@ import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.LEDFigure; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.TerminalFigure; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.TopTerminalFigure; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.NonResizableEditPolicyEx; import org.eclipse.gmf.runtime.draw2d.ui.mapmode.IMapMode; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/CircuitEditPart.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/CircuitEditPart.java,v retrieving revision 1.7 diff -u -r1.7 CircuitEditPart.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/CircuitEditPart.java 23 Jan 2006 20:55:23 -0000 1.7 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/CircuitEditPart.java 22 Mar 2006 21:18:40 -0000 @@ -23,8 +23,8 @@ import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.CircuitFigure; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.TerminalFigure; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.TopTerminalFigure; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil; import org.eclipse.gmf.runtime.draw2d.ui.figures.ConstrainedToolbarLayout; import org.eclipse.gmf.runtime.draw2d.ui.mapmode.IMapMode; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/LogicGateEditPart.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/LogicGateEditPart.java,v retrieving revision 1.10 diff -u -r1.10 LogicGateEditPart.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/LogicGateEditPart.java 23 Jan 2006 20:55:23 -0000 1.10 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editparts/LogicGateEditPart.java 22 Mar 2006 21:18:41 -0000 @@ -28,10 +28,10 @@ import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.OrGateTerminalFigure; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.OutputTerminalFigure; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.figures.XOrGateFigure; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.NonResizableEditPolicyEx; import org.eclipse.gmf.runtime.diagram.ui.figures.BorderItemLocator; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/TerminalEditHelper.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/TerminalEditHelper.java,v retrieving revision 1.1 diff -u -r1.1 TerminalEditHelper.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/TerminalEditHelper.java 7 Mar 2006 02:40:38 -0000 1.1 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/TerminalEditHelper.java 22 Mar 2006 21:18:40 -0000 @@ -14,7 +14,7 @@ import java.util.Collection; import org.eclipse.emf.ecore.EReference; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; import org.eclipse.gmf.runtime.common.core.command.ICommand; import org.eclipse.gmf.runtime.emf.core.util.EMFCoreUtil; import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyDependentsRequest; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/HalfAdderAdvice.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/HalfAdderAdvice.java,v retrieving revision 1.2 diff -u -r1.2 HalfAdderAdvice.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/HalfAdderAdvice.java 13 Feb 2006 19:12:10 -0000 1.2 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/HalfAdderAdvice.java 22 Mar 2006 21:18:40 -0000 @@ -13,16 +13,16 @@ import java.util.List; import org.eclipse.core.commands.ExecutionException; -import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IAdaptable; +import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.ConfigureLogicElementCommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.util.LogicSemanticType; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util.LogicSemanticType; import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.gmf.runtime.common.core.command.ICommand; import org.eclipse.gmf.runtime.emf.type.core.edithelper.AbstractEditHelperAdvice; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/WireEditHelper.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/WireEditHelper.java,v retrieving revision 1.4 diff -u -r1.4 WireEditHelper.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/WireEditHelper.java 13 Feb 2006 19:12:10 -0000 1.4 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/WireEditHelper.java 22 Mar 2006 21:18:40 -0000 @@ -12,9 +12,9 @@ import org.eclipse.emf.ecore.EObject; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.ReorientWireCommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; import org.eclipse.gmf.runtime.common.core.command.ICommand; import org.eclipse.gmf.runtime.emf.core.util.EMFCoreUtil; import org.eclipse.gmf.runtime.emf.type.core.commands.GetEditContextCommand; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/LEDEditHelper.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/LEDEditHelper.java,v retrieving revision 1.3 diff -u -r1.3 LEDEditHelper.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/LEDEditHelper.java 13 Feb 2006 19:12:10 -0000 1.3 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/LEDEditHelper.java 22 Mar 2006 21:18:40 -0000 @@ -12,14 +12,13 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal.edithelpers; import org.eclipse.core.commands.ExecutionException; -import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IAdaptable; - +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.ConfigureLogicElementCommand; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.gmf.runtime.common.core.command.ICommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.ConfigureLogicElementCommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; import org.eclipse.gmf.runtime.emf.type.core.requests.ConfigureRequest; /** Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/GateEditHelper.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/GateEditHelper.java,v retrieving revision 1.3 diff -u -r1.3 GateEditHelper.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/GateEditHelper.java 13 Feb 2006 19:12:10 -0000 1.3 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/GateEditHelper.java 22 Mar 2006 21:18:40 -0000 @@ -12,14 +12,13 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal.edithelpers; import org.eclipse.core.commands.ExecutionException; -import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IAdaptable; - +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.ConfigureLogicElementCommand; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.gmf.runtime.common.core.command.ICommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.ConfigureLogicElementCommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; import org.eclipse.gmf.runtime.emf.type.core.requests.ConfigureRequest; /** Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/ContainerElementEditHelper.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/ContainerElementEditHelper.java,v retrieving revision 1.4 diff -u -r1.4 ContainerElementEditHelper.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/ContainerElementEditHelper.java 16 Feb 2006 18:48:33 -0000 1.4 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/ContainerElementEditHelper.java 22 Mar 2006 21:18:40 -0000 @@ -12,10 +12,10 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal.edithelpers; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.CreateWireCommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.util.LogicSemanticType; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util.LogicSemanticType; import org.eclipse.gmf.runtime.common.core.command.ICommand; import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest; import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/CircuitEditHelper.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/CircuitEditHelper.java,v retrieving revision 1.3 diff -u -r1.3 CircuitEditHelper.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/CircuitEditHelper.java 13 Feb 2006 19:12:10 -0000 1.3 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/edithelpers/CircuitEditHelper.java 22 Mar 2006 21:18:40 -0000 @@ -12,14 +12,13 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal.edithelpers; import org.eclipse.core.commands.ExecutionException; -import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IAdaptable; - +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.ConfigureLogicElementCommand; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.gmf.runtime.common.core.command.ICommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands.ConfigureLogicElementCommand; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; import org.eclipse.gmf.runtime.emf.type.core.requests.ConfigureRequest; /** Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/ReorientWireCommand.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/ReorientWireCommand.java,v retrieving revision 1.3 diff -u -r1.3 ReorientWireCommand.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/ReorientWireCommand.java 13 Feb 2006 19:12:10 -0000 1.3 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/ReorientWireCommand.java 22 Mar 2006 21:18:40 -0000 @@ -12,14 +12,13 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands; import org.eclipse.core.commands.ExecutionException; -import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IAdaptable; +import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.emf.ecore.EObject; - +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire; import org.eclipse.gmf.runtime.common.core.command.CommandResult; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; import org.eclipse.gmf.runtime.emf.type.core.commands.EditElementCommand; import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/CreateWireCommand.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/CreateWireCommand.java,v retrieving revision 1.4 diff -u -r1.4 CreateWireCommand.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/CreateWireCommand.java 13 Feb 2006 19:12:10 -0000 1.4 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/CreateWireCommand.java 22 Mar 2006 21:18:40 -0000 @@ -12,10 +12,10 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal.commands; import org.eclipse.emf.ecore.EObject; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire; import org.eclipse.gmf.runtime.emf.core.util.EMFCoreUtil; import org.eclipse.gmf.runtime.emf.type.core.commands.CreateRelationshipCommand; import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/ConfigureLogicElementCommand.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/ConfigureLogicElementCommand.java,v retrieving revision 1.4 diff -u -r1.4 ConfigureLogicElementCommand.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/ConfigureLogicElementCommand.java 13 Feb 2006 19:12:10 -0000 1.4 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/commands/ConfigureLogicElementCommand.java 22 Mar 2006 21:18:40 -0000 @@ -18,16 +18,16 @@ import org.eclipse.gmf.examples.runtime.diagram.logic.internal.LogicDiagramDebugOptions; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.LogicDiagramPlugin; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.LogicDiagramStatusCodes; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.util.LogicSemanticType; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util.LogicSemanticType; import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.gmf.runtime.common.core.command.ICommand; import org.eclipse.gmf.runtime.common.core.util.Log; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicEditPartProvider.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicEditPartProvider.java,v retrieving revision 1.5 diff -u -r1.5 LogicEditPartProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicEditPartProvider.java 7 Feb 2006 15:19:18 -0000 1.5 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicEditPartProvider.java 22 Mar 2006 21:18:41 -0000 @@ -15,16 +15,15 @@ import java.util.Map; import org.eclipse.emf.ecore.EClass; - import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.CircuitEditPart; -import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.TerminalEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LEDEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LogicFlowCompartmentEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LogicFlowContainerEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LogicGateEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LogicShapeCompartmentEditPart; +import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.TerminalEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.WireEditPart; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; import org.eclipse.gmf.runtime.diagram.ui.editparts.DiagramEditPart; import org.eclipse.gmf.runtime.diagram.ui.services.editpart.AbstractEditPartProvider; import org.eclipse.gmf.runtime.notation.View; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicViewProvider.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicViewProvider.java,v retrieving revision 1.7 diff -u -r1.7 LogicViewProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicViewProvider.java 7 Feb 2006 15:19:18 -0000 1.7 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicViewProvider.java 22 Mar 2006 21:18:41 -0000 @@ -25,7 +25,7 @@ import org.eclipse.gmf.examples.runtime.diagram.logic.internal.views.factories.LogicShapeCompartmentViewFactory; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.views.factories.OrGateViewFactory; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.views.factories.XORGateViewFactory; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; import org.eclipse.gmf.runtime.diagram.core.providers.AbstractViewProvider; import org.eclipse.gmf.runtime.diagram.ui.view.factories.ConnectionViewFactory; import org.eclipse.gmf.runtime.diagram.ui.view.factories.DiagramViewFactory; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicPaletteFactory.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicPaletteFactory.java,v retrieving revision 1.5 diff -u -r1.5 LogicPaletteFactory.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicPaletteFactory.java 2 Nov 2005 23:29:26 -0000 1.5 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicPaletteFactory.java 22 Mar 2006 21:18:41 -0000 @@ -15,8 +15,7 @@ import java.util.Map; import org.eclipse.gef.Tool; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.util.LogicSemanticType; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util.LogicSemanticType; import org.eclipse.gmf.runtime.diagram.ui.services.palette.PaletteFactory; import org.eclipse.gmf.runtime.diagram.ui.tools.ConnectionCreationTool; import org.eclipse.gmf.runtime.diagram.ui.tools.CreationTool; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicModelingAssistantProvider.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicModelingAssistantProvider.java,v retrieving revision 1.3 diff -u -r1.3 LogicModelingAssistantProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicModelingAssistantProvider.java 2 Nov 2005 23:29:26 -0000 1.3 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/providers/LogicModelingAssistantProvider.java 22 Mar 2006 21:18:41 -0000 @@ -16,14 +16,13 @@ import java.util.List; import org.eclipse.core.runtime.IAdaptable; - import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.ITerminalOwnerEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LogicFlowCompartmentEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LogicShapeCompartmentEditPart; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.util.LogicSemanticType; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util.LogicSemanticType; import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart; -import org.eclipse.gmf.runtime.emf.ui.services.modelingassistant.ModelingAssistantProvider; import org.eclipse.gmf.runtime.emf.type.core.IElementType; +import org.eclipse.gmf.runtime.emf.ui.services.modelingassistant.ModelingAssistantProvider; /** * Provides modeling assistant services for logic diagrams. Index: META-INF/MANIFEST.MF =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/META-INF/MANIFEST.MF,v retrieving revision 1.13 diff -u -r1.13 MANIFEST.MF --- META-INF/MANIFEST.MF 8 Feb 2006 14:55:15 -0000 1.13 +++ META-INF/MANIFEST.MF 22 Mar 2006 21:18:39 -0000 @@ -43,6 +43,8 @@ org.eclipse.gmf.examples.runtime.diagram.logic.model.edit, org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide, org.eclipse.gmf.runtime.diagram.ui.providers.ide, - org.eclipse.gmf.runtime.diagram.ui.render + org.eclipse.gmf.runtime.diagram.ui.render, + org.eclipse.gmf.runtime.common.ui.services.dnd, + org.eclipse.emf.edit.ui Eclipse-LazyStart: true Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/LEDEditPolicy.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/LEDEditPolicy.java,v retrieving revision 1.5 diff -u -r1.5 LEDEditPolicy.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/LEDEditPolicy.java 28 Feb 2006 02:31:05 -0000 1.5 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/LEDEditPolicy.java 22 Mar 2006 21:18:41 -0000 @@ -19,7 +19,7 @@ import org.eclipse.gef.EditPart; import org.eclipse.gef.Request; import org.eclipse.gef.commands.Command; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED; import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.gmf.runtime.diagram.ui.commands.EtoolsProxyCommand; import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/TerminalCanonicalEditPolicy.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/TerminalCanonicalEditPolicy.java,v retrieving revision 1.8 diff -u -r1.8 TerminalCanonicalEditPolicy.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/TerminalCanonicalEditPolicy.java 13 Feb 2006 19:12:10 -0000 1.8 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/TerminalCanonicalEditPolicy.java 22 Mar 2006 21:18:41 -0000 @@ -17,13 +17,14 @@ import org.eclipse.core.runtime.IAdaptable; import org.eclipse.draw2d.geometry.Point; +import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.transaction.TransactionalEditingDomain; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.ITerminalOwnerEditPart; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.l10n.ExampleDiagramLogicMessages; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.providers.LogicConstants; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; import org.eclipse.gmf.runtime.common.core.command.CompositeCommand; import org.eclipse.gmf.runtime.common.core.command.ICommand; import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil; @@ -59,14 +60,6 @@ List theInput = logicElement.getInputTerminals(); List theOutput = logicElement.getOutputTerminals(); - int icnt = theInput.size(); - int ocnt = theOutput.size(); - - if(icnt < 1 || ocnt < 1) - { - return Collections.EMPTY_LIST; - } - theElements.addAll(theInput); theElements.addAll(theOutput); } @@ -116,5 +109,5 @@ cc.compose(boundsCommand); return cc; - } + } } Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/CircuitCompartmentCanonicalEditPolicy.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/CircuitCompartmentCanonicalEditPolicy.java,v retrieving revision 1.5 diff -u -r1.5 CircuitCompartmentCanonicalEditPolicy.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/CircuitCompartmentCanonicalEditPolicy.java 6 Mar 2006 21:32:50 -0000 1.5 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/editpolicies/CircuitCompartmentCanonicalEditPolicy.java 22 Mar 2006 21:18:41 -0000 @@ -18,9 +18,9 @@ import org.eclipse.emf.common.util.UniqueEList; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.util.EcoreUtil; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.CanonicalConnectionEditPolicy; import org.eclipse.gmf.runtime.notation.View; Index: plugin.xml =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/plugin.xml,v retrieving revision 1.18 diff -u -r1.18 plugin.xml --- plugin.xml 7 Mar 2006 02:40:38 -0000 1.18 +++ plugin.xml 22 Mar 2006 21:18:39 -0000 @@ -12,7 +12,7 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -204,7 +243,7 @@ - + @@ -407,4 +446,10 @@ + + + Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/l10n/ExampleDiagramLogicMessages.properties =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/l10n/ExampleDiagramLogicMessages.properties,v retrieving revision 1.1 diff -u -r1.1 ExampleDiagramLogicMessages.properties --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/l10n/ExampleDiagramLogicMessages.properties 25 Nov 2005 19:37:56 -0000 1.1 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/l10n/ExampleDiagramLogicMessages.properties 22 Mar 2006 21:18:41 -0000 @@ -26,6 +26,9 @@ CreationWizard_New_Logic_Diagram=New Logic Diagram LogicWizardPage_Title=Create Logic Diagram LogicWizardPage_Description=Create a new logic diagram. +LogicWizardPage_StoreSemanticsSeparately=Store semantics in a separate semantic resource +LogicWizardPage_BrowseSemanticResource=Browse... +LogicWizardPage_BrowseSemanticDialogTitle=Semantic Resource Selection # --- Topic Diagram --- LogicTopicDiagramEditor_Unable_To_Save_Viz_Diagram_Title=Unable to Save Diagram. Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/l10n/ExampleDiagramLogicMessages.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/l10n/ExampleDiagramLogicMessages.java,v retrieving revision 1.1 diff -u -r1.1 ExampleDiagramLogicMessages.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/l10n/ExampleDiagramLogicMessages.java 25 Nov 2005 19:37:56 -0000 1.1 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/l10n/ExampleDiagramLogicMessages.java 22 Mar 2006 21:18:41 -0000 @@ -56,6 +56,9 @@ public static String logic_FullAdderTool_Description; public static String logic_Shape_Label; public static String SetLocationCommand_Label_Resize; + public static String LogicWizardPage_StoreSemanticsSeparately; + public static String LogicWizardPage_BrowseSemanticResource; + public static String LogicWizardPage_BrowseSemanticDialogTitle; static { NLS.initializeMessages(BUNDLE_NAME, ExampleDiagramLogicMessages.class); Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/util/LogicEditorUtil.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/util/LogicEditorUtil.java,v retrieving revision 1.9 diff -u -r1.9 LogicEditorUtil.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/util/LogicEditorUtil.java 28 Feb 2006 02:31:05 -0000 1.9 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/util/LogicEditorUtil.java 22 Mar 2006 21:18:42 -0000 @@ -11,6 +11,7 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal.util; +import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; import java.lang.reflect.InvocationTargetException; @@ -18,17 +19,21 @@ import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IResource; +import org.eclipse.core.resources.ResourcesPlugin; +import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Path; import org.eclipse.emf.common.util.URI; -import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.resource.Resource; import org.eclipse.emf.ecore.resource.ResourceSet; import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.LogicDiagramDebugOptions; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.LogicDiagramPlugin; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.LogicDiagramStatusCodes; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticFactory; import org.eclipse.gmf.runtime.common.core.util.Log; import org.eclipse.gmf.runtime.common.core.util.Trace; import org.eclipse.gmf.runtime.diagram.core.preferences.PreferencesHint; @@ -56,11 +61,11 @@ DiagramFileCreator diagramFileCreator, IPath containerPath, String fileName, InputStream initialContents, String kind, IWorkbenchWindow dWindow, IProgressMonitor progressMonitor, - boolean openEditor, boolean saveDiagram) { + boolean openEditor, boolean saveDiagram, String semanticResourcePath) { - IFile newFile = LogicEditorUtil.createNewDiagramFile( + IFile newFile = createNewDiagramFile( diagramFileCreator, containerPath, fileName, initialContents, kind, - dWindow.getShell(), progressMonitor); + dWindow.getShell(), progressMonitor, semanticResourcePath); if (newFile != null && openEditor) { // Since the file resource was created fine, open it for editing @@ -97,7 +102,8 @@ public static final IFile createNewDiagramFile( DiagramFileCreator diagramFileCreator, IPath containerFullPath, String fileName, InputStream initialContents, final String kind, - Shell shell, final IProgressMonitor progressMonitor) { + Shell shell, final IProgressMonitor progressMonitor, String semanticResourcePath) { + /** cache of newly-created file */ final IFile newDiagramFile = diagramFileCreator.createNewFile( containerFullPath, fileName, initialContents, shell, @@ -109,19 +115,53 @@ runnable.run(progressMonitor); } }); + + IFile semanticFile = null; + boolean semanticFileIsNew = false; + if (semanticResourcePath != null && semanticResourcePath.length() > 0) { + semanticFile = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(semanticResourcePath)); + if (!semanticFile.exists()) { + semanticFileIsNew = true; + try { + semanticFile.create(new ByteArrayInputStream(new byte[0]), false, progressMonitor); + } catch (CoreException e) { + Log.error(LogicDiagramPlugin.getInstance(), IStatus.ERROR, e.getMessage(), e); + return null; + } + } + } // Fill the contents of the file dynamically Resource notationModel = null; + Model semanticModel = null; + try { newDiagramFile.refreshLocal(IResource.DEPTH_ZERO, null); //RATLC00514368 + if (semanticFile != null) { + semanticFile.refreshLocal(IResource.DEPTH_ZERO, null); + } + InputStream stream = newDiagramFile.getContents(); String completeFileName = newDiagramFile.getLocation().toOSString(); try { + + ResourceSet resourceSet = new ResourceSetImpl(); + //resourceSet.eAdapters().add(new PathmapManager()); + // Empty file.... - ResourceSet resourceSet = new ResourceSetImpl(); notationModel = resourceSet.createResource(URI - .createFileURI(completeFileName)); + .createFileURI(completeFileName)); + + if (semanticFileIsNew) { + semanticModel = SemanticFactory.eINSTANCE.createModel(); + Resource semanticResource = resourceSet.createResource(URI.createPlatformResourceURI(semanticResourcePath,true)); + + semanticResource.getContents().add(semanticModel); + } else if (semanticFile != null){ + semanticModel = (Model) resourceSet.getResource(URI.createPlatformResourceURI(semanticResourcePath,true),true).getContents().get(0); + } + } finally { stream.close(); } @@ -133,21 +173,24 @@ e); } + if (notationModel != null) { - // create model semantic element and hook it up with diagram view - EObject model = SemanticPackage.eINSTANCE.getModel().getEPackage() - .getEFactoryInstance().create( - SemanticPackage.eINSTANCE.getModel()); - Diagram view = ViewService.createDiagram(model, kind, + if (semanticModel == null) { + semanticModel = SemanticFactory.eINSTANCE.createModel(); + notationModel.getContents().add(semanticModel); + } + + Diagram view = ViewService.createDiagram(semanticModel, kind, new PreferencesHint(LogicDiagramPlugin.EDITOR_ID)); + if (view != null) { - notationModel.getContents().add(view); - notationModel.getContents().add(model); + notationModel.getContents().add(0,view); view.getDiagram().setName(newDiagramFile.getName()); } try { notationModel.save(Collections.EMPTY_MAP); + semanticModel.eResource().save(Collections.EMPTY_MAP); } catch (IOException e) { Trace.catching(LogicDiagramPlugin.getInstance(), LogicDiagramDebugOptions.EXCEPTIONS_CATCHING, @@ -158,6 +201,7 @@ } } + return newDiagramFile; } Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/wizards/LogicWizardPage.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/wizards/LogicWizardPage.java,v retrieving revision 1.5 diff -u -r1.5 LogicWizardPage.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/wizards/LogicWizardPage.java 7 Feb 2006 15:19:18 -0000 1.5 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/wizards/LogicWizardPage.java 22 Mar 2006 21:18:42 -0000 @@ -15,6 +15,8 @@ import java.io.InputStream; import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IResource; +import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.gmf.examples.runtime.diagram.logic.internal.l10n.ExampleDiagramLogicMessages; @@ -22,9 +24,20 @@ import org.eclipse.gmf.examples.runtime.diagram.logic.internal.util.LogicEditorUtil; import org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide.wizards.EditorWizardPage; import org.eclipse.gmf.runtime.diagram.ui.resources.editor.util.DiagramFileCreator; +import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.swt.SWT; +import org.eclipse.swt.events.SelectionAdapter; +import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.events.SelectionListener; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Button; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Text; import org.eclipse.ui.IWorkbench; import org.eclipse.ui.IWorkbenchWindow; +import org.eclipse.ui.dialogs.ResourceSelectionDialog; /** @@ -35,6 +48,9 @@ */ public class LogicWizardPage extends EditorWizardPage{ + private Button separateSemantics; + private Text semanticResource; + /** * LogicDiagramWizardPage constructor * @@ -58,6 +74,15 @@ IWorkbenchWindow dWindow, IProgressMonitor progressMonitor, boolean saveDiagram) { + + String semanticResourcePath = null; + + if (separateSemantics.getSelection() + && semanticResource.getText().length() > 0) { + + semanticResourcePath = semanticResource.getText(); + } + return LogicEditorUtil.createAndOpenDiagram( getDiagramFileCreator(), containerPath, @@ -67,7 +92,8 @@ dWindow, progressMonitor, isOpenNewlyCreatedDiagramEditor(), - saveDiagram); + saveDiagram, + semanticResourcePath); } @@ -91,5 +117,63 @@ protected String getDiagramKind() { return "logic"; //$NON-NLS-1$ } + + protected void createAdvancedControls(Composite parent) { + super.createAdvancedControls(parent); + + separateSemantics = new Button(parent,SWT.CHECK); + separateSemantics.setText(ExampleDiagramLogicMessages.LogicWizardPage_StoreSemanticsSeparately); + separateSemantics.setSelection(false); + + Composite separateSemanticsGroup = new Composite(parent, SWT.NONE); + GridLayout layout = new GridLayout(); + layout.numColumns = 4; + layout.marginHeight = 0; + layout.marginWidth = 0; + separateSemanticsGroup.setLayout(layout); + GridData data = new GridData(GridData.FILL_HORIZONTAL); + separateSemanticsGroup.setLayoutData(data); + + semanticResource = new Text(separateSemanticsGroup, SWT.BORDER); + data = new GridData(GridData.FILL_HORIZONTAL); + data.widthHint = IDialogConstants.ENTRY_FIELD_WIDTH; + data.horizontalSpan = 2; + semanticResource.setLayoutData(data); + semanticResource.setEnabled(false); + + // browse button + final Button browseButton = new Button(separateSemanticsGroup, SWT.PUSH); + browseButton.setText(ExampleDiagramLogicMessages.LogicWizardPage_BrowseSemanticResource); + browseButton.addSelectionListener(new SelectionAdapter() { + public void widgetSelected(SelectionEvent event) { + handleBrowseButtonPressed(); + } + }); + browseButton.setEnabled(false); + setButtonLayoutData(browseButton); + + separateSemantics.addSelectionListener(new SelectionListener() { + public void widgetSelected(SelectionEvent e) { + semanticResource.setEnabled(!semanticResource.getEnabled()); + browseButton.setEnabled(!browseButton.getEnabled()); + semanticResource.setText(getContainerFullPath().append(getFileName()).removeFileExtension().addFileExtension("logic2semantic").toString()); //$NON-NLS-1$ + } + public void widgetDefaultSelected(SelectionEvent e) { + // Do nothing + } + }); + } + + protected void handleBrowseButtonPressed() { + ResourceSelectionDialog dialog = new ResourceSelectionDialog(getShell(),ResourcesPlugin.getWorkspace().getRoot(), ExampleDiagramLogicMessages.LogicWizardPage_BrowseSemanticDialogTitle); + + if (dialog.open() == ResourceSelectionDialog.OK) { + if (dialog.getResult().length == 0) + return; + + IResource r = (IResource)dialog.getResult()[0]; + semanticResource.setText(r.getFullPath().toString()); + } + } } Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/actions/LogicActionFilterProvider.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/actions/LogicActionFilterProvider.java,v retrieving revision 1.1 diff -u -r1.1 LogicActionFilterProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/actions/LogicActionFilterProvider.java 4 Jan 2006 15:52:50 -0000 1.1 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/actions/LogicActionFilterProvider.java 22 Mar 2006 21:18:40 -0000 @@ -12,7 +12,7 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal.actions; import org.eclipse.core.runtime.IAdaptable; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement; import org.eclipse.gmf.runtime.common.core.service.IOperation; import org.eclipse.gmf.runtime.common.ui.services.action.filter.AbstractActionFilterProvider; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/LogicDiagramPlugin.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic/src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/LogicDiagramPlugin.java,v retrieving revision 1.7 diff -u -r1.7 LogicDiagramPlugin.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/LogicDiagramPlugin.java 28 Feb 2006 02:30:43 -0000 1.7 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/LogicDiagramPlugin.java 22 Mar 2006 21:18:40 -0000 @@ -11,7 +11,7 @@ package org.eclipse.gmf.examples.runtime.diagram.logic.internal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; import org.eclipse.gmf.runtime.diagram.core.preferences.PreferencesHint; import org.eclipse.gmf.runtime.emf.core.internal.util.MetamodelManager; import org.eclipse.ui.plugin.AbstractUIPlugin; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/ui/parts/LogicNotationEditor.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/ui/parts/LogicNotationEditor.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/ui/parts/LogicNotationEditor.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/internal/ui/parts/LogicNotationEditor.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,56 @@ +package org.eclipse.gmf.examples.runtime.diagram.logic.internal.ui.parts; + +import java.util.ArrayList; +import java.util.List; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.edit.ui.dnd.LocalTransfer; +import org.eclipse.emf.transaction.TransactionalEditingDomain; +import org.eclipse.gmf.runtime.diagram.ui.parts.DiagramDropTargetListener; +import org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide.editor.FileDiagramEditorWithFlyoutPalette; +import org.eclipse.jface.util.TransferDropTargetListener; +import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.swt.dnd.DropTargetEvent; +import org.eclipse.swt.dnd.TransferData; + + +public class LogicNotationEditor + extends FileDiagramEditorWithFlyoutPalette { + + private static final String EDITING_DOMAIN_ID = "org.eclipse.gmf.examples.runtime.diagram.logicEditingDomain"; //$NON-NLS-1$ + + protected TransactionalEditingDomain createEditingDomain() { + return TransactionalEditingDomain.Registry.INSTANCE.getEditingDomain(EDITING_DOMAIN_ID); + } + + protected void initializeGraphicalViewer() { + super.initializeGraphicalViewer(); + + getDiagramGraphicalViewer().addDropTargetListener( + (TransferDropTargetListener) new DiagramDropTargetListener(getDiagramGraphicalViewer(), LocalTransfer.getInstance()) { + protected List getObjectsBeingDropped() { + TransferData[] data = getCurrentEvent().dataTypes; + List eObjects = new ArrayList(); + + for (int i=0; i - * - * @generated - */ -public class FlowContainerItemProvider - extends ContainerElementItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public FlowContainerItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns FlowContainer.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/FlowContainer");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_FlowContainer_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ElementItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ElementItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ElementItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ElementItemProvider.java 6 Oct 2005 20:26:42 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,188 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; -import org.eclipse.emf.edit.provider.ItemProviderAdapter; -import org.eclipse.emf.edit.provider.ViewerNotification; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element} object. - * - * - * @generated - */ -public class ElementItemProvider - extends ItemProviderAdapter - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public ElementItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - addOutputTerminalsPropertyDescriptor(object); - addInputTerminalsPropertyDescriptor(object); - } - return itemPropertyDescriptors; - } - - /** - * This adds a property descriptor for the Output Terminals feature. - * - * - * @generated - */ - protected void addOutputTerminalsPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_Element_outputTerminals_feature"),//$NON-NLS-1$ - getString("_UI_PropertyDescriptor_description", "_UI_Element_outputTerminals_feature", "_UI_Element_type"),//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$ - SemanticPackage.eINSTANCE.getElement_OutputTerminals(), - false, - null, - null, - null)); - } - - /** - * This adds a property descriptor for the Input Terminals feature. - * - * - * @generated - */ - protected void addInputTerminalsPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_Element_inputTerminals_feature"),//$NON-NLS-1$ - getString("_UI_PropertyDescriptor_description", "_UI_Element_inputTerminals_feature", "_UI_Element_type"),//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$ - SemanticPackage.eINSTANCE.getElement_InputTerminals(), - false, - null, - null, - null)); - } - - /** - * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an - * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or - * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. - * - * - * @generated - */ - public Collection getChildrenFeatures(Object object) { - if (childrenFeatures == null) { - super.getChildrenFeatures(object); - childrenFeatures.add(SemanticPackage.eINSTANCE.getElement_Terminals()); - } - return childrenFeatures; - } - - /** - * This returns Element.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/Element");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_Element_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - - switch (notification.getFeatureID(Element.class)) { - case SemanticPackage.ELEMENT__TERMINALS: - fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); - return; - } - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/LEDItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/LEDItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/LEDItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/LEDItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,152 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; -import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; -import org.eclipse.emf.edit.provider.ViewerNotification; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.LED} object. - * - * - * @generated - */ -public class LEDItemProvider - extends ElementItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public LEDItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - addValuePropertyDescriptor(object); - } - return itemPropertyDescriptors; - } - - /** - * This adds a property descriptor for the Value feature. - * - * - * @generated - */ - protected void addValuePropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_LED_value_feature"),//$NON-NLS-1$ - getString("_UI_PropertyDescriptor_description", "_UI_LED_value_feature", "_UI_LED_type"),//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$ - SemanticPackage.eINSTANCE.getLED_Value(), - true, - ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, - null, - null)); - } - - /** - * This returns LED.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/LED");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - LED led = (LED)object; - return getString("_UI_LED_type") + " " + led.getValue();//$NON-NLS-2$//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - - switch (notification.getFeatureID(LED.class)) { - case SemanticPackage.LED__VALUE: - fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); - return; - } - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/GateItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/GateItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/GateItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/GateItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,118 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate} object. - * - * - * @generated - */ -public class GateItemProvider - extends ElementItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public GateItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns Gate.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/Gate");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_Gate_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/InputTerminalItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/InputTerminalItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/InputTerminalItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/InputTerminalItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,123 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal} object. - * - * - * @generated - */ -public class InputTerminalItemProvider - extends TerminalItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public InputTerminalItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns InputTerminal.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/InputTerminal");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - String label = ((InputTerminal)object).getId(); - return label == null || label.length() == 0 ? - getString("_UI_InputTerminal_type") ://$NON-NLS-1$ - getString("_UI_InputTerminal_type") + " " + label;//$NON-NLS-2$//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/InputOutputTerminalItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/InputOutputTerminalItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/InputOutputTerminalItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/InputOutputTerminalItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,123 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal} object. - * - * - * @generated - */ -public class InputOutputTerminalItemProvider - extends OutputTerminalItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public InputOutputTerminalItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns InputOutputTerminal.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/InputOutputTerminal");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - String label = ((InputOutputTerminal)object).getId(); - return label == null || label.length() == 0 ? - getString("_UI_InputOutputTerminal_type") ://$NON-NLS-1$ - getString("_UI_InputOutputTerminal_type") + " " + label;//$NON-NLS-2$//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/TerminalItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/TerminalItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/TerminalItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/TerminalItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,154 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; -import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; -import org.eclipse.emf.edit.provider.ViewerNotification; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal} object. - * - * - * @generated - */ -public class TerminalItemProvider - extends ElementItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public TerminalItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - addIdPropertyDescriptor(object); - } - return itemPropertyDescriptors; - } - - /** - * This adds a property descriptor for the Id feature. - * - * - * @generated - */ - protected void addIdPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_Terminal_id_feature"),//$NON-NLS-1$ - getString("_UI_PropertyDescriptor_description", "_UI_Terminal_id_feature", "_UI_Terminal_type"),//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$ - SemanticPackage.eINSTANCE.getTerminal_Id(), - true, - ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, - null, - null)); - } - - /** - * This returns Terminal.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/Terminal");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - String label = ((Terminal)object).getId(); - return label == null || label.length() == 0 ? - getString("_UI_Terminal_type") ://$NON-NLS-1$ - getString("_UI_Terminal_type") + " " + label;//$NON-NLS-2$//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - - switch (notification.getFeatureID(Terminal.class)) { - case SemanticPackage.TERMINAL__ID: - fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); - return; - } - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ContainerElementItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ContainerElementItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ContainerElementItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ContainerElementItemProvider.java 6 Oct 2005 20:26:42 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,214 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticFactory; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement} object. - * - * - * @generated - */ -public class ContainerElementItemProvider - extends ElementItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public ContainerElementItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - addChildrenPropertyDescriptor(object); - } - return itemPropertyDescriptors; - } - - /** - * This adds a property descriptor for the Children feature. - * - * - * @generated - */ - protected void addChildrenPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_ContainerElement_children_feature"),//$NON-NLS-1$ - getString("_UI_PropertyDescriptor_description", "_UI_ContainerElement_children_feature", "_UI_ContainerElement_type"),//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$ - SemanticPackage.eINSTANCE.getContainerElement_Children(), - true, - null, - null, - null)); - } - - /** - * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an - * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or - * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. - * - * - * @generated - */ - public Collection getChildrenFeatures(Object object) { - if (childrenFeatures == null) { - super.getChildrenFeatures(object); - childrenFeatures.add(SemanticPackage.eINSTANCE.getContainerElement_Children()); - } - return childrenFeatures; - } - - /** - * This returns ContainerElement.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/ContainerElement");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_ContainerElement_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createLED())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createWire())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createCircuit())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createFlowContainer())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createAndGate())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createOrGate())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createXORGate())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createModel())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createOutputTerminal())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createInputTerminal())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getContainerElement_Children(), - SemanticFactory.eINSTANCE.createInputOutputTerminal())); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/WireItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/WireItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/WireItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/WireItemProvider.java 6 Oct 2005 20:26:42 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,236 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticFactory; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire} object. - * - * - * @generated - */ -public class WireItemProvider - extends ElementItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public WireItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - addSourcePropertyDescriptor(object); - addTargetPropertyDescriptor(object); - } - return itemPropertyDescriptors; - } - - /** - * This adds a property descriptor for the Source feature. - * - * - * @generated - */ - protected void addSourcePropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_Wire_source_feature"),//$NON-NLS-1$ - getString("_UI_PropertyDescriptor_description", "_UI_Wire_source_feature", "_UI_Wire_type"),//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$ - SemanticPackage.eINSTANCE.getWire_Source(), - true, - null, - null, - null)); - } - - /** - * This adds a property descriptor for the Target feature. - * - * - * @generated - */ - protected void addTargetPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_Wire_target_feature"),//$NON-NLS-1$ - getString("_UI_PropertyDescriptor_description", "_UI_Wire_target_feature", "_UI_Wire_type"),//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$ - SemanticPackage.eINSTANCE.getWire_Target(), - true, - null, - null, - null)); - } - - /** - * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an - * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or - * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. - * - * - * @generated - */ - public Collection getChildrenFeatures(Object object) { - if (childrenFeatures == null) { - super.getChildrenFeatures(object); - childrenFeatures.add(SemanticPackage.eINSTANCE.getWire_Source()); - childrenFeatures.add(SemanticPackage.eINSTANCE.getWire_Target()); - } - return childrenFeatures; - } - - /** - * - * - * @generated - */ - protected EStructuralFeature getChildFeature(Object object, Object child) { - // Check the type of the specified child object and return the proper feature to use for - // adding (see {@link AddCommand}) it as a child. - - return super.getChildFeature(object, child); - } - - /** - * This returns Wire.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/Wire");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_Wire_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getWire_Source(), - SemanticFactory.eINSTANCE.createOutputTerminal())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getWire_Source(), - SemanticFactory.eINSTANCE.createInputOutputTerminal())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getWire_Target(), - SemanticFactory.eINSTANCE.createInputTerminal())); - - newChildDescriptors.add - (createChildParameter - (SemanticPackage.eINSTANCE.getWire_Target(), - SemanticFactory.eINSTANCE.createInputOutputTerminal())); - } - - /** - * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. - * - * - * @generated - */ - public String getCreateChildText(Object owner, Object feature, Object child, Collection selection) { - Object childFeature = feature; - Object childObject = child; - - boolean qualify = - childFeature == SemanticPackage.eINSTANCE.getWire_Source() || - childFeature == SemanticPackage.eINSTANCE.getWire_Target(); - - if (qualify) { - return getString - ("_UI_CreateChild_text2",//$NON-NLS-1$ - new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) }); - } - return super.getCreateChildText(owner, feature, child, selection); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/LogicsemanticEditPlugin.java =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic.model.edit/src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/LogicsemanticEditPlugin.java,v retrieving revision 1.2 diff -u -r1.2 LogicsemanticEditPlugin.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/LogicsemanticEditPlugin.java 12 Sep 2005 21:26:47 -0000 1.2 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/LogicsemanticEditPlugin.java 22 Mar 2006 21:18:46 -0000 @@ -1,14 +1,9 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html +/** + * + * * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - + * $Id$ + */ package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; import org.eclipse.emf.common.EMFPlugin; Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ModelItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ModelItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ModelItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/ModelItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,118 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Model} object. - * - * - * @generated - */ -public class ModelItemProvider - extends ContainerElementItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public ModelItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns Model.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/Model");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_Model_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/AndGateItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/AndGateItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/AndGateItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/AndGateItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,118 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate} object. - * - * - * @generated - */ -public class AndGateItemProvider - extends GateItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public AndGateItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns AndGate.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/AndGate");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_AndGate_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/SemanticItemProviderAdapterFactory.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/SemanticItemProviderAdapterFactory.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/SemanticItemProviderAdapterFactory.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/SemanticItemProviderAdapterFactory.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,413 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.util.SemanticAdapterFactory; - -import java.util.ArrayList; -import java.util.Collection; - -import org.eclipse.emf.common.notify.Adapter; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.Notifier; - -import org.eclipse.emf.edit.provider.ChangeNotifier; -import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; -import org.eclipse.emf.edit.provider.ComposedAdapterFactory; -import org.eclipse.emf.edit.provider.IChangeNotifier; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.INotifyChangedListener; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -/** - * This is the factory that is used to provide the interfaces needed to support Viewers. - * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}. - * The adapters also support Eclipse property sheets. - * Note that most of the adapters are shared among multiple instances. - * - * - * @generated - */ -public class SemanticItemProviderAdapterFactory extends SemanticAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier { - /** - * This keeps track of the root adapter factory that delegates to this adapter factory. - * - * - * @generated - */ - protected ComposedAdapterFactory parentAdapterFactory; - - /** - * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. - * - * - * @generated - */ - protected IChangeNotifier changeNotifier = new ChangeNotifier(); - - /** - * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}. - * - * - * @generated - */ - protected Collection supportedTypes = new ArrayList(); - - /** - * This constructs an instance. - * - * - * @generated - */ - public SemanticItemProviderAdapterFactory() { - supportedTypes.add(IEditingDomainItemProvider.class); - supportedTypes.add(IStructuredItemContentProvider.class); - supportedTypes.add(ITreeItemContentProvider.class); - supportedTypes.add(IItemLabelProvider.class); - supportedTypes.add(IItemPropertySource.class); - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.LED} instances. - * - * - * @generated - */ - protected LEDItemProvider ledItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.LED}. - * - * - * @generated - */ - public Adapter createLEDAdapter() { - if (ledItemProvider == null) { - ledItemProvider = new LEDItemProvider(this); - } - - return ledItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire} instances. - * - * - * @generated - */ - protected WireItemProvider wireItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire}. - * - * - * @generated - */ - public Adapter createWireAdapter() { - if (wireItemProvider == null) { - wireItemProvider = new WireItemProvider(this); - } - - return wireItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit} instances. - * - * - * @generated - */ - protected CircuitItemProvider circuitItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit}. - * - * - * @generated - */ - public Adapter createCircuitAdapter() { - if (circuitItemProvider == null) { - circuitItemProvider = new CircuitItemProvider(this); - } - - return circuitItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer} instances. - * - * - * @generated - */ - protected FlowContainerItemProvider flowContainerItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer}. - * - * - * @generated - */ - public Adapter createFlowContainerAdapter() { - if (flowContainerItemProvider == null) { - flowContainerItemProvider = new FlowContainerItemProvider(this); - } - - return flowContainerItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate} instances. - * - * - * @generated - */ - protected AndGateItemProvider andGateItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate}. - * - * - * @generated - */ - public Adapter createAndGateAdapter() { - if (andGateItemProvider == null) { - andGateItemProvider = new AndGateItemProvider(this); - } - - return andGateItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate} instances. - * - * - * @generated - */ - protected OrGateItemProvider orGateItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate}. - * - * - * @generated - */ - public Adapter createOrGateAdapter() { - if (orGateItemProvider == null) { - orGateItemProvider = new OrGateItemProvider(this); - } - - return orGateItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate} instances. - * - * - * @generated - */ - protected XORGateItemProvider xorGateItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate}. - * - * - * @generated - */ - public Adapter createXORGateAdapter() { - if (xorGateItemProvider == null) { - xorGateItemProvider = new XORGateItemProvider(this); - } - - return xorGateItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Model} instances. - * - * - * @generated - */ - protected ModelItemProvider modelItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Model}. - * - * - * @generated - */ - public Adapter createModelAdapter() { - if (modelItemProvider == null) { - modelItemProvider = new ModelItemProvider(this); - } - - return modelItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal} instances. - * - * - * @generated - */ - protected OutputTerminalItemProvider outputTerminalItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal}. - * - * - * @generated - */ - public Adapter createOutputTerminalAdapter() { - if (outputTerminalItemProvider == null) { - outputTerminalItemProvider = new OutputTerminalItemProvider(this); - } - - return outputTerminalItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal} instances. - * - * - * @generated - */ - protected InputTerminalItemProvider inputTerminalItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal}. - * - * - * @generated - */ - public Adapter createInputTerminalAdapter() { - if (inputTerminalItemProvider == null) { - inputTerminalItemProvider = new InputTerminalItemProvider(this); - } - - return inputTerminalItemProvider; - } - - /** - * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal} instances. - * - * - * @generated - */ - protected InputOutputTerminalItemProvider inputOutputTerminalItemProvider; - - /** - * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal}. - * - * - * @generated - */ - public Adapter createInputOutputTerminalAdapter() { - if (inputOutputTerminalItemProvider == null) { - inputOutputTerminalItemProvider = new InputOutputTerminalItemProvider(this); - } - - return inputOutputTerminalItemProvider; - } - - /** - * This returns the root adapter factory that contains this factory. - * - * - * @generated - */ - public ComposeableAdapterFactory getRootAdapterFactory() { - return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory(); - } - - /** - * This sets the composed adapter factory that contains this factory. - * - * - * @generated - */ - public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) { - this.parentAdapterFactory = parentAdapterFactory; - } - - /** - * - * - * @generated - */ - public boolean isFactoryForType(Object type) { - return supportedTypes.contains(type) || super.isFactoryForType(type); - } - - /** - * This implementation substitutes the factory itself as the key for the adapter. - * - * - * @generated - */ - public Adapter adapt(Notifier notifier, Object type) { - return super.adapt(notifier, this); - } - - /** - * - * - * @generated - */ - public Object adapt(Object object, Object type) { - if (isFactoryForType(type)) { - Object adapter = super.adapt(object, type); - if (!(type instanceof Class) || (((Class)type).isInstance(adapter))) { - return adapter; - } - } - - return null; - } - - /** - * This adds a listener. - * - * - * @generated - */ - public void addListener(INotifyChangedListener notifyChangedListener) { - changeNotifier.addListener(notifyChangedListener); - } - - /** - * This removes a listener. - * - * - * @generated - */ - public void removeListener(INotifyChangedListener notifyChangedListener) { - changeNotifier.removeListener(notifyChangedListener); - } - - /** - * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. - * - * - * @generated - */ - public void fireNotifyChanged(Notification notification) { - changeNotifier.fireNotifyChanged(notification); - - if (parentAdapterFactory != null) { - parentAdapterFactory.fireNotifyChanged(notification); - } - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/CircuitItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/CircuitItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/CircuitItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/CircuitItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,118 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit} object. - * - * - * @generated - */ -public class CircuitItemProvider - extends ContainerElementItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public CircuitItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns Circuit.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/Circuit");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_Circuit_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/XORGateItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/XORGateItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/XORGateItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/XORGateItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,118 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate} object. - * - * - * @generated - */ -public class XORGateItemProvider - extends GateItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public XORGateItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns XORGate.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/XORGate");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_XORGate_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/OrGateItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/OrGateItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/OrGateItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/OrGateItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,118 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate} object. - * - * - * @generated - */ -public class OrGateItemProvider - extends GateItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public OrGateItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns OrGate.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/OrGate");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - return getString("_UI_OrGate_type");//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/OutputTerminalItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/OutputTerminalItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/OutputTerminalItemProvider.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/provider/OutputTerminalItemProvider.java 12 Sep 2005 21:26:47 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,123 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.provider; - - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.util.ResourceLocator; -import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; -import org.eclipse.emf.edit.provider.IItemLabelProvider; -import org.eclipse.emf.edit.provider.IItemPropertySource; -import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; -import org.eclipse.emf.edit.provider.ITreeItemContentProvider; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; - -/** - * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal} object. - * - * - * @generated - */ -public class OutputTerminalItemProvider - extends TerminalItemProvider - implements - IEditingDomainItemProvider, - IStructuredItemContentProvider, - ITreeItemContentProvider, - IItemLabelProvider, - IItemPropertySource { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public OutputTerminalItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This returns OutputTerminal.gif. - * - * - * @generated - */ - public Object getImage(Object object) { - return getResourceLocator().getImage("full/obj16/OutputTerminal");//$NON-NLS-1$ - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - public String getText(Object object) { - String label = ((OutputTerminal)object).getId(); - return label == null || label.length() == 0 ? - getString("_UI_OutputTerminal_type") ://$NON-NLS-1$ - getString("_UI_OutputTerminal_type") + " " + label;//$NON-NLS-2$//$NON-NLS-1$ - } - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s - * describing all of the children that can be created under this object. - * - * - * @generated - */ - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - - /** - * Return the resource locator for this item provider's resources. - * - * - * @generated - */ - public ResourceLocator getResourceLocator() { - return LogicsemanticEditPlugin.INSTANCE; - } - -} Index: META-INF/MANIFEST.MF =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic.model.edit/META-INF/MANIFEST.MF,v retrieving revision 1.6 diff -u -r1.6 MANIFEST.MF --- META-INF/MANIFEST.MF 29 Jan 2006 16:15:41 -0000 1.6 +++ META-INF/MANIFEST.MF 22 Mar 2006 21:18:46 -0000 @@ -1,12 +1,13 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName -Bundle-SymbolicName: org.eclipse.gmf.examples.runtime.diagram.logic.model.edit +Bundle-SymbolicName: org.eclipse.gmf.examples.runtime.diagram.logic.model.edit;singleton:=true Bundle-Version: 1.0.0.qualifier Bundle-Activator: org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin$Implementation Bundle-Vendor: %providerName Bundle-Localization: plugin -Export-Package: org.eclipse.gmf.examples.runtime.diagram.logic.model.provider +Export-Package: org.eclipse.gmf.examples.runtime.diagram.logic.model.provider, + org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider Require-Bundle: org.eclipse.core.runtime, org.eclipse.gmf.examples.runtime.diagram.logic.model;visibility:=reexport, org.eclipse.emf.edit;visibility:=reexport Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ElementItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ElementItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ElementItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ElementItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,187 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemProviderAdapter; +import org.eclipse.emf.edit.provider.ViewerNotification; +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element} object. + * + * + * @generated + */ +public class ElementItemProvider + extends ItemProviderAdapter + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public ElementItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addOutputTerminalsPropertyDescriptor(object); + addInputTerminalsPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Output Terminals feature. + * + * + * @generated + */ + protected void addOutputTerminalsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Element_outputTerminals_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Element_outputTerminals_feature", "_UI_Element_type"), + SemanticPackage.Literals.ELEMENT__OUTPUT_TERMINALS, + false, + null, + null, + null)); + } + + /** + * This adds a property descriptor for the Input Terminals feature. + * + * + * @generated + */ + protected void addInputTerminalsPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Element_inputTerminals_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Element_inputTerminals_feature", "_UI_Element_type"), + SemanticPackage.Literals.ELEMENT__INPUT_TERMINALS, + false, + null, + null, + null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * + * @generated + */ + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(SemanticPackage.Literals.ELEMENT__TERMINALS); + } + return childrenFeatures; + } + + /** + * This returns Element.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Element")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_Element_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Element.class)) { + case SemanticPackage.ELEMENT__OUTPUT_TERMINALS: + case SemanticPackage.ELEMENT__INPUT_TERMINALS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + case SemanticPackage.ELEMENT__TERMINALS: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/AndGateItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/AndGateItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/AndGateItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/AndGateItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,115 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate} object. + * + * + * @generated + */ +public class AndGateItemProvider + extends GateItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public AndGateItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns AndGate.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/AndGate")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_AndGate_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/FlowContainerItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/FlowContainerItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/FlowContainerItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/FlowContainerItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,117 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer} object. + * + * + * @generated + */ +public class FlowContainerItemProvider + extends ContainerElementItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public FlowContainerItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns FlowContainer.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/FlowContainer")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_FlowContainer_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: plugin.xml =================================================================== RCS file: plugin.xml diff -N plugin.xml --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ plugin.xml 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,26 @@ + + + + + + + + + + + + + Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/OutputTerminalItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/OutputTerminalItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/OutputTerminalItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/OutputTerminalItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,118 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal} object. + * + * + * @generated + */ +public class OutputTerminalItemProvider + extends TerminalItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public OutputTerminalItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns OutputTerminal.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/OutputTerminal")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + String label = ((OutputTerminal)object).getId(); + return label == null || label.length() == 0 ? + getString("_UI_OutputTerminal_type") : + getString("_UI_OutputTerminal_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/TerminalItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/TerminalItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/TerminalItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/TerminalItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,149 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal} object. + * + * + * @generated + */ +public class TerminalItemProvider + extends ElementItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public TerminalItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addIdPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Id feature. + * + * + * @generated + */ + protected void addIdPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Terminal_id_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Terminal_id_feature", "_UI_Terminal_type"), + SemanticPackage.Literals.TERMINAL__ID, + true, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, + null, + null)); + } + + /** + * This returns Terminal.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Terminal")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + String label = ((Terminal)object).getId(); + return label == null || label.length() == 0 ? + getString("_UI_Terminal_type") : + getString("_UI_Terminal_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Terminal.class)) { + case SemanticPackage.TERMINAL__ID: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/OrGateItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/OrGateItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/OrGateItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/OrGateItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,117 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate} object. + * + * + * @generated + */ +public class OrGateItemProvider + extends GateItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public OrGateItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns OrGate.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/OrGate")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_OrGate_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ContainerElementItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ContainerElementItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ContainerElementItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ContainerElementItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,217 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ViewerNotification; +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticFactory; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement} object. + * + * + * @generated + */ +public class ContainerElementItemProvider + extends ElementItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public ContainerElementItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addChildrenPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Children feature. + * + * + * @generated + */ + protected void addChildrenPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_ContainerElement_children_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_ContainerElement_children_feature", "_UI_ContainerElement_type"), + SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + true, + null, + null, + null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * + * @generated + */ + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN); + } + return childrenFeatures; + } + + /** + * This returns ContainerElement.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/ContainerElement")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_ContainerElement_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(ContainerElement.class)) { + case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createLED())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createWire())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createCircuit())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createFlowContainer())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createAndGate())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createOrGate())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createXORGate())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createModel())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createOutputTerminal())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createInputTerminal())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.CONTAINER_ELEMENT__CHILDREN, + SemanticFactory.eINSTANCE.createInputOutputTerminal())); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ModelItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ModelItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ModelItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/ModelItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,117 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model} object. + * + * + * @generated + */ +public class ModelItemProvider + extends ContainerElementItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public ModelItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns Model.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Model")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_Model_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/InputTerminalItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/InputTerminalItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/InputTerminalItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/InputTerminalItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,118 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal} object. + * + * + * @generated + */ +public class InputTerminalItemProvider + extends TerminalItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public InputTerminalItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns InputTerminal.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/InputTerminal")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + String label = ((InputTerminal)object).getId(); + return label == null || label.length() == 0 ? + getString("_UI_InputTerminal_type") : + getString("_UI_InputTerminal_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/InputOutputTerminalItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/InputOutputTerminalItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/InputOutputTerminalItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/InputOutputTerminalItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,118 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal} object. + * + * + * @generated + */ +public class InputOutputTerminalItemProvider + extends OutputTerminalItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public InputOutputTerminalItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns InputOutputTerminal.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/InputOutputTerminal")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + String label = ((InputOutputTerminal)object).getId(); + return label == null || label.length() == 0 ? + getString("_UI_InputOutputTerminal_type") : + getString("_UI_InputOutputTerminal_type") + " " + label; + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/WireItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/WireItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/WireItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/WireItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,240 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.ecore.EStructuralFeature; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ViewerNotification; +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticFactory; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire} object. + * + * + * @generated + */ +public class WireItemProvider + extends ElementItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public WireItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addSourcePropertyDescriptor(object); + addTargetPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Source feature. + * + * + * @generated + */ + protected void addSourcePropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Wire_source_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Wire_source_feature", "_UI_Wire_type"), + SemanticPackage.Literals.WIRE__SOURCE, + true, + null, + null, + null)); + } + + /** + * This adds a property descriptor for the Target feature. + * + * + * @generated + */ + protected void addTargetPropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Wire_target_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_Wire_target_feature", "_UI_Wire_type"), + SemanticPackage.Literals.WIRE__TARGET, + true, + null, + null, + null)); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * + * + * @generated + */ + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(SemanticPackage.Literals.WIRE__SOURCE); + childrenFeatures.add(SemanticPackage.Literals.WIRE__TARGET); + } + return childrenFeatures; + } + + /** + * + * + * @generated + */ + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns Wire.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Wire")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_Wire_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Wire.class)) { + case SemanticPackage.WIRE__SOURCE: + case SemanticPackage.WIRE__TARGET: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.WIRE__SOURCE, + SemanticFactory.eINSTANCE.createOutputTerminal())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.WIRE__SOURCE, + SemanticFactory.eINSTANCE.createInputOutputTerminal())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.WIRE__TARGET, + SemanticFactory.eINSTANCE.createInputTerminal())); + + newChildDescriptors.add + (createChildParameter + (SemanticPackage.Literals.WIRE__TARGET, + SemanticFactory.eINSTANCE.createInputOutputTerminal())); + } + + /** + * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. + * + * + * @generated + */ + public String getCreateChildText(Object owner, Object feature, Object child, Collection selection) { + Object childFeature = feature; + Object childObject = child; + + boolean qualify = + childFeature == SemanticPackage.Literals.WIRE__SOURCE || + childFeature == SemanticPackage.Literals.WIRE__TARGET; + + if (qualify) { + return getString + ("_UI_CreateChild_text2", + new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) }); + } + return super.getCreateChildText(owner, feature, child, selection); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/LEDItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/LEDItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/LEDItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/LEDItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,147 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.util.ResourceLocator; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED} object. + * + * + * @generated + */ +public class LEDItemProvider + extends ElementItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public LEDItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addValuePropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Value feature. + * + * + * @generated + */ + protected void addValuePropertyDescriptor(Object object) { + itemPropertyDescriptors.add + (createItemPropertyDescriptor + (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_LED_value_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_LED_value_feature", "_UI_LED_type"), + SemanticPackage.Literals.LED__VALUE, + true, + ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, + null, + null)); + } + + /** + * This returns LED.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/LED")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + LED led = (LED)object; + return getString("_UI_LED_type") + " " + led.getValue(); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(LED.class)) { + case SemanticPackage.LED__VALUE: + fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/SemanticItemProviderAdapterFactory.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/SemanticItemProviderAdapterFactory.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/SemanticItemProviderAdapterFactory.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/SemanticItemProviderAdapterFactory.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,406 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + +import java.util.ArrayList; +import java.util.Collection; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.Notifier; +import org.eclipse.emf.edit.provider.ChangeNotifier; +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.ComposedAdapterFactory; +import org.eclipse.emf.edit.provider.IChangeNotifier; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.INotifyChangedListener; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util.SemanticAdapterFactory; + +/** + * This is the factory that is used to provide the interfaces needed to support Viewers. + * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}. + * The adapters also support Eclipse property sheets. + * Note that most of the adapters are shared among multiple instances. + * + * + * @generated + */ +public class SemanticItemProviderAdapterFactory extends SemanticAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier { + /** + * This keeps track of the root adapter factory that delegates to this adapter factory. + * + * + * @generated + */ + protected ComposedAdapterFactory parentAdapterFactory; + + /** + * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. + * + * + * @generated + */ + protected IChangeNotifier changeNotifier = new ChangeNotifier(); + + /** + * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}. + * + * + * @generated + */ + protected Collection supportedTypes = new ArrayList(); + + /** + * This constructs an instance. + * + * + * @generated + */ + public SemanticItemProviderAdapterFactory() { + supportedTypes.add(IEditingDomainItemProvider.class); + supportedTypes.add(IStructuredItemContentProvider.class); + supportedTypes.add(ITreeItemContentProvider.class); + supportedTypes.add(IItemLabelProvider.class); + supportedTypes.add(IItemPropertySource.class); + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED} instances. + * + * + * @generated + */ + protected LEDItemProvider ledItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED}. + * + * + * @generated + */ + public Adapter createLEDAdapter() { + if (ledItemProvider == null) { + ledItemProvider = new LEDItemProvider(this); + } + + return ledItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire} instances. + * + * + * @generated + */ + protected WireItemProvider wireItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire}. + * + * + * @generated + */ + public Adapter createWireAdapter() { + if (wireItemProvider == null) { + wireItemProvider = new WireItemProvider(this); + } + + return wireItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit} instances. + * + * + * @generated + */ + protected CircuitItemProvider circuitItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit}. + * + * + * @generated + */ + public Adapter createCircuitAdapter() { + if (circuitItemProvider == null) { + circuitItemProvider = new CircuitItemProvider(this); + } + + return circuitItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer} instances. + * + * + * @generated + */ + protected FlowContainerItemProvider flowContainerItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer}. + * + * + * @generated + */ + public Adapter createFlowContainerAdapter() { + if (flowContainerItemProvider == null) { + flowContainerItemProvider = new FlowContainerItemProvider(this); + } + + return flowContainerItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate} instances. + * + * + * @generated + */ + protected AndGateItemProvider andGateItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate}. + * + * + * @generated + */ + public Adapter createAndGateAdapter() { + if (andGateItemProvider == null) { + andGateItemProvider = new AndGateItemProvider(this); + } + + return andGateItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate} instances. + * + * + * @generated + */ + protected OrGateItemProvider orGateItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate}. + * + * + * @generated + */ + public Adapter createOrGateAdapter() { + if (orGateItemProvider == null) { + orGateItemProvider = new OrGateItemProvider(this); + } + + return orGateItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate} instances. + * + * + * @generated + */ + protected XORGateItemProvider xorGateItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate}. + * + * + * @generated + */ + public Adapter createXORGateAdapter() { + if (xorGateItemProvider == null) { + xorGateItemProvider = new XORGateItemProvider(this); + } + + return xorGateItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model} instances. + * + * + * @generated + */ + protected ModelItemProvider modelItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model}. + * + * + * @generated + */ + public Adapter createModelAdapter() { + if (modelItemProvider == null) { + modelItemProvider = new ModelItemProvider(this); + } + + return modelItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal} instances. + * + * + * @generated + */ + protected OutputTerminalItemProvider outputTerminalItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal}. + * + * + * @generated + */ + public Adapter createOutputTerminalAdapter() { + if (outputTerminalItemProvider == null) { + outputTerminalItemProvider = new OutputTerminalItemProvider(this); + } + + return outputTerminalItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal} instances. + * + * + * @generated + */ + protected InputTerminalItemProvider inputTerminalItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal}. + * + * + * @generated + */ + public Adapter createInputTerminalAdapter() { + if (inputTerminalItemProvider == null) { + inputTerminalItemProvider = new InputTerminalItemProvider(this); + } + + return inputTerminalItemProvider; + } + + /** + * This keeps track of the one adapter used for all {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal} instances. + * + * + * @generated + */ + protected InputOutputTerminalItemProvider inputOutputTerminalItemProvider; + + /** + * This creates an adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal}. + * + * + * @generated + */ + public Adapter createInputOutputTerminalAdapter() { + if (inputOutputTerminalItemProvider == null) { + inputOutputTerminalItemProvider = new InputOutputTerminalItemProvider(this); + } + + return inputOutputTerminalItemProvider; + } + + /** + * This returns the root adapter factory that contains this factory. + * + * + * @generated + */ + public ComposeableAdapterFactory getRootAdapterFactory() { + return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory(); + } + + /** + * This sets the composed adapter factory that contains this factory. + * + * + * @generated + */ + public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) { + this.parentAdapterFactory = parentAdapterFactory; + } + + /** + * + * + * @generated + */ + public boolean isFactoryForType(Object type) { + return supportedTypes.contains(type) || super.isFactoryForType(type); + } + + /** + * This implementation substitutes the factory itself as the key for the adapter. + * + * + * @generated + */ + public Adapter adapt(Notifier notifier, Object type) { + return super.adapt(notifier, this); + } + + /** + * + * + * @generated + */ + public Object adapt(Object object, Object type) { + if (isFactoryForType(type)) { + Object adapter = super.adapt(object, type); + if (!(type instanceof Class) || (((Class)type).isInstance(adapter))) { + return adapter; + } + } + + return null; + } + + /** + * This adds a listener. + * + * + * @generated + */ + public void addListener(INotifyChangedListener notifyChangedListener) { + changeNotifier.addListener(notifyChangedListener); + } + + /** + * This removes a listener. + * + * + * @generated + */ + public void removeListener(INotifyChangedListener notifyChangedListener) { + changeNotifier.removeListener(notifyChangedListener); + } + + /** + * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. + * + * + * @generated + */ + public void fireNotifyChanged(Notification notification) { + changeNotifier.fireNotifyChanged(notification); + + if (parentAdapterFactory != null) { + parentAdapterFactory.fireNotifyChanged(notification); + } + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/GateItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/GateItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/GateItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/GateItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,117 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate} object. + * + * + * @generated + */ +public class GateItemProvider + extends ElementItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public GateItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns Gate.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Gate")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_Gate_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/XORGateItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/XORGateItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/XORGateItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/XORGateItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,117 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate} object. + * + * + * @generated + */ +public class XORGateItemProvider + extends GateItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public XORGateItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns XORGate.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/XORGate")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_XORGate_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/CircuitItemProvider.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/CircuitItemProvider.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/CircuitItemProvider.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/provider/CircuitItemProvider.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,117 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.provider; + + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.notify.AdapterFactory; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.ResourceLocator; + +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; + +import org.eclipse.gmf.examples.runtime.diagram.logic.model.provider.LogicsemanticEditPlugin; + +/** + * This is the item provider adapter for a {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit} object. + * + * + * @generated + */ +public class CircuitItemProvider + extends ContainerElementItemProvider + implements + IEditingDomainItemProvider, + IStructuredItemContentProvider, + ITreeItemContentProvider, + IItemLabelProvider, + IItemPropertySource { + /** + * This constructs an instance from a factory and a notifier. + * + * + * @generated + */ + public CircuitItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * + * + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + } + return itemPropertyDescriptors; + } + + /** + * This returns Circuit.gif. + * + * + * @generated + */ + public Object getImage(Object object) { + return overlayImage(object, getResourceLocator().getImage("full/obj16/Circuit")); + } + + /** + * This returns the label text for the adapted class. + * + * + * @generated + */ + public String getText(Object object) { + return getString("_UI_Circuit_type"); + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * + * + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * + * + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + } + + /** + * Return the resource locator for this item provider's resources. + * + * + * @generated + */ + public ResourceLocator getResourceLocator() { + return LogicsemanticEditPlugin.INSTANCE; + } + +} #P org.eclipse.gmf.examples.runtime.diagram.logic.model Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/SemanticFactoryImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/SemanticFactoryImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/SemanticFactoryImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/SemanticFactoryImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,202 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.*; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EObject; -import org.eclipse.emf.ecore.impl.EFactoryImpl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Model; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticFactory; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate; - -/** - * - * An implementation of the model Factory. - * - * @generated - */ -public class SemanticFactoryImpl extends EFactoryImpl implements SemanticFactory { - /** - * Creates and instance of the factory. - * - * - * @generated - */ - public SemanticFactoryImpl() { - super(); - } - - /** - * - * - * @generated - */ - public EObject create(EClass eClass) { - switch (eClass.getClassifierID()) { - case SemanticPackage.LED: return createLED(); - case SemanticPackage.WIRE: return createWire(); - case SemanticPackage.CIRCUIT: return createCircuit(); - case SemanticPackage.FLOW_CONTAINER: return createFlowContainer(); - case SemanticPackage.AND_GATE: return createAndGate(); - case SemanticPackage.OR_GATE: return createOrGate(); - case SemanticPackage.XOR_GATE: return createXORGate(); - case SemanticPackage.MODEL: return createModel(); - case SemanticPackage.OUTPUT_TERMINAL: return createOutputTerminal(); - case SemanticPackage.INPUT_TERMINAL: return createInputTerminal(); - case SemanticPackage.INPUT_OUTPUT_TERMINAL: return createInputOutputTerminal(); - default: - throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$//$NON-NLS-2$ - } - } - - /** - * - * - * @generated - */ - public LED createLED() { - LEDImpl led = new LEDImpl(); - return led; - } - - /** - * - * - * @generated - */ - public Wire createWire() { - WireImpl wire = new WireImpl(); - return wire; - } - - /** - * - * - * @generated - */ - public Circuit createCircuit() { - CircuitImpl circuit = new CircuitImpl(); - return circuit; - } - - /** - * - * - * @generated - */ - public FlowContainer createFlowContainer() { - FlowContainerImpl flowContainer = new FlowContainerImpl(); - return flowContainer; - } - - /** - * - * - * @generated - */ - public AndGate createAndGate() { - AndGateImpl andGate = new AndGateImpl(); - return andGate; - } - - /** - * - * - * @generated - */ - public OrGate createOrGate() { - OrGateImpl orGate = new OrGateImpl(); - return orGate; - } - - /** - * - * - * @generated - */ - public XORGate createXORGate() { - XORGateImpl xorGate = new XORGateImpl(); - return xorGate; - } - - /** - * - * - * @generated - */ - public Model createModel() { - ModelImpl model = new ModelImpl(); - return model; - } - - /** - * - * - * @generated - */ - public OutputTerminal createOutputTerminal() { - OutputTerminalImpl outputTerminal = new OutputTerminalImpl(); - return outputTerminal; - } - - /** - * - * - * @generated - */ - public InputTerminal createInputTerminal() { - InputTerminalImpl inputTerminal = new InputTerminalImpl(); - return inputTerminal; - } - - /** - * - * - * @generated - */ - public InputOutputTerminal createInputOutputTerminal() { - InputOutputTerminalImpl inputOutputTerminal = new InputOutputTerminalImpl(); - return inputOutputTerminal; - } - - /** - * - * - * @generated - */ - public SemanticPackage getSemanticPackage() { - return (SemanticPackage)getEPackage(); - } - - /** - * - * - * @deprecated - * @generated - */ - public static SemanticPackage getPackage() { - return SemanticPackage.eINSTANCE; - } - -} //SemanticFactoryImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/InputOutputTerminalImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/InputOutputTerminalImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/InputOutputTerminalImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/InputOutputTerminalImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,145 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Input Output Terminal'. - * - *

- *

- * - * @generated - */ -public class InputOutputTerminalImpl extends OutputTerminalImpl implements InputOutputTerminal { - /** - * - * - * @generated - */ - protected InputOutputTerminalImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getInputOutputTerminal(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.INPUT_OUTPUT_TERMINAL__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.INPUT_OUTPUT_TERMINAL__TERMINALS: - return getTerminals(); - case SemanticPackage.INPUT_OUTPUT_TERMINAL__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.INPUT_OUTPUT_TERMINAL__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.INPUT_OUTPUT_TERMINAL__ID: - return getId(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.INPUT_OUTPUT_TERMINAL__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.INPUT_OUTPUT_TERMINAL__ID: - setId((String)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.INPUT_OUTPUT_TERMINAL__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.INPUT_OUTPUT_TERMINAL__ID: - setId(ID_EDEFAULT); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.INPUT_OUTPUT_TERMINAL__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.INPUT_OUTPUT_TERMINAL__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.INPUT_OUTPUT_TERMINAL__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.INPUT_OUTPUT_TERMINAL__ID: - return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); - } - return eDynamicIsSet(eFeature); - } - -} //InputOutputTerminalImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ModelImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ModelImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ModelImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ModelImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,148 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Model; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Model'. - * - *

- *

- * - * @generated - */ -public class ModelImpl extends ContainerElementImpl implements Model { - /** - * - * - * @generated - */ - protected ModelImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getModel(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.MODEL__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - case SemanticPackage.MODEL__CHILDREN: - return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.MODEL__TERMINALS: - return getTerminals(); - case SemanticPackage.MODEL__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.MODEL__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.MODEL__CHILDREN: - return getChildren(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.MODEL__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.MODEL__CHILDREN: - getChildren().clear(); - getChildren().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.MODEL__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.MODEL__CHILDREN: - getChildren().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.MODEL__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.MODEL__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.MODEL__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.MODEL__CHILDREN: - return children != null && !children.isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //ModelImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ElementImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ElementImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ElementImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ElementImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,204 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.Iterator; - -import org.eclipse.emf.common.notify.NotificationChain; -import org.eclipse.emf.common.util.EList; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; -import org.eclipse.emf.ecore.impl.EObjectImpl; -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.EcoreEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; - -/** - * - * An implementation of the model object 'Element'. - * - *

- * The following features are implemented: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ElementImpl#getTerminals Terminals}
  • - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ElementImpl#getOutputTerminals Output Terminals}
  • - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ElementImpl#getInputTerminals Input Terminals}
  • - *
- *

- * - * @generated - */ -public abstract class ElementImpl extends EObjectImpl implements Element { - /** - * The cached value of the '{@link #getTerminals() Terminals}' containment reference list. - * - * - * @see #getTerminals() - * @generated - * @ordered - */ - protected EList terminals = null; - - /** - * - * - * @generated - */ - protected ElementImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getElement(); - } - - /** - * - * - * @generated - */ - public EList getTerminals() { - if (terminals == null) { - terminals = new EObjectContainmentEList(Terminal.class, this, SemanticPackage.ELEMENT__TERMINALS); - } - return terminals; - } - - /** - * - * - * @generated NOT - */ - public EList getOutputTerminals() { - ArrayList outputTerminals = new ArrayList(); - for (Iterator iter = getTerminals().iterator(); iter.hasNext(); ) { - Terminal terminal = (Terminal)iter.next(); - if (terminal instanceof OutputTerminal) - outputTerminals.add(terminal); - } - return new EcoreEList.UnmodifiableEList(this, - SemanticPackage.eINSTANCE.getElement_InputTerminals(), - outputTerminals.size(), outputTerminals.toArray()); - } - - /** - * - * - * @generated NOT - */ - public EList getInputTerminals() { - ArrayList inputTerminals = new ArrayList(); - for (Iterator iter = getTerminals().iterator(); iter.hasNext(); ) { - Terminal terminal = (Terminal)iter.next(); - if (terminal instanceof InputTerminal) - inputTerminals.add(terminal); - } - return new EcoreEList.UnmodifiableEList(this, - SemanticPackage.eINSTANCE.getElement_InputTerminals(), - inputTerminals.size(), inputTerminals.toArray()); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.ELEMENT__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.ELEMENT__TERMINALS: - return getTerminals(); - case SemanticPackage.ELEMENT__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.ELEMENT__INPUT_TERMINALS: - return getInputTerminals(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.ELEMENT__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.ELEMENT__TERMINALS: - getTerminals().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.ELEMENT__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.ELEMENT__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.ELEMENT__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //ElementImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/OutputTerminalImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/OutputTerminalImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/OutputTerminalImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/OutputTerminalImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,145 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Output Terminal'. - * - *

- *

- * - * @generated - */ -public class OutputTerminalImpl extends TerminalImpl implements OutputTerminal { - /** - * - * - * @generated - */ - protected OutputTerminalImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getOutputTerminal(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.OUTPUT_TERMINAL__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.OUTPUT_TERMINAL__TERMINALS: - return getTerminals(); - case SemanticPackage.OUTPUT_TERMINAL__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.OUTPUT_TERMINAL__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.OUTPUT_TERMINAL__ID: - return getId(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.OUTPUT_TERMINAL__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.OUTPUT_TERMINAL__ID: - setId((String)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.OUTPUT_TERMINAL__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.OUTPUT_TERMINAL__ID: - setId(ID_EDEFAULT); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.OUTPUT_TERMINAL__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.OUTPUT_TERMINAL__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.OUTPUT_TERMINAL__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.OUTPUT_TERMINAL__ID: - return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); - } - return eDynamicIsSet(eFeature); - } - -} //OutputTerminalImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/LEDImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/LEDImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/LEDImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/LEDImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,208 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'LED'. - * - *

- * The following features are implemented: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.LEDImpl#getValue Value}
  • - *
- *

- * - * @generated - */ -public class LEDImpl extends ElementImpl implements LED { - /** - * The default value of the '{@link #getValue() Value}' attribute. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected static final int VALUE_EDEFAULT = 0; - - /** - * The cached value of the '{@link #getValue() Value}' attribute. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected int value = VALUE_EDEFAULT; - - /** - * - * - * @generated - */ - protected LEDImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getLED(); - } - - /** - * - * - * @generated - */ - public int getValue() { - return value; - } - - /** - * - * - * @generated - */ - public void setValue(int newValue) { - int oldValue = value; - value = newValue; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SemanticPackage.LED__VALUE, oldValue, value)); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.LED__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.LED__TERMINALS: - return getTerminals(); - case SemanticPackage.LED__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.LED__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.LED__VALUE: - return new Integer(getValue()); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.LED__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.LED__VALUE: - setValue(((Integer)newValue).intValue()); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.LED__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.LED__VALUE: - setValue(VALUE_EDEFAULT); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.LED__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.LED__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.LED__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.LED__VALUE: - return value != VALUE_EDEFAULT; - } - return eDynamicIsSet(eFeature); - } - - /** - * - * - * @generated - */ - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuffer result = new StringBuffer(super.toString()); - result.append(" (value: "); //$NON-NLS-1$ - result.append(value); - result.append(')'); - return result.toString(); - } - -} //LEDImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/XORGateImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/XORGateImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/XORGateImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/XORGateImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,135 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'XOR Gate'. - * - *

- *

- * - * @generated - */ -public class XORGateImpl extends GateImpl implements XORGate { - /** - * - * - * @generated - */ - protected XORGateImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getXORGate(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.XOR_GATE__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.XOR_GATE__TERMINALS: - return getTerminals(); - case SemanticPackage.XOR_GATE__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.XOR_GATE__INPUT_TERMINALS: - return getInputTerminals(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.XOR_GATE__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.XOR_GATE__TERMINALS: - getTerminals().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.XOR_GATE__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.XOR_GATE__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.XOR_GATE__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //XORGateImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/CircuitImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/CircuitImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/CircuitImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/CircuitImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,148 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Circuit'. - * - *

- *

- * - * @generated - */ -public class CircuitImpl extends ContainerElementImpl implements Circuit { - /** - * - * - * @generated - */ - protected CircuitImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getCircuit(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.CIRCUIT__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - case SemanticPackage.CIRCUIT__CHILDREN: - return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.CIRCUIT__TERMINALS: - return getTerminals(); - case SemanticPackage.CIRCUIT__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.CIRCUIT__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.CIRCUIT__CHILDREN: - return getChildren(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.CIRCUIT__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.CIRCUIT__CHILDREN: - getChildren().clear(); - getChildren().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.CIRCUIT__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.CIRCUIT__CHILDREN: - getChildren().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.CIRCUIT__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.CIRCUIT__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.CIRCUIT__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.CIRCUIT__CHILDREN: - return children != null && !children.isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //CircuitImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/InputTerminalImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/InputTerminalImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/InputTerminalImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/InputTerminalImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,143 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -/** - * - * An implementation of the model object 'Input Terminal'. - * - *

- *

- * - * @generated - */ -public class InputTerminalImpl extends TerminalImpl implements InputTerminal { - /** - * - * - * @generated - */ - protected InputTerminalImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getInputTerminal(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.INPUT_TERMINAL__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.INPUT_TERMINAL__TERMINALS: - return getTerminals(); - case SemanticPackage.INPUT_TERMINAL__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.INPUT_TERMINAL__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.INPUT_TERMINAL__ID: - return getId(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.INPUT_TERMINAL__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.INPUT_TERMINAL__ID: - setId((String)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.INPUT_TERMINAL__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.INPUT_TERMINAL__ID: - setId(ID_EDEFAULT); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.INPUT_TERMINAL__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.INPUT_TERMINAL__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.INPUT_TERMINAL__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.INPUT_TERMINAL__ID: - return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); - } - return eDynamicIsSet(eFeature); - } - -} //InputTerminalImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ContainerElementImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ContainerElementImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ContainerElementImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/ContainerElementImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,178 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Container Element'. - * - *

- * The following features are implemented: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ContainerElementImpl#getChildren Children}
  • - *
- *

- * - * @generated - */ -public abstract class ContainerElementImpl extends ElementImpl implements ContainerElement { - /** - * The cached value of the '{@link #getChildren() Children}' containment reference list. - * - * - * @see #getChildren() - * @generated - * @ordered - */ - protected EList children = null; - - /** - * - * - * @generated - */ - protected ContainerElementImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getContainerElement(); - } - - /** - * - * - * @generated - */ - public EList getChildren() { - if (children == null) { - children = new EObjectContainmentEList(Element.class, this, SemanticPackage.CONTAINER_ELEMENT__CHILDREN); - } - return children; - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.CONTAINER_ELEMENT__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: - return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.CONTAINER_ELEMENT__TERMINALS: - return getTerminals(); - case SemanticPackage.CONTAINER_ELEMENT__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.CONTAINER_ELEMENT__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: - return getChildren(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.CONTAINER_ELEMENT__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: - getChildren().clear(); - getChildren().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.CONTAINER_ELEMENT__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: - getChildren().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.CONTAINER_ELEMENT__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.CONTAINER_ELEMENT__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.CONTAINER_ELEMENT__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: - return children != null && !children.isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //ContainerElementImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/AndGateImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/AndGateImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/AndGateImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/AndGateImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,135 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'And Gate'. - * - *

- *

- * - * @generated - */ -public class AndGateImpl extends GateImpl implements AndGate { - /** - * - * - * @generated - */ - protected AndGateImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getAndGate(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.AND_GATE__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.AND_GATE__TERMINALS: - return getTerminals(); - case SemanticPackage.AND_GATE__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.AND_GATE__INPUT_TERMINALS: - return getInputTerminals(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.AND_GATE__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.AND_GATE__TERMINALS: - getTerminals().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.AND_GATE__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.AND_GATE__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.AND_GATE__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //AndGateImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/WireImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/WireImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/WireImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/WireImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,260 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; -import org.eclipse.emf.ecore.impl.ENotificationImpl; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; - -/** - * - * An implementation of the model object 'Wire'. - * - *

- * The following features are implemented: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.WireImpl#getSource Source}
  • - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.WireImpl#getTarget Target}
  • - *
- *

- * - * @generated - */ -public class WireImpl extends ElementImpl implements Wire { - /** - * The cached value of the '{@link #getSource() Source}' reference. - * - * - * @see #getSource() - * @generated - * @ordered - */ - protected OutputTerminal source = null; - - /** - * The cached value of the '{@link #getTarget() Target}' reference. - * - * - * @see #getTarget() - * @generated - * @ordered - */ - protected InputTerminal target = null; - - /** - * - * - * @generated - */ - protected WireImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getWire(); - } - - /** - * - * - * @generated - */ - public OutputTerminal getSource() { - if (source != null && source.eIsProxy()) { - OutputTerminal oldSource = source; - source = (OutputTerminal)eResolveProxy((InternalEObject)source); - if (source != oldSource) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SemanticPackage.WIRE__SOURCE, oldSource, source)); - } - } - return source; - } - - /** - * - * - * @generated - */ - public OutputTerminal basicGetSource() { - return source; - } - - /** - * - * - * @generated - */ - public void setSource(OutputTerminal newSource) { - OutputTerminal oldSource = source; - source = newSource; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SemanticPackage.WIRE__SOURCE, oldSource, source)); - } - - /** - * - * - * @generated - */ - public InputTerminal getTarget() { - if (target != null && target.eIsProxy()) { - InputTerminal oldTarget = target; - target = (InputTerminal)eResolveProxy((InternalEObject)target); - if (target != oldTarget) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SemanticPackage.WIRE__TARGET, oldTarget, target)); - } - } - return target; - } - - /** - * - * - * @generated - */ - public InputTerminal basicGetTarget() { - return target; - } - - /** - * - * - * @generated - */ - public void setTarget(InputTerminal newTarget) { - InputTerminal oldTarget = target; - target = newTarget; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SemanticPackage.WIRE__TARGET, oldTarget, target)); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.WIRE__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.WIRE__TERMINALS: - return getTerminals(); - case SemanticPackage.WIRE__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.WIRE__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.WIRE__SOURCE: - if (resolve) return getSource(); - return basicGetSource(); - case SemanticPackage.WIRE__TARGET: - if (resolve) return getTarget(); - return basicGetTarget(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.WIRE__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.WIRE__SOURCE: - setSource((OutputTerminal)newValue); - return; - case SemanticPackage.WIRE__TARGET: - setTarget((InputTerminal)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.WIRE__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.WIRE__SOURCE: - setSource((OutputTerminal)null); - return; - case SemanticPackage.WIRE__TARGET: - setTarget((InputTerminal)null); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.WIRE__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.WIRE__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.WIRE__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.WIRE__SOURCE: - return source != null; - case SemanticPackage.WIRE__TARGET: - return target != null; - } - return eDynamicIsSet(eFeature); - } - -} //WireImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/SemanticPackageImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/SemanticPackageImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/SemanticPackageImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/SemanticPackageImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,576 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Model; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticFactory; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate; - -import org.eclipse.emf.ecore.EAttribute; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.EReference; - -import org.eclipse.emf.ecore.impl.EPackageImpl; - -/** - * - * An implementation of the model Package. - * - * @generated - */ -public class SemanticPackageImpl extends EPackageImpl implements SemanticPackage { - /** - * - * - * @generated - */ - private EClass ledEClass = null; - - /** - * - * - * @generated - */ - private EClass elementEClass = null; - - /** - * - * - * @generated - */ - private EClass wireEClass = null; - - /** - * - * - * @generated - */ - private EClass circuitEClass = null; - - /** - * - * - * @generated - */ - private EClass gateEClass = null; - - /** - * - * - * @generated - */ - private EClass flowContainerEClass = null; - - /** - * - * - * @generated - */ - private EClass andGateEClass = null; - - /** - * - * - * @generated - */ - private EClass orGateEClass = null; - - /** - * - * - * @generated - */ - private EClass xorGateEClass = null; - - /** - * - * - * @generated - */ - private EClass modelEClass = null; - - /** - * - * - * @generated - */ - private EClass containerElementEClass = null; - - /** - * - * - * @generated - */ - private EClass terminalEClass = null; - - /** - * - * - * @generated - */ - private EClass outputTerminalEClass = null; - - /** - * - * - * @generated - */ - private EClass inputTerminalEClass = null; - - /** - * - * - * @generated - */ - private EClass inputOutputTerminalEClass = null; - - /** - * Creates an instance of the model Package, registered with - * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package - * package URI value. - *

Note: the correct way to create the package is via the static - * factory method {@link #init init()}, which also performs - * initialization of the package, or returns the registered package, - * if one already exists. - * - * - * @see org.eclipse.emf.ecore.EPackage.Registry - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#eNS_URI - * @see #init() - * @generated - */ - private SemanticPackageImpl() { - super(eNS_URI, SemanticFactory.eINSTANCE); - } - - /** - * - * - * @generated - */ - private static boolean isInited = false; - - /** - * Creates, registers, and initializes the Package for this - * model, and for any others upon which it depends. Simple - * dependencies are satisfied by calling this method on all - * dependent packages before doing anything else. This method drives - * initialization for interdependent packages directly, in parallel - * with this package, itself. - *

Of this package and its interdependencies, all packages which - * have not yet been registered by their URI values are first created - * and registered. The packages are then initialized in two steps: - * meta-model objects for all of the packages are created before any - * are initialized, since one package's meta-model objects may refer to - * those of another. - *

Invocation of this method will not affect any packages that have - * already been initialized. - * - * - * @see #eNS_URI - * @see #createPackageContents() - * @see #initializePackageContents() - * @generated - */ - public static SemanticPackage init() { - if (isInited) return (SemanticPackage)EPackage.Registry.INSTANCE.getEPackage(SemanticPackage.eNS_URI); - - // Obtain or create and register package - SemanticPackageImpl theSemanticPackage = (SemanticPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof SemanticPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new SemanticPackageImpl()); - - isInited = true; - - // Create package meta-data objects - theSemanticPackage.createPackageContents(); - - // Initialize created meta-data - theSemanticPackage.initializePackageContents(); - - // Mark meta-data to indicate it can't be changed - theSemanticPackage.freeze(); - - return theSemanticPackage; - } - - /** - * - * - * @generated - */ - public EClass getLED() { - return ledEClass; - } - - /** - * - * - * @generated - */ - public EAttribute getLED_Value() { - return (EAttribute)ledEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - public EClass getElement() { - return elementEClass; - } - - /** - * - * - * @generated - */ - public EReference getElement_Terminals() { - return (EReference)elementEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - public EReference getElement_OutputTerminals() { - return (EReference)elementEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - public EReference getElement_InputTerminals() { - return (EReference)elementEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - public EClass getWire() { - return wireEClass; - } - - /** - * - * - * @generated - */ - public EReference getWire_Source() { - return (EReference)wireEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - public EReference getWire_Target() { - return (EReference)wireEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - public EClass getCircuit() { - return circuitEClass; - } - - /** - * - * - * @generated - */ - public EClass getGate() { - return gateEClass; - } - - /** - * - * - * @generated - */ - public EClass getFlowContainer() { - return flowContainerEClass; - } - - /** - * - * - * @generated - */ - public EClass getAndGate() { - return andGateEClass; - } - - /** - * - * - * @generated - */ - public EClass getOrGate() { - return orGateEClass; - } - - /** - * - * - * @generated - */ - public EClass getXORGate() { - return xorGateEClass; - } - - /** - * - * - * @generated - */ - public EClass getModel() { - return modelEClass; - } - - /** - * - * - * @generated - */ - public EClass getContainerElement() { - return containerElementEClass; - } - - /** - * - * - * @generated - */ - public EReference getContainerElement_Children() { - return (EReference)containerElementEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - public EClass getTerminal() { - return terminalEClass; - } - - /** - * - * - * @generated - */ - public EAttribute getTerminal_Id() { - return (EAttribute)terminalEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - public EClass getOutputTerminal() { - return outputTerminalEClass; - } - - /** - * - * - * @generated - */ - public EClass getInputTerminal() { - return inputTerminalEClass; - } - - /** - * - * - * @generated - */ - public EClass getInputOutputTerminal() { - return inputOutputTerminalEClass; - } - - /** - * - * - * @generated - */ - public SemanticFactory getSemanticFactory() { - return (SemanticFactory)getEFactoryInstance(); - } - - /** - * - * - * @generated - */ - private boolean isCreated = false; - - /** - * Creates the meta-model objects for the package. This method is - * guarded to have no affect on any invocation but its first. - * - * - * @generated - */ - public void createPackageContents() { - if (isCreated) return; - isCreated = true; - - // Create classes and their features - ledEClass = createEClass(LED); - createEAttribute(ledEClass, LED__VALUE); - - elementEClass = createEClass(ELEMENT); - createEReference(elementEClass, ELEMENT__TERMINALS); - createEReference(elementEClass, ELEMENT__OUTPUT_TERMINALS); - createEReference(elementEClass, ELEMENT__INPUT_TERMINALS); - - wireEClass = createEClass(WIRE); - createEReference(wireEClass, WIRE__SOURCE); - createEReference(wireEClass, WIRE__TARGET); - - circuitEClass = createEClass(CIRCUIT); - - gateEClass = createEClass(GATE); - - flowContainerEClass = createEClass(FLOW_CONTAINER); - - andGateEClass = createEClass(AND_GATE); - - orGateEClass = createEClass(OR_GATE); - - xorGateEClass = createEClass(XOR_GATE); - - modelEClass = createEClass(MODEL); - - containerElementEClass = createEClass(CONTAINER_ELEMENT); - createEReference(containerElementEClass, CONTAINER_ELEMENT__CHILDREN); - - terminalEClass = createEClass(TERMINAL); - createEAttribute(terminalEClass, TERMINAL__ID); - - outputTerminalEClass = createEClass(OUTPUT_TERMINAL); - - inputTerminalEClass = createEClass(INPUT_TERMINAL); - - inputOutputTerminalEClass = createEClass(INPUT_OUTPUT_TERMINAL); - } - - /** - * - * - * @generated - */ - private boolean isInitialized = false; - - /** - * Complete the initialization of the package and its meta-model. This - * method is guarded to have no affect on any invocation but its first. - * - * - * @generated - */ - public void initializePackageContents() { - if (isInitialized) return; - isInitialized = true; - - // Initialize package - setName(eNAME); - setNsPrefix(eNS_PREFIX); - setNsURI(eNS_URI); - - // Add supertypes to classes - ledEClass.getESuperTypes().add(this.getElement()); - wireEClass.getESuperTypes().add(this.getElement()); - circuitEClass.getESuperTypes().add(this.getContainerElement()); - gateEClass.getESuperTypes().add(this.getElement()); - flowContainerEClass.getESuperTypes().add(this.getContainerElement()); - andGateEClass.getESuperTypes().add(this.getGate()); - orGateEClass.getESuperTypes().add(this.getGate()); - xorGateEClass.getESuperTypes().add(this.getGate()); - modelEClass.getESuperTypes().add(this.getContainerElement()); - containerElementEClass.getESuperTypes().add(this.getElement()); - terminalEClass.getESuperTypes().add(this.getElement()); - outputTerminalEClass.getESuperTypes().add(this.getTerminal()); - inputTerminalEClass.getESuperTypes().add(this.getTerminal()); - inputOutputTerminalEClass.getESuperTypes().add(this.getOutputTerminal()); - inputOutputTerminalEClass.getESuperTypes().add(this.getInputTerminal()); - - // Initialize classes and features; add operations and parameters - initEClass(ledEClass, LED.class, "LED", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - initEAttribute(getLED_Value(), ecorePackage.getEInt(), "value", "0", 0, 1, LED.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$//$NON-NLS-2$ - - initEClass(elementEClass, Element.class, "Element", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - initEReference(getElement_Terminals(), this.getTerminal(), null, "terminals", null, 0, -1, Element.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ - initEReference(getElement_OutputTerminals(), this.getTerminal(), null, "outputTerminals", null, 0, -1, Element.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ - initEReference(getElement_InputTerminals(), this.getTerminal(), null, "inputTerminals", null, 0, -1, Element.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ - - initEClass(wireEClass, Wire.class, "Wire", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - initEReference(getWire_Source(), this.getOutputTerminal(), null, "source", null, 1, 1, Wire.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ - initEReference(getWire_Target(), this.getInputTerminal(), null, "target", null, 1, 1, Wire.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ - - initEClass(circuitEClass, Circuit.class, "Circuit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(gateEClass, Gate.class, "Gate", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(flowContainerEClass, FlowContainer.class, "FlowContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(andGateEClass, AndGate.class, "AndGate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(orGateEClass, OrGate.class, "OrGate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(xorGateEClass, XORGate.class, "XORGate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(modelEClass, Model.class, "Model", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(containerElementEClass, ContainerElement.class, "ContainerElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - initEReference(getContainerElement_Children(), this.getElement(), null, "children", null, 0, -1, ContainerElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ - - initEClass(terminalEClass, Terminal.class, "Terminal", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - initEAttribute(getTerminal_Id(), ecorePackage.getEString(), "id", "", 0, 1, Terminal.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$ - - initEClass(outputTerminalEClass, OutputTerminal.class, "OutputTerminal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(inputTerminalEClass, InputTerminal.class, "InputTerminal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - initEClass(inputOutputTerminalEClass, InputOutputTerminal.class, "InputOutputTerminal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ - - // Create resource - createResource(eNS_URI); - } - -} //SemanticPackageImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/OrGateImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/OrGateImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/OrGateImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/OrGateImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,135 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Or Gate'. - * - *

- *

- * - * @generated - */ -public class OrGateImpl extends GateImpl implements OrGate { - /** - * - * - * @generated - */ - protected OrGateImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getOrGate(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.OR_GATE__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.OR_GATE__TERMINALS: - return getTerminals(); - case SemanticPackage.OR_GATE__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.OR_GATE__INPUT_TERMINALS: - return getInputTerminals(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.OR_GATE__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.OR_GATE__TERMINALS: - getTerminals().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.OR_GATE__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.OR_GATE__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.OR_GATE__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //OrGateImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/GateImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/GateImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/GateImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/GateImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,135 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Gate'. - * - *

- *

- * - * @generated - */ -public abstract class GateImpl extends ElementImpl implements Gate { - /** - * - * - * @generated - */ - protected GateImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getGate(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.GATE__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.GATE__TERMINALS: - return getTerminals(); - case SemanticPackage.GATE__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.GATE__INPUT_TERMINALS: - return getInputTerminals(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.GATE__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.GATE__TERMINALS: - getTerminals().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.GATE__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.GATE__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.GATE__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //GateImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/FlowContainerImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/FlowContainerImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/FlowContainerImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/FlowContainerImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,148 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Flow Container'. - * - *

- *

- * - * @generated - */ -public class FlowContainerImpl extends ContainerElementImpl implements FlowContainer { - /** - * - * - * @generated - */ - protected FlowContainerImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getFlowContainer(); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.FLOW_CONTAINER__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - case SemanticPackage.FLOW_CONTAINER__CHILDREN: - return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.FLOW_CONTAINER__TERMINALS: - return getTerminals(); - case SemanticPackage.FLOW_CONTAINER__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.FLOW_CONTAINER__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.FLOW_CONTAINER__CHILDREN: - return getChildren(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.FLOW_CONTAINER__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.FLOW_CONTAINER__CHILDREN: - getChildren().clear(); - getChildren().addAll((Collection)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.FLOW_CONTAINER__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.FLOW_CONTAINER__CHILDREN: - getChildren().clear(); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.FLOW_CONTAINER__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.FLOW_CONTAINER__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.FLOW_CONTAINER__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.FLOW_CONTAINER__CHILDREN: - return children != null && !children.isEmpty(); - } - return eDynamicIsSet(eFeature); - } - -} //FlowContainerImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/TerminalImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/TerminalImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/TerminalImpl.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/impl/TerminalImpl.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,208 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.impl; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Terminal'. - * - *

- * The following features are implemented: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.TerminalImpl#getId Id}
  • - *
- *

- * - * @generated - */ -public abstract class TerminalImpl extends ElementImpl implements Terminal { - /** - * The default value of the '{@link #getId() Id}' attribute. - * - * - * @see #getId() - * @generated - * @ordered - */ - protected static final String ID_EDEFAULT = ""; //$NON-NLS-1$ - - /** - * The cached value of the '{@link #getId() Id}' attribute. - * - * - * @see #getId() - * @generated - * @ordered - */ - protected String id = ID_EDEFAULT; - - /** - * - * - * @generated - */ - protected TerminalImpl() { - super(); - } - - /** - * - * - * @generated - */ - protected EClass eStaticClass() { - return SemanticPackage.eINSTANCE.getTerminal(); - } - - /** - * - * - * @generated - */ - public String getId() { - return id; - } - - /** - * - * - * @generated - */ - public void setId(String newId) { - String oldId = id; - id = newId; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SemanticPackage.TERMINAL__ID, oldId, id)); - } - - /** - * - * - * @generated - */ - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { - if (featureID >= 0) { - switch (eDerivedStructuralFeatureID(featureID, baseClass)) { - case SemanticPackage.TERMINAL__TERMINALS: - return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); - default: - return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); - } - } - return eBasicSetContainer(null, featureID, msgs); - } - - /** - * - * - * @generated - */ - public Object eGet(EStructuralFeature eFeature, boolean resolve) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.TERMINAL__TERMINALS: - return getTerminals(); - case SemanticPackage.TERMINAL__OUTPUT_TERMINALS: - return getOutputTerminals(); - case SemanticPackage.TERMINAL__INPUT_TERMINALS: - return getInputTerminals(); - case SemanticPackage.TERMINAL__ID: - return getId(); - } - return eDynamicGet(eFeature, resolve); - } - - /** - * - * - * @generated - */ - public void eSet(EStructuralFeature eFeature, Object newValue) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.TERMINAL__TERMINALS: - getTerminals().clear(); - getTerminals().addAll((Collection)newValue); - return; - case SemanticPackage.TERMINAL__ID: - setId((String)newValue); - return; - } - eDynamicSet(eFeature, newValue); - } - - /** - * - * - * @generated - */ - public void eUnset(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.TERMINAL__TERMINALS: - getTerminals().clear(); - return; - case SemanticPackage.TERMINAL__ID: - setId(ID_EDEFAULT); - return; - } - eDynamicUnset(eFeature); - } - - /** - * - * - * @generated - */ - public boolean eIsSet(EStructuralFeature eFeature) { - switch (eDerivedStructuralFeatureID(eFeature)) { - case SemanticPackage.TERMINAL__TERMINALS: - return terminals != null && !terminals.isEmpty(); - case SemanticPackage.TERMINAL__OUTPUT_TERMINALS: - return !getOutputTerminals().isEmpty(); - case SemanticPackage.TERMINAL__INPUT_TERMINALS: - return !getInputTerminals().isEmpty(); - case SemanticPackage.TERMINAL__ID: - return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); - } - return eDynamicIsSet(eFeature); - } - - /** - * - * - * @generated - */ - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuffer result = new StringBuffer(super.toString()); - result.append(" (id: "); //$NON-NLS-1$ - result.append(id); - result.append(')'); - return result.toString(); - } - -} //TerminalImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/AndGate.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/AndGate.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/AndGate.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/AndGate.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'And Gate'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getAndGate() - * @model - * @generated - */ -public interface AndGate extends Gate { -// no default API -}//AndGate \ No newline at end of file Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Circuit.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Circuit.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Circuit.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Circuit.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Circuit'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getCircuit() - * @model - * @generated - */ -public interface Circuit extends ContainerElement { -// no default API -} // Circuit Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/SemanticFactory.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/SemanticFactory.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/SemanticFactory.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/SemanticFactory.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,141 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - -import org.eclipse.emf.ecore.EFactory; - -/** - * - * The Factory for the model. - * It provides a create method for each non-abstract class of the model. - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage - * @generated - */ -public interface SemanticFactory extends EFactory{ - /** - * The singleton instance of the factory. - * - * - * @generated - */ - SemanticFactory eINSTANCE = new org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticFactoryImpl(); - - /** - * Returns a new object of class 'LED'. - * - * - * @return a new object of class 'LED'. - * @generated - */ - LED createLED(); - - /** - * Returns a new object of class 'Wire'. - * - * - * @return a new object of class 'Wire'. - * @generated - */ - Wire createWire(); - - /** - * Returns a new object of class 'Circuit'. - * - * - * @return a new object of class 'Circuit'. - * @generated - */ - Circuit createCircuit(); - - /** - * Returns a new object of class 'Flow Container'. - * - * - * @return a new object of class 'Flow Container'. - * @generated - */ - FlowContainer createFlowContainer(); - - /** - * Returns a new object of class 'And Gate'. - * - * - * @return a new object of class 'And Gate'. - * @generated - */ - AndGate createAndGate(); - - /** - * Returns a new object of class 'Or Gate'. - * - * - * @return a new object of class 'Or Gate'. - * @generated - */ - OrGate createOrGate(); - - /** - * Returns a new object of class 'XOR Gate'. - * - * - * @return a new object of class 'XOR Gate'. - * @generated - */ - XORGate createXORGate(); - - /** - * Returns a new object of class 'Model'. - * - * - * @return a new object of class 'Model'. - * @generated - */ - Model createModel(); - - /** - * Returns a new object of class 'Output Terminal'. - * - * - * @return a new object of class 'Output Terminal'. - * @generated - */ - OutputTerminal createOutputTerminal(); - - /** - * Returns a new object of class 'Input Terminal'. - * - * - * @return a new object of class 'Input Terminal'. - * @generated - */ - InputTerminal createInputTerminal(); - - /** - * Returns a new object of class 'Input Output Terminal'. - * - * - * @return a new object of class 'Input Output Terminal'. - * @generated - */ - InputOutputTerminal createInputOutputTerminal(); - - /** - * Returns the package supported by this factory. - * - * - * @return the package supported by this factory. - * @generated - */ - SemanticPackage getSemanticPackage(); - -} //SemanticFactory Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/XORGate.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/XORGate.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/XORGate.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/XORGate.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'XOR Gate'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getXORGate() - * @model - * @generated - */ -public interface XORGate extends Gate { -// no default API -} // XORGate Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/OrGate.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/OrGate.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/OrGate.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/OrGate.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Or Gate'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getOrGate() - * @model - * @generated - */ -public interface OrGate extends Gate { -// no default API -} // OrGate Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/InputTerminal.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/InputTerminal.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/InputTerminal.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/InputTerminal.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Input Terminal'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getInputTerminal() - * @model - * @generated - */ -public interface InputTerminal extends Terminal { -// no default API -} // InputTerminal Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/FlowContainer.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/FlowContainer.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/FlowContainer.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/FlowContainer.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Flow Container'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getFlowContainer() - * @model - * @generated - */ -public interface FlowContainer extends ContainerElement { -// no default API -} // FlowContainer Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Gate.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Gate.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Gate.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Gate.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Gate'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getGate() - * @model abstract="true" - * @generated - */ -public interface Gate extends Element { -// no default API -} // Gate Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Wire.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Wire.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Wire.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Wire.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,85 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Wire'. - * - * - *

- * The following features are supported: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire#getSource Source}
  • - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire#getTarget Target}
  • - *
- *

- * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getWire() - * @model - * @generated - */ -public interface Wire extends Element{ - /** - * Returns the value of the 'Source' reference. - * - *

- * If the meaning of the 'Source' reference isn't clear, - * there really should be more of a description here... - *

- * - * @return the value of the 'Source' reference. - * @see #setSource(OutputTerminal) - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getWire_Source() - * @model required="true" - * @generated - */ - OutputTerminal getSource(); - - /** - * Sets the value of the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire#getSource Source}' reference. - * - * - * @param value the new value of the 'Source' reference. - * @see #getSource() - * @generated - */ - void setSource(OutputTerminal value); - - /** - * Returns the value of the 'Target' reference. - * - *

- * If the meaning of the 'Target' reference isn't clear, - * there really should be more of a description here... - *

- * - * @return the value of the 'Target' reference. - * @see #setTarget(InputTerminal) - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getWire_Target() - * @model required="true" - * @generated - */ - InputTerminal getTarget(); - - /** - * Sets the value of the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire#getTarget Target}' reference. - * - * - * @param value the new value of the 'Target' reference. - * @see #getTarget() - * @generated - */ - void setTarget(InputTerminal value); - -} // Wire Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/SemanticPackage.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/SemanticPackage.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/SemanticPackage.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/SemanticPackage.java 7 Feb 2006 15:18:57 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,1105 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - -import org.eclipse.emf.ecore.EAttribute; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.EReference; - -/** - * - * The Package for the model. - * It contains accessors for the meta objects to represent - *
    - *
  • each class,
  • - *
  • each feature of each class,
  • - *
  • each enum,
  • - *
  • and each data type
  • - *
- * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticFactory - * @generated - */ -public interface SemanticPackage extends EPackage{ - /** - * The package name. - * - * - * @generated - */ - String eNAME = "semantic"; //$NON-NLS-1$ - - /** - * The package namespace URI. - * - * - * @generated - */ - String eNS_URI = "http://www.eclipse.org/gmf/examples/runtime/1.0.0/logicsemantic"; //$NON-NLS-1$ - - /** - * The package namespace name. - * - * - * @generated - */ - String eNS_PREFIX = "semantic"; //$NON-NLS-1$ - - /** - * The singleton instance of the package. - * - * - * @generated - */ - SemanticPackage eINSTANCE = org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl.init(); - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ElementImpl Element}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ElementImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getElement() - * @generated - */ - int ELEMENT = 1; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int ELEMENT__TERMINALS = 0; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int ELEMENT__OUTPUT_TERMINALS = 1; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int ELEMENT__INPUT_TERMINALS = 2; - - /** - * The number of structural features of the the 'Element' class. - * - * - * @generated - * @ordered - */ - int ELEMENT_FEATURE_COUNT = 3; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.LEDImpl LED}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.LEDImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getLED() - * @generated - */ - int LED = 0; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int LED__TERMINALS = ELEMENT__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int LED__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int LED__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; - - /** - * The feature id for the 'Value' attribute. - * - * - * @generated - * @ordered - */ - int LED__VALUE = ELEMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the the 'LED' class. - * - * - * @generated - * @ordered - */ - int LED_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.WireImpl Wire}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.WireImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getWire() - * @generated - */ - int WIRE = 2; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int WIRE__TERMINALS = ELEMENT__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int WIRE__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int WIRE__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; - - /** - * The feature id for the 'Source' reference. - * - * - * @generated - * @ordered - */ - int WIRE__SOURCE = ELEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Target' reference. - * - * - * @generated - * @ordered - */ - int WIRE__TARGET = ELEMENT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the the 'Wire' class. - * - * - * @generated - * @ordered - */ - int WIRE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ContainerElementImpl Container Element}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ContainerElementImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getContainerElement() - * @generated - */ - int CONTAINER_ELEMENT = 10; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int CONTAINER_ELEMENT__TERMINALS = ELEMENT__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int CONTAINER_ELEMENT__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int CONTAINER_ELEMENT__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; - - /** - * The feature id for the 'Children' containment reference list. - * - * - * @generated - * @ordered - */ - int CONTAINER_ELEMENT__CHILDREN = ELEMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the the 'Container Element' class. - * - * - * @generated - * @ordered - */ - int CONTAINER_ELEMENT_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.CircuitImpl Circuit}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.CircuitImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getCircuit() - * @generated - */ - int CIRCUIT = 3; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int CIRCUIT__TERMINALS = CONTAINER_ELEMENT__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int CIRCUIT__OUTPUT_TERMINALS = CONTAINER_ELEMENT__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int CIRCUIT__INPUT_TERMINALS = CONTAINER_ELEMENT__INPUT_TERMINALS; - - /** - * The feature id for the 'Children' containment reference list. - * - * - * @generated - * @ordered - */ - int CIRCUIT__CHILDREN = CONTAINER_ELEMENT__CHILDREN; - - /** - * The number of structural features of the the 'Circuit' class. - * - * - * @generated - * @ordered - */ - int CIRCUIT_FEATURE_COUNT = CONTAINER_ELEMENT_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.GateImpl Gate}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.GateImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getGate() - * @generated - */ - int GATE = 4; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int GATE__TERMINALS = ELEMENT__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int GATE__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int GATE__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; - - /** - * The number of structural features of the the 'Gate' class. - * - * - * @generated - * @ordered - */ - int GATE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.FlowContainerImpl Flow Container}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.FlowContainerImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getFlowContainer() - * @generated - */ - int FLOW_CONTAINER = 5; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int FLOW_CONTAINER__TERMINALS = CONTAINER_ELEMENT__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int FLOW_CONTAINER__OUTPUT_TERMINALS = CONTAINER_ELEMENT__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int FLOW_CONTAINER__INPUT_TERMINALS = CONTAINER_ELEMENT__INPUT_TERMINALS; - - /** - * The feature id for the 'Children' containment reference list. - * - * - * @generated - * @ordered - */ - int FLOW_CONTAINER__CHILDREN = CONTAINER_ELEMENT__CHILDREN; - - /** - * The number of structural features of the the 'Flow Container' class. - * - * - * @generated - * @ordered - */ - int FLOW_CONTAINER_FEATURE_COUNT = CONTAINER_ELEMENT_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.AndGateImpl And Gate}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.AndGateImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getAndGate() - * @generated - */ - int AND_GATE = 6; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int AND_GATE__TERMINALS = GATE__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int AND_GATE__OUTPUT_TERMINALS = GATE__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int AND_GATE__INPUT_TERMINALS = GATE__INPUT_TERMINALS; - - /** - * The number of structural features of the the 'And Gate' class. - * - * - * @generated - * @ordered - */ - int AND_GATE_FEATURE_COUNT = GATE_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.OrGateImpl Or Gate}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.OrGateImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getOrGate() - * @generated - */ - int OR_GATE = 7; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int OR_GATE__TERMINALS = GATE__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int OR_GATE__OUTPUT_TERMINALS = GATE__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int OR_GATE__INPUT_TERMINALS = GATE__INPUT_TERMINALS; - - /** - * The number of structural features of the the 'Or Gate' class. - * - * - * @generated - * @ordered - */ - int OR_GATE_FEATURE_COUNT = GATE_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.XORGateImpl XOR Gate}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.XORGateImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getXORGate() - * @generated - */ - int XOR_GATE = 8; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int XOR_GATE__TERMINALS = GATE__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int XOR_GATE__OUTPUT_TERMINALS = GATE__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int XOR_GATE__INPUT_TERMINALS = GATE__INPUT_TERMINALS; - - /** - * The number of structural features of the the 'XOR Gate' class. - * - * - * @generated - * @ordered - */ - int XOR_GATE_FEATURE_COUNT = GATE_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ModelImpl Model}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.ModelImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getModel() - * @generated - */ - int MODEL = 9; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int MODEL__TERMINALS = CONTAINER_ELEMENT__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int MODEL__OUTPUT_TERMINALS = CONTAINER_ELEMENT__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int MODEL__INPUT_TERMINALS = CONTAINER_ELEMENT__INPUT_TERMINALS; - - /** - * The feature id for the 'Children' containment reference list. - * - * - * @generated - * @ordered - */ - int MODEL__CHILDREN = CONTAINER_ELEMENT__CHILDREN; - - /** - * The number of structural features of the the 'Model' class. - * - * - * @generated - * @ordered - */ - int MODEL_FEATURE_COUNT = CONTAINER_ELEMENT_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.TerminalImpl Terminal}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.TerminalImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getTerminal() - * @generated - */ - int TERMINAL = 11; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int TERMINAL__TERMINALS = ELEMENT__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int TERMINAL__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int TERMINAL__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; - - /** - * The feature id for the 'Id' attribute. - * - * - * @generated - * @ordered - */ - int TERMINAL__ID = ELEMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the the 'Terminal' class. - * - * - * @generated - * @ordered - */ - int TERMINAL_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1; - - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.OutputTerminalImpl Output Terminal}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.OutputTerminalImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getOutputTerminal() - * @generated - */ - int OUTPUT_TERMINAL = 12; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int OUTPUT_TERMINAL__TERMINALS = TERMINAL__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int OUTPUT_TERMINAL__OUTPUT_TERMINALS = TERMINAL__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int OUTPUT_TERMINAL__INPUT_TERMINALS = TERMINAL__INPUT_TERMINALS; - - /** - * The feature id for the 'Id' attribute. - * - * - * @generated - * @ordered - */ - int OUTPUT_TERMINAL__ID = TERMINAL__ID; - - /** - * The number of structural features of the the 'Output Terminal' class. - * - * - * @generated - * @ordered - */ - int OUTPUT_TERMINAL_FEATURE_COUNT = TERMINAL_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.InputTerminalImpl Input Terminal}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.InputTerminalImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getInputTerminal() - * @generated - */ - int INPUT_TERMINAL = 13; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int INPUT_TERMINAL__TERMINALS = TERMINAL__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int INPUT_TERMINAL__OUTPUT_TERMINALS = TERMINAL__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int INPUT_TERMINAL__INPUT_TERMINALS = TERMINAL__INPUT_TERMINALS; - - /** - * The feature id for the 'Id' attribute. - * - * - * @generated - * @ordered - */ - int INPUT_TERMINAL__ID = TERMINAL__ID; - - /** - * The number of structural features of the the 'Input Terminal' class. - * - * - * @generated - * @ordered - */ - int INPUT_TERMINAL_FEATURE_COUNT = TERMINAL_FEATURE_COUNT + 0; - - - /** - * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.InputOutputTerminalImpl Input Output Terminal}' class. - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.InputOutputTerminalImpl - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.impl.SemanticPackageImpl#getInputOutputTerminal() - * @generated - */ - int INPUT_OUTPUT_TERMINAL = 14; - - /** - * The feature id for the 'Terminals' containment reference list. - * - * - * @generated - * @ordered - */ - int INPUT_OUTPUT_TERMINAL__TERMINALS = OUTPUT_TERMINAL__TERMINALS; - - /** - * The feature id for the 'Output Terminals' reference list. - * - * - * @generated - * @ordered - */ - int INPUT_OUTPUT_TERMINAL__OUTPUT_TERMINALS = OUTPUT_TERMINAL__OUTPUT_TERMINALS; - - /** - * The feature id for the 'Input Terminals' reference list. - * - * - * @generated - * @ordered - */ - int INPUT_OUTPUT_TERMINAL__INPUT_TERMINALS = OUTPUT_TERMINAL__INPUT_TERMINALS; - - /** - * The feature id for the 'Id' attribute. - * - * - * @generated - * @ordered - */ - int INPUT_OUTPUT_TERMINAL__ID = OUTPUT_TERMINAL__ID; - - /** - * The number of structural features of the the 'Input Output Terminal' class. - * - * - * @generated - * @ordered - */ - int INPUT_OUTPUT_TERMINAL_FEATURE_COUNT = OUTPUT_TERMINAL_FEATURE_COUNT + 0; - - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.LED LED}'. - * - * - * @return the meta object for class 'LED'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.LED - * @generated - */ - EClass getLED(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.LED#getValue Value}'. - * - * - * @return the meta object for the attribute 'Value'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.LED#getValue() - * @see #getLED() - * @generated - */ - EAttribute getLED_Value(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element Element}'. - * - * - * @return the meta object for class 'Element'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Element - * @generated - */ - EClass getElement(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getTerminals Terminals}'. - * - * - * @return the meta object for the containment reference list 'Terminals'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getTerminals() - * @see #getElement() - * @generated - */ - EReference getElement_Terminals(); - - /** - * Returns the meta object for the reference list '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getOutputTerminals Output Terminals}'. - * - * - * @return the meta object for the reference list 'Output Terminals'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getOutputTerminals() - * @see #getElement() - * @generated - */ - EReference getElement_OutputTerminals(); - - /** - * Returns the meta object for the reference list '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getInputTerminals Input Terminals}'. - * - * - * @return the meta object for the reference list 'Input Terminals'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getInputTerminals() - * @see #getElement() - * @generated - */ - EReference getElement_InputTerminals(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire Wire}'. - * - * - * @return the meta object for class 'Wire'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire - * @generated - */ - EClass getWire(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire#getSource Source}'. - * - * - * @return the meta object for the reference 'Source'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire#getSource() - * @see #getWire() - * @generated - */ - EReference getWire_Source(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire#getTarget Target}'. - * - * - * @return the meta object for the reference 'Target'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire#getTarget() - * @see #getWire() - * @generated - */ - EReference getWire_Target(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit Circuit}'. - * - * - * @return the meta object for class 'Circuit'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit - * @generated - */ - EClass getCircuit(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate Gate}'. - * - * - * @return the meta object for class 'Gate'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate - * @generated - */ - EClass getGate(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer Flow Container}'. - * - * - * @return the meta object for class 'Flow Container'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer - * @generated - */ - EClass getFlowContainer(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate And Gate}'. - * - * - * @return the meta object for class 'And Gate'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate - * @generated - */ - EClass getAndGate(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate Or Gate}'. - * - * - * @return the meta object for class 'Or Gate'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate - * @generated - */ - EClass getOrGate(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate XOR Gate}'. - * - * - * @return the meta object for class 'XOR Gate'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate - * @generated - */ - EClass getXORGate(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Model Model}'. - * - * - * @return the meta object for class 'Model'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Model - * @generated - */ - EClass getModel(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement Container Element}'. - * - * - * @return the meta object for class 'Container Element'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement - * @generated - */ - EClass getContainerElement(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement#getChildren Children}'. - * - * - * @return the meta object for the containment reference list 'Children'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement#getChildren() - * @see #getContainerElement() - * @generated - */ - EReference getContainerElement_Children(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal Terminal}'. - * - * - * @return the meta object for class 'Terminal'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal - * @generated - */ - EClass getTerminal(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal#getId Id}'. - * - * - * @return the meta object for the attribute 'Id'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal#getId() - * @see #getTerminal() - * @generated - */ - EAttribute getTerminal_Id(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal Output Terminal}'. - * - * - * @return the meta object for class 'Output Terminal'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal - * @generated - */ - EClass getOutputTerminal(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal Input Terminal}'. - * - * - * @return the meta object for class 'Input Terminal'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal - * @generated - */ - EClass getInputTerminal(); - - /** - * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal Input Output Terminal}'. - * - * - * @return the meta object for class 'Input Output Terminal'. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal - * @generated - */ - EClass getInputOutputTerminal(); - - /** - * Returns the factory that creates the instances of the model. - * - * - * @return the factory that creates the instances of the model. - * @generated - */ - SemanticFactory getSemanticFactory(); - -} //SemanticPackage Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/ContainerElement.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/ContainerElement.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/ContainerElement.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/ContainerElement.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,49 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Container Element'. - * - * - *

- * The following features are supported: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement#getChildren Children}
  • - *
- *

- * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getContainerElement() - * @model abstract="true" - * @generated - */ -public interface ContainerElement extends Element{ - /** - * Returns the value of the 'Children' containment reference list. - * The list contents are of type {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element}. - * - *

- * If the meaning of the 'Children' containment reference list isn't clear, - * there really should be more of a description here... - *

- * - * @return the value of the 'Children' containment reference list. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getContainerElement_Children() - * @model type="org.eclipse.gmf.examples.runtime.diagram.logic.model.Element" containment="true" - * @generated - */ - EList getChildren(); - -} // ContainerElement Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/InputOutputTerminal.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/InputOutputTerminal.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/InputOutputTerminal.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/InputOutputTerminal.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Input Output Terminal'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getInputOutputTerminal() - * @model - * @generated - */ -public interface InputOutputTerminal extends OutputTerminal, InputTerminal { -// no default API -} // InputOutputTerminal Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/LED.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/LED.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/LED.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/LED.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,59 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'LED'. - * - * - *

- * The following features are supported: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.LED#getValue Value}
  • - *
- *

- * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getLED() - * @model - * @generated - */ -public interface LED extends Element{ - /** - * Returns the value of the 'Value' attribute. - * The default value is "0". - * - *

- * If the meaning of the 'Value' attribute isn't clear, - * there really should be more of a description here... - *

- * - * @return the value of the 'Value' attribute. - * @see #setValue(int) - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getLED_Value() - * @model default="0" - * @generated - */ - int getValue(); - - /** - * Sets the value of the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.LED#getValue Value}' attribute. - * - * - * @param value the new value of the 'Value' attribute. - * @see #getValue() - * @generated - */ - void setValue(int value); - -} // LED Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Model.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Model.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Model.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Model.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Model'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getModel() - * @model - * @generated - */ -public interface Model extends ContainerElement { -// no default API -} // Model Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Terminal.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Terminal.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Terminal.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Terminal.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,59 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Terminal'. - * - * - *

- * The following features are supported: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal#getId Id}
  • - *
- *

- * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getTerminal() - * @model abstract="true" - * @generated - */ -public interface Terminal extends Element{ - /** - * Returns the value of the 'Id' attribute. - * The default value is "". - * - *

- * If the meaning of the 'Id' attribute isn't clear, - * there really should be more of a description here... - *

- * - * @return the value of the 'Id' attribute. - * @see #setId(String) - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getTerminal_Id() - * @model default="" - * @generated - */ - String getId(); - - /** - * Sets the value of the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal#getId Id}' attribute. - * - * - * @param value the new value of the 'Id' attribute. - * @see #getId() - * @generated - */ - void setId(String value); - -} // Terminal Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/OutputTerminal.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/OutputTerminal.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/OutputTerminal.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/OutputTerminal.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,27 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - - -/** - * - * A representation of the model object 'Output Terminal'. - * - * - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getOutputTerminal() - * @model - * @generated - */ -public interface OutputTerminal extends Terminal { -// no default API -} // OutputTerminal Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Element.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Element.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Element.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/Element.java 12 Sep 2005 21:26:08 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,85 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Element'. - * - * - *

- * The following features are supported: - *

    - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getTerminals Terminals}
  • - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getOutputTerminals Output Terminals}
  • - *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element#getInputTerminals Input Terminals}
  • - *
- *

- * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getElement() - * @model abstract="true" - * @generated - */ -public interface Element extends EObject{ - /** - * Returns the value of the 'Terminals' containment reference list. - * The list contents are of type {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal}. - * - *

- * If the meaning of the 'Terminals' containment reference list isn't clear, - * there really should be more of a description here... - *

- * - * @return the value of the 'Terminals' containment reference list. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getElement_Terminals() - * @model type="org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal" containment="true" - * @generated - */ - EList getTerminals(); - - /** - * Returns the value of the 'Output Terminals' reference list. - * The list contents are of type {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal}. - * - *

- * If the meaning of the 'Output Terminals' reference list isn't clear, - * there really should be more of a description here... - *

- * - * @return the value of the 'Output Terminals' reference list. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getElement_OutputTerminals() - * @model type="org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal" transient="true" changeable="false" volatile="true" - * @generated - */ - EList getOutputTerminals(); - - /** - * Returns the value of the 'Input Terminals' reference list. - * The list contents are of type {@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal}. - * - *

- * If the meaning of the 'Input Terminals' reference list isn't clear, - * there really should be more of a description here... - *

- * - * @return the value of the 'Input Terminals' reference list. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage#getElement_InputTerminals() - * @model type="org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal" transient="true" changeable="false" volatile="true" - * @generated - */ - EList getInputTerminals(); - -} // Element Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/SemanticAdapterFactory.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/SemanticAdapterFactory.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/SemanticAdapterFactory.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/SemanticAdapterFactory.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,375 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.util; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.*; - -import org.eclipse.emf.common.notify.Adapter; -import org.eclipse.emf.common.notify.Notifier; -import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; -import org.eclipse.emf.ecore.EObject; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Model; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate; - -/** - * - * The Adapter Factory for the model. - * It provides an adapter createXXX method for each class of the model. - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage - * @generated - */ -public class SemanticAdapterFactory extends AdapterFactoryImpl { - /** - * The cached model package. - * - * - * @generated - */ - protected static SemanticPackage modelPackage; - - /** - * Creates an instance of the adapter factory. - * - * - * @generated - */ - public SemanticAdapterFactory() { - if (modelPackage == null) { - modelPackage = SemanticPackage.eINSTANCE; - } - } - - /** - * Returns whether this factory is applicable for the type of the object. - * - * This implementation returns true if the object is either the model's package or is an instance object of the model. - * - * @return whether this factory is applicable for the type of the object. - * @generated - */ - public boolean isFactoryForType(Object object) { - if (object == modelPackage) { - return true; - } - if (object instanceof EObject) { - return ((EObject)object).eClass().getEPackage() == modelPackage; - } - return false; - } - - /** - * The switch the delegates to the createXXX methods. - * - * - * @generated - */ - protected SemanticSwitch modelSwitch = - new SemanticSwitch() { - public Object caseLED(LED object) { - return createLEDAdapter(); - } - public Object caseElement(Element object) { - return createElementAdapter(); - } - public Object caseWire(Wire object) { - return createWireAdapter(); - } - public Object caseCircuit(Circuit object) { - return createCircuitAdapter(); - } - public Object caseGate(Gate object) { - return createGateAdapter(); - } - public Object caseFlowContainer(FlowContainer object) { - return createFlowContainerAdapter(); - } - public Object caseAndGate(AndGate object) { - return createAndGateAdapter(); - } - public Object caseOrGate(OrGate object) { - return createOrGateAdapter(); - } - public Object caseXORGate(XORGate object) { - return createXORGateAdapter(); - } - public Object caseModel(Model object) { - return createModelAdapter(); - } - public Object caseContainerElement(ContainerElement object) { - return createContainerElementAdapter(); - } - public Object caseTerminal(Terminal object) { - return createTerminalAdapter(); - } - public Object caseOutputTerminal(OutputTerminal object) { - return createOutputTerminalAdapter(); - } - public Object caseInputTerminal(InputTerminal object) { - return createInputTerminalAdapter(); - } - public Object caseInputOutputTerminal(InputOutputTerminal object) { - return createInputOutputTerminalAdapter(); - } - public Object defaultCase(EObject object) { - return createEObjectAdapter(); - } - }; - - /** - * Creates an adapter for the target. - * - * - * @param target the object to adapt. - * @return the adapter for the target. - * @generated - */ - public Adapter createAdapter(Notifier target) { - return (Adapter)modelSwitch.doSwitch((EObject)target); - } - - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.LED LED}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.LED - * @generated - */ - public Adapter createLEDAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Element Element}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Element - * @generated - */ - public Adapter createElementAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire Wire}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire - * @generated - */ - public Adapter createWireAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit Circuit}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit - * @generated - */ - public Adapter createCircuitAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate Gate}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate - * @generated - */ - public Adapter createGateAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer Flow Container}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer - * @generated - */ - public Adapter createFlowContainerAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate And Gate}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate - * @generated - */ - public Adapter createAndGateAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate Or Gate}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate - * @generated - */ - public Adapter createOrGateAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate XOR Gate}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate - * @generated - */ - public Adapter createXORGateAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Model Model}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Model - * @generated - */ - public Adapter createModelAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement Container Element}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement - * @generated - */ - public Adapter createContainerElementAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal Terminal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal - * @generated - */ - public Adapter createTerminalAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal Output Terminal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.OutputTerminal - * @generated - */ - public Adapter createOutputTerminalAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal Input Terminal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.InputTerminal - * @generated - */ - public Adapter createInputTerminalAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal Input Output Terminal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.InputOutputTerminal - * @generated - */ - public Adapter createInputOutputTerminalAdapter() { - return null; - } - - /** - * Creates a new adapter for the default case. - * - * This default implementation returns null. - * - * @return the new adapter. - * @generated - */ - public Adapter createEObjectAdapter() { - return null; - } - -} //SemanticAdapterFactory Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/SemanticSwitch.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/SemanticSwitch.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/SemanticSwitch.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/SemanticSwitch.java 12 Sep 2005 21:26:07 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,441 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.util; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.*; - -import java.util.List; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EObject; - -import org.eclipse.gmf.examples.runtime.diagram.logic.model.AndGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Circuit; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.ContainerElement; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Element; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.FlowContainer; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Gate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.LED; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Model; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.OrGate; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Terminal; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.Wire; -import org.eclipse.gmf.examples.runtime.diagram.logic.model.XORGate; - -/** - * - * The Switch for the model's inheritance hierarchy. - * It supports the call {@link #doSwitch(EObject) doSwitch(object)} - * to invoke the caseXXX method for each class of the model, - * starting with the actual class of the object - * and proceeding up the inheritance hierarchy - * until a non-null result is returned, - * which is the result of the switch. - * - * @see org.eclipse.gmf.examples.runtime.diagram.logic.model.SemanticPackage - * @generated - */ -public class SemanticSwitch { - /** - * The cached model package - * - * - * @generated - */ - protected static SemanticPackage modelPackage; - - /** - * Creates an instance of the switch. - * - * - * @generated - */ - public SemanticSwitch() { - if (modelPackage == null) { - modelPackage = SemanticPackage.eINSTANCE; - } - } - - /** - * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. - * - * - * @return the first non-null result returned by a caseXXX call. - * @generated - */ - public Object doSwitch(EObject theEObject) { - return doSwitch(theEObject.eClass(), theEObject); - } - - /** - * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. - * - * - * @return the first non-null result returned by a caseXXX call. - * @generated - */ - protected Object doSwitch(EClass theEClass, EObject theEObject) { - if (theEClass.eContainer() == modelPackage) { - return doSwitch(theEClass.getClassifierID(), theEObject); - } - else { - List eSuperTypes = theEClass.getESuperTypes(); - return - eSuperTypes.isEmpty() ? - defaultCase(theEObject) : - doSwitch((EClass)eSuperTypes.get(0), theEObject); - } - } - - /** - * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. - * - * - * @return the first non-null result returned by a caseXXX call. - * @generated - */ - protected Object doSwitch(int classifierID, EObject theEObject) { - switch (classifierID) { - case SemanticPackage.LED: { - LED led = (LED)theEObject; - Object result = caseLED(led); - if (result == null) result = caseElement(led); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.WIRE: { - Wire wire = (Wire)theEObject; - Object result = caseWire(wire); - if (result == null) result = caseElement(wire); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.CIRCUIT: { - Circuit circuit = (Circuit)theEObject; - Object result = caseCircuit(circuit); - if (result == null) result = caseContainerElement(circuit); - if (result == null) result = caseElement(circuit); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.FLOW_CONTAINER: { - FlowContainer flowContainer = (FlowContainer)theEObject; - Object result = caseFlowContainer(flowContainer); - if (result == null) result = caseContainerElement(flowContainer); - if (result == null) result = caseElement(flowContainer); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.AND_GATE: { - AndGate andGate = (AndGate)theEObject; - Object result = caseAndGate(andGate); - if (result == null) result = caseGate(andGate); - if (result == null) result = caseElement(andGate); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.OR_GATE: { - OrGate orGate = (OrGate)theEObject; - Object result = caseOrGate(orGate); - if (result == null) result = caseGate(orGate); - if (result == null) result = caseElement(orGate); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.XOR_GATE: { - XORGate xorGate = (XORGate)theEObject; - Object result = caseXORGate(xorGate); - if (result == null) result = caseGate(xorGate); - if (result == null) result = caseElement(xorGate); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.MODEL: { - Model model = (Model)theEObject; - Object result = caseModel(model); - if (result == null) result = caseContainerElement(model); - if (result == null) result = caseElement(model); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.OUTPUT_TERMINAL: { - OutputTerminal outputTerminal = (OutputTerminal)theEObject; - Object result = caseOutputTerminal(outputTerminal); - if (result == null) result = caseTerminal(outputTerminal); - if (result == null) result = caseElement(outputTerminal); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.INPUT_TERMINAL: { - InputTerminal inputTerminal = (InputTerminal)theEObject; - Object result = caseInputTerminal(inputTerminal); - if (result == null) result = caseTerminal(inputTerminal); - if (result == null) result = caseElement(inputTerminal); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SemanticPackage.INPUT_OUTPUT_TERMINAL: { - InputOutputTerminal inputOutputTerminal = (InputOutputTerminal)theEObject; - Object result = caseInputOutputTerminal(inputOutputTerminal); - if (result == null) result = caseOutputTerminal(inputOutputTerminal); - if (result == null) result = caseInputTerminal(inputOutputTerminal); - if (result == null) result = caseTerminal(inputOutputTerminal); - if (result == null) result = caseElement(inputOutputTerminal); - if (result == null) result = defaultCase(theEObject); - return result; - } - default: return defaultCase(theEObject); - } - } - - /** - * Returns the result of interpretting the object as an instance of 'LED'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'LED'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseLED(LED object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Element'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Element'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseElement(Element object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Wire'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Wire'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseWire(Wire object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Circuit'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Circuit'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseCircuit(Circuit object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Gate'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Gate'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseGate(Gate object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Flow Container'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Flow Container'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseFlowContainer(FlowContainer object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'And Gate'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'And Gate'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseAndGate(AndGate object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Or Gate'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Or Gate'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseOrGate(OrGate object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'XOR Gate'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'XOR Gate'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseXORGate(XORGate object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Model'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Model'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseModel(Model object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Container Element'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Container Element'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseContainerElement(ContainerElement object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Terminal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Terminal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseTerminal(Terminal object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Output Terminal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Output Terminal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseOutputTerminal(OutputTerminal object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Input Terminal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Input Terminal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseInputTerminal(InputTerminal object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'Input Output Terminal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'Input Output Terminal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public Object caseInputOutputTerminal(InputOutputTerminal object) { - return null; - } - - /** - * Returns the result of interpretting the object as an instance of 'EObject'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch, but this is the last case anyway. - * - * @param object the target of the switch. - * @return the result of interpretting the object as an instance of 'EObject'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) - * @generated - */ - public Object defaultCase(EObject object) { - return null; - } - -} //SemanticSwitch Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/LogicSemanticType.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/LogicSemanticType.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/LogicSemanticType.java --- src/org/eclipse/gmf/examples/runtime/diagram/logic/model/util/LogicSemanticType.java 4 Jan 2006 15:52:47 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,51 +0,0 @@ -/****************************************************************************** - * Copyright (c) 2005 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************/ - -package org.eclipse.gmf.examples.runtime.diagram.logic.model.util; - -import org.eclipse.gmf.runtime.emf.type.core.AbstractElementTypeEnumerator; -import org.eclipse.gmf.runtime.emf.type.core.IElementType; - -/** - * Element types for the logic elements. - * - * @author qili, ldamus - */ -public class LogicSemanticType - extends AbstractElementTypeEnumerator { - - public static final IElementType MODEL = getElementType("logic.model"); //$NON-NLS-1$ - - public static final IElementType LED = getElementType("logic.led"); //$NON-NLS-1$ - - public static final IElementType WIRE = getElementType("logic.wire"); //$NON-NLS-1$ - - public static final IElementType CIRCUIT = getElementType("logic.circuit"); //$NON-NLS-1$ - - public static final IElementType FLOWCONTAINER = getElementType("logic.flowcontainer"); //$NON-NLS-1$ - - public static final IElementType ANDGATE = getElementType("logic.andgate"); //$NON-NLS-1$ - - public static final IElementType ORGATE = getElementType("logic.orgate"); //$NON-NLS-1$ - - public static final IElementType XORGATE = getElementType("logic.xorgate"); //$NON-NLS-1$ - - public static final IElementType TERMINAL = getElementType("logic.terminal"); //$NON-NLS-1$ - - public static final IElementType INPUT_TERMINAL = getElementType("logic.inputterminal"); //$NON-NLS-1$ - - public static final IElementType OUTPUT_TERMINAL = getElementType("logic.outputterminal"); //$NON-NLS-1$ - - public static final IElementType INPUT_OUTPUT_TERMINAL = getElementType("logic.inputoutputterminal"); //$NON-NLS-1$ - - public static final IElementType HALF_ADDER = getElementType("logic.halfAdder"); //$NON-NLS-1$ - -} \ No newline at end of file Index: META-INF/MANIFEST.MF =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic.model/META-INF/MANIFEST.MF,v retrieving revision 1.9 diff -u -r1.9 MANIFEST.MF --- META-INF/MANIFEST.MF 13 Feb 2006 19:12:05 -0000 1.9 +++ META-INF/MANIFEST.MF 22 Mar 2006 21:18:49 -0000 @@ -5,10 +5,10 @@ Bundle-Version: 1.0.0.qualifier Bundle-Vendor: %providerName Bundle-Localization: plugin -Export-Package: org.eclipse.gmf.examples.runtime.diagram.logic.model, - org.eclipse.gmf.examples.runtime.diagram.logic.model.impl, - org.eclipse.gmf.examples.runtime.diagram.logic.model.util, - model, +Export-Package: model, + org.eclipse.gmf.examples.runtime.diagram.logic.semantic, + org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl, + org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util, rosemodel Require-Bundle: org.eclipse.core.runtime, org.eclipse.emf.ecore;visibility:=reexport, Index: src/model/logicsemantic.genmodel =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic.model/src/model/logicsemantic.genmodel,v retrieving revision 1.1 diff -u -r1.1 logicsemantic.genmodel --- src/model/logicsemantic.genmodel 30 Aug 2005 13:48:51 -0000 1.1 +++ src/model/logicsemantic.genmodel 22 Mar 2006 21:18:49 -0000 @@ -2,11 +2,11 @@ + editorPluginClass="org.eclipse.gmf.examples.runtime.diagram.logic.model.presentation.LogicsemanticEditorPlugin"> ..\rosemodel\logicsemantic.mdl @@ -15,12 +15,12 @@ - - + + - - + + @@ -30,7 +30,7 @@ - + Index: plugin.xml =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic.model/plugin.xml,v retrieving revision 1.3 diff -u -r1.3 plugin.xml --- plugin.xml 7 Feb 2006 15:18:57 -0000 1.3 +++ plugin.xml 22 Mar 2006 21:18:49 -0000 @@ -23,7 +23,7 @@ + class = "org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage" /> Index: runtime/model/logicsemantic.genmodel =================================================================== RCS file: /cvsroot/technology/org.eclipse.gmf/examples/org.eclipse.gmf.examples.runtime.diagram.logic.model/runtime/model/logicsemantic.genmodel,v retrieving revision 1.1 diff -u -r1.1 logicsemantic.genmodel --- runtime/model/logicsemantic.genmodel 30 Aug 2005 13:47:31 -0000 1.1 +++ runtime/model/logicsemantic.genmodel 22 Mar 2006 21:18:49 -0000 @@ -2,11 +2,11 @@ + editorPluginClass="org.eclipse.gmf.examples.runtime.diagram.logic.model.presentation.LogicsemanticEditorPlugin"> ..\rosemodel\logicsemantic.mdl @@ -15,12 +15,12 @@ - - + + - - + + @@ -30,7 +30,7 @@ - + Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Element.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Element.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Element.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Element.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,80 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Element'. + * + * + *

+ * The following features are supported: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getTerminals Terminals}
  • + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getOutputTerminals Output Terminals}
  • + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getInputTerminals Input Terminals}
  • + *
+ *

+ * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getElement() + * @model abstract="true" + * @generated + */ +public interface Element extends EObject { + /** + * Returns the value of the 'Terminals' containment reference list. + * The list contents are of type {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal}. + * + *

+ * If the meaning of the 'Terminals' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Terminals' containment reference list. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getElement_Terminals() + * @model type="org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal" containment="true" + * @generated + */ + EList getTerminals(); + + /** + * Returns the value of the 'Output Terminals' reference list. + * The list contents are of type {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal}. + * + *

+ * If the meaning of the 'Output Terminals' reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Output Terminals' reference list. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getElement_OutputTerminals() + * @model type="org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal" transient="true" changeable="false" volatile="true" + * @generated + */ + EList getOutputTerminals(); + + /** + * Returns the value of the 'Input Terminals' reference list. + * The list contents are of type {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal}. + * + *

+ * If the meaning of the 'Input Terminals' reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Input Terminals' reference list. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getElement_InputTerminals() + * @model type="org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal" transient="true" changeable="false" volatile="true" + * @generated + */ + EList getInputTerminals(); + +} // Element Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/OutputTerminal.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/OutputTerminal.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/OutputTerminal.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/OutputTerminal.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Output Terminal'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getOutputTerminal() + * @model + * @generated + */ +public interface OutputTerminal extends Terminal { +} // OutputTerminal Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/OrGate.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/OrGate.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/OrGate.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/OrGate.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Or Gate'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getOrGate() + * @model + * @generated + */ +public interface OrGate extends Gate { +} // OrGate Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/FlowContainerImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/FlowContainerImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/FlowContainerImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/FlowContainerImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Flow Container'. + * + *

+ *

+ * + * @generated + */ +public class FlowContainerImpl extends ContainerElementImpl implements FlowContainer { + /** + * + * + * @generated + */ + protected FlowContainerImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.FLOW_CONTAINER; + } + +} //FlowContainerImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/WireImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/WireImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/WireImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/WireImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,216 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire; + +/** + * + * An implementation of the model object 'Wire'. + * + *

+ * The following features are implemented: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.WireImpl#getSource Source}
  • + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.WireImpl#getTarget Target}
  • + *
+ *

+ * + * @generated + */ +public class WireImpl extends ElementImpl implements Wire { + /** + * The cached value of the '{@link #getSource() Source}' reference. + * + * + * @see #getSource() + * @generated + * @ordered + */ + protected OutputTerminal source = null; + + /** + * The cached value of the '{@link #getTarget() Target}' reference. + * + * + * @see #getTarget() + * @generated + * @ordered + */ + protected InputTerminal target = null; + + /** + * + * + * @generated + */ + protected WireImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.WIRE; + } + + /** + * + * + * @generated + */ + public OutputTerminal getSource() { + if (source != null && source.eIsProxy()) { + InternalEObject oldSource = (InternalEObject)source; + source = (OutputTerminal)eResolveProxy(oldSource); + if (source != oldSource) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, SemanticPackage.WIRE__SOURCE, oldSource, source)); + } + } + return source; + } + + /** + * + * + * @generated + */ + public OutputTerminal basicGetSource() { + return source; + } + + /** + * + * + * @generated + */ + public void setSource(OutputTerminal newSource) { + OutputTerminal oldSource = source; + source = newSource; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SemanticPackage.WIRE__SOURCE, oldSource, source)); + } + + /** + * + * + * @generated + */ + public InputTerminal getTarget() { + if (target != null && target.eIsProxy()) { + InternalEObject oldTarget = (InternalEObject)target; + target = (InputTerminal)eResolveProxy(oldTarget); + if (target != oldTarget) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, SemanticPackage.WIRE__TARGET, oldTarget, target)); + } + } + return target; + } + + /** + * + * + * @generated + */ + public InputTerminal basicGetTarget() { + return target; + } + + /** + * + * + * @generated + */ + public void setTarget(InputTerminal newTarget) { + InputTerminal oldTarget = target; + target = newTarget; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SemanticPackage.WIRE__TARGET, oldTarget, target)); + } + + /** + * + * + * @generated + */ + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SemanticPackage.WIRE__SOURCE: + if (resolve) return getSource(); + return basicGetSource(); + case SemanticPackage.WIRE__TARGET: + if (resolve) return getTarget(); + return basicGetTarget(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SemanticPackage.WIRE__SOURCE: + setSource((OutputTerminal)newValue); + return; + case SemanticPackage.WIRE__TARGET: + setTarget((InputTerminal)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + public void eUnset(int featureID) { + switch (featureID) { + case SemanticPackage.WIRE__SOURCE: + setSource((OutputTerminal)null); + return; + case SemanticPackage.WIRE__TARGET: + setTarget((InputTerminal)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + public boolean eIsSet(int featureID) { + switch (featureID) { + case SemanticPackage.WIRE__SOURCE: + return source != null; + case SemanticPackage.WIRE__TARGET: + return target != null; + } + return super.eIsSet(featureID); + } + +} //WireImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Wire.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Wire.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Wire.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Wire.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,80 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Wire'. + * + * + *

+ * The following features are supported: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire#getSource Source}
  • + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire#getTarget Target}
  • + *
+ *

+ * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getWire() + * @model + * @generated + */ +public interface Wire extends Element { + /** + * Returns the value of the 'Source' reference. + * + *

+ * If the meaning of the 'Source' reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Source' reference. + * @see #setSource(OutputTerminal) + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getWire_Source() + * @model required="true" + * @generated + */ + OutputTerminal getSource(); + + /** + * Sets the value of the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire#getSource Source}' reference. + * + * + * @param value the new value of the 'Source' reference. + * @see #getSource() + * @generated + */ + void setSource(OutputTerminal value); + + /** + * Returns the value of the 'Target' reference. + * + *

+ * If the meaning of the 'Target' reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Target' reference. + * @see #setTarget(InputTerminal) + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getWire_Target() + * @model required="true" + * @generated + */ + InputTerminal getTarget(); + + /** + * Sets the value of the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire#getTarget Target}' reference. + * + * + * @param value the new value of the 'Target' reference. + * @see #getTarget() + * @generated + */ + void setTarget(InputTerminal value); + +} // Wire Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ElementImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ElementImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ElementImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ElementImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,198 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Iterator; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.EObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.EcoreEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; + +/** + * + * An implementation of the model object 'Element'. + * + *

+ * The following features are implemented: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ElementImpl#getTerminals Terminals}
  • + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ElementImpl#getOutputTerminals Output Terminals}
  • + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ElementImpl#getInputTerminals Input Terminals}
  • + *
+ *

+ * + * @generated + */ +public abstract class ElementImpl extends EObjectImpl implements Element { + /** + * The cached value of the '{@link #getTerminals() Terminals}' containment reference list. + * + * + * @see #getTerminals() + * @generated + * @ordered + */ + protected EList terminals = null; + + /** + * + * + * @generated + */ + protected ElementImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.ELEMENT; + } + + /** + * + * + * @generated + */ + public EList getTerminals() { + if (terminals == null) { + terminals = new EObjectContainmentEList(Terminal.class, this, SemanticPackage.ELEMENT__TERMINALS); + } + return terminals; + } + + /** + * + * + * @generated NOT + */ + public EList getOutputTerminals() { + ArrayList outputTerminals = new ArrayList(); + for (Iterator iter = getTerminals().iterator(); iter.hasNext(); ) { + Terminal terminal = (Terminal)iter.next(); + if (terminal instanceof OutputTerminal) + outputTerminals.add(terminal); + } + return new EcoreEList.UnmodifiableEList(this, + SemanticPackage.eINSTANCE.getElement_InputTerminals(), + outputTerminals.size(), outputTerminals.toArray()); + } + + /** + * + * + * @generated NOT + */ + public EList getInputTerminals() { + ArrayList inputTerminals = new ArrayList(); + for (Iterator iter = getTerminals().iterator(); iter.hasNext(); ) { + Terminal terminal = (Terminal)iter.next(); + if (terminal instanceof InputTerminal) + inputTerminals.add(terminal); + } + return new EcoreEList.UnmodifiableEList(this, + SemanticPackage.eINSTANCE.getElement_InputTerminals(), + inputTerminals.size(), inputTerminals.toArray()); + } + + /** + * + * + * @generated + */ + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SemanticPackage.ELEMENT__TERMINALS: + return ((InternalEList)getTerminals()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SemanticPackage.ELEMENT__TERMINALS: + return getTerminals(); + case SemanticPackage.ELEMENT__OUTPUT_TERMINALS: + return getOutputTerminals(); + case SemanticPackage.ELEMENT__INPUT_TERMINALS: + return getInputTerminals(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SemanticPackage.ELEMENT__TERMINALS: + getTerminals().clear(); + getTerminals().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + public void eUnset(int featureID) { + switch (featureID) { + case SemanticPackage.ELEMENT__TERMINALS: + getTerminals().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + public boolean eIsSet(int featureID) { + switch (featureID) { + case SemanticPackage.ELEMENT__TERMINALS: + return terminals != null && !terminals.isEmpty(); + case SemanticPackage.ELEMENT__OUTPUT_TERMINALS: + return !getOutputTerminals().isEmpty(); + case SemanticPackage.ELEMENT__INPUT_TERMINALS: + return !getInputTerminals().isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ElementImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/AndGateImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/AndGateImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/AndGateImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/AndGateImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'And Gate'. + * + *

+ *

+ * + * @generated + */ +public class AndGateImpl extends GateImpl implements AndGate { + /** + * + * + * @generated + */ + protected AndGateImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.AND_GATE; + } + +} //AndGateImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/OrGateImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/OrGateImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/OrGateImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/OrGateImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Or Gate'. + * + *

+ *

+ * + * @generated + */ +public class OrGateImpl extends GateImpl implements OrGate { + /** + * + * + * @generated + */ + protected OrGateImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.OR_GATE; + } + +} //OrGateImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/GateImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/GateImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/GateImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/GateImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Gate'. + * + *

+ *

+ * + * @generated + */ +public abstract class GateImpl extends ElementImpl implements Gate { + /** + * + * + * @generated + */ + protected GateImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.GATE; + } + +} //GateImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Gate.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Gate.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Gate.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Gate.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Gate'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getGate() + * @model abstract="true" + * @generated + */ +public interface Gate extends Element { +} // Gate Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Terminal.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Terminal.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Terminal.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Terminal.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,54 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Terminal'. + * + * + *

+ * The following features are supported: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal#getId Id}
  • + *
+ *

+ * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getTerminal() + * @model abstract="true" + * @generated + */ +public interface Terminal extends Element { + /** + * Returns the value of the 'Id' attribute. + * The default value is "". + * + *

+ * If the meaning of the 'Id' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Id' attribute. + * @see #setId(String) + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getTerminal_Id() + * @model default="" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal#getId Id}' attribute. + * + * + * @param value the new value of the 'Id' attribute. + * @see #getId() + * @generated + */ + void setId(String value); + +} // Terminal Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/InputTerminal.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/InputTerminal.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/InputTerminal.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/InputTerminal.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Input Terminal'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getInputTerminal() + * @model + * @generated + */ +public interface InputTerminal extends Terminal { +} // InputTerminal Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/SemanticAdapterFactory.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/SemanticAdapterFactory.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/SemanticAdapterFactory.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/SemanticAdapterFactory.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,358 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.*; + +/** + * + * The Adapter Factory for the model. + * It provides an adapter createXXX method for each class of the model. + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage + * @generated + */ +public class SemanticAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * + * + * @generated + */ + protected static SemanticPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * + * + * @generated + */ + public SemanticAdapterFactory() { + if (modelPackage == null) { + modelPackage = SemanticPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * + * This implementation returns true if the object is either the model's package or is an instance object of the model. + * + * @return whether this factory is applicable for the type of the object. + * @generated + */ + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject)object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch the delegates to the createXXX methods. + * + * + * @generated + */ + protected SemanticSwitch modelSwitch = + new SemanticSwitch() { + public Object caseLED(LED object) { + return createLEDAdapter(); + } + public Object caseElement(Element object) { + return createElementAdapter(); + } + public Object caseWire(Wire object) { + return createWireAdapter(); + } + public Object caseCircuit(Circuit object) { + return createCircuitAdapter(); + } + public Object caseGate(Gate object) { + return createGateAdapter(); + } + public Object caseFlowContainer(FlowContainer object) { + return createFlowContainerAdapter(); + } + public Object caseAndGate(AndGate object) { + return createAndGateAdapter(); + } + public Object caseOrGate(OrGate object) { + return createOrGateAdapter(); + } + public Object caseXORGate(XORGate object) { + return createXORGateAdapter(); + } + public Object caseModel(Model object) { + return createModelAdapter(); + } + public Object caseContainerElement(ContainerElement object) { + return createContainerElementAdapter(); + } + public Object caseTerminal(Terminal object) { + return createTerminalAdapter(); + } + public Object caseOutputTerminal(OutputTerminal object) { + return createOutputTerminalAdapter(); + } + public Object caseInputTerminal(InputTerminal object) { + return createInputTerminalAdapter(); + } + public Object caseInputOutputTerminal(InputOutputTerminal object) { + return createInputOutputTerminalAdapter(); + } + public Object defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the target. + * + * + * @param target the object to adapt. + * @return the adapter for the target. + * @generated + */ + public Adapter createAdapter(Notifier target) { + return (Adapter)modelSwitch.doSwitch((EObject)target); + } + + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED LED}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED + * @generated + */ + public Adapter createLEDAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element Element}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element + * @generated + */ + public Adapter createElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire Wire}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire + * @generated + */ + public Adapter createWireAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit Circuit}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit + * @generated + */ + public Adapter createCircuitAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate Gate}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate + * @generated + */ + public Adapter createGateAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer Flow Container}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer + * @generated + */ + public Adapter createFlowContainerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate And Gate}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate + * @generated + */ + public Adapter createAndGateAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate Or Gate}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate + * @generated + */ + public Adapter createOrGateAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate XOR Gate}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate + * @generated + */ + public Adapter createXORGateAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model Model}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model + * @generated + */ + public Adapter createModelAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement Container Element}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement + * @generated + */ + public Adapter createContainerElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal Terminal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal + * @generated + */ + public Adapter createTerminalAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal Output Terminal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal + * @generated + */ + public Adapter createOutputTerminalAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal Input Terminal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal + * @generated + */ + public Adapter createInputTerminalAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal Input Output Terminal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal + * @generated + */ + public Adapter createInputOutputTerminalAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * + * This default implementation returns null. + * + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //SemanticAdapterFactory Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/LogicSemanticType.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/LogicSemanticType.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/LogicSemanticType.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/LogicSemanticType.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,51 @@ +/****************************************************************************** + * Copyright (c) 2005 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + ****************************************************************************/ + +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util; + +import org.eclipse.gmf.runtime.emf.type.core.AbstractElementTypeEnumerator; +import org.eclipse.gmf.runtime.emf.type.core.IElementType; + +/** + * Element types for the logic elements. + * + * @author qili, ldamus + */ +public class LogicSemanticType + extends AbstractElementTypeEnumerator { + + public static final IElementType MODEL = getElementType("logic.model"); //$NON-NLS-1$ + + public static final IElementType LED = getElementType("logic.led"); //$NON-NLS-1$ + + public static final IElementType WIRE = getElementType("logic.wire"); //$NON-NLS-1$ + + public static final IElementType CIRCUIT = getElementType("logic.circuit"); //$NON-NLS-1$ + + public static final IElementType FLOWCONTAINER = getElementType("logic.flowcontainer"); //$NON-NLS-1$ + + public static final IElementType ANDGATE = getElementType("logic.andgate"); //$NON-NLS-1$ + + public static final IElementType ORGATE = getElementType("logic.orgate"); //$NON-NLS-1$ + + public static final IElementType XORGATE = getElementType("logic.xorgate"); //$NON-NLS-1$ + + public static final IElementType TERMINAL = getElementType("logic.terminal"); //$NON-NLS-1$ + + public static final IElementType INPUT_TERMINAL = getElementType("logic.inputterminal"); //$NON-NLS-1$ + + public static final IElementType OUTPUT_TERMINAL = getElementType("logic.outputterminal"); //$NON-NLS-1$ + + public static final IElementType INPUT_OUTPUT_TERMINAL = getElementType("logic.inputoutputterminal"); //$NON-NLS-1$ + + public static final IElementType HALF_ADDER = getElementType("logic.halfAdder"); //$NON-NLS-1$ + +} Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/SemanticFactory.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/SemanticFactory.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/SemanticFactory.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/SemanticFactory.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,136 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + +import org.eclipse.emf.ecore.EFactory; + +/** + * + * The Factory for the model. + * It provides a create method for each non-abstract class of the model. + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage + * @generated + */ +public interface SemanticFactory extends EFactory { + /** + * The singleton instance of the factory. + * + * + * @generated + */ + SemanticFactory eINSTANCE = org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticFactoryImpl.init(); + + /** + * Returns a new object of class 'LED'. + * + * + * @return a new object of class 'LED'. + * @generated + */ + LED createLED(); + + /** + * Returns a new object of class 'Wire'. + * + * + * @return a new object of class 'Wire'. + * @generated + */ + Wire createWire(); + + /** + * Returns a new object of class 'Circuit'. + * + * + * @return a new object of class 'Circuit'. + * @generated + */ + Circuit createCircuit(); + + /** + * Returns a new object of class 'Flow Container'. + * + * + * @return a new object of class 'Flow Container'. + * @generated + */ + FlowContainer createFlowContainer(); + + /** + * Returns a new object of class 'And Gate'. + * + * + * @return a new object of class 'And Gate'. + * @generated + */ + AndGate createAndGate(); + + /** + * Returns a new object of class 'Or Gate'. + * + * + * @return a new object of class 'Or Gate'. + * @generated + */ + OrGate createOrGate(); + + /** + * Returns a new object of class 'XOR Gate'. + * + * + * @return a new object of class 'XOR Gate'. + * @generated + */ + XORGate createXORGate(); + + /** + * Returns a new object of class 'Model'. + * + * + * @return a new object of class 'Model'. + * @generated + */ + Model createModel(); + + /** + * Returns a new object of class 'Output Terminal'. + * + * + * @return a new object of class 'Output Terminal'. + * @generated + */ + OutputTerminal createOutputTerminal(); + + /** + * Returns a new object of class 'Input Terminal'. + * + * + * @return a new object of class 'Input Terminal'. + * @generated + */ + InputTerminal createInputTerminal(); + + /** + * Returns a new object of class 'Input Output Terminal'. + * + * + * @return a new object of class 'Input Output Terminal'. + * @generated + */ + InputOutputTerminal createInputOutputTerminal(); + + /** + * Returns the package supported by this factory. + * + * + * @return the package supported by this factory. + * @generated + */ + SemanticPackage getSemanticPackage(); + +} //SemanticFactory Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/ContainerElement.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/ContainerElement.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/ContainerElement.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/ContainerElement.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,44 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Container Element'. + * + * + *

+ * The following features are supported: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement#getChildren Children}
  • + *
+ *

+ * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getContainerElement() + * @model abstract="true" + * @generated + */ +public interface ContainerElement extends Element { + /** + * Returns the value of the 'Children' containment reference list. + * The list contents are of type {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element}. + * + *

+ * If the meaning of the 'Children' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Children' containment reference list. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getContainerElement_Children() + * @model type="org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element" containment="true" + * @generated + */ + EList getChildren(); + +} // ContainerElement Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Circuit.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Circuit.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Circuit.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Circuit.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Circuit'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getCircuit() + * @model + * @generated + */ +public interface Circuit extends ContainerElement { +} // Circuit Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/InputOutputTerminalImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/InputOutputTerminalImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/InputOutputTerminalImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/InputOutputTerminalImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Input Output Terminal'. + * + *

+ *

+ * + * @generated + */ +public class InputOutputTerminalImpl extends OutputTerminalImpl implements InputOutputTerminal { + /** + * + * + * @generated + */ + protected InputOutputTerminalImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.INPUT_OUTPUT_TERMINAL; + } + +} //InputOutputTerminalImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/InputOutputTerminal.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/InputOutputTerminal.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/InputOutputTerminal.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/InputOutputTerminal.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Input Output Terminal'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getInputOutputTerminal() + * @model + * @generated + */ +public interface InputOutputTerminal extends OutputTerminal, InputTerminal { +} // InputOutputTerminal Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/SemanticSwitch.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/SemanticSwitch.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/SemanticSwitch.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/util/SemanticSwitch.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,449 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.util; + +import java.util.List; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.*; + +/** + * + * The Switch for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the caseXXX method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage + * @generated + */ +public class SemanticSwitch { + /** + * The cached model package + * + * + * @generated + */ + protected static SemanticPackage modelPackage; + + /** + * Creates an instance of the switch. + * + * + * @generated + */ + public SemanticSwitch() { + if (modelPackage == null) { + modelPackage = SemanticPackage.eINSTANCE; + } + } + + /** + * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. + * + * + * @return the first non-null result returned by a caseXXX call. + * @generated + */ + public Object doSwitch(EObject theEObject) { + return doSwitch(theEObject.eClass(), theEObject); + } + + /** + * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. + * + * + * @return the first non-null result returned by a caseXXX call. + * @generated + */ + protected Object doSwitch(EClass theEClass, EObject theEObject) { + if (theEClass.eContainer() == modelPackage) { + return doSwitch(theEClass.getClassifierID(), theEObject); + } + else { + List eSuperTypes = theEClass.getESuperTypes(); + return + eSuperTypes.isEmpty() ? + defaultCase(theEObject) : + doSwitch((EClass)eSuperTypes.get(0), theEObject); + } + } + + /** + * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. + * + * + * @return the first non-null result returned by a caseXXX call. + * @generated + */ + protected Object doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case SemanticPackage.LED: { + LED led = (LED)theEObject; + Object result = caseLED(led); + if (result == null) result = caseElement(led); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.ELEMENT: { + Element element = (Element)theEObject; + Object result = caseElement(element); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.WIRE: { + Wire wire = (Wire)theEObject; + Object result = caseWire(wire); + if (result == null) result = caseElement(wire); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.CIRCUIT: { + Circuit circuit = (Circuit)theEObject; + Object result = caseCircuit(circuit); + if (result == null) result = caseContainerElement(circuit); + if (result == null) result = caseElement(circuit); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.GATE: { + Gate gate = (Gate)theEObject; + Object result = caseGate(gate); + if (result == null) result = caseElement(gate); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.FLOW_CONTAINER: { + FlowContainer flowContainer = (FlowContainer)theEObject; + Object result = caseFlowContainer(flowContainer); + if (result == null) result = caseContainerElement(flowContainer); + if (result == null) result = caseElement(flowContainer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.AND_GATE: { + AndGate andGate = (AndGate)theEObject; + Object result = caseAndGate(andGate); + if (result == null) result = caseGate(andGate); + if (result == null) result = caseElement(andGate); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.OR_GATE: { + OrGate orGate = (OrGate)theEObject; + Object result = caseOrGate(orGate); + if (result == null) result = caseGate(orGate); + if (result == null) result = caseElement(orGate); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.XOR_GATE: { + XORGate xorGate = (XORGate)theEObject; + Object result = caseXORGate(xorGate); + if (result == null) result = caseGate(xorGate); + if (result == null) result = caseElement(xorGate); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.MODEL: { + Model model = (Model)theEObject; + Object result = caseModel(model); + if (result == null) result = caseContainerElement(model); + if (result == null) result = caseElement(model); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.CONTAINER_ELEMENT: { + ContainerElement containerElement = (ContainerElement)theEObject; + Object result = caseContainerElement(containerElement); + if (result == null) result = caseElement(containerElement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.TERMINAL: { + Terminal terminal = (Terminal)theEObject; + Object result = caseTerminal(terminal); + if (result == null) result = caseElement(terminal); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.OUTPUT_TERMINAL: { + OutputTerminal outputTerminal = (OutputTerminal)theEObject; + Object result = caseOutputTerminal(outputTerminal); + if (result == null) result = caseTerminal(outputTerminal); + if (result == null) result = caseElement(outputTerminal); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.INPUT_TERMINAL: { + InputTerminal inputTerminal = (InputTerminal)theEObject; + Object result = caseInputTerminal(inputTerminal); + if (result == null) result = caseTerminal(inputTerminal); + if (result == null) result = caseElement(inputTerminal); + if (result == null) result = defaultCase(theEObject); + return result; + } + case SemanticPackage.INPUT_OUTPUT_TERMINAL: { + InputOutputTerminal inputOutputTerminal = (InputOutputTerminal)theEObject; + Object result = caseInputOutputTerminal(inputOutputTerminal); + if (result == null) result = caseOutputTerminal(inputOutputTerminal); + if (result == null) result = caseInputTerminal(inputOutputTerminal); + if (result == null) result = caseTerminal(inputOutputTerminal); + if (result == null) result = caseElement(inputOutputTerminal); + if (result == null) result = defaultCase(theEObject); + return result; + } + default: return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpretting the object as an instance of 'LED'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'LED'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseLED(LED object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Element'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Element'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseElement(Element object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Wire'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Wire'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseWire(Wire object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Circuit'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Circuit'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseCircuit(Circuit object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Gate'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Gate'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseGate(Gate object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Flow Container'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Flow Container'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseFlowContainer(FlowContainer object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'And Gate'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'And Gate'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseAndGate(AndGate object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Or Gate'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Or Gate'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseOrGate(OrGate object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'XOR Gate'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'XOR Gate'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseXORGate(XORGate object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Model'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Model'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseModel(Model object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Container Element'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Container Element'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseContainerElement(ContainerElement object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Terminal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Terminal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseTerminal(Terminal object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Output Terminal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Output Terminal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseOutputTerminal(OutputTerminal object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Input Terminal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Input Terminal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseInputTerminal(InputTerminal object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'Input Output Terminal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'Input Output Terminal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public Object caseInputOutputTerminal(InputOutputTerminal object) { + return null; + } + + /** + * Returns the result of interpretting the object as an instance of 'EObject'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * + * @param object the target of the switch. + * @return the result of interpretting the object as an instance of 'EObject'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + public Object defaultCase(EObject object) { + return null; + } + +} //SemanticSwitch Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/AndGate.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/AndGate.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/AndGate.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/AndGate.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'And Gate'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getAndGate() + * @model + * @generated + */ +public interface AndGate extends Gate { +} // AndGate Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/SemanticPackageImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/SemanticPackageImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/SemanticPackageImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/SemanticPackageImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,570 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticFactory; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate; + +/** + * + * An implementation of the model Package. + * + * @generated + */ +public class SemanticPackageImpl extends EPackageImpl implements SemanticPackage { + /** + * + * + * @generated + */ + private EClass ledEClass = null; + + /** + * + * + * @generated + */ + private EClass elementEClass = null; + + /** + * + * + * @generated + */ + private EClass wireEClass = null; + + /** + * + * + * @generated + */ + private EClass circuitEClass = null; + + /** + * + * + * @generated + */ + private EClass gateEClass = null; + + /** + * + * + * @generated + */ + private EClass flowContainerEClass = null; + + /** + * + * + * @generated + */ + private EClass andGateEClass = null; + + /** + * + * + * @generated + */ + private EClass orGateEClass = null; + + /** + * + * + * @generated + */ + private EClass xorGateEClass = null; + + /** + * + * + * @generated + */ + private EClass modelEClass = null; + + /** + * + * + * @generated + */ + private EClass containerElementEClass = null; + + /** + * + * + * @generated + */ + private EClass terminalEClass = null; + + /** + * + * + * @generated + */ + private EClass outputTerminalEClass = null; + + /** + * + * + * @generated + */ + private EClass inputTerminalEClass = null; + + /** + * + * + * @generated + */ + private EClass inputOutputTerminalEClass = null; + + /** + * Creates an instance of the model Package, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + *

Note: the correct way to create the package is via the static + * factory method {@link #init init()}, which also performs + * initialization of the package, or returns the registered package, + * if one already exists. + * + * + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#eNS_URI + * @see #init() + * @generated + */ + private SemanticPackageImpl() { + super(eNS_URI, SemanticFactory.eINSTANCE); + } + + /** + * + * + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the Package for this + * model, and for any others upon which it depends. Simple + * dependencies are satisfied by calling this method on all + * dependent packages before doing anything else. This method drives + * initialization for interdependent packages directly, in parallel + * with this package, itself. + *

Of this package and its interdependencies, all packages which + * have not yet been registered by their URI values are first created + * and registered. The packages are then initialized in two steps: + * meta-model objects for all of the packages are created before any + * are initialized, since one package's meta-model objects may refer to + * those of another. + *

Invocation of this method will not affect any packages that have + * already been initialized. + * + * + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static SemanticPackage init() { + if (isInited) return (SemanticPackage)EPackage.Registry.INSTANCE.getEPackage(SemanticPackage.eNS_URI); + + // Obtain or create and register package + SemanticPackageImpl theSemanticPackage = (SemanticPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof SemanticPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new SemanticPackageImpl()); + + isInited = true; + + // Create package meta-data objects + theSemanticPackage.createPackageContents(); + + // Initialize created meta-data + theSemanticPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theSemanticPackage.freeze(); + + return theSemanticPackage; + } + + /** + * + * + * @generated + */ + public EClass getLED() { + return ledEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getLED_Value() { + return (EAttribute)ledEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getElement() { + return elementEClass; + } + + /** + * + * + * @generated + */ + public EReference getElement_Terminals() { + return (EReference)elementEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getElement_OutputTerminals() { + return (EReference)elementEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getElement_InputTerminals() { + return (EReference)elementEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EClass getWire() { + return wireEClass; + } + + /** + * + * + * @generated + */ + public EReference getWire_Source() { + return (EReference)wireEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getWire_Target() { + return (EReference)wireEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getCircuit() { + return circuitEClass; + } + + /** + * + * + * @generated + */ + public EClass getGate() { + return gateEClass; + } + + /** + * + * + * @generated + */ + public EClass getFlowContainer() { + return flowContainerEClass; + } + + /** + * + * + * @generated + */ + public EClass getAndGate() { + return andGateEClass; + } + + /** + * + * + * @generated + */ + public EClass getOrGate() { + return orGateEClass; + } + + /** + * + * + * @generated + */ + public EClass getXORGate() { + return xorGateEClass; + } + + /** + * + * + * @generated + */ + public EClass getModel() { + return modelEClass; + } + + /** + * + * + * @generated + */ + public EClass getContainerElement() { + return containerElementEClass; + } + + /** + * + * + * @generated + */ + public EReference getContainerElement_Children() { + return (EReference)containerElementEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getTerminal() { + return terminalEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getTerminal_Id() { + return (EAttribute)terminalEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getOutputTerminal() { + return outputTerminalEClass; + } + + /** + * + * + * @generated + */ + public EClass getInputTerminal() { + return inputTerminalEClass; + } + + /** + * + * + * @generated + */ + public EClass getInputOutputTerminal() { + return inputOutputTerminalEClass; + } + + /** + * + * + * @generated + */ + public SemanticFactory getSemanticFactory() { + return (SemanticFactory)getEFactoryInstance(); + } + + /** + * + * + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void createPackageContents() { + if (isCreated) return; + isCreated = true; + + // Create classes and their features + ledEClass = createEClass(LED); + createEAttribute(ledEClass, LED__VALUE); + + elementEClass = createEClass(ELEMENT); + createEReference(elementEClass, ELEMENT__TERMINALS); + createEReference(elementEClass, ELEMENT__OUTPUT_TERMINALS); + createEReference(elementEClass, ELEMENT__INPUT_TERMINALS); + + wireEClass = createEClass(WIRE); + createEReference(wireEClass, WIRE__SOURCE); + createEReference(wireEClass, WIRE__TARGET); + + circuitEClass = createEClass(CIRCUIT); + + gateEClass = createEClass(GATE); + + flowContainerEClass = createEClass(FLOW_CONTAINER); + + andGateEClass = createEClass(AND_GATE); + + orGateEClass = createEClass(OR_GATE); + + xorGateEClass = createEClass(XOR_GATE); + + modelEClass = createEClass(MODEL); + + containerElementEClass = createEClass(CONTAINER_ELEMENT); + createEReference(containerElementEClass, CONTAINER_ELEMENT__CHILDREN); + + terminalEClass = createEClass(TERMINAL); + createEAttribute(terminalEClass, TERMINAL__ID); + + outputTerminalEClass = createEClass(OUTPUT_TERMINAL); + + inputTerminalEClass = createEClass(INPUT_TERMINAL); + + inputOutputTerminalEClass = createEClass(INPUT_OUTPUT_TERMINAL); + } + + /** + * + * + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void initializePackageContents() { + if (isInitialized) return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Add supertypes to classes + ledEClass.getESuperTypes().add(this.getElement()); + wireEClass.getESuperTypes().add(this.getElement()); + circuitEClass.getESuperTypes().add(this.getContainerElement()); + gateEClass.getESuperTypes().add(this.getElement()); + flowContainerEClass.getESuperTypes().add(this.getContainerElement()); + andGateEClass.getESuperTypes().add(this.getGate()); + orGateEClass.getESuperTypes().add(this.getGate()); + xorGateEClass.getESuperTypes().add(this.getGate()); + modelEClass.getESuperTypes().add(this.getContainerElement()); + containerElementEClass.getESuperTypes().add(this.getElement()); + terminalEClass.getESuperTypes().add(this.getElement()); + outputTerminalEClass.getESuperTypes().add(this.getTerminal()); + inputTerminalEClass.getESuperTypes().add(this.getTerminal()); + inputOutputTerminalEClass.getESuperTypes().add(this.getOutputTerminal()); + inputOutputTerminalEClass.getESuperTypes().add(this.getInputTerminal()); + + // Initialize classes and features; add operations and parameters + initEClass(ledEClass, org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED.class, "LED", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getLED_Value(), ecorePackage.getEInt(), "value", "0", 0, 1, org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(elementEClass, Element.class, "Element", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getElement_Terminals(), this.getTerminal(), null, "terminals", null, 0, -1, Element.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getElement_OutputTerminals(), this.getTerminal(), null, "outputTerminals", null, 0, -1, Element.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getElement_InputTerminals(), this.getTerminal(), null, "inputTerminals", null, 0, -1, Element.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(wireEClass, Wire.class, "Wire", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getWire_Source(), this.getOutputTerminal(), null, "source", null, 1, 1, Wire.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getWire_Target(), this.getInputTerminal(), null, "target", null, 1, 1, Wire.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(circuitEClass, Circuit.class, "Circuit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(gateEClass, Gate.class, "Gate", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(flowContainerEClass, FlowContainer.class, "FlowContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(andGateEClass, AndGate.class, "AndGate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(orGateEClass, OrGate.class, "OrGate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(xorGateEClass, XORGate.class, "XORGate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(modelEClass, Model.class, "Model", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(containerElementEClass, ContainerElement.class, "ContainerElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getContainerElement_Children(), this.getElement(), null, "children", null, 0, -1, ContainerElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(terminalEClass, Terminal.class, "Terminal", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getTerminal_Id(), ecorePackage.getEString(), "id", "", 0, 1, Terminal.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(outputTerminalEClass, OutputTerminal.class, "OutputTerminal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(inputTerminalEClass, InputTerminal.class, "InputTerminal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(inputOutputTerminalEClass, InputOutputTerminal.class, "InputOutputTerminal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + // Create resource + createResource(eNS_URI); + } + +} //SemanticPackageImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/CircuitImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/CircuitImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/CircuitImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/CircuitImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Circuit'. + * + *

+ *

+ * + * @generated + */ +public class CircuitImpl extends ContainerElementImpl implements Circuit { + /** + * + * + * @generated + */ + protected CircuitImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.CIRCUIT; + } + +} //CircuitImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/XORGateImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/XORGateImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/XORGateImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/XORGateImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate; + +/** + * + * An implementation of the model object 'XOR Gate'. + * + *

+ *

+ * + * @generated + */ +public class XORGateImpl extends GateImpl implements XORGate { + /** + * + * + * @generated + */ + protected XORGateImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.XOR_GATE; + } + +} //XORGateImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/XORGate.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/XORGate.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/XORGate.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/XORGate.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'XOR Gate'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getXORGate() + * @model + * @generated + */ +public interface XORGate extends Gate { +} // XORGate Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ModelImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ModelImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ModelImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ModelImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Model'. + * + *

+ *

+ * + * @generated + */ +public class ModelImpl extends ContainerElementImpl implements Model { + /** + * + * + * @generated + */ + protected ModelImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.MODEL; + } + +} //ModelImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/InputTerminalImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/InputTerminalImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/InputTerminalImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/InputTerminalImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Input Terminal'. + * + *

+ *

+ * + * @generated + */ +public class InputTerminalImpl extends TerminalImpl implements InputTerminal { + /** + * + * + * @generated + */ + protected InputTerminalImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.INPUT_TERMINAL; + } + +} //InputTerminalImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/LEDImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/LEDImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/LEDImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/LEDImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,160 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'LED'. + * + *

+ * The following features are implemented: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.LEDImpl#getValue Value}
  • + *
+ *

+ * + * @generated + */ +public class LEDImpl extends ElementImpl implements LED { + /** + * The default value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected static final int VALUE_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected int value = VALUE_EDEFAULT; + + /** + * + * + * @generated + */ + protected LEDImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.LED; + } + + /** + * + * + * @generated + */ + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + public void setValue(int newValue) { + int oldValue = value; + value = newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SemanticPackage.LED__VALUE, oldValue, value)); + } + + /** + * + * + * @generated + */ + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SemanticPackage.LED__VALUE: + return new Integer(getValue()); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SemanticPackage.LED__VALUE: + setValue(((Integer)newValue).intValue()); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + public void eUnset(int featureID) { + switch (featureID) { + case SemanticPackage.LED__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + public boolean eIsSet(int featureID) { + switch (featureID) { + case SemanticPackage.LED__VALUE: + return value != VALUE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} //LEDImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/SemanticPackage.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/SemanticPackage.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/SemanticPackage.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/SemanticPackage.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,1328 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * + * The Package for the model. + * It contains accessors for the meta objects to represent + *
    + *
  • each class,
  • + *
  • each feature of each class,
  • + *
  • each enum,
  • + *
  • and each data type
  • + *
+ * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticFactory + * @model kind="package" + * @generated + */ +public interface SemanticPackage extends EPackage { + /** + * The package name. + * + * + * @generated + */ + String eNAME = "semantic"; + + /** + * The package namespace URI. + * + * + * @generated + */ + String eNS_URI = "http://www.eclipse.org/gmf/examples/runtime/1.0.0/logicsemantic"; + + /** + * The package namespace name. + * + * + * @generated + */ + String eNS_PREFIX = "semantic"; + + /** + * The singleton instance of the package. + * + * + * @generated + */ + SemanticPackage eINSTANCE = org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl.init(); + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ElementImpl Element}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ElementImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getElement() + * @generated + */ + int ELEMENT = 1; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int ELEMENT__TERMINALS = 0; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int ELEMENT__OUTPUT_TERMINALS = 1; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int ELEMENT__INPUT_TERMINALS = 2; + + /** + * The number of structural features of the 'Element' class. + * + * + * @generated + * @ordered + */ + int ELEMENT_FEATURE_COUNT = 3; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.LEDImpl LED}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.LEDImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getLED() + * @generated + */ + int LED = 0; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int LED__TERMINALS = ELEMENT__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int LED__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int LED__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; + + /** + * The feature id for the 'Value' attribute. + * + * + * @generated + * @ordered + */ + int LED__VALUE = ELEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'LED' class. + * + * + * @generated + * @ordered + */ + int LED_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.WireImpl Wire}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.WireImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getWire() + * @generated + */ + int WIRE = 2; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int WIRE__TERMINALS = ELEMENT__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int WIRE__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int WIRE__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; + + /** + * The feature id for the 'Source' reference. + * + * + * @generated + * @ordered + */ + int WIRE__SOURCE = ELEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Target' reference. + * + * + * @generated + * @ordered + */ + int WIRE__TARGET = ELEMENT_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Wire' class. + * + * + * @generated + * @ordered + */ + int WIRE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ContainerElementImpl Container Element}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ContainerElementImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getContainerElement() + * @generated + */ + int CONTAINER_ELEMENT = 10; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int CONTAINER_ELEMENT__TERMINALS = ELEMENT__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int CONTAINER_ELEMENT__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int CONTAINER_ELEMENT__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int CONTAINER_ELEMENT__CHILDREN = ELEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Container Element' class. + * + * + * @generated + * @ordered + */ + int CONTAINER_ELEMENT_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.CircuitImpl Circuit}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.CircuitImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getCircuit() + * @generated + */ + int CIRCUIT = 3; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int CIRCUIT__TERMINALS = CONTAINER_ELEMENT__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int CIRCUIT__OUTPUT_TERMINALS = CONTAINER_ELEMENT__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int CIRCUIT__INPUT_TERMINALS = CONTAINER_ELEMENT__INPUT_TERMINALS; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int CIRCUIT__CHILDREN = CONTAINER_ELEMENT__CHILDREN; + + /** + * The number of structural features of the 'Circuit' class. + * + * + * @generated + * @ordered + */ + int CIRCUIT_FEATURE_COUNT = CONTAINER_ELEMENT_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.GateImpl Gate}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.GateImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getGate() + * @generated + */ + int GATE = 4; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int GATE__TERMINALS = ELEMENT__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int GATE__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int GATE__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; + + /** + * The number of structural features of the 'Gate' class. + * + * + * @generated + * @ordered + */ + int GATE_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.FlowContainerImpl Flow Container}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.FlowContainerImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getFlowContainer() + * @generated + */ + int FLOW_CONTAINER = 5; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int FLOW_CONTAINER__TERMINALS = CONTAINER_ELEMENT__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int FLOW_CONTAINER__OUTPUT_TERMINALS = CONTAINER_ELEMENT__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int FLOW_CONTAINER__INPUT_TERMINALS = CONTAINER_ELEMENT__INPUT_TERMINALS; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int FLOW_CONTAINER__CHILDREN = CONTAINER_ELEMENT__CHILDREN; + + /** + * The number of structural features of the 'Flow Container' class. + * + * + * @generated + * @ordered + */ + int FLOW_CONTAINER_FEATURE_COUNT = CONTAINER_ELEMENT_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.AndGateImpl And Gate}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.AndGateImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getAndGate() + * @generated + */ + int AND_GATE = 6; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int AND_GATE__TERMINALS = GATE__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int AND_GATE__OUTPUT_TERMINALS = GATE__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int AND_GATE__INPUT_TERMINALS = GATE__INPUT_TERMINALS; + + /** + * The number of structural features of the 'And Gate' class. + * + * + * @generated + * @ordered + */ + int AND_GATE_FEATURE_COUNT = GATE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.OrGateImpl Or Gate}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.OrGateImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getOrGate() + * @generated + */ + int OR_GATE = 7; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int OR_GATE__TERMINALS = GATE__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int OR_GATE__OUTPUT_TERMINALS = GATE__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int OR_GATE__INPUT_TERMINALS = GATE__INPUT_TERMINALS; + + /** + * The number of structural features of the 'Or Gate' class. + * + * + * @generated + * @ordered + */ + int OR_GATE_FEATURE_COUNT = GATE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.XORGateImpl XOR Gate}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.XORGateImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getXORGate() + * @generated + */ + int XOR_GATE = 8; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int XOR_GATE__TERMINALS = GATE__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int XOR_GATE__OUTPUT_TERMINALS = GATE__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int XOR_GATE__INPUT_TERMINALS = GATE__INPUT_TERMINALS; + + /** + * The number of structural features of the 'XOR Gate' class. + * + * + * @generated + * @ordered + */ + int XOR_GATE_FEATURE_COUNT = GATE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ModelImpl Model}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ModelImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getModel() + * @generated + */ + int MODEL = 9; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int MODEL__TERMINALS = CONTAINER_ELEMENT__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int MODEL__OUTPUT_TERMINALS = CONTAINER_ELEMENT__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int MODEL__INPUT_TERMINALS = CONTAINER_ELEMENT__INPUT_TERMINALS; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int MODEL__CHILDREN = CONTAINER_ELEMENT__CHILDREN; + + /** + * The number of structural features of the 'Model' class. + * + * + * @generated + * @ordered + */ + int MODEL_FEATURE_COUNT = CONTAINER_ELEMENT_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.TerminalImpl Terminal}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.TerminalImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getTerminal() + * @generated + */ + int TERMINAL = 11; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int TERMINAL__TERMINALS = ELEMENT__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int TERMINAL__OUTPUT_TERMINALS = ELEMENT__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int TERMINAL__INPUT_TERMINALS = ELEMENT__INPUT_TERMINALS; + + /** + * The feature id for the 'Id' attribute. + * + * + * @generated + * @ordered + */ + int TERMINAL__ID = ELEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Terminal' class. + * + * + * @generated + * @ordered + */ + int TERMINAL_FEATURE_COUNT = ELEMENT_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.OutputTerminalImpl Output Terminal}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.OutputTerminalImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getOutputTerminal() + * @generated + */ + int OUTPUT_TERMINAL = 12; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int OUTPUT_TERMINAL__TERMINALS = TERMINAL__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int OUTPUT_TERMINAL__OUTPUT_TERMINALS = TERMINAL__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int OUTPUT_TERMINAL__INPUT_TERMINALS = TERMINAL__INPUT_TERMINALS; + + /** + * The feature id for the 'Id' attribute. + * + * + * @generated + * @ordered + */ + int OUTPUT_TERMINAL__ID = TERMINAL__ID; + + /** + * The number of structural features of the 'Output Terminal' class. + * + * + * @generated + * @ordered + */ + int OUTPUT_TERMINAL_FEATURE_COUNT = TERMINAL_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.InputTerminalImpl Input Terminal}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.InputTerminalImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getInputTerminal() + * @generated + */ + int INPUT_TERMINAL = 13; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int INPUT_TERMINAL__TERMINALS = TERMINAL__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int INPUT_TERMINAL__OUTPUT_TERMINALS = TERMINAL__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int INPUT_TERMINAL__INPUT_TERMINALS = TERMINAL__INPUT_TERMINALS; + + /** + * The feature id for the 'Id' attribute. + * + * + * @generated + * @ordered + */ + int INPUT_TERMINAL__ID = TERMINAL__ID; + + /** + * The number of structural features of the 'Input Terminal' class. + * + * + * @generated + * @ordered + */ + int INPUT_TERMINAL_FEATURE_COUNT = TERMINAL_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.InputOutputTerminalImpl Input Output Terminal}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.InputOutputTerminalImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getInputOutputTerminal() + * @generated + */ + int INPUT_OUTPUT_TERMINAL = 14; + + /** + * The feature id for the 'Terminals' containment reference list. + * + * + * @generated + * @ordered + */ + int INPUT_OUTPUT_TERMINAL__TERMINALS = OUTPUT_TERMINAL__TERMINALS; + + /** + * The feature id for the 'Output Terminals' reference list. + * + * + * @generated + * @ordered + */ + int INPUT_OUTPUT_TERMINAL__OUTPUT_TERMINALS = OUTPUT_TERMINAL__OUTPUT_TERMINALS; + + /** + * The feature id for the 'Input Terminals' reference list. + * + * + * @generated + * @ordered + */ + int INPUT_OUTPUT_TERMINAL__INPUT_TERMINALS = OUTPUT_TERMINAL__INPUT_TERMINALS; + + /** + * The feature id for the 'Id' attribute. + * + * + * @generated + * @ordered + */ + int INPUT_OUTPUT_TERMINAL__ID = OUTPUT_TERMINAL__ID; + + /** + * The number of structural features of the 'Input Output Terminal' class. + * + * + * @generated + * @ordered + */ + int INPUT_OUTPUT_TERMINAL_FEATURE_COUNT = OUTPUT_TERMINAL_FEATURE_COUNT + 0; + + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED LED}'. + * + * + * @return the meta object for class 'LED'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED + * @generated + */ + EClass getLED(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED#getValue Value}'. + * + * + * @return the meta object for the attribute 'Value'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED#getValue() + * @see #getLED() + * @generated + */ + EAttribute getLED_Value(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element Element}'. + * + * + * @return the meta object for class 'Element'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element + * @generated + */ + EClass getElement(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getTerminals Terminals}'. + * + * + * @return the meta object for the containment reference list 'Terminals'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getTerminals() + * @see #getElement() + * @generated + */ + EReference getElement_Terminals(); + + /** + * Returns the meta object for the reference list '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getOutputTerminals Output Terminals}'. + * + * + * @return the meta object for the reference list 'Output Terminals'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getOutputTerminals() + * @see #getElement() + * @generated + */ + EReference getElement_OutputTerminals(); + + /** + * Returns the meta object for the reference list '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getInputTerminals Input Terminals}'. + * + * + * @return the meta object for the reference list 'Input Terminals'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element#getInputTerminals() + * @see #getElement() + * @generated + */ + EReference getElement_InputTerminals(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire Wire}'. + * + * + * @return the meta object for class 'Wire'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire + * @generated + */ + EClass getWire(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire#getSource Source}'. + * + * + * @return the meta object for the reference 'Source'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire#getSource() + * @see #getWire() + * @generated + */ + EReference getWire_Source(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire#getTarget Target}'. + * + * + * @return the meta object for the reference 'Target'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Wire#getTarget() + * @see #getWire() + * @generated + */ + EReference getWire_Target(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit Circuit}'. + * + * + * @return the meta object for class 'Circuit'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Circuit + * @generated + */ + EClass getCircuit(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate Gate}'. + * + * + * @return the meta object for class 'Gate'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Gate + * @generated + */ + EClass getGate(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer Flow Container}'. + * + * + * @return the meta object for class 'Flow Container'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.FlowContainer + * @generated + */ + EClass getFlowContainer(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate And Gate}'. + * + * + * @return the meta object for class 'And Gate'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.AndGate + * @generated + */ + EClass getAndGate(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate Or Gate}'. + * + * + * @return the meta object for class 'Or Gate'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OrGate + * @generated + */ + EClass getOrGate(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate XOR Gate}'. + * + * + * @return the meta object for class 'XOR Gate'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.XORGate + * @generated + */ + EClass getXORGate(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model Model}'. + * + * + * @return the meta object for class 'Model'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Model + * @generated + */ + EClass getModel(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement Container Element}'. + * + * + * @return the meta object for class 'Container Element'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement + * @generated + */ + EClass getContainerElement(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement#getChildren Children}'. + * + * + * @return the meta object for the containment reference list 'Children'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement#getChildren() + * @see #getContainerElement() + * @generated + */ + EReference getContainerElement_Children(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal Terminal}'. + * + * + * @return the meta object for class 'Terminal'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal + * @generated + */ + EClass getTerminal(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal#getId Id}'. + * + * + * @return the meta object for the attribute 'Id'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal#getId() + * @see #getTerminal() + * @generated + */ + EAttribute getTerminal_Id(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal Output Terminal}'. + * + * + * @return the meta object for class 'Output Terminal'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal + * @generated + */ + EClass getOutputTerminal(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal Input Terminal}'. + * + * + * @return the meta object for class 'Input Terminal'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputTerminal + * @generated + */ + EClass getInputTerminal(); + + /** + * Returns the meta object for class '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal Input Output Terminal}'. + * + * + * @return the meta object for class 'Input Output Terminal'. + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.InputOutputTerminal + * @generated + */ + EClass getInputOutputTerminal(); + + /** + * Returns the factory that creates the instances of the model. + * + * + * @return the factory that creates the instances of the model. + * @generated + */ + SemanticFactory getSemanticFactory(); + + /** + * + * Defines literals for the meta objects that represent + *
    + *
  • each class,
  • + *
  • each feature of each class,
  • + *
  • each enum,
  • + *
  • and each data type
  • + *
+ * + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.LEDImpl LED}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.LEDImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getLED() + * @generated + */ + EClass LED = eINSTANCE.getLED(); + + /** + * The meta object literal for the 'Value' attribute feature. + * + * + * @generated + */ + EAttribute LED__VALUE = eINSTANCE.getLED_Value(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ElementImpl Element}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ElementImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getElement() + * @generated + */ + EClass ELEMENT = eINSTANCE.getElement(); + + /** + * The meta object literal for the 'Terminals' containment reference list feature. + * + * + * @generated + */ + EReference ELEMENT__TERMINALS = eINSTANCE.getElement_Terminals(); + + /** + * The meta object literal for the 'Output Terminals' reference list feature. + * + * + * @generated + */ + EReference ELEMENT__OUTPUT_TERMINALS = eINSTANCE.getElement_OutputTerminals(); + + /** + * The meta object literal for the 'Input Terminals' reference list feature. + * + * + * @generated + */ + EReference ELEMENT__INPUT_TERMINALS = eINSTANCE.getElement_InputTerminals(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.WireImpl Wire}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.WireImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getWire() + * @generated + */ + EClass WIRE = eINSTANCE.getWire(); + + /** + * The meta object literal for the 'Source' reference feature. + * + * + * @generated + */ + EReference WIRE__SOURCE = eINSTANCE.getWire_Source(); + + /** + * The meta object literal for the 'Target' reference feature. + * + * + * @generated + */ + EReference WIRE__TARGET = eINSTANCE.getWire_Target(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.CircuitImpl Circuit}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.CircuitImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getCircuit() + * @generated + */ + EClass CIRCUIT = eINSTANCE.getCircuit(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.GateImpl Gate}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.GateImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getGate() + * @generated + */ + EClass GATE = eINSTANCE.getGate(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.FlowContainerImpl Flow Container}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.FlowContainerImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getFlowContainer() + * @generated + */ + EClass FLOW_CONTAINER = eINSTANCE.getFlowContainer(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.AndGateImpl And Gate}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.AndGateImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getAndGate() + * @generated + */ + EClass AND_GATE = eINSTANCE.getAndGate(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.OrGateImpl Or Gate}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.OrGateImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getOrGate() + * @generated + */ + EClass OR_GATE = eINSTANCE.getOrGate(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.XORGateImpl XOR Gate}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.XORGateImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getXORGate() + * @generated + */ + EClass XOR_GATE = eINSTANCE.getXORGate(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ModelImpl Model}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ModelImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getModel() + * @generated + */ + EClass MODEL = eINSTANCE.getModel(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ContainerElementImpl Container Element}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ContainerElementImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getContainerElement() + * @generated + */ + EClass CONTAINER_ELEMENT = eINSTANCE.getContainerElement(); + + /** + * The meta object literal for the 'Children' containment reference list feature. + * + * + * @generated + */ + EReference CONTAINER_ELEMENT__CHILDREN = eINSTANCE.getContainerElement_Children(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.TerminalImpl Terminal}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.TerminalImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getTerminal() + * @generated + */ + EClass TERMINAL = eINSTANCE.getTerminal(); + + /** + * The meta object literal for the 'Id' attribute feature. + * + * + * @generated + */ + EAttribute TERMINAL__ID = eINSTANCE.getTerminal_Id(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.OutputTerminalImpl Output Terminal}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.OutputTerminalImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getOutputTerminal() + * @generated + */ + EClass OUTPUT_TERMINAL = eINSTANCE.getOutputTerminal(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.InputTerminalImpl Input Terminal}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.InputTerminalImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getInputTerminal() + * @generated + */ + EClass INPUT_TERMINAL = eINSTANCE.getInputTerminal(); + + /** + * The meta object literal for the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.InputOutputTerminalImpl Input Output Terminal}' class. + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.InputOutputTerminalImpl + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.SemanticPackageImpl#getInputOutputTerminal() + * @generated + */ + EClass INPUT_OUTPUT_TERMINAL = eINSTANCE.getInputOutputTerminal(); + + } + +} //SemanticPackage Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/TerminalImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/TerminalImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/TerminalImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/TerminalImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,160 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Terminal; + +/** + * + * An implementation of the model object 'Terminal'. + * + *

+ * The following features are implemented: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.TerminalImpl#getId Id}
  • + *
+ *

+ * + * @generated + */ +public abstract class TerminalImpl extends ElementImpl implements Terminal { + /** + * The default value of the '{@link #getId() Id}' attribute. + * + * + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = ""; + + /** + * The cached value of the '{@link #getId() Id}' attribute. + * + * + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * + * + * @generated + */ + protected TerminalImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.TERMINAL; + } + + /** + * + * + * @generated + */ + public String getId() { + return id; + } + + /** + * + * + * @generated + */ + public void setId(String newId) { + String oldId = id; + id = newId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SemanticPackage.TERMINAL__ID, oldId, id)); + } + + /** + * + * + * @generated + */ + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SemanticPackage.TERMINAL__ID: + return getId(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SemanticPackage.TERMINAL__ID: + setId((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + public void eUnset(int featureID) { + switch (featureID) { + case SemanticPackage.TERMINAL__ID: + setId(ID_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + public boolean eIsSet(int featureID) { + switch (featureID) { + case SemanticPackage.TERMINAL__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (id: "); + result.append(id); + result.append(')'); + return result.toString(); + } + +} //TerminalImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Model.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Model.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Model.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/Model.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Model'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getModel() + * @model + * @generated + */ +public interface Model extends ContainerElement { +} // Model Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/OutputTerminalImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/OutputTerminalImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/OutputTerminalImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/OutputTerminalImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,42 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.OutputTerminal; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Output Terminal'. + * + *

+ *

+ * + * @generated + */ +public class OutputTerminalImpl extends TerminalImpl implements OutputTerminal { + /** + * + * + * @generated + */ + protected OutputTerminalImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.OUTPUT_TERMINAL; + } + +} //OutputTerminalImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/LED.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/LED.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/LED.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/LED.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,54 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'LED'. + * + * + *

+ * The following features are supported: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED#getValue Value}
  • + *
+ *

+ * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getLED() + * @model + * @generated + */ +public interface LED extends Element { + /** + * Returns the value of the 'Value' attribute. + * The default value is "0". + * + *

+ * If the meaning of the 'Value' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Value' attribute. + * @see #setValue(int) + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getLED_Value() + * @model default="0" + * @generated + */ + int getValue(); + + /** + * Sets the value of the '{@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.LED#getValue Value}' attribute. + * + * + * @param value the new value of the 'Value' attribute. + * @see #getValue() + * @generated + */ + void setValue(int value); + +} // LED Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ContainerElementImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ContainerElementImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ContainerElementImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/ContainerElementImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,147 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.ContainerElement; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.Element; +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage; + +/** + * + * An implementation of the model object 'Container Element'. + * + *

+ * The following features are implemented: + *

    + *
  • {@link org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl.ContainerElementImpl#getChildren Children}
  • + *
+ *

+ * + * @generated + */ +public abstract class ContainerElementImpl extends ElementImpl implements ContainerElement { + /** + * The cached value of the '{@link #getChildren() Children}' containment reference list. + * + * + * @see #getChildren() + * @generated + * @ordered + */ + protected EList children = null; + + /** + * + * + * @generated + */ + protected ContainerElementImpl() { + super(); + } + + /** + * + * + * @generated + */ + protected EClass eStaticClass() { + return SemanticPackage.Literals.CONTAINER_ELEMENT; + } + + /** + * + * + * @generated + */ + public EList getChildren() { + if (children == null) { + children = new EObjectContainmentEList(Element.class, this, SemanticPackage.CONTAINER_ELEMENT__CHILDREN); + } + return children; + } + + /** + * + * + * @generated + */ + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: + return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: + return getChildren(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: + getChildren().clear(); + getChildren().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + public void eUnset(int featureID) { + switch (featureID) { + case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: + getChildren().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + public boolean eIsSet(int featureID) { + switch (featureID) { + case SemanticPackage.CONTAINER_ELEMENT__CHILDREN: + return children != null && !children.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ContainerElementImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/SemanticFactoryImpl.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/SemanticFactoryImpl.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/SemanticFactoryImpl.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/impl/SemanticFactoryImpl.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,207 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic.impl; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +import org.eclipse.gmf.examples.runtime.diagram.logic.semantic.*; + +/** + * + * An implementation of the model Factory. + * + * @generated + */ +public class SemanticFactoryImpl extends EFactoryImpl implements SemanticFactory { + /** + * Creates the default factory implementation. + * + * + * @generated + */ + public static SemanticFactory init() { + try { + SemanticFactory theSemanticFactory = (SemanticFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/gmf/examples/runtime/1.0.0/logicsemantic"); + if (theSemanticFactory != null) { + return theSemanticFactory; + } + } + catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new SemanticFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * + * + * @generated + */ + public SemanticFactoryImpl() { + super(); + } + + /** + * + * + * @generated + */ + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case SemanticPackage.LED: return createLED(); + case SemanticPackage.WIRE: return createWire(); + case SemanticPackage.CIRCUIT: return createCircuit(); + case SemanticPackage.FLOW_CONTAINER: return createFlowContainer(); + case SemanticPackage.AND_GATE: return createAndGate(); + case SemanticPackage.OR_GATE: return createOrGate(); + case SemanticPackage.XOR_GATE: return createXORGate(); + case SemanticPackage.MODEL: return createModel(); + case SemanticPackage.OUTPUT_TERMINAL: return createOutputTerminal(); + case SemanticPackage.INPUT_TERMINAL: return createInputTerminal(); + case SemanticPackage.INPUT_OUTPUT_TERMINAL: return createInputOutputTerminal(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + public LED createLED() { + LEDImpl led = new LEDImpl(); + return led; + } + + /** + * + * + * @generated + */ + public Wire createWire() { + WireImpl wire = new WireImpl(); + return wire; + } + + /** + * + * + * @generated + */ + public Circuit createCircuit() { + CircuitImpl circuit = new CircuitImpl(); + return circuit; + } + + /** + * + * + * @generated + */ + public FlowContainer createFlowContainer() { + FlowContainerImpl flowContainer = new FlowContainerImpl(); + return flowContainer; + } + + /** + * + * + * @generated + */ + public AndGate createAndGate() { + AndGateImpl andGate = new AndGateImpl(); + return andGate; + } + + /** + * + * + * @generated + */ + public OrGate createOrGate() { + OrGateImpl orGate = new OrGateImpl(); + return orGate; + } + + /** + * + * + * @generated + */ + public XORGate createXORGate() { + XORGateImpl xorGate = new XORGateImpl(); + return xorGate; + } + + /** + * + * + * @generated + */ + public Model createModel() { + ModelImpl model = new ModelImpl(); + return model; + } + + /** + * + * + * @generated + */ + public OutputTerminal createOutputTerminal() { + OutputTerminalImpl outputTerminal = new OutputTerminalImpl(); + return outputTerminal; + } + + /** + * + * + * @generated + */ + public InputTerminal createInputTerminal() { + InputTerminalImpl inputTerminal = new InputTerminalImpl(); + return inputTerminal; + } + + /** + * + * + * @generated + */ + public InputOutputTerminal createInputOutputTerminal() { + InputOutputTerminalImpl inputOutputTerminal = new InputOutputTerminalImpl(); + return inputOutputTerminal; + } + + /** + * + * + * @generated + */ + public SemanticPackage getSemanticPackage() { + return (SemanticPackage)getEPackage(); + } + + /** + * + * + * @deprecated + * @generated + */ + public static SemanticPackage getPackage() { + return SemanticPackage.eINSTANCE; + } + +} //SemanticFactoryImpl Index: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/FlowContainer.java =================================================================== RCS file: src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/FlowContainer.java diff -N src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/FlowContainer.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ src/org/eclipse/gmf/examples/runtime/diagram/logic/semantic/FlowContainer.java 1 Jan 1970 00:00:00 -0000 @@ -0,0 +1,21 @@ +/** + * + * + * + * $Id$ + */ +package org.eclipse.gmf.examples.runtime.diagram.logic.semantic; + + +/** + * + * A representation of the model object 'Flow Container'. + * + * + * + * @see org.eclipse.gmf.examples.runtime.diagram.logic.semantic.SemanticPackage#getFlowContainer() + * @model + * @generated + */ +public interface FlowContainer extends ContainerElement { +} // FlowContainer