formwindowmanager.h
来自「奇趣公司比较新的qt/emd版本」· C头文件 代码 · 共 170 行
H
170 行
/******************************************************************************** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved.**** This file is part of the Qt Designer 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://trolltech.com/products/qt/licenses/licensing/opensource/**** If you are unsure which license is appropriate for your use, please** review the following information:** http://trolltech.com/products/qt/licenses/licensing/licensingoverview** or contact the sales department at sales@trolltech.com.**** In addition, as a special exception, Trolltech gives you certain** additional rights. These rights are described in the Trolltech GPL** Exception version 1.0, which can be found at** http://www.trolltech.com/products/qt/gplexception/ and in the file** GPL_EXCEPTION.txt in this package.**** In addition, as a special exception, Trolltech, as the sole copyright** holder for Qt Designer, grants users of the Qt/Eclipse Integration** plug-in the right for the Qt/Eclipse Integration to link to** functionality provided by Qt Designer and its related libraries.**** Trolltech reserves all rights not expressly granted herein.**** 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 FORMWINDOWMANAGER_H#define FORMWINDOWMANAGER_H#include "formeditor_global.h"#include <QtDesigner/QDesignerFormWindowManagerInterface>#include <QtCore/QObject>#include <QtCore/QList>#include <QtCore/QPointer>#include <QtCore/QMap>class QAction;class QActionGroup;class QUndoGroup;class QDesignerFormEditorInterface;class QDesignerWidgetBoxInterface;namespace qdesigner_internal {class FormWindow;class QT_FORMEDITOR_EXPORT FormWindowManager: public QDesignerFormWindowManagerInterface{ Q_OBJECTpublic: FormWindowManager(QDesignerFormEditorInterface *core, QObject *parent = 0); virtual ~FormWindowManager(); virtual QDesignerFormEditorInterface *core() const; inline QAction *actionCut() const { return m_actionCut; } inline QAction *actionCopy() const { return m_actionCopy; } inline QAction *actionPaste() const { return m_actionPaste; } inline QAction *actionDelete() const { return m_actionDelete; } inline QAction *actionSelectAll() const { return m_actionSelectAll; } inline QAction *actionLower() const { return m_actionLower; } inline QAction *actionRaise() const { return m_actionRaise; } QAction *actionUndo() const; QAction *actionRedo() const; inline QAction *actionHorizontalLayout() const { return m_actionHorizontalLayout; } inline QAction *actionVerticalLayout() const { return m_actionVerticalLayout; } inline QAction *actionSplitHorizontal() const { return m_actionSplitHorizontal; } inline QAction *actionSplitVertical() const { return m_actionSplitVertical; } inline QAction *actionGridLayout() const { return m_actionGridLayout; } inline QAction *actionBreakLayout() const { return m_actionBreakLayout; } inline QAction *actionAdjustSize() const { return m_actionAdjustSize; } QDesignerFormWindowInterface *activeFormWindow() const; int formWindowCount() const; QDesignerFormWindowInterface *formWindow(int index) const; QDesignerFormWindowInterface *createFormWindow(QWidget *parentWidget = 0, Qt::WindowFlags flags = 0); bool eventFilter(QObject *o, QEvent *e); void dragItems(const QList<QDesignerDnDItemInterface*> &item_list); QUndoGroup *undoGroup() const;public slots: void addFormWindow(QDesignerFormWindowInterface *formWindow); void removeFormWindow(QDesignerFormWindowInterface *formWindow); void setActiveFormWindow(QDesignerFormWindowInterface *formWindow);private slots: void slotActionCutActivated(); void slotActionCopyActivated(); void slotActionPasteActivated(); void slotActionDeleteActivated(); void slotActionSelectAllActivated(); void slotActionLowerActivated(); void slotActionRaiseActivated(); void slotActionHorizontalLayoutActivated(); void slotActionVerticalLayoutActivated(); void slotActionSplitHorizontalActivated(); void slotActionSplitVerticalActivated(); void slotActionGridLayoutActivated(); void slotActionBreakLayoutActivated(); void slotActionAdjustSizeActivated(); void slotUpdateActions();private: void setupActions(); FormWindow *findFormWindow(QWidget *w); QWidget *findManagedWidget(FormWindow *fw, QWidget *w); void layoutContainerHorizontal(); void layoutContainerVertical(); void layoutContainerGrid(); void setCurrentUndoStack(QUndoStack *stack);private: QDesignerFormEditorInterface *m_core; FormWindow *m_activeFormWindow; QList<FormWindow*> m_formWindows; bool m_layoutChilds; // edit actions QAction *m_actionCut; QAction *m_actionCopy; QAction *m_actionPaste; QAction *m_actionSelectAll; QAction *m_actionDelete; QAction *m_actionLower; QAction *m_actionRaise; // layout actions QAction *m_actionHorizontalLayout; QAction *m_actionVerticalLayout; QAction *m_actionSplitHorizontal; QAction *m_actionSplitVertical; QAction *m_actionGridLayout; QAction *m_actionBreakLayout; QAction *m_actionAdjustSize; QAction *m_actionUndo; QAction *m_actionRedo; QMap<QWidget *, bool> getUnsortedLayoutsToBeBroken(bool firstOnly) const; bool hasLayoutsToBeBroken() const; QList<QWidget *> layoutsToBeBroken(QWidget *w) const; QList<QWidget *> layoutsToBeBroken() const; QUndoGroup *m_undoGroup;};} // namespace qdesigner_internal#endif // FORMWINDOWMANAGER_H
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?