summaryrefslogtreecommitdiffstats
path: root/kpdf
diff options
context:
space:
mode:
Diffstat (limited to 'kpdf')
-rw-r--r--kpdf/conf/dlggeneral.ui20
-rw-r--r--kpdf/conf/kpdf.kcfg5
-rw-r--r--kpdf/core/document.cpp117
3 files changed, 78 insertions, 64 deletions
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()