diff --git a/src/libprs500/gui2/lrf_renderer/bookview.py b/src/libprs500/gui2/lrf_renderer/bookview.py
new file mode 100644
index 0000000000..8b12a5a5f7
--- /dev/null
+++ b/src/libprs500/gui2/lrf_renderer/bookview.py
@@ -0,0 +1,35 @@
+## Copyright (C) 2007 Kovid Goyal kovid@kovidgoyal.net
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 2 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License along
+## with this program; if not, write to the Free Software Foundation, Inc.,
+## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+from PyQt4.QtGui import QGraphicsView
+from PyQt4.QtCore import QSize
+
+class BookView(QGraphicsView):
+
+ MINIMUM_SIZE = QSize(400, 500)
+
+ def __init__(self, *args):
+ QGraphicsView.__init__(self, *args)
+ self.preferred_size = self.MINIMUM_SIZE
+
+ def minimumSizeHint(self):
+ return self.MINIMUM_SIZE
+
+ def sizeHint(self):
+ return self.preferred_size
+
+ def resize_for(self, width, height):
+ self.preferred_size = QSize(width, height)
+
\ No newline at end of file
diff --git a/src/libprs500/gui2/lrf_renderer/main.py b/src/libprs500/gui2/lrf_renderer/main.py
index 361203b465..6c8441d0ff 100644
--- a/src/libprs500/gui2/lrf_renderer/main.py
+++ b/src/libprs500/gui2/lrf_renderer/main.py
@@ -110,7 +110,6 @@ class Main(MainWindow, Ui_MainWindow):
self.closed = False
-
def configure(self, triggered):
opts = cPickle.loads(str(QSettings().value('ebook viewer options', QVariant(cPickle.dumps(self.opts))).toString()))
d = Config(self, opts)
@@ -165,8 +164,13 @@ class Main(MainWindow, Ui_MainWindow):
def parsed(self):
if not self.renderer.aborted and self.renderer.lrf is not None:
- self.graphics_view.setMinimumSize(self.renderer.lrf.device_info.width+5,
- self.renderer.lrf.device_info.height)
+ width, height = self.renderer.lrf.device_info.width, \
+ self.renderer.lrf.device_info.height
+ self.graphics_view.resize_for(width, height)
+ desktop = QCoreApplication.instance().desktop()
+ screen_height = desktop.availableGeometry().height()
+ height = min(screen_height, height+50)
+ self.resize(self.size().width(), height)
self.setWindowTitle(self.renderer.lrf.metadata.title + ' - ' + __appname__)
self.document_title = self.renderer.lrf.metadata.title
if self.opts.profile:
diff --git a/src/libprs500/gui2/lrf_renderer/main.ui b/src/libprs500/gui2/lrf_renderer/main.ui
index d86ee71165..3ffc9e0eb8 100644
--- a/src/libprs500/gui2/lrf_renderer/main.ui
+++ b/src/libprs500/gui2/lrf_renderer/main.ui
@@ -6,7 +6,7 @@
0
0
614
- 832
+ 702
@@ -55,7 +55,7 @@
0
-
-
+
true
@@ -292,6 +292,11 @@
QLineEdit
+
+ BookView
+ QGraphicsView
+
+