examples/tools/completer/mainwindow.cpp
branchGCC_SURGE
changeset 31 5daf16870df6
parent 30 5dc02b23752f
equal deleted inserted replaced
27:93b982ccede2 31:5daf16870df6
     4 ** All rights reserved.
     4 ** All rights reserved.
     5 ** Contact: Nokia Corporation (qt-info@nokia.com)
     5 ** Contact: Nokia Corporation (qt-info@nokia.com)
     6 **
     6 **
     7 ** This file is part of the examples of the Qt Toolkit.
     7 ** This file is part of the examples of the Qt Toolkit.
     8 **
     8 **
     9 ** $QT_BEGIN_LICENSE:LGPL$
     9 ** $QT_BEGIN_LICENSE:BSD$
    10 ** No Commercial Usage
    10 ** You may use this file under the terms of the BSD license as follows:
    11 ** This file contains pre-release code and may not be distributed.
    11 **
    12 ** You may use this file in accordance with the terms and conditions
    12 ** "Redistribution and use in source and binary forms, with or without
    13 ** contained in the Technology Preview License Agreement accompanying
    13 ** modification, are permitted provided that the following conditions are
    14 ** this package.
    14 ** met:
    15 **
    15 **   * Redistributions of source code must retain the above copyright
    16 ** GNU Lesser General Public License Usage
    16 **     notice, this list of conditions and the following disclaimer.
    17 ** Alternatively, this file may be used under the terms of the GNU Lesser
    17 **   * Redistributions in binary form must reproduce the above copyright
    18 ** General Public License version 2.1 as published by the Free Software
    18 **     notice, this list of conditions and the following disclaimer in
    19 ** Foundation and appearing in the file LICENSE.LGPL included in the
    19 **     the documentation and/or other materials provided with the
    20 ** packaging of this file.  Please review the following information to
    20 **     distribution.
    21 ** ensure the GNU Lesser General Public License version 2.1 requirements
    21 **   * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
    22 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
    22 **     the names of its contributors may be used to endorse or promote
    23 **
    23 **     products derived from this software without specific prior written
    24 ** In addition, as a special exception, Nokia gives you certain additional
    24 **     permission.
    25 ** rights.  These rights are described in the Nokia Qt LGPL Exception
    25 **
    26 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
    26 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    27 **
    27 ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    28 ** If you have questions regarding the use of this file, please contact
    28 ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
    29 ** Nokia at qt-info@nokia.com.
    29 ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
    30 **
    30 ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    31 **
    31 ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
    32 **
    32 ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
    33 **
    33 ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
    34 **
    34 ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    35 **
    35 ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
    36 **
    36 ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
    37 **
       
    38 ** $QT_END_LICENSE$
    37 ** $QT_END_LICENSE$
    39 **
    38 **
    40 ****************************************************************************/
    39 ****************************************************************************/
    41 
    40 
    42 #include <QtGui>
    41 #include <QtGui>
    43 #include "dirmodel.h"
    42 #include "fsmodel.h"
    44 #include "mainwindow.h"
    43 #include "mainwindow.h"
    45 
    44 
    46 //! [0]
    45 //! [0]
    47 MainWindow::MainWindow(QWidget *parent)
    46 MainWindow::MainWindow(QWidget *parent)
    48     : QMainWindow(parent), completer(0), lineEdit(0)
    47     : QMainWindow(parent), completer(0), lineEdit(0)
    53 
    52 
    54     QLabel *modelLabel = new QLabel;
    53     QLabel *modelLabel = new QLabel;
    55     modelLabel->setText(tr("Model"));
    54     modelLabel->setText(tr("Model"));
    56 
    55 
    57     modelCombo = new QComboBox;
    56     modelCombo = new QComboBox;
    58     modelCombo->addItem(tr("QDirModel"));
    57     modelCombo->addItem(tr("QFileSytemModel"));
    59     modelCombo->addItem(tr("QDirModel that shows full path"));
    58     modelCombo->addItem(tr("QFileSytemModel that shows full path"));
    60     modelCombo->addItem(tr("Country list"));
    59     modelCombo->addItem(tr("Country list"));
    61     modelCombo->addItem(tr("Word list"));
    60     modelCombo->addItem(tr("Word list"));
    62     modelCombo->setCurrentIndex(0);
    61     modelCombo->setCurrentIndex(0);
    63 
    62 
    64     QLabel *modeLabel = new QLabel;
    63     QLabel *modeLabel = new QLabel;
   216     completer->setMaxVisibleItems(maxVisibleSpinBox->value());
   215     completer->setMaxVisibleItems(maxVisibleSpinBox->value());
   217 
   216 
   218     switch (modelCombo->currentIndex()) {
   217     switch (modelCombo->currentIndex()) {
   219     default:
   218     default:
   220     case 0:
   219     case 0:
   221         { // Unsorted QDirModel
   220         { // Unsorted QFileSystemModel
   222             QDirModel *dirModel = new QDirModel(completer);
   221             QFileSystemModel *fsModel = new QFileSystemModel(completer);
   223             completer->setModel(dirModel);
   222             fsModel->setRootPath("");
       
   223             completer->setModel(fsModel);
   224             contentsLabel->setText(tr("Enter file path"));
   224             contentsLabel->setText(tr("Enter file path"));
   225         }
   225         }
   226         break;
   226         break;
   227 //! [11] //! [12]
   227 //! [11] //! [12]
   228     case 1:
   228     case 1:
   229         { // DirModel that shows full paths
   229         {   // FileSystemModel that shows full paths
   230             DirModel *dirModel = new DirModel(completer);
   230             FileSystemModel *fsModel = new FileSystemModel(completer);
   231             completer->setModel(dirModel);
   231             completer->setModel(fsModel);
       
   232             fsModel->setRootPath("");
   232             contentsLabel->setText(tr("Enter file path"));
   233             contentsLabel->setText(tr("Enter file path"));
   233         }
   234         }
   234         break;
   235         break;
   235 //! [12] //! [13]
   236 //! [12] //! [13]
   236     case 2:
   237     case 2: