1 /* 2 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef MAIN_SCHEDULING_PAGE_H 6 #define MAIN_SCHEDULING_PAGE_H 7 8 9 #include <GroupView.h> 10 11 #include "table/Table.h" 12 13 #include "main_window/MainWindow.h" 14 15 16 class BScrollView; 17 18 19 class MainWindow::SchedulingPage : public BGroupView, private TableListener { 20 public: 21 SchedulingPage(MainWindow* parent); 22 virtual ~SchedulingPage(); 23 24 void SetModel(Model* model); 25 26 private: 27 struct SchedulingEvent; 28 class SchedulingData; 29 struct TimeRange; 30 class TimelineHeaderRenderer; 31 class BaseView; 32 class ThreadsView; 33 class SchedulingView; 34 class ViewPort; 35 36 struct FontInfo { 37 font_height fontHeight; 38 float lineHeight; 39 }; 40 41 private: 42 MainWindow* fParent; 43 Model* fModel; 44 BScrollView* fScrollView; 45 ViewPort* fViewPort; 46 ThreadsView* fThreadsView; 47 SchedulingView* fSchedulingView; 48 FontInfo fFontInfo; 49 }; 50 51 52 #endif // MAIN_SCHEDULING_PAGE_H 53