[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/work/kviewshell-0.7/kviewshell
From: Wilfried Huss <Wilfried.Huss () gmx ! at>
Date: 2006-03-12 11:28:24
Message-ID: 1142162904.602084.22518.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 517835 by whuss:
Beginning of the removal of the old single threaded DocumentRenderer-API.
M +0 -4 plugins/dvi/dviRenderer.h
M +24 -55 shell/documentPageCache.cpp
M +0 -14 shell/documentRenderer.h
--- branches/work/kviewshell-0.7/kviewshell/plugins/dvi/dviRenderer.h #517834:517835
@@ -100,10 +100,6 @@
virtual bool supportsTextSearch() const {return true;}
- /** The DVI plugin is not multithreaded because it uses
- the QPainter API. */
- virtual bool isMultiThreaded() const { return true; }
-
bool showPS() { return _postscript; }
int curr_page() { return current_page+1; }
virtual bool isValidFile(const QString& fileName) const;
--- branches/work/kviewshell-0.7/kviewshell/shell/documentPageCache.cpp \
#517834:517835 @@ -210,15 +210,13 @@
if (thumbnail)
{
- if (renderer->isMultiThreaded())
- {
- // Prerender previous page
- prerenderThumbnail(pageNumber - 1, width);
- // Prerender next page
- prerenderThumbnail(pageNumber + 2, width);
+ // Prerender previous page
+ prerenderThumbnail(pageNumber - 1, width);
+ // Prerender next page
+ prerenderThumbnail(pageNumber + 2, width);
- prerenderThumbnail(pageNumber, width);
- }
+ prerenderThumbnail(pageNumber, width);
+
return true;
}
else
@@ -251,23 +249,22 @@
if (page)
{
- if (renderer->isMultiThreaded())
+ // In continuous facing viewmode prerender the previous 2 and following 2 pages.
+ // In the other viewmodes prerender only the previous page and the following \
page. + int k = 1;
+ if (KVSPrefs::viewMode() == KVSPrefs::EnumViewMode::ContinuousFacing)
{
- int k = 1;
- if (KVSPrefs::viewMode() == KVSPrefs::EnumViewMode::ContinuousFacing)
- {
- k = 2;
- }
+ k = 2;
+ }
- for (int i = 2; i >= 1; i--)
- {
- // Prerender previous page
- prerender(pageNumber - i);
- // Prerender next page
- prerender(pageNumber + i);
- }
- prerender(pageNumber);
+ for (int i = 2; i >= 1; i--)
+ {
+ // Prerender previous page
+ prerender(pageNumber - i);
+ // Prerender next page
+ prerender(pageNumber + i);
}
+ prerender(pageNumber);
return true;
}
else
@@ -320,7 +317,7 @@
{
if (resolutionInDPI > 0.0)
{
- if (async && renderer->isMultiThreaded())
+ if (async)
{
// Add to render queue
JobId id(pageNr, resolutionInDPI, false);
@@ -421,38 +418,10 @@
if (!renderer.isNull())
{
- if (renderer->isMultiThreaded())
- {
- JobId id(pageNr, \
(double)(width)/sizeOfPage(pageNr).width().getLength_in_inch(), \
true);
- // Add to render queue
- QueuedDocumentPage* queuedPage = new QueuedDocumentPage(thumbnailPage, id);
- renderQueue->addRenderJob(queuedPage);
-
- return 0;
- }
- else
- {
- QApplication::setOverrideCursor(waitCursor);
- renderer->drawThumbnail((double)(width)/sizeOfPage(pageNr).width().getLength_in_inch(), \
thumbnailPage);
-
- // Paint image to the page
- thumbnailPage->paintImage();
- QApplication::restoreOverrideCursor();
-
- JobId id(pageNr, \
(double)(width)/sizeOfPage(pageNr).width().getLength_in_inch(), \
true);
- if (KVSPrefs::changeColors() && KVSPrefs::renderMode() != \
KVSPrefs::EnumRenderMode::Paper)
- {
- ThumbnailPixmap* thumbnail = new \
ThumbnailPixmap(thumbnailPage->getPageNumber(), \
thumbnailPage->accessiblePixmap());
- thumbnailCache.insert(id.key(), thumbnail, thumbnail->width() * \
thumbnail->height());
- return thumbnail;
- }
- else
- {
- ThumbnailPixmap* thumbnail = new \
ThumbnailPixmap(thumbnailPage->getPageNumber(), \
thumbnailPage->pixmap());
- thumbnailCache.insert(id.key(), thumbnail, thumbnail->width() * \
thumbnail->height());
- return thumbnail;
- }
- }
+ JobId id(pageNr, (double)(width)/sizeOfPage(pageNr).width().getLength_in_inch(), \
true); + // Add to render queue
+ QueuedDocumentPage* queuedPage = new QueuedDocumentPage(thumbnailPage, id);
+ renderQueue->addRenderJob(queuedPage);
}
return 0;
}
--- branches/work/kviewshell-0.7/kviewshell/shell/documentRenderer.h #517834:517835
@@ -319,20 +319,6 @@
*/
virtual bool supportsTextSearch() const {return false;}
- /** @brief Flag to indicate if multiple threads are supported.
-
- @note Reimplement this if your plugin is not thread safe.
- KViewShell will then use a single thread for all operations,
- which means the GUI will be blocked while the renderer
- calculates pages.
-
- @warning The option for single threaded operation will
- probably be removed in future versions.
-
- The default implementation returns 'true'.
- */
- virtual bool isMultiThreaded() const { return true; }
-
/* This method will try to parse the reference part of the DVI
file's URL, (either a number, which is supposed to be a page
number, or src:(line)(filename)) and see if a corresponding
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic