📄 q3iconview.h
字号:
/******************************************************************************** Copyright (C) 1992-2006 Trolltech ASA. All rights reserved.**** This file is part of the Qt3Support module of the Qt Toolkit.**** This file may be used under the terms of the GNU General Public** License version 2.0 as published by the Free Software Foundation** and appearing in the file LICENSE.GPL included in the packaging of** this file. Please review the following information to ensure GNU** General Public Licensing requirements will be met:** http://www.trolltech.com/products/qt/opensource.html**** If you are unsure which license is appropriate for your use, please** review the following information:** http://www.trolltech.com/products/qt/licensing.html or contact the** sales department at sales@trolltech.com.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.******************************************************************************/#ifndef Q3ICONVIEW_H#define Q3ICONVIEW_H#include <Qt3Support/q3scrollview.h>#include <QtCore/qstring.h>#include <QtCore/qrect.h>#include <QtCore/qpoint.h>#include <QtCore/qsize.h>#include <QtGui/qfont.h> // QString->QFont conversion#include <Qt3Support/q3dragobject.h>#include <QtGui/qbitmap.h>#include <QtGui/qpicture.h>#include <Qt3Support/q3valuelist.h>QT_BEGIN_HEADERQT_MODULE(Qt3Support)#ifndef QT_NO_ICONVIEWclass Q3IconView;class QPainter;class QMimeSource;class QMouseEvent;class QDragEnterEvent;class QDragMoveEvent;class QDragLeaveEvent;class QKeyEvent;class QFocusEvent;class QShowEvent;class Q3IconViewItem;class Q3IconViewItemLineEdit;class QStringList;class Q3IconDragPrivate;class QColorGroup;#ifndef QT_NO_DRAGANDDROPclass Q_COMPAT_EXPORT Q3IconDragItem{public: Q3IconDragItem(); virtual ~Q3IconDragItem(); virtual QByteArray data() const; virtual void setData(const QByteArray &d); bool operator== (const Q3IconDragItem&) const;private: QByteArray ba;};class Q_COMPAT_EXPORT Q3IconDrag : public Q3DragObject{ Q_OBJECTpublic: Q3IconDrag(QWidget * dragSource, const char* name = 0); virtual ~Q3IconDrag(); void append(const Q3IconDragItem &item, const QRect &pr, const QRect &tr); virtual const char* format(int i) const; static bool canDecode(QMimeSource* e); virtual QByteArray encodedData(const char* mime) const;private: Q_DISABLE_COPY(Q3IconDrag) Q3IconDragPrivate *d; QChar endMark; friend class Q3IconView; friend class Q3IconViewPrivate;};#endifclass Q3IconViewToolTip;class Q3IconViewItemPrivate;class Q_COMPAT_EXPORT Q3IconViewItem{ friend class Q3IconView; friend class Q3IconViewToolTip; friend class Q3IconViewItemLineEdit;public: Q3IconViewItem(Q3IconView *parent); Q3IconViewItem(Q3IconView *parent, Q3IconViewItem *after); Q3IconViewItem(Q3IconView *parent, const QString &text); Q3IconViewItem(Q3IconView *parent, Q3IconViewItem *after, const QString &text); Q3IconViewItem(Q3IconView *parent, const QString &text, const QPixmap &icon); Q3IconViewItem(Q3IconView *parent, Q3IconViewItem *after, const QString &text, const QPixmap &icon);#ifndef QT_NO_PICTURE Q3IconViewItem(Q3IconView *parent, const QString &text, const QPicture &picture); Q3IconViewItem(Q3IconView *parent, Q3IconViewItem *after, const QString &text, const QPicture &picture);#endif virtual ~Q3IconViewItem(); virtual void setRenameEnabled(bool allow); virtual void setDragEnabled(bool allow); virtual void setDropEnabled(bool allow); virtual QString text() const; virtual QPixmap *pixmap() const;#ifndef QT_NO_PICTURE virtual QPicture *picture() const;#endif virtual QString key() const; bool renameEnabled() const; bool dragEnabled() const; bool dropEnabled() const; Q3IconView *iconView() const; Q3IconViewItem *prevItem() const; Q3IconViewItem *nextItem() const; int index() const; virtual void setSelected(bool s, bool cb); virtual void setSelected(bool s); virtual void setSelectable(bool s); bool isSelected() const; bool isSelectable() const; virtual void repaint(); virtual bool move(int x, int y); virtual void moveBy(int dx, int dy); virtual bool move(const QPoint &pnt); virtual void moveBy(const QPoint &pnt); QRect rect() const; int x() const; int y() const; int width() const; int height() const; QSize size() const; QPoint pos() const; QRect textRect(bool relative = true) const; QRect pixmapRect(bool relative = true) const; bool contains(const QPoint& pnt) const; bool intersects(const QRect& r) const; virtual bool acceptDrop(const QMimeSource *mime) const;#ifndef QT_NO_TEXTEDIT void rename();#endif virtual int compare(Q3IconViewItem *i) const; virtual void setText(const QString &text); virtual void setPixmap(const QPixmap &icon);#ifndef QT_NO_PICTURE virtual void setPicture(const QPicture &icon);#endif virtual void setText(const QString &text, bool recalc, bool redraw = true); virtual void setPixmap(const QPixmap &icon, bool recalc, bool redraw = true); virtual void setKey(const QString &k); virtual int rtti() const; static int RTTI;protected:#ifndef QT_NO_TEXTEDIT virtual void removeRenameBox();#endif virtual void calcRect(const QString &text_ = QString()); virtual void paintItem(QPainter *p, const QColorGroup &cg); virtual void paintFocus(QPainter *p, const QColorGroup &cg);#ifndef QT_NO_DRAGANDDROP virtual void dropped(QDropEvent *e, const Q3ValueList<Q3IconDragItem> &lst);#endif virtual void dragEntered(); virtual void dragLeft(); void setItemRect(const QRect &r); void setTextRect(const QRect &r); void setPixmapRect(const QRect &r); void calcTmpText(); QString tempText() const;private: void init(Q3IconViewItem *after = 0#ifndef QT_NO_PICTURE , QPicture *pic = 0#endif );#ifndef QT_NO_TEXTEDIT void renameItem(); void cancelRenameItem();#endif void checkRect(); Q3IconView *view; QString itemText, itemKey; QString tmpText; QPixmap *itemIcon;#ifndef QT_NO_PICTURE QPicture *itemPic;#endif Q3IconViewItem *prev, *next; uint allow_rename : 1; uint allow_drag : 1; uint allow_drop : 1; uint selected : 1; uint selectable : 1; uint dirty : 1; uint wordWrapDirty : 1; QRect itemRect, itemTextRect, itemIconRect;#ifndef QT_NO_TEXTEDIT Q3IconViewItemLineEdit *renameBox;#endif QRect oldRect; Q3IconViewItemPrivate *d;};class Q3IconViewPrivate;class Q_COMPAT_EXPORT Q3IconView : public Q3ScrollView{ friend class Q3IconViewItem;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -