]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
added debug information
authormbs <martin.bernhard@opencascade.com>
Tue, 14 Mar 2023 10:23:39 +0000 (10:23 +0000)
committermbs <martin.bernhard@opencascade.com>
Mon, 27 Mar 2023 10:47:10 +0000 (11:47 +0100)
19 files changed:
src/PV3DViewer/MBDebug.h [new file with mode: 0644]
src/PVViewer/MBDebug.h [new file with mode: 0644]
src/PVViewer/PVViewer_Behaviors.cxx
src/PVViewer/PVViewer_Core.cxx
src/PVViewer/PVViewer_GUIElements.cxx
src/PVViewer/PVViewer_InitSingleton.cxx
src/PVViewer/PVViewer_OutputWindow.cxx
src/PVViewer/PVViewer_ViewManager.cxx
src/PVViewer/PVViewer_ViewModel.cxx
src/PVViewer/PVViewer_ViewWindow.cxx
src/SUIT/SUIT_Application.cxx
src/SUIT/SUIT_DataBrowser.cxx
src/SUIT/SUIT_SelectionMgr.cxx
src/SUIT/SUIT_Selector.cxx
src/SUIT/SUIT_Session.cxx
src/SUIT/SUIT_ViewModel.cxx
src/SUIT/SUIT_ViewWindow.cxx
src/SalomeApp/SalomeApp_Application.cxx
src/SalomeApp/SalomeApp_Study.cxx

