ResultsTree::ResultsTree(QWidget * parent) : QTreeView(parent), mContextItem(0), mShowErrorId(false), mVisibleErrors(false), mSelectionModel(0) { setModel(&mModel); Translate(); // Adds columns to grid setExpandsOnDoubleClick(false); setSortingEnabled(true); connect(this, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(QuickStartApplication(const QModelIndex &))); }
/*! \param pBreakPointsWidget - pointer to BreakpointsWidget */ BreakpointsTreeView::BreakpointsTreeView(BreakpointsWidget *pBreakPointsWidget) : QTreeView(pBreakPointsWidget) { mpBreakpointsWidget = pBreakPointsWidget; setItemDelegate(new ItemDelegate(this)); setTextElideMode(Qt::ElideMiddle); setIndentation(0); setIconSize(QSize(15, 15)); setExpandsOnDoubleClick(false); setContextMenuPolicy(Qt::CustomContextMenu); setUniformRowHeights(true); createActions(); connect(this, SIGNAL(customContextMenuRequested(QPoint)), SLOT(showContextMenu(QPoint))); connect(this, SIGNAL(doubleClicked(QModelIndex)), SLOT(breakPointDoubleClicked(QModelIndex))); }
CCustomTreeView::CCustomTreeView(QWidget *parent) : QTreeView(parent) { //设置上下文件菜单,自动触发void slotCustomContextMenuRequested(const QPoint &pos); setContextMenuPolicy(Qt::CustomContextMenu); setHeaderHidden(true);//设置头隐藏 setExpandsOnDoubleClick(true);//设置双击展开 setItemsExpandable(true);//设置条目可以展开 setFrameStyle(QFrame::NoFrame); //去掉边框 //禁用水平滚动条,因为头的内容可能显示不完全,所以会自动显示水平滚动条 //setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); //setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); //setSizeAdjustPolicy(QAbstractScrollArea::AdjustToContents); }
InstrumentTree::InstrumentTree(QWidget* parent, MidiInstrument* i, bool popup) : QTreeView(parent) { m_instrument = i; m_popup = popup; _patchModel = new QStandardItemModel(0, 2, this); _patchSelModel = new QItemSelectionModel(_patchModel); setExpandsOnDoubleClick(true); setModel(_patchModel); connect(this, SIGNAL( doubleClicked(const QModelIndex&) ), this, SLOT(patchDoubleClicked(const QModelIndex&) ) ); connect(this, SIGNAL( clicked(const QModelIndex&) ), this, SLOT(patchClicked(const QModelIndex&) ) ); if(popup) { setWindowFlags(Qt::SplashScreen | Qt::WindowStaysOnTopHint); } updateModel(); }
ResultsTree::ResultsTree(QWidget * parent) : QTreeView(parent), mContextItem(0), mVisibleErrors(false), mSelectionModel(0) { setModel(&mModel); QStringList labels; labels << tr("File") << tr("Severity") << tr("Line") << tr("Summary"); mModel.setHorizontalHeaderLabels(labels); setExpandsOnDoubleClick(false); setSortingEnabled(true); connect(this, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(QuickStartApplication(const QModelIndex &))); }
QmlJSPropertyInspector::QmlJSPropertyInspector(QWidget *parent) : QTreeView(parent) { setAttribute(Qt::WA_MacShowFocusRect, false); setFrameStyle(QFrame::NoFrame); setExpandsOnDoubleClick(true); header()->setResizeMode(QHeaderView::ResizeToContents); header()->setMinimumSectionSize(150); setRootIsDecorated(false); setItemDelegateForColumn(1, new PropertyEditDelegate(this)); m_filter = new PropertiesFilter(this); m_filter->setSourceModel(&m_model); setModel(m_filter); }
QmlJSOutlineTreeView::QmlJSOutlineTreeView(QWidget *parent) : Utils::NavigationTreeView(parent) { setExpandsOnDoubleClick(false); setDragEnabled(true); viewport()->setAcceptDrops(true); setDropIndicatorShown(true); setDragDropMode(InternalMove); setRootIsDecorated(false); Utils::AnnotatedItemDelegate *itemDelegate = new Utils::AnnotatedItemDelegate(this); itemDelegate->setDelimiter(QLatin1String(" ")); itemDelegate->setAnnotationRole(QmlOutlineModel::AnnotationRole); setItemDelegateForColumn(0, itemDelegate); }
ComponentView::ComponentView(Model* model, EntityTemplate* entity, QWidget* parent):QTreeWidget(parent),model_(model),entity_(entity) { setMaximumWidth(400.f); setHeaderHidden(true); setIndentation(12); setExpandsOnDoubleClick(false); setAnimated(true); QPalette pal; pal.setColor(QPalette::Base, QColor(244,244,244)); pal.setColor(QPalette::AlternateBase, QColor(234,234,234)); setPalette(pal); setAutoFillBackground(true); treeModel_ = std::unique_ptr<ComponentViewModel>(new ComponentViewModel(this, model_, entity_)); connect(this, SIGNAL(clicked(const QModelIndex &)), this, SLOT(singleClickExpand(const QModelIndex &))); }
QgsLayerTreeView::QgsLayerTreeView( QWidget *parent ) : QTreeView( parent ) , mDefaultActions( nullptr ) , mMenuProvider( nullptr ) { setHeaderHidden( true ); setDragEnabled( true ); setAcceptDrops( true ); setDropIndicatorShown( true ); setEditTriggers( EditKeyPressed ); setExpandsOnDoubleClick( false ); // normally used for other actions setSelectionMode( ExtendedSelection ); connect( this, SIGNAL( collapsed( QModelIndex ) ), this, SLOT( updateExpandedStateToNode( QModelIndex ) ) ); connect( this, SIGNAL( expanded( QModelIndex ) ), this, SLOT( updateExpandedStateToNode( QModelIndex ) ) ); }
RepoTreeView::RepoTreeView(CloudView *cloud_view, QWidget *parent) : QTreeView(parent), cloud_view_(cloud_view) { header()->hide(); createActions(); // We draw the indicator ourselves setIndentation(0); // We handle the click oursevles setExpandsOnDoubleClick(false); connect(this, SIGNAL(clicked(const QModelIndex&)), this, SLOT(onItemClicked(const QModelIndex&))); connect(this, SIGNAL(doubleClicked(const QModelIndex&)), this, SLOT(onItemDoubleClicked(const QModelIndex&))); }
/*! \param pStackFramesWidget - pointer to StackFramesWidget */ StackFramesTreeWidget::StackFramesTreeWidget(StackFramesWidget *pStackFramesWidget) : QTreeWidget(pStackFramesWidget) { mpStackFramesWidget = pStackFramesWidget; setItemDelegate(new ItemDelegate(this)); setTextElideMode(Qt::ElideMiddle); setIconSize(Helper::iconSize); setColumnCount(3); QStringList headers; headers << tr("Function") << Helper::line << Helper::file; setHeaderLabels(headers); setIndentation(0); setExpandsOnDoubleClick(false); setContextMenuPolicy(Qt::CustomContextMenu); createActions(); connect(mpStackFramesWidget->getMainWindow()->getGDBAdapter(), SIGNAL(stackListFrames(GDBMIValue*)), SLOT(createStackFrames(GDBMIValue*))); connect(this, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), mpStackFramesWidget, SLOT(stackItemDoubleClicked(QTreeWidgetItem*))); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(showContextMenu(QPoint))); }
DirectoryTree::DirectoryTree(QWidget *parent) : QTreeView(parent) { assert(NULL != parent); // model PkmPlugin *plugin = dynamic_cast<PkmPlugin*>(get_plugin().pointer()); assert(NULL != plugin); DirectoryTreeModel *model = new DirectoryTreeModel(plugin->get_data_source()->get_db(), parent); connect(this, SIGNAL(expanded(QModelIndex)), model, SLOT(on_expanded(QModelIndex))); connect(this, SIGNAL(collapsed(QModelIndex)), model, SLOT(on_collapsed(QModelIndex))); setModel(model); // actions init_actions(); // menus init_menus(); // 双击展开而非进入编辑模式 setExpandsOnDoubleClick(true); setAutoExpandDelay(600); // 拖拽时自动展开节点的延时(ms) setEditTriggers(EditKeyPressed); setMinimumWidth(140); // 隐藏首部 setHeaderHidden(true); // 拖拽相关 setSelectionMode(QAbstractItemView::SingleSelection); // 单选 setDragEnabled(true); // 允许"拖" setAcceptDrops(true); // 允许"放" setDropIndicatorShown(true); // ? setDragDropMode(QAbstractItemView::DragDrop); setDefaultDropAction(Qt::MoveAction); // signals connect(this, SIGNAL(activated(QModelIndex)), this, SLOT(on_item_activated(QModelIndex))); // connect(this, SIGNAL(clicked(QModelIndex)), this, SLOT(on_item_activated(QModelIndex))); connect(selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)), this, SLOT(on_item_selected(QModelIndex,QModelIndex))); plugin->locate_directory.connect(this, &DirectoryTree::on_locate_directory); }
RepoTreeView::RepoTreeView(QWidget *parent) : QTreeView(parent) { header()->hide(); createActions(); // We draw the indicator ourselves setIndentation(0); // We handle the click oursevles setExpandsOnDoubleClick(false); connect(this, SIGNAL(clicked(const QModelIndex&)), this, SLOT(onItemClicked(const QModelIndex&))); connect(this, SIGNAL(doubleClicked(const QModelIndex&)), this, SLOT(onItemDoubleClicked(const QModelIndex&))); #ifdef Q_WS_MAC this->setAttribute(Qt::WA_MacShowFocusRect, 0); #endif }
void FeedsView::setupAppearance() { // Setup column resize strategies. header()->setSectionResizeMode(FDS_MODEL_TITLE_INDEX, QHeaderView::Stretch); header()->setSectionResizeMode(FDS_MODEL_COUNTS_INDEX, QHeaderView::ResizeToContents); setUniformRowHeights(true); setAnimated(true); setSortingEnabled(true); setItemsExpandable(true); setExpandsOnDoubleClick(true); setEditTriggers(QAbstractItemView::NoEditTriggers); setIndentation(FEEDS_VIEW_INDENTATION); setAcceptDrops(false); setDragEnabled(true); setDropIndicatorShown(true); setDragDropMode(QAbstractItemView::InternalMove); setAllColumnsShowFocus(false); setRootIsDecorated(false); setSelectionMode(QAbstractItemView::SingleSelection); setItemDelegate(new StyledItemDelegateWithoutFocus(this)); header()->setStretchLastSection(false); header()->setSortIndicatorShown(false); }
BuddiesListView::BuddiesListView(QWidget *parent) : QTreeView(parent), Delegate(0), Model(0), ProxyModel(new BuddiesModelProxy(this)), BackgroundTemporaryFile(0), ContextMenuEnabled(false) { setAnimated(BackgroundImageMode == BackgroundNone); #ifndef Q_WS_MAEMO_5 /* Disable as we use kinetic scrolling by default */ setDragEnabled(true); #endif setExpandsOnDoubleClick(false); setHeaderHidden(true); setItemsExpandable(true); setMouseTracking(true); setRootIsDecorated(true); setSelectionMode(QAbstractItemView::ExtendedSelection); #ifndef Q_WS_MAEMO_5 setUniformRowHeights(false); #endif setWordWrap(true); Delegate = new BuddiesListViewDelegate(this); setItemDelegate(Delegate); HideUnloadedFilter = new ContactNoUnloadedAccountFilter(this); ToolTipTimeoutTimer.setSingleShot(true); connect(MainConfiguration::instance(), SIGNAL(simpleModeChanged()), this, SLOT(simpleModeChanged())); connect(&ToolTipTimeoutTimer, SIGNAL(timeout()), this, SLOT(toolTipTimeout())); connect(this, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(doubleClickedSlot(const QModelIndex &))); connect(PendingMessagesManager::instance(), SIGNAL(messageAdded(Message)), this, SLOT(update())); connect(PendingMessagesManager::instance(), SIGNAL(messageRemoved(Message)), this, SLOT(update())); simpleModeChanged(); }
int QTreeView::qt_metacall(QMetaObject::Call _c, int _id, void **_a) { _id = QAbstractItemView::qt_metacall(_c, _id, _a); if (_id < 0) return _id; if (_c == QMetaObject::InvokeMetaMethod) { switch (_id) { case 0: expanded((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break; case 1: collapsed((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break; case 2: hideColumn((*reinterpret_cast< int(*)>(_a[1]))); break; case 3: showColumn((*reinterpret_cast< int(*)>(_a[1]))); break; case 4: expand((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break; case 5: collapse((*reinterpret_cast< const QModelIndex(*)>(_a[1]))); break; case 6: resizeColumnToContents((*reinterpret_cast< int(*)>(_a[1]))); break; case 7: sortByColumn((*reinterpret_cast< int(*)>(_a[1]))); break; case 8: expandAll(); break; case 9: collapseAll(); break; case 10: expandToDepth((*reinterpret_cast< int(*)>(_a[1]))); break; case 11: columnResized((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2])),(*reinterpret_cast< int(*)>(_a[3]))); break; case 12: columnCountChanged((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break; case 13: columnMoved(); break; case 14: reexpand(); break; case 15: rowsRemoved((*reinterpret_cast< const QModelIndex(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2])),(*reinterpret_cast< int(*)>(_a[3]))); break; case 16: d_func()->_q_endAnimatedOperation(); break; case 17: d_func()->_q_modelAboutToBeReset(); break; case 18: d_func()->_q_sortIndicatorChanged((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< Qt::SortOrder(*)>(_a[2]))); break; default: ; } _id -= 19; } #ifndef QT_NO_PROPERTIES else if (_c == QMetaObject::ReadProperty) { void *_v = _a[0]; switch (_id) { case 0: *reinterpret_cast< int*>(_v) = autoExpandDelay(); break; case 1: *reinterpret_cast< int*>(_v) = indentation(); break; case 2: *reinterpret_cast< bool*>(_v) = rootIsDecorated(); break; case 3: *reinterpret_cast< bool*>(_v) = uniformRowHeights(); break; case 4: *reinterpret_cast< bool*>(_v) = itemsExpandable(); break; case 5: *reinterpret_cast< bool*>(_v) = isSortingEnabled(); break; case 6: *reinterpret_cast< bool*>(_v) = isAnimated(); break; case 7: *reinterpret_cast< bool*>(_v) = allColumnsShowFocus(); break; case 8: *reinterpret_cast< bool*>(_v) = wordWrap(); break; case 9: *reinterpret_cast< bool*>(_v) = isHeaderHidden(); break; case 10: *reinterpret_cast< bool*>(_v) = expandsOnDoubleClick(); break; } _id -= 11; } else if (_c == QMetaObject::WriteProperty) { void *_v = _a[0]; switch (_id) { case 0: setAutoExpandDelay(*reinterpret_cast< int*>(_v)); break; case 1: setIndentation(*reinterpret_cast< int*>(_v)); break; case 2: setRootIsDecorated(*reinterpret_cast< bool*>(_v)); break; case 3: setUniformRowHeights(*reinterpret_cast< bool*>(_v)); break; case 4: setItemsExpandable(*reinterpret_cast< bool*>(_v)); break; case 5: setSortingEnabled(*reinterpret_cast< bool*>(_v)); break; case 6: setAnimated(*reinterpret_cast< bool*>(_v)); break; case 7: setAllColumnsShowFocus(*reinterpret_cast< bool*>(_v)); break; case 8: setWordWrap(*reinterpret_cast< bool*>(_v)); break; case 9: setHeaderHidden(*reinterpret_cast< bool*>(_v)); break; case 10: setExpandsOnDoubleClick(*reinterpret_cast< bool*>(_v)); break; } _id -= 11; } else if (_c == QMetaObject::ResetProperty) { _id -= 11; } else if (_c == QMetaObject::QueryPropertyDesignable) { _id -= 11; } else if (_c == QMetaObject::QueryPropertyScriptable) { _id -= 11; } else if (_c == QMetaObject::QueryPropertyStored) { _id -= 11; } else if (_c == QMetaObject::QueryPropertyEditable) { _id -= 11; } else if (_c == QMetaObject::QueryPropertyUser) { _id -= 11; } #endif // QT_NO_PROPERTIES return _id; }
EntitiesTreeWidget::EntitiesTreeWidget(QWidget *parent) : QTreeWidget(parent) { applicationNode = new QTreeWidgetItem(this,QStringList() << "Application"); modulesNode = new QTreeWidgetItem(this,QStringList() << "Modules"); resourcesNode = new QTreeWidgetItem(this,QStringList() << "Resources"); templatesNode = new QTreeWidgetItem(this,QStringList() << "Templates"); applicationNode->setIcon(0,QIcon(":/folder-app.svg")); modulesNode->setIcon(0,QIcon(":/folder-mod.svg")); resourcesNode->setIcon(0,QIcon(":/folder-res.svg")); templatesNode->setIcon(0,QIcon(":/folder.svg")); addTopLevelItem(applicationNode); addTopLevelItem(modulesNode); addTopLevelItem(resourcesNode); addTopLevelItem(templatesNode); setExpandsOnDoubleClick(false); setContextMenuPolicy(Qt::CustomContextMenu); resizeColumnToContents(0); connect(this, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this,SLOT(onItemDoubleClicked(QTreeWidgetItem*,int))); connect(this,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(onContext(QPoint))); openFile = new QAction("Open File",this); importFile = new QAction("Import Files...",this); topLevelMenu.addAction(openFile); topLevelMenu.addAction(importFile); loadFiles = new QAction("Load",this); QAction *separator = new QAction(this); separator->setSeparator(true); reopen = new QAction("Refresh",this); remove = new QAction("Remove",this); editApplication = new QAction("Edit",this); secondLevelMenu.addAction(loadFiles); secondLevelMenu.addAction(editApplication); secondLevelMenu.addAction(separator); secondLevelMenu.addAction(reopen); secondLevelMenu.addAction(remove); edit = new QAction("Edit",this); leafLevelMenu.addAction(edit); connect(loadFiles,SIGNAL(triggered()),this,SLOT(onLoadFile())); connect(editApplication,SIGNAL(triggered()),this,SLOT(onEditApplication())); connect(openFile,SIGNAL(triggered()),this,SIGNAL(openFiles())); connect(importFile,SIGNAL(triggered()),this,SIGNAL(importFiles())); connect(edit,SIGNAL(triggered()),this,SLOT(onEdit())); connect(remove,SIGNAL(triggered()),this,SLOT(onRemove())); connect(reopen,SIGNAL(triggered()),this,SLOT(onReopen())); #if defined(WIN32) ext_editor = "notepad.exe"; #else ext_editor = "xdg-open"; #endif setDragEnabled(true); setDragDropMode(DragOnly); }
TasksView::TasksView( QToolBar* toolBar, QWidget* parent ) : QWidget( parent ) // , ViewInterface() , m_delegate( new TasksViewDelegate( this ) ) , m_actionNewTask( this ) , m_actionNewSubTask( this ) , m_actionEditTask( this ) , m_actionDeleteTask( this ) , m_actionExpandTree( this ) , m_actionCollapseTree( this ) , m_showCurrentOnly( new QButton( toolBar, QButton::Recessed ) ) , m_showSubscribedOnly( new QButton( toolBar, QButton::Recessed ) ) , m_treeView( new QTreeView( this ) ) { QVBoxLayout* layout = new QVBoxLayout( this ); layout->setContentsMargins( 0, 0, 0, 0 ); layout->addWidget( m_treeView ); m_treeView->setItemDelegate( m_delegate ); connect( m_delegate, SIGNAL( editingStateChanged() ), SLOT( configureUi() ) ); // set up actions m_actionNewTask.setText( tr( "New &Task" ) ); m_actionNewTask.setShortcut( QKeySequence::New ); m_actionNewTask.setIcon( Data::newTaskIcon() ); toolBar->addAction( &m_actionNewTask ); connect( &m_actionNewTask, SIGNAL( triggered( bool ) ), SLOT( actionNewTask() ) ); m_actionNewSubTask.setText( tr( "New &Subtask" ) ); m_actionNewSubTask.setShortcut( Qt::META + Qt::Key_N ); m_actionNewSubTask.setIcon( Data::newSubtaskIcon() ); toolBar->addAction( &m_actionNewSubTask ); connect( &m_actionNewSubTask, SIGNAL( triggered( bool ) ), SLOT( actionNewSubTask() ) ); m_actionEditTask.setText( tr( "Edit Task" ) ); m_actionEditTask.setShortcut( Qt::CTRL + Qt::Key_E ); m_actionEditTask.setIcon( Data::editTaskIcon() ); toolBar->addAction( &m_actionEditTask ); connect( &m_actionEditTask, SIGNAL( triggered( bool ) ), SLOT( actionEditTask() ) ); m_actionDeleteTask.setText( tr( "Delete Task" ) ); QList<QKeySequence> deleteShortcuts; deleteShortcuts << QKeySequence::Delete; #ifdef Q_WS_MAC deleteShortcuts << Qt::Key_Backspace; #endif m_actionDeleteTask.setShortcuts(deleteShortcuts); m_actionDeleteTask.setIcon( Data::deleteTaskIcon() ); toolBar->addAction( &m_actionDeleteTask ); connect( &m_actionDeleteTask, SIGNAL( triggered( bool ) ), SLOT( actionDeleteTask() ) ); m_actionExpandTree.setText( tr( "Expand All" ) ); connect( &m_actionExpandTree, SIGNAL( triggered ( bool ) ), m_treeView, SLOT( expandAll() ) ); m_actionCollapseTree.setText( tr( "Collapse All" ) ); connect( &m_actionCollapseTree, SIGNAL( triggered ( bool ) ), m_treeView, SLOT( collapseAll() ) ); // filter setup m_showCurrentOnly->setText( tr( "Current" ) ); m_showCurrentOnly->setCheckable( true ); #ifdef Q_WS_MAC m_showCurrentOnly->setMinimumWidth( 60 ); #endif toolBar->addWidget( m_showCurrentOnly ); connect( m_showCurrentOnly, SIGNAL( clicked( bool ) ), SLOT( taskPrefilteringChanged() ) ); m_showSubscribedOnly->setText( tr( "Selected" ) ); m_showSubscribedOnly->setCheckable( true ); #ifdef Q_WS_MAC m_showSubscribedOnly->setMinimumWidth( 70 ); #endif toolBar->addWidget( m_showSubscribedOnly ); connect( m_showSubscribedOnly, SIGNAL( clicked( bool ) ), SLOT( taskPrefilteringChanged() ) ); QWidget *stretch = new QWidget( this ); stretch->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ); toolBar->addWidget( stretch ); QSearchField* searchField = new QSearchField( this ); connect( searchField, SIGNAL( textChanged( const QString& ) ), SLOT( slotFiltertextChanged( const QString& ) ) ); toolBar->addWidget( searchField ); m_treeView->setEditTriggers(QAbstractItemView::EditKeyPressed); m_treeView->setExpandsOnDoubleClick(false); m_treeView->setAlternatingRowColors( true ); // The delegate does its own eliding. m_treeView->setTextElideMode( Qt::ElideNone ); m_treeView->setRootIsDecorated( true ); m_treeView->setContextMenuPolicy( Qt::CustomContextMenu ); connect( m_treeView, SIGNAL( customContextMenuRequested( const QPoint& ) ), SLOT( slotContextMenuRequested( const QPoint& ) ) ); // I hate doing this but the stupid default view sizeHints suck badly. setMinimumHeight( 200 ); // A reasonable default depth. m_treeView->expandToDepth( 0 ); }