diff options
author | donald.g.dunne | 2020-07-07 03:55:50 +0000 |
---|---|---|
committer | Donald Dunne | 2020-07-07 20:18:53 +0000 |
commit | bc8110b5d2eb9a5049a7b07bf498226754d4f80d (patch) | |
tree | 8e8400956f11e48f54986d9114969b8f9b8a8a4d | |
parent | 31666b87d9f5962ae7f9b06cc1ce853d8ed3e5cd (diff) | |
download | org.eclipse.osee-bc8110b5d2eb9a5049a7b07bf498226754d4f80d.tar.gz org.eclipse.osee-bc8110b5d2eb9a5049a7b07bf498226754d4f80d.tar.xz org.eclipse.osee-bc8110b5d2eb9a5049a7b07bf498226754d4f80d.zip |
bug[TW15414]: Refresh signature widgets in place
Change-Id: I42de31689b4c9c9c311d18ff9ce3bf1d26402969
7 files changed, 26 insertions, 9 deletions
diff --git a/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/internal/AtsTaskSetDefinitionProviderService.java b/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/internal/AtsTaskSetDefinitionProviderService.java index 1a941a6ebe0..d280b3ef8db 100644 --- a/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/internal/AtsTaskSetDefinitionProviderService.java +++ b/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/internal/AtsTaskSetDefinitionProviderService.java @@ -40,7 +40,7 @@ public class AtsTaskSetDefinitionProviderService implements IAtsTaskSetDefinitio AtsTaskSetDefinitionProviderService.taskSetDefProviders.add(taskSetDefProvider); } - public void ensureLoaded() { + public synchronized void ensureLoaded() { // Add default if (!taskSetDefProviderProcessed.contains(atsTaskSetDefProv)) { atsTaskSetDefProv = new AtsTaskSetDefinitionProvider(); diff --git a/plugins/org.eclipse.osee.ats.ide/META-INF/MANIFEST.MF b/plugins/org.eclipse.osee.ats.ide/META-INF/MANIFEST.MF index 572cb5c6b52..6740d35d022 100644 --- a/plugins/org.eclipse.osee.ats.ide/META-INF/MANIFEST.MF +++ b/plugins/org.eclipse.osee.ats.ide/META-INF/MANIFEST.MF @@ -35,6 +35,7 @@ Export-Package: org.eclipse.osee.ats.ide, org.eclipse.osee.ats.ide.config.version, org.eclipse.osee.ats.ide.config.wizard, org.eclipse.osee.ats.ide.editor, + org.eclipse.osee.ats.ide.editor.event, org.eclipse.osee.ats.ide.editor.renderer, org.eclipse.osee.ats.ide.editor.tab.workflow, org.eclipse.osee.ats.ide.editor.tab.workflow.header, diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/WorkflowEditor.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/WorkflowEditor.java index 02a560d4d17..d1070dbe7e8 100644 --- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/WorkflowEditor.java +++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/WorkflowEditor.java @@ -75,7 +75,7 @@ import org.eclipse.osee.framework.core.enums.PresentationType; import org.eclipse.osee.framework.core.util.OsgiUtil; import org.eclipse.osee.framework.core.util.Result; import org.eclipse.osee.framework.jdk.core.type.DoubleKeyHashMap; -import org.eclipse.osee.framework.jdk.core.type.HashCollection; +import org.eclipse.osee.framework.jdk.core.type.HashCollectionSet; import org.eclipse.osee.framework.jdk.core.type.OseeArgumentException; import org.eclipse.osee.framework.jdk.core.type.OseeCoreException; import org.eclipse.osee.framework.jdk.core.util.Lib; @@ -141,10 +141,10 @@ public class WorkflowEditor extends AbstractArtifactEditor implements IDirtyRepo private AttributesComposite attributesComposite; private final List<IWfeEditorListener> editorListeners = new ArrayList<>(); WfeOutlinePage outlinePage; - private final HashCollection<AttributeTypeToken, IWfeEventHandle> attrHandlers = new HashCollection<>(); - private final HashCollection<RelationTypeToken, IWfeEventHandle> relHandlers = new HashCollection<>(); + private final HashCollectionSet<AttributeTypeToken, IWfeEventHandle> attrHandlers = new HashCollectionSet<>(); + private final HashCollectionSet<RelationTypeToken, IWfeEventHandle> relHandlers = new HashCollectionSet<>(); // This MUST be string guid until types are converted to id all at once and events use id - private final HashCollection<String, IWfeEventHandle> artHandlers = new HashCollection<>(); + private final HashCollectionSet<String, IWfeEventHandle> artHandlers = new HashCollectionSet<>(); /** * This MUST be string guid until types are converted to id all at once and events use id. Used when want to listen * for rel events for a artifact other than the editor workItem. @@ -908,7 +908,7 @@ public class WorkflowEditor extends AbstractArtifactEditor implements IDirtyRepo if (eRel.getArtA().getGuid().equals(getWorkItem().getGuid()) || eRel.getArtB().getGuid().equals( getWorkItem().getGuid())) { - List<IWfeEventHandle> handlers = relHandlers.getValues(tokenService.getRelationType(eRel.getRelTypeGuid())); + Set<IWfeEventHandle> handlers = relHandlers.getValues(tokenService.getRelationType(eRel.getRelTypeGuid())); if (handlers != null) { for (IWfeEventHandle handler : handlers) { Displays.ensureInDisplayThread(new Runnable() { @@ -922,7 +922,7 @@ public class WorkflowEditor extends AbstractArtifactEditor implements IDirtyRepo } handledArts.clear(); if (!handledArts.contains(getWorkItem().getGuid())) { - List<IWfeEventHandle> handlers2 = artHandlers.getValues(getWorkItem().getStoreObject().getGuid()); + Set<IWfeEventHandle> handlers2 = artHandlers.getValues(getWorkItem().getStoreObject().getGuid()); if (handlers2 != null) { for (IWfeEventHandle handler : handlers2) { Displays.ensureInDisplayThread(new Runnable() { @@ -997,7 +997,7 @@ public class WorkflowEditor extends AbstractArtifactEditor implements IDirtyRepo } public void handleEvent(AttributeTypeToken attrType) { - List<IWfeEventHandle> handlers = attrHandlers.getValues(attrType); + Set<IWfeEventHandle> handlers = attrHandlers.getValues(attrType); if (handlers != null && !handlers.isEmpty()) { for (IWfeEventHandle handler : handlers) { Displays.ensureInDisplayThread(new Runnable() { diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/event/IWfeEventHandle.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/event/IWfeEventHandle.java index 742f1cb4cb0..2b3c7d7677b 100644 --- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/event/IWfeEventHandle.java +++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/event/IWfeEventHandle.java @@ -14,6 +14,7 @@ package org.eclipse.osee.ats.ide.editor.event; import org.eclipse.osee.ats.api.IAtsWorkItem; +import org.eclipse.osee.ats.ide.editor.WorkflowEditor; import org.eclipse.osee.framework.skynet.core.event.model.ArtifactEvent; /** @@ -33,4 +34,8 @@ public interface IWfeEventHandle { // do nothing } + default void setEditor(WorkflowEditor editor) { + // do nothing + } + } diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/tab/workflow/section/WfeWorkflowSection.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/tab/workflow/section/WfeWorkflowSection.java index 08e75c6a333..c02f3c8cd90 100644 --- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/tab/workflow/section/WfeWorkflowSection.java +++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/editor/tab/workflow/section/WfeWorkflowSection.java @@ -24,6 +24,7 @@ import org.eclipse.osee.ats.api.workflow.log.IAtsLogItem; import org.eclipse.osee.ats.core.workflow.WorkflowManagerCore; import org.eclipse.osee.ats.core.workflow.log.AtsLogUtility; import org.eclipse.osee.ats.ide.editor.WorkflowEditor; +import org.eclipse.osee.ats.ide.editor.event.IWfeEventHandle; import org.eclipse.osee.ats.ide.editor.tab.workflow.header.WfeHeaderComposite; import org.eclipse.osee.ats.ide.editor.tab.workflow.widget.ReviewInfoXWidget; import org.eclipse.osee.ats.ide.editor.tab.workflow.widget.StateHoursSpentXWidget; @@ -226,10 +227,14 @@ public class WfeWorkflowSection extends SectionPart { createTaskFooter(workComp, statePage); createReviewFooter(workComp, statePage); - // Set all XWidget labels to bold font for (XWidget xWidget : allXWidgets) { if (xWidget.getLabelWidget() != null) { + // Set all XWidget labels to bold font WorkflowEditor.setLabelFonts(xWidget.getLabelWidget(), FontManager.getDefaultLabelFont()); + // Set editor if applicable + if (xWidget instanceof IWfeEventHandle) { + ((IWfeEventHandle) xWidget).setEditor(editor); + } } } diff --git a/plugins/org.eclipse.osee.framework.jdk.core/src/org/eclipse/osee/framework/jdk/core/type/HashCollectionSet.java b/plugins/org.eclipse.osee.framework.jdk.core/src/org/eclipse/osee/framework/jdk/core/type/HashCollectionSet.java index 389970357d1..70a8117b52b 100644 --- a/plugins/org.eclipse.osee.framework.jdk.core/src/org/eclipse/osee/framework/jdk/core/type/HashCollectionSet.java +++ b/plugins/org.eclipse.osee.framework.jdk.core/src/org/eclipse/osee/framework/jdk/core/type/HashCollectionSet.java @@ -13,6 +13,7 @@ package org.eclipse.osee.framework.jdk.core.type; +import java.util.HashSet; import java.util.Set; import java.util.function.Supplier; @@ -37,4 +38,8 @@ public final class HashCollectionSet<K, V> extends HashCollectionGeneric<K, V, S public HashCollectionSet(Supplier<Set<V>> collectionSupplier) { this(false, 16, 0.75f, collectionSupplier); } + + public HashCollectionSet() { + this(false, 16, 0.75f, HashSet::new); + } }
\ No newline at end of file diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XButtonWithLabelDam.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XButtonWithLabelDam.java index 0af626ffb03..94c25547e52 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XButtonWithLabelDam.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XButtonWithLabelDam.java @@ -49,6 +49,7 @@ public abstract class XButtonWithLabelDam extends XButton implements IArtifactWi @Override public void run() { resultsLabelWidget.setText(getResultsText()); + resultsLabelWidget.getParent().layout(true); } }); } |