Bookmarks::Bookmarks(QWidget* parent) : QTreeWidget(parent) { setLayoutDirection(Qt::RightToLeft); setTextElideMode(Qt::ElideMiddle); #ifdef Q_OS_WIN setIndentation(10); #endif QStringList labels; labels << tr("Title") << tr("Comments"); #if QT_VERSION < 0x050000 header()->setResizeMode(QHeaderView::Interactive); #else header()->setSectionResizeMode(QHeaderView::Interactive); #endif setHeaderLabels(labels); m_folderIcon.addPixmap(style()->standardPixmap(QStyle::SP_DirClosedIcon), QIcon::Normal, QIcon::Off); m_folderIcon.addPixmap(style()->standardPixmap(QStyle::SP_DirOpenIcon), QIcon::Normal, QIcon::On); m_bookmarkIcon.addPixmap(QPixmap(ICON_PATH + "/bookmark-on.png")); setAlternatingRowColors(true); connect(this, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(doubleClicked(QTreeWidgetItem*,int))); }
HeaderViewWidget::HeaderViewWidget(Qt::Orientation orientation, QWidget *parent) : QHeaderView(orientation, parent) { setTextElideMode(Qt::ElideRight); setSectionsMovable(true); connect(this, SIGNAL(sectionClicked(int)), this, SLOT(toggleSort(int))); }
WidgetBoxCategoryListView::WidgetBoxCategoryListView(QDesignerFormEditorInterface *core, QWidget *parent) : QListView(parent), m_proxyModel(new QSortFilterProxyModel(this)), m_model(new WidgetBoxCategoryModel(core, this)) { setFocusPolicy(Qt::NoFocus); setFrameShape(QFrame::NoFrame); setIconSize(QSize(22, 22)); setSpacing(1); setTextElideMode(Qt::ElideMiddle); setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setResizeMode(QListView::Adjust); setUniformItemSizes(true); setItemDelegate(new WidgetBoxCategoryEntryDelegate(this)); connect(this, SIGNAL(pressed(QModelIndex)), this, SLOT(slotPressed(QModelIndex))); setEditTriggers(QAbstractItemView::AnyKeyPressed); m_proxyModel->setSourceModel(m_model); m_proxyModel->setFilterRole(FilterRole); setModel(m_proxyModel); connect(m_model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SIGNAL(scratchPadChanged())); }
/*! * \brief SimulationOutputTree::SimulationOutputTree * \param pSimulationOutputWidget */ SimulationOutputTree::SimulationOutputTree(SimulationOutputWidget *pSimulationOutputWidget) : QTreeView(pSimulationOutputWidget), mpSimulationOutputWidget(pSimulationOutputWidget) { setItemDelegate(new ItemDelegate(this, true)); setTextElideMode(Qt::ElideNone); setIndentation(Helper::treeIndentation); setExpandsOnDoubleClick(false); setHeaderHidden(true); setMouseTracking(true); /* important for Debug more links. */ setSelectionMode(QAbstractItemView::ExtendedSelection); setContextMenuPolicy(Qt::CustomContextMenu); connect(this, SIGNAL(customContextMenuRequested(QPoint)), SLOT(showContextMenu(QPoint))); connect(header(), SIGNAL(sectionResized(int,int,int)), SLOT(callLayoutChanged(int,int,int))); // create actions mpSelectAllAction = new QAction(tr("Select All"), this); mpSelectAllAction->setShortcut(QKeySequence("Ctrl+a")); mpSelectAllAction->setStatusTip(tr("Selects all the Messages")); connect(mpSelectAllAction, SIGNAL(triggered()), SLOT(selectAllMessages())); mpCopyAction = new QAction(QIcon(":/Resources/icons/copy.svg"), Helper::copy, this); mpCopyAction->setShortcut(QKeySequence("Ctrl+c")); mpCopyAction->setStatusTip(tr("Copy the Message")); connect(mpCopyAction, SIGNAL(triggered()), SLOT(copyMessages())); mpExpandAllAction = new QAction(Helper::expandAll, this); mpExpandAllAction->setStatusTip(tr("Copy the Message")); connect(mpExpandAllAction, SIGNAL(triggered()), SLOT(expandAll())); mpCollapseAllAction = new QAction(Helper::collapseAll, this); mpCollapseAllAction->setStatusTip(tr("Copy the Message")); connect(mpCollapseAllAction, SIGNAL(triggered()), SLOT(collapseAll())); }
SqueezedTextLabel::SqueezedTextLabel(QWidget *p) : QLabel(p) { bool rtl = Qt::RightToLeft == layoutDirection(); setTextElideMode(rtl ? Qt::ElideLeft : Qt::ElideRight); setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred); }
QvisSequenceView::QvisSequenceView(QWidget *parent) : QTableView(parent) { // Create a sequence mapping model that we'll use to store sequence data. QvisSequenceMappingModel *m = new QvisSequenceMappingModel(this); setModel(m); connect(m, SIGNAL(updatedMapping(const QString &,const QStringList &)), this, SIGNAL(updatedMapping(const QString &,const QStringList &))); connect(m, SIGNAL(updatedMapping(const QString &,const QStringList &,const QString &,const QStringList &)), this, SIGNAL(updatedMapping(const QString &,const QStringList &,const QString &,const QStringList &))); setItemDelegate(new SequenceDelegate(this)); setShowGrid(false); setAlternatingRowColors(true); setSelectionBehavior(QAbstractItemView::SelectItems); setSelectionMode(QAbstractItemView::SingleSelection); horizontalHeader()->hide(); #if QT_VERSION < QT_VERSION_CHECK(5, 0, 0) verticalHeader()->setResizeMode(QHeaderView::ResizeToContents); #else verticalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents); #endif setTextElideMode(Qt::ElideMiddle); setDragEnabled(true); setAcceptDrops(true); setDropIndicatorShown(true); }
PortfolioOverviewTable::PortfolioOverviewTable(QWidget *parent) : QTableView(parent) { // Turn manual resize grab handles off. horizontalHeader()->setResizeMode(QHeaderView::Fixed); // Elide in the middle instead of on the right. setTextElideMode(Qt::ElideMiddle); }
IconPickerDialog::IconPickerDialog(QWidget *parent) : QDialog(parent), ui(new Ui::IconPickerDialog) { MultiMCPlatform::fixWM_CLASS(this); ui->setupUi(this); setWindowModality(Qt::WindowModal); auto contentsWidget = ui->iconView; contentsWidget->setViewMode(QListView::IconMode); contentsWidget->setFlow(QListView::LeftToRight); contentsWidget->setIconSize(QSize(48, 48)); contentsWidget->setMovement(QListView::Static); contentsWidget->setResizeMode(QListView::Adjust); contentsWidget->setSelectionMode(QAbstractItemView::SingleSelection); contentsWidget->setSpacing(5); contentsWidget->setWordWrap(false); contentsWidget->setWrapping(true); contentsWidget->setUniformItemSizes(true); contentsWidget->setTextElideMode(Qt::ElideRight); contentsWidget->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); contentsWidget->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn); contentsWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); contentsWidget->setItemDelegate(new ListViewDelegate()); //contentsWidget->setAcceptDrops(true); contentsWidget->setDropIndicatorShown(true); contentsWidget->viewport()->setAcceptDrops(true); contentsWidget->setDragDropMode(QAbstractItemView::DropOnly); contentsWidget->setDefaultDropAction(Qt::CopyAction); contentsWidget->installEventFilter(this); contentsWidget->setModel(MMC->icons().get()); auto buttonAdd = ui->buttonBox->addButton(tr("Add Icon"),QDialogButtonBox::ResetRole); auto buttonRemove = ui->buttonBox->addButton(tr("Remove Icon"),QDialogButtonBox::ResetRole); connect(buttonAdd,SIGNAL(clicked(bool)),SLOT(addNewIcon())); connect(buttonRemove,SIGNAL(clicked(bool)),SLOT(removeSelectedIcon())); connect ( contentsWidget, SIGNAL(doubleClicked(QModelIndex)), SLOT(activated(QModelIndex)) ); connect ( contentsWidget->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(selectionChanged(QItemSelection,QItemSelection)) ); }
/*! Constructor. Creates a KDPropertyView with parent \a parent. */ KDPropertyView::KDPropertyView( QWidget* parent ) : QTreeView(parent), d() { setItemDelegate( new KDPropertyViewDelegate(this) ); setEditTriggers( QAbstractItemView::AllEditTriggers ); setSelectionBehavior( QAbstractItemView::SelectRows ); setSelectionMode( QAbstractItemView::ExtendedSelection ); setTextElideMode(Qt::ElideRight); //header()->setResizeMode( QHeaderView::Stretch ); }
K3b::ThemedLabel::ThemedLabel( K3b::Theme::PixmapType pix, QWidget* parent ) : KSqueezedTextLabel( parent ) { setThemePixmap( pix ); setTextElideMode( Qt::ElideRight ); connect( k3bappcore->themeManager(), SIGNAL(themeChanged()), this, SLOT(slotThemeChanged()) ); connect( KGlobalSettings::self(), SIGNAL(appearanceChanged()), this, SLOT(slotThemeChanged()) ); }
QxFileSystemView::QxFileSystemView(QWidget* parent) : QTreeView(parent), ignoreNextFocusOutEvent_(false) { setEditTriggers(QAbstractItemView::SelectedClicked|QAbstractItemView::EditKeyPressed); setUniformRowHeights(true); // performance HACK setDragDropMode(QAbstractItemView::DragDrop); setAutoExpandDelay(700); setTextElideMode(Qt::ElideMiddle); // setSelectionMode(QAbstractItemView::ExtendedSelection); }
K3b::ThemedLabel::ThemedLabel( const QString& text, QWidget* parent ) : KSqueezedTextLabel( text, parent ), m_themePixmapCode( -1 ) { slotThemeChanged(); setTextElideMode( Qt::ElideRight ); connect( k3bappcore->themeManager(), SIGNAL(themeChanged()), this, SLOT(slotThemeChanged()) ); connect( KGlobalSettings::self(), SIGNAL(appearanceChanged()), this, SLOT(slotThemeChanged()) ); }
DBView::DBView(QWidget * parent) : QTableView(parent) { QTableView::setItemDelegate(new DBDelegate(this)); setWordWrap(true); setTextElideMode(Qt::ElideRight); CheckboxHeader* header = new CheckboxHeader(Qt::Vertical, this); setVerticalHeader(header); horizontalHeader()->setMinimumSectionSize(fontInfo().pixelSize()+2); //13=11+2 for margins horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents); setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel); setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); }
/*! \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); createActions(); connect(this, SIGNAL(customContextMenuRequested(QPoint)), SLOT(showContextMenu(QPoint))); connect(this, SIGNAL(doubleClicked(QModelIndex)), SLOT(breakPointDoubleClicked(QModelIndex))); }
PageSelectWidget::PageSelectWidget(QWidget *parent) : QListWidget(parent) { setSelectionRectVisible(false); setViewMode(IconMode); setSpacing(2); setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Expanding); setWordWrap(true); setDragEnabled(NoDragDrop); setEditTriggers(NoEditTriggers); setTextElideMode(Qt::ElideNone); setItemDelegate(new PageSelectWidgetItemDelegate(this)); }
NavigationTreeView::NavigationTreeView(QWidget *parent) : QTreeView(parent) { setFrameStyle(QFrame::NoFrame); setIndentation(indentation() * 9/10); setUniformRowHeights(true); setTextElideMode(Qt::ElideNone); setAttribute(Qt::WA_MacShowFocusRect, false); setHeaderHidden(true); // We let the column adjust to contents, but note // the setting of a minimum size in resizeEvent() header()->setResizeMode(QHeaderView::ResizeToContents); header()->setStretchLastSection(false); }
KateFileTree::KateFileTree(QWidget *parent): QTreeView(parent) { setAcceptDrops(false); setIndentation(12); setAllColumnsShowFocus(true); setTextElideMode(Qt::ElideLeft); connect( this, SIGNAL(clicked(QModelIndex)), this, SLOT(mouseClicked(QModelIndex))); m_filelistCloseDocument = new QAction( KIcon("window-close"), i18n( "Close" ), this ); connect( m_filelistCloseDocument, SIGNAL(triggered()), this, SLOT(slotDocumentClose()) ); m_filelistCloseDocument->setWhatsThis(i18n("Close the current document.")); m_filelistCopyFilename = new QAction( KIcon("copy"), i18n( "Copy Filename" ), this ); connect( m_filelistCopyFilename, SIGNAL(triggered()), this, SLOT(slotCopyFilename()) ); m_filelistCopyFilename->setWhatsThis(i18n("Copy the filename of the file.")); QActionGroup *modeGroup = new QActionGroup(this); m_treeModeAction = setupOption(modeGroup, KIcon("view-list-tree"), i18n("Tree Mode"), i18n("Set view style to Tree Mode"), SLOT(slotTreeMode()), true); m_listModeAction = setupOption(modeGroup, KIcon("view-list-text"), i18n("List Mode"), i18n("Set view style to List Mode"), SLOT(slotListMode()), false); QActionGroup *sortGroup = new QActionGroup(this); m_sortByFile = setupOption(sortGroup, KIcon(), i18n("Document Name"), i18n("Sort by Document Name"), SLOT(slotSortName()), true); m_sortByPath = setupOption(sortGroup, KIcon(), i18n("Document Path"), i18n("Sort by Document Path"), SLOT(slotSortPath()), false); m_sortByOpeningOrder = setupOption(sortGroup, KIcon(), i18n("Opening Order"), i18n("Sort by Opening Order"), SLOT(slotSortOpeningOrder()), false); QPalette p = palette(); p.setColor(QPalette::Inactive, QPalette::Highlight, p.color(QPalette::Active, QPalette::Highlight)); p.setColor(QPalette::Inactive, QPalette::HighlightedText, p.color(QPalette::Active, QPalette::HighlightedText)); setPalette(p); }
ListView_Impl::ListView_Impl() : QListView(), WidgetInterface(), fWideSel(false) { setItemDelegate(new ListView_Delegate(this)); setContextMenuPolicy(Qt::CustomContextMenu); setDragDropMode(DropOnly); setDropIndicatorShown(false); setEditTriggers(NoEditTriggers); setTextElideMode(Qt::ElideMiddle); setSelectionMode(QAbstractItemView::SingleSelection); setResizeMode(QListView::Adjust); setWrapping(true); connect(this, SIGNAL(activated(const QModelIndex&)), this, SLOT(handleActivated(const QModelIndex&))); connect(this, SIGNAL(customContextMenuRequested(const QPoint&)), this, SLOT(handleContextMenu(const QPoint&))); }
HistoryCompletionView::HistoryCompletionView(QWidget *parent) : QTableView(parent) { horizontalHeader()->hide(); verticalHeader()->hide(); setShowGrid(false); setSelectionBehavior(QAbstractItemView::SelectRows); setSelectionMode(QAbstractItemView::SingleSelection); setTextElideMode(Qt::ElideRight); QFontMetrics metrics = fontMetrics(); verticalHeader()->setDefaultSectionSize(metrics.height()); // As URLs are always LRT, this should be LRT as well setLayoutDirection(Qt::LeftToRight); }
ItemBoxTreeWidget::ItemBoxTreeWidget(ItemBoxEventHandler *core, QWidget *parent) : QTreeWidget(parent), m_core(core), m_iconMode(false), m_scratchPadDeleteTimer(0) { setFocusPolicy(Qt::NoFocus); setIndentation(0); setRootIsDecorated(false); setColumnCount(1); header()->hide(); header()->setSectionResizeMode(QHeaderView::Stretch); setTextElideMode(Qt::ElideMiddle); setVerticalScrollMode(ScrollPerPixel); setItemDelegate(new SheetDelegate(this, this)); connect(this, SIGNAL(itemPressed(QTreeWidgetItem *, int)), this, SLOT(handleMousePress(QTreeWidgetItem *))); }
/*! \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))); }
// ---------------- ActionTreeView: ActionTreeView::ActionTreeView(ActionModel *model, QWidget *parent) : QTreeView(parent), m_model(model) { setDragEnabled(true); setAcceptDrops(true); setDropIndicatorShown(true); setDragDropMode(DragDrop); setModel(model); setRootIsDecorated(false); setTextElideMode(Qt::ElideMiddle); setModel(model); connect(this, SIGNAL(activated(QModelIndex)), this, SLOT(slotActivated(QModelIndex))); connect(header(), SIGNAL(sectionDoubleClicked(int)), this, SLOT(resizeColumnToContents(int))); setIconSize(QSize(listModeIconSize, listModeIconSize)); }
QmitkModulesDialog::QmitkModulesDialog(QWidget *parent, Qt::WindowFlags f) : QDialog(parent, f) { this->setWindowTitle("MITK Modules"); auto layout = new QVBoxLayout(); this->setLayout(layout); auto tableView = new QTableView(this); auto tableModel = new QmitkModuleTableModel(tableView); auto sortProxyModel = new QSortFilterProxyModel(tableView); sortProxyModel->setSourceModel(tableModel); sortProxyModel->setDynamicSortFilter(true); tableView->setModel(sortProxyModel); tableView->verticalHeader()->hide(); tableView->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel); tableView->setSelectionBehavior(QAbstractItemView::SelectRows); tableView->setSelectionMode(QAbstractItemView::ExtendedSelection); tableView->setTextElideMode(Qt::ElideMiddle); tableView->setSortingEnabled(true); tableView->sortByColumn(0, Qt::AscendingOrder); #if QT_VERSION < QT_VERSION_CHECK(5, 0, 0) tableView->horizontalHeader()->setResizeMode(0, QHeaderView::ResizeToContents); tableView->horizontalHeader()->setResizeMode(2, QHeaderView::ResizeToContents); #else tableView->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); tableView->horizontalHeader()->setSectionResizeMode(2, QHeaderView::ResizeToContents); #endif tableView->horizontalHeader()->setStretchLastSection(true); tableView->horizontalHeader()->setCascadingSectionResizes(true); layout->addWidget(tableView); auto btnBox = new QDialogButtonBox(QDialogButtonBox::Close); layout->addWidget(btnBox); this->resize(800, 600); connect(btnBox, SIGNAL(rejected()), this, SLOT(reject())); }
CQBrowserPane::CQBrowserPane(QWidget* parent) : QTreeView(parent) { QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); sizePolicy.setHorizontalStretch(0); sizePolicy.setVerticalStretch(0); sizePolicy.setHeightForWidth(this->sizePolicy().hasHeightForWidth()); setSizePolicy(sizePolicy); setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn); setAutoScroll(true); setEditTriggers(QAbstractItemView::NoEditTriggers); setTextElideMode(Qt::ElideNone); setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); setUniformRowHeights(true); setSortingEnabled(true); setHeaderHidden(true); connect(this, SIGNAL(expanded(const QModelIndex &)), this, SLOT(slotUpdateScrollBar(const QModelIndex &))); connect(this, SIGNAL(collapsed(const QModelIndex &)), this, SLOT(slotUpdateScrollBar(const QModelIndex &))); }
CWizCategoryBaseView::CWizCategoryBaseView(CWizExplorerApp& app, QWidget* parent) : QTreeWidget(parent) , m_app(app) , m_dbMgr(app.databaseManager()) , m_bDragHovered(false) { header()->hide(); setFrameStyle(QFrame::NoFrame); setAttribute(Qt::WA_MacShowFocusRect, false); setAutoFillBackground(true); setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setTextElideMode(Qt::ElideMiddle); setIndentation(12); QPalette pal = palette(); pal.setColor(QPalette::Base, WizGetCategoryBackroundColor(m_app.userSettings().skin())); setPalette(pal); setStyle(::WizGetStyle(m_app.userSettings().skin())); }
ItemsTreeView::ItemsTreeView(QWidget *parent) : QTreeView(parent) { m_delegate = new OpenDocumentsDelegate(this); setItemDelegate(m_delegate); setIndentation(0); setUniformRowHeights(true); setTextElideMode(Qt::ElideMiddle); setFrameStyle(QFrame::NoFrame); setAttribute(Qt::WA_MacShowFocusRect, false); viewport()->setAttribute(Qt::WA_Hover); setSelectionMode(QAbstractItemView::SingleSelection); setSelectionBehavior(QAbstractItemView::SelectRows); //setActivationMode(Utils::SingleClickActivation); installEventFilter(this); viewport()->installEventFilter(this); connect(this, SIGNAL(pressed(QModelIndex)), m_delegate, SLOT(handlePressed(QModelIndex))); }
/////////////// TableView TableView::TableView(QWidget* parent) : QTreeView(parent) , _imp( new TableViewPrivate() ) { setSelectionBehavior(QAbstractItemView::SelectRows); setRootIsDecorated(false); setItemsExpandable(false); ///The table model here doesn't support sorting setSortingEnabled(false); header()->setStretchLastSection(false); header()->setFont( QApplication::font() ); // necessary, or the header font will have the default size, not the application font size setTextElideMode(Qt::ElideMiddle); setEditTriggers(QAbstractItemView::EditKeyPressed | QAbstractItemView::SelectedClicked | QAbstractItemView::DoubleClicked); setContextMenuPolicy(Qt::CustomContextMenu); setDragDropMode(QAbstractItemView::NoDragDrop); setAttribute(Qt::WA_MacShowFocusRect, 0); setAcceptDrops(true); setSelectionMode(QAbstractItemView::ExtendedSelection); }
// ---------------- ActionListView: ActionListView::ActionListView(ActionModel *model, QWidget *parent) : QListView(parent), m_model(model) { setDragEnabled(true); setAcceptDrops(true); setDropIndicatorShown(true); setDragDropMode(DragDrop); setModel(model); setTextElideMode(Qt::ElideMiddle); connect(this, SIGNAL(activated(QModelIndex)), this, SLOT(slotActivated(QModelIndex))); // We actually want 'Static' as the user should be able to // drag away actions only (not to rearrange icons). // We emulate that by not accepting our own // drag data. 'Static' causes the list view to disable drag and drop // on the viewport. setMovement(Snap); setViewMode(IconMode); setIconSize(QSize(iconModeIconSize, iconModeIconSize)); setGridSize(QSize(4 * iconModeIconSize, 2 * iconModeIconSize)); setSpacing(iconModeIconSize / 3); }
GCF::Components::ScriptableObjectExplorer::ScriptableObjectExplorer(QWidget* parent) :QTreeWidget(parent) { d = new GCF::Components::ScriptableObjectExplorerData; setColumnCount(1); header()->hide(); setSelectionMode(SingleSelection); d->methodPmDir = QPixmap(":/ScriptEditor/methodDir.png"); d->propertyPmDir = QPixmap(":/ScriptEditor/propertyDir.png"); d->eventPmDir = QPixmap(":/ScriptEditor/eventDir.png"); d->methodPm = QPixmap(":/ScriptEditor/method.png"); d->propertyPm = QPixmap(":/ScriptEditor/property.png"); d->eventPm = QPixmap(":/ScriptEditor/event.png"); d->objectPm = QPixmap(":/ScriptEditor/object.png"); qApp->installEventFilter(this); connect(this, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(on_itemDoubleClicked(QTreeWidgetItem*))); header()->setResizeMode(QHeaderView::ResizeToContents); setTextElideMode(Qt::ElideNone); }
/************************************************ * Widget Listing: * Creation of the list of drawed lovely buttons ************************************************/ WidgetListing::WidgetListing( intf_thread_t *p_intf, QWidget *_parent ) : QListWidget( _parent ) { /* We need the parent to know the options checked */ parent = qobject_cast<ToolbarEditDialog *>(_parent); assert( parent ); /* Normal options */ setViewMode( QListView::ListMode ); setTextElideMode( Qt::ElideNone ); setDragEnabled( true ); int icon_size = fontMetrics().height(); setIconSize( QSize( icon_size * 2, icon_size ) ); /* All the buttons do not need a special rendering */ for( int i = 0; i < BUTTON_MAX; i++ ) { QListWidgetItem *widgetItem = new QListWidgetItem( this ); widgetItem->setText( qtr( nameL[i] ) ); widgetItem->setSizeHint( QSize( widgetItem->sizeHint().width(), 32 ) ); widgetItem->setIcon( QIcon( iconL[i] ) ); widgetItem->setData( Qt::UserRole, QVariant( i ) ); widgetItem->setToolTip( widgetItem->text() ); addItem( widgetItem ); } /* Spacers are yet again a different thing */ QListWidgetItem *widgetItem = new QListWidgetItem( QIcon( ":/toolbar/space.svg" ), qtr( "Spacer" ), this ); widgetItem->setData( Qt::UserRole, WIDGET_SPACER ); widgetItem->setToolTip( widgetItem->text() ); widgetItem->setSizeHint( QSize( widgetItem->sizeHint().width(), 32 ) ); addItem( widgetItem ); widgetItem = new QListWidgetItem( QIcon( ":/toolbar/space.svg" ), qtr( "Expanding Spacer" ), this ); widgetItem->setData( Qt::UserRole, WIDGET_SPACER_EXTEND ); widgetItem->setToolTip( widgetItem->text() ); widgetItem->setSizeHint( QSize( widgetItem->sizeHint().width(), 32 ) ); addItem( widgetItem ); /** * For all other widgets, we create then, do a pseudo rendering in * a pixmaps for the view, and delete the object * * A lot of code is retaken from the Abstract, but not exactly... * So, rewrite. * They are better ways to deal with this, but I doubt that this is * necessary. If you feel like you have the time, be my guest. * -- * jb **/ for( int i = SPLITTER; i < SPECIAL_MAX; i++ ) { QWidget *widget = NULL; QListWidgetItem *widgetItem = new QListWidgetItem; widgetItem->setSizeHint( QSize( widgetItem->sizeHint().width(), 32 ) ); switch( i ) { case SPLITTER: { QFrame *line = new QFrame( this ); line->setFrameShape( QFrame::VLine ); line->setFrameShadow( QFrame::Raised ); line->setLineWidth( 0 ); line->setMidLineWidth( 1 ); widget = line; } widgetItem->setText( qtr("Splitter") ); break; case INPUT_SLIDER: { SeekSlider *slider = new SeekSlider( p_intf, Qt::Horizontal, this ); widget = slider; } widgetItem->setText( qtr("Time Slider") ); break; case VOLUME: { SoundWidget *snd = new SoundWidget( this, p_intf, parent->getOptions() & WIDGET_SHINY ); widget = snd; } widgetItem->setText( qtr("Volume") ); break; case VOLUME_SPECIAL: { QListWidgetItem *widgetItem = new QListWidgetItem( this ); widgetItem->setText( qtr("Small Volume") ); widgetItem->setIcon( QIcon( ":/toolbar/volume-medium.svg" ) ); widgetItem->setData( Qt::UserRole, QVariant( i ) ); addItem( widgetItem ); } continue; case TIME_LABEL: { QLabel *timeLabel = new QLabel( "12:42/2:12:42", this ); widget = timeLabel; } widgetItem->setText( qtr("Time") ); break; case MENU_BUTTONS: { QWidget *discFrame = new QWidget( this ); //discFrame->setLineWidth( 1 ); QHBoxLayout *discLayout = new QHBoxLayout( discFrame ); discLayout->setSpacing( 0 ); discLayout->setMargin( 0 ); QToolButton *prevSectionButton = new QToolButton( discFrame ); prevSectionButton->setIcon( QIcon( ":/toolbar/dvd_prev.svg" ) ); prevSectionButton->setToolTip( qtr("Previous Chapter/Title" ) ); discLayout->addWidget( prevSectionButton ); QToolButton *nextButton = new QToolButton( discFrame ); nextButton->setIcon( QIcon( ":/toolbar/dvd_next.svg" ) ); nextButton->setToolTip( qtr("Next Chapter/Title" ) ); discLayout->addWidget( nextButton ); QToolButton *menuButton = new QToolButton( discFrame ); menuButton->setIcon( QIcon( ":/toolbar/dvd_menu.svg" ) ); menuButton->setToolTip( qtr( "Menu" ) ); discLayout->addWidget( menuButton ); widget = discFrame; } widgetItem->setText( qtr("DVD menus") ); break; case TELETEXT_BUTTONS: { QWidget *telexFrame = new QWidget( this ); QHBoxLayout *telexLayout = new QHBoxLayout( telexFrame ); telexLayout->setSpacing( 0 ); telexLayout->setMargin( 0 ); QToolButton *telexOn = new QToolButton( telexFrame ); telexOn->setIcon( QIcon( ":/toolbar/tv.svg" ) ); telexLayout->addWidget( telexOn ); QToolButton *telexTransparent = new QToolButton; telexTransparent->setIcon( QIcon( ":/toolbar/tvtelx.svg" ) ); telexTransparent->setToolTip( qtr("Teletext transparency") ); telexLayout->addWidget( telexTransparent ); QSpinBox *telexPage = new QSpinBox; telexLayout->addWidget( telexPage ); widget = telexFrame; } widgetItem->setText( qtr("Teletext") ); break; case ADVANCED_CONTROLLER: { AdvControlsWidget *advControls = new AdvControlsWidget( p_intf, this ); widget = advControls; } widgetItem->setText( qtr("Advanced Buttons") ); break; case PLAYBACK_BUTTONS: { widget = new QWidget; DeckButtonsLayout *layout = new DeckButtonsLayout( widget ); BrowseButton *prev = new BrowseButton( widget, BrowseButton::Backward ); BrowseButton *next = new BrowseButton( widget ); RoundButton *play = new RoundButton( widget ); layout->setBackwardButton( prev ); layout->setForwardButton( next ); layout->setRoundButton( play ); } widgetItem->setText( qtr("Playback Buttons") ); break; case ASPECT_RATIO_COMBOBOX: widget = new AspectRatioComboBox( p_intf, THEMIM->getAspectRatio() ); widgetItem->setText( qtr("Aspect ratio selector") ); break; case SPEED_LABEL: widget = new SpeedLabel( p_intf, this ); widgetItem->setText( qtr("Speed selector") ); break; case TIME_LABEL_ELAPSED: widget = new QLabel( "2:42", this ); widgetItem->setText( qtr("Elapsed time") ); break; case TIME_LABEL_REMAINING: widget = new QLabel( "-2:42", this ); widgetItem->setText( qtr("Total/Remaining time") ); break; default: msg_Warn( p_intf, "This should not happen %i", i ); break; } if( widget == NULL ) continue; widgetItem->setIcon( QIcon( widget->grab() ) ); widgetItem->setToolTip( widgetItem->text() ); widget->hide(); widgetItem->setData( Qt::UserRole, QVariant( i ) ); addItem( widgetItem ); delete widget; } }