/*
    *
    * This file is a part of Libcprime
    * Library for bookmarking, saving recent activites, managing settings for CuboCore Application Suite
	* Copyright 2019 CuboCore Group

    *
    * 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 3 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, vsit http://www.gnu.org/licenses/.
    *
*/

#ifndef CPLUGININTERFACE_H
#define CPLUGININTERFACE_H

#pragma once

#include <QString>
#include <QWidget>
#include <QtPlugin>

class plugininterface {

    public:
        virtual ~plugininterface() {}

        /* Name of the plugin */
        virtual QString name() = 0;

        /* The plugin version */
        virtual QString version() = 0;

        /* The widget */
        virtual QWidget *widget( QWidget *parent ) = 0;
};

QT_BEGIN_NAMESPACE
    Q_DECLARE_INTERFACE( plugininterface, "com.coreaction.plugininterface" )
QT_END_NAMESPACE

#endif // CPLUGININTERFACE_H
