-// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
#include "LightApp.h"
#include <SUIT_TreeModel.h>
+#include <SUIT_DataObject.h>
#include <CAM_Application.h>
#include <QPointer>
class LogWindow;
#ifndef DISABLE_PYCONSOLE
class PyConsole_Console;
+class PyConsole_Interp;
#endif
class LightApp_WidgetContainer;
class LightApp_Preferences;
class SUIT_DataBrowser;
class SUIT_Study;
class SUIT_Accel;
+class SUIT_ViewModel;
class CAM_Module;
class QString;
CloseId, CloseAllId, GroupAllId,
PreferencesId, MRUId, ModulesListId,
NewGLViewId, NewPlot2dId, NewOCCViewId, NewVTKViewId,
- NewQxSceneViewId, NewGraphicsViewId, StyleId, FullScreenId,
+ NewQxSceneViewId, NewGraphicsViewId, NewPVViewId, NewPyViewerId, StyleId, FullScreenId,
UserID };
protected:
LightApp_Preferences* preferences() const;
- virtual QString getFileFilter() const;
+ virtual QString getFileFilter( bool ) const;
virtual QString getFileName( bool open, const QString& initial, const QString& filters,
const QString& caption, QWidget* parent );
SUIT_ViewManager* getViewManager( const QString&, const bool );
virtual void addViewManager( SUIT_ViewManager* );
virtual void removeViewManager( SUIT_ViewManager* );
- virtual SUIT_ViewManager* createViewManager( const QString& vmType );
+ virtual SUIT_ViewManager* createViewManager( const QString& vmType, bool detached = false );
virtual SUIT_ViewManager* createViewManager( const QString& vmType, QWidget* w );
+ virtual SUIT_ViewManager* createViewManager( SUIT_ViewModel* );
QWidget* getWindow( const int, const int = -1 );
QWidget* dockWindow( const int ) const;
void placeDockWindow( const int, Qt::DockWidgetArea );
virtual void start();
+ virtual void closeApplication();
virtual void contextMenuPopup( const QString&, QMenu*, QString& );
void emitOperationFinished( const QString&, const QString&, const QStringList& );
+ void updateVisibilityState( DataObjectList& theList,
+ SUIT_ViewModel* theViewModel );
+
+ virtual bool checkExistingDoc();
+
+#ifndef DISABLE_PYCONSOLE
+ PyConsole_Interp* getPyInterp();
+#endif
+
signals:
void studyOpened();
void studySaved();
void studyClosed();
void preferenceChanged( const QString&, const QString&, const QString& );
+ void preferenceResetToDefaults();
void operationFinished( const QString&, const QString&, const QStringList& );
public slots:
virtual void onHelpContextModule( const QString&, const QString&, const QString& = QString() );
virtual void onNewDoc();
virtual void onOpenDoc();
+
virtual void onHelpAbout();
virtual bool onOpenDoc( const QString& );
virtual void onCopy();
virtual void onPaste();
virtual void onSelectionChanged();
+ virtual void onDockWindowVisibilityChanged( bool );
protected:
virtual void createActions();
virtual QMap<int, QString> activateModuleActions() const;
virtual void moduleActionSelected( const int );
+#ifndef DISABLE_PYCONSOLE
+ virtual PyConsole_Interp* createPyInterp();
+#endif
+
protected slots:
virtual void onDesktopActivated();
+ virtual void onViewManagerRemoved( SUIT_ViewManager* );
+ virtual void onWindowActivated( SUIT_ViewWindow* theViewWindow );
void onNewWindow();
void onModuleActivation( const QString& );
void onCloseView( SUIT_ViewManager* );
- void onStudyCreated( SUIT_Study* );
- void onStudyOpened( SUIT_Study* );
- void onStudySaved( SUIT_Study* );
- void onStudyClosed( SUIT_Study* );
+ virtual void onStudyCreated( SUIT_Study* );
+ virtual void onStudyOpened( SUIT_Study* );
+ virtual void onStudySaved( SUIT_Study* );
+ virtual void onStudyClosed( SUIT_Study* );
void onWCDestroyed( QObject* );
void onCloseWindow();
void onCloseAllWindow();
void onGroupAllWindow();
+ void onRenamed();
+ //void onMoved();
protected:
void updateWindows();
void updateModuleActions();
void removeModuleAction( const QString& );
+ bool checkModule( const QString& );
+
void loadDockWindowsState();
void saveDockWindowsState();
void currentViewManagers( QStringList& ) const;
void moduleIconNames( QMap<QString, QString>& ) const;
- bool isLibExists( const QString& ) const;
-
QDockWidget* windowDock( QWidget* ) const;
QByteArray dockWindowsState( const QMap<QString, bool>&, const QMap<QString, bool>& ) const;
void dockWindowsState( const QByteArray&, QMap<QString, bool>&, QMap<QString, bool>& ) const;
private:
void emptyPreferences( const QString& );
- QList<QToolBar*> findToolBars();
+ QList<QToolBar*> findToolBars( const QStringList& names = QStringList() );
QByteArray processState(QByteArray& input,
const bool processWin,