diff --git a/idl/pom.xml b/idl/pom.xml
index 62d73fb6c..596a12640 100644
--- a/idl/pom.xml
+++ b/idl/pom.xml
@@ -13,22 +13,72 @@
+
+ ${UNO_PATH}/../sdk
+
+
+
+
+ ${project.build.directory}/generated-sources/idl
+
+
- org.openoffice.dev
- ooo-maven-plugin
- 1.1.2-SNAPSHOT
-
- ${basedir}/src/main/idl
- ${ooo}
- ${sdk}
-
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+ 3.0.0
+ idl
generate-sources
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- build-idl
+ run
@@ -56,5 +106,35 @@
+
+
+
+
+ org.eclipse.m2e
+ lifecycle-mapping
+ 1.0.0
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+ [1.8,)
+
+ run
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/idl/src/main/idl/de/muenchen/allg/itd51/wollmux/XPrintModel.idl b/idl/src/main/idl/de/muenchen/allg/itd51/wollmux/XPrintModel.idl
index 94362a470..e33bfcc29 100644
--- a/idl/src/main/idl/de/muenchen/allg/itd51/wollmux/XPrintModel.idl
+++ b/idl/src/main/idl/de/muenchen/allg/itd51/wollmux/XPrintModel.idl
@@ -3,24 +3,24 @@
* Projekt : WollMux
* Funktion : Repräsentiert die Schnittstelle WollMux Komfortdruckfunktionen
*
- * Copyright (C) 2009 Landeshauptstadt München
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is furnished
- * to do so, subject to the following conditions:
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
+ * Copyright (C) 2009 Landeshauptstadt München
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is furnished
+ * to do so, subject to the following conditions:
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
*
* @author Christoph Lutz (D-III-ITD 5.1)
* @version 1.0
@@ -242,7 +242,13 @@ interface XPrintModel
* Der anzuzeigende String.
*/
void setPrintMessage([in] string value);
-};
+
+ /**
+ * Diese Methode initiiert beim Iterieren über Verfügungspunkte die
+ * Gruppen-Sichtbarkeiten neu.
+ *
+ */
+ void setGroupsVisibilityState();};
}; }; }; }; };
diff --git a/src/de/muenchen/allg/itd51/wollmux/func/StandardPrint.java b/src/de/muenchen/allg/itd51/wollmux/func/StandardPrint.java
index 0feb14e02..662765f8f 100644
--- a/src/de/muenchen/allg/itd51/wollmux/func/StandardPrint.java
+++ b/src/de/muenchen/allg/itd51/wollmux/func/StandardPrint.java
@@ -230,6 +230,8 @@ public static void sachleitendeVerfuegungOutput(XPrintModel pmod)
for (VerfuegungspunktInfo v : settings)
{
if (pmod.isCanceled()) return;
+ pmod.setGroupsVisibilityState();
+
if (v.getCopyCount() > 0)
{
SachleitendeVerfuegung.printVerfuegungspunkt(pmod, v.verfPunktNr, v.isDraft,
diff --git a/src/de/muenchen/allg/itd51/wollmux/print/PrintModels.java b/src/de/muenchen/allg/itd51/wollmux/print/PrintModels.java
index 10a0b347e..e41494e38 100644
--- a/src/de/muenchen/allg/itd51/wollmux/print/PrintModels.java
+++ b/src/de/muenchen/allg/itd51/wollmux/print/PrintModels.java
@@ -36,6 +36,7 @@
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.Map;
import java.util.SortedSet;
import java.util.TreeSet;
@@ -253,6 +254,11 @@ private static class MasterPrintModel implements XPrintModel, InternalPrintModel
private TextDocumentController documentController;
+ /**
+ * Speichert die Gruppensichtbarkeiten des originalen Dokumentes vor Start des Druckens.
+ */
+ private Map mapGroupIdToVisibilityState;
+
/**
* Erzeugt ein neues MasterPrintModel-Objekt für das Dokument model, das einen
* Druckvorgang repräsentiert, der mit einer leeren Aufrufkette (Liste von
@@ -263,11 +269,13 @@ private static class MasterPrintModel implements XPrintModel, InternalPrintModel
*
* @param documentController
*/
+
private MasterPrintModel(TextDocumentController documentController)
{
this.documentController = documentController;
this.props = new HashMap();
this.functions = new TreeSet();
+ this.mapGroupIdToVisibilityState = documentController.getModel().getMapGroupIdToVisibilityState();
}
/**
@@ -350,6 +358,21 @@ public XTextDocument getTextDocument()
return documentController.getModel().doc;
}
+ /**
+ * Diese Methode reinitialisiert das Dokument mit den originalen
+ * Gruppen-Sichtbarkeiten.
+ *
+ * @see de.muenchen.allg.itd51.wollmux.XPrintModel#setGroupsVisibilityState()
+ */
+ @Override
+ public void setGroupsVisibilityState()
+ {
+ for (Map.Entry entry : mapGroupIdToVisibilityState.entrySet())
+ {
+ setGroupVisible(entry.getKey(), entry.getValue());
+ }
+ }
+
/**
* Diese Methode ruft numberOfCopies mal printWithProps() auf.
*
@@ -1056,6 +1079,17 @@ public XTextDocument getTextDocument()
return master.getTextDocument();
}
+ /**
+ * Diese Methode reinitialisiert das Dokument mit den originalen
+ * Gruppen-Sichtbarkeiten.
+ *
+ * @see de.muenchen.allg.itd51.wollmux.XPrintModel#setGroupsVisibilityState()
+ */
+ @Override
+ public void setGroupsVisibilityState()
+ {
+ master.setGroupsVisibilityState();
+ }
/*
* (non-Javadoc)
*
@@ -1079,7 +1113,6 @@ public void print(short numberOfCopies)
public void printWithProps()
{
if (isCanceled()) return;
-
PrintFunction f = master.getPrintFunction(idx + 1);
if (f != null)
{