[PATCH] Init: Added new file TOCPreview.py

Javier Fernandez (via Code Review) gerrit at gerrit.libreoffice.org
Mon Mar 25 03:46:40 PDT 2013


Hi,

I have submitted a patch for review:

    https://gerrit.libreoffice.org/3006

To pull it, you can do:

    git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/06/3006/1

Init: Added new file TOCPreview.py

Change-Id: I77749fd794308da81096b95acc57613562d76f8b
---
A wizards/com/sun/star/wizards/web/TOCPreview.py
1 file changed, 65 insertions(+), 0 deletions(-)



diff --git a/wizards/com/sun/star/wizards/web/TOCPreview.py b/wizards/com/sun/star/wizards/web/TOCPreview.py
new file mode 100644
index 0000000..ad27afd
--- /dev/null
+++ b/wizards/com/sun/star/wizards/web/TOCPreview.py
@@ -0,0 +1,65 @@
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# This file incorporates work covered by the following license notice:
+#
+#   Licensed to the Apache Software Foundation (ASF) under one or more
+#   contributor license agreements. See the NOTICE file distributed
+#   with this work for additional information regarding copyright
+#   ownership. The ASF licenses this file to you under the Apache
+#   License, Version 2.0 (the "License"); you may not use this file
+#   except in compliance with the License. You may obtain a copy of
+#   the License at http://www.apache.org/licenses/LICENSE-2.0 .
+#
+import traceback
+
+from .Process import Process
+from ..ui.event.Task import Task
+from ..common.FileAccess import FileAccess
+from ..common.Properties import Properties
+from ..common.Desktop import Desktop
+from ..common.UCB import UCB
+
+# This class both copies necessary files to
+# a temporary directory, generates a temporary TOC page,
+# and opens the generated html document in a web browser,
+# by default "index.html" (unchangeable).
+# <br/>
+# Since the files are both static and dynamic (some are always the same,
+# while other change according to user choices)
+# I divide this tasks to two: all necessary
+# static files, which should not regularily update are copied upon
+# instanciation.
+# The TOC is generated in refresh(...);
+
+class TOCPreview:
+
+    def __init__(self, xmsf_, settings, res, tempDir_, _xFrame):
+        self.xFrame = _xFrame
+        self.xmsf = xmsf_
+        self.resources = res
+        self.fileAccess = FileAccess(self.xmsf)
+        self.tempDir = tempDir_
+        self.loadArgs = self.loadArgs(FileAccess.connectURLs(self.tempDir, "/index.html"))
+        self.openHyperlink = Desktop.getDispatchURL(self.xmsf, ".uno:OpenHyperlink")
+        self.xDispatch = Desktop.getDispatcher(self.xmsf, self.xFrame, "_top", self.openHyperlink)
+        self.ucb = UCB(self.xmsf)
+
+        Process.copyStaticImages(self.ucb, settings, self.tempDir)
+
+    def refresh(self, settings):
+        doc = settings.cp_DefaultSession.createDOM1()
+        layout = settings.cp_DefaultSession.getLayout()
+        task = Task("", "", 10000);
+        Process.generate1(self.xmsf, layout, doc, self.fileAccess, self.tempDir, task)
+        Process.copyLayoutFiles(self.ucb, self.fileAccess, settings, layout, self.tempDir)
+        self.xDispatch.dispatch(self.openHyperlink, tuple(self.loadArgs))
+
+    def loadArgs(self, url):
+        props = Properties()
+        props["URL"] = url
+        return props.getProperties1()

-- 
To view, visit https://gerrit.libreoffice.org/3006
To unsubscribe, visit https://gerrit.libreoffice.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I77749fd794308da81096b95acc57613562d76f8b
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: master
Gerrit-Owner: Javier Fernandez <javier.fgb at gmail.com>



More information about the LibreOffice mailing list