diff --git a/org.fortiss.tooling.base.ui/trunk/META-INF/MANIFEST.MF b/org.fortiss.tooling.base.ui/trunk/META-INF/MANIFEST.MF index 0ef04857a392849cbbcbbdb0feb95bd85f3419e5..339fec8410e14439feaf712988d6cf383bdfe534 100644 --- a/org.fortiss.tooling.base.ui/trunk/META-INF/MANIFEST.MF +++ b/org.fortiss.tooling.base.ui/trunk/META-INF/MANIFEST.MF @@ -16,4 +16,6 @@ Export-Package: org.fortiss.tooling.kernel.base.ui, org.fortiss.tooling.kernel.base.ui.editpart, org.fortiss.tooling.kernel.base.ui.editpart.anchor, org.fortiss.tooling.kernel.base.ui.editpart.policy, + org.fortiss.tooling.kernel.base.ui.layout, + org.fortiss.tooling.kernel.base.ui.layout.constants, org.fortiss.tooling.kernel.base.ui.layout.util diff --git a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/GraphicalConnectionEditPartBase.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/GraphicalConnectionEditPartBase.java index 24e18f74385f09a3b1076d3fc104ee0afc2b71a5..8f33ace0310033971722291ae8e4915ebf3c540d 100644 --- a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/GraphicalConnectionEditPartBase.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/GraphicalConnectionEditPartBase.java @@ -23,8 +23,8 @@ import org.eclipse.emf.common.notify.impl.AdapterImpl; import org.eclipse.gef.editparts.AbstractConnectionEditPart; import org.fortiss.tooling.base.model.element.IConnection; import org.fortiss.tooling.base.model.layout.ILayoutedModelElement; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; -import org.fortiss.tooling.kernel.services.IModelElementService; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; /** * Base class for graphical connection edit parts. diff --git a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/GraphicalEditPartBase.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/GraphicalEditPartBase.java index 0328e855ddc2f67a14956e01b65aacda9e11fe36..f1b5e296e2aea4433a4323a4e3f94ef561de98b0 100644 --- a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/GraphicalEditPartBase.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/GraphicalEditPartBase.java @@ -22,8 +22,8 @@ import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.impl.AdapterImpl; import org.eclipse.emf.ecore.EObject; import org.eclipse.gef.editparts.AbstractGraphicalEditPart; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; -import org.fortiss.tooling.kernel.services.IModelElementService; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; /** * The base class for all graphical edit parts. diff --git a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/NodeEditPartBase.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/NodeEditPartBase.java index e880b3d79fc9ea4bcddaa89e3c3609d6ac93d498..da102ddda7c586ed27ef83c476283f07a72edb71 100644 --- a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/NodeEditPartBase.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/editpart/NodeEditPartBase.java @@ -28,11 +28,11 @@ import org.eclipse.draw2d.geometry.Rectangle; import org.eclipse.gef.Request; import org.eclipse.gef.RequestConstants; import org.eclipse.swt.graphics.Color; -import org.fortiss.tooling.base.layout.constants.RecommendedLayoutConstants; -import org.fortiss.tooling.base.layout.util.LayoutDataUtils; import org.fortiss.tooling.base.model.layout.ILayoutedModelElement; +import org.fortiss.tooling.kernel.base.ui.layout.constants.RecommendedLayoutConstants; +import org.fortiss.tooling.kernel.base.ui.layout.util.LayoutDataUtils; import org.fortiss.tooling.kernel.model.INamedCommentedElement; -import org.fortiss.tooling.kernel.services.IModelElementService; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; /** * The base class for graphical edit parts which encapsulate nodes (i.e. the diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/EMF2GEFCommand.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/EMF2GEFCommand.java similarity index 97% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/EMF2GEFCommand.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/EMF2GEFCommand.java index 3840ce633dfdeaad14eb0774094a297597b7364e..2cc2bc8aa015e4fa4fd36fda5fac3c4f65766710 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/EMF2GEFCommand.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/EMF2GEFCommand.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.internal.command; +package org.fortiss.tooling.kernel.base.ui.internal.command; import org.eclipse.gef.commands.Command; diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/GEF2EMFCommand.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/GEF2EMFCommand.java similarity index 98% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/GEF2EMFCommand.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/GEF2EMFCommand.java index 967bf7263a63e3abcfe85dc63d5a113973e2f168..c367a47d26a478fda8d3a5ddf030f0a248ee6b01 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/GEF2EMFCommand.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/GEF2EMFCommand.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.internal.command; +package org.fortiss.tooling.kernel.base.ui.internal.command; import java.util.Collection; import java.util.Collections; diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/GEF2EMFCommandStack.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/GEF2EMFCommandStack.java similarity index 98% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/GEF2EMFCommandStack.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/GEF2EMFCommandStack.java index ae54acc8e5309407a20f4aa8634085235202b767..8b457d4e01f2539a9bae588fba3102fc550abb36 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/internal/command/GEF2EMFCommandStack.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/internal/command/GEF2EMFCommandStack.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.internal.command; +package org.fortiss.tooling.kernel.base.ui.internal.command; import java.util.EventObject; diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/IPointLayouter.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/IPointLayouter.java similarity index 97% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/IPointLayouter.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/IPointLayouter.java index 96ee10e5997baa572fd77045857fd25a3781bb55..d5863b1284b6ef24d995507599faad4096098e83 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/IPointLayouter.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/IPointLayouter.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.layout; +package org.fortiss.tooling.kernel.base.ui.layout; import org.fortiss.tooling.base.model.layout.Point; diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/constants/LayoutKeyConstants.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/constants/LayoutKeyConstants.java similarity index 97% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/constants/LayoutKeyConstants.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/constants/LayoutKeyConstants.java index ddc147ef7c3bb51c7883dab80c31b68bf643cb15..a10ffded1a1a6cbc4a80f0aba3acb568b6136558 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/constants/LayoutKeyConstants.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/constants/LayoutKeyConstants.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.layout.constants; +package org.fortiss.tooling.kernel.base.ui.layout.constants; /** * Layout constants defining keys for the commonly used layout objects, like diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/constants/RecommendedLayoutConstants.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/constants/RecommendedLayoutConstants.java similarity index 98% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/constants/RecommendedLayoutConstants.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/constants/RecommendedLayoutConstants.java index effee91465fa6863a24d45d1ce2e8cd4e8c5ee14..bb4bae830357f6e64885ad62fc9daa7f437fc26f 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/constants/RecommendedLayoutConstants.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/constants/RecommendedLayoutConstants.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.layout.constants; +package org.fortiss.tooling.kernel.base.ui.layout.constants; import org.conqat.ide.commons.ui.swt.FontUtils; import org.eclipse.draw2d.geometry.Dimension; diff --git a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/EditPartLayoutUtils.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/EditPartLayoutUtils.java index 0c340b9cd919a1a2c028100ae326f0b7f122b319..85ae1fcae2065ecc40671b92a3e4ddc89d4665d9 100644 --- a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/EditPartLayoutUtils.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/EditPartLayoutUtils.java @@ -23,14 +23,12 @@ import org.eclipse.draw2d.PositionConstants; import org.eclipse.draw2d.geometry.Dimension; import org.eclipse.draw2d.geometry.Point; import org.eclipse.draw2d.geometry.Rectangle; -import org.fortiss.tooling.base.layout.constants.LayoutKeyConstants; -import org.fortiss.tooling.base.layout.constants.RecommendedLayoutConstants; -import org.fortiss.tooling.base.layout.util.LayoutDataUtils; -import org.fortiss.tooling.base.layout.util.OrientationUtils; import org.fortiss.tooling.base.model.layout.EOrientation; import org.fortiss.tooling.base.model.layout.ILayoutedModelElement; import org.fortiss.tooling.base.model.layout.OffsetOrientation; import org.fortiss.tooling.kernel.base.ui.dnd.DropContext; +import org.fortiss.tooling.kernel.base.ui.layout.constants.LayoutKeyConstants; +import org.fortiss.tooling.kernel.base.ui.layout.constants.RecommendedLayoutConstants; /** * Utility class collecting EditPart layout methods. diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/LayoutDataUtils.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/LayoutDataUtils.java similarity index 98% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/LayoutDataUtils.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/LayoutDataUtils.java index c9c26922727f2c6c25a289f597aec8cf660c14cf..226dc27930244e93c2df9087c713e1e0311648b2 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/LayoutDataUtils.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/LayoutDataUtils.java @@ -15,12 +15,10 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.layout.util; +package org.fortiss.tooling.kernel.base.ui.layout.util; import org.eclipse.draw2d.geometry.Rectangle; import org.eclipse.emf.ecore.EObject; -import org.fortiss.tooling.base.layout.constants.LayoutKeyConstants; -import org.fortiss.tooling.base.layout.constants.RecommendedLayoutConstants; import org.fortiss.tooling.base.model.layout.Angle; import org.fortiss.tooling.base.model.layout.Dimension; import org.fortiss.tooling.base.model.layout.EOrientation; @@ -31,6 +29,8 @@ import org.fortiss.tooling.base.model.layout.Offset; import org.fortiss.tooling.base.model.layout.Orientation; import org.fortiss.tooling.base.model.layout.Point; import org.fortiss.tooling.base.model.layout.Points; +import org.fortiss.tooling.kernel.base.ui.layout.constants.LayoutKeyConstants; +import org.fortiss.tooling.kernel.base.ui.layout.constants.RecommendedLayoutConstants; /** * Utility methods for {@link ILayoutedModelElement} and {@link ILayoutData}. diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/OrientationUtils.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/OrientationUtils.java similarity index 96% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/OrientationUtils.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/OrientationUtils.java index f3f695910b2810448ca8648d537113e73f8c11d0..3c6115fe715f745a655e9118c29c4ada1f7b6cd0 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/OrientationUtils.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/OrientationUtils.java @@ -15,16 +15,16 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.layout.util; +package org.fortiss.tooling.kernel.base.ui.layout.util; import org.eclipse.draw2d.geometry.Dimension; import org.eclipse.draw2d.geometry.Point; -import org.fortiss.tooling.base.layout.constants.RecommendedLayoutConstants; import org.fortiss.tooling.base.model.layout.EOrientation; import org.fortiss.tooling.base.model.layout.LayoutFactory; import org.fortiss.tooling.base.model.layout.Offset; import org.fortiss.tooling.base.model.layout.OffsetOrientation; import org.fortiss.tooling.base.model.layout.Orientation; +import org.fortiss.tooling.kernel.base.ui.layout.constants.RecommendedLayoutConstants; /** * Class for handling orientation relative coordinates. diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/ZoomUtils.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/ZoomUtils.java similarity index 97% rename from org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/ZoomUtils.java rename to org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/ZoomUtils.java index d58c707dcc63f6d55126e8738209f39d50db7184..5111f47e94613d39fd544e9ca9c1104113eebc98 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/layout/util/ZoomUtils.java +++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/kernel/base/ui/layout/util/ZoomUtils.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.base.layout.util; +package org.fortiss.tooling.kernel.base.ui.layout.util; import org.eclipse.gef.RootEditPart; import org.eclipse.gef.editparts.ScalableFreeformRootEditPart; diff --git a/org.fortiss.tooling.base/trunk/META-INF/MANIFEST.MF b/org.fortiss.tooling.base/trunk/META-INF/MANIFEST.MF index 252afa7ca578cd0bc9d6a6d7a3b7544647c87959..cc9f271778727ab39a83f3b57d27837c5a11ffec 100644 --- a/org.fortiss.tooling.base/trunk/META-INF/MANIFEST.MF +++ b/org.fortiss.tooling.base/trunk/META-INF/MANIFEST.MF @@ -10,9 +10,6 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Require-Bundle: org.fortiss.tooling.kernel;bundle-version="0.0.1";visibility:=reexport Bundle-ActivationPolicy: lazy Export-Package: org.fortiss.tooling.base, - org.fortiss.tooling.base.layout, - org.fortiss.tooling.base.layout.constants, - org.fortiss.tooling.base.layout.util, org.fortiss.tooling.base.model.element, org.fortiss.tooling.base.model.element.impl, org.fortiss.tooling.base.model.element.util, diff --git a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/ToolingBaseActivator.java b/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/ToolingBaseActivator.java index 62d4df8dd84f5258aa29a5f04eeb4974388cbc23..af05f0673a3f2eae0a21c9d742eb32460920fb2a 100644 --- a/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/ToolingBaseActivator.java +++ b/org.fortiss.tooling.base/trunk/src/org/fortiss/tooling/base/ToolingBaseActivator.java @@ -17,7 +17,7 @@ $Id$ +--------------------------------------------------------------------------*/ package org.fortiss.tooling.base; -import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.eclipse.core.runtime.Plugin; import org.osgi.framework.BundleContext; /** @@ -28,7 +28,7 @@ import org.osgi.framework.BundleContext; * @version $Rev$ * @ConQAT.Rating RED Hash: D6B33EFB704B0CA151E1C945B5BC48C6 */ -public class ToolingBaseActivator extends AbstractUIPlugin { +public class ToolingBaseActivator extends Plugin { /** The plug-in ID. */ public static final String PLUGIN_ID = "org.fortiss.tooling.base"; //$NON-NLS-1$ diff --git a/org.fortiss.tooling.kernel.ui/trunk/META-INF/MANIFEST.MF b/org.fortiss.tooling.kernel.ui/trunk/META-INF/MANIFEST.MF index b83dfc2650ccff24c6deb5dd452066e8555d00b2..cdae75d96b998a506a85a0a1423da6fa2bf7f178 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/META-INF/MANIFEST.MF +++ b/org.fortiss.tooling.kernel.ui/trunk/META-INF/MANIFEST.MF @@ -7,12 +7,18 @@ Bundle-Activator: org.fortiss.tooling.kernel.ui.ToolingKernelUIActivator Require-Bundle: org.eclipse.ui;visibility:=reexport, org.eclipse.core.runtime;visibility:=reexport, org.fortiss.tooling.kernel;bundle-version="0.0.1";visibility:=reexport, - org.eclipse.core.resources;bundle-version="3.6.1" + org.eclipse.core.resources;bundle-version="3.6.1";visibility:=reexport, + org.eclipse.gef;bundle-version="3.6.2";visibility:=reexport, + org.conqat.ide.commons.gef;bundle-version="2.7.0";visibility:=reexport, + org.conqat.ide.commons.ui;bundle-version="2.7.0";visibility:=reexport, + org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.100";visibility:=reexport, + org.eclipse.jface.databinding;bundle-version="1.4.0";visibility:=reexport Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-Vendor: fortiss Export-Package: org.fortiss.tooling.kernel.ui, org.fortiss.tooling.kernel.ui.base, + org.fortiss.tooling.kernel.ui.databinding, org.fortiss.tooling.kernel.ui.interfaces, org.fortiss.tooling.kernel.ui.services, org.fortiss.tooling.kernel.ui.util diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/EditorBase.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/EditorBase.java index badfc042b0af5cc661277de09d0b76f1c96c7f16..c5484805a47a20b65a9bd7eb89db132cb2b42900 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/EditorBase.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/EditorBase.java @@ -24,9 +24,9 @@ import org.eclipse.ui.IEditorInput; import org.eclipse.ui.IEditorSite; import org.eclipse.ui.PartInitException; import org.eclipse.ui.part.EditorPart; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; import org.fortiss.tooling.kernel.services.ICommandStackService; import org.fortiss.tooling.kernel.ui.interfaces.IEditorBinding; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; import org.fortiss.tooling.kernel.ui.internal.editor.ModelElementEditorInput; /** diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/ModelElementHandlerBase.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/ModelElementHandlerBase.java similarity index 96% rename from org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/ModelElementHandlerBase.java rename to org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/ModelElementHandlerBase.java index bd396144fac3f85131cdb1bf5d5bef75dee91fee..59ad1fdfb252dbf4b02bc663d9f57c1f816a85a1 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/ModelElementHandlerBase.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/ModelElementHandlerBase.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.kernel.base; +package org.fortiss.tooling.kernel.ui.base; import java.util.Collections; import java.util.List; @@ -23,7 +23,7 @@ import java.util.List; import org.eclipse.emf.ecore.EObject; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.swt.graphics.Image; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; /** * Base implementation for {@link IModelElementHandler}s. diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/NamedCommentedModelElementHandlerBase.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/NamedCommentedModelElementHandlerBase.java similarity index 94% rename from org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/NamedCommentedModelElementHandlerBase.java rename to org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/NamedCommentedModelElementHandlerBase.java index c334c45595b51b8d4fd0b3fb820fc2580ed2477b..34cbca88b914f0a951851bdd889ec659c96ed367 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/NamedCommentedModelElementHandlerBase.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/base/NamedCommentedModelElementHandlerBase.java @@ -15,10 +15,10 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.kernel.base; +package org.fortiss.tooling.kernel.ui.base; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; import org.fortiss.tooling.kernel.model.INamedCommentedElement; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; /** * {@link IModelElementHandler} base implementation for diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/databinding/EObjectObservableValue.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/databinding/EObjectObservableValue.java similarity index 97% rename from org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/databinding/EObjectObservableValue.java rename to org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/databinding/EObjectObservableValue.java index b1a2c6c2b749da4f2f9809730bb332dcc5ec2c09..026942f430d469ddb54a0823f6786224f95615e7 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/databinding/EObjectObservableValue.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/databinding/EObjectObservableValue.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.kernel.databinding; +package org.fortiss.tooling.kernel.ui.databinding; import org.eclipse.core.databinding.observable.Diffs; import org.eclipse.core.databinding.observable.Realm; @@ -35,12 +35,11 @@ import org.fortiss.tooling.kernel.services.ICommandStackService; /** * Implementation of {@link IObservableValue} for {@link EObject}s. * - * @author hummelb + * @author hummel * @author $Author$ * @version $Rev$ * @ConQAT.Rating RED Hash: 15CFC8E0F8C76EB39F1E306637EC6436 */ -// TODO (FH): move UI parts, e.g. Display public class EObjectObservableValue extends AbstractObservableValue { /** The wrapped object. */ diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/databinding/Observables.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/databinding/Observables.java similarity index 97% rename from org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/databinding/Observables.java rename to org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/databinding/Observables.java index 326090d11700b151ff3ac53084e32bfa8bb55c5c..80c2da76bd4bad9d5032e323c08e95d442ff543a 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/databinding/Observables.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/databinding/Observables.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.kernel.databinding; +package org.fortiss.tooling.kernel.ui.databinding; import org.conqat.lib.commons.assertion.CCSMPre; import org.eclipse.core.databinding.observable.Realm; @@ -26,7 +26,7 @@ import org.eclipse.emf.ecore.EStructuralFeature; /** * Observerables for EObject models. * - * @author hummelb + * @author hummel * @author $Author$ * @version $Rev$ * @ConQAT.Rating RED Hash: D2469271EB80E5AA630EB34902E89A52 diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/interfaces/IModelElementHandler.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/interfaces/IModelElementHandler.java similarity index 98% rename from org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/interfaces/IModelElementHandler.java rename to org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/interfaces/IModelElementHandler.java index d68376758636389d2cf4c41d4e60a8868392e8ec..d962ffb4128bae19d4dd5c715479d66e6182fe24 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/interfaces/IModelElementHandler.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/interfaces/IModelElementHandler.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.kernel.interfaces; +package org.fortiss.tooling.kernel.ui.interfaces; import java.util.List; diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/EditorService.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/EditorService.java index b72dc9b69c93069a8b25f21dd509fe33b2b9093f..d787d9bcddc02df615d670791d75636aa5d97036 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/EditorService.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/EditorService.java @@ -21,7 +21,6 @@ import java.util.Collections; import java.util.Comparator; import java.util.List; -import org.conqat.ide.commons.ui.logging.LoggingUtils; import org.conqat.lib.commons.collections.CollectionUtils; import org.eclipse.emf.ecore.EObject; import org.eclipse.ui.PartInitException; @@ -32,6 +31,7 @@ import org.fortiss.tooling.kernel.ui.interfaces.IEditorBinding; import org.fortiss.tooling.kernel.ui.internal.editor.BindingEditor; import org.fortiss.tooling.kernel.ui.internal.editor.ModelElementEditorInput; import org.fortiss.tooling.kernel.ui.services.IEditorService; +import org.fortiss.tooling.kernel.util.LoggingUtils; /** * This class implements the {@link IEditorService} interface. @@ -41,7 +41,6 @@ import org.fortiss.tooling.kernel.ui.services.IEditorService; * @version $Rev$ * @ConQAT.Rating RED Hash: 251E6B64F0C35EAE01484E4CFED5EBD5 */ -// TODO (FH): move to UI public class EditorService extends EObjectAwareServiceBase<IEditorBinding<EObject>> implements IEditorService { @@ -122,4 +121,19 @@ public class EditorService extends return eb1.getPriority() - eb0.getPriority(); } } + + /** {@inheritDoc} */ + @Override + public void closeEditors(EObject rootElement) { + // TODO (FH): implement + + // for (final IEditorPart editor : editors) { + // editor.getSite().getShell().getDisplay().asyncExec(new Runnable() { + // @Override + // public void run() { + // editor.getSite().getPage().closeEditor(editor, false); + // } + // }); + // } + } } diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ModelElementService.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ModelElementService.java similarity index 95% rename from org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ModelElementService.java rename to org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ModelElementService.java index 5fb4a374e5b9428170ec6ffa149ed9a4ec7f3721..7567176de57827f6f5aa7bb17a400c517f97af25 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ModelElementService.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ModelElementService.java @@ -15,7 +15,7 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.kernel.internal; +package org.fortiss.tooling.kernel.ui.internal; import java.util.HashMap; import java.util.Map; @@ -26,8 +26,8 @@ import org.conqat.lib.commons.reflect.ReflectionUtils; import org.eclipse.core.runtime.IConfigurationElement; import org.eclipse.emf.ecore.EObject; import org.fortiss.tooling.kernel.ToolingKernelActivator; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; -import org.fortiss.tooling.kernel.services.IModelElementService; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; import org.osgi.framework.Bundle; /** diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/editor/BindingEditor.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/editor/BindingEditor.java index 87d5e011c639410aa472de0666355db61c01d7ad..7a73db432a7940b1f90644f490a9166b2d66a26e 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/editor/BindingEditor.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/editor/BindingEditor.java @@ -36,9 +36,9 @@ import org.eclipse.ui.views.properties.IPropertySheetPage; import org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor; import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; import org.fortiss.tooling.kernel.ToolingKernelActivator; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; import org.fortiss.tooling.kernel.ui.interfaces.IBindingEditorPageChangeListener; import org.fortiss.tooling.kernel.ui.interfaces.IEditorBinding; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; import org.fortiss.tooling.kernel.ui.services.IEditorService; import org.fortiss.tooling.kernel.ui.services.IPropertiesService; diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/editor/ModelElementEditorInput.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/editor/ModelElementEditorInput.java index 5d6a893dc557b1c0af428e2a6476c6083f64e7e7..81c8f8846c97604feb628319d322156fcbf5a828 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/editor/ModelElementEditorInput.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/editor/ModelElementEditorInput.java @@ -21,8 +21,8 @@ import org.eclipse.emf.ecore.EObject; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.ui.IEditorInput; import org.eclipse.ui.IPersistableElement; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; -import org.fortiss.tooling.kernel.services.IModelElementService; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; /** * {@link IEditorInput} used when opening a {@link BindingEditor}. diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/properties/IdLabeledPropertySection.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/properties/IdLabeledPropertySection.java index 3debc89e48614ba4463a96262bfe2d0ce2494be8..a077c79e465aeaac1f4085d1d29c90514236badf 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/properties/IdLabeledPropertySection.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/properties/IdLabeledPropertySection.java @@ -23,10 +23,10 @@ import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Text; import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; -import org.fortiss.tooling.kernel.databinding.Observables; import org.fortiss.tooling.kernel.model.FortissToolingKernelPackage; import org.fortiss.tooling.kernel.model.IIdLabeled; import org.fortiss.tooling.kernel.ui.base.PropertySectionBase; +import org.fortiss.tooling.kernel.ui.databinding.Observables; /** * Property section for {@link IIdLabeled} objects. diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/properties/NamedCommentedPropertySection.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/properties/NamedCommentedPropertySection.java index ceaa595473c18581be887da635ac0ceda6701d41..9f168198b9c89f8a3dee1b936bd3fd765cb6e2cc 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/properties/NamedCommentedPropertySection.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/properties/NamedCommentedPropertySection.java @@ -23,10 +23,10 @@ import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Text; import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; -import org.fortiss.tooling.kernel.databinding.Observables; import org.fortiss.tooling.kernel.model.FortissToolingKernelPackage; import org.fortiss.tooling.kernel.model.INamedCommentedElement; import org.fortiss.tooling.kernel.ui.base.PropertySectionBase; +import org.fortiss.tooling.kernel.ui.databinding.Observables; /** * Property section for {@link INamedCommentedElement} objects. diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/LibraryView.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/LibraryView.java index 79c0118b51ef2a38a95adf86591ffb30efc71a64..a69bb235f7e0d47fa7e450a15638b4272b07ed8d 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/LibraryView.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/LibraryView.java @@ -39,13 +39,13 @@ import org.eclipse.ui.IWorkbenchPart; import org.eclipse.ui.dialogs.FilteredTree; import org.eclipse.ui.dialogs.PatternFilter; import org.eclipse.ui.part.ViewPart; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; -import org.fortiss.tooling.kernel.services.IModelElementService; import org.fortiss.tooling.kernel.services.IPrototypeService; import org.fortiss.tooling.kernel.services.IPrototypeService.Prototype; import org.fortiss.tooling.kernel.ui.base.EditorBase; import org.fortiss.tooling.kernel.ui.interfaces.IBindingEditorPageChangeListener; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; import org.fortiss.tooling.kernel.ui.internal.editor.BindingEditor; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; /** * {@link ViewPart} for the model element library view. diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NavigatorTreeContentProvider.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NavigatorTreeContentProvider.java index dcde4838acd89ed5caa14fe1a6d76331340d97d0..de93fb02946f46f0935bf31098ad5de1e625dd62 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NavigatorTreeContentProvider.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NavigatorTreeContentProvider.java @@ -23,10 +23,10 @@ import java.util.List; import org.eclipse.emf.ecore.EObject; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.jface.viewers.Viewer; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; import org.fortiss.tooling.kernel.interfaces.ITopLevelElementContext; -import org.fortiss.tooling.kernel.services.IModelElementService; import org.fortiss.tooling.kernel.services.IPersistencyService; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; /** * Content provider for the model navigator tree viewer. diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NavigatorTreeLabelProvider.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NavigatorTreeLabelProvider.java index c1d986aea082c176a92c8819d804a5d3164666b2..5ebab775944cbb26d95cb80aa40375a6519443e2 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NavigatorTreeLabelProvider.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NavigatorTreeLabelProvider.java @@ -21,8 +21,8 @@ import org.eclipse.emf.ecore.EObject; import org.eclipse.jface.viewers.BaseLabelProvider; import org.eclipse.jface.viewers.ILabelProvider; import org.eclipse.swt.graphics.Image; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; -import org.fortiss.tooling.kernel.services.IModelElementService; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; /** * {@link ILabelProvider} for the model navigator tree. diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NewMenu.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NewMenu.java index 6abfcce699f26fe649b2d537bb5a3caf70035c3a..0cae44aca1fa61f688e781fc207d6c585a3a5832 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NewMenu.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/NewMenu.java @@ -25,10 +25,10 @@ import org.eclipse.ui.actions.CompoundContributionItem; import org.fortiss.tooling.kernel.interfaces.IPrototypeProvider; import org.fortiss.tooling.kernel.services.ICommandStackService; import org.fortiss.tooling.kernel.services.ICompositorService; -import org.fortiss.tooling.kernel.services.IModelElementService; import org.fortiss.tooling.kernel.services.IPrototypeService; import org.fortiss.tooling.kernel.services.IPrototypeService.Prototype; import org.fortiss.tooling.kernel.ui.services.IEditorService; +import org.fortiss.tooling.kernel.ui.services.IModelElementService; import org.fortiss.tooling.kernel.ui.services.INavigatorService; import org.fortiss.tooling.kernel.ui.util.EObjectSelectionUtils; diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/services/IEditorService.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/services/IEditorService.java index cf68e7c520103b01ba41a80ff99e36463093671f..968aec710f22918f0251eb55f0949fe53bcacf01 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/services/IEditorService.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/services/IEditorService.java @@ -39,6 +39,9 @@ public interface IEditorService { /** Opens an editor for the given element. */ void openInEditor(EObject element); + /** Closes editors which depend on the given element or a sub-element. */ + void closeEditors(EObject rootElement); + /** Returns registered editor bindings for the given {@link EObject}. */ List<IEditorBinding<EObject>> getBindings(EObject element); } diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/services/IModelElementService.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/services/IModelElementService.java similarity index 90% rename from org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/services/IModelElementService.java rename to org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/services/IModelElementService.java index 08810886fdbb1acbf200dfbdef7ac4a1032d4ced..d4a06451ffb572ad9379cd18e1abb635126f74a2 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/services/IModelElementService.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/services/IModelElementService.java @@ -15,11 +15,11 @@ $Id$ | See the License for the specific language governing permissions and | | limitations under the License. | +--------------------------------------------------------------------------*/ -package org.fortiss.tooling.kernel.services; +package org.fortiss.tooling.kernel.ui.services; import org.eclipse.emf.ecore.EObject; -import org.fortiss.tooling.kernel.interfaces.IModelElementHandler; -import org.fortiss.tooling.kernel.internal.ModelElementService; +import org.fortiss.tooling.kernel.ui.interfaces.IModelElementHandler; +import org.fortiss.tooling.kernel.ui.internal.ModelElementService; /** * The model context service provides information about registered model diff --git a/org.fortiss.tooling.kernel/trunk/META-INF/MANIFEST.MF b/org.fortiss.tooling.kernel/trunk/META-INF/MANIFEST.MF index a360d8e6ed27aef0b466d1b5765acbee7bc1204b..617d86ba62c17c4e23ac5a0cd4cafe05f5611f7c 100644 --- a/org.fortiss.tooling.kernel/trunk/META-INF/MANIFEST.MF +++ b/org.fortiss.tooling.kernel/trunk/META-INF/MANIFEST.MF @@ -7,21 +7,14 @@ Bundle-Activator: org.fortiss.tooling.kernel.ToolingKernelActivator Bundle-Vendor: fortiss Require-Bundle: org.eclipse.core.runtime;visibility:=reexport, org.eclipse.core.databinding;visibility:=reexport, - org.eclipse.jface.databinding;bundle-version="1.4.0";visibility:=reexport, - org.eclipse.ui;visibility:=reexport, - org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.100";visibility:=reexport, org.eclipse.emf.ecore;bundle-version="2.6.1";visibility:=reexport, - org.eclipse.gef;visibility:=reexport, org.conqat.ide.commons;bundle-version="2.7.0";visibility:=reexport, - org.conqat.ide.commons.ui;bundle-version="2.7.0";visibility:=reexport, - org.conqat.ide.commons.gef;bundle-version="2.7.0";visibility:=reexport, org.eclipse.emf.ecore.xmi;bundle-version="2.5.0", org.eclipse.emf.transaction;bundle-version="1.4.0" Bundle-RequiredExecutionEnvironment: JavaSE-1.6 Bundle-ActivationPolicy: lazy Export-Package: org.fortiss.tooling.kernel;uses:="org.eclipse.core.runtime,org.osgi.framework", org.fortiss.tooling.kernel.base;uses:="org.eclipse.emf.ecore,org.eclipse.swt.graphics,org.fortiss.tooling.kernel.interfaces", - org.fortiss.tooling.kernel.databinding;uses:="org.eclipse.core.databinding.observable,org.eclipse.emf.ecore,org.eclipse.core.databinding.observable.value", org.fortiss.tooling.kernel.interfaces; uses:="org.eclipse.core.runtime, org.eclipse.emf.ecore, diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/EObjectAware2ServiceBase.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/EObjectAware2ServiceBase.java index 7217c43d99014cd7890c292c67cb45c316b35949..759bc7ceb66607715518803a8fd5c9aaff1517e0 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/EObjectAware2ServiceBase.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/EObjectAware2ServiceBase.java @@ -22,14 +22,14 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import org.conqat.ide.commons.ui.extension.ExtensionPointUtils; -import org.conqat.ide.commons.ui.logging.LoggingUtils; import org.conqat.lib.commons.reflect.ReflectionUtils; import org.eclipse.core.runtime.IConfigurationElement; import org.eclipse.core.runtime.IStatus; import org.eclipse.emf.ecore.EObject; import org.fortiss.tooling.kernel.ToolingKernelActivator; import org.fortiss.tooling.kernel.interfaces.IEObjectAware2; +import org.fortiss.tooling.kernel.util.ExtensionPointUtils; +import org.fortiss.tooling.kernel.util.LoggingUtils; import org.osgi.framework.Bundle; /** diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/EObjectAwareServiceBase.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/EObjectAwareServiceBase.java index 45877fd3c1c9edd6a80e0e9e0e0a96becae08007..b0bad78a3f8a80b0dfca42100de483fc250723f8 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/EObjectAwareServiceBase.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/base/EObjectAwareServiceBase.java @@ -22,14 +22,14 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; -import org.conqat.ide.commons.ui.extension.ExtensionPointUtils; -import org.conqat.ide.commons.ui.logging.LoggingUtils; import org.conqat.lib.commons.reflect.ReflectionUtils; import org.eclipse.core.runtime.IConfigurationElement; import org.eclipse.core.runtime.IStatus; import org.eclipse.emf.ecore.EObject; import org.fortiss.tooling.kernel.ToolingKernelActivator; import org.fortiss.tooling.kernel.interfaces.IEObjectAware; +import org.fortiss.tooling.kernel.util.ExtensionPointUtils; +import org.fortiss.tooling.kernel.util.LoggingUtils; import org.osgi.framework.Bundle; /** diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/CommandStackService.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/CommandStackService.java index 08967ffaa01df0812c32e3ce7ddd6684f5a6856f..ee60e0103d1fd5be43657154dee37a3171336d87 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/CommandStackService.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/CommandStackService.java @@ -17,13 +17,13 @@ $Id$ +--------------------------------------------------------------------------*/ package org.fortiss.tooling.kernel.internal; -import org.conqat.ide.commons.ui.logging.LoggingUtils; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.emf.ecore.EObject; import org.fortiss.tooling.kernel.ToolingKernelActivator; import org.fortiss.tooling.kernel.interfaces.ITopLevelElementContext; import org.fortiss.tooling.kernel.services.ICommandStackService; import org.fortiss.tooling.kernel.services.IPersistencyService; +import org.fortiss.tooling.kernel.util.LoggingUtils; /** * This class implements the {@link ICommandStackService} interface. This class diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/PrototypeService.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/PrototypeService.java index 9b2aa11f5006f0d06a6688a62b45189dab3faa6a..d4ccf6db6c9b725f3c008a53abbb7028f8d8ddac 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/PrototypeService.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/PrototypeService.java @@ -21,8 +21,6 @@ import java.util.ArrayList; import java.util.LinkedList; import java.util.List; -import org.conqat.ide.commons.ui.extension.ExtensionPointUtils; -import org.conqat.ide.commons.ui.logging.LoggingUtils; import org.conqat.lib.commons.collections.CollectionUtils; import org.conqat.lib.commons.collections.UnmodifiableList; import org.eclipse.core.runtime.IConfigurationElement; @@ -31,6 +29,8 @@ import org.fortiss.tooling.kernel.ToolingKernelActivator; import org.fortiss.tooling.kernel.interfaces.IPrototypeProvider; import org.fortiss.tooling.kernel.services.ICompositorService; import org.fortiss.tooling.kernel.services.IPrototypeService; +import org.fortiss.tooling.kernel.util.ExtensionPointUtils; +import org.fortiss.tooling.kernel.util.LoggingUtils; import org.osgi.framework.Bundle; /** diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/EMFTransactionalCommand.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/EMFTransactionalCommand.java index 9e2266c81e5a3052cd434ab599acb788ac9bc5a6..0fbb72ac61f51d18f7f992bd0f463427e0465965 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/EMFTransactionalCommand.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/EMFTransactionalCommand.java @@ -19,7 +19,6 @@ package org.fortiss.tooling.kernel.internal.storage.eclipse; import java.util.Collection; -import org.conqat.ide.commons.ui.logging.LoggingUtils; import org.eclipse.core.runtime.IStatus; import org.eclipse.emf.common.command.Command; import org.eclipse.emf.common.command.CompoundCommand; @@ -29,6 +28,7 @@ import org.eclipse.emf.transaction.Transaction; import org.eclipse.emf.transaction.TransactionalEditingDomain; import org.eclipse.emf.transaction.impl.InternalTransactionalEditingDomain; import org.fortiss.tooling.kernel.ToolingKernelActivator; +import org.fortiss.tooling.kernel.util.LoggingUtils; /** * This class wraps another EMF command and makes sure that all execute methods diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/EclipseResourceStorageProvider.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/EclipseResourceStorageProvider.java index f17422b107d9007615d899a3f8f2930cef01be80..11bbd93d55c5a0d183c8347ea8ebd55074f542eb 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/EclipseResourceStorageProvider.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/EclipseResourceStorageProvider.java @@ -24,8 +24,6 @@ import java.util.IdentityHashMap; import java.util.List; import java.util.Map; -import org.conqat.ide.commons.ui.dialog.MessageUtils; -import org.conqat.ide.commons.ui.logging.LoggingUtils; import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; @@ -36,11 +34,11 @@ import org.eclipse.core.resources.IResourceDeltaVisitor; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.CoreException; import org.eclipse.emf.ecore.EObject; -import org.eclipse.swt.widgets.Display; import org.fortiss.tooling.kernel.ToolingKernelActivator; import org.fortiss.tooling.kernel.interfaces.IStorageProvider; import org.fortiss.tooling.kernel.interfaces.ITopLevelElementContext; import org.fortiss.tooling.kernel.services.IPersistencyService; +import org.fortiss.tooling.kernel.util.LoggingUtils; /** * This class implements the persistency service behavior for Eclipse file @@ -138,39 +136,41 @@ public class EclipseResourceStorageProvider implements IResourceChangeListener, private void handleChange(final IFile file) { final ModelContext context = loadedContexts.get(file); if (!context.getLastChangeWasIntended()) { - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { - final boolean reload = MessageUtils.askQuestion( - "Reload changed file?", - "The file " - + file.getName() - + " changed on disk. " - + "Load these changes? " - + "Note that loading the changes will discard all editors, " - + "so all unsaved changes and the undo history will be lost. " - + "However if you do not reload now, " - + "the contents of the file will be overwritten " - + "the next time you perform a save."); - - if (reload) { - unloadContext(file); - try { - loadContext(file).setLastChangeWasIntended(); - - // perform touch to make sure the viewer does a - // refresh - file.touch(null); - } catch (final Exception e) { - LoggingUtils.error( - ToolingKernelActivator.getDefault(), - "Had an error during reloading the file!", - e); - } - } + // TODO (FH): find a solution for this ui code + // Display.getDefault().asyncExec(new Runnable() { + // @Override + // public void run() { + // final boolean reload = true; + // // MessageUtils.askQuestion( + // // "Reload changed file?", + // // "The file " + // // + file.getName() + // // + " changed on disk. " + // // + "Load these changes? " + // // + + // // "Note that loading the changes will discard all editors, " + // // + + // // "so all unsaved changes and the undo history will be lost. " + // // + "However if you do not reload now, " + // // + "the contents of the file will be overwritten " + // // + "the next time you perform a save."); + // + // if (reload) { + // } + // + // } + // }); + unloadContext(file); + try { + loadContext(file).setLastChangeWasIntended(); - } - }); + // perform touch to make sure the viewer does a + // refresh + file.touch(null); + } catch (final Exception e) { + LoggingUtils.error(ToolingKernelActivator.getDefault(), + "Had an error during reloading the file!", e); + } } } diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/ModelContext.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/ModelContext.java index 580295108a2c50728d4c1c48ea638b5557fc5b8e..fecedefb8f0f5260d7709bf7ccef7b1318f1510e 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/ModelContext.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/storage/eclipse/ModelContext.java @@ -21,15 +21,12 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.lang.reflect.Method; -import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Set; -import org.conqat.ide.commons.ui.logging.LoggingUtils; -import org.conqat.lib.commons.collections.IdentityHashSet; import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.WorkspaceJob; import org.eclipse.core.runtime.CoreException; @@ -46,12 +43,12 @@ import org.eclipse.emf.ecore.resource.Resource; import org.eclipse.emf.ecore.resource.ResourceSet; import org.eclipse.emf.transaction.TransactionalCommandStack; import org.eclipse.emf.transaction.TransactionalEditingDomain; -import org.eclipse.ui.IEditorPart; import org.fortiss.tooling.kernel.ToolingKernelActivator; import org.fortiss.tooling.kernel.interfaces.ITopLevelElementContext; import org.fortiss.tooling.kernel.model.IIdLabeled; -import org.fortiss.tooling.kernel.services.IModelElementService; +import org.fortiss.tooling.kernel.model.INamedElement; import org.fortiss.tooling.kernel.util.EMFResourceUtils; +import org.fortiss.tooling.kernel.util.LoggingUtils; /** * The model context provides additional commands and hooks for a model. @@ -79,12 +76,6 @@ class ModelContext implements ITopLevelElementContext { /** The transactional command stack. */ private final AutoUndoCommandStack transactionalCommandStack; - /** - * Set of editors which depend on this context. These editors are closed - * when the underlying file is deleted or changed. - */ - private final Set<IEditorPart> dependentEditors = new IdentityHashSet<IEditorPart>(); - /** Flag for remembering whether the last change of the file was intended. */ private boolean lastChangeWasIntended = false; @@ -204,35 +195,11 @@ class ModelContext implements ITopLevelElementContext { } } - /** - * Add a dependent editor part which will be closed when this context - * becomes invalid. - */ - /* package */void addDependentEditor(IEditorPart editor) { - dependentEditors.add(editor); - } - - /** Removes an editor added via {@link #addDependentEditor(IEditorPart)}. */ - /* package */void removeDependentEditor(IEditorPart editor) { - dependentEditors.remove(editor); - } - /** Destroys this context and closes all dependent editors. */ public void destroy() { // discard changes ((BasicCommandStack) editingDomain.getCommandStack()).saveIsDone(); - List<IEditorPart> editors = new ArrayList<IEditorPart>(dependentEditors); - dependentEditors.clear(); - - for (final IEditorPart editor : editors) { - editor.getSite().getShell().getDisplay().asyncExec(new Runnable() { - @Override - public void run() { - editor.getSite().getPage().closeEditor(editor, false); - } - }); - } } /** Returns the file associated with this model. */ @@ -377,10 +344,11 @@ class ModelContext implements ITopLevelElementContext { children = result.eContents(); } for (final EObject e : children) { - if (namePart.equals(IModelElementService.INSTANCE - .getModelElementHandler(e).getName(e))) { - result = e; - continue OUTER; + if (e instanceof INamedElement) { + if (namePart.equals(((INamedElement) e).getName())) { + result = e; + continue OUTER; + } } } return null; diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/util/ExtensionPointUtils.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/util/ExtensionPointUtils.java new file mode 100644 index 0000000000000000000000000000000000000000..8f3c2c633576d9ef6e33b6416d119a57ba3c9928 --- /dev/null +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/util/ExtensionPointUtils.java @@ -0,0 +1,88 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2005-2010 Technische Universitaet Muenchen | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.tooling.kernel.util; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.eclipse.core.runtime.IConfigurationElement; +import org.eclipse.core.runtime.IExtension; +import org.eclipse.core.runtime.IExtensionPoint; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Platform; +import org.fortiss.tooling.kernel.ToolingKernelActivator; +import org.osgi.framework.Bundle; + +/** + * Utility methods for the extension points of plug-ins. + * + * Note: This class originates form the org.conqat.ide.commons.ui + * implementation. It re-packaged with the kernel to avoid any dependency to + * eclipse.ui packages. See http://www.conqat.org for the original version. + * + * @author hummelb + * @author $Author$ + * @version $Rev$ + * @levd.rating GREEN Hash: 3A6C32DF7541A73EFF1BBA7204FFB23D + */ +public class ExtensionPointUtils { + + /** Load the given class and throws an exception in case of problems. */ + public static Class<?> loadClass(String className, Bundle bundle) + throws ClassNotFoundException { + if (className == null) { + throw new ClassNotFoundException("Class name not configured."); + } + return bundle.loadClass(className); + } + + /** Returns the bundle an extension is declared in. */ + public static Bundle getBundle(IConfigurationElement configElement) { + Bundle bundle = Platform.getBundle(configElement + .getDeclaringExtension().getNamespaceIdentifier()); + return bundle; + } + + /** + * Returns the {@link IConfigurationElement}s for a given extension point + * and element name. + */ + @SuppressWarnings("unchecked") + public static List<IConfigurationElement> getConfigurationElements( + String extensionPointName, String configurationElementName) { + IExtensionPoint extensionPoint = Platform.getExtensionRegistry() + .getExtensionPoint(extensionPointName); + if (extensionPoint == null) { + LoggingUtils.log(ToolingKernelActivator.getDefault(), + "Could not find extension point " + extensionPointName, + IStatus.ERROR); + return Collections.EMPTY_LIST; + } + + List<IConfigurationElement> configurationElements = new ArrayList<IConfigurationElement>(); + for (IExtension e : extensionPoint.getExtensions()) { + for (IConfigurationElement ce : e.getConfigurationElements()) { + if (ce.getName().equals(configurationElementName)) { + configurationElements.add(ce); + } + } + } + return configurationElements; + } +} \ No newline at end of file diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/util/LoggingUtils.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/util/LoggingUtils.java new file mode 100644 index 0000000000000000000000000000000000000000..72c3b23b5666ecb13c99f34ac8612c555bc11a1e --- /dev/null +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/util/LoggingUtils.java @@ -0,0 +1,96 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2005-2010 Technische Universitaet Muenchen | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.tooling.kernel.util; + +import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Plugin; +import org.eclipse.core.runtime.Status; + +/** + * Utility code for performing logging. + * + * Note: This class originates form the org.conqat.ide.commons.ui + * implementation. It re-packaged with the kernel to avoid any dependency to + * eclipse.ui packages. See http://www.conqat.org for the original version. + * + * @author hummelb + * @author schwitze + * @author $Author$ + * @version $Rev$ + * @levd.rating GREEN Hash: AA5D7661DFC5CC4BF4D59C1A84E5D471 + */ +public class LoggingUtils { + + /** + * Logs a message that occurred in the context of the given plug-in with the + * given severity. + * + * @see IStatus + * + * @param plugin + * The plug-in that logs the message in its context. + * @param message + * The message text to log. + * @param severity + * The severity of the log message. See {@link IStatus} for valid + * constants. + * + */ + public static void log(Plugin plugin, String message, int severity) { + log(plugin, message, severity, null); + } + + /** + * Logs a message that occurred in the context of the given plug-in with the + * given severity and a given {@link Throwable} that originally caused this + * log message. + * + * @see IStatus + * + * @param plugin + * The plug-in that logs the message in its context. + * @param message + * The message text to log. + * @param severity + * The severity of the log message. See {@link IStatus} for valid + * constants. + * @param cause + * The {@link Throwable} that originally caused this log message. + */ + public static void log(Plugin plugin, String message, int severity, + Throwable cause) { + String pluginId = plugin.getBundle().getSymbolicName(); + IStatus status = new Status(severity, pluginId, message, cause); + plugin.getLog().log(status); + } + + /** + * Logs an exception that occurred in the context of the given plug-in with + * the severity {@link IStatus#ERROR}. + * + * @param plugin + * The plug-in that logs the message in its context. + * @param message + * The message text to log. + * @param cause + * The {@link Throwable} that originally caused this log message. + */ + public static void error(Plugin plugin, String message, Throwable cause) { + log(plugin, message, IStatus.ERROR, cause); + } +}