summaryrefslogtreecommitdiffstats
path: root/src/kvilib/ext/kvi_pixmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/kvilib/ext/kvi_pixmap.h')
-rw-r--r--src/kvilib/ext/kvi_pixmap.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/kvilib/ext/kvi_pixmap.h b/src/kvilib/ext/kvi_pixmap.h
new file mode 100644
index 00000000..7ba91cec
--- /dev/null
+++ b/src/kvilib/ext/kvi_pixmap.h
@@ -0,0 +1,61 @@
+#ifndef _KVI_PIXMAP_H_
+#define _KVI_PIXMAP_H_
+
+//=============================================================================
+//
+// File : kvi_pixmap.h
+// Creation date : Sat Jun 24 2000 13:59:04 by Szymon Stefanek
+//
+// This file is part of the KVirc irc client distribution
+// Copyright (C) 2000-2007 Szymon Stefanek (pragma at kvirc dot net)
+//
+// 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 2
+// of the License, or (at your opinion) 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, write to the Free Software Foundation,
+// Inc. ,51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+//
+//=============================================================================
+
+
+#include "kvi_settings.h"
+#include "kvi_string.h"
+#include <qpixmap.h>
+
+class KVILIB_API KviPixmap
+{
+public:
+ KviPixmap();
+ KviPixmap(const char * path);
+ KviPixmap(const KviPixmap &pix);
+ ~KviPixmap();
+private:
+ QPixmap * m_pPix;
+ QString m_szPath;
+public:
+ bool isNull(){ return m_pPix == 0; };
+ bool load(const char * path);
+ bool load(const QString& path);
+ const QString& path() const { return m_szPath; };
+ QPixmap * pixmap() const { return m_pPix; };
+ void set(const QPixmap &pix,const QString &szPath);
+ KviPixmap & operator=(const KviPixmap &pix); // deep copy
+ void setNull();
+};
+
+namespace KviPixmapUtils
+{
+ extern KVILIB_API void drawPixmapWithPainter(QPainter* p,QPixmap * pix,int flags,const QRect& paintRect,int iWidgetWidth,int iWidgetHeight,int dx,int dy);
+ inline void drawPixmapWithPainter(QPainter* p,QPixmap * pix,int flags,const QRect& paintRect,int iWidgetWidth,int iWidgetHeight)
+ { KviPixmapUtils::drawPixmapWithPainter(p,pix,flags,paintRect,iWidgetWidth,iWidgetHeight,paintRect.left(),paintRect.top()); };
+};
+
+#endif //_KVI_PIXMAP_H_