55 lines
1008 B
C++
55 lines
1008 B
C++
/**
|
|
* Wrapper around wxAuiNotebook
|
|
*/
|
|
|
|
#include "TabContainer.h"
|
|
|
|
static unsigned long untitled_document_count = 0;
|
|
|
|
TabContainer::TabContainer(
|
|
wxWindow* parent,
|
|
wxWindowID id,
|
|
const wxPoint& pos,
|
|
const wxSize& size,
|
|
long style
|
|
) : wxAuiNotebook(parent, id, pos, size, style)
|
|
{
|
|
}
|
|
|
|
TabContainer::~TabContainer() {}
|
|
|
|
void TabContainer::AddTab()
|
|
{
|
|
untitled_document_count++;
|
|
|
|
wxString caption;
|
|
|
|
caption.Printf("Untitled %lu", untitled_document_count);
|
|
|
|
EditPane *editor = new EditPane(this, wxID_ANY);
|
|
|
|
this->AddPage(editor, caption, true);
|
|
}
|
|
|
|
void TabContainer::AddTab(wxString filePath)
|
|
{
|
|
wxFileName fileName(filePath);
|
|
|
|
wxString caption= fileName.GetFullName();
|
|
EditPane *editor = new EditPane(this, wxID_ANY);
|
|
|
|
if (editor->Load(filePath))
|
|
{
|
|
wxLogDebug("File should be properly loaded.");
|
|
this->AddPage(editor, caption, true);
|
|
|
|
return;
|
|
}
|
|
|
|
wxLogDebug("Failed to load file!?");
|
|
}
|
|
|
|
EditPane *TabContainer::GetCurrentEditor()
|
|
{
|
|
return (EditPane *) this->GetCurrentPage();
|
|
} |