Diffstat (limited to 'noncore/unsupported/oipkg/packagelistview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/unsupported/oipkg/packagelistview.cpp | 38 |
1 files changed, 27 insertions, 11 deletions
diff --git a/noncore/unsupported/oipkg/packagelistview.cpp b/noncore/unsupported/oipkg/packagelistview.cpp index 693ea6a..2915ac6 100644 --- a/noncore/unsupported/oipkg/packagelistview.cpp +++ b/noncore/unsupported/oipkg/packagelistview.cpp @@ -49,43 +49,59 @@ PackageListView::PackageListView(QWidget *p, const char* n, PackageManagerSettin void PackageListView::setCurrent( QListViewItem* p ) { if ( !p ) return; activePackageListItem = (PackageListItem*)p; activePackage = activePackageListItem->getPackage(); - pvDebug(5, "start timer"); + if (!activePackage) return; popupTimer->start( 750, true ); } void PackageListView::showPopup() { popupMenu->clear(); destsMenu->clear(); QAction *popupAction; - popupMenu->insertItem( QObject::tr("Install to"), destsMenu ); - QStringList dests = settings->getDestinationNames(); - for (uint i = 0; i < dests.count(); i++ ) - { - popupAction = new QAction( dests[i], QString::null, 0, this, 0 ); - popupAction->addTo( destsMenu ); - } - connect( destsMenu, SIGNAL( activated( int ) ), - this, SLOT( changePackageDest( int ) ) ); + if ( !activePackage->installed() ) + { + popupMenu->insertItem( QObject::tr("Install to"), destsMenu ); + QStringList dests = settings->getDestinationNames(); + QString ad = settings->getDestinationName(); + for (uint i = 0; i < dests.count(); i++ ) + { + popupAction = new QAction( dests[i], QString::null, 0, this, 0 ); + popupAction->addTo( destsMenu ); + if ( dests[i] == ad && activePackage->toInstall() ) + { + popupAction->setToggleAction( true ); + popupAction->setOn(true); + }; + } + connect( destsMenu, SIGNAL( activated( int ) ), + this, SLOT( changePackageDest( int ) ) ); + }else{ +// popupActcat setOn( activePackage->toProcess() ); + } popupMenu->popup( QCursor::pos() ); } void PackageListView::stopTimer( QListViewItem* ) { - pvDebug( 5, "stop timer" ); popupTimer->stop(); } void PackageListView::changePackageDest( int i ) { activePackage->setDest( destsMenu->text(i) ); activePackage->setOn(); activePackage->setLink( settings->createLinks() ); activePackageListItem->displayDetails(); } + +void PackageListView::toggleProcess() +{ + activePackage->toggleProcess() ; + activePackageListItem->displayDetails(); +} |