qtquick: Implement Stack_qtquick::tabBarObj()

This commit is contained in:
Sergio Martins
2022-06-04 20:38:21 +01:00
parent d63a9db5a2
commit a2b5f40ed1
5 changed files with 8 additions and 16 deletions

View File

@@ -201,7 +201,7 @@ public:
/// TODOm3: Better a signal, so that derived classes don't have to remember to call these
bool onResize(QSize newSize);
/// TODOm2: Remove
/// TODOm3: Remove
void viewAboutToBeDeleted();
protected:

View File

@@ -14,6 +14,7 @@
#include "ViewFactory.h"
#include "controllers/Frame.h"
#include "controllers/TabBar.h"
#include <QDebug>
#include <QScopedValueRollback>
@@ -25,7 +26,7 @@ Stack_qtquick::Stack_qtquick(Controllers::Stack *controller,
Controllers::Frame *parent)
: View_qtquick(controller, Type::Stack, Views::asQQuickItem(parent))
, m_dockWidgetModel(new DockWidgetModel(this))
// , m_tabBar(Config::self().ViewFactory()->createTabBar(this))
, m_tabBar(new Controllers::TabBar(controller))
, m_stack(controller)
{
connect(m_dockWidgetModel, &DockWidgetModel::countChanged, this,
@@ -39,11 +40,6 @@ Stack_qtquick::Stack_qtquick(Controllers::Stack *controller,
Q_EMIT countChanged(); });
}
// TabBar *Stack_qtquick::tabBar() const
// {
// return m_tabBar;
// }
void Stack_qtquick::setDocumentMode(bool)
{
qDebug() << "Not implemented";
@@ -83,9 +79,7 @@ void Stack_qtquick::setCurrentDockWidget(int index)
QObject *Stack_qtquick::tabBarObj() const
{
// TODOm2
return nullptr;
// return m_tabBar->asWidget();
return m_tabBar->view()->asQObject();
}
Controllers::DockWidget *Stack_qtquick::currentDockWidget() const

View File

@@ -49,8 +49,6 @@ public:
explicit Stack_qtquick(Controllers::Stack *controller,
Controllers::Frame *parent = nullptr);
// TabBar *tabBar() const override;
int numDockWidgets() const override;
void removeDockWidget(Controllers::DockWidget *) override;
int indexOfDockWidget(const Controllers::DockWidget *) const override;
@@ -80,7 +78,7 @@ protected:
private:
Q_DISABLE_COPY(Stack_qtquick)
DockWidgetModel *const m_dockWidgetModel;
// TabBar *const m_tabBar;
Controllers::TabBar *const m_tabBar;
Controllers::Stack *const m_stack;
Controllers::DockWidget *m_currentDockWidget = nullptr;
};

View File

@@ -47,7 +47,7 @@ MDIArea::MDIArea(QWidget *parent)
auto vlay = new QVBoxLayout(this);
vlay->addWidget(View_qtwidgets::asQWidget(d->layout));
// TODOm2: for qtquick:
// TODOm3: for qtquick:
// QWidgetAdapter::makeItemFillParent(d->layout);
}

View File

@@ -38,7 +38,7 @@ public:
Controllers::Frame *parent = nullptr);
Controllers::Stack *stack() const;
QTabBar *tabBar() const;
QTabBar *tabBar() const; // TODOm3: tabBarView
int numDockWidgets() const override;
void removeDockWidget(Controllers::DockWidget *) override;
@@ -48,7 +48,7 @@ public:
void init() override;
void setDocumentMode(bool) override;
public: // TODO: make protected
public: // TODOm3: make protected
void mouseDoubleClickEvent(QMouseEvent *) override;
void mousePressEvent(QMouseEvent *) override;
void tabInserted(int index) override;