diff options
author | Mark Joy | 2013-11-20 20:10:26 +0000 |
---|---|---|
committer | Mark Joy | 2013-11-20 22:54:30 +0000 |
commit | 7762efe9d8c949cf4f569b4847daa1a11a0a5f0a (patch) | |
tree | 680646c2447ee45c9af3ecc8c0cceccfa8af01d9 /plugins/org.eclipse.osee.framework.ui.skynet | |
parent | 33e7bf2d56ce398c5b64b82b389e4e87aee75ed1 (diff) | |
download | org.eclipse.osee-7762efe9d8c949cf4f569b4847daa1a11a0a5f0a.tar.gz org.eclipse.osee-7762efe9d8c949cf4f569b4847daa1a11a0a5f0a.tar.xz org.eclipse.osee-7762efe9d8c949cf4f569b4847daa1a11a0a5f0a.zip |
bug[ats_8V73H]: Modified hyperlink references not shown in diff report
Change-Id: I5f210d3c35f7f4f3a5ee3fabf49fb3b5c12896d0
Signed-off-by: Mark Joy <mark.joy@boeing.com>
Diffstat (limited to 'plugins/org.eclipse.osee.framework.ui.skynet')
4 files changed, 23 insertions, 8 deletions
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/preferences/MsWordPreferencePage.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/preferences/MsWordPreferencePage.java index 65da2f5bb3b..827a8d6caf6 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/preferences/MsWordPreferencePage.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/preferences/MsWordPreferencePage.java @@ -30,8 +30,11 @@ import org.eclipse.ui.IWorkbenchPreferencePage; public class MsWordPreferencePage extends PreferencePage implements IWorkbenchPreferencePage { public static final String IDENTFY_IMAGE_CHANGES = "IdentifyImageChangesInWordDiff"; public static final String MUTI_EDIT_SAVE_ALL_CHANGES = "multieditSaveAllChanges"; + public static final String IGNORE_FIELD_CODE_CHANGES = "ignoreFieldCodeChanges"; + private Button identifyImageChangesInWord; private Button saveAllChanges; + private Button ignoreFieldCodes; @Override protected Control createContents(Composite parent) { @@ -45,6 +48,10 @@ public class MsWordPreferencePage extends PreferencePage implements IWorkbenchPr saveAllChanges.setText("When multi-editing, save all changed artifacts (even those with no textual changes)"); saveAllChanges.setSelection(getUserBooleanSetting(MUTI_EDIT_SAVE_ALL_CHANGES)); + ignoreFieldCodes = new Button(parent, SWT.CHECK); + ignoreFieldCodes.setText("Ignore Field Codes when performing Word diff"); + ignoreFieldCodes.setSelection(getUserBooleanSetting(IGNORE_FIELD_CODE_CHANGES)); + return parent; } @@ -77,6 +84,7 @@ public class MsWordPreferencePage extends PreferencePage implements IWorkbenchPr public boolean performOk() { setUserBooleanSetting(IDENTFY_IMAGE_CHANGES, identifyImageChangesInWord); setUserBooleanSetting(MUTI_EDIT_SAVE_ALL_CHANGES, saveAllChanges); + setUserBooleanSetting(IGNORE_FIELD_CODE_CHANGES, ignoreFieldCodes); try { UserManager.getUser().persist(getClass().getSimpleName()); } catch (OseeCoreException ex) { diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/render/compare/AbstractWordCompare.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/render/compare/AbstractWordCompare.java index 46f3c1270ea..2868d475427 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/render/compare/AbstractWordCompare.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/render/compare/AbstractWordCompare.java @@ -59,10 +59,11 @@ public abstract class AbstractWordCompare implements IComparator { boolean show = !getRenderer().getBooleanOption(IRenderer.NO_DISPLAY); boolean executeVbScript = System.getProperty("os.name").contains("Windows"); boolean skipErrors = !getRenderer().getBooleanOption(IRenderer.SKIP_ERRORS); + boolean diffFieldCodes = !UserManager.getBooleanSetting(MsWordPreferencePage.IGNORE_FIELD_CODE_CHANGES); IVbaDiffGenerator diffGenerator = WordUiUtil.createScriptGenerator(presentationType == PresentationType.MERGE, show, - presentationType == PresentationType.MERGE, executeVbScript, skipErrors); + presentationType == PresentationType.MERGE, executeVbScript, skipErrors, diffFieldCodes); return diffGenerator; } diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/util/VbaWordDiffGenerator.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/util/VbaWordDiffGenerator.java index dc8c1fee862..43ef7a2418d 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/util/VbaWordDiffGenerator.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/util/VbaWordDiffGenerator.java @@ -39,16 +39,18 @@ public class VbaWordDiffGenerator implements IVbaDiffGenerator { private static final String OSEE_WORD_DIFF_SLEEP_MS = "osee.word.diff.sleep.ms"; private final static String header_begin = - "Option Explicit\n\nDim oWord\nDim baseDoc\nDim compareDoc\nDim authorName\nDim detectFormatChanges\nDim ver1\nDim ver2\ndim wdGranularityWordLevel\nDim wdCompareTargetSelectedDiff\nDim wdCompareTargetSelectedMerge\nDim wdFormattingFromCurrent\nDim wdFormatXML\nDim wdDoNotSaveChanges\nDim mainDoc\ndim newDoc\n\nPublic Sub main()\n "; + "Option Explicit\n\nDim oWord\nDim baseDoc\nDim compareDoc\nDim authorName\nDim detectFormatChanges\nDim ver1\nDim ver2\ndim wdGranularityWordLevel\nDim wdCompareTargetSelectedDiff\nDim wdCompareTargetSelectedMerge\nDim wdFormattingFromCurrent\nDim wdFormatXML\nDim wdDoNotSaveChanges\nDim wdFieldCodeChanges\nDim mainDoc\ndim newDoc\n\nPublic Sub main()\n "; private final static String header_end = "wdCompareTargetSelectedDiff = 2\n wdGranularityWordLevel = 1\n wdDoNotSaveChanges = 0\n wdFormattingFromCurrent = 3\n wdFormatXML = 11\n\n authorName = \"OSEE Doc compare\"\n set oWord = WScript.CreateObject(\"Word.Application\")\n oWord.Visible = False\n detectFormatChanges = "; + private final static String diff_field_codes = " wdFieldCodeChanges = "; + private static final String Skip_Errors = "On error resume next\n "; private final static String comparisonCommand = - // The true/false flags define what to compare: Formats, Case, Whitespace, Tables, Headers, Footers, TextBox, Field values, Comments - " set newDoc = oWord.CompareDocuments (baseDoc, compareDoc, wdCompareTargetSelectedDiff, wdGranularityWordLevel, true, true, true, true, true, true, true, false, true, true, authorName) \n compareDoc.close \n newDoc.Activate\n set compareDoc = oWord.ActiveDocument\n\n"; + // The true/false flags define what to compare: Formats, Case, Whitespace, Tables, Headers, Footers, TextBox, Field values (wdFieldCodeChanges), Comments + " set newDoc = oWord.CompareDocuments (baseDoc, compareDoc, wdCompareTargetSelectedDiff, wdGranularityWordLevel, true, true, true, true, true, true, true, wdFieldCodeChanges, true, true, authorName) \n compareDoc.close \n newDoc.Activate\n set compareDoc = oWord.ActiveDocument\n\n"; private final static String comparisonCommandFirst = " set mainDoc = compareDoc\n baseDoc.close\n set baseDoc = Nothing\n"; @@ -66,16 +68,18 @@ public class VbaWordDiffGenerator implements IVbaDiffGenerator { private final boolean merge; private final boolean show; + private final boolean diffFieldCode; private final boolean detectFormatChanges; private final boolean executeVbScript; private final boolean skipErrors; - public VbaWordDiffGenerator(boolean merge, boolean show, boolean detectFormatChanges, boolean executeVbScript, boolean skipErrors) { + public VbaWordDiffGenerator(boolean merge, boolean show, boolean detectFormatChanges, boolean executeVbScript, boolean skipErrors, boolean diffFieldCode) { this.merge = merge; this.show = show; this.detectFormatChanges = detectFormatChanges; this.executeVbScript = executeVbScript; this.skipErrors = skipErrors; + this.diffFieldCode = diffFieldCode; } @Override @@ -93,6 +97,8 @@ public class VbaWordDiffGenerator implements IVbaDiffGenerator { writer.append(""); writer.append(Boolean.toString(detectFormatChanges)); + writer.append("\n"); + writer.append(diff_field_codes + String.valueOf(diffFieldCode)); writer.append("\n\n"); addComparison(monitor, writer, compareData, merge); @@ -135,7 +141,7 @@ public class VbaWordDiffGenerator implements IVbaDiffGenerator { throw new OperationCanceledException(); } - //Unforunately Word seems to need a little extra time to close, otherwise Word 2007 will crash periodically if too many files are being compared. + //Unfortunately Word seems to need a little extra time to close, otherwise Word 2007 will crash periodically if too many files are being compared. String propertyWordDiffSleepMs = System.getProperty(OSEE_WORD_DIFF_SLEEP_MS, "250");// Quarter second is the default sleep value appendable.append("WScript.sleep(" + propertyWordDiffSleepMs + ")\n"); diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/util/WordUiUtil.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/util/WordUiUtil.java index 34bd36c6203..64af53e02b9 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/util/WordUiUtil.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/util/WordUiUtil.java @@ -59,7 +59,7 @@ public final class WordUiUtil { } } - public static IVbaDiffGenerator createScriptGenerator(boolean merge, boolean show, boolean detectFormatChanges, boolean executeVbScript, boolean skipErrors) { - return new VbaWordDiffGenerator(merge, show, detectFormatChanges, executeVbScript, skipErrors); + public static IVbaDiffGenerator createScriptGenerator(boolean merge, boolean show, boolean detectFormatChanges, boolean executeVbScript, boolean skipErrors, boolean diffFieldCodes) { + return new VbaWordDiffGenerator(merge, show, detectFormatChanges, executeVbScript, skipErrors, diffFieldCodes); } }
\ No newline at end of file |