diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2011-11-08 12:31:36 -0600 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2011-11-08 12:31:36 -0600 |
commit | d796c9dd933ab96ec83b9a634feedd5d32e1ba3f (patch) | |
tree | 6e3dcca4f77e20ec8966c666aac7c35bd4704053 /examples/fileiconview/qfileiconview.h | |
download | tqt3-d796c9dd933ab96ec83b9a634feedd5d32e1ba3f.tar.gz tqt3-d796c9dd933ab96ec83b9a634feedd5d32e1ba3f.zip |
Test conversion to TQt3 from Qt3 8c6fc1f8e35fd264dd01c582ca5e7549b32ab731
Diffstat (limited to 'examples/fileiconview/qfileiconview.h')
-rw-r--r-- | examples/fileiconview/qfileiconview.h | 170 |
1 files changed, 170 insertions, 0 deletions
diff --git a/examples/fileiconview/qfileiconview.h b/examples/fileiconview/qfileiconview.h new file mode 100644 index 000000000..4a2e4b118 --- /dev/null +++ b/examples/fileiconview/qfileiconview.h @@ -0,0 +1,170 @@ +/**************************************************************************** +** +** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved. +** +** This file is part of an example program for TQt. This example +** program may be used, distributed and modified without limitation. +** +*****************************************************************************/ + +#ifndef TQTFILEICONVIEW_H +#define TQTFILEICONVIEW_H + + +#include <qiconset.h> +#include <qstring.h> +#include <qfileinfo.h> +#include <qdir.h> +#include <qtimer.h> +#include <qiconview.h> + +class TQtFileIconView; +class TQDragObject; +class TQResizeEvent; + +/***************************************************************************** + * + * Class TQtFileIconDrag + * + *****************************************************************************/ + +class TQtFileIconDrag : public TQIconDrag +{ + Q_OBJECT + +public: + TQtFileIconDrag( TQWidget * dragSource, const char* name = 0 ); + + const char* format( int i ) const; + TQByteArray encodedData( const char* mime ) const; + static bool canDecode( TQMimeSource* e ); + void append( const TQIconDragItem &item, const TQRect &pr, const TQRect &tr, const TQString &url ); + +private: + TQStringList urls; + +}; + +/***************************************************************************** + * + * Class TQtFileIconView + * + *****************************************************************************/ +class TQtFileIconViewItem; +class TQtFileIconView : public TQIconView +{ + Q_OBJECT + +public: + TQtFileIconView( const TQString &dir, TQWidget *parent = 0, const char *name = 0 ); + + enum ViewMode { Large, Small }; + + void setViewMode( ViewMode m ); + ViewMode viewMode() const { return vm; } + void setOpenItem( TQtFileIconViewItem *i ) { + openItem = i; + } + +public slots: + void setDirectory( const TQString &dir ); + void setDirectory( const TQDir &dir ); + void newDirectory(); + TQDir currentDir(); + +signals: + void directoryChanged( const TQString & ); + void startReadDir( int dirs ); + void readNextDir(); + void readDirDone(); + void enableUp(); + void disableUp(); + void enableMkdir(); + void disableMkdir(); + +protected slots: + void itemDoubleClicked( TQIconViewItem *i ); + void slotDropped( TQDropEvent *e, const TQValueList<TQIconDragItem> & ); + + void viewLarge(); + void viewSmall(); + void viewBottom(); + void viewRight(); + void flowEast(); + void flowSouth(); + void itemTextTruncate(); + void itemTextWordWrap(); + void sortAscending(); + void sortDescending(); + void arrangeItemsInGrid() { + TQIconView::arrangeItemsInGrid( TRUE ); + } + + void slotRightPressed( TQIconViewItem *item ); + void openFolder(); + +protected: + void readDir( const TQDir &dir ); + virtual TQDragObject *dragObject(); + + virtual void keyPressEvent( TQKeyEvent *e ); + + TQDir viewDir; + int newFolderNum; + TQSize sz; + TQPixmap pix; + ViewMode vm; + TQtFileIconViewItem *openItem; + +}; + +/***************************************************************************** + * + * Class TQtFileIconViewItem + * + *****************************************************************************/ + +class TQtFileIconViewItem : public TQIconViewItem +{ + friend class TQtFileIconView; + +public: + enum ItemType { + File = 0, + Dir, + Link + }; + + TQtFileIconViewItem( TQtFileIconView *parent, TQFileInfo *fi ); + + virtual ~TQtFileIconViewItem(); + + ItemType type() const + { return itemType; } + TQString filename() const { return itemFileName; } + + virtual bool acceptDrop( const TQMimeSource *e ) const; + + virtual void setText( const TQString &text ); + virtual TQPixmap *pixmap() const; + + virtual void dragEntered(); + virtual void dragLeft(); + + void viewModeChanged( TQtFileIconView::ViewMode m ); + void paintItem( TQPainter *p, const TQColorGroup &cg ); + +protected: + virtual void dropped( TQDropEvent *e, const TQValueList<TQIconDragItem> & ); + + TQString itemFileName; + TQFileInfo *itemFileInfo; + ItemType itemType; + bool checkSetText; + TQTimer timer; + TQtFileIconView::ViewMode vm; + +}; + + +#endif |