+ fix more Quarter port issues

This commit is contained in:
wmayer
2014-10-19 17:49:31 +02:00
parent 7ade19fde2
commit 4ffb856f33
2 changed files with 22 additions and 15 deletions

View File

@@ -28,6 +28,7 @@
# include <QLabel>
# include <QMenu>
# include <QMessageBox>
# include <QGLWidget>
# include <QPainter>
# include <QSplitter>
# include <QStatusBar>
@@ -60,6 +61,7 @@
#include <Gui/MainWindow.h>
#include <Gui/Selection.h>
#include <Gui/SplitView3DInventor.h>
#include <Gui/View3DInventor.h>
#include <Gui/View3DInventorViewer.h>
#include <Gui/ViewProviderGeometryObject.h>
#include <Gui/WaitCursor.h>
@@ -330,14 +332,14 @@ class AlignmentView : public Gui::AbstractSplitView
public:
QLabel* myLabel;
AlignmentView(Gui::Document* pcDocument, QWidget* parent, Qt::WFlags wflags=0)
AlignmentView(Gui::Document* pcDocument, QWidget* parent, QGLWidget* shareWidget=0, Qt::WFlags wflags=0)
: AbstractSplitView(pcDocument, parent, wflags)
{
QSplitter* mainSplitter=0;
mainSplitter = new QSplitter(Qt::Horizontal, this);
_viewer.push_back(new View3DInventorViewer(mainSplitter));
_viewer.push_back(new View3DInventorViewer(mainSplitter, shareWidget));
_viewer.back()->setDocument(pcDocument);
_viewer.push_back(new View3DInventorViewer(mainSplitter));
_viewer.push_back(new View3DInventorViewer(mainSplitter, shareWidget));
_viewer.back()->setDocument(pcDocument);
QFrame* vbox = new QFrame(this);
@@ -367,9 +369,9 @@ public:
// apply the user settings
setupSettings();
static_cast<SoGroup*>(getViewer(0)->getSceneGraph())->
static_cast<SoGroup*>(getViewer(0)->getSoRenderManager()->getSceneGraph())->
addChild(setupHeadUpDisplay(tr("Movable object")));
static_cast<SoGroup*>(getViewer(1)->getSceneGraph())->
static_cast<SoGroup*>(getViewer(1)->getSoRenderManager()->getSceneGraph())->
addChild(setupHeadUpDisplay(tr("Fixed object")));
}
~AlignmentView()
@@ -722,8 +724,15 @@ void ManualAlignment::startAlignment(Base::Type mousemodel)
if (myAlignModel.isEmpty())
return;
QGLWidget* shareWidget = 0;
std::list<MDIView*> theViews = myDocument->getMDIViewsOfType(View3DInventor::getClassTypeId());
if (!theViews.empty()) {
shareWidget = qobject_cast<QGLWidget*>(static_cast<View3DInventor*>
(theViews.front())->getViewer()->getGLWidget());
}
// create a splitted window for picking the points
myViewer = new AlignmentView(myDocument,Gui::getMainWindow());
myViewer = new AlignmentView(myDocument,Gui::getMainWindow(),shareWidget);
myViewer->setWindowTitle(tr("Alignment[*]"));
myViewer->setWindowIcon(QApplication::windowIcon());
myViewer->resize(400, 300);