Hi again,

app.cpp
Qt Code:
  1. #include "app.hpp"
  2.  
  3. App::App(QWidget * p_parent): QMainWindow(p_parent)
  4. {
  5. m_ui.setupUi(this);
  6.  
  7. model = new QFileSystemModel(this);
  8. model->setRootPath(QDir::currentPath());
  9. proxyModel = new QSortFilterProxyModel(this);
  10. proxyModel->setDynamicSortFilter(true);
  11. proxyModel->setSourceModel(model);
  12. proxyModel->mapFromSource(model->index(QDir::currentPath()));
  13.  
  14. m_ui.listView->setModel(proxyModel);
  15.  
  16. m_ui.listView->setRootIndex(proxyModel->mapFromSource(model->index(QDir::currentPath())));
  17.  
  18. connect(m_ui.lineEdit, SIGNAL(textChanged(QString)), this, SLOT(filter(QString)));
  19.  
  20. }
  21.  
  22. void App::filter(QString pattern_filter)
  23. {
  24. proxyModel->setFilterFixedString(pattern_filter);
  25. }
To copy to clipboard, switch view to plain text mode 

app.hpp:
Qt Code:
  1. #ifndef _HPP_APP
  2. #define _HPP_APP
  3.  
  4. #include <QFileSystemModel>
  5. #include <QMainWindow>
  6. #include <QSortFilterProxyModel>
  7. #include <QFileSystemModel>
  8. #include <QDir>
  9. #include <QTextStream>
  10. #include "ui_app.h"
  11.  
  12.  
  13. class App : public QMainWindow
  14. {
  15. Q_OBJECT
  16.  
  17. public:
  18. App(QWidget * p_parent = 0);
  19.  
  20. public slots:
  21. void filter(QString );
  22.  
  23. private:
  24. Ui::MainWindow m_ui;
  25. QSortFilterProxyModel *proxyModel;
  26. QFileSystemModel *model;
  27.  
  28. };
  29.  
  30. #endif
To copy to clipboard, switch view to plain text mode 

ui_app.h:
Qt Code:
  1. /********************************************************************************
  2. ** Form generated from reading UI file 'app.ui'
  3. **
  4. ** Created: Sat Aug 7 21:35:40 2010
  5. ** by: Qt User Interface Compiler version 4.6.2
  6. **
  7. ** WARNING! All changes made in this file will be lost when recompiling UI file!
  8. ********************************************************************************/
  9.  
  10. #ifndef UI_APP_H
  11. #define UI_APP_H
  12.  
  13. #include <QtCore/QVariant>
  14. #include <QtGui/QAction>
  15. #include <QtGui/QApplication>
  16. #include <QtGui/QButtonGroup>
  17. #include <QtGui/QHeaderView>
  18. #include <QtGui/QLineEdit>
  19. #include <QtGui/QListView>
  20. #include <QtGui/QMainWindow>
  21. #include <QtGui/QMenuBar>
  22. #include <QtGui/QStatusBar>
  23. #include <QtGui/QToolBar>
  24. #include <QtGui/QVBoxLayout>
  25. #include <QtGui/QWidget>
  26.  
  27. QT_BEGIN_NAMESPACE
  28.  
  29. class Ui_MainWindow
  30. {
  31. public:
  32. QWidget *centralwidget;
  33. QVBoxLayout *verticalLayout;
  34. QLineEdit *lineEdit;
  35. QListView *listView;
  36. QMenuBar *menubar;
  37. QStatusBar *statusbar;
  38. QToolBar *toolBar;
  39.  
  40. void setupUi(QMainWindow *MainWindow)
  41. {
  42. if (MainWindow->objectName().isEmpty())
  43. MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
  44. MainWindow->resize(686, 402);
  45. centralwidget = new QWidget(MainWindow);
  46. centralwidget->setObjectName(QString::fromUtf8("centralwidget"));
  47. verticalLayout = new QVBoxLayout(centralwidget);
  48. verticalLayout->setObjectName(QString::fromUtf8("verticalLayout"));
  49. lineEdit = new QLineEdit(centralwidget);
  50. lineEdit->setObjectName(QString::fromUtf8("lineEdit"));
  51.  
  52. verticalLayout->addWidget(lineEdit);
  53.  
  54. listView = new QListView(centralwidget);
  55. listView->setObjectName(QString::fromUtf8("listView"));
  56.  
  57. verticalLayout->addWidget(listView);
  58.  
  59. MainWindow->setCentralWidget(centralwidget);
  60. menubar = new QMenuBar(MainWindow);
  61. menubar->setObjectName(QString::fromUtf8("menubar"));
  62. menubar->setGeometry(QRect(0, 0, 686, 25));
  63. MainWindow->setMenuBar(menubar);
  64. statusbar = new QStatusBar(MainWindow);
  65. statusbar->setObjectName(QString::fromUtf8("statusbar"));
  66. MainWindow->setStatusBar(statusbar);
  67. toolBar = new QToolBar(MainWindow);
  68. toolBar->setObjectName(QString::fromUtf8("toolBar"));
  69. MainWindow->addToolBar(Qt::TopToolBarArea, toolBar);
  70.  
  71. retranslateUi(MainWindow);
  72.  
  73. QMetaObject::connectSlotsByName(MainWindow);
  74. } // setupUi
  75.  
  76. void retranslateUi(QMainWindow *MainWindow)
  77. {
  78. MainWindow->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0, QApplication::UnicodeUTF8));
  79. toolBar->setWindowTitle(QApplication::translate("MainWindow", "toolBar", 0, QApplication::UnicodeUTF8));
  80. } // retranslateUi
  81.  
  82. };
  83.  
  84. namespace Ui {
  85. class MainWindow: public Ui_MainWindow {};
  86. } // namespace Ui
  87.  
  88. QT_END_NAMESPACE
  89.  
  90. #endif // UI_APP_H
To copy to clipboard, switch view to plain text mode 

main.cpp
Qt Code:
  1. #include <QtGui/QApplication>
  2. #include "app.hpp"
  3.  
  4.  
  5. int main(int argc, char ** argv)
  6. {
  7. QApplication app(argc, argv);
  8. App myapp;
  9. myapp.show();
  10.  
  11. return app.exec();
  12. }
To copy to clipboard, switch view to plain text mode