CTK  0.1.0
The Common Toolkit is a community effort to provide support code for medical image analysis, surgical navigation, and related projects.
ctkIconEnginePlugin_qt4.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Library: CTK
4 
5  Copyright (c) Kitware Inc.
6 
7  Licensed under the Apache License, Version 2.0 (the "License");
8  you may not use this file except in compliance with the License.
9  You may obtain a copy of the License at
10 
11  http://www.apache.org/licenses/LICENSE-2.0.txt
12 
13  Unless required by applicable law or agreed to in writing, software
14  distributed under the License is distributed on an "AS IS" BASIS,
15  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  See the License for the specific language governing permissions and
17  limitations under the License.
18 
19 =========================================================================*/
20 
21 #ifndef __ctkIconEnginePlugin_qt4_h
22 #define __ctkIconEnginePlugin_qt4_h
23 
24 // Qt includes
25 # include <QIconEngineV2>
26 # include <QIconEnginePluginV2>
27 
28 // CTK includes
29 #include "ctkPimpl.h"
30 #include "ctkPixmapIconEngine.h"
31 #include "ctkWidgetsExport.h"
32 
33 class ctkIconEnginePluginPrivate;
34 class ctkIconEnginePrivate;
35 
45 class CTK_WIDGETS_EXPORT ctkIconEnginePlugin
46  : public QIconEnginePluginV2
47 {
48  Q_OBJECT;
49 public:
50  ctkIconEnginePlugin(QObject* parent = 0);
52 
53  virtual QIconEngineV2* create(const QString& filename=QString());
54 
56  virtual QStringList keys()const;
57 
64  void setSizeDirectories(const QStringList& sizeDirectories);
65  QStringList sizeDirectories()const;
66 
67 protected:
68  QScopedPointer<ctkIconEnginePluginPrivate> d_ptr;
69 
70 private:
71  Q_DECLARE_PRIVATE(ctkIconEnginePlugin);
72  Q_DISABLE_COPY(ctkIconEnginePlugin);
73 };
74 
75 //------------------------------------------------------------------------------
101 class CTK_WIDGETS_EXPORT ctkIconEngine: public ctkPixmapIconEngine
102 {
103 public:
106  virtual ~ctkIconEngine();
107  virtual void addFile(const QString& fileName, const QSize& size,
108  QIcon::Mode mode, QIcon::State state);
113  void setSizeDirectories(const QStringList& sizeDirectories);
114  QStringList sizeDirectories()const;
115 
116  virtual QString key()const;
117 
118 protected:
119  QScopedPointer<ctkIconEnginePrivate> d_ptr;
120 
121 private:
122  Q_DECLARE_PRIVATE(ctkIconEngine);
123  Q_DISABLE_COPY(ctkIconEngine);
124 };
125 #endif
QScopedPointer< ctkIconEnginePluginPrivate > d_ptr
virtual QStringList keys() const
Support all the Qt image formats by default.
virtual ~ctkIconEnginePlugin()
ctkIconEnginePlugin(QObject *parent=0)
QStringList sizeDirectories() const
void setSizeDirectories(const QStringList &sizeDirectories)
virtual QIconEngineV2 * create(const QString &filename=QString())
QStringList sizeDirectories() const
virtual QString key() const
QScopedPointer< ctkIconEnginePrivate > d_ptr
ctkPixmapIconEngine Superclass
virtual ~ctkIconEngine()
virtual void addFile(const QString &fileName, const QSize &size, QIcon::Mode mode, QIcon::State state)
void setSizeDirectories(const QStringList &sizeDirectories)