void UserAgentDlg::deletePressed() { QListViewItem *item; QListViewItem *nextItem = 0; item = dlg->lvDomainPolicyList->firstChild(); while(item != 0L) { if(dlg->lvDomainPolicyList->isSelected(item)) { nextItem = item->itemBelow(); if(!nextItem) nextItem = item->itemAbove(); delete item; item = nextItem; } else { item = item->itemBelow(); } } if(nextItem) dlg->lvDomainPolicyList->setSelected(nextItem, true); updateButtons(); configChanged(); }
void ChaserEditor::slotLowerClicked() { QListViewItem* currentItem = m_functionList->currentItem(); if (currentItem != NULL) { QString deviceString = currentItem->text(1); QString functionString = currentItem->text(2); QListViewItem* below = NULL; if (currentItem->itemBelow() != NULL) { below = currentItem->itemBelow(); } if (below != NULL) { m_functionList->takeItem(currentItem); delete currentItem; QListViewItem* newItem; newItem = new QListViewItem(m_functionList, below, "", deviceString, functionString); m_functionList->setSelected(newItem, true); } } updateOrderNumbers(); }
void ZLQtSelectionDialogListView::keyPressEvent(QKeyEvent *event) { QListViewItem *item = currentItem(); switch(event->key()) { case Key_Enter: case Key_Return: if (item != 0) emit returnPressed(item); return; case Key_Down: item = item->itemBelow(); if (item == 0) { item = firstChild(); } break; case Key_Up: item = item->itemAbove(); if (item == 0) { item = firstChild(); while (item->nextSibling() != 0) { item = item->nextSibling(); } while (item->itemBelow() != 0) { item = item->itemBelow(); } } break; default: QListView::keyPressEvent(event); } if (item != 0) { setCurrentItem(item); ensureItemVisible(item); } }
void LayoutConfig::moveDown() { QListViewItem *sel = widget->listLayoutsDst->selectedItem(); if(sel == 0 || sel->itemBelow() == 0) return; sel->moveItem(sel->itemBelow()); }
/* config-slot: "down" button clicked */ void TopLevel::downButtonClicked() { QListViewItem* item = listbox->currentItem(); if (item && item->itemBelow()) item->moveItem(item->itemBelow()); enable_controls(); }
bool PropertyEditor::handleKeyPress(QKeyEvent* ev) { const int k = ev->key(); const Qt::ButtonState s = ev->state(); //selection moving QListViewItem *item = 0; if ((s == NoButton && k == Key_Up) || k == Key_BackTab) { //find prev visible item = selectedItem() ? selectedItem()->itemAbove() : 0; while (item && (!item->isSelectable() || !item->isVisible())) item = item->itemAbove(); if (!item) return true; } else if (s == NoButton && (k == Key_Down || k == Key_Tab)) { //find next visible item = selectedItem() ? selectedItem()->itemBelow() : 0; while (item && (!item->isSelectable() || !item->isVisible())) item = item->itemBelow(); if (!item) return true; } else if (s == NoButton && k == Key_Home) { if (m_currentEditor && m_currentEditor->hasFocus()) return false; //find 1st visible item = firstChild(); while (item && (!item->isSelectable() || !item->isVisible())) item = item->itemBelow(); } else if (s == NoButton && k == Key_End) { if (m_currentEditor && m_currentEditor->hasFocus()) return false; //find last visible item = selectedItem(); QListViewItem *lastVisible = item; while (item) { // && (!item->isSelectable() || !item->isVisible())) item = item->itemBelow(); if (item && item->isSelectable() && item->isVisible()) lastVisible = item; } item = lastVisible; } if (item) { ev->accept(); ensureItemVisible(item); setSelected(item, true); return true; } return false; }
void PhraseBookBox::removePhrase() { QListViewItem *item = lv->currentItem(); QListViewItem *next = item->itemBelow() != 0 ? item->itemBelow() : item->itemAbove(); delete item; if ( next != 0 ) selectItem( next ); enableDisable(); }
/** Button Down */ void KControlAddEdit::slotMoveDownAnswer() { QListViewItem *item = _listAnswers->currentItem(); if (item) item->moveItem(item->itemBelow()); _buttonUp->setEnabled(item->itemAbove()!=0); _buttonDown->setEnabled(item->itemBelow()!=0); }
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); }
static bool listViewHasSelection( QListView *lv ) { for ( QListViewItem *i = lv->firstChild(); i; i = i->itemBelow() ) if ( i->isSelected() ) return true; return false; }
void DlgDirectories::updateUpDown() { QListViewItem *item = lv_entries->selectedItem(); pb_up->setEnabled( item && item->itemAbove() ); pb_down->setEnabled( item && item->itemBelow() ); }
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 QTodoLists::contentsWheelEvent(QWheelEvent* event) { if(!firstChild()) return; QListViewItem* item = selectedItem(); if(event->delta() < 0) { if(!item) item = lastItem(); item = item->itemBelow(); if(!item) item = firstChild(); } else { if(!item) item = firstChild(); item = item->itemAbove(); if(!item) item = lastItem(); } setSelected(item,true); }
/*! Now to implement the closest match function */ void TVListView::findItem(int keyId, TVVariant value) { QListViewItem *i; TVListViewItem *best_so_far = NULL; /* start at the beginning... go through till find the closest elem */ i = listViewDisplay->firstChild(); while (i) { /* search stuff */ if(best_so_far) { if (DataElem::closer( ((TVListViewItem *)i)->getDataElem(), best_so_far->getDataElem(), value, keyId)) best_so_far = (TVListViewItem *)i; } else { if (DataElem::closer( ((TVListViewItem *)i)->getDataElem(), NULL, value, keyId)) best_so_far = (TVListViewItem *)i; } i = i->itemBelow(); } if (best_so_far) { /* set best_so_far to current element */ delete it; it = new QListViewItemIterator(best_so_far); } }
void DirectoryView::setDir( const QString &s ) { QListViewItemIterator it( this ); ++it; for ( ; it.current(); ++it ) { it.current()->setOpen( false ); } QStringList lst( QStringList::split( "/", s ) ); QListViewItem *item = firstChild(); QStringList::Iterator it2 = lst.begin(); for ( ; it2 != lst.end(); ++it2 ) { while ( item ) { if ( item->text( 0 ) == *it2 ) { item->setOpen( true ); break; } item = item->itemBelow(); } } if ( item ){ setSelected( item, true ); setCurrentItem( item ); } }
void KCustomMenuEditor::refreshButton() { QListViewItem *item = m_listView->currentItem(); d->pbRemove->setEnabled( item ); d->pbMoveUp->setEnabled( item && item->itemAbove() ); d->pbMoveDown->setEnabled( item && item->itemBelow() ); }
void RDListView::mouseButtonClickedData(int button,QListViewItem *item, const QPoint &pt,int col) { QListViewItem *l; bool contiguous; if((selectionMode()!=QListView::Extended)||(item==NULL)||(button!=1)) { return; } // // Get Selected Range // l=item; contiguous=true; while((l=l->itemAbove())!=NULL) { if(!l->isSelected()) { contiguous=false; } if(!contiguous) { setSelected(l,false); } } l=item; contiguous=true; while((l=l->itemBelow())!=NULL) { if(!l->isSelected()) { contiguous=false; } if(!contiguous) { setSelected(l,false); } } }
ResourceItem *ResourceView::findItemByIdentifier( const QString& id ) { QListViewItem *item; ResourceItem *i = 0; for( item = mListView->firstChild(); item; item = item->itemBelow() ) { i = static_cast<ResourceItem *>( item ); if ( i->resourceIdentifier() == id ) return i; } return 0; }
void kiptablesgenerator::slotDownService() { QListView* ports = (QListView*) namedWidgets["iPorts"]; QListViewItem *sel = ports->selectedItem(), *ibelow = 0; if (sel) ibelow=sel->itemBelow(); // Only check itemAbove() if it exists... if (sel && ibelow) sel->moveItem(ibelow); //Move the Item }
void LayoutConfig::remove() { QListViewItem *sel = widget->listLayoutsDst->selectedItem(); QListViewItem *newSel = 0; if(sel == 0) return; if(sel->itemBelow()) newSel = sel->itemBelow(); else if(sel->itemAbove()) newSel = sel->itemAbove(); delete sel; if(newSel) widget->listLayoutsSrc->setSelected(newSel, true); layoutSelChanged(newSel); updateStickyLimit(); changed(); }
void DlgDirectories::downEntry() { QListViewItem *item = lv_entries->selectedItem(); if ( !item ) return; item->moveItem( item->itemBelow() ); updateUpDown(); emit configChanged(); }
void BookmarksSettingsPage::slotRemoveButtonClicked() { QListViewItem* selectedItem = m_listView->selectedItem(); assert(selectedItem != 0); QListViewItem* nextItem = selectedItem->itemBelow(); if (nextItem == 0) { nextItem = selectedItem->itemAbove(); } m_listView->takeItem(selectedItem); if (nextItem != 0) { m_listView->setSelected(nextItem, true); } }
void ModelEdit::remove(const BusinessObject& object) { // Remove from current _curr.objects.remove(object); // Remove from list QListViewItem* lvi = _objects->firstChild(); while (lvi != NULL) { if (lvi->text(0) == object.name) { delete lvi; break; } lvi = lvi->itemBelow(); } }
void SequenceEditor::slotLower() { QListViewItem* item = m_list->currentItem(); if (!item) { return; } QListViewItem* itemBelow = item->itemBelow(); if (itemBelow) { item->moveItem(itemBelow); } m_list->ensureItemVisible(item); }
void KSocksConfig::save() { KConfigGroup config(kapp->config(), "Socks"); config.writeEntry("SOCKS_enable",base-> _c_enableSocks->isChecked(), true, true); config.writeEntry("SOCKS_method", base->bg->id(base->bg->selected()), true, true); config.writePathEntry("SOCKS_lib", base->_c_customPath->url(), true, true); QListViewItem *thisitem = base->_c_libs->firstChild(); QStringList libs; while (thisitem) { libs << thisitem->text(0); thisitem = thisitem->itemBelow(); } config.writePathEntry("SOCKS_lib_path", libs, ',', true, true); kapp->config()->sync(); emit changed(false); }
void BookmarksSettingsPage::applySettings() { // delete all bookmarks KBookmarkManager* manager = DolphinSettings::instance().bookmarkManager(); KBookmarkGroup root = manager->root(); KBookmark bookmark = root.first(); while (!bookmark.isNull()) { root.deleteBookmark(bookmark); bookmark = root.first(); } // add all items as bookmarks QListViewItem* item = m_listView->firstChild(); while (item != 0) { root.addBookmark(manager, item->text(NameIdx), KURL(item->text(URLIdx)), item->text(IconIdx)); // hidden column item = item->itemBelow(); } manager->emitChanged(root); }
void ConfigPage::removeMonitors( QStringList monitors ) { for ( QStringList::ConstIterator it = monitors.begin(); it != monitors.end(); ++it ) m_monitors.remove( *it ); QListViewItem *item = m_page->monitors->firstChild(); while ( item ) { QListViewItem *nextItem = item->itemBelow(); for ( QStringList::Iterator it = monitors.begin(); it != monitors.end(); ++it ) if ( item->text( 0 ) == *it ) { monitors.remove( it ); delete item; break; } item = nextItem; } }
void RefactoringAssistant::movableDropEvent (QListViewItem* parentItem, QListViewItem* afterme) { //when dropping on a class, we have to put the item in the appropriate folder! UMLObject *movingObject; UMLClassifier *newClassifier; QListViewItem *movingItem; for( movingItem = firstChild(); movingItem != 0; movingItem = movingItem->itemBelow() ) { if( movingItem->isSelected() ) break; } if( !movingItem || (movingItem == afterme) || !(movingObject = findUMLObject(movingItem)) ) { kWarning()<<"Moving item not found or dropping after itself or item not found in uml obj map. aborting. (drop had already been accepted)"<<endl; return; } Uml::Object_Type t = movingObject->getBaseType(); newClassifier = dynamic_cast<UMLClassifier*>( findUMLObject( parentItem ) ); if(!newClassifier) { if ((parentItem->text(1) == "operations" && t == Uml::ot_Operation) || (parentItem->text(1) == "attributes" && t == Uml::ot_Attribute)) { newClassifier = dynamic_cast<UMLClassifier*>( findUMLObject( parentItem->parent() ) ); } if(!newClassifier) { kWarning()<<"New parent of object is not a Classifier - Drop had already been accepted - check!"<<endl; return; } } if (t == Uml::ot_Operation) {kDebug()<<"moving operation"<<endl; UMLOperation *op = static_cast<UMLOperation*>(movingObject); if(newClassifier->checkOperationSignature(op->getName(), op->getParmList())) { QString msg = QString(i18n("An operation with that signature already exists in %1.\n")).arg(newClassifier->getName()) + QString(i18n("Choose a different name or parameter list." )); KMessageBox::error(this, msg, i18n("Operation Name Invalid"), false); return; } UMLClassifier *oldClassifier = dynamic_cast<UMLClassifier*>(op->parent()); if(oldClassifier) oldClassifier->removeOperation( op ); newClassifier->addOperation( op ); } else if (t == Uml::ot_Attribute) {kDebug()<<"moving attribute - not implemented"<<endl; // UMLAttribute *att = static_cast<UMLAttribute*>(movingObject); // if(!newClassifier->checkAttributeSignature(att)) // { // QString msg = QString(i18n("An attribute with that signature already exists in %1.\n")).arg(newClassifier->getName()) // + // QString(i18n("Choose a different name or parameter list." )); // KMessageBox::error(this, msg, i18n("Operation Name Invalid"), false); // return; // } // oldClassifier->removeAttribute( att ); // newClassifier->addAttribute( att ); } //emit moved(moving, afterFirst, afterme); emit moved(); }
/** * @param o The object * @param e The event * * Here we filter some events for the Playlist Search LineEdit and the Playlist. @n * this makes life easier since we have more useful functions available from this class */ bool PlaylistWindow::eventFilter( QObject *o, QEvent *e ) { Playlist* const pl = Playlist::instance(); typedef QListViewItemIterator It; switch( e->type() ) { case 6/*QEvent::KeyPress*/: //there are a few keypresses that we intercept #define e static_cast<QKeyEvent*>(e) if( e->key() == Key_F2 ) { // currentItem is ALWAYS visible. QListViewItem *item = pl->currentItem(); // intercept F2 for inline tag renaming // NOTE: tab will move to the next tag // NOTE: if item is still null don't select first item in playlist, user wouldn't want that. It's silly. // TODO: berkus has solved the "inability to cancel" issue with KListView, but it's not in kdelibs yet.. // item may still be null, but this is safe // NOTE: column 0 cannot be edited currently, hence we pick column 1 pl->rename( item, 1 ); //TODO what if this column is hidden? return true; } if( e->state() & ControlButton ) { int n = -1; switch( e->key() ) { case Key_0: n = 0; break; case Key_1: n = 1; break; case Key_2: n = 2; break; case Key_3: n = 3; break; case Key_4: n = 4; break; case Key_5: n = 5; break; } if( n == 0 ) { m_browsers->closeCurrentBrowser(); return true; } else if( n > 0 && n <= m_browsers->visibleCount() ) { m_browsers->showHideVisibleBrowser( n - 1 ); return true; } } if( o == m_lineEdit ) //the search lineedit { QListViewItem *item; switch( e->key() ) { case Key_Up: case Key_Down: case Key_PageDown: case Key_PageUp: pl->setFocus(); QApplication::sendEvent( pl, e ); return true; case Key_Return: case Key_Enter: item = *It( pl, It::Visible ); m_lineEdit->clear(); pl->m_filtertimer->stop(); //HACK HACK HACK if( e->state() & ControlButton ) { PLItemList in, out; if( e->state() & ShiftButton ) for( It it( pl, It::Visible ); PlaylistItem *x = static_cast<PlaylistItem*>( *it ); ++it ) { pl->queue( x, true ); ( pl->m_nextTracks.contains( x ) ? in : out ).append( x ); } else { It it( pl, It::Visible ); pl->activate( *it ); ++it; for( int i = 0; PlaylistItem *x = static_cast<PlaylistItem*>( *it ); ++i, ++it ) { in.append( x ); pl->m_nextTracks.insert( i, x ); } } if( !in.isEmpty() || !out.isEmpty() ) emit pl->queueChanged( in, out ); pl->setFilter( "" ); pl->ensureItemCentered( ( e->state() & ShiftButton ) ? item : pl->currentTrack() ); } else { pl->setFilter( "" ); if( ( e->state() & ShiftButton ) && item ) { pl->queue( item ); pl->ensureItemCentered( item ); } else { pl->activate( item ); pl->showCurrentTrack(); } } return true; case Key_Escape: m_lineEdit->clear(); return true; default: return false; } } //following are for Playlist::instance() only //we don't handle these in the playlist because often we manipulate the lineEdit too if( o == pl ) { if( pl->currentItem() && ( e->key() == Key_Up && pl->currentItem()->itemAbove() == 0 ) ) { QListViewItem *lastitem = *It( pl, It::Visible ); while( lastitem && lastitem->itemBelow() ) lastitem = lastitem->itemBelow(); pl->currentItem()->setSelected( false ); pl->setCurrentItem( lastitem ); lastitem->setSelected( true ); pl->ensureItemVisible( lastitem ); return true; } if( pl->currentItem() && ( e->key() == Key_Down && pl->currentItem()->itemBelow() == 0 ) ) { pl->currentItem()->setSelected( false ); pl->setCurrentItem( *It( pl, It::Visible ) ); (*It( pl, It::Visible ))->setSelected( true ); pl->ensureItemVisible( *It( pl, It::Visible ) ); return true; } if( e->key() == Key_Delete ) { pl->removeSelectedItems(); return true; } if( ( e->key() >= Key_0 && e->key() <= Key_Z ) || e->key() == Key_Backspace || e->key() == Key_Escape ) { m_lineEdit->setFocus(); QApplication::sendEvent( m_lineEdit, e ); return true; } } #undef e break; default: break; } return QWidget::eventFilter( o, e ); }
void SequenceEditor::slotOKClicked() { // // Values // m_sequence->m_steps.setAutoDelete(true); m_sequence->m_steps.clear(); m_sequence->m_steps.setAutoDelete(false); for (QListViewItem* item = m_list->firstChild(); item != NULL; item = item->itemBelow()) { SceneValue* value = new SceneValue[m_channels]; for (t_channel i = 0; i < m_channels; i++) { value[i].value = item->text(i).toInt(); if (item->text(i) != QString("---")) { value[i].type = Scene::Set; } else { value[i].type = Scene::NoSet; } } m_sequence->m_steps.append(value); } // // Name // m_sequence->setName(m_name->text()); // // Run Order // if (m_runOrderGroup->selected() == m_singleShot) { m_sequence->setRunOrder(Sequence::SingleShot); } else if (m_runOrderGroup->selected() == m_pingPong) { m_sequence->setRunOrder(Sequence::PingPong); } else { m_sequence->setRunOrder(Sequence::Loop); } // // Direction // if (m_directionGroup->selected() == m_backward) { m_sequence->setDirection(Sequence::Backward); } else { m_sequence->setDirection(Sequence::Forward); } accept(); }