-rw-r--r-- | noncore/apps/advancedfm/advancedfmMenu.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/noncore/apps/advancedfm/advancedfmMenu.cpp b/noncore/apps/advancedfm/advancedfmMenu.cpp index 2461e26..81a4318 100644 --- a/noncore/apps/advancedfm/advancedfmMenu.cpp +++ b/noncore/apps/advancedfm/advancedfmMenu.cpp | |||
@@ -735,104 +735,105 @@ bool AdvancedFm::eventFilter( QObject * o, QEvent * e ) { | |||
735 | QKeyEvent *ke = (QKeyEvent*)e; | 735 | QKeyEvent *ke = (QKeyEvent*)e; |
736 | if ( ke->key() == Key_Return || | 736 | if ( ke->key() == Key_Return || |
737 | ke->key() == Key_Enter ) { | 737 | ke->key() == Key_Enter ) { |
738 | okRename(); | 738 | okRename(); |
739 | return true; | 739 | return true; |
740 | } | 740 | } |
741 | else if ( ke->key() == Key_Escape ) { | 741 | else if ( ke->key() == Key_Escape ) { |
742 | cancelRename(); | 742 | cancelRename(); |
743 | return true; | 743 | return true; |
744 | } | 744 | } |
745 | } | 745 | } |
746 | else if ( e->type() == QEvent::FocusOut ) { | 746 | else if ( e->type() == QEvent::FocusOut ) { |
747 | cancelRename(); | 747 | cancelRename(); |
748 | return true; | 748 | return true; |
749 | } | 749 | } |
750 | } | 750 | } |
751 | if ( o->inherits( "QListView" ) ) { | 751 | if ( o->inherits( "QListView" ) ) { |
752 | if ( e->type() == QEvent::FocusIn ) { | 752 | if ( e->type() == QEvent::FocusIn ) { |
753 | if( o == Local_View) { //keep track of which view | 753 | if( o == Local_View) { //keep track of which view |
754 | whichTab=1; | 754 | whichTab=1; |
755 | } | 755 | } |
756 | else { | 756 | else { |
757 | whichTab=2; | 757 | whichTab=2; |
758 | } | 758 | } |
759 | } | 759 | } |
760 | OtherView()->setSelected( OtherView()->currentItem(), FALSE );//make sure there's correct selection | 760 | OtherView()->setSelected( OtherView()->currentItem(), FALSE );//make sure there's correct selection |
761 | } | 761 | } |
762 | 762 | ||
763 | return QWidget::eventFilter( o, e ); | 763 | return QWidget::eventFilter( o, e ); |
764 | } | 764 | } |
765 | 765 | ||
766 | 766 | ||
767 | void AdvancedFm::cancelRename() { | 767 | void AdvancedFm::cancelRename() { |
768 | // qDebug("cancel rename"); | 768 | // qDebug("cancel rename"); |
769 | QListView * view; | 769 | QListView * view; |
770 | view = CurrentView(); | 770 | view = CurrentView(); |
771 | 771 | ||
772 | bool resetFocus = view->viewport()->focusProxy() == renameBox; | 772 | bool resetFocus = view->viewport()->focusProxy() == renameBox; |
773 | delete renameBox; | 773 | delete renameBox; |
774 | renameBox = 0; | 774 | renameBox = 0; |
775 | if ( resetFocus ) { | 775 | if ( resetFocus ) { |
776 | view->viewport()->setFocusProxy( view); | 776 | view->viewport()->setFocusProxy( view); |
777 | view->setFocus(); | 777 | view->setFocus(); |
778 | } | 778 | } |
779 | } | 779 | } |
780 | 780 | ||
781 | void AdvancedFm::doRename(QListView * view) { | 781 | void AdvancedFm::doRename(QListView * view) { |
782 | if( !CurrentView()->currentItem()) return; | 782 | if( !CurrentView()->currentItem()) return; |
783 | 783 | ||
784 | QRect r = view->itemRect( view->currentItem( )); | 784 | QRect r = view->itemRect( view->currentItem( )); |
785 | r = QRect( view->viewportToContents( r.topLeft() ), r.size() ); | 785 | r = QRect( view->viewportToContents( r.topLeft() ), r.size() ); |
786 | r.setX( view->contentsX() ); | 786 | r.setX( view->contentsX() ); |
787 | 787 | ||
788 | if ( r.width() > view->visibleWidth() ) | 788 | if ( r.width() > view->visibleWidth() ) |
789 | r.setWidth( view->visibleWidth() ); | 789 | r.setWidth( view->visibleWidth() ); |
790 | 790 | ||
791 | renameBox = new QLineEdit( view->viewport(), "qt_renamebox" ); | 791 | renameBox = new QLineEdit( view->viewport(), "qt_renamebox" ); |
792 | renameBox->setFrame(true); | 792 | renameBox->setFrame(true); |
793 | 793 | ||
794 | renameBox->setText( view->currentItem()->text(0) ); | 794 | renameBox->setText( view->currentItem()->text(0) ); |
795 | 795 | ||
796 | renameBox->selectAll(); | 796 | renameBox->selectAll(); |
797 | renameBox->installEventFilter( this ); | 797 | renameBox->installEventFilter( this ); |
798 | 798 | ||
799 | view->addChild( renameBox, r.x(), r.y() ); | 799 | view->addChild( renameBox, r.x(), r.y() ); |
800 | 800 | ||
801 | renameBox->resize( r.size() ); | 801 | renameBox->resize( r.size() ); |
802 | 802 | ||
803 | view->viewport()->setFocusProxy( renameBox ); | 803 | view->viewport()->setFocusProxy( renameBox ); |
804 | 804 | ||
805 | renameBox->setFocus(); | 805 | renameBox->setFocus(); |
806 | renameBox->show(); | 806 | renameBox->show(); |
807 | } | 807 | } |
808 | 808 | ||
809 | 809 | ||
810 | void AdvancedFm::renameIt() { | 810 | void AdvancedFm::renameIt() { |
811 | if( !CurrentView()->currentItem()) return; | 811 | if( !CurrentView()->currentItem()) return; |
812 | 812 | ||
813 | QListView *thisView = CurrentView(); | 813 | QListView *thisView = CurrentView(); |
814 | oldName = thisView->currentItem()->text(0); | 814 | oldName = thisView->currentItem()->text(0); |
815 | doRename( thisView ); | 815 | doRename( thisView ); |
816 | } | 816 | } |
817 | 817 | ||
818 | void AdvancedFm::okRename() { | 818 | void AdvancedFm::okRename() { |
819 | if( !renameBox) return; | 819 | if( !renameBox) return; |
820 | 820 | ||
821 | QString newName = renameBox->text(); | 821 | QString newName = renameBox->text(); |
822 | cancelRename(); | 822 | cancelRename(); |
823 | QListView * view = CurrentView(); | 823 | QListView * view = CurrentView(); |
824 | QString path = CurrentDir()->canonicalPath() + "/"; | 824 | QString path = CurrentDir()->canonicalPath() + "/"; |
825 | oldName = path + oldName; | 825 | oldName = path + oldName; |
826 | newName = path + newName; | 826 | newName = path + newName; |
827 | if( rename( oldName.latin1(), newName.latin1())== -1) | 827 | if( rename( oldName.latin1(), newName.latin1())== -1) |
828 | QMessageBox::message(tr("Note"),tr("Could not rename")); | 828 | QMessageBox::message(tr("Note"),tr("Could not rename")); |
829 | else | 829 | else |
830 | oldName = ""; | 830 | oldName = ""; |
831 | view->takeItem( view->currentItem() ); | 831 | QListViewItem *item = view->currentItem(); |
832 | delete view->currentItem(); | 832 | view->takeItem( item ); |
833 | delete item; | ||
833 | rePopulate(); | 834 | rePopulate(); |
834 | } | 835 | } |
835 | 836 | ||
836 | void AdvancedFm::openSearch() { | 837 | void AdvancedFm::openSearch() { |
837 | QMessageBox::message(tr("Note"),tr("Not Yet Implemented")); | 838 | QMessageBox::message(tr("Note"),tr("Not Yet Implemented")); |
838 | } | 839 | } |