Documentation


SFIntGUI.cpp

Go to the documentation of this file.
00001 
00002 //                            SFIntGUI.cpp                                  //
00004 
00005 #include<iostream>
00006 
00007 #include <qlabel.h>
00008 #include <qlayout.h>
00009 #include <qspinbox.h>
00010 
00011 #include "SFIntGUI.h"
00012 
00013 namespace X3DTK {
00014 namespace Qt{
00015 
00016 /* 
00017  *  Constructs a SFIntGUI as a child of 'parent'
00018  */
00019 SFIntGUI::SFIntGUI(QString nameOfField, int * intToEdit, QWidget * parent, const char* name, WFlags fl)
00020 : QWidget(parent, name, fl)
00021 , intToEdit(intToEdit)
00022 {
00023     if ( !name )
00024       setName( "SFInt GUI" );
00025     
00026     // The layout
00027     SFIntLayout = new QHBoxLayout(this);
00028     SFIntLayout->setAutoAdd(true);
00029     
00030     // The label
00031     new QLabel(nameOfField, this);
00032     
00033     // the integer line edit
00034     spinBox = new QSpinBox((int)-1e-10,(int)1e10,1,this);
00035 
00036     // signals and slots connections
00037     connect( spinBox, SIGNAL( valueChanged(int) ), this, SLOT( changeValue(int) ) );
00038     
00039     setValue();
00040 }
00041 
00042 /*
00043  *  Destroys the object and frees any allocated resources
00044  */
00045 SFIntGUI::~SFIntGUI()
00046 {
00047     // no need to delete child widgets, Qt does it all for us
00048 }
00049 
00050 void SFIntGUI::setValue()
00051 {
00052     spinBox->setValue(*intToEdit);
00053 }
00054 
00055 void SFIntGUI::changeValue(int i)
00056 {
00057     *intToEdit = i;
00058     emit changed();
00059 }
00060 } // Qt
00061 } // X3DTK

Generated on Thu Dec 23 13:52:27 2004 by doxygen 1.3.6