summaryrefslogtreecommitdiff
path: root/libopie/ofileselector/opixmapprovider.h
Side-by-side diff
Diffstat (limited to 'libopie/ofileselector/opixmapprovider.h') (more/less context) (show whitespace changes)
-rw-r--r--libopie/ofileselector/opixmapprovider.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/libopie/ofileselector/opixmapprovider.h b/libopie/ofileselector/opixmapprovider.h
new file mode 100644
index 0000000..2165fdb
--- a/dev/null
+++ b/libopie/ofileselector/opixmapprovider.h
@@ -0,0 +1,41 @@
+#ifndef OPIE_PIXMPAP_PROVIDER
+#define OPIE_PIXMPAP_PROVIDER
+
+#include <qpixmap.h>
+
+#include "ofileselector.h"
+
+/**
+ * This is a basic interface for a Pixmap provider
+ * it provides pixmaps for a URL
+ * So the OLocalLister provides mimetype icons
+ */
+class QFileInfo;
+class OPixmapProvider {
+public:
+ /* you can or these
+ * but File | Dir would be insane ;)
+ */
+ enum Type { File = 0, Dir = 1, Symlink = 2 };
+ OPixmapProvider( OFileSelector* sel );
+ virtual ~OPixmapProvider();
+
+ virtual QPixmap pixmap( int t, const QString& mime, QFileInfo*,
+ bool isLocked = FALSE );
+ virtual QPixmap pixmap( int t, const QString& mime,
+ const QString& dir, const QString& file,
+ bool isLocked = FALSE );
+
+protected:
+ OFileSelector* selector();
+private:
+ QPixmap file( QFileInfo*,
+ bool sym, bool is );
+ QPixmap dir ( QFileInfo*,
+ bool sym, bool is );
+ QPixmap sym ( QFileInfo*,
+ bool is );
+ OFileSelector* m_sel;
+};
+
+#endif