00001
00012 #include "ListDialog.h"
00013
00014 #if QT_VERSION < 0x040000
00015 #include <qlistview.h>
00016 #else
00017 #include <q3listview.h>
00018 #endif
00019
00020 using std::string;
00021
00022 using namespace hippodraw;
00023
00024
00025 ListDialog::
00026 ListDialog ( QWidget * parent )
00027 : ListDialogBase ( parent )
00028 {
00029 }
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039 void
00040 ListDialog::
00041 setNames ( const std::vector < std::string > & names )
00042 {
00043 for ( unsigned int i = 0; i < names.size (); i++ ) {
00044 const string & n = names[i];
00045 QString name ( n.c_str() );
00046 #if QT_VERSION < 0x040000
00047 QListViewItem * item
00048 = new QListViewItem ( m_tuple_list,
00049 QString ( "%1" ).arg ( i+1 ),
00050 QString ( name ) );
00051 #else
00052 Q3ListViewItem * item
00053 = new Q3ListViewItem ( m_tuple_list,
00054 QString ( "%1" ).arg ( i+1 ),
00055 QString ( name ) );
00056 #endif
00057 m_item_list.push_back ( item );
00058 }
00059 #if QT_VERSION < 0x040000
00060 m_tuple_list -> setSelectionMode ( QListView::Single );
00061 #else
00062 m_tuple_list -> setSelectionMode ( Q3ListView::Single );
00063 #endif
00064 m_tuple_list ->setSelected ( m_item_list[0], true );
00065 }
00066
00067 unsigned int
00068 ListDialog::
00069 selectedItem () const
00070 {
00071 unsigned int index = m_item_list.size();
00072 for ( unsigned int i = 0; i < m_item_list.size(); i++ ) {
00073 #if QT_VERSION < 0x040000
00074 QListViewItem * item = m_item_list[i];
00075 #else
00076 Q3ListViewItem * item = m_item_list[i];
00077 #endif
00078 if ( item -> isSelected () ) {
00079 index = i;
00080 break;
00081 }
00082 }
00083
00084 return index;
00085 }
00086
00087 void
00088 ListDialog::
00089 doubleClicked ( )
00090 {
00091 accept ();
00092 }