diff --git a/src/PV3DViewer/MBDebug.h b/src/PV3DViewer/MBDebug.h
new file mode 100644 (file)
index 0000000..bde273f
--- /dev/null
@@ -0,0 +1,244 @@
+#ifndef MBDebug_HeaderFile\r
+#define MBDebug_HeaderFile\r
+\r
+//---------------------------------------------------------------\r
+// Usage of the logging facilities:\r
+//\r
+//  (1) At the beginning of each class file to be debugged, there\r
+//      should be a static string variable defined with the name\r
+//      of the class. Then, include the "MBDebug.h" header file.\r
+//\r
+//      //---------------------------------------------------------\r
+//      #define USE_DEBUG\r
+//      //#define MB_IGNORE_QT\r
+//      #define MBCLASSNAME "ClassName"\r
+//      #include "MBDebug.h"\r
+//      //---------------------------------------------------------\r
+//\r
+//  (2) At the beginning of each class method, call the DBG_FUN\r
+//      macro.\r
+//\r
+//      int ClassName::MyMethod(int x)\r
+//      {\r
+//        DBG_FUN();\r
+//        ...\r
+//      }\r
+//\r
+//      NOTE: For static methods, call the DBG_FUNC() macro!!\r
+//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\r
+//  This debugging/logging class is a "header-only" solution and\r
+//  does NOT require any additional implementation (.cpp) file!\r
+//---------------------------------------------------------------\r
+\r
+#include <iostream>\r
+#include <string>\r
+#include <locale>\r
+#include <codecvt>\r
+#include <list>\r
+#include <map>\r
+#include <set>\r
+#include <vector>\r
+#ifndef MB_IGNORE_QT\r
+# include <qstring.h>\r
+#endif\r
+\r
+//---------------------------------------------------------------\r
+//     Set the debug flags dependent on the preprocessor definitions\r
+//---------------------------------------------------------------\r
+#ifdef USE_DEBUG\r
+#      define MBS_DEBUG_FLAG           MBDebug::DF_DEBUG\r
+#else\r
+#      define MBS_DEBUG_FLAG           0\r
+#endif /*DEBUG*/ \r
+\r
+#define        MBS_DBG_FLAGS                   (MBS_DEBUG_FLAG)\r
+\r
+\r
+//---------------------------------------------------------------\r
+//     Define the global debug macros\r
+//---------------------------------------------------------------\r
+#define DLOG                                                   MBDebug::LogPrint()\r
+#define RETURN(var)                            { RET(var); return (var); }\r
+\r
+#ifdef USE_DEBUG\r
+\r
+# define DBG_FUN()                             MBDebug _dbg(MBCLASSNAME, __FUNCTION__, MBS_DBG_FLAGS, (void*)this)\r
+# define DBG_FUNC()                            MBDebug _dbg(MBCLASSNAME, __FUNCTION__, MBS_DBG_FLAGS)\r
+# define DBG_FUNB(blk)         MBDebug _dbg(MBCLASSNAME, blk, MBS_DBG_FLAGS)\r
+#      define MSGEL(txt)                               MBDebug::LogPrint() << txt << std::endl\r
+#      define PRINT(txt)                               MBDebug::LogPrint() << txt\r
+#      define SHOW2(var,typ)           DumpVar(#var,(typ)(var))\r
+#      define SHOW(var)                                DumpVar(#var,var)\r
+#      define ARG(var)                                 do { PRINT("in:"); DumpVar(#var,var); } while (0)\r
+#      define ARG2(var,typ)            do { PRINT("in:"); DumpVar(#var,(typ)(var)); } while (0)\r
+#      define RET(var)                                 do { PRINT("out:"); DumpVar(#var,var); } while (0)\r
+#      define MSG(txt)                                 MBDebug::LogPrint() << txt\r
+\r
+#else  /*!USE_DEBUG*/ \r
+\r
+#      define DBG_FUN()\r
+#      define DBG_FUNC()\r
+#      define DBG_FUNB(blk)\r
+#      define MSGEL(txt)\r
+#      define PRINT(txt)\r
+#      define SHOW2(var,typ)\r
+#      define SHOW(var)\r
+#      define ARG(var)\r
+#      define ARG2(var,typ)\r
+#      define RET(var)\r
+#      define MSG(txt)\r
+\r
+#endif /*USE_DEBUG*/ \r
+\r
+\r
+//---------------------------------------------------------------\r
+//     Declare the debugging and profiling class\r
+//---------------------------------------------------------------\r
+class MBDebug\r
+{\r
+public:\r
+       enum {\r
+               DF_NONE                 = 0x00,         // no debug\r
+               DF_DEBUG                = 0x01          // debug a function\r
+       };\r
+\r
+       MBDebug(const char* aClassName, const char* aFuncName, const short aFlag, void* aThis=NULL)\r
+       :mClassName(aClassName),mFuncName(aFuncName),mThis(aThis),mFlags((unsigned char)aFlag)\r
+  {\r
+       if (mFlags & (DF_DEBUG))\r
+       {\r
+               std::cout << "{ENTER: " << mClassName + "::" + mFuncName;\r
+               if (mThis) std::cout << "(this=" << mThis << ")";\r
+               std::cout << std::endl;\r
+       }\r
+  }\r
+       virtual ~MBDebug()\r
+  {\r
+       if (mFlags & (DF_DEBUG))\r
+               std::cout << "}LEAVE: " << mClassName << "::" << mFuncName << std::endl;\r
+  }\r
+\r
+       // Log file output management\r
+       static std::ostream&    LogPrint()      { return std::cout; }\r
+\r
+private:\r
+       std::string                     mClassName;     // Name of class to be debugged\r
+       std::string                     mFuncName;      // Name of function to be debugged\r
+       void*                           mThis;            // The "this" pointer to the class being debugged\r
+       unsigned char           mFlags;                 // Debug mode flags\r
+};\r
+\r
+\r
+\r
+#define YesNo(b)       (b ? "Yes" : "No")\r
+\r
+\r
+\r
+inline std::string w2s(std::wstring ws)\r
+{\r
+       using convert_typeX = std::codecvt_utf8<wchar_t>;\r
+       std::wstring_convert<convert_typeX, wchar_t> converterX;\r
+       return(converterX.to_bytes(ws));\r
+}\r
+\r
+// Primitive types\r
+inline void DumpVar(const char *szName, char value)\r
+{\r
+       DLOG << "[chr]: " << szName << "='" << value << "'" << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, bool value)\r
+{\r
+       DLOG << "[bool]: " << szName << "=" << (value ? "true" : "false") << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, short value)\r
+{\r
+       DLOG  << "[shrt]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, int value)\r
+{\r
+       DLOG << "[int]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, long value)\r
+{\r
+       DLOG << "[long]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, double value)\r
+{\r
+       DLOG << "[dbl]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, unsigned char value)\r
+{\r
+       DLOG << "[byte]: " << szName << "=0x" << std::hex << value << std::dec << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, unsigned short value)\r
+{\r
+       DLOG << "[word]: " << szName << "=0x" << std::hex << value << std::dec << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, unsigned int value)\r
+{\r
+       DLOG << "[uint]: " << szName << "=0x" << std::hex << value << std::dec << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, unsigned long value)\r
+{\r
+       DLOG << "[dword]: " << szName << "=0x" << std::hex << value << std::dec << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, const char* value)\r
+{\r
+       DLOG << "[str]: " << szName << "=\"" << (value ? value : "") << "\"" << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, const std::string &value)\r
+{\r
+       DLOG << "[Str]: " << szName << "=\"" << value << "\"" << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, const std::wstring &value)\r
+{\r
+       DLOG << "[WStr]: " << szName << "=\"" << w2s(value) << "\"" << std::endl;\r
+}\r
+\r
+#ifndef MB_IGNORE_QT\r
+inline void DumpVar(const char *szName, const QString &value)\r
+{\r
+       DLOG << "[QStr]: " << szName << "=\"" << value.toStdString() << "\"" << std::endl;\r
+}\r
+#endif\r
+\r
+inline void DumpVar(const char *szName, const void* value)\r
+{\r
+       DLOG << "[ptr]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+\r
+// Collection of primitive types\r
+inline void DumpVar(const char *szName, const std::set<int> &values)\r
+{\r
+       DLOG << "[intSet]: " << szName << "={" << values.size() << "}[";\r
+       bool bFirst = true;\r
+       for (auto it=values.cbegin(); it!=values.cend(); ++it)\r
+               DLOG << (bFirst ? "" : ",") << *it;\r
+       DLOG << "]" << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, const std::list<bool>& values)\r
+{\r
+       DLOG << "[boolList]: " << szName << "={" << values.size() << "}[";\r
+       bool bFirst = true;\r
+       for (auto it=values.cbegin(); it!=values.cend(); ++it)\r
+               DLOG << (bFirst ? "" : ",") << (*it ? "Y" : "N");\r
+       DLOG << "]" << std::endl;\r
+}\r
+\r
+\r
+#endif // MBDebug_HeaderFile\r
+\r
diff --git a/src/PVViewer/MBDebug.h b/src/PVViewer/MBDebug.h
new file mode 100644 (file)
index 0000000..bde273f
--- /dev/null
@@ -0,0 +1,244 @@
+#ifndef MBDebug_HeaderFile\r
+#define MBDebug_HeaderFile\r
+\r
+//---------------------------------------------------------------\r
+// Usage of the logging facilities:\r
+//\r
+//  (1) At the beginning of each class file to be debugged, there\r
+//      should be a static string variable defined with the name\r
+//      of the class. Then, include the "MBDebug.h" header file.\r
+//\r
+//      //---------------------------------------------------------\r
+//      #define USE_DEBUG\r
+//      //#define MB_IGNORE_QT\r
+//      #define MBCLASSNAME "ClassName"\r
+//      #include "MBDebug.h"\r
+//      //---------------------------------------------------------\r
+//\r
+//  (2) At the beginning of each class method, call the DBG_FUN\r
+//      macro.\r
+//\r
+//      int ClassName::MyMethod(int x)\r
+//      {\r
+//        DBG_FUN();\r
+//        ...\r
+//      }\r
+//\r
+//      NOTE: For static methods, call the DBG_FUNC() macro!!\r
+//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\r
+//  This debugging/logging class is a "header-only" solution and\r
+//  does NOT require any additional implementation (.cpp) file!\r
+//---------------------------------------------------------------\r
+\r
+#include <iostream>\r
+#include <string>\r
+#include <locale>\r
+#include <codecvt>\r
+#include <list>\r
+#include <map>\r
+#include <set>\r
+#include <vector>\r
+#ifndef MB_IGNORE_QT\r
+# include <qstring.h>\r
+#endif\r
+\r
+//---------------------------------------------------------------\r
+//     Set the debug flags dependent on the preprocessor definitions\r
+//---------------------------------------------------------------\r
+#ifdef USE_DEBUG\r
+#      define MBS_DEBUG_FLAG           MBDebug::DF_DEBUG\r
+#else\r
+#      define MBS_DEBUG_FLAG           0\r
+#endif /*DEBUG*/ \r
+\r
+#define        MBS_DBG_FLAGS                   (MBS_DEBUG_FLAG)\r
+\r
+\r
+//---------------------------------------------------------------\r
+//     Define the global debug macros\r
+//---------------------------------------------------------------\r
+#define DLOG                                                   MBDebug::LogPrint()\r
+#define RETURN(var)                            { RET(var); return (var); }\r
+\r
+#ifdef USE_DEBUG\r
+\r
+# define DBG_FUN()                             MBDebug _dbg(MBCLASSNAME, __FUNCTION__, MBS_DBG_FLAGS, (void*)this)\r
+# define DBG_FUNC()                            MBDebug _dbg(MBCLASSNAME, __FUNCTION__, MBS_DBG_FLAGS)\r
+# define DBG_FUNB(blk)         MBDebug _dbg(MBCLASSNAME, blk, MBS_DBG_FLAGS)\r
+#      define MSGEL(txt)                               MBDebug::LogPrint() << txt << std::endl\r
+#      define PRINT(txt)                               MBDebug::LogPrint() << txt\r
+#      define SHOW2(var,typ)           DumpVar(#var,(typ)(var))\r
+#      define SHOW(var)                                DumpVar(#var,var)\r
+#      define ARG(var)                                 do { PRINT("in:"); DumpVar(#var,var); } while (0)\r
+#      define ARG2(var,typ)            do { PRINT("in:"); DumpVar(#var,(typ)(var)); } while (0)\r
+#      define RET(var)                                 do { PRINT("out:"); DumpVar(#var,var); } while (0)\r
+#      define MSG(txt)                                 MBDebug::LogPrint() << txt\r
+\r
+#else  /*!USE_DEBUG*/ \r
+\r
+#      define DBG_FUN()\r
+#      define DBG_FUNC()\r
+#      define DBG_FUNB(blk)\r
+#      define MSGEL(txt)\r
+#      define PRINT(txt)\r
+#      define SHOW2(var,typ)\r
+#      define SHOW(var)\r
+#      define ARG(var)\r
+#      define ARG2(var,typ)\r
+#      define RET(var)\r
+#      define MSG(txt)\r
+\r
+#endif /*USE_DEBUG*/ \r
+\r
+\r
+//---------------------------------------------------------------\r
+//     Declare the debugging and profiling class\r
+//---------------------------------------------------------------\r
+class MBDebug\r
+{\r
+public:\r
+       enum {\r
+               DF_NONE                 = 0x00,         // no debug\r
+               DF_DEBUG                = 0x01          // debug a function\r
+       };\r
+\r
+       MBDebug(const char* aClassName, const char* aFuncName, const short aFlag, void* aThis=NULL)\r
+       :mClassName(aClassName),mFuncName(aFuncName),mThis(aThis),mFlags((unsigned char)aFlag)\r
+  {\r
+       if (mFlags & (DF_DEBUG))\r
+       {\r
+               std::cout << "{ENTER: " << mClassName + "::" + mFuncName;\r
+               if (mThis) std::cout << "(this=" << mThis << ")";\r
+               std::cout << std::endl;\r
+       }\r
+  }\r
+       virtual ~MBDebug()\r
+  {\r
+       if (mFlags & (DF_DEBUG))\r
+               std::cout << "}LEAVE: " << mClassName << "::" << mFuncName << std::endl;\r
+  }\r
+\r
+       // Log file output management\r
+       static std::ostream&    LogPrint()      { return std::cout; }\r
+\r
+private:\r
+       std::string                     mClassName;     // Name of class to be debugged\r
+       std::string                     mFuncName;      // Name of function to be debugged\r
+       void*                           mThis;            // The "this" pointer to the class being debugged\r
+       unsigned char           mFlags;                 // Debug mode flags\r
+};\r
+\r
+\r
+\r
+#define YesNo(b)       (b ? "Yes" : "No")\r
+\r
+\r
+\r
+inline std::string w2s(std::wstring ws)\r
+{\r
+       using convert_typeX = std::codecvt_utf8<wchar_t>;\r
+       std::wstring_convert<convert_typeX, wchar_t> converterX;\r
+       return(converterX.to_bytes(ws));\r
+}\r
+\r
+// Primitive types\r
+inline void DumpVar(const char *szName, char value)\r
+{\r
+       DLOG << "[chr]: " << szName << "='" << value << "'" << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, bool value)\r
+{\r
+       DLOG << "[bool]: " << szName << "=" << (value ? "true" : "false") << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, short value)\r
+{\r
+       DLOG  << "[shrt]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, int value)\r
+{\r
+       DLOG << "[int]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, long value)\r
+{\r
+       DLOG << "[long]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, double value)\r
+{\r
+       DLOG << "[dbl]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, unsigned char value)\r
+{\r
+       DLOG << "[byte]: " << szName << "=0x" << std::hex << value << std::dec << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, unsigned short value)\r
+{\r
+       DLOG << "[word]: " << szName << "=0x" << std::hex << value << std::dec << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, unsigned int value)\r
+{\r
+       DLOG << "[uint]: " << szName << "=0x" << std::hex << value << std::dec << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, unsigned long value)\r
+{\r
+       DLOG << "[dword]: " << szName << "=0x" << std::hex << value << std::dec << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, const char* value)\r
+{\r
+       DLOG << "[str]: " << szName << "=\"" << (value ? value : "") << "\"" << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, const std::string &value)\r
+{\r
+       DLOG << "[Str]: " << szName << "=\"" << value << "\"" << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, const std::wstring &value)\r
+{\r
+       DLOG << "[WStr]: " << szName << "=\"" << w2s(value) << "\"" << std::endl;\r
+}\r
+\r
+#ifndef MB_IGNORE_QT\r
+inline void DumpVar(const char *szName, const QString &value)\r
+{\r
+       DLOG << "[QStr]: " << szName << "=\"" << value.toStdString() << "\"" << std::endl;\r
+}\r
+#endif\r
+\r
+inline void DumpVar(const char *szName, const void* value)\r
+{\r
+       DLOG << "[ptr]: " << szName << "=" << value << std::endl;\r
+}\r
+\r
+\r
+// Collection of primitive types\r
+inline void DumpVar(const char *szName, const std::set<int> &values)\r
+{\r
+       DLOG << "[intSet]: " << szName << "={" << values.size() << "}[";\r
+       bool bFirst = true;\r
+       for (auto it=values.cbegin(); it!=values.cend(); ++it)\r
+               DLOG << (bFirst ? "" : ",") << *it;\r
+       DLOG << "]" << std::endl;\r
+}\r
+\r
+inline void DumpVar(const char *szName, const std::list<bool>& values)\r
+{\r
+       DLOG << "[boolList]: " << szName << "={" << values.size() << "}[";\r
+       bool bFirst = true;\r
+       for (auto it=values.cbegin(); it!=values.cend(); ++it)\r
+               DLOG << (bFirst ? "" : ",") << (*it ? "Y" : "N");\r
+       DLOG << "]" << std::endl;\r
+}\r
+\r
+\r
+#endif // MBDebug_HeaderFile\r
+\r
index 66f22e2c682a29d0b21ee754d53e9f66f14b9cf0..639d12289c7c9eea3d12e158ee83ab5c26c7db47 100644 (file)
 
 #include <pqPropertiesPanel.h>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+//#define MB_IGNORE_QT
+#define MBCLASSNAME "PVViewer_Behaviors"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 int PVViewer_Behaviors::BehaviorLoadingLevel = 0;
 
 PVViewer_Behaviors::PVViewer_Behaviors(QMainWindow * parent)
   : QObject(parent)
 {
+  DBG_FUN();
 }
 
 /**! Instanciate minimal ParaView behaviors needed when using an instance of PVViewer.
@@ -62,6 +70,8 @@ PVViewer_Behaviors::PVViewer_Behaviors(QMainWindow * parent)
  */
 void PVViewer_Behaviors::instanciateMinimalBehaviors(QMainWindow * /*desk*/)
 {
+  DBG_FUN();
+  SHOW(BehaviorLoadingLevel);
   if (BehaviorLoadingLevel < 1)
     {
       // Register ParaView interfaces.
@@ -90,6 +100,8 @@ void PVViewer_Behaviors::instanciateMinimalBehaviors(QMainWindow * /*desk*/)
  */
 void PVViewer_Behaviors::instanciateAllBehaviors(QMainWindow * desk)
 {
+  DBG_FUN();
+  SHOW(BehaviorLoadingLevel);
   //    "new pqParaViewBehaviors(anApp->desktop(), this);"
   // -> (which loads all standard ParaView behaviors at once) has to be replaced in order to
   // exclude using of pqQtMessageHandlerBehaviour
index 6b4205eef762f03cbf0d57a844e7c0bce6c77228..352a67caface4629799d6197195913dc79616056 100644 (file)
 #include <pqPipelineBrowserWidget.h>
 #include <pqServerDisconnectReaction.h>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+//#define MB_IGNORE_QT
+#define MBCLASSNAME "PVViewer_Core"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 
 //---------- Static init -----------------
 pqPVApplicationCore* PVViewer_Core::MyCoreApp = 0;
@@ -60,8 +67,9 @@ pqPVApplicationCore * PVViewer_Core::GetPVApplication()
   \param fullSetup whether to instanciate all behaviors or just the minimal ones.
   \return \c true if ParaView has been initialized successfully, otherwise false
 */
-bool PVViewer_Core::ParaviewInitApp(QMainWindow * /*aDesktop*/)
+bool PVViewer_Core::ParaviewInitApp(QMainWindow * aDesktop)
 {
+  DBG_FUNC();
   if ( ! MyCoreApp) {
       // Obtain command-line arguments
       int argc = 0;
@@ -116,15 +124,17 @@ bool PVViewer_Core::ParaviewInitApp(QMainWindow * /*aDesktop*/)
         free(argv[i]);
       delete[] argv;
   }
-   // Initialization of ParaView GUI widgets will be done when these widgets are
-   // really needed.
-   // PVViewer_GUIElements* inst = PVViewer_GUIElements::GetInstance(aDesktop);
-   // inst->getPropertiesPanel();
-   return true;
+  // Initialization of ParaView GUI widgets will be done when these widgets are
+  // really needed.
+  // PVViewer_GUIElements* inst = PVViewer_GUIElements::GetInstance(aDesktop);
+  // inst->getPropertiesPanel();
+  return true;
 }
 
 void PVViewer_Core::ParaviewInitBehaviors(bool fullSetup, QMainWindow* aDesktop)
 {
+  DBG_FUNC();
+  ARG(fullSetup);
   if (!ParaviewBehaviors)
       ParaviewBehaviors = new PVViewer_Behaviors(aDesktop);
 
@@ -136,6 +146,9 @@ void PVViewer_Core::ParaviewInitBehaviors(bool fullSetup, QMainWindow* aDesktop)
 
 void PVViewer_Core::ParaviewLoadConfigurations(const QString & configPath, bool force)
 {
+  DBG_FUNC();
+  ARG(configPath);
+  ARG(force);
   if (!ConfigLoaded || force)
     {
       if (!configPath.isNull()) {
@@ -148,6 +161,7 @@ void PVViewer_Core::ParaviewLoadConfigurations(const QString & configPath, bool
 
 void PVViewer_Core::ParaviewCleanup()
 {
+  DBG_FUNC();
   // Disconnect from server
   pqServer* server = pqActiveObjects::instance().activeServer();
   if (server && server->isRemote())
index 057354cba19eea4412b76b21a712f8094a86e84e..5be7bf5e6636339889f60800843380ebc361f06e 100644 (file)
 #include <QMenu>
 #include <QToolBar>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+//#define MB_IGNORE_QT
+#define MBCLASSNAME "PVViewer_GUIElements"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 PVViewer_GUIElements * PVViewer_GUIElements::theInstance = 0;
 
 PVViewer_GUIElements::PVViewer_GUIElements(QMainWindow* desktop) :
@@ -92,6 +99,7 @@ PVViewer_GUIElements::PVViewer_GUIElements(QMainWindow* desktop) :
   commonAction(0),
   dataAction(0)
 {
+  DBG_FUN();
 }
 
 PVViewer_GUIElements * PVViewer_GUIElements::GetInstance(QMainWindow* desk)
@@ -108,6 +116,7 @@ PVViewer_GUIElements * PVViewer_GUIElements::GetInstance(QMainWindow* desk)
 void PVViewer_GUIElements::buildPVWidgets()
 {
   if (!myPVWidgetsFlag) {
+    DBG_FUN();
 
     //Pipeline Browser
     if ( !pipelineBrowserWidget ) {
@@ -258,6 +267,8 @@ void PVViewer_GUIElements::buildPVWidgets()
 
 void PVViewer_GUIElements::setToolBarVisible(bool show)
 {  
+  DBG_FUN();
+  ARG(show);
   QCoreApplication::processEvents();
   if (!myPVWidgetsFlag)
     return;
@@ -293,6 +304,8 @@ void PVViewer_GUIElements::setToolBarVisible(bool show)
 
 void PVViewer_GUIElements::setVCRTimeToolBarVisible(bool show)
 {
+  DBG_FUN();
+  ARG(show);
   vcrAction->setChecked(!show);
   vcrAction->setVisible(show);
   vcrAction->trigger();
@@ -313,6 +326,8 @@ QList<QToolBar*> PVViewer_GUIElements::getToolbars()
 
 void PVViewer_GUIElements::setToolBarEnabled(bool enabled)
 {
+  DBG_FUN();
+  ARG(enabled);
   if (!myPVWidgetsFlag)
     return;
   
@@ -374,6 +389,7 @@ QMenu* PVViewer_GUIElements::getCatalystMenu()  {
 }
 
 void PVViewer_GUIElements::publishExistingSources() {
+  DBG_FUN();
   vtkSMSessionProxyManager* pxm = pqActiveObjects::instance().proxyManager();
   pqServerManagerModel* smmodel = pqApplicationCore::instance()->getServerManagerModel();
   if( !pxm || !smmodel )
@@ -381,7 +397,9 @@ void PVViewer_GUIElements::publishExistingSources() {
   vtkSMProxyIterator* iter = vtkSMProxyIterator::New();
   iter->SetModeToOneGroup();
   iter->SetSessionProxyManager( pxm );
+  MSGEL("....List of all sources:....");
   for ( iter->Begin( "sources" ); !iter->IsAtEnd(); iter->Next() ) {
+    SHOW(iter->GetKey());
     if ( pqProxy* item = smmodel->findItem<pqProxy*>( iter->GetProxy() ) ) {
       pqPipelineSource* source = qobject_cast<pqPipelineSource*>( item );
       QMetaObject::invokeMethod( smmodel,
index ea138dbaa3adb06c3eb79cfc92176f062d8ecf2f..dafc8a52355fa22646e1ca162f8ebabccbb83fb1 100644 (file)
 #include "PVViewer_Core.h"
 #include "PVViewer_ViewManager.h"
 
+//---------------------------------------------------------
+#define USE_DEBUG
+//#define MB_IGNORE_QT
+#define MBCLASSNAME "PVViewer_InitSingleton"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 bool PVViewer_InitSingleton::IS_INIT=false;
 
 void PVViewer_InitSingleton::Init(QMainWindow* desktop)
 {
+  DBG_FUNC();
   if(IS_INIT)
     return ;
   PVViewer_Core::ParaviewInitApp(desktop);
index 8d40dc3896d7da248957106d9a231c860ce47ee2..bd6b5b567ef53972957f1a1fc989dbe7300a3a38 100644 (file)
 
 #include <vtkObjectFactory.h>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+//#define MB_IGNORE_QT
+#define MBCLASSNAME "PVViewer_OutputWindow"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 vtkStandardNewMacro(PVViewer_OutputWindow)
 
 PVViewer_OutputWindow::PVViewer_OutputWindow()
 {
+  DBG_FUN();
 }
 
 PVViewer_OutputWindow::~PVViewer_OutputWindow()
 {
+  DBG_FUN();
 }
 
 unsigned int PVViewer_OutputWindow::getTextCount() const
@@ -58,6 +67,8 @@ unsigned int PVViewer_OutputWindow::getDebugCount() const
 
 void PVViewer_OutputWindow::DisplayText(const char* text)
 {
+  DBG_FUN();
+  ARG(text);
   MessageTypes type = GetCurrentMessageType();
   myCounter[type] = count(type) + 1;
   switch (type)
index 9a223eb33400a9574df832a389031ffcc202be7f..8b546d51eb114e504aebd2d4e51ea002352285b6 100644 (file)
 #include <pqServerConnectReaction.h>
 #include <pqActiveObjects.h>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+//#define MB_IGNORE_QT
+#define MBCLASSNAME "PVViewer_ViewManager"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 /*!
   Constructor
 */
 PVViewer_ViewManager::PVViewer_ViewManager(SUIT_Study* study, SUIT_Desktop* desktop)
 : SUIT_ViewManager( study, desktop, new PVViewer_Viewer() )
 {
+  DBG_FUN();
   MESSAGE("PVViewer - view manager created ...");
   setTitle( tr( "PARAVIEW_VIEW_TITLE" ) );
 
@@ -61,12 +69,14 @@ PVServer_ServiceWrapper * PVViewer_ViewManager::GetService()
 
 QString PVViewer_ViewManager::GetPVConfigPath()
 {
+  DBG_FUNC();
   SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr();
   return resMgr->stringValue("resources", "PVViewer", QString());
 }
 
 bool PVViewer_ViewManager::ConnectToExternalPVServer(QMainWindow* desktop)
 {
+  DBG_FUNC();
   SUIT_ResourceMgr* aResourceMgr = SUIT_Session::session()->resourceMgr();
   bool noConnect = aResourceMgr->booleanValue( "PARAVIS", "no_ext_pv_server", false );
   if (noConnect)
@@ -132,6 +142,7 @@ bool PVViewer_ViewManager::ConnectToExternalPVServer(QMainWindow* desktop)
 */
 void PVViewer_ViewManager::onWindowActivated(SUIT_ViewWindow* view)
 {
+  DBG_FUN();
   if (view)
   {
     PVViewer_ViewWindow* pvWindow = dynamic_cast<PVViewer_ViewWindow*>(view);
index 55cc5e447bc272f70d002a5ee0c74ee2346f9feb..786d4738e4f890d97442cc636fc711dfde319924 100644 (file)
 #include <utilities.h>
 #include "SUIT_Desktop.h"
 
+//---------------------------------------------------------
+#define USE_DEBUG
+//#define MB_IGNORE_QT
+#define MBCLASSNAME "PVViewer_Viewer"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 //----------------------------------------
 PVViewer_Viewer::PVViewer_Viewer()
 :SUIT_ViewModel() 
 {
+  DBG_FUN();
   MESSAGE("PVViewer_Viewer: creating view model ...");
 }
 
@@ -37,6 +45,7 @@ PVViewer_Viewer::PVViewer_Viewer()
 */
 SUIT_ViewWindow* PVViewer_Viewer::createView(SUIT_Desktop* desktop)
 {
+  DBG_FUN();
   return new PVViewer_ViewWindow(desktop, this);
 }
 
index 0f860d8e902298c986c88bd1f9021fd14a7323bc..6e2516921f85034d804f7ed748e65cb0d42ee8ae 100644 (file)
 #include <pqTabbedMultiViewWidget.h>
 #include <pqApplicationCore.h>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+//#define MB_IGNORE_QT
+#define MBCLASSNAME "PVViewer_ViewWindow"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 
 /*!
   \class PVViewer_ViewWindow
@@ -47,6 +54,7 @@
 PVViewer_ViewWindow::PVViewer_ViewWindow( SUIT_Desktop* theDesktop, PVViewer_Viewer* theModel )
   : SUIT_ViewWindow( theDesktop ), myPVMgr( 0 )
 {
+  DBG_FUN();
   myDesktop = theDesktop;
   myModel = theModel;
   setViewManager(myModel->getViewManager());
@@ -74,6 +82,7 @@ PVViewer_ViewWindow::PVViewer_ViewWindow( SUIT_Desktop* theDesktop, PVViewer_Vie
 */
 PVViewer_ViewWindow::~PVViewer_ViewWindow()
 {
+  DBG_FUN();
   if ( myPVMgr ) {
     // Hide toolbars
     PVViewer_GUIElements * pvge = PVViewer_GUIElements::GetInstance(myDesktop);
@@ -87,6 +96,7 @@ PVViewer_ViewWindow::~PVViewer_ViewWindow()
 
 void PVViewer_ViewWindow::removePVMgr()
 {
+  DBG_FUNC();
   pqTabbedMultiViewWidget* aPVMgr = qobject_cast<pqTabbedMultiViewWidget*>(pqApplicationCore::instance()->manager("MULTIVIEW_WIDGET"));
   delete aPVMgr;
 }
@@ -106,6 +116,8 @@ QString PVViewer_ViewWindow::getVisualParameters()
 */
 void PVViewer_ViewWindow::setVisualParameters( const QString& parameters )
 {
+  DBG_FUN();
+  ARG(parameters);
   SUIT_ViewWindow::setVisualParameters( parameters );
 }
 
index 07c933c682bf320684b459edc63957bd6aef215c..048b980871094d17a4e9ed70aabfdc3ff51affca 100644 (file)
 #include <QtxActionMenuMgr.h>
 #include <QtxActionToolMgr.h>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+#define MBCLASSNAME "SUIT_Application"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 
 /*!
   \class StatusLabel
@@ -61,6 +67,7 @@ SUIT_Application::SUIT_Application()
   myStatusLabel( 0 ),
   myPostRoutines( QList<PostRoutine>() )
 {
+  DBG_FUN();
   if ( SUIT_Session::session() )
     SUIT_Session::session()->insertApplication( this );
 }
@@ -70,6 +77,7 @@ SUIT_Application::SUIT_Application()
 */
 SUIT_Application::~SUIT_Application()
 {
+  DBG_FUN();
   SUIT_Study* s = myStudy;
   setActiveStudy( 0 );
   delete s;
@@ -103,6 +111,8 @@ bool SUIT_Application::isPossibleToClose( bool& )
 */
 void SUIT_Application::closeApplication()
 {
+  DBG_FUN();
+  MSGEL("-----> emit applicationClosed <-----");
   emit applicationClosed( this );
 }
 
@@ -127,6 +137,7 @@ QString SUIT_Application::applicationVersion() const
 */
 void SUIT_Application::start()
 {
+  DBG_FUN();
   if ( desktop() )
     desktop()->show();
 
@@ -140,6 +151,9 @@ void SUIT_Application::start()
 */
 bool SUIT_Application::useFile( const QString& theFileName )
 {
+  DBG_FUN();
+  ARG(theFileName);
+
   createEmptyStudy();
   SUIT_Study* study = activeStudy();
 
@@ -159,6 +173,7 @@ bool SUIT_Application::useFile( const QString& theFileName )
 */
 void SUIT_Application::createEmptyStudy()
 {
+  DBG_FUN();
   if ( !activeStudy() )
     setActiveStudy( createNewStudy() );
 }
@@ -201,6 +216,8 @@ SUIT_ShortcutMgr* SUIT_Application::shortcutMgr() const
 */
 void SUIT_Application::putInfo( const QString& msg, const int msec )
 {
+  DBG_FUN();
+  ARG(msg);
   if ( !desktop() )
     return;
 
@@ -226,6 +243,7 @@ void SUIT_Application::putInfo( const QString& msg, const int msec )
 */
 void SUIT_Application::onInfoClear()
 {
+  DBG_FUN();
   if ( !myStatusLabel )
     return;
 
@@ -249,6 +267,7 @@ void SUIT_Application::updateCommandsStatus()
 */
 SUIT_Application* SUIT_Application::startApplication( int argc, char** argv ) const
 {
+  DBG_FUN();
   return startApplication( objectName(), argc, argv );
 }
 
@@ -260,6 +279,8 @@ SUIT_Application* SUIT_Application::startApplication( int argc, char** argv ) co
 */
 SUIT_Application* SUIT_Application::startApplication( const QString& name, int argc, char** argv ) const
 {
+  DBG_FUN();
+  ARG(name);
   SUIT_Session* session = SUIT_Session::session();
   if ( !session )
     return 0;
@@ -273,6 +294,7 @@ SUIT_Application* SUIT_Application::startApplication( const QString& name, int a
 */
 void SUIT_Application::setDesktop( SUIT_Desktop* desk )
 {
+  DBG_FUN();
   if ( myDesktop == desk )
     return;
 
@@ -295,6 +317,7 @@ void SUIT_Application::setDesktop( SUIT_Desktop* desk )
 */
 SUIT_Study* SUIT_Application::createNewStudy()
 {
+  DBG_FUN();
   return new SUIT_Study( this );
 }
 
@@ -304,6 +327,7 @@ SUIT_Study* SUIT_Application::createNewStudy()
 */
 void SUIT_Application::setActiveStudy( SUIT_Study* study )
 {
+  DBG_FUN();
   if ( myStudy == study )
     return;
 
@@ -667,6 +691,7 @@ QAction* SUIT_Application::createAction( const int id, const QString& text, cons
                                          QObject* parent, const bool toggle, QObject* reciever, 
                                         const char* member, const QString& shortcutAction )
 {
+  MSGEL("...SUIT_Application::createAction(menu=\"" << menu.toStdString() << "\", text=\"" << text.toStdString() << "\"");
   QtxAction* a = new QtxAction( text, icon, menu, key, parent, toggle, shortcutAction );
   a->setStatusTip( tip );
 
@@ -685,6 +710,7 @@ QAction* SUIT_Application::createAction( const int id, const QString& text, cons
 */
 int SUIT_Application::registerAction( const int id, QAction* a )
 {
+  MSGEL("...registerAction(" << id << ")");
   int ident = actionId( a );
   if ( ident != -1 )
     return ident;
@@ -724,6 +750,8 @@ QAction* SUIT_Application::separator()
 
 void SUIT_Application::onDesktopActivated()
 {
+  DBG_FUN();
+  MSGEL("-----> emit activated <-----");
   emit activated( this );
 }
 
@@ -745,6 +773,7 @@ void SUIT_Application::onHelpContextModule( const QString& /*theComponentName*/,
 
 void SUIT_Application::addPostRoutine( PostRoutine theRoutine )
 {
+  DBG_FUN();
   if ( !myPostRoutines.contains( theRoutine ) )
     myPostRoutines << theRoutine;
 }
index d65af2263c6f28ceccaf8d6ad8fc62b9828b62c9..a9ee7a47cb249030d3bc8dee9e6835b69c7fc968 100644 (file)
@@ -174,6 +174,7 @@ void SUIT_DataBrowser::updateTree( SUIT_DataObject* obj, const bool /*autoOpen*/
     if (myAutoSizeColumns)
       adjustColumnsWidth();
   }
+  MSGEL("-----> emit updated <-----");
   emit updated();
 }
 
index 567ca5488ec0e8e88e2e03e6fc56a8928c018a05..008bdab38271891fcf511fc5e624387d4b89b235 100644 (file)
 #include "SUIT_Selector.h"
 #include "SUIT_SelectionFilter.h"
 
+//---------------------------------------------------------
+#define USE_DEBUG
+#define MBCLASSNAME "SUIT_SelectionMgr"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 /*!\class SUIT_SelectionMgr
  * Provide selection manager. Manipulate by selection filters, modes, data owners.
  */
@@ -36,11 +42,13 @@ myIterations( Feedback ? 1 : 0 ),
 myAutoDelFilter( false ),
 myIsSelChangeEnabled( true )
 {
+  DBG_FUN();
 }
 
 /*!destructor. mySelectors auto delete.*/
 SUIT_SelectionMgr::~SUIT_SelectionMgr()
 {
+  DBG_FUN();
   while( !mySelectors.empty() ) {
     SelectorList::iterator it = mySelectors.begin();
     delete *it;
@@ -50,6 +58,7 @@ SUIT_SelectionMgr::~SUIT_SelectionMgr()
 /*!Add selector \a sel to selectors list,if it's not exists in list.*/
 void SUIT_SelectionMgr::installSelector( SUIT_Selector* sel )
 {
+  DBG_FUN();
   if ( sel && !mySelectors.contains( sel ) )
     mySelectors.append( sel );
 }
@@ -57,12 +66,14 @@ void SUIT_SelectionMgr::installSelector( SUIT_Selector* sel )
 /*!Remove selector \a sel from list.*/
 void SUIT_SelectionMgr::removeSelector( SUIT_Selector* sel )
 {
+  DBG_FUN();
   mySelectors.removeAll( sel );
 }
 
 /*!Gets selectors list to \a lst.*/
 void SUIT_SelectionMgr::selectors( QList<SUIT_Selector*>& lst ) const
 {
+  DBG_FUN();
   lst.clear();
   for ( SelectorList::const_iterator it = mySelectors.begin(); it != mySelectors.end(); ++it )
     lst.append( *it );
@@ -71,6 +82,8 @@ void SUIT_SelectionMgr::selectors( QList<SUIT_Selector*>& lst ) const
 /*!Gets selectors list to \a lst with type \a typ.*/
 void SUIT_SelectionMgr::selectors( const QString& typ, QList<SUIT_Selector*>& lst ) const
 {
+  DBG_FUN();
+  ARG(typ);
   lst.clear();
   for ( SelectorList::const_iterator it = mySelectors.begin(); it != mySelectors.end(); ++it )
   {
@@ -83,6 +96,9 @@ void SUIT_SelectionMgr::selectors( const QString& typ, QList<SUIT_Selector*>& ls
 */
 void SUIT_SelectionMgr::setEnabled( const bool on, const QString& typ )
 {
+  DBG_FUN();
+  ARG(on);
+  ARG(typ);
   for ( SelectorList::const_iterator it = mySelectors.begin(); it != mySelectors.end(); ++it )
   {
     if ( typ.isEmpty() || (*it)->type() == typ )
@@ -94,6 +110,8 @@ void SUIT_SelectionMgr::setEnabled( const bool on, const QString& typ )
 */
 void SUIT_SelectionMgr::selected( SUIT_DataOwnerPtrList& lst, const QString& type, const bool onlyOne ) const
 {
+  DBG_FUN();
+  ARG(type);
   lst.clear();
 
   for ( SelectorList::const_iterator it = mySelectors.begin(); it != mySelectors.end(); ++it )
@@ -129,6 +147,7 @@ void SUIT_SelectionMgr::selected( SUIT_DataOwnerPtrList& lst, const QString& typ
 */
 void SUIT_SelectionMgr::setSelected( const SUIT_DataOwnerPtrList& lst, const bool append )
 {
+  DBG_FUN();
   SUIT_DataOwnerPtrList owners;
   filterOwners( lst, owners );
 
@@ -149,6 +168,7 @@ void SUIT_SelectionMgr::setSelected( const SUIT_DataOwnerPtrList& lst, const boo
 */
 void SUIT_SelectionMgr::clearSelected()
 {
+  DBG_FUN();
   setSelected( SUIT_DataOwnerPtrList() );
 }
 
@@ -156,6 +176,7 @@ void SUIT_SelectionMgr::clearSelected()
 */
 void SUIT_SelectionMgr::selectionChanged( SUIT_Selector* sel )
 {
+  DBG_FUN();
   if ( !sel || !myIsSelChangeEnabled || !sel->isEnabled() )
     return;
 
@@ -208,6 +229,8 @@ void SUIT_SelectionMgr::selectionModes( QList<int>& vals ) const
 */
 void SUIT_SelectionMgr::setSelectionModes( const int mode )
 {
+  DBG_FUN();
+  ARG(mode);
   QList<int> lst;
   lst.append( mode );
   setSelectionModes( lst );
@@ -217,6 +240,7 @@ void SUIT_SelectionMgr::setSelectionModes( const int mode )
 */
 void SUIT_SelectionMgr::setSelectionModes( const QList<int>& lst )
 {
+  DBG_FUN();
   mySelModes = lst;
 }
 
@@ -224,6 +248,8 @@ void SUIT_SelectionMgr::setSelectionModes( const QList<int>& lst )
 */
 void SUIT_SelectionMgr::appendSelectionModes( const int mode )
 {
+  DBG_FUN();
+  ARG(mode);
   QList<int> lst;
   lst.append( mode );
   appendSelectionModes( lst );
@@ -233,6 +259,7 @@ void SUIT_SelectionMgr::appendSelectionModes( const int mode )
 */
 void SUIT_SelectionMgr::appendSelectionModes( const QList<int>& lst )
 {
+  DBG_FUN();
   QMap<int, int> map;
   for ( QList<int>::const_iterator it = mySelModes.begin(); it != mySelModes.end(); ++it )
     map.insert( *it, 0 );
@@ -248,6 +275,8 @@ void SUIT_SelectionMgr::appendSelectionModes( const QList<int>& lst )
 */
 void SUIT_SelectionMgr::removeSelectionModes( const int mode )
 {
+  DBG_FUN();
+  ARG(mode);
   QList<int> lst;
   lst.append( mode );
   removeSelectionModes( lst );
@@ -257,6 +286,7 @@ void SUIT_SelectionMgr::removeSelectionModes( const int mode )
 */
 void SUIT_SelectionMgr::removeSelectionModes( const QList<int>& lst )
 {
+  DBG_FUN();
   QMap<int, int> map;
   for ( QList<int>::const_iterator it = mySelModes.begin(); it != mySelModes.end(); ++it )
     map.insert( *it, 0 );
@@ -304,6 +334,7 @@ bool SUIT_SelectionMgr::hasFilter( SUIT_SelectionFilter* f ) const
 */
 void SUIT_SelectionMgr::installFilter( SUIT_SelectionFilter* f, const bool updateSelection )
 {
+  DBG_FUN();
   if ( !hasFilter( f ) )
   {
     SUIT_DataOwnerPtrList selOwners;
@@ -321,6 +352,7 @@ void SUIT_SelectionMgr::installFilter( SUIT_SelectionFilter* f, const bool updat
 */
 void SUIT_SelectionMgr::removeFilter( SUIT_SelectionFilter* f )
 {
+  DBG_FUN();
   if ( !myFilters.contains( f ) )
     return;
 
@@ -334,6 +366,7 @@ void SUIT_SelectionMgr::removeFilter( SUIT_SelectionFilter* f )
 */
 void SUIT_SelectionMgr::clearFilters()
 {
+  DBG_FUN();
   if ( autoDeleteFilter() )
   {
     for ( SelFilterList::const_iterator it = myFilters.begin(); it != myFilters.end(); ++it )
@@ -354,6 +387,8 @@ bool SUIT_SelectionMgr::autoDeleteFilter() const
 */
 void SUIT_SelectionMgr::setAutoDeleteFilter( const bool on )
 {
+  DBG_FUN();
+  ARG(on);
   myAutoDelFilter = on;
 }
 
index a3e49cc58353185232aa568a1d4e78340b61d7e9..29376dc2c9b8cbe37064ca3e1bb1cad3f9b50645 100644 (file)
 
 #include <QObject>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+#define MBCLASSNAME "SUIT_Selector"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 /*!\class SUIT_Selector::Destroyer
   Class provide the watching for qobject parent class of the selector.
 */
@@ -43,14 +49,18 @@ private:
   SUIT_Selector* mySelector;
 };
 
+#undef MBCLASSNAME
+#define MBCLASSNAME "SUIT_Selector::Destroyer"
 SUIT_Selector::Destroyer::Destroyer( SUIT_Selector* s, QObject* p )
 : QObject( p ),
   mySelector( s )
 {
+  DBG_FUN();
 }
 
 SUIT_Selector::Destroyer::~Destroyer()
 {
+  DBG_FUN();
   SUIT_Selector* s = mySelector;
   mySelector = 0;
   if ( s )
@@ -64,9 +74,12 @@ SUIT_Selector* SUIT_Selector::Destroyer::selector() const
 
 void SUIT_Selector::Destroyer::setSelector( SUIT_Selector* s )
 {
+  DBG_FUN();
   mySelector = s;
 }
 
+#undef MBCLASSNAME
+#define MBCLASSNAME "SUIT_Selector"
 /*!\class SUIT_Selector
  * Class provide selector for data owners.
  */
@@ -81,6 +94,7 @@ SUIT_Selector::SUIT_Selector( SUIT_SelectionMgr* selMgr, QObject* parent )
   myAutoBlock( true ),
   myDestroyer( 0 )
 {
+  DBG_FUN();
   if ( selMgr )
     selMgr->installSelector( this );
 
@@ -93,6 +107,7 @@ SUIT_Selector::SUIT_Selector( SUIT_SelectionMgr* selMgr, QObject* parent )
 */
 SUIT_Selector::~SUIT_Selector()
 {
+  DBG_FUN();
   if ( selectionMgr() )
     selectionMgr()->removeSelector( this );
 
@@ -125,6 +140,8 @@ bool SUIT_Selector::isEnabled() const
 */
 void SUIT_Selector::setEnabled( const bool on )
 {
+  DBG_FUN();
+  ARG(on);
   myEnabled = on;
 }
 
@@ -141,6 +158,8 @@ bool SUIT_Selector::autoBlock() const
 */
 void SUIT_Selector::setAutoBlock( const bool on )
 {
+  DBG_FUN();
+  ARG(on);
   myAutoBlock = on;
 }
 
@@ -158,6 +177,7 @@ void SUIT_Selector::selected( SUIT_DataOwnerPtrList& lst ) const
 */
 void SUIT_Selector::setSelected( const SUIT_DataOwnerPtrList& lst )
 {
+  DBG_FUN();
   if ( !isEnabled() )
     return;
 
@@ -174,6 +194,7 @@ void SUIT_Selector::setSelected( const SUIT_DataOwnerPtrList& lst )
 */
 void SUIT_Selector::selectionChanged()
 {
+  DBG_FUN();
   if ( selectionMgr() && isEnabled() && ( !autoBlock() || !myBlock ) )
     selectionMgr()->selectionChanged( this );
 }
index 3c031a976c9dcfdb6e46a73beec65f334f983e08..3a3b85d96b747743a25a90685088d8f016417457 100644 (file)
 #include <dlfcn.h>
 #endif
 
+//---------------------------------------------------------
+#define USE_DEBUG
+#define MBCLASSNAME "SUIT_Session"
+#include "MBDebug.h"
+#include "MBSUIT.h"
+//---------------------------------------------------------
+
 SUIT_Session* SUIT_Session::mySession = 0;
 
 /*! Constructor.*/
@@ -48,6 +55,7 @@ SUIT_Session::SUIT_Session()
   myExitStatus( NORMAL ),
   myExitFlags ( 0 )
 {
+  DBG_FUN();
   SUIT_ASSERT( !mySession )
 
   mySession = this;
@@ -56,6 +64,7 @@ SUIT_Session::SUIT_Session()
 /*!destructor. Clear applications list and set mySession to zero.*/
 SUIT_Session::~SUIT_Session()
 {
+  DBG_FUN();
   for ( AppList::iterator it = myAppList.begin(); it != myAppList.end(); ++it )
     delete *it;
 
@@ -81,6 +90,8 @@ SUIT_Session* SUIT_Session::session()
 
 SUIT_Application* SUIT_Session::startApplication( const QString& name, int /*args*/, char** /*argv*/ )
 {
+  DBG_FUN();
+  ARG(name);
   AppLib libHandle = 0;
 
   QString appName = applicationName( name );
@@ -166,6 +177,7 @@ QList<SUIT_Application*> SUIT_Session::applications() const
 
 void SUIT_Session::insertApplication( SUIT_Application* app )
 {
+  DBG_FUN();
   if ( !app || myAppList.contains( app ) )
     return;
 
@@ -224,6 +236,7 @@ SUIT_ResourceMgr* SUIT_Session::resourceMgr() const
 */
 void SUIT_Session::onApplicationClosed( SUIT_Application* theApp )
 {
+  DBG_FUN();
   emit applicationClosed( theApp );
 
   myAppList.removeAll( theApp );
@@ -244,6 +257,8 @@ void SUIT_Session::onApplicationClosed( SUIT_Application* theApp )
 */
 void SUIT_Session::closeSession( int mode, int flags )
 {
+  DBG_FUN();
+  ARG(mode);
   AppList apps = myAppList;
   for ( AppList::const_iterator it = apps.begin(); it != apps.end(); ++it )
   {
@@ -314,6 +329,8 @@ QString SUIT_Session::lastError() const
  */
 SUIT_Session::AppLib SUIT_Session::loadLibrary( const QString& name, QString& libName )
 {
+  DBG_FUN();
+  ARG(name);
   QString libFile = SUIT_Tools::library( name );
 
   libName = libFile;
@@ -353,6 +370,8 @@ QString SUIT_Session::applicationName( const QString& str ) const
 */
 SUIT_ResourceMgr* SUIT_Session::createResourceMgr( const QString& appName ) const
 {
+  DBG_FUN();
+  ARG(appName);
   return new SUIT_ResourceMgr( applicationName( appName ) );
 }
 
@@ -361,5 +380,6 @@ SUIT_ResourceMgr* SUIT_Session::createResourceMgr( const QString& appName ) cons
 */
 void SUIT_Session::onApplicationActivated( SUIT_Application* app ) 
 {
+  DBG_FUN();
   myActiveApp = app;
 }
index 715e45d67900da820787d871948f5b6734db8b0d..928ade89b02ee3087e9e16fe9ec78902a71441bb 100644 (file)
 #include "SUIT_ViewModel.h"
 #include "SUIT_ViewWindow.h"
 
+//---------------------------------------------------------
+#define USE_DEBUG
+#define MBCLASSNAME "SUIT_ViewModel"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 SUIT_ViewModel::InteractionStyle2StatesMap SUIT_ViewModel::myStateMap;
 SUIT_ViewModel::InteractionStyle2ButtonsMap SUIT_ViewModel::myButtonMap;
 
@@ -33,6 +39,7 @@ static bool isInitialized = false;
 /*!Constructor.*/
 SUIT_ViewModel::SUIT_ViewModel()
 {
+  DBG_FUN();
   if ( !isInitialized )
   {
     isInitialized = true;
@@ -69,6 +76,7 @@ SUIT_ViewModel::SUIT_ViewModel()
 /*!Destructor..*/
 SUIT_ViewModel::~SUIT_ViewModel()
 {
+  DBG_FUN();
 }
 
 /*!Create new instance of view window on desktop \a theDesktop.
@@ -76,6 +84,7 @@ SUIT_ViewModel::~SUIT_ViewModel()
  */
 SUIT_ViewWindow* SUIT_ViewModel::createView(SUIT_Desktop* theDesktop)
 {
+  DBG_FUN();
   return new SUIT_ViewWindow(theDesktop);
 }
 
@@ -84,6 +93,7 @@ SUIT_ViewWindow* SUIT_ViewModel::createView(SUIT_Desktop* theDesktop)
  */
 void SUIT_ViewModel::setViewManager(SUIT_ViewManager* theViewManager)
 {
+  DBG_FUN();
   myViewManager = theViewManager;
 }
 
index 6f8f2243e658240c08e15fab55b501fa6357a8db..a552f78b4623176c3f431654a6aa2636b468c3a4 100644 (file)
 #include <QApplication>
 #include <QContextMenuEvent>
 
+//---------------------------------------------------------
+#define USE_DEBUG
+#define MBCLASSNAME "SUIT_ViewWindow"
+#include "MBDebug.h"
+//---------------------------------------------------------
+
 /*!\class SUIT_ViewWindow
  * Class provide view window.
  */
@@ -53,6 +59,7 @@ const int DUMP_EVENT = QEvent::User + 123;
 SUIT_ViewWindow::SUIT_ViewWindow( SUIT_Desktop* theDesktop )
   : QMainWindow( theDesktop ), myManager( 0 ), myIsDropDown( true ), mySyncAction( 0 )
 {
+  DBG_FUN();
   myDesktop = theDesktop;
 
   setWindowIcon( myDesktop ? myDesktop->windowIcon() : QApplication::windowIcon() );
@@ -67,6 +74,7 @@ SUIT_ViewWindow::SUIT_ViewWindow( SUIT_Desktop* theDesktop )
 /*! Destructor.*/
 SUIT_ViewWindow::~SUIT_ViewWindow()
 {
+  DBG_FUN();
 }
 
 /*!
@@ -75,6 +83,7 @@ SUIT_ViewWindow::~SUIT_ViewWindow()
 */
 void SUIT_ViewWindow::setViewManager( SUIT_ViewManager* theManager )
 {
+  DBG_FUN();
   myManager = theManager;
 }
 
@@ -91,6 +100,7 @@ SUIT_ViewManager* SUIT_ViewWindow::getViewManager() const
 */
 QImage SUIT_ViewWindow::dumpView()
 {
+  DBG_FUN();
   return QImage();
 }
 
@@ -102,6 +112,9 @@ QImage SUIT_ViewWindow::dumpView()
 */
 bool SUIT_ViewWindow::dumpViewToFormat( const QImage& img, const QString& fileName, const QString& format )
 {
+  DBG_FUN();
+  ARG(fileName);
+  ARG(format);
   if( img.isNull() )
     return false;
 
@@ -133,6 +146,7 @@ bool SUIT_ViewWindow::dumpViewToFormat( const QString& fileName, const QString&
 */
 void SUIT_ViewWindow::setDestructiveClose( const bool on )
 {
+  DBG_FUN();
   setAttribute( Qt::WA_DeleteOnClose, on );
 }
 
@@ -140,6 +154,7 @@ void SUIT_ViewWindow::setDestructiveClose( const bool on )
 */
 void SUIT_ViewWindow::closeEvent( QCloseEvent* e )
 {
+  DBG_FUN();
   e->ignore();
   emit tryClosing( this );
   if ( closable() ) emit closing( this );
@@ -149,6 +164,7 @@ void SUIT_ViewWindow::closeEvent( QCloseEvent* e )
 */
 void SUIT_ViewWindow::contextMenuEvent( QContextMenuEvent* e )
 {
+  DBG_FUN();
   e->ignore();
 
   QMainWindow::contextMenuEvent( e );
@@ -164,6 +180,7 @@ void SUIT_ViewWindow::contextMenuEvent( QContextMenuEvent* e )
 */
 void SUIT_ViewWindow::onDumpView()
 {
+  DBG_FUN();
   // VSV (TRIPOLI dev): next line commented: causes error messages
   //QApplication::postEvent( this, new QPaintEvent( QRect( 0, 0, width(), height() ) ) );
   QApplication::postEvent( this, new QEvent( (QEvent::Type)DUMP_EVENT ) );
@@ -258,6 +275,7 @@ QString SUIT_ViewWindow::getVisualParameters()
 */
 void SUIT_ViewWindow::setVisualParameters( const QString& /*parameters*/ )
 {
+  DBG_FUN();
 }
 
 /*!
@@ -358,6 +376,7 @@ SUIT_CameraProperties SUIT_ViewWindow::cameraProperties()
 */
 void SUIT_ViewWindow::synchronize( SUIT_ViewWindow* /*otherWindow*/ )
 {
+  DBG_FUN();
   // base implementation does nothing
 }
 
@@ -371,6 +390,7 @@ void SUIT_ViewWindow::synchronize( SUIT_ViewWindow* /*otherWindow*/ )
 */
 QAction* SUIT_ViewWindow::synchronizeAction()
 {
+  DBG_FUN();
   if ( !mySyncAction ) {
     SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr();
     mySyncAction = new QtxAction( tr( "MNU_SYNCHRONIZE_VIEW" ),
@@ -399,6 +419,7 @@ void SUIT_ViewWindow::emitViewModified()
 */
 void SUIT_ViewWindow::updateSyncViews()
 {
+  DBG_FUN();
   SUIT_CameraProperties props = cameraProperties();
   if ( !props.isValid() )
     return;
@@ -456,6 +477,7 @@ void SUIT_ViewWindow::updateSyncViews()
 */
 void SUIT_ViewWindow::onSynchronizeView( bool /*checked*/ )
 {
+  DBG_FUN();
   QAction* a = qobject_cast<QAction*>( sender() );
   if ( a ) {
     synchronizeView( this, a->data().toInt() );
@@ -468,6 +490,7 @@ void SUIT_ViewWindow::onSynchronizeView( bool /*checked*/ )
 */
 void SUIT_ViewWindow::synchronizeView( SUIT_ViewWindow* viewWindow, int id )
 {
+  DBG_FUNC();
   SUIT_ViewWindow* sourceView = 0;
   QList<SUIT_ViewWindow*> otherViews;
 
@@ -552,6 +575,8 @@ void SUIT_ViewWindow::synchronizeView( SUIT_ViewWindow* viewWindow, int id )
 
 void SUIT_ViewWindow::setVisible( bool on )
 {
+  DBG_FUN();
+  ARG(on);
   // This is a workaround to avoid showing view window as a top-level window
   // before re-parenting it to workstack (issue #23467).
   // See SUIT_Desktop::childEvent().
index bc715233d463218257ddd315f0ac5f0471abb5a9..f61cb71b34f698e5e56f415032c93a375881fe0c 100644 (file)
@@ -1656,6 +1656,7 @@ void SalomeApp_Application::onDblClick( SUIT_DataObject* theObj )
     if ( !aSelectedIndexes.isEmpty() )
       ob->treeView()->scrollTo( aSelectedIndexes.first() );
   }
+  MSGEL("-----> emit objectDoubleClicked <-----");
   emit objectDoubleClicked( theObj );
 }
 
@@ -2191,6 +2192,7 @@ void SalomeApp_Application::afterCloseDoc()
 #ifndef DISABLE_PYCONSOLE
   // emit signal to restore study from Python script
   if ( myNoteBook ) {
+    MSGEL("-----> emit dumpedStudyClosed <-----");
     emit dumpedStudyClosed( myNoteBook->getDumpedStudyScript(),
                             myNoteBook->getDumpedStudyName(),
                             myNoteBook->isDumpedStudySaved() );
index 349557c0b672d3130f2adafe06dfb3e279e7829c..7068de0a10410c5e48c97d3a05b0c6ef0793fcb9 100644 (file)
@@ -428,6 +428,7 @@ void SalomeApp_Study::onNoteBookVarUpdate( QString theVarName)
 {
   DBG_FUN();
   ARG(theVarName);
+  MSGEL("-----> emit notebookVarUpdate(\"" << theVarName.toStdString() << "\") <-----");
   emit notebookVarUpdated( theVarName );
 }
 #endif
@@ -488,6 +489,7 @@ bool SalomeApp_Study::createDocument( const QString& theStr )
   myStudyDS->attach(myObserver->_this(),true);
 #endif
 
+  MSGEL("-----> emit created <-----");
   emit created( this );
 
   return aRet;
@@ -551,6 +553,7 @@ bool SalomeApp_Study::openDocument( const QString& theFileName )
 
   res = CAM_Study::openDocument( theFileName );
 
+  MSGEL("-----> emit opened <-----");
   emit opened( this );
   myStudyDS->IsSaved(true);
 
@@ -592,6 +595,7 @@ bool SalomeApp_Study::loadDocument( const QString& theStudyName )
   //rnv: to fix the "0051779: TC7.2.0: Save operation works incorrectly for study loaded from data server"
   //     mark study as "not saved" after call openDocument( ... ) method.
   setIsSaved(false);
+  MSGEL("-----> emit opened <-----");
   emit opened( this ); // myRoot is set to Object Browser here
 
   // this will build a SUIT_DataObject-s tree under myRoot member field
@@ -658,8 +662,10 @@ bool SalomeApp_Study::saveDocumentAs( const QString& theFileName )
 
   res = res && saveStudyData(theFileName, 0); // 0 means persistence file
 
-  if ( res )
+  if ( res ) {
+    MSGEL("-----> emit saved <-----");
     emit saved( this );
+  }
 
   return res;
 }
@@ -701,8 +707,10 @@ bool SalomeApp_Study::saveDocument()
   bool res = studyDS()->Save( isMultiFile, isAscii ) && CAM_Study::saveDocument();
 
   res = res && saveStudyData(studyName(), 0); // 0 means persistence file
-  if ( res )
+  if ( res ) {
+    MSGEL("-----> emit saved <-----");
     emit saved( this );
+  }
 
   return res;
 }