~ubuntu-branches/ubuntu/saucy/kactivities/saucy-proposed

« back to all changes in this revision

Viewing changes to src/service/Module.h

  • Committer: Package Import Robot
  • Author(s): Scott Kitterman, Jonathan Riddell, Scott Kitterman
  • Date: 2012-11-20 13:47:27 UTC
  • mfrom: (1.1.13)
  • Revision ID: package-import@ubuntu.com-20121120134727-vqzk04slqjoay3de
Tags: 4:4.9.80-0ubuntu1
[ Jonathan Riddell ]
* New upstream beta release

[ Scott Kitterman ]
* Add new libkactivities-models1 library package (debian/control, .install,
  and .symbols)
* Add nepomuk-core-dev to build-depends
* Wildcard libkactivities6.install so that soversion changes don't cause
  build failures
* Update libkactivities6.symbols
* Update libkactivities-dev.install for new files for libkactivies-models
* Add new files to libkactivities-bin.install, including Activities kcm

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 *   Copyright (C) 2012 Ivan Cukic <ivan.cukic(at)kde.org>
 
3
 *
 
4
 *   This program is free software; you can redistribute it and/or modify
 
5
 *   it under the terms of the GNU General Public License version 2,
 
6
 *   or (at your option) any later version, as published by the Free
 
7
 *   Software Foundation
 
8
 *
 
9
 *   This program is distributed in the hope that it will be useful,
 
10
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
11
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
12
 *   GNU General Public License for more details
 
13
 *
 
14
 *   You should have received a copy of the GNU General Public
 
15
 *   License along with this program; if not, write to the
 
16
 *   Free Software Foundation, Inc.,
 
17
 *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
18
 */
 
19
 
 
20
#ifndef MODULE_H_
 
21
#define MODULE_H_
 
22
 
 
23
#include <QObject>
 
24
#include <QString>
 
25
#include <QStringList>
 
26
 
 
27
#include <utils/d_ptr.h>
 
28
#include <utils/nullptr.h>
 
29
#include <utils/override.h>
 
30
 
 
31
/**
 
32
 * Module
 
33
 */
 
34
class Module: public QObject {
 
35
public:
 
36
    Module(const QString & name, QObject * parent = nullptr);
 
37
    virtual ~Module();
 
38
 
 
39
    static QObject * get(const QString & name);
 
40
    static const QHash < QString, QObject * > get();
 
41
 
 
42
    virtual bool isFeatureOperational(const QStringList & feature) const;
 
43
    virtual bool isFeatureEnabled(const QStringList & feature) const;
 
44
    virtual void setFeatureEnabled(const QStringList & feature, bool value);
 
45
    virtual QStringList listFeatures(const QStringList & feature) const;
 
46
 
 
47
protected:
 
48
    static void registerModule(const QString & name, QObject * module);
 
49
 
 
50
private:
 
51
    D_PTR;
 
52
};
 
53
 
 
54
#endif // MODULE_H_
 
55