File indexing completed on 2025-04-27 03:58:26
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2006-01-12 0007 * Description : a widget to display ICC profiles descriptions 0008 * in file dialog preview. 0009 * 0010 * SPDX-FileCopyrightText: 2006-2007 by Francisco J. Cruz <fj dot cruz at supercable dot es> 0011 * SPDX-FileCopyrightText: 2006-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0012 * 0013 * SPDX-License-Identifier: GPL-2.0-or-later 0014 * 0015 * ============================================================ */ 0016 0017 #include "iccpreviewwidget.h" 0018 0019 // Qt includes 0020 0021 #include <QFileInfo> 0022 #include <QUrl> 0023 0024 // Local includes 0025 0026 #include "digikam_debug.h" 0027 #include "iccprofilewidget.h" 0028 0029 namespace Digikam 0030 { 0031 0032 ICCPreviewWidget::ICCPreviewWidget(QWidget* const parent) 0033 : QScrollArea(parent) 0034 { 0035 m_iccProfileWidget = new ICCProfileWidget(this); 0036 setWidget(m_iccProfileWidget); 0037 setWidgetResizable(true); 0038 } 0039 0040 ICCPreviewWidget::~ICCPreviewWidget() 0041 { 0042 } 0043 0044 void ICCPreviewWidget::slotShowPreview(const QUrl& url) 0045 { 0046 slotClearPreview(); 0047 QFileInfo fInfo(url.toLocalFile()); 0048 0049 if (url.isLocalFile() && fInfo.isFile() && fInfo.isReadable()) 0050 { 0051 qCDebug(DIGIKAM_WIDGETS_LOG) << url << " is a readable local file"; 0052 m_iccProfileWidget->loadFromURL(url); 0053 } 0054 else 0055 { 0056 qCDebug(DIGIKAM_WIDGETS_LOG) << url << " is not a readable local file"; 0057 } 0058 } 0059 0060 void ICCPreviewWidget::slotClearPreview() 0061 { 0062 m_iccProfileWidget->loadFromURL(QUrl()); 0063 } 0064 0065 } // namespace Digikam 0066 0067 #include "moc_iccpreviewwidget.cpp"