VocabTreeItem.cpp

Go to the documentation of this file.
00001 #include "VocabTreeItem.h"
00002 #include "icons/closedVocab.xpm"
00003 #include "icons/openedVocab.xpm"
00004 
00005 VocabTreeItem::VocabTreeItem( QListViewItem* parent, Vocabulary* vocab, PropertiesPanel* propsPanel )
00006     : TreeItem( parent, "VocabTreeItem", CheckBox ), vocab( vocab ), propsPanel( propsPanel ) {
00007     setText( 0, vocab->getTitle() );
00008     setOn( vocab->isMarkedForStudy() );
00009 }
00010 
00011 VocabTreeItem::~VocabTreeItem() {
00012 }
00013 
00014 void VocabTreeItem::setPropertiesPanel( PropertiesPanel* propsPanel ) {
00015     this->propsPanel = propsPanel;
00016 }
00017 
00018 void VocabTreeItem::setOpen( bool isOpened ) {
00019     // Ignore close event when selected.
00020     if( !isSelected() || isOpened ) {
00021         QCheckListItem::setOpen( isOpened );
00022         setPixmap( 0, ( isOpened ? ZPIXMAP( openedVocab_xpm ) : ZPIXMAP( closedVocab_xpm ) ) );
00023     }
00024 }
00025 
00026 void VocabTreeItem::setOn( bool isOn ) {
00027     // We clear the selection in order to effectively reset it after
00028     // changing the state of the item.  This is needed because the
00029     // item is updated when a selection event occurs.
00030     bool isUpdateHackEnabled = listView()->isUpdatesEnabled();
00031     if( isUpdateHackEnabled )
00032         listView()->clearSelection();
00033     QCheckListItem::setOn( isOn );
00034     vocab->setMarkedForStudy( isOn );
00035     // Force updating the event.
00036     if( isUpdateHackEnabled )
00037         listView()->setSelected( this, true );
00038 }
00039 
00040 void VocabTreeItem::setSelected( bool isSelected ) {
00041     QCheckListItem::setSelected( isSelected );
00042     if( !isSelected )
00043         setOpen( FALSE );
00044 }
00045 
00046 Vocabulary* VocabTreeItem::getVocabulary() {
00047     return( vocab );
00048 }
00049 
00050 void VocabTreeItem::update() {
00051     if( propsPanel )
00052         propsPanel->updateCounters();
00053 }

Generated on Sun Mar 1 17:30:47 2009 for toMOTko by  doxygen 1.5.6