File indexing completed on 2024-05-26 04:32:36

0001 /*
0002  *  SPDX-FileCopyrightText: 2009 Cyrille Berger <cberger@cberger.net>
0003  *
0004  *  SPDX-License-Identifier: LGPL-2.0-or-later
0005  */
0006 
0007 #include "lutdocker.h"
0008 
0009 #include <stdlib.h>
0010 
0011 #include <QTimer>
0012 
0013 
0014 #include <kis_debug.h>
0015 #include <kpluginfactory.h>
0016 #include <klocalizedstring.h>
0017 
0018 #include <KoDockFactoryBase.h>
0019 
0020 #include "kis_config.h"
0021 #include "kis_cursor.h"
0022 #include "kis_global.h"
0023 #include "kis_types.h"
0024 
0025 #include "lutdocker_dock.h"
0026 #include <KoDockRegistry.h>
0027 
0028 #include <OpenColorIO.h>
0029 namespace OCIO = OCIO_NAMESPACE;
0030 
0031 
0032 K_PLUGIN_FACTORY_WITH_JSON(LutDockerPluginFactory, "krita_lutdocker.json", registerPlugin<LutDockerPlugin>();)
0033 
0034 class LutDockerDockFactory : public KoDockFactoryBase {
0035 public:
0036     LutDockerDockFactory()
0037     {
0038     }
0039 
0040     QString id() const override
0041     {
0042         return QString( "LutDocker" );
0043     }
0044 
0045     virtual Qt::DockWidgetArea defaultDockWidgetArea() const
0046     {
0047         return Qt::RightDockWidgetArea;
0048     }
0049 
0050     QDockWidget* createDockWidget() override
0051     {
0052         LutDockerDock * dockWidget = new LutDockerDock();
0053         dockWidget->setObjectName(id());
0054 
0055         return dockWidget;
0056     }
0057 
0058     DockPosition defaultDockPosition() const override
0059     {
0060         return DockMinimized;
0061     }
0062 private:
0063 
0064     OCIO::ConstConfigRcPtr m_config;
0065 };
0066 
0067 
0068 LutDockerPlugin::LutDockerPlugin(QObject *parent, const QVariantList &)
0069     : QObject(parent)
0070 {
0071     KoDockRegistry::instance()->add(new LutDockerDockFactory());
0072 }
0073 
0074 LutDockerPlugin::~LutDockerPlugin()
0075 {
0076 }
0077 
0078 #include "lutdocker.moc"