author | zecke <zecke> | 2004-02-22 00:24:52 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-02-22 00:24:52 (UTC) |
commit | 7e25ffee3337376d60c9c382bda4664672fec5de (patch) (side-by-side diff) | |
tree | d3c1d35066b1afe6480ad389ea3d97c5e7fde475 | |
parent | 91faf16c7336e54a6472fc9821903782918be539 (diff) | |
download | opie-7e25ffee3337376d60c9c382bda4664672fec5de.zip opie-7e25ffee3337376d60c9c382bda4664672fec5de.tar.gz opie-7e25ffee3337376d60c9c382bda4664672fec5de.tar.bz2 |
check if there is a listview item at all.
c cast -> static_cast
-rw-r--r-- | core/pim/todo/templatedialogimpl.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/core/pim/todo/templatedialogimpl.cpp b/core/pim/todo/templatedialogimpl.cpp index c2306ac..63d8107 100644 --- a/core/pim/todo/templatedialogimpl.cpp +++ b/core/pim/todo/templatedialogimpl.cpp @@ -48,71 +48,80 @@ namespace { } void TemplateListItem::setEvent( const OTodo& ev) { m_ev = ev; } } TemplateDialogImpl::TemplateDialogImpl( MainWindow* win, TemplateManager* man ) : TemplateDialog( win ), m_win( win), m_man( man ) { /* fill the listview */ /* not the fastest way.... */ QStringList list = man->templates(); for (QStringList::Iterator it = list.begin(); it != list.end(); ++it ) { new TemplateListItem( listView(), (*it), man->templateEvent( (*it) ) ); } listView()->addColumn( QWidget::tr("Name") ); connect( listView(), SIGNAL(clicked(QListViewItem*) ), this, SLOT(slotClicked(QListViewItem*) ) ); } TemplateDialogImpl::~TemplateDialogImpl() { } void TemplateDialogImpl::slotAdd() { QString str = QWidget::tr("New Template %1").arg( listView()->childCount() ); OTodo ev; m_man->addEvent(str, ev); new TemplateListItem( listView(), str, ev ); } void TemplateDialogImpl::slotRemove() { - TemplateListItem* item = (TemplateListItem*) listView()->currentItem(); + if (!listView()->currentItem() ) + return; + + TemplateListItem* item = static_cast<TemplateListItem*>( listView()->currentItem() ); listView()->takeItem( item ); m_man->removeEvent( item->text() ); delete item; } void TemplateDialogImpl::slotEdit() { - TemplateListItem* item = (TemplateListItem*)listView()->currentItem(); + if ( !listView()->currentItem() ) + return; + + TemplateListItem* item = static_cast<TemplateListItem*>( listView()->currentItem() ); OTodo ev = m_win->currentEditor()->edit( m_win, item->event() ); if ( m_win->currentEditor()->accepted() ) { item->setEvent( ev ); m_man->removeEvent( item->text() ); m_man->addEvent( item->text(), ev ); } } /* * we need to update * the text */ void TemplateDialogImpl::slotReturn() { - TemplateListItem* tbl = (TemplateListItem*)listView()->currentItem(); + if ( !listView()->currentItem() ) + return; + + TemplateListItem* tbl = static_cast<TemplateListItem*>( listView()->currentItem() ); if (tbl->text() != edit()->text() ) { m_man->removeEvent( tbl->text() ); tbl->setText( edit()->text() ); m_man->addEvent( tbl->text(), tbl->event() ); } } /* update the lineedit when changing */ void TemplateDialogImpl::slotClicked( QListViewItem* item) { if (!item) return; TemplateListItem* tbl = static_cast<TemplateListItem*>(item); edit()->setText( tbl->text() ); } |