Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

TrapperConf Class Reference

load and saves the trapperconf.xml file More...

#include <trapperconf.h>

Collaboration diagram for TrapperConf:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ~TrapperConf ()
QDomElement viewModeConf ()
void save ()
QStringList viewModeNames ()
void loadDom (QFile *file)

Static Public Member Functions

static TrapperConfinstance ()

Protected Member Functions

 TrapperConf ()

Protected Attributes

QDomDocument domTree

Private Attributes

QFile * confFile

Static Private Attributes

static TrapperConfs_instance = NULL

Detailed Description

load and saves the trapperconf.xml file

Definition at line 30 of file trapperconf.h.


Constructor & Destructor Documentation

TrapperConf::~TrapperConf  ) 
 

Definition at line 79 of file trapperconf.cpp.

00080 {}

TrapperConf::TrapperConf  )  [protected]
 

Definition at line 21 of file trapperconf.cpp.

00022         : QObject()
00023 {
00024 
00025 
00026   /*
00027     QString name = fileName();
00028     QFile confFile( name );
00029     if ( !confFile.open( IO_ReadWrite ) )
00030     {
00031         QMessageBox::critical( 0,
00032                                tr( "Critical Error" ),
00033                                tr( "Cannot open configuration file %1" ).arg( fileName() ) );
00034         exit(1);
00035     }
00036   */
00037 
00038 }


Member Function Documentation

TrapperConf * TrapperConf::instance  )  [static]
 

Definition at line 130 of file trapperconf.cpp.

References s_instance.

Referenced by ShowModesDlg::accept(), TrapperView::contentsContextMenuEvent(), TrapperApp::setViewModeConfFile(), ShowModesDlg::ShowModesDlg(), and ViewModes::ViewModes().

00131 {
00132     if ( s_instance == NULL )
00133     {
00134         s_instance = new TrapperConf;
00135     }
00136     return s_instance;
00137 }

void TrapperConf::loadDom QFile *  file  ) 
 

Definition at line 40 of file trapperconf.cpp.

References confFile, and domTree.

Referenced by TrapperApp::setViewModeConfFile().

00041 {
00042 
00043 
00044   confFile = file;
00045 
00046     QString errorMsg;
00047     int errorLine;
00048     int errorColumn;
00049     Q_CHECK_PTR( confFile );
00050     if ( !domTree.setContent( confFile , &errorMsg, &errorLine, &errorColumn) )
00051     {
00052         QMessageBox::critical( 0,
00053                                tr( "Critical Error" ),
00054                                tr( "Parsing error for configuration file %1 Error in line=%2 column=%3 error message=\"%4\"").arg( confFile->name() ).arg(errorLine).arg(errorColumn).arg(errorMsg));
00055         exit(1);
00056     }
00057     return;
00058 }

void TrapperConf::save  ) 
 

Definition at line 60 of file trapperconf.cpp.

References confFile, and domTree.

Referenced by ShowModesDlg::accept().

00061 {
00062 
00063     Q_CHECK_PTR( confFile );
00064   /*
00065     QFile confFile( fileName() );
00066     if ( !confFile.open( IO_WriteOnly ) )
00067     {
00068         QMessageBox::critical( 0,
00069                                tr( "Critical Error" ),
00070                                tr( "Cannot open configuration file %1" ).arg( fileName() ) );
00071         exit(1);
00072     }
00073   */
00074     QTextStream stream( confFile );
00075     QString xml = domTree.toString();
00076     stream << xml;
00077 }

QDomElement TrapperConf::viewModeConf  ) 
 

Definition at line 82 of file trapperconf.cpp.

References domTree.

Referenced by ShowModesDlg::accept(), ShowModesDlg::ShowModesDlg(), viewModeNames(), and ViewModes::ViewModes().

00083 {
00084     // get the configuration information from the DOM
00085     QDomElement root = domTree.documentElement();
00086     QDomNode node;
00087     QDomElement element;
00088     node = root.firstChild();
00089     bool found = false;
00090     while ( !node.isNull() )
00091     {
00092         if ( node.isElement() && node.nodeName() == "modeViews" )
00093         {
00094             element = node.toElement();
00095             found = true;
00096             break;
00097         }
00098         node = node.nextSibling();
00099     }
00100     if ( found == false )
00101     {
00102         QMessageBox::critical( 0, tr("Critical Error"), tr("Conf file has bad syntax"));
00103         exit(1);
00104     }
00105     return element;
00106 }

QStringList TrapperConf::viewModeNames  ) 
 

Definition at line 108 of file trapperconf.cpp.

References viewModeConf().

Referenced by TrapperView::contentsContextMenuEvent().

00109 {
00110 
00111     QDomElement confElem = viewModeConf();
00112 
00113     QDomNode node = confElem.firstChild();
00114 
00115     QStringList list;
00116     while ( !node.isNull() )
00117     {
00118         if ( node.isElement() && node.nodeName() == "modeView" )
00119         {
00120             QDomElement elem = node.toElement();
00121             Q_ASSERT((elem.hasAttribute("name")  && elem.hasAttribute("zoom")));
00122             QString name = elem.attribute("name", "");
00123             list.append(name);
00124         }
00125         node = node.nextSibling();
00126     }
00127     return list;
00128 }


Member Data Documentation

QFile* TrapperConf::confFile [private]
 

Definition at line 48 of file trapperconf.h.

Referenced by loadDom(), and save().

QDomDocument TrapperConf::domTree [protected]
 

Definition at line 43 of file trapperconf.h.

Referenced by loadDom(), save(), and viewModeConf().

TrapperConf * TrapperConf::s_instance = NULL [static, private]
 

Definition at line 47 of file trapperconf.h.

Referenced by instance().


The documentation for this class was generated from the following files:
Generated on Fri Mar 17 17:45:01 2006 for trapper by  doxygen 1.4.4