//--------------------------------------------------------- CVIEW_Base::CVIEW_Base(class CWKSP_Base_Item *pOwner, int View_ID, wxString Caption, int Icon_ID, bool bShow) : wxMDIChildFrame(g_pSAGA_Frame, -1, Caption, MDI_Get_Def_Position(), MDI_Get_Def_Size(), wxDEFAULT_FRAME_STYLE|wxNO_FULL_REPAINT_ON_RESIZE) { m_pOwner = pOwner; m_View_ID = View_ID; m_Size_Min.x = 0; m_Size_Min.y = 0; SetStatusBarPane(-1); SetIcon(IMG_Get_Icon(Icon_ID)); if( bShow ) { Do_Show(); } }
//--------------------------------------------------------- CSAGA_Frame::CSAGA_Frame(void) : wxMDIParentFrame(NULL, ID_WND_MAIN, SAGA_CAPTION, wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_STYLE|wxNO_FULL_REPAINT_ON_RESIZE|wxHSCROLL|wxVSCROLL|wxFRAME_NO_WINDOW_MENU) { //----------------------------------------------------- g_pSAGA_Frame = this; m_nTopWindows = 0; m_pTopWindows = NULL; m_pINFO = NULL; m_pData_Source = NULL; m_pActive = NULL; m_pWKSP = NULL; SG_Set_UI_Callback (Get_Callback()); SetIcon (IMG_Get_Icon(ID_IMG_SAGA_ICON_32)); SetDropTarget (new CSAGA_Frame_DropTarget); //----------------------------------------------------- int STATUSBAR_Sizes[STATUSBAR_COUNT] = { -1, -1, 90, 90, 90, -1 }; CreateStatusBar (STATUSBAR_COUNT); SetStatusWidths (STATUSBAR_COUNT, STATUSBAR_Sizes); SetStatusBarPane (STATUSBAR_DEFAULT); StatusBar_Set_Text (_TL("ready")); m_pProgressBar = ((CSAGA_Frame_StatusBar *)GetStatusBar())->m_pProgressBar; //----------------------------------------------------- m_pLayout = new wxAuiManager(this); m_pLayout->GetArtProvider()->SetColor (wxAUI_DOCKART_ACTIVE_CAPTION_COLOUR, wxSystemSettings::GetColour(wxSYS_COLOUR_ACTIVECAPTION) ); m_pLayout->GetArtProvider()->SetColor (wxAUI_DOCKART_INACTIVE_CAPTION_COLOUR, wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE) ); m_pLayout->GetArtProvider()->SetMetric (wxAUI_DOCKART_GRADIENT_TYPE , wxAUI_GRADIENT_NONE); m_pLayout->GetArtProvider()->SetMetric (wxAUI_DOCKART_CAPTION_SIZE , 14); m_pLayout->SetFlags(m_pLayout->GetFlags() ^ wxAUI_MGR_TRANSPARENT_DRAG); // m_pLayout->SetFlags(m_pLayout->GetFlags() ^ wxAUI_MGR_ALLOW_ACTIVE_PANE); //----------------------------------------------------- _Bar_Add(m_pINFO = new CINFO (this), 0, 0); m_pINFO ->Add_Pages(); _Bar_Add(m_pWKSP = new CWKSP (this), 2, 1); m_pWKSP ->Add_Pages(); _Bar_Add(m_pData_Source = new CData_Source(this), 2, 1); m_pData_Source ->Add_Pages(); _Bar_Add(m_pActive = new CACTIVE (this), 2, 0); m_pActive ->Add_Pages(); //----------------------------------------------------- _Create_MenuBar(); //----------------------------------------------------- m_pTB_Main = _Create_ToolBar(); m_pTB_Map = CVIEW_Map ::_Create_ToolBar(); m_pTB_Map_3D = CVIEW_Map_3D ::_Create_ToolBar(); m_pTB_Layout = CVIEW_Layout ::_Create_ToolBar(); m_pTB_Table = CVIEW_Table ::_Create_ToolBar(); m_pTB_Diagram = CVIEW_Table_Diagram ::_Create_ToolBar(); m_pTB_Histogram = CVIEW_Histogram ::_Create_ToolBar(); m_pTB_ScatterPlot = CVIEW_ScatterPlot ::_Create_ToolBar(); //----------------------------------------------------- m_pLayout->GetPane(GetClientWindow()).Show().Center(); wxString s; if( CONFIG_Read(wxT("/FL"), wxT("MANAGER"), s) ) { m_pLayout->LoadPerspective(s); } _Bar_Show(m_pTB_Main, true); //----------------------------------------------------- m_pLayout->Update(); #if !defined(_SAGA_LINUX) Show(true); #endif int x, y, dx, dy; long l; x = CONFIG_Read(wxT("/FL"), wxT("X" ), l) ? l : -1; y = CONFIG_Read(wxT("/FL"), wxT("Y" ), l) ? l : -1; dx = CONFIG_Read(wxT("/FL"), wxT("DX"), l) ? l : 800; dy = CONFIG_Read(wxT("/FL"), wxT("DY"), l) ? l : 600; SetSize(x, y, dx, dy); if( !(CONFIG_Read(wxT("/FL"), wxT("STATE"), l) && l == 0) ) { Maximize(); } #if defined(_SAGA_LINUX) Show(true); #endif Update(); //----------------------------------------------------- if( g_pSAGA->argc <= 1 && g_pData->Initialise() ) { Refresh(false); } ProgressBar_Set_Position(0); }