~ubuntu-branches/ubuntu/saucy/kdepimlibs/saucy-proposed

« back to all changes in this revision

Viewing changes to akonadi/contact/contactgroupeditordelegate.cpp

  • Committer: Package Import Robot
  • Author(s): Scott Kitterman, Jonathan Riddell, Scott Kitterman
  • Date: 2012-11-19 17:32:30 UTC
  • mfrom: (1.1.85)
  • Revision ID: package-import@ubuntu.com-20121119173230-xi32j2vpz82zlmmh
Tags: 4:4.9.80-0ubuntu1
[ Jonathan Riddell ]
* New upstream beta release
* Remove 03_hide_akonadi_progressbar.diff now upstream
* Update .symbols file

[ Scott Kitterman ]
* Add libqjson-dev to build-depends since it is required for 4.10
* Update symbols files
* Drop FindAkonadi.cmake from debian/kdepimlibs5-dev.install since it is no
  longer provided by upstream
* Add FindQtOAuth.cmake to debian/kdepimlibs5-dev.install
* Document files we don't install in debian/NOT-INSTALLED
* Add new binary, libakonadi-socialutils4
  - Add to debian/control
  - Add to kdepimlibs metapackage depends
  - Add debian/libakonadi-socialutils4.install
  - Add debian/libakonadi-socialutils4.symbols 
* Update kdepimlibs5-dev.install for new headers for 4.10
* Add googletalkprotocol.desktop to debian/libakonadi-contact4.install
* Add missing symbols files for libakonadi-notes4 and libkalarmcal2
* Add dont_break_libkabc_abi.diff to fix ABI break - patch from José Manuel
  Santamaría Lema

Show diffs side-by-side

added added

removed removed

Lines of Context:
30
30
#include <klocale.h>
31
31
 
32
32
#include <QtCore/QTimer>
33
 
#include <QtGui/QAbstractItemView>
34
 
#include <QtGui/QCompleter>
35
 
#include <QtGui/QMouseEvent>
36
 
#include <QtGui/QSortFilterProxyModel>
37
 
#include <QtGui/QToolButton>
 
33
#include <QAbstractItemView>
 
34
#include <QCompleter>
 
35
#include <QMouseEvent>
 
36
#include <QSortFilterProxyModel>
 
37
#include <QToolButton>
38
38
 
39
39
using namespace Akonadi;
40
40
 
55
55
    virtual bool filterAcceptsRow( int row, const QModelIndex &parent ) const
56
56
    {
57
57
      const QModelIndex index = sourceModel()->index( row, Akonadi::ContactCompletionModel::EmailColumn, parent );
58
 
      if ( !index.isValid() )
 
58
      if ( !index.isValid() ) {
59
59
        return false;
 
60
      }
60
61
 
61
62
      return !index.data().toString().isEmpty();
62
63
    }
