phonebookui/cntcommonui/contacteditors/cntdetailpopup.cpp
author hgs
Fri, 15 Oct 2010 12:24:46 +0300
changeset 81 640d30f4fb64
parent 72 6abfb1094884
permissions -rw-r--r--
201041
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
72
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#include "cntdetailpopup.h"
hgs
parents:
diff changeset
    19
hgs
parents:
diff changeset
    20
#include <hblabel.h>
hgs
parents:
diff changeset
    21
#include <QStandardItemModel>
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
CntDetailPopup::CntDetailPopup(QGraphicsItem *parent,  CntViewIdList aList ):
hgs
parents:
diff changeset
    24
    HbSelectionDialog(parent),
hgs
parents:
diff changeset
    25
    mListModel(NULL),
hgs
parents:
diff changeset
    26
    mViewIdList( aList )
hgs
parents:
diff changeset
    27
{
hgs
parents:
diff changeset
    28
    mListModel = new QStandardItemModel(this);
hgs
parents:
diff changeset
    29
hgs
parents:
diff changeset
    30
    addListItem("qtg_small_mobile", hbTrId("txt_phob_list_number"), phoneNumberEditorView );
hgs
parents:
diff changeset
    31
    addListItem("qtg_small_email", hbTrId("txt_phob_list_email"), emailEditorView );
hgs
parents:
diff changeset
    32
    addListItem("qtg_small_url_address", hbTrId("txt_phob_list_url"), urlEditorView);
81
hgs
parents: 72
diff changeset
    33
    addListItem("qtg_small_location", hbTrId("txt_phob_list_address2"), addressEditorView );
72
hgs
parents:
diff changeset
    34
    addListItem("qtg_small_note", hbTrId("txt_phob_list_note"), noteEditorView);
hgs
parents:
diff changeset
    35
    addListItem("qtg_small_sound", hbTrId("txt_phob_list_personal_ringing_tone"), ringToneFetcherView );
hgs
parents:
diff changeset
    36
    addListItem("qtg_small_calendar", hbTrId("txt_phob_list_date"), dateEditorView);
hgs
parents:
diff changeset
    37
    addListItem("qtg_small_company_details", hbTrId("txt_phob_list_company_details"), companyEditorView);
hgs
parents:
diff changeset
    38
    addListItem("qtg_small_family", hbTrId("txt_phob_list_family"), familyDetailEditorView);
hgs
parents:
diff changeset
    39
81
hgs
parents: 72
diff changeset
    40
    setHeadingText(hbTrId("txt_phob_title_add_field"));
72
hgs
parents:
diff changeset
    41
    setTimeout(HbDialog::NoTimeout);
hgs
parents:
diff changeset
    42
    setDismissPolicy(HbDialog::NoDismiss);
hgs
parents:
diff changeset
    43
    setAttribute(Qt::WA_DeleteOnClose, true);
hgs
parents:
diff changeset
    44
    setModal(true);
hgs
parents:
diff changeset
    45
    setSelectionMode(HbAbstractItemView::NoSelection);
hgs
parents:
diff changeset
    46
    setModel(mListModel);
hgs
parents:
diff changeset
    47
}
hgs
parents:
diff changeset
    48
hgs
parents:
diff changeset
    49
CntDetailPopup::~CntDetailPopup()
hgs
parents:
diff changeset
    50
{
hgs
parents:
diff changeset
    51
    
hgs
parents:
diff changeset
    52
}
hgs
parents:
diff changeset
    53
hgs
parents:
diff changeset
    54
void CntDetailPopup::selectDetail( CntViewIdList aList, QObject *receiver, const char *member  )
hgs
parents:
diff changeset
    55
{
hgs
parents:
diff changeset
    56
    CntDetailPopup *popup = new CntDetailPopup( NULL, aList );
hgs
parents:
diff changeset
    57
    
hgs
parents:
diff changeset
    58
    popup->open(receiver, member);
hgs
parents:
diff changeset
    59
}
hgs
parents:
diff changeset
    60
hgs
parents:
diff changeset
    61
void CntDetailPopup::addListItem(QString aIcon, QString label, int aId )
hgs
parents:
diff changeset
    62
{
hgs
parents:
diff changeset
    63
    if ( !mViewIdList.contains(aId) )
hgs
parents:
diff changeset
    64
    {
hgs
parents:
diff changeset
    65
        QStandardItem *labelItem = new QStandardItem(label);
hgs
parents:
diff changeset
    66
        labelItem->setData(HbIcon(aIcon), Qt::DecorationRole);
hgs
parents:
diff changeset
    67
        labelItem->setData(aId, Qt::UserRole);
hgs
parents:
diff changeset
    68
hgs
parents:
diff changeset
    69
        mListModel->appendRow(labelItem);
hgs
parents:
diff changeset
    70
    }
hgs
parents:
diff changeset
    71
}