]> SALOME platform Git repositories - modules/superv.git/blob - src/GraphBase/DataFlowBase_LoadXml.cxx
Salome HOME
This commit was generated by cvs2git to track changes on a CVS vendor
[modules/superv.git] / src / GraphBase / DataFlowBase_LoadXml.cxx
1 using namespace std;
2
3 #include "DataFlowBase_XmlHandler.hxx"
4
5 //#include <qaccel.h>
6 #include <qxml.h>
7 #include <qmessagebox.h>
8
9 // Pour Jean
10 // Fonction Load qui utilise un Parser de fichier xml de Dataflow
11 // Utilise DataFlowEditor_XmlHandler.hxx et .cxx
12
13 //#include "SALOME_NamingService.hxx"
14
15 //#include <SALOMEconfig.h>
16 //#include CORBA_CLIENT_HEADER(SALOME_SuperVision)
17
18 #include "DataFlowBase_Graph.hxx"
19
20 bool GraphBase::Graph::LoadXml( CORBA::ORB_ptr _Orb ,
21                                 const char* myFileName ,
22                                 GraphBase::SGraph & aDataFlow )
23 {
24   char * FileName = new char[ strlen( myFileName ) + 5 ] ;
25   strcpy( FileName , myFileName ) ;
26   QString aqstrFileName(FileName);
27   QFile afile( aqstrFileName);
28
29   if ( !afile.exists() || !afile.open( IO_ReadOnly ) )  {
30     strcat( FileName , ".xml" ) ;
31     aqstrFileName = QString(FileName);
32     QFile afile( aqstrFileName );
33     if ( !afile.exists() || !afile.open( IO_ReadOnly ) )  {
34       return false;
35     }
36     afile.close();
37   }
38   else
39     afile.close();
40
41   QString qstrFileName(FileName);
42   QFile file( qstrFileName);
43   GraphBase::XmlHandler::XmlHandler * myXmlHandler = new GraphBase::XmlHandler::XmlHandler( _Orb , true );
44   QXmlInputSource source( file );
45   QXmlSimpleReader reader;
46   reader.setContentHandler( myXmlHandler );
47   reader.setErrorHandler( myXmlHandler );
48   bool ok = reader.parse( source );
49   file.close();
50   if ( !ok ) {
51 //    QMessageBox::critical( 0,
52 //                         QString( "INF_PARSE_ERROR" ),
53 //                         QString( myXmlHandler->errorProtocol() ) );
54     return false;
55   }
56
57   aDataFlow = myXmlHandler->GetDataFlow() ;
58   delete myXmlHandler ;
59   // Dataflow is now loaded.
60   return true ;
61 }
62
63