summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarrell Anderson <humanreadable@yahoo.com>2013-03-02 22:09:16 -0600
committerDarrell Anderson <humanreadable@yahoo.com>2013-03-02 22:09:16 -0600
commit194cf519e45c2c80035014dad11cb7fb245accc4 (patch)
tree58885e314962a2d5ce8f1e18b76ff8880d86417f
parentd2151830b92cef57979150ed058c5f28fc4aef35 (diff)
downloadtdegraphics-194cf519e45c2c80035014dad11cb7fb245accc4.tar.gz
tdegraphics-194cf519e45c2c80035014dad11cb7fb245accc4.zip
Add GUI check box control whether to retainn kpdf metadata.
This resolves bug report 1215.
-rw-r--r--kghostview/kghostview.kcfg15
-rw-r--r--kpdf/conf/dlggeneral.ui20
-rw-r--r--kpdf/conf/kpdf.kcfg5
-rw-r--r--kpdf/core/document.cpp117
-rw-r--r--kviewshell/kviewshell.kcfg3
5 files changed, 91 insertions, 69 deletions
diff --git a/kghostview/kghostview.kcfg b/kghostview/kghostview.kcfg
index 362191f3..441e1bb3 100644
--- a/kghostview/kghostview.kcfg
+++ b/kghostview/kghostview.kcfg
@@ -41,11 +41,16 @@
<whatsthis></whatsthis>
<default>true</default>
</entry>
- <entry name="WatchFile" type="Bool">
- <label>Watch File</label>
- <whatsthis>If this is on, then the file will be reloaded whenever it changes on disk</whatsthis>
- <default>false</default>
- </entry>
+ <entry name="WatchFile" type="Bool">
+ <label>Watch File</label>
+ <whatsthis>If this is on, then the file will be reloaded whenever it changes on disk</whatsthis>
+ <default>false</default>
+ </entry>
+ <entry name="RetainDocumentData" type="Bool">
+ <label>Retain document viewing data</label>
+ <whatsthis>If this is on, then document viewing options are retained</whatsthis>
+ <default>true</default>
+ </entry>
</group>
<group name="Ghostscript">
<entry name="Interpreter" type="String">
diff --git a/kpdf/conf/dlggeneral.ui b/kpdf/conf/dlggeneral.ui
index 430f3dfb..5348111d 100644
--- a/kpdf/conf/dlggeneral.ui
+++ b/kpdf/conf/dlggeneral.ui
@@ -85,12 +85,20 @@
</property>
</widget>
<widget class="TQCheckBox">
- <property name="name">
- <cstring>kcfg_WatchFile</cstring>
- </property>
- <property name="text">
- <string>&amp;Watch file</string>
- </property>
+ <property name="name">
+ <cstring>kcfg_WatchFile</cstring>
+ </property>
+ <property name="text">
+ <string>&amp;Watch file</string>
+ </property>
+ </widget>
+ <widget class="TQCheckBox">
+ <property name="name">
+ <cstring>kcfg_RetainDocumentData</cstring>
+ </property>
+ <property name="text">
+ <string>&amp;Retain document viewing data</string>
+ </property>
</widget>
</vbox>
</widget>
diff --git a/kpdf/conf/kpdf.kcfg b/kpdf/conf/kpdf.kcfg
index d980fd95..9f54b412 100644
--- a/kpdf/conf/kpdf.kcfg
+++ b/kpdf/conf/kpdf.kcfg
@@ -54,7 +54,10 @@
<default>true</default>
</entry>
<entry key="ObeyDRM" type="Bool" >
- <default>true</default>
+ <default>true</default>
+ </entry>
+ <entry key="RetainDocumentData" type="Bool" >
+ <default>true</default>
</entry>
</group>
<group name="MainView" >
diff --git a/kpdf/core/document.cpp b/kpdf/core/document.cpp
index 8b5a1d4f..f97be985 100644
--- a/kpdf/core/document.cpp
+++ b/kpdf/core/document.cpp
@@ -1404,65 +1404,68 @@ void KPDFDocument::saveDocumentInfo() const
if ( d->docFileName.isNull() )
return;
- TQFile infoFile( d->xmlFileName );
- if (infoFile.open( IO_WriteOnly | IO_Truncate) )
+ if ( KpdfSettings::retainDocumentData() )
{
- // Create DOM
- TQDomDocument doc( "documentInfo" );
- TQDomElement root = doc.createElement( "documentInfo" );
- doc.appendChild( root );
-
- // Add bookmark list to DOM
- TQDomElement bookmarkList = doc.createElement( "bookmarkList" );
- root.appendChild( bookmarkList );
-
- for ( uint i = 0; i < pages_vector.count() ; i++ )
- {
- if ( pages_vector[i]->hasBookmark() )
- {
- TQDomElement page = doc.createElement( "page" );
- page.appendChild( doc.createTextNode( TQString::number(i) ) );
-
- bookmarkList.appendChild( page );
- }
- }
-
- // Add general info to DOM
- TQDomElement generalInfo = doc.createElement( "generalInfo" );
- root.appendChild( generalInfo );
-
- // <general info><history> ... </history> saves history up to 10 viewports
- TQValueList< DocumentViewport >::iterator backIterator = d->viewportIterator;
- if ( backIterator != d->viewportHistory.end() )
- {
- // go back up to 10 steps from the current viewportIterator
- int backSteps = 10;
- while ( backSteps-- && backIterator != d->viewportHistory.begin() )
- --backIterator;
-
- // create history root node
- TQDomElement historyNode = doc.createElement( "history" );
- generalInfo.appendChild( historyNode );
-
- // add old[backIterator] and present[viewportIterator] items
- TQValueList< DocumentViewport >::iterator endIt = d->viewportIterator;
- ++endIt;
- while ( backIterator != endIt )
- {
- TQString name = (backIterator == d->viewportIterator) ? "current" : "oldPage";
- TQDomElement historyEntry = doc.createElement( name );
- historyEntry.setAttribute( "viewport", (*backIterator).toString() );
- historyNode.appendChild( historyEntry );
- ++backIterator;
- }
- }
-
- // Save DOM to XML file
- TQString xml = doc.toString();
- TQTextStream os( &infoFile );
- os << xml;
+ TQFile infoFile( d->xmlFileName );
+ if (infoFile.open( IO_WriteOnly | IO_Truncate) )
+ {
+ // Create DOM
+ TQDomDocument doc( "documentInfo" );
+ TQDomElement root = doc.createElement( "documentInfo" );
+ doc.appendChild( root );
+
+ // Add bookmark list to DOM
+ TQDomElement bookmarkList = doc.createElement( "bookmarkList" );
+ root.appendChild( bookmarkList );
+
+ for ( uint i = 0; i < pages_vector.count() ; i++ )
+ {
+ if ( pages_vector[i]->hasBookmark() )
+ {
+ TQDomElement page = doc.createElement( "page" );
+ page.appendChild( doc.createTextNode( TQString::number(i) ) );
+
+ bookmarkList.appendChild( page );
+ }
+ }
+
+ // Add general info to DOM
+ TQDomElement generalInfo = doc.createElement( "generalInfo" );
+ root.appendChild( generalInfo );
+
+ // <general info><history> ... </history> saves history up to 10 viewports
+ TQValueList< DocumentViewport >::iterator backIterator = d->viewportIterator;
+ if ( backIterator != d->viewportHistory.end() )
+ {
+ // go back up to 10 steps from the current viewportIterator
+ int backSteps = 10;
+ while ( backSteps-- && backIterator != d->viewportHistory.begin() )
+ --backIterator;
+
+ // create history root node
+ TQDomElement historyNode = doc.createElement( "history" );
+ generalInfo.appendChild( historyNode );
+
+ // add old[backIterator] and present[viewportIterator] items
+ TQValueList< DocumentViewport >::iterator endIt = d->viewportIterator;
+ ++endIt;
+ while ( backIterator != endIt )
+ {
+ TQString name = (backIterator == d->viewportIterator) ? "current" : "oldPage";
+ TQDomElement historyEntry = doc.createElement( name );
+ historyEntry.setAttribute( "viewport", (*backIterator).toString() );
+ historyNode.appendChild( historyEntry );
+ ++backIterator;
+ }
+ }
+
+ // Save DOM to XML file
+ TQString xml = doc.toString();
+ TQTextStream os( &infoFile );
+ os << xml;
+ }
+ infoFile.close();
}
- infoFile.close();
}
void KPDFDocument::slotTimedMemoryCheck()
diff --git a/kviewshell/kviewshell.kcfg b/kviewshell/kviewshell.kcfg
index 3114929c..b292b1ec 100644
--- a/kviewshell/kviewshell.kcfg
+++ b/kviewshell/kviewshell.kcfg
@@ -11,6 +11,9 @@
<entry key="WatchFile" type="Bool">
<default>true</default>
</entry>
+ <entry key="RetainDocumentData" type="Bool">
+ <default>true</default>
+ </entry>
<entry key="Zoom" type="Double">
<default>1.0</default>
</entry>