summaryrefslogtreecommitdiff
path: root/noncore/settings/aqpkg/networkpkgmgr.cpp
Unidiff
Diffstat (limited to 'noncore/settings/aqpkg/networkpkgmgr.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/aqpkg/networkpkgmgr.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/noncore/settings/aqpkg/networkpkgmgr.cpp b/noncore/settings/aqpkg/networkpkgmgr.cpp
index 78d3df5..a058285 100644
--- a/noncore/settings/aqpkg/networkpkgmgr.cpp
+++ b/noncore/settings/aqpkg/networkpkgmgr.cpp
@@ -630,78 +630,82 @@ InstallData NetworkPackageManager :: dealWithItem( QCheckListItem *item )
630 else 630 else
631 item.recreateLinks = false; 631 item.recreateLinks = false;
632 632
633 // User hit cancel (on dlg - assume remove) 633 // User hit cancel (on dlg - assume remove)
634 return item; 634 return item;
635 } 635 }
636} 636}
637 637
638void NetworkPackageManager :: displayText( const QString &t ) 638void NetworkPackageManager :: displayText( const QString &t )
639{ 639{
640 cout << t << endl; 640 cout << t << endl;
641} 641}
642 642
643 643
644void NetworkPackageManager :: letterPushed( QString t ) 644void NetworkPackageManager :: letterPushed( QString t )
645{ 645{
646 QCheckListItem *top = (QCheckListItem *)packagesList->firstChild(); 646 QCheckListItem *top = (QCheckListItem *)packagesList->firstChild();
647 QCheckListItem *start = (QCheckListItem *)packagesList->currentItem(); 647 QCheckListItem *start = (QCheckListItem *)packagesList->currentItem();
648 if ( packagesList->firstChild() == 0 ) 648 if ( packagesList->firstChild() == 0 )
649 return; 649 return;
650 650
651 QCheckListItem *item; 651 QCheckListItem *item;
652 if ( start == 0 ) 652 if ( start == 0 )
653 { 653 {
654 item = (QCheckListItem *)packagesList->firstChild(); 654 item = (QCheckListItem *)packagesList->firstChild();
655 start = top; 655 start = top;
656 } 656 }
657 else 657 else
658 item = (QCheckListItem *)start->nextSibling(); 658 item = (QCheckListItem *)start->nextSibling();
659 659
660 if ( item == 0 ) 660 if ( item == 0 )
661 item = (QCheckListItem *)packagesList->firstChild(); 661 item = (QCheckListItem *)packagesList->firstChild();
662 do 662 do
663 { 663 {
664 if ( item->text().lower().startsWith( t.lower() ) ) 664 if ( item->text().lower().startsWith( t.lower() ) )
665 { 665 {
666 packagesList->setSelected( item, true ); 666 packagesList->setSelected( item, true );
667 packagesList->ensureItemVisible( item ); 667 packagesList->ensureItemVisible( item );
668 break; 668 break;
669 } 669 }
670 670
671 item = (QCheckListItem *)item->nextSibling(); 671 item = (QCheckListItem *)item->nextSibling();
672 if ( !item ) 672 if ( !item )
673 item = (QCheckListItem *)packagesList->firstChild(); 673 item = (QCheckListItem *)packagesList->firstChild();
674 } while ( item != start); 674 } while ( item != start);
675} 675}
676 676
677 677
678void NetworkPackageManager :: searchForPackage() 678void NetworkPackageManager :: searchForPackage( bool findNext )
679{ 679{
680 bool ok = FALSE; 680 bool ok = false;
681 QString searchText = InputDialog::getText( "Search for package", "Enter package to search for", QString::null, &ok, this ).lower(); 681 if ( !findNext || lastSearchText.isEmpty() )
682 if ( ok && !searchText.isEmpty() ) 682 lastSearchText = InputDialog::getText( "Search for package", "Enter package to search for", lastSearchText, &ok, this ).lower();
683 else
684 ok = true;
685
686 if ( ok && !lastSearchText.isEmpty() )
683 { 687 {
684 cout << "searching for " << searchText << endl; 688 cout << "searching for " << lastSearchText << endl;
685 // look through package list for text startng at current position 689 // look through package list for text startng at current position
686 vector<InstallData> workingPackages; 690 vector<InstallData> workingPackages;
687 QCheckListItem *start = (QCheckListItem *)packagesList->currentItem(); 691 QCheckListItem *start = (QCheckListItem *)packagesList->currentItem();
688 if ( start != 0 ) 692 if ( start != 0 )
689 start = (QCheckListItem *)start->nextSibling(); 693 start = (QCheckListItem *)start->nextSibling();
690 694
691 if ( start == 0 ) 695 if ( start == 0 )
692 start = (QCheckListItem *)packagesList->firstChild(); 696 start = (QCheckListItem *)packagesList->firstChild();
693 697
694 for ( QCheckListItem *item = start; item != 0 ; 698 for ( QCheckListItem *item = start; item != 0 ;
695 item = (QCheckListItem *)item->nextSibling() ) 699 item = (QCheckListItem *)item->nextSibling() )
696 { 700 {
697 cout << "checking " << item->text().lower() << endl; 701 cout << "checking " << item->text().lower() << endl;
698 if ( item->text().lower().find( searchText ) != -1 ) 702 if ( item->text().lower().find( lastSearchText ) != -1 )
699 { 703 {
700 cout << "matched " << item->text() << endl; 704 cout << "matched " << item->text() << endl;
701 packagesList->ensureItemVisible( item ); 705 packagesList->ensureItemVisible( item );
702 packagesList->setCurrentItem( item ); 706 packagesList->setCurrentItem( item );
703 break; 707 break;
704 } 708 }
705 } 709 }
706 } 710 }
707} \ No newline at end of file 711} \ No newline at end of file