tests/qtp/qtp_addressbook/addresswidget.cpp
changeset 37 758a864f9613
parent 36 ef0373b55136
--- a/tests/qtp/qtp_addressbook/addresswidget.cpp	Fri Sep 17 08:34:18 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,238 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the examples of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the Technology Preview License Agreement accompanying
-** this package.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file.  Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights.  These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** If you have questions regarding the use of this file, please contact
-** Nokia at qt-info@nokia.com.
-**
-**
-**
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include <QtGui>
-#include "addresswidget.h"
-#include "adddialog.h"
-
-//! [0]
-AddressWidget::AddressWidget(QWidget *parent)
-    : QTabWidget(parent)
-{
-    table = new TableModel(this);
-    newAddressTab = new NewAddressTab(this);
-    connect(newAddressTab, SIGNAL(sendDetails(QString, QString)),
-        this, SLOT(addEntry(QString, QString))); 
-
-    addTab(newAddressTab, "Address Book");    
-
-    setupTabs();
-}
-//! [0]
-
-//! [2]
-void AddressWidget::addEntry()
-{    
-    AddDialog aDialog;
-
-    if (aDialog.exec()) {
-        QString name = aDialog.nameText->text();
-        QString address = aDialog.addressText->toPlainText();
-        
-        addEntry(name, address);
-    }
-}
-//! [2]
-
-//! [3]
-void AddressWidget::addEntry(QString name, QString address)
-{    
-    QList< QPair<QString, QString> >list = table->getList();
-    QPair<QString, QString> pair(name, address);
-
-    if (!list.contains(pair)) {
-        table->insertRows(0, 1, QModelIndex());
-
-        QModelIndex index = table->index(0, 0, QModelIndex());
-        table->setData(index, name, Qt::EditRole);
-        index = table->index(0, 1, QModelIndex());
-        table->setData(index, address, Qt::EditRole);
-        removeTab(indexOf(newAddressTab));
-    } else {
-        QMessageBox::information(this, tr("Duplicate Name"),
-            tr("The name \"%1\" already exists.").arg(name));
-    }
-}
-//! [3]
-
-//! [4a]
-void AddressWidget::editEntry()
-{
-    QTableView *temp = static_cast<QTableView*>(currentWidget());
-    QSortFilterProxyModel *proxy = static_cast<QSortFilterProxyModel*>(temp->model());
-    QItemSelectionModel *selectionModel = temp->selectionModel();
-
-    QModelIndexList indexes = selectionModel->selectedRows();
-    QModelIndex index, i;        
-    QString name;
-    QString address;
-    int row = -1;
-
-    foreach (index, indexes) {
-        row = proxy->mapToSource(index).row();
-        i = table->index(row, 0, QModelIndex());
-        QVariant varName = table->data(i, Qt::DisplayRole);
-        name = varName.toString();
-    
-        i = table->index(row, 1, QModelIndex());
-        QVariant varAddr = table->data(i, Qt::DisplayRole);
-        address = varAddr.toString();
-    }
-//! [4a]
-    
-//! [4b]    
-    AddDialog aDialog;
-    aDialog.setWindowTitle(tr("Edit a Contact"));
-
-    aDialog.nameText->setReadOnly(true);
-    aDialog.nameText->setText(name);
-    aDialog.addressText->setText(address);
-
-    if (aDialog.exec()) {
-        QString newAddress = aDialog.addressText->toPlainText();
-        if (newAddress != address) {
-            i = table->index(row, 1, QModelIndex());
-            table->setData(i, newAddress, Qt::EditRole);
-        }
-    }
-}
-//! [4b]
-
-//! [5]
-void AddressWidget::removeEntry()
-{
-    QTableView *temp = static_cast<QTableView*>(currentWidget());
-    QSortFilterProxyModel *proxy = static_cast<QSortFilterProxyModel*>(temp->model());
-    QItemSelectionModel *selectionModel = temp->selectionModel();
-    
-    QModelIndexList indexes = selectionModel->selectedRows();
-    QModelIndex index;
-
-    foreach (index, indexes) {
-        int row = proxy->mapToSource(index).row();
-        table->removeRows(row, 1, QModelIndex());
-    }
-
-    if (table->rowCount(QModelIndex()) == 0) {
-        insertTab(0, newAddressTab, "Address Book");
-    }
-}
-//! [5]
-
-//! [1]
-void AddressWidget::setupTabs()
-{
-    QStringList groups;
-    groups << "ABC" << "DEF" << "GHI" << "JKL" << "MNO" << "PQR" << "STU" << "VW" << "XYZ";
-
-    for (int i = 0; i < groups.size(); ++i) {
-        QString str = groups.at(i);
-        
-        proxyModel = new QSortFilterProxyModel(this);
-        proxyModel->setSourceModel(table);
-        proxyModel->setDynamicSortFilter(true);
-    
-        QTableView *tableView = new QTableView;
-        tableView->setModel(proxyModel);
-        tableView->setSortingEnabled(true);
-        tableView->setSelectionBehavior(QAbstractItemView::SelectRows);
-        tableView->horizontalHeader()->setStretchLastSection(true);
-        tableView->verticalHeader()->hide();
-        tableView->setEditTriggers(QAbstractItemView::NoEditTriggers);
-        tableView->setSelectionMode(QAbstractItemView::SingleSelection);
-
-        QString newStr = QString("^[%1].*").arg(str);
-
-        proxyModel->setFilterRegExp(QRegExp(newStr, Qt::CaseInsensitive));
-        proxyModel->setFilterKeyColumn(0);
-        proxyModel->sort(0, Qt::AscendingOrder);
-    
-        connect(tableView->selectionModel(),
-            SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)),
-            this, SIGNAL(selectionChanged(const QItemSelection &)));
-
-        addTab(tableView, str);
-    }
-}
-//! [1]
-
-//! [7]
-void AddressWidget::readFromFile(QString fileName)
-{
-    QFile file(fileName);
-
-    if (!file.open(QIODevice::ReadOnly)) {
-        QMessageBox::information(this, tr("Unable to open file"),
-            file.errorString());
-        return;
-    }
-
-    QList< QPair<QString, QString> > pairs = table->getList();    
-    QDataStream in(&file);
-    in >> pairs;
-
-    if (pairs.isEmpty()) {
-        QMessageBox::information(this, tr("No contacts in file"),
-            tr("The file you are attempting to open contains no contacts."));  
-    } else {
-        for (int i=0; i<pairs.size(); ++i) {
-            QPair<QString, QString> p = pairs.at(i);
-            addEntry(p.first, p.second);
-        }
-    }
-}
-//! [7]
-
-//! [6]
-void AddressWidget::writeToFile(QString fileName)
-{
-    QFile file(fileName);
-
-    if (!file.open(QIODevice::WriteOnly)) {
-        QMessageBox::information(this, tr("Unable to open file"), file.errorString());
-        return;
-    }
-
-    QList< QPair<QString, QString> > pairs = table->getList();    
-    QDataStream out(&file);
-    out << pairs;
-}
-//! [6]