X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/97ff49b3834325cfe53813aeb53d326d7661f184..85ee88cd536cbf8b347e58f84b160b60204ed157:/src/richtext/richtextstylepage.cpp?ds=sidebyside diff --git a/src/richtext/richtextstylepage.cpp b/src/richtext/richtextstylepage.cpp index 2003459e9e..c761fa60bf 100644 --- a/src/richtext/richtextstylepage.cpp +++ b/src/richtext/richtextstylepage.cpp @@ -1,21 +1,17 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: richtextstylepage.cpp -// Purpose: +// Name: src/richtext/richtextstylepage.cpp +// Purpose: // Author: Julian Smart -// Modified by: +// Modified by: // Created: 10/5/2006 11:34:55 AM -// RCS-ID: +// RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -////@begin includes -////@end includes +#if wxUSE_RICHTEXT -#include "../../include/wx/richtext/richtextstylepage.h" - -////@begin XPM images -////@end XPM images +#include "wx/richtext/richtextstylepage.h" /*! * wxRichTextStylePage type definition @@ -54,7 +50,7 @@ wxRichTextStylePage::wxRichTextStylePage( wxWindow* parent, wxWindowID id, const /*! * Initialise members */ - + void wxRichTextStylePage::Init() { ////@begin wxRichTextStylePage member initialisation @@ -88,7 +84,7 @@ bool wxRichTextStylePage::Create( wxWindow* parent, wxWindowID id, const wxPoint */ void wxRichTextStylePage::CreateControls() -{ +{ ////@begin wxRichTextStylePage content construction wxRichTextStylePage* itemPanel1 = this; @@ -105,23 +101,32 @@ void wxRichTextStylePage::CreateControls() itemBoxSizer4->Add(itemBoxSizer5, 0, wxGROW, 5); wxStaticText* itemStaticText6 = new wxStaticText( itemPanel1, wxID_STATIC, _("&Style:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer5->Add(itemStaticText6, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP|wxADJUST_MINSIZE, 5); + itemBoxSizer5->Add(itemStaticText6, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); - m_styleName = new wxTextCtrl( itemPanel1, ID_RICHTEXTSTYLEPAGE_STYLE_NAME, _T(""), wxDefaultPosition, wxSize(300, -1), 0 ); + m_styleName = new wxTextCtrl( itemPanel1, ID_RICHTEXTSTYLEPAGE_STYLE_NAME, wxT(""), wxDefaultPosition, wxSize(300, -1), wxTE_READONLY ); + m_styleName->SetHelpText(_("The style name.")); + if (wxRichTextStylePage::ShowToolTips()) + m_styleName->SetToolTip(_("The style name.")); itemBoxSizer5->Add(m_styleName, 0, wxGROW|wxALL, 5); wxStaticText* itemStaticText8 = new wxStaticText( itemPanel1, wxID_STATIC, _("&Based on:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer5->Add(itemStaticText8, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP|wxADJUST_MINSIZE, 5); + itemBoxSizer5->Add(itemStaticText8, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); - wxString* m_basedOnStrings = NULL; - m_basedOn = new wxComboBox( itemPanel1, ID_RICHTEXTSTYLEPAGE_BASED_ON, _T(""), wxDefaultPosition, wxDefaultSize, 0, m_basedOnStrings, wxCB_DROPDOWN ); + wxArrayString m_basedOnStrings; + m_basedOn = new wxComboBox( itemPanel1, ID_RICHTEXTSTYLEPAGE_BASED_ON, wxT(""), wxDefaultPosition, wxDefaultSize, m_basedOnStrings, wxCB_DROPDOWN ); + m_basedOn->SetHelpText(_("The style on which this style is based.")); + if (wxRichTextStylePage::ShowToolTips()) + m_basedOn->SetToolTip(_("The style on which this style is based.")); itemBoxSizer5->Add(m_basedOn, 0, wxGROW|wxALL, 5); wxStaticText* itemStaticText10 = new wxStaticText( itemPanel1, wxID_STATIC, _("&Next style:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer5->Add(itemStaticText10, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP|wxADJUST_MINSIZE, 5); + itemBoxSizer5->Add(itemStaticText10, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); - wxString* m_nextStyleStrings = NULL; - m_nextStyle = new wxComboBox( itemPanel1, ID_RICHTEXTSTYLEPAGE_NEXT_STYLE, _T(""), wxDefaultPosition, wxDefaultSize, 0, m_nextStyleStrings, wxCB_DROPDOWN ); + wxArrayString m_nextStyleStrings; + m_nextStyle = new wxComboBox( itemPanel1, ID_RICHTEXTSTYLEPAGE_NEXT_STYLE, wxT(""), wxDefaultPosition, wxDefaultSize, m_nextStyleStrings, wxCB_DROPDOWN ); + m_nextStyle->SetHelpText(_("The default style for the next paragraph.")); + if (wxRichTextStylePage::ShowToolTips()) + m_nextStyle->SetToolTip(_("The default style for the next paragraph.")); itemBoxSizer5->Add(m_nextStyle, 0, wxGROW|wxALL, 5); itemBoxSizer3->Add(5, 5, 1, wxALIGN_CENTER_HORIZONTAL|wxALL, 5); @@ -135,12 +140,15 @@ bool wxRichTextStylePage::TransferDataFromWindow() wxPanel::TransferDataFromWindow(); wxRichTextStyleDefinition* def = wxRichTextFormattingDialog::GetDialogStyleDefinition(this); - wxRichTextParagraphStyleDefinition* paraDef = wxDynamicCast(def, wxRichTextParagraphStyleDefinition); - if (paraDef) - paraDef->SetNextStyle(m_nextStyle->GetValue()); + if (def) + { + wxRichTextParagraphStyleDefinition* paraDef = wxDynamicCast(def, wxRichTextParagraphStyleDefinition); + if (paraDef) + paraDef->SetNextStyle(m_nextStyle->GetValue()); - def->SetName(m_styleName->GetValue()); - def->SetBaseStyle(m_basedOn->GetValue()); + def->SetName(m_styleName->GetValue()); + def->SetBaseStyle(m_basedOn->GetValue()); + } return true; } @@ -150,62 +158,94 @@ bool wxRichTextStylePage::TransferDataToWindow() wxPanel::TransferDataToWindow(); wxRichTextStyleDefinition* def = wxRichTextFormattingDialog::GetDialogStyleDefinition(this); - wxRichTextParagraphStyleDefinition* paraDef = wxDynamicCast(def, wxRichTextParagraphStyleDefinition); - wxRichTextStyleSheet* sheet = wxRichTextFormattingDialog::GetDialog(this)->GetStyleSheet(); + if (def) + { + wxRichTextParagraphStyleDefinition* paraDef = wxDynamicCast(def, wxRichTextParagraphStyleDefinition); + wxRichTextListStyleDefinition* listDef = wxDynamicCast(def, wxRichTextListStyleDefinition); + // wxRichTextCharacterStyleDefinition* charDef = wxDynamicCast(def, wxRichTextCharacterStyleDefinition); + wxRichTextStyleSheet* sheet = wxRichTextFormattingDialog::GetDialog(this)->GetStyleSheet(); - m_styleName->SetValue(def->GetName()); + m_styleName->SetValue(def->GetName()); - if (paraDef) - { - if (m_nextStyle->GetCount() == 0) + if (listDef) { - if (sheet) + if (m_nextStyle->GetCount() == 0) { - size_t i; - for (i = 0; i < sheet->GetParagraphStyleCount(); i++) + if (sheet) { - wxRichTextParagraphStyleDefinition* p = wxDynamicCast(sheet->GetParagraphStyle(i), wxRichTextParagraphStyleDefinition); - if (p) - m_nextStyle->Append(p->GetName()); + size_t i; + for (i = 0; i < sheet->GetListStyleCount(); i++) + { + wxRichTextListStyleDefinition* p = wxDynamicCast(sheet->GetListStyle(i), wxRichTextListStyleDefinition); + if (p) + m_nextStyle->Append(p->GetName()); + } } } + m_nextStyle->SetValue(listDef->GetNextStyle()); } - m_nextStyle->SetValue(paraDef->GetNextStyle()); - } - - if (m_basedOn->GetCount() == 0) - { - if (sheet) + else if (paraDef) { - if (paraDef) + if (m_nextStyle->GetCount() == 0) { - size_t i; - for (i = 0; i < sheet->GetParagraphStyleCount(); i++) + if (sheet) { - wxRichTextParagraphStyleDefinition* p = wxDynamicCast(sheet->GetParagraphStyle(i), wxRichTextParagraphStyleDefinition); - if (p) - m_basedOn->Append(p->GetName()); + size_t i; + for (i = 0; i < sheet->GetParagraphStyleCount(); i++) + { + wxRichTextParagraphStyleDefinition* p = wxDynamicCast(sheet->GetParagraphStyle(i), wxRichTextParagraphStyleDefinition); + if (p) + m_nextStyle->Append(p->GetName()); + } } } - else + m_nextStyle->SetValue(paraDef->GetNextStyle()); + } + + if (m_basedOn->GetCount() == 0) + { + if (sheet) { - size_t i; - for (i = 0; i < sheet->GetCharacterStyleCount(); i++) + if (listDef) + { + size_t i; + for (i = 0; i < sheet->GetListStyleCount(); i++) + { + wxRichTextListStyleDefinition* p = wxDynamicCast(sheet->GetListStyle(i), wxRichTextListStyleDefinition); + if (p) + m_basedOn->Append(p->GetName()); + } + } + else if (paraDef) { - wxRichTextCharacterStyleDefinition* p = wxDynamicCast(sheet->GetCharacterStyle(i), wxRichTextCharacterStyleDefinition); - if (p) - m_basedOn->Append(p->GetName()); + size_t i; + for (i = 0; i < sheet->GetParagraphStyleCount(); i++) + { + wxRichTextParagraphStyleDefinition* p = wxDynamicCast(sheet->GetParagraphStyle(i), wxRichTextParagraphStyleDefinition); + if (p) + m_basedOn->Append(p->GetName()); + } + } + else + { + size_t i; + for (i = 0; i < sheet->GetCharacterStyleCount(); i++) + { + wxRichTextCharacterStyleDefinition* p = wxDynamicCast(sheet->GetCharacterStyle(i), wxRichTextCharacterStyleDefinition); + if (p) + m_basedOn->Append(p->GetName()); + } } } } + + m_basedOn->SetValue(def->GetBaseStyle()); } - - m_basedOn->SetValue(def->GetBaseStyle()); return true; } -wxTextAttrEx* wxRichTextStylePage::GetAttributes() +wxTextAttr* wxRichTextStylePage::GetAttributes() { return wxRichTextFormattingDialog::GetDialogAttributes(this); } @@ -216,7 +256,7 @@ wxTextAttrEx* wxRichTextStylePage::GetAttributes() bool wxRichTextStylePage::ShowToolTips() { - return true; + return wxRichTextFormattingDialog::ShowToolTips(); } /*! @@ -253,3 +293,5 @@ void wxRichTextStylePage::OnNextStyleUpdate( wxUpdateUIEvent& event ) wxRichTextStyleDefinition* def = wxRichTextFormattingDialog::GetDialogStyleDefinition(this); event.Enable(def->IsKindOf(CLASSINFO(wxRichTextParagraphStyleDefinition))); } + +#endif // wxUSE_RICHTEXT