Ignore:
Timestamp:
May 5, 2011, 5:36:53 AM (14 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.7.2 sources from branches/vendor/nokia/qt.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/examples/itemviews/addressbook/tablemodel.cpp

    r651 r846  
    11/****************************************************************************
    22**
    3 ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
     3** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
    44** All rights reserved.
    55** Contact: Nokia Corporation (qt-info@nokia.com)
     
    77** This file is part of the examples of the Qt Toolkit.
    88**
    9 ** $QT_BEGIN_LICENSE:LGPL$
    10 ** Commercial Usage
    11 ** Licensees holding valid Qt Commercial licenses may use this file in
    12 ** accordance with the Qt Commercial License Agreement provided with the
    13 ** Software or, alternatively, in accordance with the terms contained in
    14 ** a written agreement between you and Nokia.
     9** $QT_BEGIN_LICENSE:BSD$
     10** You may use this file under the terms of the BSD license as follows:
    1511**
    16 ** GNU Lesser General Public License Usage
    17 ** Alternatively, this file may be used under the terms of the GNU Lesser
    18 ** General Public License version 2.1 as published by the Free Software
    19 ** Foundation and appearing in the file LICENSE.LGPL included in the
    20 ** packaging of this file.  Please review the following information to
    21 ** ensure the GNU Lesser General Public License version 2.1 requirements
    22 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
     12** "Redistribution and use in source and binary forms, with or without
     13** modification, are permitted provided that the following conditions are
     14** met:
     15**   * Redistributions of source code must retain the above copyright
     16**     notice, this list of conditions and the following disclaimer.
     17**   * Redistributions in binary form must reproduce the above copyright
     18**     notice, this list of conditions and the following disclaimer in
     19**     the documentation and/or other materials provided with the
     20**     distribution.
     21**   * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
     22**     the names of its contributors may be used to endorse or promote
     23**     products derived from this software without specific prior written
     24**     permission.
    2325**
    24 ** In addition, as a special exception, Nokia gives you certain additional
    25 ** rights.  These rights are described in the Nokia Qt LGPL Exception
    26 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
    27 **
    28 ** GNU General Public License Usage
    29 ** Alternatively, this file may be used under the terms of the GNU
    30 ** General Public License version 3.0 as published by the Free Software
    31 ** Foundation and appearing in the file LICENSE.GPL included in the
    32 ** packaging of this file.  Please review the following information to
    33 ** ensure the GNU General Public License version 3.0 requirements will be
    34 ** met: http://www.gnu.org/copyleft/gpl.html.
    35 **
    36 ** If you have questions regarding the use of this file, please contact
    37 ** Nokia at qt-info@nokia.com.
     26** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     27** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     28** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
     29** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     30** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
     31** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
     32** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     33** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     34** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     35** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     36** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
    3837** $QT_END_LICENSE$
    3938**
     
    7473    if (!index.isValid())
    7574        return QVariant();
    76    
     75
    7776    if (index.row() >= listOfPairs.size() || index.row() < 0)
    7877        return QVariant();
    79    
     78
    8079    if (role == Qt::DisplayRole) {
    8180        QPair<QString, QString> pair = listOfPairs.at(index.row());
    82        
     81
    8382        if (index.column() == 0)
    8483            return pair.first;
     
    9594    if (role != Qt::DisplayRole)
    9695        return QVariant();
    97    
     96
    9897    if (orientation == Qt::Horizontal) {
    9998        switch (section) {
    10099            case 0:
    101100                return tr("Name");
    102                
     101
    103102            case 1:
    104103                return tr("Address");
    105                
     104
    106105            default:
    107106                return QVariant();
     
    117116    Q_UNUSED(index);
    118117    beginInsertRows(QModelIndex(), position, position+rows-1);
    119    
     118
    120119    for (int row=0; row < rows; row++) {
    121120        QPair<QString, QString> pair(" ", " ");
     
    131130bool TableModel::removeRows(int position, int rows, const QModelIndex &index)
    132131{
    133     Q_UNUSED(index);   
     132    Q_UNUSED(index);
    134133    beginRemoveRows(QModelIndex(), position, position+rows-1);
    135    
     134
    136135    for (int row=0; row < rows; ++row) {
    137136        listOfPairs.removeAt(position);
     
    146145bool TableModel::setData(const QModelIndex &index, const QVariant &value, int role)
    147146{
    148         if (index.isValid() && role == Qt::EditRole) {
    149                 int row = index.row();
    150                                
    151                 QPair<QString, QString> p = listOfPairs.value(row);
    152                
    153                 if (index.column() == 0)
    154                         p.first = value.toString();
    155                 else if (index.column() == 1)
    156                         p.second = value.toString();
     147    if (index.isValid() && role == Qt::EditRole) {
     148        int row = index.row();
     149
     150        QPair<QString, QString> p = listOfPairs.value(row);
     151
     152        if (index.column() == 0)
     153            p.first = value.toString();
     154        else if (index.column() == 1)
     155            p.second = value.toString();
    157156        else
    158157            return false;
    159            
     158
    160159        listOfPairs.replace(row, p);
    161                 emit(dataChanged(index, index));
    162                
     160        emit(dataChanged(index, index));
     161
    163162        return true;
    164         }
     163    }
    165164
    166         return false;
     165    return false;
    167166}
    168167//! [6]
     
    173172    if (!index.isValid())
    174173        return Qt::ItemIsEnabled;
    175    
     174
    176175    return QAbstractTableModel::flags(index) | Qt::ItemIsEditable;
    177176}
Note: See TracChangeset for help on using the changeset viewer.