void BookmarksSettingsPage::moveBookmark(int direction) { // this implementation currently only allows moving of bookmarks // one step up or down assert((direction >= -1) && (direction <= +1)); // swap bookmarks in listview QListViewItem* selectedItem = m_listView->selectedItem(); assert(selectedItem != 0); QListViewItem* item = (direction < 0) ? selectedItem->itemAbove() : selectedItem->itemBelow(); assert(item != 0); QPixmap pixmap; if (item->pixmap(0) != 0) { pixmap = *(item->pixmap(0)); } QString name(item->text(NameIdx)); QString url(item->text(URLIdx)); QString icon(item->text(IconIdx)); if (selectedItem->pixmap(0) != 0) { item->setPixmap(PixmapIdx, *(selectedItem->pixmap(0))); } item->setText(NameIdx, selectedItem->text(NameIdx)); item->setText(URLIdx, selectedItem->text(URLIdx)); item->setText(IconIdx, selectedItem->text(IconIdx)); selectedItem->setPixmap(PixmapIdx, pixmap); selectedItem->setText(NameIdx, name); selectedItem->setText(URLIdx, url); selectedItem->setText(IconIdx, icon); m_listView->setSelected(item, true); }
void ListViewEditor::itemColChanged( int col ) { QListViewItem *i = itemsPreview->currentItem(); if ( !i ) return; displayItem( i, col ); itemDeletePixmap->setEnabled( i->pixmap( col ) && !i->pixmap( col )->isNull() ); }
void FolderListView::startDrag() { QListViewItem *item = currentItem(); if (!item) return; if (item == firstChild() && item->listView()->rootIsDecorated()) return;//it's the project folder so we don't want the user to move it QPoint orig = viewportToContents( viewport()->mapFromGlobal( QCursor::pos() ) ); QPixmap pix; if (item->rtti() == FolderListItem::ListItemType) pix = QPixmap( folder_closed_xpm ); else pix = *item->pixmap (0); QIconDrag *drag = new QIconDrag(viewport()); drag->setPixmap(pix, QPoint(pix.width()/2, pix.height()/2 ) ); QPtrList<QListViewItem> lst; for (item = firstChild(); item; item = item->itemBelow()) { if (item->isSelected()) lst.append(item); } emit dragItems(lst); drag->drag(); }
void PlaylistSelection::loadChildren( QListViewItem* browserParent, QListViewItem* selectionParent ) { QListViewItem* browserChild = browserParent->firstChild(); while( browserChild ) { SelectionListItem* selectionChild = new SelectionListItem( selectionParent, browserChild->text(0), browserChild ); if ( browserChild->pixmap(0) ) selectionChild->setPixmap( 0, *browserChild->pixmap(0) ); if( browserChild->childCount() > 0 ) loadChildren( browserChild, selectionChild ); browserChild = browserChild->nextSibling(); } }
void ListViewEditor::itemLeftClicked() { QListViewItem *i = itemsPreview->currentItem(); if ( !i ) return; QListViewItemIterator it( i ); QListViewItem *parent = i->parent(); if ( !parent ) return; parent = parent->parent(); --it; while ( it.current() ) { if ( it.current()->parent() == parent ) break; --it; } if ( !it.current() ) return; QListViewItem *other = it.current(); for ( int c = 0; c < itemsPreview->columns(); ++c ) { QString s = i->text( c ); i->setText( c, other->text( c ) ); other->setText( c, s ); QPixmap pix; if ( i->pixmap( c ) ) pix = *i->pixmap( c ); if ( other->pixmap( c ) ) i->setPixmap( c, *other->pixmap( c ) ); else i->setPixmap( c, QPixmap() ); other->setPixmap( c, pix ); } itemsPreview->setCurrentItem( other ); itemsPreview->setSelected( other, TRUE ); }
PlaylistSelection::PlaylistSelection( QWidget* parent, char* name ) : KListView( parent, name ) { addColumn( i18n("Select Playlists") ); setRootIsDecorated( true ); PlaylistBrowserView* browserTree = PlaylistBrowser::instance()->getListView(); QListViewItem* browserItem = browserTree->firstChild(); //load into the tree the first two items, which is the smart playlist and the playlist for( int i = 0; i<2; i++ ) { QListViewItem* newItem = new QListViewItem( this, browserItem->text(0) ); newItem->setPixmap( 0, *browserItem->pixmap(0) ); loadChildren( browserItem, newItem ); newItem->setOpen( true ); browserItem = browserItem->nextSibling(); } }