From 9cfe230682675de7c2a94aa00c4413d751119682 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Mon, 26 Dec 2011 22:21:08 +0000 Subject: [PATCH] Remove unused 'parent' member from AssDialogueBlock and make 'text' protected Originally committed to SVN as r6165. --- aegisub/src/ass_dialogue.cpp | 15 ++++----------- aegisub/src/ass_dialogue.h | 29 ++++++++--------------------- aegisub/src/ass_karaoke.cpp | 9 +++++---- aegisub/src/ass_override.cpp | 3 +-- aegisub/src/dialog_resample.cpp | 3 +-- aegisub/src/dialog_translation.cpp | 8 ++++---- 6 files changed, 23 insertions(+), 44 deletions(-) diff --git a/aegisub/src/ass_dialogue.cpp b/aegisub/src/ass_dialogue.cpp index 621b2613a..c73cda64e 100644 --- a/aegisub/src/ass_dialogue.cpp +++ b/aegisub/src/ass_dialogue.cpp @@ -271,15 +271,11 @@ void AssDialogue::ParseASSTags() { //We've found an override block with no backslashes //We're going to assume it's a comment and not consider it an override block //Currently we'll treat this as a plain text block, but feel free to create a new class - AssDialogueBlockPlain *block = new AssDialogueBlockPlain; - block->text = "{" + work + "}"; - Blocks.push_back(block); + Blocks.push_back(new AssDialogueBlockPlain("{" + work + "}")); } else { // Create block - AssDialogueBlockOverride *block = new AssDialogueBlockOverride; - block->parent = this; - block->text = work; + AssDialogueBlockOverride *block = new AssDialogueBlockOverride(work); block->ParseTags(); Blocks.push_back(block); @@ -307,14 +303,11 @@ void AssDialogue::ParseASSTags() { // Plain-text if (drawingLevel == 0) { - AssDialogueBlockPlain *block = new AssDialogueBlockPlain; - block->text = work; - Blocks.push_back(block); + Blocks.push_back(new AssDialogueBlockPlain(work)); } // Drawing else { - AssDialogueBlockDrawing *block = new AssDialogueBlockDrawing; - block->text = work; + AssDialogueBlockDrawing *block = new AssDialogueBlockDrawing(work); block->Scale = drawingLevel; Blocks.push_back(block); } diff --git a/aegisub/src/ass_dialogue.h b/aegisub/src/ass_dialogue.h index 0476454a9..402f7e550 100644 --- a/aegisub/src/ass_dialogue.h +++ b/aegisub/src/ass_dialogue.h @@ -68,20 +68,17 @@ class AssOverrideTag; /// " here." (Plain) /// /// Also note how {}s are discarded. -/// Override blocks are further divided in AssOverrideTag's. +/// Override blocks are further divided in AssOverrideTags. /// /// The GetText() method generates a new value for the "text" field from /// the other fields in the specific class, and returns the new value. /// @endverbatim class AssDialogueBlock { -public: - /// DOCME +protected: + /// Text of this block wxString text; - - /// DOCME - AssDialogue *parent; - - AssDialogueBlock() { } +public: + AssDialogueBlock(wxString const& text) : text(text) { } virtual ~AssDialogueBlock() { } virtual ASS_BlockType GetType() = 0; @@ -92,23 +89,16 @@ public: virtual wxString GetText() { return text; } }; - - -/// DOCME /// @class AssDialogueBlockPlain - /// @brief DOCME /// /// DOCME class AssDialogueBlockPlain : public AssDialogueBlock { public: ASS_BlockType GetType() { return BLOCK_PLAIN; } - AssDialogueBlockPlain() { } + AssDialogueBlockPlain(wxString const& text = "") : AssDialogueBlock(text) { } }; - - -/// DOCME /// @class AssDialogueBlockDrawing /// @brief DOCME /// @@ -119,20 +109,17 @@ public: int Scale; ASS_BlockType GetType() { return BLOCK_DRAWING; } - AssDialogueBlockDrawing() { } + AssDialogueBlockDrawing(wxString const& text = "") : AssDialogueBlock(text) { } void TransformCoords(int trans_x,int trans_y,double mult_x,double mult_y); }; - - -/// DOCME /// @class AssDialogueBlockOverride /// @brief DOCME /// /// DOCME class AssDialogueBlockOverride : public AssDialogueBlock { public: - AssDialogueBlockOverride() { } + AssDialogueBlockOverride(wxString const& text = "") : AssDialogueBlock(text) { } ~AssDialogueBlockOverride(); /// DOCME diff --git a/aegisub/src/ass_karaoke.cpp b/aegisub/src/ass_karaoke.cpp index 399dd969a..2d987da46 100644 --- a/aegisub/src/ass_karaoke.cpp +++ b/aegisub/src/ass_karaoke.cpp @@ -71,18 +71,19 @@ void AssKaraoke::SetLine(AssDialogue *line, bool auto_split) { for (size_t i = 0; i < line->Blocks.size(); ++i) { AssDialogueBlock *block = line->Blocks[i]; + wxString text = block->GetText(); if (dynamic_cast(block)) { // treat comments as overrides rather than dialogue - if (block->text[0] == '{') - syl.ovr_tags[syl.text.size()] += block->text; + if (text[0] == '{') + syl.ovr_tags[syl.text.size()] += text; else - syl.text += block->text; + syl.text += text; } else if (dynamic_cast(block)) { // drawings aren't override tags but they shouldn't show up in the // stripped text so pretend they are - syl.ovr_tags[syl.text.size()] += block->text; + syl.ovr_tags[syl.text.size()] += text; } else if (AssDialogueBlockOverride *ovr = dynamic_cast(block)) { bool in_tag = false; diff --git a/aegisub/src/ass_override.cpp b/aegisub/src/ass_override.cpp index 5a1386566..8c84e4e06 100644 --- a/aegisub/src/ass_override.cpp +++ b/aegisub/src/ass_override.cpp @@ -427,8 +427,7 @@ void AssOverrideTag::ParseParameters(const wxString &text, AssOverrideTagProto:: break; } case VARDATA_BLOCK: { - AssDialogueBlockOverride *temp = new AssDialogueBlockOverride; - temp->text = curtok; + AssDialogueBlockOverride *temp = new AssDialogueBlockOverride(curtok); temp->ParseTags(); newparam->Set(temp); break; diff --git a/aegisub/src/dialog_resample.cpp b/aegisub/src/dialog_resample.cpp index 10a00cd54..efb01aa99 100644 --- a/aegisub/src/dialog_resample.cpp +++ b/aegisub/src/dialog_resample.cpp @@ -194,8 +194,7 @@ void DialogResample::DoResampleTags (wxString name,int n,AssOverrideParameter *c case PARCLASS_DRAWING: { - AssDialogueBlockDrawing block; - block.text = curParam->Get(); + AssDialogueBlockDrawing block(curParam->Get()); block.TransformCoords(m[0],m[2],rx,ry); curParam->Set(block.GetText()); } diff --git a/aegisub/src/dialog_translation.cpp b/aegisub/src/dialog_translation.cpp index b97e64556..e6f794df5 100644 --- a/aegisub/src/dialog_translation.cpp +++ b/aegisub/src/dialog_translation.cpp @@ -214,14 +214,14 @@ void DialogTranslation::UpdateDisplay() { AssDialogueBlock *block = active_line->Blocks[i]; if (block->GetType() == BLOCK_PLAIN) { int cur_size = original_text->GetReverseUnicodePosition(original_text->GetLength()); - original_text->AppendText(block->text); + original_text->AppendText(block->GetText()); if (i == cur_block) { original_text->StartUnicodeStyling(cur_size); - original_text->SetUnicodeStyling(cur_size, block->text.size(), 1); + original_text->SetUnicodeStyling(cur_size, block->GetText().size(), 1); } } else if (block->GetType() == BLOCK_OVERRIDE) - original_text->AppendText("{" + block->text + "}"); + original_text->AppendText("{" + block->GetText() + "}"); } original_text->SetReadOnly(true); @@ -233,7 +233,7 @@ void DialogTranslation::UpdateDisplay() { } void DialogTranslation::Commit(bool next) { - active_line->Blocks[cur_block]->text = translated_text->GetValue(); + *active_line->Blocks[cur_block] = translated_text->GetValue(); active_line->UpdateText(); c->ass->Commit(_("translation assistant"), AssFile::COMMIT_DIAG_TEXT);