-rw-r--r-- | libopie/ofileselector/ofileselector.cpp | 345 | ||||
-rw-r--r-- | libopie/ofileselector/ofileselector.h | 125 | ||||
-rw-r--r-- | libopie/ofileselector/olister.h | 1 |
3 files changed, 226 insertions, 245 deletions
diff --git a/libopie/ofileselector/ofileselector.cpp b/libopie/ofileselector/ofileselector.cpp index 98b61f7..c52aa62 100644 --- a/libopie/ofileselector/ofileselector.cpp +++ b/libopie/ofileselector/ofileselector.cpp | |||
@@ -31,5 +31,7 @@ | |||
31 | 31 | ||
32 | #include "ofileview.h" | 32 | #include "ofileview.h" |
33 | #include "ofileselectormain.h" | ||
33 | #include "ofileselector.h" | 34 | #include "ofileselector.h" |
35 | #include "olocallister.h" | ||
34 | #include "olister.h" | 36 | #include "olister.h" |
35 | 37 | ||
@@ -102,38 +104,20 @@ void OFileSelector::setNewVisible( bool visible ) | |||
102 | { | 104 | { |
103 | m_shNew = visible; | 105 | m_shNew = visible; |
104 | if( m_selector == Normal ){ | 106 | if (m_new ) |
105 | delete m_select; | 107 | m_new->show(); |
106 | // we need to initialize but keep the selected mimetype | ||
107 | QString mime = currentMimeType(); | ||
108 | m_select = new FileSelector( mime , | ||
109 | m_stack, "fileselector", | ||
110 | m_shNew, m_shClose); | ||
111 | |||
112 | connect(m_select, SIGNAL(fileSelected( const DocLnk & ) ), | ||
113 | this, SLOT( slotFileBridgeSelected(const DocLnk & ) ) ); | ||
114 | connect(m_select, SIGNAL(closeMe() ), | ||
115 | this, SIGNAL(closeMe() ) ); | ||
116 | //connect to close me and other signals as well | ||
117 | m_stack->addWidget( m_select, Normal ); | ||
118 | }else{ | ||
119 | m_new->show(); | ||
120 | } | ||
121 | } | 108 | } |
122 | void OFileSelector::setCloseVisible( bool visible ) | 109 | void OFileSelector::setCloseVisible( bool visible ) |
123 | { | 110 | { |
124 | m_shClose = visible; | 111 | m_shClose = visible; |
125 | if( m_selector == Normal ){ | 112 | |
126 | setNewVisible( m_shNew ); // yeah baby | 113 | if( m_close ) |
127 | }else{ | ||
128 | m_close->show(); | 114 | m_close->show(); |
129 | } | ||
130 | } | 115 | } |
131 | void OFileSelector::reread() | 116 | void OFileSelector::reread() |
132 | { | 117 | { |
133 | if( m_selector == Normal ){ | 118 | if( m_selector == Normal ) |
134 | setNewVisible( m_shNew ); // make it a initializeSelector | 119 | initializeOldSelector(); |
135 | }else { | 120 | else |
136 | reparse(); | 121 | reparse(); |
137 | } | ||
138 | } | 122 | } |
139 | 123 | ||
@@ -148,4 +132,5 @@ void OFileSelector::setYesCancelVisible( bool show ) | |||
148 | initializeYes(); // FIXME if YesCancel is not shown we will initialize it to hide it :( | 132 | initializeYes(); // FIXME if YesCancel is not shown we will initialize it to hide it :( |
149 | m_shYesNo = show; | 133 | m_shYesNo = show; |
134 | |||
150 | if( m_shYesNo ) | 135 | if( m_shYesNo ) |
151 | m_boxOk->show(); | 136 | m_boxOk->show(); |
@@ -157,5 +142,4 @@ void OFileSelector::setToolbarVisible( bool show ) | |||
157 | { | 142 | { |
158 | m_shTool = show; | 143 | m_shTool = show; |
159 | initializeListView(); // FIXME see above waste of memory | ||
160 | 144 | ||
161 | if(!m_shTool ){ | 145 | if(!m_shTool ){ |
@@ -175,4 +159,5 @@ void OFileSelector::setPermissionBarVisible( bool show ) | |||
175 | m_shPerm = show; | 159 | m_shPerm = show; |
176 | initializePerm(); | 160 | initializePerm(); |
161 | |||
177 | if( m_shPerm ) | 162 | if( m_shPerm ) |
178 | m_checkPerm->show(); | 163 | m_checkPerm->show(); |
@@ -186,7 +171,7 @@ void OFileSelector::setLineEditVisible( bool show ) | |||
186 | m_boxName->show(); | 171 | m_boxName->show(); |
187 | }else{ | 172 | }else{ |
188 | if( m_shLne && m_boxName != 0 ){ // check if we showed before this is the way to go | 173 | // check if we showed before this is the way to go |
189 | m_boxName->hide(); | 174 | if( m_shLne && m_boxName != 0 ) |
190 | } | 175 | m_boxName->hide(); |
191 | } | 176 | } |
192 | m_shLne = show; | 177 | m_shLne = show; |
@@ -197,9 +182,10 @@ void OFileSelector::setChooserVisible( bool show ) | |||
197 | m_shChooser = show; | 182 | m_shChooser = show; |
198 | initializeChooser(); | 183 | initializeChooser(); |
199 | if( m_shChooser ){ | 184 | |
200 | m_boxView->hide(); | 185 | if( m_shChooser ) |
201 | }else{ | 186 | m_boxView->hide(); |
202 | m_boxView->show(); | 187 | else |
203 | } | 188 | m_boxView->show(); |
189 | |||
204 | } | 190 | } |
205 | 191 | ||
@@ -227,13 +213,16 @@ void OFileSelector::setMode(int mode) // FIXME do direct raising | |||
227 | return; | 213 | return; |
228 | } | 214 | } |
229 | void OFileSelector::setShowDirs(bool ) | 215 | void OFileSelector::setShowDirs(bool dir) |
230 | { | 216 | { |
231 | m_dir = true; | 217 | m_dir = dir; |
232 | reparse(); | 218 | if ( m_selector != Fileselector ) |
219 | reparse(); | ||
233 | } | 220 | } |
234 | void OFileSelector::setCaseSensetive(bool caSe ) | 221 | void OFileSelector::setCaseSensetive(bool caSe ) |
235 | { | 222 | { |
236 | m_case = caSe; | 223 | m_case = caSe; |
237 | reparse(); | 224 | |
225 | if ( m_selector != Fileselector ) | ||
226 | reparse(); | ||
238 | } | 227 | } |
239 | void OFileSelector::setShowFiles(bool show ) | 228 | void OFileSelector::setShowFiles(bool show ) |
@@ -381,31 +370,16 @@ void OFileSelector::slotViewCheck(const QString &sel) | |||
381 | { | 370 | { |
382 | if( sel == tr("Documents" ) ){ | 371 | if( sel == tr("Documents" ) ){ |
383 | if( m_select == 0 ){ | 372 | initializeOldSelector(); |
384 | // autMime? fix cause now we use All and not the current | 373 | m_selector = Normal; |
385 | // yes currentMime fixes that for us | 374 | |
386 | QString mime = currentMimeType(); | ||
387 | m_select = new FileSelector(mime, | ||
388 | m_stack, "fileselector", | ||
389 | m_shNew, m_shClose); | ||
390 | connect(m_select, SIGNAL(fileSelected( const DocLnk & ) ), | ||
391 | this, SLOT( slotFileBridgeSelected(const DocLnk & ) ) ); | ||
392 | connect(m_select, SIGNAL(closeMe() ), | ||
393 | this, SIGNAL(closeMe() ) ); | ||
394 | //connect to close me and other signals as well | ||
395 | |||
396 | m_stack->addWidget( m_select, Normal ); | ||
397 | } | ||
398 | m_stack->raiseWidget( Normal ); | ||
399 | m_selector = Normal; | ||
400 | }else if( sel == tr("Files") ){ | 375 | }else if( sel == tr("Files") ){ |
401 | m_selector = Extended; | 376 | m_selector = Extended; |
402 | initializeListView(); | 377 | |
403 | reparse(); | 378 | // FIXME call the factory |
404 | m_stack->raiseWidget( Extended ); | 379 | //reparse(); |
405 | }else if( sel == tr("All Files") ){ | 380 | }else if( sel == tr("All Files") ){ |
406 | m_selector = ExtendedAll; | 381 | m_selector = ExtendedAll; |
407 | initializeListView(); | 382 | /* see above |
408 | reparse(); | 383 | reparse(); */ |
409 | m_stack->raiseWidget( Extended ); // same widget other QFileFilter | ||
410 | } | 384 | } |
411 | } | 385 | } |
@@ -414,7 +388,8 @@ QString OFileSelector::currentMimeType() const{ | |||
414 | QString mime; | 388 | QString mime; |
415 | QString currentText; | 389 | QString currentText; |
416 | if (m_shChooser ) | 390 | if (m_shChooser && m_mimeCheck ) |
417 | currentText = m_mimeCheck->currentText(); | 391 | currentText = m_mimeCheck->currentText(); |
418 | 392 | ||
393 | qWarning("CurrentText" + currentText ); | ||
419 | if (tr("All") == currentText ) return QString::null; | 394 | if (tr("All") == currentText ) return QString::null; |
420 | else if (currentText.isEmpty() ) { | 395 | else if (currentText.isEmpty() ) { |
@@ -423,5 +398,5 @@ QString OFileSelector::currentMimeType() const{ | |||
423 | QMap<QString, QStringList>::ConstIterator it; | 398 | QMap<QString, QStringList>::ConstIterator it; |
424 | it = m_mimetypes.find( currentText ); | 399 | it = m_mimetypes.find( currentText ); |
425 | if ( it == m_mimetypes.end() ) { | 400 | if ( it != m_mimetypes.end() ) { |
426 | mime = it.data().join(";"); | 401 | mime = it.data().join(";"); |
427 | }else{ | 402 | }else{ |
@@ -434,31 +409,9 @@ void OFileSelector::slotMimeCheck(const QString &mime) | |||
434 | { | 409 | { |
435 | if( m_selector == Normal ){ | 410 | if( m_selector == Normal ){ |
436 | //if( m_autoMime ){ | 411 | initializeOldSelector(); |
437 | QString newMimeType; | 412 | |
438 | if (mime != tr("All") ) { | ||
439 | QMap<QString, QStringList>::Iterator it; | ||
440 | it = m_mimetypes.find(mime); | ||
441 | if ( it != m_mimetypes.end() ) { | ||
442 | newMimeType = it.data().join(";"); | ||
443 | }else{ | ||
444 | newMimeType = mime; | ||
445 | } | ||
446 | } | ||
447 | delete m_select; | ||
448 | m_select = new FileSelector( newMimeType, | ||
449 | m_stack, "fileselector", | ||
450 | m_shNew, m_shClose); | ||
451 | |||
452 | connect(m_select, SIGNAL(fileSelected( const DocLnk & ) ), | ||
453 | this, SLOT( slotFileBridgeSelected(const DocLnk & ) ) ); | ||
454 | connect(m_select, SIGNAL(closeMe() ), | ||
455 | this, SIGNAL(closeMe() ) ); | ||
456 | //connect to close me and other signals as well | ||
457 | m_stack->addWidget( m_select, Normal ); | ||
458 | m_stack->raiseWidget( Normal ); | ||
459 | updateMimes(); | 413 | updateMimes(); |
460 | updateMimeCheck(); | 414 | updateMimeCheck(); |
461 | m_mimeCheck->setCurrentItem(indexByString( m_mimeCheck, mime) ); | 415 | m_mimeCheck->setCurrentItem(indexByString( m_mimeCheck, mime) ); |
462 | //} | ||
463 | }else{ // others | 416 | }else{ // others |
464 | qWarning("Mime %s", mime.latin1() ); | 417 | qWarning("Mime %s", mime.latin1() ); |
@@ -525,5 +478,9 @@ void OFileSelector::init() | |||
525 | m_lay->setSpacing(0 ); | 478 | m_lay->setSpacing(0 ); |
526 | 479 | ||
527 | m_stack = new QWidgetStack( this ); | 480 | /* take care of the main view... */ |
481 | initToolbar(); | ||
482 | |||
483 | /* initialize the file lister */ | ||
484 | initLister(); | ||
528 | if( m_selector == Normal ){ | 485 | if( m_selector == Normal ){ |
529 | QString mime; | 486 | QString mime; |
@@ -535,23 +492,8 @@ void OFileSelector::init() | |||
535 | } | 492 | } |
536 | } | 493 | } |
537 | m_select = new FileSelector(mime, | 494 | initializeOldSelector(); |
538 | m_stack, "fileselector", | 495 | }else{ |
539 | m_shNew, m_shClose); | 496 | initializeView(); |
540 | |||
541 | connect(m_select, SIGNAL(fileSelected( const DocLnk & ) ), | ||
542 | this, SLOT( slotFileBridgeSelected(const DocLnk & ) ) ); | ||
543 | connect(m_select, SIGNAL(closeMe() ), | ||
544 | this, SIGNAL( closeMe() ) ); | ||
545 | //connect to close me and other signals as well | ||
546 | |||
547 | m_stack->addWidget( m_select, Normal ); | ||
548 | m_stack->raiseWidget( Normal ); | ||
549 | }else{ // we're in init so it will be EXTENDED or EXTENDED_ALL | ||
550 | // and initializeListview will take care of those | ||
551 | // toolbar get's generade in initializeListView | ||
552 | initializeListView( ); // will raise the widget as well | ||
553 | m_stack->raiseWidget( Extended ); | ||
554 | } | 497 | } |
555 | m_lay->addWidget( m_stack, 100 ); // add to the layout 10 = stretch | ||
556 | 498 | ||
557 | if( m_shLne ) // the LineEdit with the current FileName | 499 | if( m_shLne ) // the LineEdit with the current FileName |
@@ -604,4 +546,7 @@ void OFileSelector::initVars() | |||
604 | m_files = true; | 546 | m_files = true; |
605 | m_showPopup = false; | 547 | m_showPopup = false; |
548 | m_mainView = 0l; | ||
549 | m_fileView = 0l; | ||
550 | m_lister = 0l; | ||
606 | 551 | ||
607 | if(m_pixmaps == 0 ) // init the pixmaps | 552 | if(m_pixmaps == 0 ) // init the pixmaps |
@@ -624,5 +569,4 @@ void OFileSelector::initVars() | |||
624 | m_pseudoLayout = 0; | 569 | m_pseudoLayout = 0; |
625 | m_select = 0; | 570 | m_select = 0; |
626 | m_stack = 0; | ||
627 | m_lay = 0; | 571 | m_lay = 0; |
628 | m_Oselector = 0; | 572 | m_Oselector = 0; |
@@ -631,5 +575,4 @@ void OFileSelector::initVars() | |||
631 | m_boxName = 0; | 575 | m_boxName = 0; |
632 | m_boxView = 0; | 576 | m_boxView = 0; |
633 | m_custom = 0; | ||
634 | m_edit = 0; | 577 | m_edit = 0; |
635 | m_fnLabel = 0; | 578 | m_fnLabel = 0; |
@@ -715,4 +658,5 @@ void OFileSelector::initializeChooser() | |||
715 | m_viewCheck->insertItem( tr("All Files") ); | 658 | m_viewCheck->insertItem( tr("All Files") ); |
716 | /* update to custom views */ | 659 | /* update to custom views */ |
660 | |||
717 | updateMimeCheck(); | 661 | updateMimeCheck(); |
718 | 662 | ||
@@ -723,85 +667,92 @@ void OFileSelector::initializeChooser() | |||
723 | } | 667 | } |
724 | } | 668 | } |
725 | void OFileSelector::initializeListView() | 669 | /* generate the buttons for the toolbar */ |
726 | { | 670 | void OFileSelector::initToolbar() { |
727 | qWarning("initializeListView"); | 671 | m_mainView = new OFileSelectorMain( this ); |
728 | if( m_pseudo == 0 ){ | 672 | |
729 | qWarning("init"); | 673 | /* now generate the tool bar */ |
730 | m_pseudo = new QWidget( m_stack, "Pseudo Widget"); | 674 | qWarning( "toolbar" ); |
675 | m_pseudo = new QWidget( m_mainView, "Pseudo Widget" ); | ||
731 | m_pseudoLayout = new QVBoxLayout( m_pseudo ); | 676 | m_pseudoLayout = new QVBoxLayout( m_pseudo ); |
732 | // toolbar | 677 | |
733 | m_boxToolbar = new QHBox( m_pseudo ); | 678 | m_boxToolbar = new QHBox( m_pseudo ); |
734 | m_boxToolbar->setSpacing(0 ); // next to each other please | 679 | m_boxToolbar->setSpacing( 0 ); |
735 | 680 | ||
736 | // toolbar members | 681 | // tool bar members now |
737 | { | 682 | m_location = new QComboBox( m_boxToolbar ); |
738 | // location QComboBox | 683 | m_location->setEditable( TRUE ); |
739 | m_location = new QComboBox( m_boxToolbar ); | 684 | m_location->setDuplicatesEnabled( FALSE ); |
740 | m_location->setEditable( TRUE ); | 685 | connect( m_location, SIGNAL(activated(const QString& ) ), |
741 | m_location->setDuplicatesEnabled( FALSE ); | 686 | this, SLOT(slotLocationActivated(const QString& )) ); |
742 | connect( m_location, SIGNAL(activated(const QString &) ), | 687 | connect( m_location->lineEdit(), SIGNAL(returnPressed() ) , |
743 | this, SLOT( slotLocationActivated(const QString &) ) ); | 688 | this, SLOT(locationComboChanged() ) ); |
744 | connect( m_location->lineEdit(), SIGNAL(returnPressed() ), | 689 | |
745 | this, SLOT(locationComboChanged() ) ); | 690 | // UP Button |
746 | // UP Button | 691 | m_up = new QPushButton( Resource::loadIconSet("up"), QString::null, |
747 | m_up = new QPushButton(Resource::loadIconSet("up"),"", | 692 | m_boxToolbar, "cdUpButton" ); |
748 | m_boxToolbar,"cdUpButton"); | 693 | m_up->setFixedSize( QSize(20, 20 ) ); |
749 | m_up->setFixedSize( QSize( 20, 20 ) ); | 694 | connect( m_up, SIGNAL( clicked() ), this, SLOT(cdUP() ) ); |
750 | connect(m_up ,SIGNAL(clicked()),this,SLOT(cdUP() ) ); | 695 | m_up->setFlat( TRUE ); |
751 | m_up->setFlat(TRUE); | 696 | |
752 | 697 | // Home Button | |
753 | // Home Button | 698 | m_homeButton = new QPushButton(Resource::loadIconSet("home"), |
754 | m_homeButton = new QPushButton(Resource::loadIconSet("home") , | 699 | QString::null, m_boxToolbar ); |
755 | "", m_boxToolbar); | 700 | m_homeButton->setFixedSize( QSize(20, 20 ) ); |
756 | m_homeButton->setFixedSize( QSize( 20, 20 ) ); | 701 | connect(m_homeButton, SIGNAL(clicked() ), this, SLOT(slotHome() ) ); |
757 | connect(m_homeButton,SIGNAL(clicked()),this,SLOT(slotHome() ) ); | 702 | m_homeButton->setFlat( TRUE ); |
758 | m_homeButton->setFlat(TRUE); | 703 | |
759 | // Documents Button | 704 | // Documents Button |
760 | m_docButton = new QPushButton(Resource::loadIconSet("DocsIcon"),"", | 705 | m_docButton = new QPushButton( Resource::loadIconSet("DocsIcon"), |
761 | m_boxToolbar,"docsButton"); | 706 | QString::null, m_boxToolbar, |
762 | m_docButton->setFixedSize( QSize( 20, 20 ) ); | 707 | "docsButton" ); |
763 | connect(m_homeButton,SIGNAL(clicked()),this,SLOT(slotDoc() ) ); | 708 | m_docButton->setFixedSize( QSize(20, 20 ) ); |
764 | m_docButton->setFlat(TRUE); | 709 | m_docButton->setFlat( true ); |
765 | 710 | connect( m_docButton, SIGNAL(clicked() ), | |
766 | // Close button | 711 | this, SLOT(slotDoc() ) ); |
767 | m_close = new QPushButton( Resource::loadIconSet( "close"), "", | 712 | |
768 | m_boxToolbar ); | 713 | // close button |
769 | connect( m_close, SIGNAL(clicked() ), this, SIGNAL(closeMe() ) ); | 714 | m_close = new QPushButton( Resource::loadIconSet( "close"), "", |
770 | m_close->setFixedSize( 20, 20 ); | 715 | m_boxToolbar ); |
771 | 716 | connect( m_close, SIGNAL(clicked() ), this, SIGNAL(closeMe() ) ); | |
772 | m_boxToolbar->setFixedHeight( 20 ); | 717 | m_close->setFixedSize( 20, 20 ); |
773 | m_pseudoLayout->addWidget(m_boxToolbar ); | 718 | |
774 | 719 | m_boxToolbar->setFixedHeight( 20 ); | |
775 | // let;s fill the Location ComboBox | 720 | m_pseudoLayout->addWidget(m_boxToolbar ); |
776 | StorageInfo storage; | 721 | |
777 | const QList<FileSystem> &fs = storage.fileSystems(); | 722 | /* init the locations */ |
778 | QListIterator<FileSystem> it ( fs ); | 723 | initLocations(); |
779 | for( ; it.current(); ++it ){ | 724 | |
725 | if( !m_shTool ){ | ||
726 | m_location->hide( ); | ||
727 | m_up->hide( ); | ||
728 | m_homeButton->hide( ); | ||
729 | m_docButton->hide( ); | ||
730 | } | ||
731 | if(!m_shClose ) | ||
732 | m_close->hide(); | ||
733 | |||
734 | m_mainView->setToolbar( m_pseudo ); | ||
735 | m_lay->addWidget( m_mainView, 100 ); | ||
736 | } | ||
737 | /* initialize the OLocalLister */ | ||
738 | void OFileSelector::initLister() { | ||
739 | m_lister = new OLocalLister(this); | ||
740 | } | ||
741 | /* put default locations into the bar */ | ||
742 | void OFileSelector::initLocations () { | ||
743 | |||
744 | // let;s fill the Location ComboBox | ||
745 | StorageInfo storage; | ||
746 | const QList<FileSystem> &fs = storage.fileSystems(); | ||
747 | QListIterator<FileSystem> it ( fs ); | ||
748 | for( ; it.current(); ++it ){ | ||
780 | const QString disk = (*it)->name(); | 749 | const QString disk = (*it)->name(); |
781 | const QString path = (*it)->path(); | 750 | const QString path = (*it)->path(); |
782 | m_location->insertItem(path+ "<-"+disk ); | 751 | m_location->insertItem(path+ "<-"+disk ); |
783 | } | 752 | } |
784 | int count = m_location->count(); | 753 | int count = m_location->count(); |
785 | m_location->insertItem( m_currentDir ); | 754 | m_location->insertItem( m_currentDir ); |
786 | m_location->setCurrentItem( count ); | 755 | m_location->setCurrentItem( count ); |
787 | // due to the New and Close button we can not simply hide m_boxToolBar to not show it | ||
788 | if( !m_shTool ){ | ||
789 | m_location->hide( ); | ||
790 | m_up->hide( ); | ||
791 | m_homeButton->hide( ); | ||
792 | m_docButton->hide( ); | ||
793 | } | ||
794 | if(!m_shClose ) | ||
795 | m_close->hide(); | ||
796 | //if(!m_shNew) | ||
797 | //m_close->hide(); | ||
798 | |||
799 | } // off toolbar | ||
800 | // the Main ListView | ||
801 | // make a QWidgetStack first so Views can share the Toolbar | ||
802 | 756 | ||
803 | // m_pseudoLayout->addWidget( m_View, 288 ); | ||
804 | m_stack->addWidget( m_pseudo, Extended ); | ||
805 | } | ||
806 | } | 757 | } |
807 | void OFileSelector::initializePerm() | 758 | void OFileSelector::initializePerm() |
@@ -1003,8 +954,8 @@ void OFileSelector::reparse() | |||
1003 | 954 | ||
1004 | OFileView* OFileSelector::currentView() { | 955 | OFileView* OFileSelector::currentView() { |
1005 | return 0l; | 956 | return m_fileView; |
1006 | } | 957 | } |
1007 | OFileView* OFileSelector::currentView() const{ | 958 | OFileView* OFileSelector::currentView() const{ |
1008 | return 0l; | 959 | return m_fileView; |
1009 | } | 960 | } |
1010 | int OFileSelector::filter() { | 961 | int OFileSelector::filter() { |
@@ -1048,4 +999,24 @@ QPixmap OFileSelector::pixmap( const QString& s ) { | |||
1048 | } | 999 | } |
1049 | OLister* OFileSelector::currentLister()const { | 1000 | OLister* OFileSelector::currentLister()const { |
1050 | return 0l; | 1001 | return m_lister; |
1002 | } | ||
1003 | void OFileSelector::initializeOldSelector() { | ||
1004 | qWarning("initializeOldSelector"); | ||
1005 | |||
1006 | delete m_select; | ||
1007 | |||
1008 | // we need to initialize but keep the selected mimetype | ||
1009 | /* we default not to show close and new buttons */ | ||
1010 | QString mime = currentMimeType(); | ||
1011 | qWarning("MimeType " + mime ); | ||
1012 | m_select = new FileSelector( mime , | ||
1013 | m_mainView, "fileselector", | ||
1014 | FALSE, FALSE); | ||
1015 | |||
1016 | connect(m_select, SIGNAL(fileSelected( const DocLnk & ) ), | ||
1017 | this, SLOT( slotFileBridgeSelected(const DocLnk & ) ) ); | ||
1018 | connect(m_select, SIGNAL(closeMe() ), | ||
1019 | this, SIGNAL(closeMe() ) ); | ||
1020 | //connect to close me and other signals as well | ||
1021 | m_mainView->setWidget( m_select ); | ||
1051 | } | 1022 | } |
diff --git a/libopie/ofileselector/ofileselector.h b/libopie/ofileselector/ofileselector.h index a7b363f..bf9a26b 100644 --- a/libopie/ofileselector/ofileselector.h +++ b/libopie/ofileselector/ofileselector.h | |||
@@ -70,4 +70,5 @@ class QHBox; | |||
70 | class OFileView; | 70 | class OFileView; |
71 | class OLister; | 71 | class OLister; |
72 | class OFileSelectorMain; | ||
72 | // | 73 | // |
73 | 74 | ||
@@ -109,5 +110,5 @@ class OFileSelector : public QWidget { | |||
109 | * ExtendedAll also shows 'hidden' files | 110 | * ExtendedAll also shows 'hidden' files |
110 | */ | 111 | */ |
111 | enum Selector{Normal=0, Extended = 1, ExtendedAll =2 }; | 112 | enum Selector{Normal=0, Extended = 1, ExtendedAll = 2}; |
112 | 113 | ||
113 | /** | 114 | /** |
@@ -343,4 +344,6 @@ class OFileSelector : public QWidget { | |||
343 | int sorting(); | 344 | int sorting(); |
344 | QPixmap pixmap( const QString& ); | 345 | QPixmap pixmap( const QString& ); |
346 | /* our tool bar */ | ||
347 | QWidget* toolBar(); | ||
345 | 348 | ||
346 | signals: | 349 | signals: |
@@ -370,4 +373,7 @@ class OFileSelector : public QWidget { | |||
370 | private: | 373 | private: |
371 | 374 | ||
375 | OFileSelectorMain* m_mainView; | ||
376 | OLister* m_lister; | ||
377 | OFileView* m_fileView; | ||
372 | FileSelector* m_select; | 378 | FileSelector* m_select; |
373 | int m_mode, m_selector; | 379 | int m_mode, m_selector; |
@@ -391,70 +397,73 @@ class OFileSelector : public QWidget { | |||
391 | QString m_currentDir; | 397 | QString m_currentDir; |
392 | QString m_name; | 398 | QString m_name; |
393 | QMap<QString, QStringList> m_mimetypes; | 399 | |
394 | 400 | QMap<QString, QStringList> m_mimetypes; | |
395 | 401 | ||
396 | QWidgetStack *m_stack; | 402 | QVBoxLayout *m_lay; |
397 | QVBoxLayout *m_lay; | 403 | QGridLayout *m_Oselector; |
398 | QGridLayout *m_Oselector; | 404 | |
399 | 405 | QHBox *m_boxToolbar; | |
400 | QHBox *m_boxToolbar; | 406 | QHBox *m_boxOk; |
401 | QHBox *m_boxOk; | 407 | QHBox *m_boxName; |
402 | QHBox *m_boxName; | 408 | QHBox *m_boxView; |
403 | QHBox *m_boxView; | 409 | |
404 | 410 | ||
405 | QPopupMenu *m_custom; | 411 | QLineEdit *m_edit; |
406 | 412 | QLabel *m_fnLabel; | |
407 | QLineEdit *m_edit; | 413 | |
408 | QLabel *m_fnLabel; | 414 | bool m_shClose : 1; |
409 | 415 | bool m_shNew : 1; | |
410 | bool m_shClose : 1; | 416 | bool m_shTool : 1; |
411 | bool m_shNew : 1; | 417 | bool m_shPerm : 1; |
412 | bool m_shTool : 1; | 418 | bool m_shLne : 1; |
413 | bool m_shPerm : 1; | 419 | bool m_shChooser : 1; |
414 | bool m_shLne : 1; | 420 | bool m_shYesNo : 1; |
415 | bool m_shChooser : 1; | 421 | bool m_boCheckPerm : 1; |
416 | bool m_shYesNo : 1; | 422 | bool m_autoMime : 1; |
417 | bool m_boCheckPerm : 1; | 423 | bool m_case : 1; |
418 | bool m_autoMime : 1; | 424 | bool m_dir : 1; |
419 | bool m_case : 1; | 425 | bool m_files : 1; |
420 | bool m_dir : 1; | 426 | bool m_showPopup : 1; |
421 | bool m_files : 1; | 427 | bool m_showHidden : 1; |
422 | bool m_showPopup : 1; | 428 | |
423 | 429 | void initVars(); | |
424 | void initVars(); | 430 | |
425 | 431 | void delItems(); | |
426 | void delItems(); | 432 | void initializeName(); |
427 | void initializeName(); | 433 | void initializeYes(); |
428 | void initializeYes(); | 434 | void initializeChooser(); |
429 | void initializeChooser(); | 435 | void initializePerm(); |
430 | void initializeListView(); | 436 | void initPics(); |
431 | void initializePerm(); | 437 | bool compliesMime(const QString &path, |
432 | void initPics(); | 438 | const QString &mime); |
433 | bool compliesMime(const QString &path, | 439 | bool compliesMime(const QString& mime ); |
434 | const QString &mime); | ||
435 | bool compliesMime(const QString& mime ); | ||
436 | /** | 440 | /** |
437 | * Updates the QComboBox with the current mimetypes | 441 | * Updates the QComboBox with the current mimetypes |
438 | */ | 442 | */ |
439 | void updateMimeCheck(); | 443 | void updateMimeCheck(); |
440 | 444 | ||
445 | void initializeOldSelector(); | ||
446 | void initLister(); | ||
447 | void initToolbar(); | ||
448 | void initLocations(); | ||
449 | void initializeView() {}; // FIXME | ||
441 | /** | 450 | /** |
442 | * Returns the current mimetype | 451 | * Returns the current mimetype |
443 | */ | 452 | */ |
444 | QString currentMimeType()const; | 453 | QString currentMimeType()const; |
445 | class OFileSelectorPrivate; | 454 | class OFileSelectorPrivate; |
446 | OFileSelectorPrivate *d; | 455 | OFileSelectorPrivate *d; |
447 | static QMap<QString,QPixmap> *m_pixmaps; | 456 | static QMap<QString,QPixmap> *m_pixmaps; |
448 | 457 | ||
449 | private slots: | 458 | private slots: |
450 | void slotFileSelected(const QString & ); // not really meant to be a slot | 459 | void slotFileSelected(const QString & ); // not really meant to be a slot |
451 | void slotFileBridgeSelected( const DocLnk & ); | 460 | void slotFileBridgeSelected( const DocLnk & ); |
452 | // listview above | 461 | // listview above |
453 | // popup below | 462 | // popup below |
454 | virtual void slotDelete(); | 463 | virtual void slotDelete(); |
455 | virtual void cdUP(); | 464 | virtual void cdUP(); |
456 | virtual void slotHome(); | 465 | virtual void slotHome(); |
457 | virtual void slotDoc(); | 466 | virtual void slotDoc(); |
458 | virtual void slotNavigate( ); | 467 | virtual void slotNavigate( ); |
459 | 468 | ||
460 | /* for OLister */ | 469 | /* for OLister */ |
diff --git a/libopie/ofileselector/olister.h b/libopie/ofileselector/olister.h index 081b876..ef61cab 100644 --- a/libopie/ofileselector/olister.h +++ b/libopie/ofileselector/olister.h | |||
@@ -5,4 +5,5 @@ | |||
5 | #include <qmap.h> | 5 | #include <qmap.h> |
6 | #include <qstring.h> | 6 | #include <qstring.h> |
7 | #include <qstringlist.h> | ||
7 | 8 | ||
8 | class OFileSelector; | 9 | class OFileSelector; |