CIB JView technischer Leitfaden
Site: | CIB eLearning |
Course: | CIB JView |
Book: | CIB JView technischer Leitfaden |
Printed by: | Guest user |
Date: | Wednesday, 4 December 2024, 9:45 AM |
Table of contents
- Lieferumfang
- Einführung: CIB JView
- Einführung: CIB jView mit Rich-Text-Edit-Komponente
- Einführung: Anbindung an Korrespondenzsystem - jView&coSys
- Einführung: CIB JPrintDialog
- Konfiguration durch Properties
- Allgemeine Properties
- Properties zur Konfiguration der Menüleiste
- Properties zur Konfiguration der Toolbar
- Properties zur Konfiguration der Navigationsfelder
- Properties zur Konfiguration der Statuszeile
- Properties zur Konfiguration von CIB jView&coSys
- Properties zur Konfiguration des CIB jRec Edit-Controls
- Properties zur Konfiguration des CIB jScan Controls
- Properties zur Aktivierung und Konfiguration von CIB jView&form
- Properties zur Aktivierung und Konfiguration von CIB jView&sign
- Batch-Dateien zum Starten des Viewers
- Steuerung durch Aufrufparameter
- Benutzereinstellungen speichern und laden
- Einbindung des CIB jView in Java
Lieferumfang
AllgemeinCIB JView für Windows
CIB JView für Linux
Benutzung von JComod-IPC
Allgemein
CIB JView steht in verschiedenen Varianten mit unterschiedlichem Funktionsumfang zur Verfügung. Die Applikation wird in Form einer zip-Datei angeliefert.
Komponente |
Softwareumfang |
CIB jView |
Reiner Viewer für Dokumente im RTF-, PDF-, (ASCII-)Text- oder (TIFF-) Image-Format. CibJView-<version>.zip |
CIB jView&jRec |
Viewer für Dokumente im RTF-, PDF-, (ASCII)-Text- oder (TIFF)-Image-Format mit eingebetteter CIB jRec-Komponente. Dadurch wird das Bearbeiten von editierbaren Feldern innerhalb von RTF-Dokumenten mit dem jRec Edit-Control ermöglicht. Dieses umfasst die Grund-Funktionen zur Textformatierung wie verschiedene Schriftarten und Größen in normal, fett oder kursiv sowie die Absatzformate linksbündig, zentriert oder rechtsbündig. Näheres siehe „CIB jRec Technischer Leitfaden“ Zusatzbibliothek CibjRec-<version>.jar |
CIB jView&jRec2 |
Viewer für Dokumente im RTF-, PDF-, (ASCII)-Text- oder (TIFF)-Image-Format mit eingebetteter CIB jRec2-Komponente. Dadurch wird das Bearbeiten von editierbaren Feldern innerhalb von RTF-Dokumenten mit dem jRec2 Edit-Control ermöglicht. Dieses unterstützt neben den bisherigen JRec-Funktionen zur Textformatierung auch Blocksatz, Aufzählungen, nummerierte Listen, Tabellen, automatische Silbentrennung und Rechtschreibprüfung. Zusatzbibliothek CibjRec2-<version>.jar |
CIB jView&scan (nur Windows) |
Viewer für Dokumente im RTF-, PDF-, (ASCII)-Text- oder (TIFF)-Image-Format mit der zusätzlichen Möglichkeit, Dokumente mit einem Twain-Scanner zu erfassen und in ein Scanpool-Verzeichnis zu importieren. Näheres siehe „Fachkonzept JView&scan.pdf“ Zusatzbibliothek CibjScan-<version>.jar Bei Einbindung von CibjScan wird auch die Komponente mmsc_imageviewer.jar benötigt (siehe unten) |
CIB jView&form |
Viewer für Dokumente im RTF-, PDF-, (ASCII)-Text- oder (TIFF)-Image-Format mit der zusätzlichen Möglichkeit, Formularfelder innerhalb von PDF-Dokumenten zu bearbeiten. Näheres siehe „TechnischerLeitfadenCIBjViewform.pdf“ |
CIB jView&sign |
Viewer für Dokumente im RTF-, PDF-, (ASCII)-Text- oder (TIFF)-Image-Format mit der zusätzlichen Möglichkeit, mit Hilfe eines Signatur-Pads Dokumente mit einer elektronischen Signatur zu versehen. Näheres siehe „TechnischerLeitfadenCIBjViewsign.pdf“ und „CIB JView&Sign.doc“ |
Nach dem Auspacken ergibt sich folgende Verzeichnisstruktur mit den angegebenen Dateien, wobei zwischen den Varianten für Windows und Linux unterschieden werden muss.
CIB JView für Windows
Verzeichnis |
Datei |
Inhalt |
CibjView |
readme.txt |
ReadMe Datei |
|
run.bat |
Batch-Datei für den Start über die Konsole |
|
run_ipc.bat |
Batch-Datei für den Start über die Konsole mit Aktivierung von IPC. Die Aktivierung erfolgt durch Setzen der Java-Option: -Dde.cib.jcomod.useIpc=true |
|
cibjView.ini |
CIB jView INI-Datei |
CibjView\docs\api und Unterverzeichnisse |
Alle javadoc Dateien, insbesondere index.html |
Java-Dokumentation zu CIB jView: |
CibjView\docs\manual |
|
CIB jView Manual-Dokumente |
CibjView\examples |
|
Code-Beispiele zum Aufruf von CibjView |
CibJView\lib |
CibGUI-<version>.jar |
CIB GUI Java Archivdatei |
|
CibjView-<version>.jar |
CIB jView Java Archivdatei |
|
CIBjnavTree-<version>.jar |
CIB Navigationsbaum Archivdatei |
|
CibjRec-<version>.jar |
CIB jRec Java Archivdatei, |
|
CibjRec2-<version>.jar |
CIB jRec2 Java Archivdatei, |
|
CibjScan-<version>.jar |
CIB jScan Java Archivdatei um Dokumente mit einem Twain-Scanner zu erfassen und in ein Scanpool-Verzeichnis zu importieren (optional, bei Einbindung von CibjScan wird auch die Komponente mmsc_imageviewer.jar benötigt) |
|
ComodJobs.jar |
Java Archivdatei für die JCoMod-Jobs und den JPrintDialog |
|
mime-util-<version>.jar |
Bibliothek zur Behandlung der Mime-Types |
|
jai_imageio.jar |
Java Advanced Image IO Bibliotheken zur verbesserten Anzeige von TIFF-Images. |
|
mmsc_imageviewer.jar |
Bibliothek für erweitertes Image IO und Twain-Scanner-Interface (optional: wird nur bei Einbindung der Scan-Komponente CibjScan benötigt) |
CibjView\lib\win32 |
cibmrg32.dll |
CIB merge DLL für Win32 |
|
CibPrt32.dll |
CIB format DLL für Win32 |
|
CibPdf32.dll |
CIB PDF toolbox DLL für Win32 |
|
cibjbig232.dll |
CIB Jbig2 DLL für Win32 |
|
ipcserver.exe |
CIB JComod IPC Server (optional) |
|
JComod.dll |
CoMod JNI DLL |
|
jcomod-ipc.dll |
IPC-Variante der CoMod JNI DLL (optional) |
|
log4cpp.dll |
CIB JComod IPC Logging Library (optional) |
|
log4cpp.properties |
Log4cpp Properties-Datei (optional) |
CIB JView für Linux
Verzeichnis |
Datei |
Inhalt |
CibjView |
readme.txt |
ReadMe Datei |
|
run.sh |
Batch-Datei für den Start über die Konsole ohne Aktivierung von IPC |
|
run_ipc.sh |
Batch-Datei für den Start über die Konsole mit Aktivierung von IPC. Die Aktivierung erfolgt durch Setzen der Java-Option: |
|
cibjView.ini |
CIB jView INI-Datei |
CibjView\docs\api und Unterverzeichnisse |
Alle javadoc Dateien, insbesondere index.html |
Java-Dokumentation zu CIB jView: |
CibjView\docs\manual |
|
CIB jView Manual-Dokumente |
CibjView\examples |
|
Code-Beispiele zum Aufruf von CIB jView |
CibjView\lib |
CibGUI-<version>.jar |
CIB GUI Java Archivdatei |
|
CIBjnavTree-<version>.jar |
CIB Navigationsbaum Archivdatei |
|
CibjView-<version>.jar |
CIB jView Java Archivdatei |
|
CibjRec-<version>.jar |
CIB jRec Java Archivdatei, |
|
ComodJobs.jar |
Java Archivdatei für die JCoMod-Jobs und den JPrintDialog |
|
mime-util.jar |
Mime-type Archivdatei |
|
jai_imageio.jar |
Java Advanced Image IO Bibliotheken zur verbesserten Anzeige von TIFF-Images. |
CibjView\lib\linux32 |
ipcserver |
CIB JComod IPC Server (optional) |
|
ld-linux.so.2 |
Standard Linux System Library |
|
libcibpdfux.so |
CIB PDF toolbox Shared Object Library |
|
libcibprtux.so |
CIB format Shared Object Library |
|
libgcc_s.so.1 |
GNU Compiler Collection Library |
|
libjcomod.so |
CIB JComod Shared Object Library |
|
libjcomod-ipc.so |
IPC-Variante der CIB JComod SO Library (optional) |
|
liblog4cpp.so |
CIB JComod IPC Logging Library (optional) |
|
libstdc++.so.5 |
Standard C++ Shared Object Library 5 |
|
libstdc++.so.6 |
Standard C++ Shared Object Library 6 |
|
log4cpp.properties |
Log4cpp Properties-Datei (optional) |
Benutzung von JComod-IPC
Wird JComod-IPC zusammen mit Webstart auf einem Windows Vista System ausgeführt, muss darauf geachtet werden, dass alle für die Applikation notwendigen Dateien in einem Verzeichnis gespeichert werden, welches kein Integrity gesetzt hat. Hintergrund ist der unter Windows Vista verwendete Integrity-Mechanismus zur Einschränkung der Rechte für Applikationen.
Einführung: CIB JView
CIB jView ist ein flexibler Dokument-Viewer für RTF-, PDF-, ASCII- und Image-Dateien. Er benutzt intern native Aufrufe der CIB office Module über den JCoMod Wrapper und dessen Jobklassen.
Die Oberfläche des CIB jView umfasst folgende Komponenten:
- Menüleiste
- Toolbarleiste
- Viewer-Fenster mit Scrollbar
- Seiten-Navigationsleiste
- Statuszeile
Sie lässt sich über eine Methode zum Setzen von Properties (cibView.setProperty), frei nach den Wünschen der aufrufenden Applikation gestalten. Jede einzelne graphische Komponente (z.B. Toolbar-Icon), die auf dem Bild zu sehen ist, kann durch Setzen der entsprechenden Property aus- oder eingeschaltet werden. Die dazugehörigen Eigenschaften sind als Member in der Schnittstelle de.cib.gui.framework.ICibApplication aufgelistet.
Einführung: CIB jView mit Rich-Text-Edit-Komponente
AllgemeinCIB jView mit jRec
CIB jView mit jRec2
Steuerung des Verhältnisses von jView-Fenster zu Edit-Fenster
Interface SplitPaneListener mit Callback-Methode für Split-Panel
Interface PushAreaListener mit Callback-Methode für Edit-Bereiche
Kennzeichenersetzung in RTF-Dokumenten
Allgemein
CIB jView steht auch mit den zusätzlichen Komponenten jRec bzw. jRec2 zur Verfügung und wird dann als jView&jRec bzw JView&jRec2 bezeichnet. CIB jRec und jRec2 sind Java basierte Rich-Text Editor-Komponente, die sich nach dem von anderen CIB Modulen bekannten Schnittstellenkonzept einfach in Masken und fremde Anwendungen integrieren lässt. Durch ihre Integration in jView ist es möglich, bei RTF-Dokumenten, die ein oder mehrere editierbare Felder enthalten, deren Inhalt in einem separaten Fenster zu bearbeiten. Editierbare Bereiche werden durch Rechtecke mit gestrichelter Umrandung dargestellt.
Die CIB Rec-Editoren können entweder leer, mit ASCII oder RTF-Texten gestartet werden. Umgekehrt können die Texte wieder im ASCII- oder RTF-Format aus dem Edit-Control gelesen werden.
Falls im CIB jView mit Rec-Komponente ein RTF-Dokument mit eingebetteten Edit-Feldern angezeigt ist, öffnet sich durch Doppelklick in einen Editbereich unterhalb des Viewer-Fensters ein Edit-Fenster, in dem der aktuelle Text angezeigt wird und bearbeitet
werden kann. Der jeweils in Bearbeitung befindliche Bereich wird im Viewer-Fenster rot umrandet dargestellt.
Durch erneuten Doppelklick in das Viewer-Fenster, diesmal außerhalb des Edit-Feldes, wird der geänderte Text in das Dokument übernommen und das Edit-Fenster wieder geschlossen. Alternativ dazu kann die Bearbeitung durch Klick auf das Beenden-Icon ganz rechts in der Toolleiste des Edit-Fensters beendet werden. Dabei erscheint ein Dialog mit der Frage, ob die Änderungen übernommen werden sollen oder nicht.
Falls das JView-Paket die jRec2-Bibliotheken enthält, wird im Edit-FensterCIB jRec2 gestartet, falls nur die jRec-Bibliotheken enthalten sind, wird CIB jRec gestartet. Falls keine der Rec-Bibliotheken im JView-Paket enthalten ist, können Rec-Bereiche im JView nicht geöffnet und editiert werden.
CIB jRec2 ist eine komplette Neuentwicklung und umfasst weitaus mehr Funktionen als CIB jRec. Wie die anderen CIB Module können dieses RTF-Edit-Controls komfortabel durch Setzen verschiedener Properties gesteuert werden.
Im Folgenden werden die beiden Komponenten kurz beschrieben. Detaillierte Beschreibungen finden Sie in den Technischen Leitfäden zu den beiden Produkten.
CIB jView mit jRec
CIB jRec besitzt folgende Möglichkeiten zur Textformatierung:
- Verschiedene Schriftarten und Schriftgrößen
- Zeichenattribute fett, kursiv, unterstrichen, farbig
- Absatzausrichtung linksbündig, zentriert, rechtsbündig
- Kopieren, Ausschneiden und Einfügen markierter Textabschnitte
- Ein-/Ausblenden von Formatierungszeichen
CIB jView mit jRec2
Der CIB jRec2 umfasst folgende Funktionalitäten:
- Verschiedene Schriftarten und Schriftgrößen
- Zeichenattribute fett, kursiv, unterstrichen, farbig, durchgestrichen, hochgestellt, tiefgestellt
- Absatzausrichtung linksbündig, zentriert, rechtsbündig, Blocksatz
- Kopieren, Ausschneiden und Einfügen markierter Textabschnitte
- Ein-/Ausblenden von Formatierungszeichen
- Öffnen und Speichern von RTF-Dokumenten
- Einfügen von Plain-Text und RTF-Text über API-Funktionen
- Mehrere Dokumentseiten
- Anzeige der Text-Hintergrundfarbe
- Aufzählungen
- Nummerierte Listen
- Ein-/Ausrückungen von Listen
- Tabellen mit Formatierungen für Tabellenzeile, Tabellenspalte und Tabellenzelle
- Rahmen und Hintergrund für ganze Tabelle bzw. einzelne Zellen
- Automatische Silbentrennung
- Rechtschreibprüfung
- Wörterbuch
Steuerung des Verhältnisses von jView-Fenster zu Edit-Fenster
Bei geöffnetem Editbereich ist der Anzeigebereich des Anwendungsfensters durch ein Split-Panel in ein jView-Fenster (Viewing-Bereich) und ein Edit-Fenster (=Editbereich) unterteilt. Ein Edit-Fenster kann entweder ein jRec- oder ein jRec2-Edit-Control enthalten. Standardmäßig ist das Verhältnis zwischen JView- und Edit-Fenster 2:1, das JView-Fenster nimmt also 66% des Anzeigebereichs ein.
Um dieses Verhältnis von der aufrufenden Anwendung steuern zu können, wird eine Integer-Property PROPERTY_SPLITPANE_DIVIDER_PERCENTAGE (= „splitpane-divider-percentage”) eingeführt, die den prozentualen Anteil des JView-Fensters zum gesamten Anzeigebereich bei geöffnetem Editbereich angibt.
Diese Property wird beim Aufruf von jView wie die anderen Properties bei der jView-Instanz gesetzt und beim Öffnen des Edit-Fensters ausgewertet.
Code-Beispiel zum Setzen des SplitPane-Verhältnisses bei der jView-Instanz (Verhältnis jView-Fenster zu Gesamt-Fenster in Prozent, der Defaultwert ist 66 Prozent):
// Beim Start von jView
t_CibView.setProperty(
ICibApplication.PROPERTY_SPLITPANE_DIVIDER_PERCENTAGE, new Integer(50));
Interface SplitPaneListener mit Callback-Methode für Split-Panel
Zusätzlich zum Setzen der Property wird ein Interface SplitPaneListener mit einer CallBack-Methode splitDividerPercentage eingeführt, die den aktuellen Prozentwert zurückliefert. Der Aufrufer muss sich dazu bei der JView-Instanz als Listener anmelden.
Bei der Registrierung kann durch ein bitcodiertes Flag angegeben werden, bei welchen Ereignissen der Listener informiert werden soll:
- Bei jedem Schließen des Edit-Bereiches
- Beim Beenden der jView-Applikation
Beim Eintreten des Ereignisses wird jeder registrierte Listener über den aktuellen Prozentwert informiert.
So kann der Aufrufer selbst entscheiden, wo und wie er diese Information abspeichert (lokal oder in der Datenbank, benutzer- oder anwendungsspezifisch).
Die Interface-Definition für die Callback-Methode ist in CIB gui (package de.cib.gui.event) definiert.
package de.cib.gui.event;
/** * Interface SplitPaneListener * * This interface is used to listen to changes of split pane settings. * */
public interface SplitPaneListener {
/** * Send a divider info when jRec is closed. * Value 0x1 (bit-coded) */
public static final int DIVIDER_INFO_ON_JREC_CLOSE = 0x1;
/** * Send a divider info when JView is closed. * Value 0x2 (bit-coded) */
public static final int DIVIDER_INFO_ON_JVIEW_CLOSE = 0x2;
/** * Call back for split pane divider percentage. * @param splitPercentage */
public void splitDividerPercentage(int splitPercentage);
}
Code-Beispiel zum Anmelden / Abmelden als SplitPaneListener bei der jView-Instanz:
// Definition eines RecPaneListeners
static class RecPaneListener implements SplitPaneListener {
public void splitDividerPercentage(int splitPercentage) {
Trace.traceln("SplitPane divider percentage = "
+ splitPercentage);
}
}
RecPaneListener recPaneListener = new RecPaneListener(),
SplitPaneListener.DIVIDER_INFO_ON_JREC_CLOSE |
SplitPaneListener.DIVIDER_INFO_ON_JVIEW_CLOSE);
// Beim Start von jView
t_ CibView.addSplitPaneListener(recPaneListener);
...
// Beim Beenden von jView
t_CibView.removeSplitPaneListener(recPaneListener);
Beim Auftreten eines der oben definierten Events wird die Callback-Methode des registrierten SplitPane-Listeners mit dem aktuellen Prozentwert aufgerufen.
// Beim Schließen von jRec bzw. Beenden von jView
recPaneListener.splitDividerPercentage(splitPercentage);
Interface PushAreaListener mit Callback-Methode für Edit-Bereiche
Für die Überwachung der Editbereiche wird ein Interface PusAreaListener mit einer CallBack-Methode pushAreaChanged zur Verfügung gestellt, die den registrierten Listener über Änderungen bei den Editbereichen informiert. Der Aufrufer muss sich dazu bei der jView-Instanz als PushAreaListener anmelden.
Es gibt verschiedene Ereignisse, über die der Listener informiert wird:
- Bevor sich die aktive PushArea ändert, also bevor eine neue PushArea geöffnet oder eine geöffnete PushArea geschlossen wird.
- Ob sich der Inhalt eine PushArea nach dem Schließen des Editbereichs geändert hat.
- Nachdem die aktive PushArea geschlossen wurde und alle Änderungen im JView abgeschlossen sind.
Beim Eintreten eines Ereignisses wird der registrierte Listener über die aktuellen Werte informiert.
Die Interface-Definition für die Callback-Methode ist in CIB jView (package de.cib.view.ui) definiert.
package de.cib.view.ui;
import java.beans.PropertyChangeEvent;
/**
* Interface PushAreaListener
*
* This interface is used to listen to changes of activated push areas.
*
*/ public interface PushAreaListener {
public void pushAreaChanged(PropertyChangeEvent event);
}
Code-Beispiel eines PushAreaListeners:
// Definition JRecListener als PushAreaListener
static class JRecListener implements PushAreaListener {
public void pushAreaChanged(PropertyChangeEvent evt) {
String property = evt.getPropertyName();
Trace.traceln("START PUSHAREA EVENT --- " + property);
if (JCibViewUI.PROPERTY_CHANGE_ACTIVE_PUSHAREA
.equals(property)) {
if (evt.getOldValue() != null)
Trace.traceln(">>>>> Rec-Field was closed: "
+ evt.getOldValue());
if (evt.getNewValue() != null)
Trace.traceln(">>>>> Rec-Field was opened: "
+ evt.getNewValue());
}
else if (JCibViewUI.ACTIVE_PUSHAREA_CONTENT_CHANGED .equals(property)) {
if (evt.getNewValue() != null
&& ((Boolean) evt.getNewValue()))
Trace.traceln(">>> Document content is changed.");
else
Trace.traceln(">>> Document content is NOT changed.");
}
else if (JCibViewUI.PROPERTY_FINISH_ACTIVE_PUSHAREA
.equals(property)) {
if (evt.getOldValue() != null && evt.getOldValue()
instanceof de.cib.metafile.RichEditControl) {
// Check if rec snippet has been changed
de.cib.metafile.RichEditControl richEditControl
= (de.cib.metafile.RichEditControl)evt.getOldValue();
Trace.traceln("RTF edit field_"
+ richEditControl.getFormFieldID()
+ " is merged and reloaded.");
Trace.traceln("RTF snippet text:\n"
+ richEditControl.getRtfPassage(""));
}
}
Trace.traceln("END PUSHAREA EVENT --- " + property);
}
}
Code-Beispiel zum Anmelden / Abmelden als PushAreaListener bei der jView-Instanz:
// Beim Start von jView
JRecListener m_RecListener = new JRecListener();
t_CIBView.addPushAreaListener(m_RecListener);
t_CIBView.start();
...
// Beim Beenden von jView
t_CibView.removePushAreaListener(m_RecListener);
t_CIBView.stop();
Kennzeichenersetzung in RTF-Dokumenten
Es ist möglich, ein oder mehrere in einem RTF-Dokument enthaltene Revisionskennzeichen, die mit einem bestimmten Wert vorbelegt sind, nach der Änderung eines Editierbereichs mit neuen Werten zu belegen.
Dazu wird an die JView-Instanz eine Liste (Map) von ID/Value-Paaren übergeben, wobei jedes Element die ID des Revisionskennzeichens und den zugehörigen neuen Wert enthält.
Falls ein RTF-Dokument im jView geöffnet ist und ein Editierbereich in diesem Dokument geändert wird, wird über CIB merge der geänderte Inhalt des Editierbereichs in das Dokument eingemischt. Gleichzeitig wird dabei für jede ID aus der übergebenen Liste in dem entsprechenden Feld der alte durch den neuen Wert ersetzt.
Dazu gibt es im Interface ICibView, das von JCibView implementiert wird, die folgende Methode:
/**
* Sets the replacement values on changing the current RTF document.
* If a RTF document is changed each given id is replaced by the matching value.
*
* @param rtfIdValues the Map with id/value pairs
*/
public void setReplacementsOnRtfChange(Map<String, String> rtfIdValues);
Die Anwendung, die den JView bei sich einbettet, kann die Liste der ID/Value-Paare analog zum folgenden Code-Beispiel bei der JView-Instanz setzen:
JCibView t_CIBView = new JCibView();
...
// Set map with RTF id/value pairs to change for test purpose
HashMap<String, String> rtfIdValues = new HashMap<String, String>();
rtfIdValues.put("REVID", "ID1a");
rtfIdValues.put("USERID", "ID2b");
t_CIBView.setReplacementsOnRtfChange(rtfIdValues);
...
t_CIBView.start();
t_CIBView.load();
Einführung: Anbindung an Korrespondenzsystem - jView&coSys
AllgemeinInterface AuthenticationCallback mit Callback-Methode für die Authentifizierung
Interface WorkflowListener mit Callback-Methoden für den Workflow
Allgemein
In CIB jView sind auch Funktionen zur Anbindung an das Korrespondenzsystems CIB webdesk 2.0 integriert. Diese JView-Erweiterung wird als JView&coSys bezeichnet.
Dazu sind verschiedene Interfaces definiert, die in den folgenden Abschnitten beschrieben werden.
Interface AuthenticationCallback mit Callback-Methode für die Authentifizierung
Zur Authentifizierung bei CIB webdesk bzw. darkdesk wird ein Interface AuthenticationCallback mit einer CallBack-Methode getStarterTicket() eingeführt, die das aktuelle Starterticket zurückliefert. Der Aufrufer muss sich dazu bei der JView-Instanz als Listener anmelden.
Das Interface AuthenticationCallback ist im CIB jView (package de.cib.view.correspondence) definiert.
package de.cib.view.correspondence;
/**
* Interface AuthenticationCallback
*
* This interface is used to listen to authentication events.
*
*/
public interface AuthenticationCallback {
/**
* Call back for getting a starter ticket.
* @return a starter ticket
*/
public String getStarterTicket();
}
Code-Beispiel zum Setzen eines AuthenticationCallback Listeners bei der jView-Instanz:
// Definition eines AuthenticationCallback Listeners
static String clientID = null;
static class AuthenticationCallbackTester implements AuthenticationCallback {
public String getStarterTicket() {
// For test with mock service
String starterTicket = null;
if (clientID != null)
starterTicket = "start" + clientID;
return starterTicket;
}
}
// Beim Start von jView
t_CibView.setAuthenticationCallback(
new AuthenticationCallbackTester());
...
// Beim Beenden von JView
t_CibView.setAuthenticationCallback(null);
Interface ApprovalCallback mit Callback-Methoden für die Freigabe
Für Freigabe von Korrespondenz-Dokumenten im CIB webdesk bzw. darkdesk wird ein Interface ApprovalCallback mit den CallBack-Methoden workflowApprovalCommitted() und workflowApprovalDenied() eingeführt, die den Listener darüber informieren, ab die Freigabe erfolgreich durchgeführt oder abgebrochen wurde. Der Aufrufer muss sich dazu bei der JView-Instanz als Listener anmelden.
Das Interface ApprovalCallback ist im CIB jView (package de.cib.view.correspondence) definiert.
package de.cib.view.correspondence;
/**
* Used to allow JView callbacks to the instantiating application
* in case of workflow approvals.
*
*/
public interface ApprovalCallback {
/**
* This method is called when a user approves the current
* viewed document.<br>
* Override this method to implement specific handling of
* this callback.
*/
void workflowApprovalCommitted();
/**
* This method is called when a user denies approval of the current
* viewed document.<br>
* Override this method to implement specific handling of
* this callback.
*/
void workflowApprovalDenied();
}
Code-Beispiel zum Setzen eines ApprovalCallback Listeners bei der jView-Instanz:
// Definition eines ApprovalCallback Listeners
static String clientID = null;
static class ApprovalCallbackTester implements ApprovalCallback {
public void workflowApprovalCommitted() {
JCibTrace.info("CALLBACK - workflowApprovalCommitted()");
}
public void workflowApprovalDenied() {
JCibTrace.info("CALLBACK - workflowApprovalDenied()");
}
}
// Beim Start von JView
t_CibView.setApprovalCallback(new ApprovalCallbackTester());
...
// Beim Beenden von JView
t_CibView.setApprovalCallback(null);
Interface WorkflowListener mit Callback-Methoden für den Workflow
Für den Workflow von Korrespondenz-Dokumenten im CIB webdesk bzw. darkdesk wird ein Interface WorkflowListener mit verschiedenen CallBack-Methoden eingeführt, die den Listener darüber informieren, welche Benutzereingaben im Workflow für das aktuelle Korrespondenzdokument erfolgt sind. Der Aufrufer muss sich dazu bei der JView-Instanz als Listener anmelden.
Das Interface WorkflowListener ist im CIB jView (package de.cib.view.correspondence) definiert.
package de.cib.view.correspondence;
/**
* Interface WorkflowListener
*
* This interface is used to listen to workflow events.
*
*/
public interface WorkflowListener {
/**
* Call back for accept.
* @param
*/
void onAccept();
/**
* Call back for reject.
* @param
*/
void onReject();
/**
* Call back for accept and approve.
* @param
*/
void onAcceptAndApprove();
/**
* Call back for restart workflow.
* @param
*/
void onRestartWorkflow();
}
Code-Beispiel zum Setzen eines Workflow Listeners bei der jView-Instanz:
// Definition eines Workflow Listeners
static class WorkflowCallbackTester implements WorkflowListener {
public void onAccept() {
System.out.println("Called workflowOnAccept()");
}
public void onReject() {
System.out.println("Called workflowOnReject()");
}
public void onAcceptAndApprove() {
System.out.println("Called workflowOnAcceptAndApprove()");
}
public void onRestartWorkflow() {
System.out.println("Called workflowOnRestartWorkflow()");
}
}
// Beim Start von jView
final WorkflowCallbackTester workflowListener = new WorkflowCallbackTester();
t_CibView.addWorkflowListener(workflowListener);
...
// Beim Beenden von jView
t_CibView.removeWorkflowListener(workflowListener);
Einführung: CIB JPrintDialog
Beim Drucken eines Dokumentes aus dem JView heraus wird standardmäßig die Komponente JPrintDialog verwendet. Wenn der native Java Drucker-Dialog verwendet werden soll, muss die Property ICibApplication.PROPERTY_SHOWJPRINTDIALOG auf FALSE gesetzt werden.
Mit den Komponenten JView und dem JPrintDialog verfügt die Palette der CIB office Module (CoMod) über pure Java GUI Komponenten, die sich in beliebige Java-Anwendungen und Frameworks integrieren lassen.
Intern benutzen diese Module über den JCoMod-Wrapper (JNI) z.T. noch spezielle Dienste nativer CIB Komponenten im Hintergrund.
JView und der JPrintDialog basieren auf der Swing-GUI und sind ab JDK-Version 1.4.2 einsetzbar.
Die vorliegende Dokumentation gibt einen Überblick über technische Schnittstellen, Aufrufparameter und Eigenschaften der CIB jView Komponente und enthält konkrete Einsatzbeispiele.
Detaillierte technische Schnittstellen entnehmen Sie bitte der Javadoc-Beschreibung.
Konfiguration durch Properties
Konfiguration durch Properties
Allgemeine Properties
Mit den folgenden Properties können generelle Einstellung für die Applikation gesetzt werden.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_TITLE |
TITLE |
String |
Setzt den Titel, der in der Titelzeile der Applikation angezeigt wird. Default: „CIB JView“ |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ICON |
ICON |
String |
Setzt das Icon, das in der Titelzeile der Applikation angezeigt wird. Der Name der Icon-Datei mit vollständiger Pfadangabe wird übergeben. Default: „/de/cib/view/resource/j_view_icon.gif“ |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_INIFILENAME |
INIFILENAME |
String |
Setzt den Namen der INI-Datei für die jView-Applikation. Default: „cibjView.ini“ Hinweis: Mit dieser Property wird der Name der CIB jView INI-Datei gesetzt. Falls als Wert „null“ gesetzt wird, wird keine INI-Datei verwendet. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_INPUTFILE |
INPUTFILE |
String |
Setzt den Namen des Dokuments, das beim Start der Applikation geöffnet wird. Default: Es wird kein Dokument geöffnet. Diese Property wird implizit gesetzt, wenn der Name des zu öffnenden Dokuments mit vollständiger Pfadangabe in der Kommandozeile angegeben wird. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_INPUT_BYTEARRAY |
INPUTBYTEARRAY |
String |
Setzt den Inhalt des Dokuments, das beim Start der Applikation geöffnet wird, als Byte-Array. Default (Property nicht gesetzt): Es wird kein Dokument geöffnet. Hinweis: Mit dieser Property wird ein Dokument geöffnet, das als Byte-Array übergeben wird. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_PRINTERNAME |
PRINTERNAME |
String |
Setzt den Namen des Druckers, auf den standardmäßig gedruckt werden soll. Default: Es wird der eingestellte Standarddrucker verwendet. Hinweis: Falls kein Standarddrucker eingestellt ist und der Druckdialog deaktiviert ist, erscheint ein Warnhinweis, dass nicht gedruckt werden kann. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_LICENSECOMPANY |
LICENSECOMPANY |
String |
Setzt den Namen der Firma aus der Firmenlizenz, die Sie beim Kauf erworben haben. Default: Es wird kein Firmenname für die Lizenz gesetzt. Hinweis: Diese Property muss gesetzt werden, andernfalls erscheint auf den Dokumentseiten ein Aufdruck, der auf die fehlende Lizenz verweist. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_LICENSEKEY |
LICENSEKEY |
String |
Setzt den Lizenzschlüssel aus der Firmenlizenz, die Sie beim Kauf erworben haben. Default: Es wird kein Lizenzschlüssel für die Lizenz gesetzt. Hinweis: Diese Property muss gesetzt werden, andernfalls erscheint auf den Dokumentseiten ein Aufdruck, der auf die fehlende Lizenz verweist. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_DIALOG_NAME |
dialogName |
String |
Setzt den Namen, der in der Titelzeile des Druckdialogs angezeigt wird. Default: „JPrintDialog“ Hinweis: Diese Property steht erst ab CIB jview 3.3.2b zur Verfügung |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_DRAG_AND_DROP_ENABLED |
dnd.Enabled |
Boolean |
Drag and drop von Dokumenten in das JView-Fenster aktivieren oder deaktivieren. TRUE (default): Drag and drop von Dokumenten ist aktiv (Kommandozeile: -dnd.Enabled 1). FALSE: Drag and drop von Dokumenten ist deaktiviert (Kommandozeile: -dnd.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_FUNCTION_KEY_ENABLED |
functionKey.Enabled |
Boolean |
Funktionstasten aktivieren oder deaktivieren. TRUE (default): Funktionstasten sind aktiv (Kommandozeile: - functionKey.Enabled 1). FALSE: Funktionstasten sind deaktiviert (Kommandozeile: - functionKey.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_PAGESIZE |
PAGESIZE |
String |
Angabe des Zoomfaktors bzw. der dargestellten Seitengröße. 1 (default): Seite wird in ganzer Breite im Fenster dargestellt (Kommandozeile: -PAGESIZE 1). 2: Jeweils zwei Seiten werden komplett im Fenster dargestellt (Kommandozeile: -PAGESIZE 2). 3: Jeweils eine Seite wird komplett im Fenster dargestellt (Kommandozeile: -PAGESIZE 3). 10-200: Zoomfaktor, in dem die Seiten dargestellt werden (z. B. Kommandozeile: -PAGESIZE 75). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_NAVIGATION_TREE_ENABLED |
navigationtree.Enabled |
Boolean |
Reiter zur Anzeige des Navigationsbaums aktivieren oder deaktivieren. TRUE (default): Navigationsbaum kann geöffnet werden
(Kommandozeile: FALSE: Navigationsbaum kann nicht geöffnet
werden (Kommandozeile: Hinweis: Falls die Anzeige des Navigationsbaums aktiviert ist, wird der Navigationsbaum für die Dokumentseiten im Fenster für die Dokumenteigenschaften unter dem Reiter „Navigationsbaum“ dargestellt. Siehe dazu auch die Property PROPERTY_TABPANE_ENABLED. |
Property-Bezeichnung |
Property-Text |
Typ |
ACTION_NAVIGATION_TREE_BUNDLE_SMALLICON |
JCibAction.navigationtree.bundle.SmallIcon |
String |
Icon für Bundle-Knoten im Navigationsbaum |
Property-Bezeichnung |
Property-Text |
Typ |
ACTION_NAVIGATION_TREE_DOCUMENT_SMALLICON |
JCibAction.navigationtree.document.SmallIcon |
String |
Icon für Dokument-Knoten im Navigationsbaum |
Property-Bezeichnung |
Property-Text |
Typ |
ACTION_NAVIGATION_TREE_PAGE_SMALLICON |
ACTION_NAVIGATION_TREE_PAGE_SMALLICON |
String |
Icon für Seite-Knoten im Navigationsbaum |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_THUMBNAILS_ENABLED |
thumbnails.Enabled |
Boolean |
Reiter zur Anzeige der Thumbnails aktivieren oder deaktivieren. TRUE (default): Thumbnailanzeige kann geöffnet werden
(Kommandozeile: FALSE: Thumbnailanzeige kann nicht geöffnet
werden (Kommandozeile: Hinweis: Falls die Thumbnail-Anzeige aktiviert ist, werden die Thumbnails für die Dokumentseiten im Fenster für die Dokumenteigenschaften unter dem Reiter „Miniatur“ dargestellt. Siehe dazu auch die Property PROPERTY_TABPANE_ENABLED. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_STRUCTURE_ENABLED |
structure.Enabled |
Boolean |
Reiter für Dokument „Dokumenteigenschaften“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -structure.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -structure.Enabled 0). Hinweis: Falls dieser Button aktiviert ist und ausgelöst
wird, werden die Dokumenteigenschaften in einem eigenen Fenster unter dem
Reiter „Eigenschaften“ dargestellt. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SEARCHTEXT_LOADING_CI_DOCUMENTS |
searchtext-loading-ci-documents |
String |
Checkbox „Automatische Suche“ in Dialogbox „Suchen“ de-/aktivieren und falls gewünscht, den Suchtext für die automatische Suche beim Laden eines Dokuments setzen. Null (default): Checkbox „Automatische Suche“ ist deaktiviert, die automatische Suche beim Laden eines Dokuments ist nicht möglich (Kommandozeile: Property-Text nicht vorhanden). Leerer String: Checkbox „Automatische Suche“ ist aktivierbar, aber nicht angekreuzt. Die automatische Suche beim Laden kann aktiviert werden, wenn die Checkbox angekreuzt und ein Suchtext eingegeben wird (Kommandozeile: -searchtext-loading-ci-documents ““). Nichtleerer String: Checkbox „Automatische Suche“ ist
aktivierbar und angekreuzt. Beim Laden wird die automatische Suche nach dem
angegebenen Suchtext durchgeführt Hinweis: Bei Image-Dokumenten kann keine Suche durchgeführt werden. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_RESTORE_WINDOW_BOUNDS_ENABLED |
restorewndbounds.Enabled |
Boolean |
Speichern und Wiederherstellen der letzten Fensterposition und -Größe erlauben. TRUE: Position und Größe des Hauptfensters werden beim Beenden gespeichert und beim Starten wiederhergestellt (Kommandozeile: -restorewndbounds.Enabled 1). FALSE (default): Position und Größe des Hauptfensters werden beim Beenden nicht gespeichert, beim Start wird die Position des Hauptfensters auf die linke obere Ecke des Bildschirms und die Größe auf 75% der Bildschirmgröße gesetzt. (Kommandozeile: -restorewndbounds.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_USER_PREFERENCES_FILE |
userprefsfile |
String |
Verwenden der optimierten Klassen und Bibliotheken beim Laden, Anzeigen und Drucken von Dokumenten im Image-(TIFF/JPEG)-Format. Nicht leerer String: Gibt den Pfad für die Datei mit den Benutzerpräferenzen an. (Kommandozeile: -userprefsfile <filepath+name>). Leerer String oder nicht angegeben: Die Datei mit den Benutzerpräferenzen wird im Benutzerverzeichnis unter dem Namen CibJView.prefs abgelegt. Hinweis: Diese Property muss als Kommandozeilenparameter angegeben werden weil deren Auswertung vor dem Lesen und Setzen der anderen Properties stattfindet. Hinweis: Aktuell wird in dieser Datei nur die Position und Größe des Hauptfensters gespeichert. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_USE_IMAGEPAGE |
useImagePage |
Boolean |
Verwenden der optimierten Klassen und Bibliotheken beim Laden, Anzeigen und Drucken von Dokumenten im Image-(TIFF/JPEG)-Format. TRUE (default): Optimiertes Laden, Anzeigen und Drucken von Dokumenten im Image-(TIFF/JPEG)-Format (Kommandozeile: -useImagePage.Enabled 1). FALSE: Laden, Anzeigen und Drucken von Dokumenten im Image-(TIFF/JPEG)-Format über CIB format und die Metafile-Objekte (Kommandozeile: -useImagePage.Enabled 0). Hinweis: Falls diese Property aktiviert ist, werden bei der Anzeige und beim Drucken die JAI-Bibliotheken jai_core.jar, jai_codec.jar und jai_imageio.jar verwendet. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_READ_DPI_FROM_IMAGE |
readDpiFromImage |
Boolean |
Legt fest, ob beim Laden, Anzeigen und Drucken von Bild-Dokumenten (TIFF/JPEG-Format) die DPI-Informationen aus der Imagedatei gelesen werden. TRUE: Beim Laden, Anzeigen und Drucken von Bild-Dokumenten (TIFF/JPEG-Format) werden die DPI-Informationen aus der Imagedatei gelesen (Kommandozeile: -readDpiFromImage 1). FALSE (default): Beim Laden, Anzeigen und Drucken von Bild-Dokumenten (TIFF/JPEG-Format) wird der DPI-Wert aus der Bildbreite unter Annahme des DIN A4-Formats berechnet, in diesem Fall wird der x- und y-DPI-Wert als gleich angenommen (Kommandozeile: -readDpiFromImage 0). Hinweis: Falls die Property auf TRUE gesetzt ist und die DPI-Informationen aus der Imagedatei nicht gelesen werden können, werden sie wie im Standardfall berechnet. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_PIXELTHRESHOLD_FOR_BLANK_IMAGES |
pixelthreshold.for.blank.images |
Integer |
Schwellwert in Pixeln für leere Seiten. Integer(0) (default): Schwellwert ist nicht gesetzt, d.h. eine leere Seite darf kein nichtweißes Pixel enthalten (Kommandozeile: -pixelthreshold.for.blank.images 0). Integer(int_value): Maximale Anzahl nichtweißer Pixel, die eine leere Seite enthalten darf (Kommandozeile: -pixelthreshold.for.blank.images <int_value>). Hinweis: Falls diese Property gesetzt und ungleich 0 ist, werden Image-Seiten, bei denen die Anzahl nichtweißer Pixel unterhalb dieses Schwellwertes liegt, als leere Seiten betrachtet. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ROTATE_ONLY_SELECTED_PAGE |
rotateOnlySelectedPage. |
Boolean |
Legt fest, ob nur die selektierte Seite wird rotiert wird. TRUE (default): Nur die selektierte Seite wird rotiert. FALSE: Alle sichtbaren Seiten werden rotiert. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_TRACEFILE |
tracefile |
String |
Durch diese Property wird der Pfad zu dem jView-Tracefile angegeben. TRUE: Die jView Traces werden in den angegebenen Trace-File geschrieben. FALSE (default): Die jView Trace-Ausgaben erfolgen auf die Konsole. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_TRACE_ENABLED |
trace.Enabled |
Boolean |
Durch diese Property werden die Trace-Ausgaben aktiviert. TRUE: Die Trace-Ausgaben erfolgen auf die Konsole. Falls die Property PROPERTY_TRACEFILE gesetzt ist, werden die jView Traces zusätzlich in den angegebenen Trace-File geschrieben. FALSE (default): Es erfolgen keine Trace-Ausgaben. Hinweis: Die Trace-Ausgaben können auch durch den Parameter -t in der Kommandozeile der Batchdatei aktiviert werden. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_TRACE_LEVEL |
traceLevel |
String |
Durch diese Property wird der Trace-Level für die Trace-Ausgaben angegeben. Als Trace-Level können folgende Zahlenwerte angegeben
werden: In der Kommandozeile können alternativ dazu folgende
Stringwerte angegeben werden (die Werte für traceLevel sind case-insensitiv): Wenn die Property nicht gesetzt ist, wird per Default der Trace-Level DEBUG verwendet. |
Property-Bezeichnung |
Property-Text |
Typ |
ICibMergeJob.PROPERTY_COMPRESSED |
COMPRESSED |
Boolean |
Legt fest, ob RTF-Dokumente beim Einmischen von Rec-Snippets (Inhalten von Editbereichen) mit CIB merge und beim anschließenden Speichern komprimiert werden oder nicht. TRUE: RTF-Dokumente werden beim Einmischen von Rec-Snippets und beim Speichern komprimiert. FALSE (default): RTF-Dokumente werden beim Einmischen von Rec-Snippets und beim Speichern nicht komprimiert. Hinweis: Diese Property wirkt sich nur auf RTF-Dokumente aus. Hinweis: Falls RTF-Dokumente komprimiert gespeichert wurden, können sie mit MS Word nicht mehr angezeigt werden, im JView dagegen schon, da sie beim Öffnen automatisch dekomprimiert werden. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SUPPORT_INFO_CREATE_ENABLED |
supportinfocreate.Enabled |
Boolean |
Legt fest, ob beim Beenden des Viewers Supportinformationen erzeugt werden. TRUE: Beim Beenden des Viewers werden Supportinformationen
erzeugt und im Unterverzeichnis „JViewLog“ des Java-Temp-Verzeichnisses gespeichert
("java.io.tmpdir"). FALSE (default): Beim Beenden des Viewers werden keine
Supportinformationen erzeugt. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SUPPORT_INFO_SAVE_ENABLED |
supportinfosave.Enabled |
Boolean |
Legt fest, ob im Informationsdialog für Korrespondenzdokumente ein Button "Supportinformationen speichern" erscheint. TRUE (default): Im Informationsdialog für
Korrespondenzdokumente erscheint ein Button "Supportinformationen
speichern". Durch Klick auf diesen Button können Supportinformationen
erzeugt und gespeichert werden. FALSE: Im Informationsdialog für
Korrespondenzdokumente erscheint kein Button "Supportinformationen
speichern". |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_DRAW_CHECKMASK_ONSTART_ENABLED |
DrawCheckMaskOnStart.Enabled |
Boolean |
Legt fest, ob sofort nach dem Laden eines Dokuments vorhandene Prüfschablonen angezeigt werden sollen. TRUE: Vorhandene Prüfschablonen werden sofort nach
dem Laden eines Dokuments angezeigt. FALSE (default): Vorhandene Prüfschablonen werden
erst nach Auslösen der Aktion „Prüfschablonen einblenden“ angezeigt. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_INFORMATION_AREA_ENABLED |
informationArea.Enabled |
Boolean |
Legt fest, ob Informationshinweise in einer Informationsleiste über dem Dokumentansichtsbereich angezeigt werden. Diese Informationshinweise verschwinden nach einem einstellbaren Zeitintervall automatisch. Der Standardwert für dieses Zeitintervall ist 3 Sekunden. TRUE: Informationshinweise werden in einer
Informationsleiste über dem Dokumentansichtsbereich eingeblendet. FALSE (default): Wie bisher wird der alte
Informationsdialog angezeigt, der durch den Benutzer mit einem Klick auf OK
bestätigt werden muss. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_INFORMATION_AREA_TIMEOUT |
informationAreaTimeOut |
String |
Legt das Zeitintervall (in Sekunden) fest, nach dem ein Informationshinweis automatisch wieder ausgeblendet wird. <String_value>: Anzahl Sekunden, nach denen ein
Informationshinweis automatisch wieder verschwindet. Der Standardwert ist 3
Sekunden. Hinweis: Der Informationsbereich kann jederzeit schon
vor Ablauf des Timeouts durch Klick auf das „x“ rechts oben im
Informationsbereich geschlossen werden. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_INFORMATION_AREA_BACKGROUND_COLOR |
informationAreaBackgroundColor |
String |
Legt die Hintergrundfarbe der Informationsleiste fest. <String_value>: Die Hintergrundfarbe, in der
die Informationsleiste angezeigt wird. Der Standardwert ist "255,255,128" (entspricht
Gelb). Hinweis: Farben können sowohl als RGB-Wert (z.B. "255,255,128") oder als Hexadezimal-Wert angegeben werden (z.B. „FFFF88“). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_OPEN_UNSUPPORTED_MIME_IN_STANDARDAPPLICATION |
unsupportedMimeType. |
Boolean |
Legt fest, ob Dokumente nicht unterstütztem Dokumentformat bei dem Versuch das Dokument zu laden in einer externen Applikation geöffnet werden können. TRUE: Dokumente mit nicht unterstütztem
Dokumentformat können in einer externen Applikation geöffnet werden. FALSE (default): Dokumente mit nicht unterstütztem
Dokumentformat können nicht in einer externen Applikation geöffnet werden. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_UNSUPPORTED_MIME_TYPES |
unsupportedMimeTypeList |
String |
Legt fest, welche Dokumente mit einem auch vom Viewer unterstützten Dokumentformat mit einer externen Applikation geöffnet werden. Wird die Property gesetzt, soll sie eine Liste der Dokumentformate beinhalten, die in einer externen Applikation geöffnet werden sollen. Die Angabe der Dokumentformate kann über den dedizierten offiziellen IANA MIME Media Type erfolgen oder über eine Dateiendung. Zusätzlich ist es möglich Versionsnummern zu den MIME-Types anzugeben. Die Angabe der Versionsnummer ist nur für bestimmte MIME Types (derzeit nur für PDF) möglich. Das Format der Liste ist <Extension | IANA MIME Type>[{Version[, Version]}][; nächster Eintrag]. Der Defaultwert der Property ist: „“, d.h. alle vom Viewer unterstützten Dokumente werden auch im Viewer geöffnet. Kommandozeile: -unsupportedMimeTypeList „<mime-type-list>“ Beispiel:
Es sollen docx sowie PDF Dateiformate in der Version 1.2 und 1.4 mit einer
externen Applikation geöffnet werden: Analoge Definition durch Benutzung des IANA MIME
Types für PDF : Die Strichpunkt-separierten Elemente der Liste werden case-insensitiv behandelt. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_HIGHLIGHT_SELECTED_PAGE |
highlightSelectedPage. |
Boolean |
Legt fest, ob die aktuelle Seite in der Dokumentansicht durch eine Markierung kenntlich gemacht wird. TRUE: Die aktuelle Seite in der Dokumentansicht wird markiert. FALSE (default): Die aktuelle Seite wird in der Dokumentansicht nicht markiert. Hinweis: In der Miniaturansicht wird die aktuelle Seite generell immer durch eine Markierung kenntlich gemacht. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_HIGHLIGHT_COLOR_SELECTED_PAGE |
highlightColorSelectedPage |
String |
Legt die Farbe der Markierung fest, in der die aktuelle Seite kenntlich gemacht wird. Die Property bezieht sich auf die Markierung der Seiten in der Miniaturansicht (Thumbnail Pages) und auf die Markierung der Seiten in der Dokumentansicht. Die Markierung in der Dokumentansicht ist nur wirksam, falls die Property PROPERTY_HIGHLIGHT_SELECTED_PAGE aktiviert ist. Die Farbe wird als RGB-Wert in diesem Format angegeben: "R;G;B;A" (Werte jeweils zwischen 0 und 255), wobei A den Alpha-Wert (Transparenz) angibt. Default ist Color.cyan mit Alpha 64 = "0;255;255;64", falls die Property nicht gesetzt ist. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_UPDATE_ZOOM_TO_CURRENT_PAGE_ENABLED |
updateZoomToCurrentPage. |
Boolean |
Legt fest, ob bei der Aktualisierung des Zoomfaktors bei den Zoomeinstellungen „Ganze Seite“ (ONE_PAGE_MODE) oder „Seitenbreite“ (ONE_PAGE_FULL_WIDTH_MODE) die aktuelle Seite oder alle vorhandenen Seiten berücksichtigt wird. TRUE: Der Zoomfaktor wird bei den Zoomeinstellungen „Ganze Seite“ oder „Seitenbreite“ auf die aktuelle Seite aktualisiert. Das bedeutet, dass der Zoomfaktor bei der Navigation zwischen den Seiten jeweils angepasst wird. FALSE (default): Bei der Berechnung des Zoomfaktors werden bei den Zoomeinstellungen „Ganze Seite“ oder „Seitenbreite“ alle vorhandenen Seiten einbezogen. Damit bleibt der Zoomfaktor bei der Navigation zwischen den Seiten gleich, er wird jedoch bei der Rotation von Seiten eventuell angepasst. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_CIB_FIELDS_SAVE_OPTION |
cibFieldsSaveOption |
String |
Diese Property steuert das Verhalten beim Speichern von RTF-Dokumenten mit enthaltenen CIB‑Feldern. Ist die Property nicht oder auf „0“ gesetzt, gilt das Standardverhalten. Folgende Werte können an die Property gesetzt werden: „0“ oder kein Wert (default): Es wird ein Dialogfenster angezeigt und der Benutzer gefragt, ob das Dokument ohne CIB-Felder gespeichert werden soll. „1“: Das Dokument wird mit CIB-Feldern gespeichert, es erscheint kein Dialogfenster. „2“: Das
Dokument wird ohne CIB-Felder gespeichert, es erscheint kein Dialogfenster. |
Properties zur Konfiguration der Menüleiste
Mit den folgenden Properties kann die gesamte Menüleiste oder einzelne Menüs aus- oder eingeschaltet werden. Setzen der Property auf TRUE bewirkt, dass die Menüleiste bzw. das Menü sichtbar und aktiv ist, FALSE bedeutet, das Element ist unsichtbar und deaktiviert.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_MENU_ENABLED |
menu.Enabled |
Boolean |
Gesamte Menüleiste aktivieren oder deaktivieren (Kommandozeile: -menu.Enabled 1 bzw. 0). TRUE (default): Menüleiste ist sichtbar und aktiv (Kommandozeile: -menu.Enabled 1). FALSE: Menüleiste ist unsichtbar und deaktiviert (Kommandozeile: -menu.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_FILE_MENU_ENABLED |
filemenu.Enabled |
Boolean |
Menü Datei aktivieren oder deaktivieren (Kommandozeile: -filemenu.Enabled 1 bzw. 0). TRUE (default): Menü Datei ist sichtbar und aktiv (Kommandozeile: -filemenu.Enabled 1). FALSE: Menü Datei ist unsichtbar und deaktiviert (Kommandozeile: -filemenu.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SHOW_LATEST_DOCUMENT_MENUBUTTON |
latestdocumentmenu |
Boolean |
Menüpunkt „Letzte Dateien“ im Menü Datei aktivieren
oder deaktivieren (Kommandozeile: TRUE (default): Menüpunkt „Letzte Dateien“ ist
sichtbar und aktiv (Kommandozeile: FALSE: Menüpunkt „Letzte Dateien“ ist unsichtbar und
deaktiviert (Kommandozeile: |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_VIEW_MENU_ENABLED |
viewmenu.Enabled |
Boolean |
Menü Ansicht aktivieren oder deaktivieren (Kommandozeile: -viewmenu.Enabled 1 bzw. 0). TRUE (default): Menü Ansicht ist sichtbar und aktiv (Kommandozeile: -viewmenu.Enabled 1). FALSE: Menü Ansicht ist unsichtbar und deaktiviert (Kommandozeile: -viewmenu.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_DOCUMENTMENU_ENABLED |
documentmenu.Enabled |
Boolean |
Menü Dokument aktivieren oder deaktivieren (Kommandozeile: -documentmenu.Enabled 1 bzw. 0). TRUE (default): Menü Dokument ist sichtbar und aktiv (Komm.-Zeile: -documentmenu.Enabled 1). FALSE: Menü Dokument ist unsichtbar und deaktiviert (Komm.-Zeile: -documentmenu.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_WINDOW_MENU_ENABLED |
windowmenu.Enabled |
Boolean |
Menü Fenster aktivieren oder deaktivieren (Kommandozeile: -windowmenu.Enabled 1 bzw. 0). TRUE (default): Menü Fenster ist sichtbar und aktiv (Kommandozeile: -windowmenu.Enabled 1). FALSE: Menü Fenster ist unsichtbar und deaktiviert (Kommandozeile: -windowmenu.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_HELPMENU_ENABLED |
helpmenu.Enabled |
Boolean |
Menü Hilfe aktivieren oder deaktivieren (Kommandozeile: -helpmenu.Enabled 1 bzw. 0). TRUE (default): Menü Hilfe ist sichtbar und aktiv (Kommandozeile: -helpmenu.Enabled 1). FALSE: Menü Hilfe ist unsichtbar und deaktiviert (Kommandozeile: -helpmenu.Enabled 0). |
Properties zur Konfiguration der Toolbar
Die folgende Property dient zur Positionierung der Toolbar.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_TOOLBAR_POSITION |
toolbar.position |
Integer |
Position der Toolbar setzen. SwingConstants.TOP (default): Toolbar-Position ist oben (Kommandozeile: - toolbar.position 1). SwingConstants.LEFT: Toolbar-Position ist unten (Kommandozeile: - toolbar.position 2). SwingConstants.BOTTOM: Toolbar-Position ist unten (Kommandozeile: - toolbar.position 3). SwingConstants.RIGHT: Toolbar-Position ist unten (Kommandozeile: - toolbar.position 4). |
Mit den folgenden Properties können einzelne Elemente der Toolbar oder die gesamte Toolbar aus- oder eingeblendet werden. Setzen der Property auf TRUE bewirkt, dass das Element sichtbar und aktiv ist, FALSE bedeutet, das Element ist unsichtbar und deaktiviert.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SHOWTOOL_ENABLED |
showtool.Enabled |
Boolean |
Gesamte Toolbar aktivieren oder deaktivieren. TRUE (default): Toolbar ist sichtbar und aktiv (Kommandozeile: -showtool.Enabled 1). FALSE: Toolbar ist unsichtbar und deaktiviert (Kommandozeile: -showtool.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_EXIT_ENABLED |
exit.Enabled |
Boolean |
Button für Datei „Beenden“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -exit.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -exit.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_OPEN_ENABLED |
open.Enabled |
Boolean |
Button für Datei „Öffnen“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -open.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -open.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SAVEAS_ENABLED |
saveas.Enabled |
Boolean |
Button für Datei „Speichern unter…“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -saveas.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -saveas.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_PRINT_ENABLED |
print.Enabled |
Boolean |
Button für Datei „Drucken und Faxen…“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -print.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -print.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SHOWJPRINTDIALOG |
SHOWJAVAPRINTDIALOG |
Boolean |
Anzeige des Java-Druckdialogs aktivieren oder deaktivieren. TRUE: Java-Druckdialog wird beim Drucken geöffnet (Komm.-Zeile: -SHOWJAVAPRINTDIALOG 1). FALSE (default): Nativer Druckdialog wird geöffnet (Komm.-Zeile: -SHOWJAVAPRINTDIALOG 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_PRINTDIALOG_ENABLED |
printdialog.Enabled |
Boolean |
Anzeige des Druckdialogs aktivieren oder deaktivieren. TRUE (default): Druckdialog wird beim Drucken geöffnet (Komm.-Zeile: -printdialog.Enabled 1). FALSE: Druckdialog wird beim Drucken nicht geöffnet
(Komm.-Zeile: -printdialog.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_TABPANE_ENABLED |
tabPane.Enabled |
Boolean |
Button für Toolbar-Icon „Dokumenteigenschaften“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -tabPane.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -tabPane.Enabled 0). Hinweis: Falls dieser Button aktiviert ist und ausgelöst wird, wird das Fenster „Dokumenteigenschaften“ geöffnet. Es enthält je nach Konfiguration verschiedene Reiter, in denen die Struktur bzw. die Eigenschaften des Dokuments angezeigt werden. Falls die Anzeige des Navigationsbaums aktiviert ist,
wird der Navigationsbaum für die Dokumentseiten in diesem Fenster unter dem
Reiter „Navigationsbaum“ dargestellt (siehe Property PROPERTY_NAVIGATIONTREE_ENABLED). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ZOOMIN_ENABLED |
zoomin.Enabled |
Boolean |
Button für Ansicht „Vergrößern“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -zoomin.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -zoomin.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ZOOMOUT_ENABLED |
zoomout.Enabled |
Boolean |
Button für Ansicht „Verkleinern“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -zoomout.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -zoomout.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ROTATELEFT_ENABLED |
rotateleft.Enabled |
Boolean |
Button für Seite „Gegen den Uhrzeigersinn drehen“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -rotateleft.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -rotateleft.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ROTATERIGHT_ENABLED |
rotateright.Enabled |
Boolean |
Button für Seite „Im Uhrzeigersinn drehen“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -rotateright.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -rotateright.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_GOTOPAGE_ENABLED |
gotopage.Enabled |
Boolean |
Button für Dokument „Gehe zu…“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -gotopage.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -gotopage.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_RELOAD_ENABLED |
reload.Enabled |
Boolean |
Button für Ansicht „Aktualisieren“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -reload.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -reload.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SEARCH_ENABLED |
search.Enabled |
Boolean |
Button für Dokument „Text suchen…“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -search.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -search.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_MAGNIFIER_ENABLED |
magnifier.Enabled |
Boolean |
Button für Dokument „Lupe…“ aktivieren oder deaktivieren. TRUE: Button ist sichtbar und aktiv (Kommandozeile: -magnifier.Enabled 1). FALSE (default): Button ist unsichtbar und deaktiviert (Kommandozeile: -magnifier.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ZOOM_ENABLED |
zoom.Enabled |
Boolean |
Button für Ansicht „Zoom auswählen…“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -zoom.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -zoom.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_EXPORT_ENABLED |
export.Enabled |
Boolean |
Button für Datei „Exportieren nach…“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -export.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -export.Enabled 0). |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_NAVIGATE_TO_RECFIELD_ENABLED |
navigateToRecfield.Enabled |
Boolean |
Button für „Navigieren zum nächsten REC-Bereich“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -navigateToRecfield.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -navigateToRecfield.Enabled 0). Hinweis: Falls die Property aktiviert ist, zeigt der Viewer die neue Schaltfläche „Navigieren zum nächsten REC-Bereich“ in seiner Toolbar an und der Benutzer kann durch Klick auf den Button zum nächsten REC-Bereich im Dokument navigieren. Der zu diesem REC-Feld gehörige Editierbereich wird im Viewer-Fenster angezeigt, falls notwendig wird der Dokumentinhalt dorthin gescrollt. Sofort danach wird der editierbare Bereich in einem separaten Fenster unterhalb des Viewer-Fensters geöffnet und der Inhalt des Editbereichs kann bearbeitet werden. Wurde vorher noch kein Editbereich geöffnet, wird bei Klick auf den Button zum ersten REC-Feld im Dokument navigiert, ebenso, wenn zuvor der letzte Editbereich geöffnet war. Die Reihenfolge der REC-Felder wird durch ihre Field-ID bestimmt, es wird also durch die REC-Felder in aufsteigender Reihenfolge ihrer Field-ID navigiert. Hinweis: Enthält das geladene Dokument kein REC-Feld, wird der Button ausgegraut dargestellt, ebenso wenn gerade ein Editbereich zur Bearbeitung geöffnet ist. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ABOUT_ENABLED |
about.Enabled |
Boolean |
Button für Hilfe „Info“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv (Kommandozeile: -about.Enabled 1). FALSE: Button ist unsichtbar und deaktiviert (Kommandozeile: -about.Enabled 0). |
Properties zur Konfiguration der Navigationsfelder
Mit den folgenden Properties können die einzelnen Elemente der Seiten-Navigationsfelder aus- oder eingeblendet werden. Setzen der Property auf TRUE bewirkt, dass das Element sichtbar und aktiv ist, FALSE bedeutet, das Element ist unsichtbar und deaktiviert.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_FIRSTPAGE_ENABLED |
firstpage.Enabled |
Boolean |
Button „Zur ersten Seite blättern“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv. FALSE: Button ist unsichtbar und deaktiviert. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_PREVIOUSPAGE_ENABLED |
previouspage.Enabled |
Boolean |
Button „Zur vorigen Seite blättern“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv. FALSE: Button ist unsichtbar und deaktiviert. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_NEXTPAGE_ENABLED |
nextpage.Enabled |
Boolean |
Button „Zur nächsten Seite blättern“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv. FALSE: Button ist unsichtbar und deaktiviert. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_LASTPAGE_ENABLED |
lastpage.Enabled |
Boolean |
Button „Zur letzten Seite blättern“ aktivieren oder deaktivieren. TRUE (default): Button ist sichtbar und aktiv. FALSE: Button ist unsichtbar und deaktiviert. |
Properties zur Konfiguration der Statuszeile
Mit den folgenden Properties können einzelne Elemente der Statuszeile oder die gesamte Statuszeile aus- oder eingeblendet werden. Setzen der Property auf TRUE bewirkt, dass das Element sichtbar und aktiv ist, FALSE bedeutet, das Element ist unsichtbar und deaktiviert.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SHOWSTATUS_ENABLED |
showstatus.Enabled |
Boolean |
Gesamte Statuszeile aktivieren oder deaktivieren. TRUE (default): Statuszeile ist sichtbar und aktiv. FALSE: Statuszeile ist unsichtbar und deaktiviert. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_STATUS_INFO_ENABLED |
statusinfo.Enabled |
Boolean |
Seiten-Info der Statuszeile aktivieren oder deaktivieren. TRUE (default): Seiten-Info der Statuszeile ist sichtbar und aktiv. FALSE: Seiten-Info der Statuszeile ist unsichtbar und deaktiviert. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_STATUS_PRINTER_ENABLED |
statusprinter.Enabled |
Boolean |
Drucker-Info der Statuszeile aktivieren oder deaktivieren. TRUE (default): Drucker-Info der Statuszeile ist sichtbar und aktiv. FALSE: Drucker-Info der Statuszeile ist unsichtbar und deaktiviert. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_STATUS_FILE_ENABLED |
statusfile.Enabled |
Boolean |
Datei-Info der Statuszeile aktivieren oder deaktivieren. TRUE (default): Datei-Info der Statuszeile ist sichtbar und aktiv. FALSE: Datei-Info der Statuszeile ist unsichtbar und deaktiviert. |
Properties zur Konfiguration von CIB jView&coSys
Mit den folgenden Properties können die Korrespondenzfunktionen von CIB jView&coSys konfiguriert werden.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_CORRESPONDENCE_STACK_DOCUMENTS_ENABLED |
correspondenceStackDocuments.Enabled |
Boolean |
Legt fest, ob die Funktion „Dokumente stapeln“ aus dem Viewer heraus möglich ist. TRUE: Das Stapeln von Dokumenten aus dem Viewer
heraus ist möglich. FALSE (default): Das Stapeln von Dokumenten aus dem
Viewer heraus ist nicht möglich. Hinweis: Falls die Property aktiviert ist, zeigt der Viewer die neue Schaltfläche „Dokument stapeln“ in seiner Toolbar an und der Benutzer kann das Dokument aus dem Viewer heraus stapeln. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_CORRESPONDENCE_RESTART_WORKFLOW_FOR_EDITABLE_DOCUMENTS |
cosys_restart_workflow_for_editable_documents |
Boolean |
Legt fest, ob die Funktion „Änderungen im Freigabeprozess ermöglichen“ aktiviert ist. TRUE: Editierbare Dokumente können im Freigabeprozess
editiert werden. Die Freitextfelder sind hervorgehoben, das Zusatzmodul
CIB jRec2 ist aktiviert. Desweiteren kann der aktuelle Workflow-Prozess
vom aktuellen Anwender neu initiiert werden. FALSE (default): Dokumente können im Workflow nicht
editiert werden. Die Freitextfelder sind nicht hervorgehoben und können somit
nicht editiert werden. Desweiteren ist es für den aktuell bestätigenden
Anwender nicht möglich den Freigabeprozess neu zu initiieren. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_CORRESPONDENCE_SHOW_INFORMATION_DIALOG_ENABLED |
Correspondenceshowinformation |
Boolean |
Gibt die Möglichkeit einen Informationsdialog für geladene Korrespondenz-Dokumente anzuzeigen. Unter anderem enthält dieser Dialog die aktuelle Vorgangsnummer für das Dokument. Dieser Dialog enthält zudem die Möglichkeit Support-Informationen für das aktuell geladene Dokument in einem verschlüsselten Archiv zu speichern. TRUE (default): Die Schaltfläche wird in der Toolbar angezeigt. FALSE: Die Schaltfläche wird in der Toolbar nicht angezeigt. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_CORRESPONDENCE_AUTOMATIC_PRINT |
cosys.automatic.print |
Boolean |
Gibt die Möglichkeit, sofort nach dem Laden von Korrespondenz-Dokumenten den Druckdialog anzuzeigen. TRUE: Sofort nach dem Laden eines Korrespondenz-Dokuments wird der Druckdialog angezeigt. FALSE (default): Der Druckdialog wird nicht nach dem Laden eines Korrespondenz-Dokuments angezeigt, sondern erst nach Auslösen der Aktion „Drucken“. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_CORRESPONDENCE_AUTOMATIC_PRINTER |
cosys.automatic.printer |
String |
Gibt die Möglichkeit, den ausgewählten Drucker anzugeben, falls sofort nach dem Laden von Korrespondenz-Dokumenten der Druckdialog angezeigt wird, wenn also die Property PROPERTY_CORRESPONDENCE_AUTOMATIC_PRINT auf TRUE gesetzt wurde. <String_value>: Gibt den Namen des Druckers an, der im Druckdialog ausgewählt wird. Falls der Wert nicht gesetzt oder leer ist, wird der zuletzt verwendete Drucker im Druckdialog angezeigt. |
Properties zur Konfiguration des CIB jRec Edit-Controls
Die folgende Property zeigt an, ob das CIB jRec Edit-Control innerhalb von JView aktivierbar ist oder nicht.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_REC_ENABLED |
rec.Enabled |
Boolean |
Gibt an, ob das Editieren der eingebetteten Textfelder erlaubt ist oder nicht. TRUE (default): Editieren ist erlaubt. FALSE: Editieren ist nicht erlaubt. Hinweis: Mit dieser Property wird konfiguriert, ob Editfelder aktivierbar sind oder nicht, falls das jRec Edit-Control in einer anderen Anwendung (z.B. CIB jView) eingebettet ist. Falls diese Property auf TRUE gesetzt ist, kann über die jView-Instanz mit der Methode getRec() eine jRec-Instanz geholt werden. Ob diese Methode eine Instanz von jRec oder jRec2 liefert, hängt davon ab, welche Komponente im Java-Classpath gefunden wird. Dabei wird zuerst nach jRec2 gesucht, dann nach jRec. Falls keine Komponente gefunden wird, sind Editfelder im JView nicht aktivierbar. // JRec-Instanz holen ohne zu starten |
Die nächste Property bestimmt das Verhältnis zwischen jView-Fenster und Editbereichs-Fenster.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SPLITPANE_DIVIDER_PERCENTAGE |
splitpane-divider-percentage |
Integer |
Legt den prozentualen Anteil des jView-Fensters zum gesamten Anzeigebereich bei geöffnetem Editbereich fest. Hinweis: Bei geöffnetem Editbereich ist der Anzeigebereich des Anwendungsfensters durch ein Split-Panel in ein JView-Fenster (Viewing-Bereich) und ein jRec-Fenster (=Editbereich) unterteilt. Standardmäßig ist das Verhältnis zwischen JView- und jRec-Fenster 2:1, das jView-Fenster nimmt also 66% des Anzeigebereichs ein. Diese Property wird beim Aufruf von JView wie die anderen Properties bei der jView-Instanz gesetzt und beim Öffnen des jRec-Fensters ausgewertet. |
Die folgende Property bestimmt, in welchem Zoom-Modus das Editbereichs-Fenster geöffnet wird.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_REC_TO_PAGEWIDTH_NO_ZOOM_ADJUST |
recToPagewidthNoZoomAdjust |
Boolean |
Legt fest, in welchem Zoom-Modus das Editbereichs-Fenster geöffnet wird. TRUE: Das Editbereichs-Fenster wird im Zoom-Modus „Seitenbreite“ geöffnet und passt sich den Zoomänderungen im JView-Fenster nicht an. FALSE (default): Das Editbereichs-Fenster wird mit demselben Zoomfaktor wie das JView-Fenster geöffnet und passt sich den Zoomänderungen im JView-Fenster an. |
Die folgende Property bestimmt, ob beim Schließen des
Anwendungsfensters, in das der JView eingebettet ist, eine Abfrage erscheint,
ob das geänderte Dokument gespeichert werden soll.
Die Property steuert auch eine eventuelle Abfrage, ob die Änderungen übernommen
werden sollen, falls gerade ein Rec-Editbereich bearbeitet wird und dann das
Anwendungsfenster geschlossen wird.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_ASK_SAVE_CLOSING_WINDOW |
askSaveClosingWindow |
Boolean |
Legt fest, ob beim Schließen des Anwendungsfensters eine Frage erscheint, ob Änderungen übernommen und gespeichert werden sollen. TRUE (default): Beim Schließen des Anwendungsfensters erscheint eine Dialogbox mit der Frage, ob die Änderungen gespeichert werden sollen. Ebenso erscheint, falls ein Rec-Editbereich geöffnet ist, eine Dialogbox mit der Frage, ob die Änderungen übernommen werden sollen. FALSE: Beim Schließen des Anwendungsfensters erscheint keine Dialogbox mit der Frage, ob die Änderungen gespeichert werden sollen. Ebenso erscheint keine Frage, ob die Änderungen übernommen werden sollen, wenn ein Rec-Editbereich geöffnet ist. Hinweis: Diese Property dient dazu, ein schnelles Beenden ohne Rückfragen zu ermöglichen. Hinweis: Diese Property wird nur beim Schließen der Anwendung über das x-Icon rechts oben in der Fenstertitelleiste wirksam, nicht wenn die JView-Anwendung über den Menüeintrag „Beenden“ oder das Toolbar-Icon „Beenden“ geschlossen wird. |
Die folgenden Properties bestimmen, ob namensgleiche Editbereiche bei Änderung eines Editbereichs mit demselben Inhalt gefüllt werden sollen, und ob ein Warnhinweis angezeigt wird, wenn ein Editbereich geändert wurde und namensgleiche Editbereiche dadurch ebenfalls geändert wurden.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_NAMED_REC_SNIPPETS_ENABLED |
namedRecSnippets.Enabled |
Boolean |
Legt fest, ob namensgleiche Editbereiche bei Änderung eines Editbereichs mit demselben Inhalt gefüllt werden sollen. TRUE (default): Bei Änderung eines Editbereichs werden namensgleiche Editbereiche mit demselben Inhalt gefüllt. FALSE: Bei Änderung eines Editbereichs werden namensgleiche Editbereiche nicht mit demselben Inhalt gefüllt. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_NAMED_REC_SNIPPETS_WARNING_ENABLED |
namedRecSnippetsWarning.Enabled |
Boolean |
Legt fest, ob ein Warnhinweis angezeigt wird, wenn ein Editbereich geändert wurde und namensgleiche Editbereiche dadurch ebenfalls geändert wurden. TRUE: Wenn bei Änderung eines Editbereichs namensgleiche Editbereiche mit demselben Inhalt gefüllt werden, wird ein Warnhinweis angezeigt. FALSE (default): Wenn bei Änderung eines Editbereichs namensgleiche Editbereiche mit demselben Inhalt gefüllt werden, wird kein Warnhinweis angezeigt. |
Die folgenden Properties bestimmen, ob und mit welcher transparenten Hintergrundfarbe Editbereiche im JView angezeigt werden. Es gibt eine Property, mit der die Anzeige der Hintergrundfarbe aktiviert wird. Außerdem kann die Hintergrundfarbe für die Editbereiche im normalen und im aktivierten Zustand durch zwei weitere Properties getrennt angegeben werden.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_RECAREA_SHOW_BACKGROUND_COLOR |
recarea.show.background.color |
Boolean |
Legt fest, ob Editbereiche im JView mit einer Hintergrundfarbe dargestellt werden. TRUE: Editbereiche werden im JView mit einer Hintergrundfarbe angezeigt. Die Hintergrundfarbe für den normalen und aktivierten Zustand kann durch eigene Properties festgelegt werden. FALSE (default): Editbereiche werden im JView ohne Hintergrundfarbe angezeigt. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_RECAREA_COLOR_NORMAL |
recarea.color.normal |
String |
String Property zur Angabe der Hintergrundfarbe von Editbereichen im jView, wenn sie nicht geöffnet sind, also normal dargestellt werden. Die Property ist nur wirksam, falls die Property PROPERTY_RECAREA_SHOW_BACKGROUND_COLOR aktiviert ist. Die Farbe wird als RGB-Wert in diesem Format angegeben: "R;G;B;A" (Werte jeweils zwischen 0 und 255), wobei A den Alpha-Wert (Transparenz) angibt. Default ist Color.lightgray mit Alpha 64 = "192;192;192;64", falls die Property nicht gesetzt ist. |
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_RECAREA_COLOR_ACTIVE |
recarea.color.active |
String |
String Property zur Angabe der Hintergrundfarbe von Editbereichen im jView, wenn sie geöffnet sind, also als aktiviert dargestellt werden. Die Property ist nur wirksam, falls die Property PROPERTY_RECAREA_SHOW_BACKGROUND_COLOR aktiviert ist. Die Farbe wird als RGB-Wert in diesem Format angegeben: "R;G;B;A" (Werte jeweils zwischen 0 und 255), wobei A den Alpha-Wert (Transparenz) angibt. Default ist Color.darkgray mit Alpha 64 = "64;64;64;64", falls die Property nicht gesetzt ist. |
Alle weiteren jRec-Properties müssen direkt bei der jRec-Instanz gesetzt werden. Mit ihnen kann das Verhalten des eingebetteten jRec Edit-Controls gesteuert werden. Dazu muss über die jView-Instanz eine jRec-Instanz geholt werden. Siehe dazu den Beispielcode bei der Beschreibung der Property PROPERTY_JREC_INIFILENAME.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_JREC_INIFILENAME |
JREC_INIFILENAME |
String |
Setzt den Namen der INI-Datei für die eingebettete jRec-Applikation. Default: „cibjRec.ini“ Hinweis: Mit dieser Property wird der Name der CIB jRec INI-Datei gesetzt. Falls als Wert „null“ gesetzt wird, wird keine INI-Datei verwendet. Diese Property muss direkt bei der jRec-Instanz gesetzt werden, beispielsweise durch folgenden Code: // JRec-Instanz holen ohne zu starten
|
Properties zur Konfiguration des CIB jScan Controls
Die folgende Property zeigt an, ob das CIB jScan Control innerhalb von jView aktivierbar ist oder nicht.
Property-Bezeichnung |
Property-Text |
Typ |
PROPERTY_SCAN_ENABLED |
scan.Enabled |
Boolean |
Gibt an, ob das Scan-Control aktivierbar ist oder nicht. TRUE: Das Scan-Control ist aktivierbar. FALSE (default): Das Scan-Control ist nicht aktivierbar. Hinweis: Mit dieser Property wird konfiguriert, ob das Scan-Control aktivierbar ist oder nicht, falls CIB jScan in einer anderen Anwendung (z.B. CIB jView) eingebettet ist. |
Alle weiteren jScan-Properties müssen bei der jView-Instanz gesetzt werden. Dies ist notwendig, da bei jedem Öffnen des Scan-Panels eine Instanz der Scan-Applikation CIB jScan erzeugt wird, an die diese Properties übertragen werden. Mit ihnen kann das Verhalten des eingebetteten jScan-Controls gesteuert werden.
Die Beschreibung aller Properties für CIB jScan finden Sie im Dokument TechnischerLeitfadenCIBjScan.pdf
Properties zur Aktivierung und Konfiguration von CIB jView&form
Die folgende Property legt fest an, ob die Bearbeitung von Formularen innerhalb von jView möglich ist oder nicht.
Property-Bezeichnung |
Property-Text |
Typ |
Default |
PROPERTY_FORM_ENABLED |
form.Enabled |
Boolean |
False |
Diese Property legt fest, ob die Formular-Komponente aktiviert oder deaktiviert ist. TRUE: In der Menüleiste erscheint das Menü „Formular“ und in der Toolbarleiste erscheint der Button „Formularfelder de/aktivieren”. Das Formular kann bearbeitet werden, wenn die Formularfelder aktiviert sind. FALSE: Das Menü „Formular“ und der Toolbar-Button „Formularfelder de/aktivieren” wird nicht angeboten. Das Formular kann nicht bearbeitet werden. |
Property-Bezeichnung |
Property-Text |
Typ |
Default |
PROPERTY_RTF_FORM_ENABLED |
rtfForm.Enabled |
Boolean |
False |
Diese Property legt fest, ob die Formular-Komponente für RTF-Formulare aktiviert oder deaktiviert ist. TRUE: RTF-Formulare können bearbeitet werden. Derzeit werden nur Checkboxen in RTF-Formularen unterstützt. FALSE: RTF-Formulare können nicht bearbeitet werden. |
Alle weiteren Form-Properties können ebenfalls bei der JView-Instanz gesetzt werden. Mit ihnen kann das Verhalten der Formular-Komponente gesteuert werden.
Die Beschreibung aller Properties für CIB jView&form finden Sie im Dokument TechnischerLeitfadenCIBjViewform.pdf
Properties zur Aktivierung und Konfiguration von CIB jView&sign
Die folgende Property legt fest an, ob die elektronische Signatur von Formularen innerhalb von JView möglich ist oder nicht.
Property-Bezeichnung |
Property-Text |
Typ |
Default |
PROPERTY_SIGN_ENABLED |
sign.Enabled |
Boolean |
False |
Diese Property legt fest, ob die Signatur-Komponente aktiviert oder deaktiviert ist. TRUE: Im Menü erscheint der Menüeintrag „Signatur“ und in der Toolbarleiste erscheinen die Buttons „n Feld(er) zu signieren“ und „Signaturfeld aufziehen”. FALSE: Der Menüeintrag „Signatur“ und die Toolbar-Buttons „n Feld(er) zu signieren“ und „Signaturfeld aufziehen” werden nicht angeboten. |
Alle weiteren Sign-Properties können ebenfalls bei der JView-Instanz gesetzt werden. Mit ihnen kann das Verhalten der Signatur-Komponente gesteuert werden.
Die Beschreibung aller Properties für CIB jView&sign finden Sie im Dokument TechnischerLeitfadenCIBjViewsign.pdf
Batch-Dateien zum Starten des Viewers
Nach der Installation des JView-Pakets unter Windows (Auspacken der zip-Datei) stehen im Verzeichnis CibjView die folgenden Batch-Dateien zum Starten des jView zur Verfügung:
- run.bat Startet den jView ohne JComod-IPC
- run_ipc-bat Startet den jView mit JComod-IPC
Voraussetzung für die Ablauffähigkeit des jView ist:
- JRE6 oder JDK6 oder neuere Java-Versionen sind installiert
- Die System-Umgebungsvariable JAVA_HOME zeigt auf die Java-Installation, etwa
- JAVA_HOME=C:\Programme\Java\jre6 (unter Windows XP und Vista)
- JAVA_HOME=C:\Program Files (x86)\Java\jre6 (unter Windows7 - 64bit)
- Alternativ dazu kann auch ganz oben in der Batch-Datei der Pfad auf das JAVA_HOME Verzeichnis gesetzt werden:
- set JAVA_HOME=C:\Programme\Java\jre6 (unter Windows XP und Vista)
- set JAVA_HOME=C:\Program Files (x86)\Java\jre6 (unter Windows7 - 64bit)
Steuerung durch Aufrufparameter
CIB jView kann auch durch Aufrufparameter in der Batch-Datei (run.bat bzw. run.sh) gesteuert werden.
Dabei gilt die übliche Syntax für Kommandozeilenparameter:
-<Parametername-1> <Parameterwert-1> … -<Parametername-n> <Parameterwert-n>
Die Namen der Parameter entsprechen den internen Namen der Properties. Falls nicht bekannt, können sie durch den Support erfragt werden.
Zusätzlich gibt es folgende Aufrufparameter:
<Dateiname> Name des Dokuments, das beim Start der Applikation geladen werden soll (ohne vorausgehendes Minuszeichen)
-t Aktiviert die Ausgabe von Trace-Informationen in die Konsole
-tracefile <Dateiname> Aktiviert die Ausgabe von Trace-Informationen in die angegebene Datei
-traceLevel
<Level> Setzt das Trace-Level
auf den angegebenen Wert
(mögliche Werte sind ERROR | WARN | INFO | DEBUG | DEBUGALL)
Für die Java Virtual Machine (JVM) müssen die folgenden Properties (VM-Parameter) gesetzt werden:
Java Library-Pfad -Djava.library.path=lib/win32 (bei
Windows)
-Djava.library.path=lib/linux32 (bei Linux)
JAI-Bibliotheken -Dcom.sun.media.jai.disableMediaLib=true (muss = true gesetzt sein)
Jcomod-IPC an/aus -Dde.cib.jcomod.useIpc=true (optional, Default = false)
Hinweis zu JComod-IPC:
Wird JComod-IPC zusammen mit Webstart auf einem Windows Vista System ausgeführt, muss darauf geachtet werden, dass alle für die Applikation notwendigen Dateien in einem Verzeichnis gespeichert werden, welches kein Integrity gesetzt hat. Hintergrund ist der unter Windows Vista verwendete Integrity Mechanismus zur Einschränkung der Rechte für Applikationen.
Benutzereinstellungen speichern und laden
Im JView besteht die Möglichkeit, verschiedene benutzerspezifische Einstellungen nach dem Beenden zu speichern und sie nach dem erneuten Start des JView wieder herzustellen.
Durch die Property ICibApplication.PROPERTY_USER_PREFERENCES_FILE wird der Name der Datei angegeben, in der die Benutzereinstellungen gespeichert werden sollen. Das Setzen dieser Property ist Voraussetzung, dass überhaupt Benutzereinstellungen gespeichert werden.
Die untenstehende Tabelle zeigt, welche Benutzereinstellungen gespeichert werden können. Darüber hinaus kann durch weitere Properties festgelegt werden, ob einzelne Einstellungen gespeichert werden oder nicht.
Benutzereinstellung |
Property zum (De-)Aktivieren des Speicherns |
Fensterposition und -größe |
ICibApplication.PROPERTY_RESTORE_WINDOW_BOUNDS_ENABLED |
Toolbar-Position |
Wird derzeit immer gespeichert, falls UserPreferences aktiviert |
Seitenansicht einblenden |
Wird derzeit immer gespeichert, falls UserPreferences aktiviert |
Selektierter Reiter in der Seitenansicht |
Wird derzeit immer gespeichert, falls UserPreferences aktiviert |
Lupen-Position |
Wird derzeit immer gespeichert, falls UserPreferences aktiviert |
Im Folgenden werden drei Code-Beispiele gezeigt, wie die Benutzereinstellungen gespeichert und wieder geladen werden können.
Methode die beim Beenden des Viewers die Einstellungen speichert, sie muss im Exit-Hook des Viewers aufgerufen werden:
public static void closeViewer(JCibView viewer) {
if (viewer == null)
return;
// store last frame position and size
UserPreferences userPrefs = viewer.getUserPreferences();
Boolean saveFramePos = (Boolean) viewer.getProperty(
ICibApplication.PROPERTY_RESTORE_WINDOW_BOUNDS_ENABLED);
if (userPrefs != null && saveFramePos != null &&
saveFramePos.booleanValue())
userPrefs.saveWindowBounds(viewer.getFrame());
// store toolbar location
if (userPrefs != null) {
String loc = viewer.getUI().getToolbarPosition();
if (loc != null)
userPrefs.saveToolbarLocation(loc);
}
// store tab pane status
if (userPrefs != null) {
boolean isOpen = viewer.getUI().isToolPanelVisible();
userPrefs.saveTabPaneStatus(isOpen);
}
// store selected tab
if (userPrefs != null) {
String selectedTab = viewer.getUI().getSelectedTab();
userPrefs.saveSelectedTab(selectedTab);
}
// close magnifier – stores implicitely last magnifier position
JCibDocumentPane pane = (JCibDocumentPane) viewer
.getOutputComponent();
if (pane != null) {
if (pane.getMagnifierController() != null &&
pane.getMagnifierController().isActive())
pane.getMagnifierController().deactivate();
}
viewer.stop();
}
Variablen und Methode zum Laden der bisherigen Einstellungen beim Starten des Viewers:
// definition of constants and variables
/** line separator */
public static final String SEPARATOR = System.getProperty("file.separator");
/** the user home directory */
public static String user_home = System.getProperty("user.home");
/** the cib specific user directory for ini and property files */
public static String cib_user_dir;
/** the user specific property file */
public static String cib_user_file;
// init the user preferences files
cib_user_dir = user_home+"Anwendungsdaten"+SEPARATOR+"cib"+SEPARATOR;
File user_dir = new File(cib_user_dir);
if (!user_dir.exists())
user_dir.mkdir();
cib_user_file = cib_user_dir+"CibJView.prefs";
public static void initializeViewer(JCibView viewer) {
// init user preferences and set the user preferences file
viewer.setProperty(ICibApplication.PROPERTY_USER_PREFERENCES_FILE,
cib_user_file);
viewer.setProperty(
ICibApplication.PROPERTY_RESTORE_WINDOW_BOUNDS_ENABLED,
Boolean.TRUE);
viewer.setProperty(
ICibApplication.PROPERTY_MAGNIFIER_ENABLED,
Boolean.TRUE);
// restore toolbar location
UserPreferences userPrefs = viewer.getUserPreferences();
int toolbarPos = SwingConstants.TOP; // default
if (userPrefs != null) {
Integer newToolbarPos = userPrefs.getToolbarLocation();
if (newToolbarPos != null)
toolbarPos = newToolbarPos.intValue();
}
viewer.setProperty(ICibApplication.PROPERTY_TOOLBAR_POSITION, new Integer(toolbarPos));
// restore tab pane status
if (userPrefs != null) {
String selectedTab = "";
Boolean isOpen = userPrefs.getIsTabpaneOpen();
if (isOpen == null || isOpen) {
isOpen = Boolean.TRUE;
selectedTab = userPrefs.getSelectedTabOnStart();
}
else {
isOpen = Boolean.FALSE;
}
// restore selected tab - if empty no tab is opened
viewer.setProperty(
ICibApplication.PROPERTY_SHOW_TAB_ON_START,
selectedTab);
}
// last magnifier position is implicitely restored when
// magnifier is opened and user preferences are active
}
Methode die beim Erzeugen des Viewer-Frames die bisherigen Einstellungen lädt:
public static JFrame createViewerFrame(final JCibView viewer) {
// get the user preferences to restore the main frame position
UserPreferences userPrefs = viewer.getUserPreferences();
Boolean restoreFramePosEnabled = (Boolean) viewer.getProperty(
ICibApplication.PROPERTY_RESTORE_WINDOW_BOUNDS_ENABLED);
// load last frame's position if configured
Rectangle t_framePos = null;
if (userPrefs != null && restoreFramePosEnabled != null &&
restoreFramePosEnabled.booleanValue())
t_framePos = userPrefs.getFrameBounds();
if (t_framePos == null) {
// Set position/size to 0,0 and 75% of screen width/height.
Dimension screenSize = Toolkit.getDefaultToolkit()
.getScreenSize();
t_framePos = new Rectangle(0, 0,
(int) (screenSize.getWidth() * 0.75),
(int) (screenSize.getHeight() * 0.75));
}
// We need a frame to put the Viewer inside.
GraphicsConfiguration gc = GraphicsUtilities
.getGraphicsConfiguration(t_framePos);
// create the frame on screen according to the frame's last position
final JFrame t_frame = new JFrame(gc);
// restore the frame's last position
t_frame.setLocation(t_framePos.x, t_framePos.y);
t_frame.setSize(t_framePos.width, t_framePos.height);
viewer.setFrame(t_frame);
return t_frame;
}
- Erzeugen einer Instanz von jCibView -> cibJView = new JCibView();
- initializeViewer(cibJView);
- createViewerFrame(cibJView);
- cibJView.start();
- cibJView.load();
Code-Beispiel:
import javax.swing.JFrame;
import de.cib.gui.framework.ICibApplication;
import de.cib.view.*;
import com.cib.comod.jobs.*;
public class JViewTest {
public static void main(java.lang.String[] args) {
JCibView cibJView = new JCibView();
cibJView.setProperty(ICibApplication.PROPERTY_INPUTFILE, "test.pdf");
initializeViewer(cibJView);
JFrame myFrame = createViewerFrame(cibJView);
myFrame.setTitle("JView Test");
cibJView.start();
cibJView.load();
myFrame.getContentPane().add(cibJView);
myFrame.setVisible(true);
}
}
Einbindung des CIB jView in Java
In den unteren Abschnitten finden Sie kurze Codebeispiele für den Aufruf von CIB jView. Vergewissern Sie sich, dass die CIB office module sich im Library Path der Java Virtual Machine (JVM) und die benötigten JAR-Dateien in einem Classpath-Verzeichnis befinden.
Einbindung in eine HTML-SeiteEinbindung in eine Java Swing-Applikation
▸ Integration in Java-Applikation (JFrame) und Anzeige einer PDF-Datei
▸ Integration in Java-Applikation (JDialog) und Anzeige einer TIFF-Datei
▸ Integration in eine Java-Applikation mit gleichzeitiger Integration eines eigenen Druckdialoges
▸ Integration des CIB jView&rec in eine Java-Applikation und Anzeige einer RTF-Datei mit eingebettetem Rec-Edit-Feld
▸ Einmischen von RTF-Snippets in ein RTF-Dokument mit CIB merge und Speichern in ein anderes RTF-Dokument
▸ Interface CustomCloseDialogInfo zum Austausch von Informationen für den CustomCloseDialogCallback
Einbindung in eine Java SWT-Applikation
Einbindung in eine HTML-Seite
HTML-Seite mit einem integrierten jView-Applet
<html>
<head>
<title>CIB JView</title>
</head>
<body>
<applet archive="CibJView.jar, ComodJobs.jar"
code="de/cib/view/JCibViewApplet.class" width="100%" height="100%" ID="Applet1">
</applet>
</body>
</html>
Einbindung in eine Java Swing-Applikation
Integration in Java-Applikation (JFrame) und Anzeige einer PDF-Dateiimport javax.swing.JFrame;
import de.cib.gui.framework.ICibApplication;
import de.cib.view.*;
import com.cib.comod.jobs.*;
public class JViewFrame {
public static void main(java.lang.String[] args) {
JFrame myFrame = new JFrame();
myFrame.setTitle("Test Frame");
myFrame.setSize(800, 800);
JCibView t_CIBView = new JCibView();
t_CIBView.setFrame(myFrame);
t_CIBView.setProperty(ICibApplication.PROPERTY_INPUTFILE,
"test.pdf");
// keine Menüleiste anzeigen
t_CIBView.setProperty(ICibApplication.PROPERTY_MENU_ENABLED,
new Boolean(false));
t_CIBView.setProperty(ICibApplication.PROPERTY_EXPORT_ENABLED,
new Boolean(false));
// keine JView Ini-Datei schreiben
t_CIBView.setProperty(ICibApplication.PROPERTY_INIFILENAME,
null);
t_CIBView.setProperty(ICibApplication.PROPERTY_TITLE,
new String("JCibView!"));
t_CIBView.start();
t_CIBView.load();
myFrame.getContentPane().add(t_CIBView);
myFrame.setVisible(true);
}
}
Integration in Java-Applikation (JDialog) und Anzeige einer TIFF-Datei
import javax.swing.JDialog;
import de.cib.gui.framework.ICibApplication;
import de.cib.view.*;
import com.cib.comod.jobs.*;
public class JViewDialog {
public static void main(java.lang.String[] args) {
JDialog myDialog = new JDialog ();
myDialog.setTitle("Test Dialog");
myDialog.setSize(800, 800);
JCibView t_CIBView = new JCibView();
t_CIBView.setFrame(myDialog);
t_CIBView.setProperty(ICibApplication.PROPERTY_INPUTFILE,
"example.tif");
// keine Menüleiste anzeigen
t_CIBView.setProperty(ICibApplication.PROPERTY_MENU_ENABLED,
new Boolean(false));
t_CIBView.setProperty(ICibApplication.PROPERTY_EXPORT_ENABLED,
new Boolean(false));
// keine JView Ini-Datei schreiben
t_CIBView.setProperty(ICibApplication.PROPERTY_INIFILENAME,
null);
t_CIBView.setProperty(ICibApplication.PROPERTY_TITLE,
new String("JCibView!"));
t_CIBView.start();
t_CIBView.load();
myDialog.getContentPane().add(t_CIBView);
myDialog.setVisible(true);
}
}
Integration in eine Java-Applikation mit gleichzeitiger Integration eines eigenen Druckdialoges
Nachfolgendes Codebeispiel zeigt die Möglichkeit, einen selbstprogrammierten Druckdialog in den JView einzuhängen.
Wichtige Hinweise:
Wenn Sie die Klasse JCibPrinterJob erweitern, dann überschreiben Sie bitte die Methode print() nicht, oder wenn dies unvermeidlich ist, stellen Sie sicher, dass Sie die Methode super() aufrufen, sonst kann das Drucken nicht erwartungsgemäß erfolgen.
JCibView geht standardmäßig davon aus, dass die aktuelle Seite gedruckt werden soll. Er setzt intern die CIB Format Property ICibFormatJob.PROPERTY_CURRENTPAGE auf die aktuelle Seitenzahl. Um ein unerwünschtes Drucken nur der aktuellen Seite zu vermeiden, setzen Sie die Property PROPERTY_CURRENTPAGE auf -1.
import javax.swing.JFrame;
import de.cib.view.*;
import com.cib.comod.jobs.*;
import com.cib.comod.tools.print.*;
import java.awt.*;
public class JViewFrame {
public static void main(java.lang.String[] args) {
JFrame myFrame = new JFrame();
myFrame.setTitle("Test Frame");
myFrame.setSize(300,300);
JCibView t_CIBView = new JCibView (myFrame);
// Mein eigener PrinterJob soll benutzt werden
System.setProperty("com.cib.tools.print.printerjob",
"my.package.MyPrinterJob");
t_CIBView.setProperty(ICibApplication.PROPERTY_INPUTFILE,
"test.rtf");
t_CIBView.setProperty(ICibApplication.PROPERTY_SEARCH_ENABLED,
new Boolean(false));
// keine Menüleiste anzeigen
t_CIBView.setProperty(ICibApplication.PROPERTY_MENU_ENABLED,
new Boolean(false));
t_CIBView.setProperty(ICibApplication.PROPERTY_EXPORT_ENABLED,
new Boolean(false));
t_CIBView.setProperty(ICibApplication.PROPERTY_TITLE,
new String("JCibView!"));
t_CIBView.start();
t_CIBView.load();
myFrame.getContentPane().add(t_CIBView);
myFrame.setVisible(true);
}
}
package my.package;
import com.cib.comod.tools.print.*;
public class MyPrinterJob extends JCibPrinterJob {
// Die Methode gibt true zurück, wenn gedruckt werden soll,
// andernfalls false.
public boolean printDialog()
{
// HHHHHHhhier fügen Sie Ihren Dialog-Code ein.
.......
}
}
Integration des CIB jView&rec in eine Java-Applikation und Anzeige einer RTF-Datei mit eingebettetem Rec-Edit-Feld
import java.awt.BorderLayout;
import java.awt.Toolkit;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
import de.cib.gui.framework.ICibApplication;
import de.cib.gui.framework.JCibApplication;
import de.cib.jRec.ICibRecApplication;
import de.cib.util.trace.Trace;
public class JCibViewTest {
public static final String TEST_FILENAME = "test_rec.rtf";
public static void main(java.lang.String[] args) {
// We need a frame to put the Viewer inside.
JFrame t_frame = new JFrame();
// We need a viewer.
final JCibView t_CIBView = new JCibView();
t_CIBView.setFrame(t_frame);
// Prepare frame.
t_frame.setDefaultCloseOperation(
WindowConstants.DO_NOTHING_ON_CLOSE);
try {
t_frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
//call stop for clean ups!
t_CIBView.stop();
}
});
}
catch (Throwable exception) {
Trace.trace("Prepare frame " , exception);
}
t_frame.setSize(
(int)(Toolkit.getDefaultToolkit().getScreenSize()
.getWidth()) * 0.75),
(int) ((Toolkit.getDefaultToolkit()
.getScreenSize().getHeight()) * 0.75));
t_frame.getContentPane().setLayout(new BorderLayout());
// Prepare viewer.
// Set input file (optional)
t_CIBView.setProperty(ICibApplication.PROPERTY_INPUTFILE, TEST_FILENAME);
// Enable JCibRec in JCibView (optional).
t_CIBView.setProperty(ICibRecApplication.PROPERTY_REC_ENABLED, Boolean.TRUE);
JCibApplication t_cibRec = t_CIBView.getRec();
// Set constraints to allowed font list (optional).
if (t_cibRec != null) {
String fontList = "Times New Roman; Arial; Courier New";
t_CIBView.getRec().setProperty(
ICibRecApplication.PROPERTY_ALLOWED_FONT_LIST,
fontList);
}
// Use native print dialog (optional).
// Otherwise the Java print dialog is used.
t_CIBView.setProperty(
ICibApplication.PROPERTY_SHOWJPRINTDIALOG,
Boolean.FALSE);
t_CIBView.start();
t_CIBView.load();
t_frame.getContentPane().add(t_CIBView, BorderLayout.CENTER);
t_frame.setVisible(true);
}
}
Einmischen von RTF-Snippets in ein RTF-Dokument mit CIB merge und Speichern in ein anderes RTF-Dokument
import java.io.File;
import java.util.HashMap;
import java.util.Iterator;
import com.cib.comod.jobs.ICibMergeJob;
import com.cib.comod.jobs.JCibMergeJob;
import de.cib.gui.framework.CibMessageDialog;
import de.cib.gui.util.trace.Trace;
import de.cib.metafile.Messages;
import de.cib.view.modules.jRec.jRecController;
import de.cib.webdesk.utilities.IOUtilities;
public class JMergeTestRunner {
/**
* Mischt zwei RTF-Snippets mit CIB merge in Input-RTF-Datei ein.
* Das Ergebnis wird in die angegebene Output-Datei gespeichert.
*/
public static void main(java.lang.String[] args) {
// Set file path to example files - must be adjusted
String path = "C:/Testfiles/";
// Create RTF document by CIB merge job with merge/recombine.
File inputFile = new File (path + "merge-Test-In.rtf");
File outputFile = new File (path + "merge-Test-Out.rtf");
String snippet0 = new String (path + "jRec_snippet_0");
String snippet1 = new String (path + "jRec_snippet_1");
HashMap<Integer, String> rtfControls = new HashMap<Integer, String>();
rtfControls.put(new Integer(0), new String(IOUtilities.readFile(snippet0)));
rtfControls.put(new Integer(1), new String(IOUtilities.readFile(snippet1)));
try {
// Merge-Job initialisieren
JCibMergeJob t_mergeJob = new JCibMergeJob();
t_mergeJob.initialize();
if (t_mergeJob != null && t_mergeJob.isInitialized()) {
File snippetDir = new File( jRecController.getSnippetDir());
// Merge Error log in Snippet-Verzeichnis speichern
File logFile = null;
if (snippetDir.exists()) {
logFile = new File(jRecController.getSnippetDir() + "merge_recombine.log");
if (logFile.exists())
logFile.delete();
t_mergeJob.setProperty( ICibMergeJob.PROPERTY_ERRORFILE, logFile.getAbsolutePath());
t_mergeJob.setProperty( ICibMergeJob.PROPERTY_VERBOSE, "5+all+source");
}
t_mergeJob.setProperty( ICibMergeJob.PROPERTY_INPUTFILE, inputFile.getAbsolutePath());
if (outputFile.exists())
outputFile.delete();
t_mergeJob.setProperty( ICibMergeJob.PROPERTY_OUTPUTFILE, outputFile.getAbsolutePath());
t_mergeJob.setProperty( ICibMergeJob.PROPERTY_EXTENDEDREF, Boolean.TRUE);
t_mergeJob.setProperty( ICibMergeJob.PROPERTY_CHARFORMAT, "auto");
t_mergeJob.setProperty( ICibMergeJob.PROPERTY_KEEP, "unresolved-ref");
// Neuer Parameter, um vorhandene Field-Results // bei nicht vorhandener Datenversorgung zu erhalten.
t_mergeJob.setProperty(
"--field-results=", "keepswitch"); "--field-results=", "keepswitch");
// RTF Snippets, die den Inhalt im RTF ersetzen. // Können auch von Platte kommen.
if (rtfControls != null) {
Integer fieldID;
String snippetName;
Iterator<Integer> it = rtfControls.keySet().iterator();
while (it.hasNext()) {
fieldID = it.next();
String rtfPassage = rtfControls.get(fieldID);
if (rtfPassage != null) {
// Set property value for rtf snippet
snippetName = "cibrec-snippet" + fieldID.intValue() + ".rtf=";
t_mergeJob.setProperty( "--directory-set=", snippetName + rtfPassage);
}
}
}
// Merge-Job ausführen
t_mergeJob.execute();
// Fehlerbehandlung
int t_Error = ((Integer)t_mergeJob.getProperty(
ICibMergeJob.PROPERTY_ERROR)).intValue(); ICibMergeJob.PROPERTY_ERROR)).intValue();
if (t_Error != 0) {
// Fehler beim Ausführen des Merge-Jobs
String t_Errortext =
(String)t_mergeJob.getProperty(
ICibMergeJob.PROPERTY_ERRORTEXT); (String)t_mergeJob.getProperty( ICibMergeJob.PROPERTY_ERRORTEXT);
Trace.traceln("Error executing merge job: " + t_Error + " " + t_Errortext);
}
}
} catch (Exception e) {
// Fehlerbehandlung
Trace.traceln("Save RTF + fields with CIB merge failed.\n"
+ "Please check the installation of cibmrg32.dll.");
e.printStackTrace();
}
}
}
Interface CustomCloseDialogInfo zum Austausch von Informationen für den CustomCloseDialogCallback
Die Datenstruktur CustomCloseDialogInfo dient zum Austausch von Informationen für den CustomCloseDialogCallback, sie ist im CIB jView (package de.cib.view.modules) definiert.
Interface CustomCloseDialogInfo:
package de.cib.view.modules;
/**
* Interface describing the data structure for custom close dialog
* with information to form and sign fields.
*
*/
public interface CustomCloseDialogInfo {
/**
* Returns whether the form is changed or not
* @return boolean flag
*/
boolean isFormChanged();
/**
* Gets the unsigned mandatory field count
* @return number of unsigned mandatory fields
*/
int getUnsignedMandatorySignatureCount();
/**
* Gets the unsigned optional field count
* @return number of unsigned optional fields
*/
int getUnsignedOptionalSignatureCount();
}
Das Interface CustomCloseDialogCallback ist im CIB jView (package de.cib.view.modules) definiert und umfasst folgende Methoden.
Interface CustomCloseDialogCallback:
package de.cib.view.modules;
/**
* Interface defining the callback for custom close dialog
*
*/
public interface CustomCloseDialogCallback {
/**
* Method showCustomCloseDialog
* @param customCloseDialogInfo interface to read form&sign data
* @return returnCode of CustomCloseDialog
* 0 - Yes
* 1 - No
* 2 - Cancel
*/
public int showCustomCloseDialog(
CustomCloseDialogInfo customCloseDialogInfo);
}
Der Aufrufer muss sich dazu bei der JView-Instanz als Listener anmelden, dazu ein Code-Beispiel:
// register CustomCloseDialogCallback
viewer.setCustomCloseDialogCallback(new CustomCloseDialogCallback() {
@Override
public int showCustomCloseDialog(
CustomCloseDialogInfo customCloseDialog) {
int unsignedMandatoryCount = customCloseDialog
.getUnsignedMandatorySignatureCount();
int unsignedOptionalCount = customCloseDialog
.getUnsignedOptionalSignatureCount();
int unsignedSignatureCount = unsignedMandatoryCount
+ unsignedOptionalCount;
String message = "";
if (customCloseDialog.isFormChanged())
message = "Das Dokument enthält Änderungen an Formularfeldern, die noch nicht gespeichert wurden.";
if (unsignedSignatureCount > 0) {
if (!message.isEmpty())
message += "\n";
message += "Das Dokument enthält noch %1 zu signierende(s) Feld(er), %2 Pflicht- und %3 optionale Feld(er).";
message = message.replaceFirst("%1",
String.valueOf(unsignedSignatureCount)); String.valueOf(unsignedSignatureCount));
message = message.replaceFirst("%2", String.valueOf(unsignedMandatoryCount));
message = message.replaceFirst("%3", String.valueOf(unsignedOptionalCount));
}
if (message.isEmpty())
return JCibOptionPane.YES_OPTION;
message += "\nMöchten Sie die Bearbeitung trotzdem beenden?";
return JCibOptionPane.showYesNoDialog( viewer, message,"Rückfrage"));
}
});
Methode zur Abfrage des Rückgabewerts beim Beenden-Dialog:
In der Viewer-Instanz (Klasse JCibView) ist die Methode getCloseAction() verfügbar, die den Rückgabewert des Beenden-Dialogs liefert.
int closeDialogButton = viewer.getCloseAction();
Mögliche Werte (siehe auch CustomCloseDialogCallback):
0 – Ja
1 – Nein
2 – Abbrechen
-1 – Vorbelegung (Dialog wurde nicht geöffnet)
Code-Beispiel für die Abfrage des gedrückten Buttons nach dem Beenden im Exit-Hook:
viewer.setExitHook(new Runnable() {
public void run() {
// do post processing here
viewer.stop();
// unregister FormFieldCallback Listener
viewer.setFormFieldCallback(null);
// Unregister SignFieldCallback Listener
viewer.setSignFieldCallback(null);
int closeDialogButton = viewer.getCloseAction();
System.out.println("The following button was pressed in the close dialog: " + closeDialogButton);
} });
Einbindung in eine Java SWT-Applikation
Um JCibView in eine SWT-Applikation zu integrieren, müssen einige Besonderheiten beachtet werden. JCibView muss in einen AWT-Frame eingebettet werden, der als oberstes Objekt eine Instanz von RootPaneContainer (z.B. JApplet) enthält. In diesen RootPaneContainer werden dann alle weiteren Komponenten eingefügt.
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Frame;
import javax.swing.JApplet;
import javax.swing.SwingUtilities;
import org.eclipse.swt.SWT;
import org.eclipse.swt.awt.SWT_AWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import de.cib.gui.framework.ICibApplication;
import de.cib.view.JCibView;
public class JViewInSWT {
public static final String TEST_FILENAME = "c://tmp//testdoc.rtf";
public static void main(String[] args)
{
final Display display = new Display();
final Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
shell.setText("Shell for JView integriert in SWT");
Composite composite = new Composite(shell, SWT.NO_BACKGROUND
| SWT.EMBEDDED);
/*
* Set a Windows specific AWT property that prevents
* heavyweight components from erasing their background.
* Note that this is a global property and cannot be scoped.
* It might not be suitable for your application.
*/
try {
System.setProperty("sun.awt.noerasebackground", "true");
}
catch (NoSuchMethodError error) {
}
/* Create and set up frame */
// Use an embedded frame for SWT/AWT integration
Frame frame = SWT_AWT.new_Frame(composite);
final JCibView viewer = new JCibView(frame);
// SWT/AWT needs a RootPaneContainer as intermediate object,
// for example a JApplet object.
JApplet applet = new JApplet();
frame.add(applet);
// Get content pane from the applet
Container contentPane = applet.getContentPane();
contentPane.setLayout(new BorderLayout());
contentPane.add(viewer.getJMenuBar(), BorderLayout.NORTH);
contentPane.add(viewer, BorderLayout.CENTER);
contentPane.setVisible(true);
frame.pack();
frame.setVisible(true);
viewer.setVisible(true);
// Set input file (optional)
viewer.setProperty(ICibApplication.PROPERTY_INPUTFILE, TEST_FILENAME);
viewer.setProperty(ICibApplication.PROPERTY_TITLE, "CIB JView integriert in SWT");
viewer.start();
viewer.load();
shell.open();
// Grab focus after shell open using invokeLater
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
viewer.grabFocus();
}
});
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
}