166
167
  if ( index.data( ContactGroupModel::IsReferenceRole ).toBool() ) {
167
168
    if ( index.column() == 0 ) {
168
169
      KLineEdit *lineEdit = qobject_cast<KLineEdit*>( editor );
169
 
      if ( !lineEdit )
 
170
      if ( !lineEdit ) {
170
171
        return;
 
172
      }
171
173
 
172
174
      lineEdit->setText( index.data( Qt::EditRole ).toString() );
173
175
    } else {
174
176
      KComboBox *comboBox = qobject_cast<KComboBox*>( editor );
175
 
      if ( !comboBox )
 
177
      if ( !comboBox ) {
176
178
        return;
 
179
      }
177
180
 
178
181
      const QStringList emails = index.data( ContactGroupModel::AllEmailsRole ).toStringList();
179
182
      comboBox->clear();
184
187
    if ( index.column() == 0 ) {
185
188
 
186
189
      KLineEdit *lineEdit = qobject_cast<KLineEdit*>( editor );
187
 
      if ( !lineEdit )
 
190
      if ( !lineEdit ) {
188
191
        return;
 
192
      }
189
193
 
190
194
      lineEdit->setText( index.data( Qt::EditRole ).toString() );
191
195
 
192
196
    } else {
193
197
      KLineEdit *lineEdit = qobject_cast<KLineEdit*>( editor );
194
 
      if ( !lineEdit )
 
198
      if ( !lineEdit ) {
195
199
        return;
 
200
      }
196
201
 
197
202
      lineEdit->setText( index.data( Qt::EditRole ).toString() );
198
203
    }
209
214
      const Item item = lineEdit->completedItem();
210
215
      model->setData( index, isReference, ContactGroupModel::IsReferenceRole );
211
216
      if ( isReference ) {
212
 
        if ( item.isValid() )
 
217
        if ( item.isValid() ) {
213
218
          model->setData( index, item.id(), Qt::EditRole );
214
 
      } else
 
219
        }
 
220
      } else {
215
221
        model->setData( index, lineEdit->text(), Qt::EditRole );
 
222
      }
216
223
    }
217
224
 
218
225
    if ( index.column() == 1 ) {
219
226
      KComboBox *comboBox = qobject_cast<KComboBox*>( editor );
220
 
      if ( !comboBox )
 
227
      if ( !comboBox ) {
221
228
        return;
 
229
      }
222
230
 
223
231
      model->setData( index, comboBox->currentText(), Qt::EditRole );
224
232
    }
230
238
      const Item item = lineEdit->completedItem();
231
239
      model->setData( index, isReference, ContactGroupModel::IsReferenceRole );
232
240
      if ( isReference ) {
233
 
        if ( item.isValid() )
 
241
        if ( item.isValid() ) {
234
242
          model->setData( index, item.id(), Qt::EditRole );
 
243
        }
235
244
      } else
236
245
        model->setData( index, lineEdit->text(), Qt::EditRole );
237
246
    }
238
247
 
239
248
    if ( index.column() == 1 ) {
240
249
      KLineEdit *lineEdit = qobject_cast<KLineEdit*>( editor );
241
 
      if ( !lineEdit )
 
250
      if ( !lineEdit ) {
242
251
        return;
 
252
      }
243
253
 
244
254
      model->setData( index, lineEdit->text(), Qt::EditRole );
245
255
    }
248
258
 
249
259
static bool isLastRow( const QModelIndex &index )
250
260
{
251
 
  return (index.row() == (index.model()->rowCount() - 1));
 
261
  return ( index.row() == ( index.model()->rowCount() - 1 ) );
252
262
}
253
263
 
254
264
void ContactGroupEditorDelegate::paint( QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index ) const
255
265
{
256
266
  QStyledItemDelegate::paint( painter, option, index );
257
267
 
258
 
  if ( index.column() == 1 && !isLastRow( index ) )
 
268
  if ( index.column() == 1 && !isLastRow( index ) ) {
259
269
    d->mIcon.paint( painter, option.rect, Qt::AlignRight );
 
270
  }
260
271
}
261
272
 
262
273
QSize ContactGroupEditorDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelIndex& index ) const
266
277
  QSize hint = QStyledItemDelegate::sizeHint( option, index );
267
278
  hint.setHeight( qMax( hint.height(), d->mButtonSize.height() ) );
268
279
 
269
 
  if ( index.column() == 1 )
 
280
  if ( index.column() == 1 ) {
270
281
    hint.setWidth( hint.width() + d->mButtonSize.width() );
 
282
  }
271
283
 
272
284
  return hint;
273
285
}
301
313
  d->mItemView->setCurrentIndex( d->mItemView->model()->index( d->mItemView->currentIndex().row(), 0 ) );
302
314
}
303
315
 
304
 
#include "contactgroupeditordelegate_p.moc"
 
316
#include "moc_contactgroupeditordelegate_p.cpp"