예제 #1
0
bool clMultiBook::SetPageText(size_t page, const wxString& text)
{
    Notebook* book;
    size_t bookIndex;
    size_t modIndex;
    if(GetBookByPageIndex(page, &book, bookIndex, modIndex)) { return book->SetPageText(modIndex, text); }
    return false;
}
예제 #2
0
파일: editor.cpp 프로젝트: 8l/objeck-lang
void Edit::OnModified(wxStyledTextEvent& WXUNUSED(event))
{
  if (m_modified) {
    return;
  }

  Notebook* notebook = static_cast<Notebook*>(GetParent());
  const int page_index = notebook->GetPageIndex(this);
  if (page_index > -1) {
    wxString page_text = notebook->GetPageText(page_index);
    page_text += wxT('*');
    notebook->SetPageText(page_index, page_text);
    m_modified = true;
  }
}
예제 #3
0
파일: editor.cpp 프로젝트: 8l/objeck-lang
bool Edit::SaveFile(const wxString &filename) {
  // return if no change
  if (!Modified()) return true;

  if (m_modified) {
    Notebook* notebook = static_cast<Notebook*>(GetParent());
    const int page_index = notebook->GetPageIndex(this);
    if (page_index > -1) {
      wxString page_text = notebook->GetPageText(page_index);
      if (page_text.EndsWith(wxT('*'))) {
        page_text.RemoveLast();
        notebook->SetPageText(page_index, page_text);
      }
      m_modified = false;
    }
  }
  
  return wxStyledTextCtrl::SaveFile(filename);
}