mirror of
https://github.com/aseprite/aseprite.git
synced 2025-03-18 07:21:09 +00:00
Add Workspace::m_tabsBar field
This commit is contained in:
parent
baa2f61c6b
commit
94b91424f8
@ -62,6 +62,7 @@ MainWindow::MainWindow()
|
||||
m_toolBar = new ToolBar();
|
||||
m_tabsBar = new Tabs(this);
|
||||
m_workspace = new Workspace();
|
||||
m_workspace->setTabsBar(m_tabsBar);
|
||||
m_workspace->ActiveViewChanged.connect(&MainWindow::onActiveViewChange, this);
|
||||
m_previewEditor = new PreviewEditorWindow();
|
||||
m_timeline = new Timeline();
|
||||
|
@ -28,6 +28,7 @@ using namespace ui;
|
||||
|
||||
Workspace::Workspace()
|
||||
: Widget(kGenericWidget)
|
||||
, m_tabsBar(nullptr)
|
||||
, m_activeView(nullptr)
|
||||
{
|
||||
SkinTheme* theme = static_cast<SkinTheme*>(getTheme());
|
||||
@ -40,6 +41,11 @@ Workspace::~Workspace()
|
||||
ASSERT(m_views.empty());
|
||||
}
|
||||
|
||||
void Workspace::setTabsBar(Tabs* tabsBar)
|
||||
{
|
||||
m_tabsBar = tabsBar;
|
||||
}
|
||||
|
||||
void Workspace::addView(WorkspaceView* view, int pos)
|
||||
{
|
||||
if (pos < 0)
|
||||
@ -47,7 +53,7 @@ void Workspace::addView(WorkspaceView* view, int pos)
|
||||
else
|
||||
m_views.insert(m_views.begin()+pos, view);
|
||||
|
||||
App::instance()->getMainWindow()->getTabsBar()->addTab(dynamic_cast<TabView*>(view), pos);
|
||||
m_tabsBar->addTab(dynamic_cast<TabView*>(view), pos);
|
||||
setActiveView(view);
|
||||
}
|
||||
|
||||
@ -59,11 +65,10 @@ void Workspace::removeView(WorkspaceView* view)
|
||||
if (content->getParent())
|
||||
content->getParent()->removeChild(content);
|
||||
|
||||
// Remove related tab
|
||||
Tabs* tabs = App::instance()->getMainWindow()->getTabsBar();
|
||||
tabs->removeTab(dynamic_cast<TabView*>(view));
|
||||
// Remove related tab.
|
||||
m_tabsBar->removeTab(dynamic_cast<TabView*>(view));
|
||||
|
||||
TabView* tabView = tabs->getSelectedTab();
|
||||
TabView* tabView = m_tabsBar->getSelectedTab();
|
||||
setActiveView(dynamic_cast<WorkspaceView*>(tabView));
|
||||
}
|
||||
|
||||
|
@ -17,6 +17,7 @@
|
||||
#include <vector>
|
||||
|
||||
namespace app {
|
||||
class Tabs;
|
||||
|
||||
class Workspace : public ui::Widget {
|
||||
public:
|
||||
@ -25,6 +26,7 @@ namespace app {
|
||||
Workspace();
|
||||
~Workspace();
|
||||
|
||||
void setTabsBar(Tabs* tabsBar);
|
||||
iterator begin() { return m_views.begin(); }
|
||||
iterator end() { return m_views.end(); }
|
||||
|
||||
@ -44,6 +46,7 @@ namespace app {
|
||||
void onPaint(ui::PaintEvent& ev) override;
|
||||
|
||||
private:
|
||||
Tabs* m_tabsBar;
|
||||
WorkspaceViews m_views;
|
||||
WorkspaceView* m_activeView;
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user