39 Constructor |
40 Constructor |
40 */ |
41 */ |
41 CpPinCodePluginView::CpPinCodePluginView(QGraphicsItem *parent /*= 0*/) |
42 CpPinCodePluginView::CpPinCodePluginView(QGraphicsItem *parent /*= 0*/) |
42 : CpBaseSettingView(0,parent), mSecCodeSettings(new SecCodeSettings()) |
43 : CpBaseSettingView(0,parent), mSecCodeSettings(new SecCodeSettings()) |
43 { |
44 { |
|
45 RDEBUG("0", 0); |
44 HbDataForm *form = qobject_cast<HbDataForm*>(widget()); |
46 HbDataForm *form = qobject_cast<HbDataForm*>(widget()); |
45 if (form) { |
47 if (form) { |
46 QList<HbAbstractViewItem *> protoTypeList = form->itemPrototypes(); |
48 QList<HbAbstractViewItem *> protoTypeList = form->itemPrototypes(); |
47 protoTypeList.append(new SecCodeEditDataFormViewItem()); |
49 protoTypeList.append(new SecCodeEditDataFormViewItem()); |
48 form->setItemPrototypes(protoTypeList); |
50 form->setItemPrototypes(protoTypeList); |
49 form->setHeading(tr("PIN code")); |
51 form->setHeading(tr("PIN code")); |
50 |
52 |
51 HbDataFormModel *formModel = new HbDataFormModel(); |
53 mFormModel = new HbDataFormModel(this); |
52 mPinCodeRequestItem = new HbDataFormModelItem( |
54 mPinCodeRequestItem = new HbDataFormModelItem( |
53 HbDataFormModelItem::ToggleValueItem, tr("PIN code requests")); |
55 HbDataFormModelItem::ToggleValueItem, tr("PIN code requests")); |
54 |
56 |
55 bool currentPinCodeRequest = mSecCodeSettings->pinCodeRequest(); |
57 bool currentPinCodeRequest = mSecCodeSettings->pinCodeRequest(); |
56 if (currentPinCodeRequest) { |
58 if (currentPinCodeRequest) { |
58 mPinCodeRequestItem->setContentWidgetData("additionalText", tr("On")); |
60 mPinCodeRequestItem->setContentWidgetData("additionalText", tr("On")); |
59 } else { |
61 } else { |
60 mPinCodeRequestItem->setContentWidgetData("text",tr("Off")); |
62 mPinCodeRequestItem->setContentWidgetData("text",tr("Off")); |
61 mPinCodeRequestItem->setContentWidgetData("additionalText", tr("Off")); |
63 mPinCodeRequestItem->setContentWidgetData("additionalText", tr("Off")); |
62 } |
64 } |
63 |
65 RDEBUG("form->addConnection", 1); |
64 form->addConnection(mPinCodeRequestItem, SIGNAL(clicked()), this, |
66 connect(mFormModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), |
65 SLOT(changePinCodeRequest())); |
67 this, SLOT(toggleChange(QModelIndex, QModelIndex))); |
66 formModel->appendDataFormItem(mPinCodeRequestItem); |
68 mFormModel->appendDataFormItem(mPinCodeRequestItem); |
67 |
69 |
68 HbDataFormModelItem *pinCodeItem = new HbDataFormModelItem( |
70 HbDataFormModelItem *pinCodeItem = new HbDataFormModelItem( |
69 static_cast<HbDataFormModelItem::DataItemType> |
71 static_cast<HbDataFormModelItem::DataItemType> |
70 (SecCodeEditDataFormViewItem::SecCodeEditItem), tr("PIN code")); |
72 (SecCodeEditDataFormViewItem::SecCodeEditItem), tr("PIN code")); |
71 pinCodeItem->setContentWidgetData("echoMode", HbLineEdit::Password); |
73 pinCodeItem->setContentWidgetData("echoMode", HbLineEdit::Password); |
72 pinCodeItem->setContentWidgetData("text", "1111"); |
74 pinCodeItem->setContentWidgetData("text", "1111"); |
73 pinCodeItem->setContentWidgetData("readOnly", true); |
75 pinCodeItem->setContentWidgetData("readOnly", true); |
74 form->addConnection(pinCodeItem, SIGNAL(clicked()), this, |
76 form->addConnection(pinCodeItem, SIGNAL(clicked()), this, |
75 SLOT(changePinCode())); |
77 SLOT(changePinCode())); |
76 formModel->appendDataFormItem(pinCodeItem); |
78 mFormModel->appendDataFormItem(pinCodeItem); |
77 |
79 |
78 HbDataFormModelItem *pin2CodeItem = new HbDataFormModelItem( |
80 HbDataFormModelItem *pin2CodeItem = new HbDataFormModelItem( |
79 static_cast<HbDataFormModelItem::DataItemType> |
81 static_cast<HbDataFormModelItem::DataItemType> |
80 (SecCodeEditDataFormViewItem::SecCodeEditItem), tr("PIN2 code")); |
82 (SecCodeEditDataFormViewItem::SecCodeEditItem), tr("PIN2 code")); |
81 pin2CodeItem->setContentWidgetData("echoMode", HbLineEdit::Password); |
83 pin2CodeItem->setContentWidgetData("echoMode", HbLineEdit::Password); |
82 pin2CodeItem->setContentWidgetData("text", "1111"); |
84 pin2CodeItem->setContentWidgetData("text", "1111"); |
83 pin2CodeItem->setContentWidgetData("readOnly", true); |
85 pin2CodeItem->setContentWidgetData("readOnly", true); |
84 form->addConnection(pin2CodeItem, SIGNAL(clicked()), this, |
86 form->addConnection(pin2CodeItem, SIGNAL(clicked()), this, |
85 SLOT(changePin2Code())); |
87 SLOT(changePin2Code())); |
86 formModel->appendDataFormItem(pin2CodeItem); |
88 mFormModel->appendDataFormItem(pin2CodeItem); |
87 |
89 RDEBUG("form->setModel", 1); |
88 form->setModel(formModel); |
90 form->setModel(mFormModel); |
89 } |
91 } |
90 } |
92 } |
91 |
93 |
92 /*! |
94 /*! |
93 Destructor |
95 Destructor |
96 { |
98 { |
97 delete mSecCodeSettings; |
99 delete mSecCodeSettings; |
98 } |
100 } |
99 |
101 |
100 /*! |
102 /*! |
|
103 response for click pin code request |
|
104 */ |
|
105 void CpPinCodePluginView::toggleChange(QModelIndex startIn, |
|
106 QModelIndex /*endIn*/) |
|
107 { |
|
108 RDEBUG("0", 0); |
|
109 HbDataFormModelItem *item = mFormModel->itemFromIndex(startIn); |
|
110 if(item->type() == HbDataFormModelItem::ToggleValueItem) { |
|
111 if (mSecCodeSettings->changePinCodeRequest()) { |
|
112 RDEBUG("got changePinCodeRequest", 1); |
|
113 disconnect(mFormModel, |
|
114 SIGNAL(dataChanged(QModelIndex, QModelIndex)), this, |
|
115 SLOT(toggleChange(QModelIndex, QModelIndex))); |
|
116 RDEBUG("disconnected", 1); |
|
117 QString text = mPinCodeRequestItem->contentWidgetData( |
|
118 "text").toString(); |
|
119 if (0 == text.compare("On")) { |
|
120 mPinCodeRequestItem->setContentWidgetData("text", |
|
121 tr("Off")); |
|
122 mPinCodeRequestItem->setContentWidgetData("additionalText", |
|
123 tr("Off")); |
|
124 } else { |
|
125 mPinCodeRequestItem->setContentWidgetData("text", |
|
126 tr("On")); |
|
127 mPinCodeRequestItem->setContentWidgetData("additionalText", |
|
128 tr("On")); |
|
129 } |
|
130 RDEBUG("reconnect", 1); |
|
131 connect(mFormModel, SIGNAL(dataChanged(QModelIndex, QModelIndex)), |
|
132 this, SLOT(toggleChange(QModelIndex, QModelIndex))); |
|
133 } |
|
134 else |
|
135 { |
|
136 RDEBUG("value was not changed", 0); |
|
137 } |
|
138 } |
|
139 RDEBUG("0", 0); |
|
140 } |
|
141 |
|
142 /*! |
101 response for click pin code |
143 response for click pin code |
102 */ |
144 */ |
103 void CpPinCodePluginView::changePinCode() |
145 void CpPinCodePluginView::changePinCode() |
104 { |
146 { |
|
147 RDEBUG("0", 0); |
105 mSecCodeSettings->changePinCode(); |
148 mSecCodeSettings->changePinCode(); |
106 } |
149 } |
107 |
150 |
108 /*! |
151 /*! |
109 response for click pin2 code |
152 response for click pin2 code |
110 */ |
153 */ |
111 void CpPinCodePluginView::changePin2Code() |
154 void CpPinCodePluginView::changePin2Code() |
112 { |
155 { |
|
156 RDEBUG("0", 0); |
113 mSecCodeSettings->changePin2Code(); |
157 mSecCodeSettings->changePin2Code(); |
114 } |
158 } |
115 |
|
116 /*! |
|
117 response for click pin code request |
|
118 */ |
|
119 void CpPinCodePluginView::changePinCodeRequest() |
|
120 { |
|
121 if (mSecCodeSettings->changePinCodeRequest()) { |
|
122 QString text = mPinCodeRequestItem->contentWidgetData("text").toString(); |
|
123 if (0 == text.compare("On")) { |
|
124 mPinCodeRequestItem->setContentWidgetData("text", |
|
125 tr("Off")); |
|
126 mPinCodeRequestItem->setContentWidgetData("additionalText", |
|
127 tr("Off")); |
|
128 } else { |
|
129 mPinCodeRequestItem->setContentWidgetData("text", |
|
130 tr("On")); |
|
131 mPinCodeRequestItem->setContentWidgetData("additionalText", |
|
132 tr("On")); |
|
133 } |
|
134 } |
|
135 } |
|