]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Control for the status of the document opening. Function useFile return boolean value.
authorstv <stv@opencascade.com>
Fri, 17 Jun 2005 08:40:03 +0000 (08:40 +0000)
committerstv <stv@opencascade.com>
Fri, 17 Jun 2005 08:40:03 +0000 (08:40 +0000)
src/STD/STD_Application.cxx
src/STD/STD_Application.h
src/SUIT/SUIT_Application.cxx
src/SUIT/SUIT_Application.h

index 89427f76aaa38ab390d143ee3d419d4f5ae5a046..0c5aa43968e6c255a154bf706bbc53b5d8542c37 100755 (executable)
@@ -229,11 +229,17 @@ void STD_Application::onOpenDoc()
   if ( aName.isNull() )
     return;
 
+  onOpenDoc( aName );
+}
+
+bool STD_Application::onOpenDoc( const QString& aName )
+{
+  bool res = true;
   if ( !activeStudy() )
   {
     // if no study - open in current desktop
     createEmptyStudy();
-    activeStudy()->openDocument( aName );
+    res = activeStudy()->openDocument( aName );
     updateDesktopTitle();
     updateCommandsStatus();
   }
@@ -254,11 +260,12 @@ void STD_Application::onOpenDoc()
     {
       aApp = startApplication( 0, 0 );
       if ( aApp )
-        aApp->useFile( aName );
+        res = aApp->useFile( aName );
     }
     else
       aApp->desktop()->setActiveWindow();
   }
+  return res;
 }
 
 void STD_Application::beforeCloseDoc( SUIT_Study* )
@@ -407,11 +414,12 @@ void STD_Application::setEditEnabled( bool theEnable )
   }
 }
 
-void STD_Application::useFile(const QString& theFileName)
+bool STD_Application::useFile(const QString& theFileName)
 {
-  SUIT_Application::useFile(theFileName);
+  bool res = SUIT_Application::useFile(theFileName);
   updateDesktopTitle();
   updateCommandsStatus();
+  return res;
 }
 
 void STD_Application::updateDesktopTitle()
index a8d4a1fe52090644c5e9e13467b51fdff241bb6a..3740d4d79e9f597e46f130d42ed5c78d73160442 100755 (executable)
@@ -35,7 +35,7 @@ public:
   virtual QString       applicationName() const;
 
   virtual bool          isPossibleToClose();
-  virtual void          useFile( const QString& );
+  virtual bool          useFile( const QString& );
 
   virtual void          createEmptyStudy();
 
@@ -70,16 +70,23 @@ signals:
 
 public slots:
   virtual void          onNewDoc();
-  virtual void          onOpenDoc();
   virtual void          onCloseDoc();
   virtual void          onSaveDoc();
   virtual bool          onSaveAsDoc();
+
+  virtual void          onOpenDoc();
+  virtual bool          onOpenDoc( const QString& );
+
   virtual void          onExit();
+
   virtual void          onCut();
   virtual void          onCopy();
   virtual void          onPaste();
+
   virtual void          onViewStatusBar( bool );
+
   virtual void          onHelpAbout();
+
   virtual void          onDesktopClosing( SUIT_Desktop*, QCloseEvent* );
   virtual void          onConnectPopupRequest( SUIT_PopupClient*, QContextMenuEvent* );
 
index a107e6b33fd7f936ee2ff8861ab3acd5de618fd0..b281997cfe8fb371d2209abff10413bc67659b45 100755 (executable)
@@ -54,11 +54,11 @@ void SUIT_Application::start()
     desktop()->show();
 }
 
-void SUIT_Application::useFile( const QString& theFileName )
+bool SUIT_Application::useFile( const QString& theFileName )
 {
   createEmptyStudy();
   if ( activeStudy() )
-    activeStudy()->openDocument( theFileName );
+    return activeStudy()->openDocument( theFileName );
 }
 
 void SUIT_Application::createEmptyStudy()
index bd2f6c776bffba3b7dc4ad6067f28302fc185e31..f2fa7f49c0a487116965bf535a71802db68f5dba 100755 (executable)
@@ -51,7 +51,7 @@ public:
   virtual void          start();
 
   //! Loads document <theFileName> into active Study. If Study is empty - creates it.
-  virtual void          useFile( const QString& );
+  virtual bool          useFile( const QString& );
 
   //! Creates new empty Study if active Study = 0
   virtual void          createEmptyStudy();