SVN commit 669483 by cgilles:
digikam from trunk : ALbum GUI : new option to handle full size image in Preview Mode, instead a reduced size. For performance reasons, this option is disable by default. Use it only if you have a fast computer... CCMAIL: [hidden email] M +24 -6 digikam/albumsettings.cpp M +3 -0 digikam/albumsettings.h M +1 -0 digikam/digikamview.cpp M +12 -1 digikam/imagepreviewview.cpp M +2 -0 digikam/imagepreviewview.h M +14 -2 utilities/setup/setupgeneral.cpp --- trunk/extragear/graphics/digikam/digikam/albumsettings.cpp #669482:669483 @@ -94,6 +94,8 @@ bool saveDateTime; bool saveRating; + bool previewLoadFullImageSize; + int thumbnailSize; int treeThumbnailSize; @@ -226,6 +228,8 @@ d->saveComments = false; d->saveDateTime = false; d->saveRating = false; + + d->previewLoadFullImageSize = false; } void AlbumSettings::readSettings() @@ -255,13 +259,13 @@ "Item Right Click Action", (int)AlbumSettings::ShowPreview)); - d->imageFilefilter = config->readEntry("File Filter", d->imageFilefilter); - d->movieFilefilter = config->readEntry("Movie File Filter", d->movieFilefilter); - d->audioFilefilter = config->readEntry("Audio File Filter", d->audioFilefilter); - d->rawFilefilter = config->readEntry("Raw File Filter", d->rawFilefilter); - d->thumbnailSize = config->readNumEntry("Default Icon Size", ThumbnailSize::Medium); + d->imageFilefilter = config->readEntry("File Filter", d->imageFilefilter); + d->movieFilefilter = config->readEntry("Movie File Filter", d->movieFilefilter); + d->audioFilefilter = config->readEntry("Audio File Filter", d->audioFilefilter); + d->rawFilefilter = config->readEntry("Raw File Filter", d->rawFilefilter); + d->thumbnailSize = config->readNumEntry("Default Icon Size", ThumbnailSize::Medium); d->treeThumbnailSize = config->readNumEntry("Default Tree Icon Size", ThumbnailSize::Tiny); - d->currentTheme = config->readEntry("Theme", i18n("Default")); + d->currentTheme = config->readEntry("Theme", i18n("Default")); d->iconShowName = config->readBoolEntry("Icon Show Name", false); d->iconShowResolution = config->readBoolEntry("Icon Show Resolution", false); @@ -290,6 +294,8 @@ d->tooltipShowTags = config->readBoolEntry("ToolTips Show Tags", true); d->tooltipShowRating = config->readBoolEntry("ToolTips Show Rating", true); + d->previewLoadFullImageSize = config->readBoolEntry("Preview Load Full Image Size", false); + // --------------------------------------------------------------------- config->setGroup("EXIF Settings"); @@ -374,6 +380,8 @@ config->writeEntry("ToolTips Show Tags", d->tooltipShowTags); config->writeEntry("ToolTips Show Rating", d->tooltipShowRating); + config->writeEntry("Preview Load Full Image Size", d->previewLoadFullImageSize); + // --------------------------------------------------------------------- config->setGroup("EXIF Settings"); @@ -1043,4 +1051,14 @@ return d->defaultRawFilefilter; } +void AlbumSettings::setPreviewLoadFullImageSize(bool val) +{ + d->previewLoadFullImageSize = val; +} + +bool AlbumSettings::getPreviewLoadFullImageSize() const +{ + return d->previewLoadFullImageSize; +} + } // namespace Digikam --- trunk/extragear/graphics/digikam/digikam/albumsettings.h #669482:669483 @@ -245,6 +245,9 @@ QString getDefaultAudioFileFilter() const; QString getDefaultRawFileFilter() const; + void setPreviewLoadFullImageSize(bool val); + bool getPreviewLoadFullImageSize() const; + static AlbumSettings *instance(); private: --- trunk/extragear/graphics/digikam/digikam/digikamview.cpp #669482:669483 @@ -198,6 +198,7 @@ void DigikamView::applySettings(const AlbumSettings* settings) { d->iconView->applySettings(settings); + d->albumWidgetStack->imagePreviewView()->setLoadFullImageSize(settings->getPreviewLoadFullImageSize()); } void DigikamView::setupConnections() --- trunk/extragear/graphics/digikam/digikam/imagepreviewview.cpp #669482:669483 @@ -92,12 +92,14 @@ parent = 0; hasPrev = false; hasNext = false; + loadFullImageSize = false; currentFitWindowZoom = 0; previewSize = 1024; } bool hasPrev; bool hasNext; + bool loadFullImageSize; int previewSize; @@ -177,6 +179,12 @@ delete d; } +void ImagePreviewView::setLoadFullImageSize(bool b) +{ + d->loadFullImageSize = b; + reload(); +} + void ImagePreviewView::setImage(const DImg& image) { d->preview = image; @@ -232,7 +240,10 @@ this, SLOT(slotNextPreload())); } - d->previewThread->load(LoadingDescription(path, d->previewSize, AlbumSettings::instance()->getExifRotate())); + if (d->loadFullImageSize) + d->previewThread->loadHighQuality(LoadingDescription(path, 0, AlbumSettings::instance()->getExifRotate())); + else + d->previewThread->load(LoadingDescription(path, d->previewSize, AlbumSettings::instance()->getExifRotate())); } void ImagePreviewView::slotGotImagePreview(const LoadingDescription &description, const DImg& preview) --- trunk/extragear/graphics/digikam/digikam/imagepreviewview.h #669482:669483 @@ -55,6 +55,8 @@ ImagePreviewView(AlbumWidgetStack *parent=0); ~ImagePreviewView(); + void setLoadFullImageSize(bool b); + void setImage(const DImg& image); DImg& getImage() const; --- trunk/extragear/graphics/digikam/utilities/setup/setupgeneral.cpp #669482:669483 @@ -77,10 +77,11 @@ iconShowTagsBox = 0; iconShowRatingBox = 0; rightClickActionComboBox = 0; + previewLoadFullImageSize = 0; } - QComboBox *iconTreeThumbSize; QLabel *iconTreeThumbLabel; + QCheckBox *iconShowNameBox; QCheckBox *iconShowSizeBox; QCheckBox *iconShowDateBox; @@ -89,7 +90,9 @@ QCheckBox *iconShowCommentsBox; QCheckBox *iconShowTagsBox; QCheckBox *iconShowRatingBox; + QCheckBox *previewLoadFullImageSize; + QComboBox *iconTreeThumbSize; QComboBox *rightClickActionComboBox; KURLRequester *albumPathEdit; @@ -129,7 +132,7 @@ QVGroupBox *iconTextGroup = new QVGroupBox(i18n("Thumbnails"), parent); iconTextGroup->setColumnLayout(0, Qt::Vertical ); iconTextGroup->layout()->setMargin(KDialog::marginHint()); - QGridLayout* tagSettingsLayout = new QGridLayout(iconTextGroup->layout(), 5, 10, + QGridLayout* tagSettingsLayout = new QGridLayout(iconTextGroup->layout(), 10, 4, KDialog::spacingHint()); d->iconTreeThumbLabel = new QLabel(i18n("Sidebar thumbnail size:"), iconTextGroup); @@ -200,6 +203,12 @@ tagSettingsLayout->addMultiCellWidget(rightClickLabel, 9 ,9, 0, 0); tagSettingsLayout->addMultiCellWidget(d->rightClickActionComboBox, 9, 9, 1, 4); + d->previewLoadFullImageSize = new QCheckBox(i18n("Embedded preview load full image size"), iconTextGroup); + QWhatsThis::add( d->previewLoadFullImageSize, i18n("<p>Set this option to load full image size " + "with embedded preview instead a reduced one. Because this option will take more time " + "to load image, use it only if you have a fast computer.")); + tagSettingsLayout->addMultiCellWidget(d->previewLoadFullImageSize, 10, 10, 0, 4); + layout->addWidget(iconTextGroup); // -------------------------------------------------------- @@ -235,6 +244,7 @@ settings->setItemRightClickAction((AlbumSettings::ItemRightClickAction) d->rightClickActionComboBox->currentItem()); + settings->setPreviewLoadFullImageSize(d->previewLoadFullImageSize->isChecked()); settings->saveSettings(); } @@ -265,6 +275,8 @@ d->iconShowRatingBox->setChecked(settings->getIconShowRating()); d->rightClickActionComboBox->setCurrentItem((int)settings->getItemRightClickAction()); + + d->previewLoadFullImageSize->setChecked(settings->getPreviewLoadFullImageSize()); } void SetupGeneral::slotChangeAlbumPath(const QString &result) _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
Free forum by Nabble | Edit this page |