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