modify osgvier can moveable

This commit is contained in:
jiegeaiai 2025-01-01 22:51:54 +08:00
parent f1a686493f
commit 3728693092
7 changed files with 19 additions and 9 deletions

View File

@ -14,6 +14,7 @@ int main(int argc, char* argv[]) {
#endif #endif
Application app(argc, argv); Application app(argc, argv);
app.setAttribute(Qt::AA_DontCreateNativeWidgetSiblings);
//InstallCrashHandler(); //InstallCrashHandler();
RecourceHelper::ChangeSkin("default"); RecourceHelper::ChangeSkin("default");

View File

@ -1064,12 +1064,12 @@
<context> <context>
<name>QtOsgViewWidget</name> <name>QtOsgViewWidget</name>
<message> <message>
<location filename="../viewer/QtOsgViewWidget.cpp" line="138"/> <location filename="../viewer/QtOsgViewWidget.cpp" line="142"/>
<source>notify</source> <source>notify</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../viewer/QtOsgViewWidget.cpp" line="138"/> <location filename="../viewer/QtOsgViewWidget.cpp" line="142"/>
<source>open dyt file failed</source> <source>open dyt file failed</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

View File

@ -113,11 +113,11 @@ void MainFrame::InitUI() {
// AddMenuWidget("chartPlot_manager", tr("chartPlot manager"), chartMenu); // AddMenuWidget("chartPlot_manager", tr("chartPlot manager"), chartMenu);
/* MainWindow* mainWindow = new MainWindow(this); MainWindow* mainWindow = new MainWindow(this);
layout->addWidget(mainWindow); layout->addWidget(mainWindow);
QtOsgViewWidget* viewWidget = mainWindow->GetViewWidget(); QtOsgViewWidget* viewWidget = mainWindow->GetViewWidget();
connect(fileMenu, &FileManagerMenu::LoadDyt, viewWidget, &QtOsgViewWidget::OnLoadDyt);*/ connect(fileMenu, &FileManagerMenu::LoadDyt, viewWidget, &QtOsgViewWidget::OnLoadDyt);
//connect(chartMenu, &ChartPlotMenu::signalAddCurve, mainWindow->GetFitCurveDlg(), &FitCurveDialog::slotAddSeries); //connect(chartMenu, &ChartPlotMenu::signalAddCurve, mainWindow->GetFitCurveDlg(), &FitCurveDialog::slotAddSeries);
//connect(chartMenu, &ChartPlotMenu::signalDelCurve, mainWindow->GetFitCurveDlg(), &FitCurveDialog::slotDelCurve); //connect(chartMenu, &ChartPlotMenu::signalDelCurve, mainWindow->GetFitCurveDlg(), &FitCurveDialog::slotDelCurve);

View File

@ -219,6 +219,7 @@ void MainWindow::InitUI() {
void MainWindow::InitDockLayout() void MainWindow::InitDockLayout()
{ {
return;
QVariantList listTab = pSettingUI->GetAreaLayout().toList(); QVariantList listTab = pSettingUI->GetAreaLayout().toList();
for (int i = 0; i < listTab.size(); i++) for (int i = 0; i < listTab.size(); i++)
{ {

View File

@ -20,6 +20,7 @@ OsgViewer::OsgViewer(QObject* parent) noexcept
, compositeViewer_(new osgViewer::CompositeViewer) { , compositeViewer_(new osgViewer::CompositeViewer) {
LOG_INFO("actor, self={}", fmt::ptr(this)); LOG_INFO("actor, self={}", fmt::ptr(this));
compositeViewer_->setKeyEventSetsDone(0); compositeViewer_->setKeyEventSetsDone(0);
osgEarth::initialize();
//compositeViewer_->setThreadingModel(osgViewer::ViewerBase::ThreadingModel::SingleThreaded); //compositeViewer_->setThreadingModel(osgViewer::ViewerBase::ThreadingModel::SingleThreaded);
} }

View File

@ -11,10 +11,12 @@
#include <QResizeEvent> #include <QResizeEvent>
#include <QMessageBox> #include <QMessageBox>
#include <QScreen> #include <QScreen>
#include <QWindow>
#include <osgEarth/EarthManipulator> #include <osgEarth/EarthManipulator>
#include <osgEarth/Viewpoint> #include <osgEarth/Viewpoint>
#include "config.h"
#include "app/Application.h" #include "app/Application.h"
#include "common/SpdLogger.h" #include "common/SpdLogger.h"
#include "viewer/OsgView.h" #include "viewer/OsgView.h"
@ -29,7 +31,7 @@
QtOsgViewWidget::QtOsgViewWidget(QWidget* parent) QtOsgViewWidget::QtOsgViewWidget(QWidget* parent)
: QWidget(parent) { : QWidget(parent) {
LOG_INFO("actor, self={}", fmt::ptr(this)); LOG_INFO("actor, self={}", fmt::ptr(this));
setAttribute(Qt::WA_NativeWindow);
setAttribute(Qt::WA_PaintOnScreen, false); setAttribute(Qt::WA_PaintOnScreen, false);
setAttribute(Qt::WA_StaticContents, false); setAttribute(Qt::WA_StaticContents, false);
setAttribute(Qt::WA_NoSystemBackground, false); setAttribute(Qt::WA_NoSystemBackground, false);
@ -151,6 +153,11 @@ void QtOsgViewWidget::OnLoadDyt(const QString& path) {
workspace_ = workSpace; workspace_ = workSpace;
} }
//void QtOsgViewWidget::setKeyboardModifiers(QInputEvent* event) {
// dyt_check(nullptr != view_);
// view_->KeyPress(event);
//}
void QtOsgViewWidget::resizeEvent(QResizeEvent* event) { void QtOsgViewWidget::resizeEvent(QResizeEvent* event) {
if (nullptr == view_) { if (nullptr == view_) {
return; return;

View File

@ -16,8 +16,6 @@ public:
explicit QtOsgViewWidget(QWidget* parent = nullptr); explicit QtOsgViewWidget(QWidget* parent = nullptr);
~QtOsgViewWidget() override; ~QtOsgViewWidget() override;
void keyPressEvent(QKeyEvent* event) override;
void keyReleaseEvent(QKeyEvent* event) override;
//void setKeyboardModifiers(QInputEvent* event) override; //void setKeyboardModifiers(QInputEvent* event) override;
QPaintEngine* paintEngine() const override { QPaintEngine* paintEngine() const override {
return nullptr; return nullptr;
@ -31,6 +29,8 @@ public:
protected: protected:
void keyPressEvent(QKeyEvent* event) override;
void keyReleaseEvent(QKeyEvent* event) override;
//void InitEventHandle(Core::ICameraManipulator* pCameraMainp, Core::IView* pView); //void InitEventHandle(Core::ICameraManipulator* pCameraMainp, Core::IView* pView);
void resizeEvent(QResizeEvent* event) override; void resizeEvent(QResizeEvent* event) override;