From 8cf47c38b644d91be3bf46ea9b675e9a5c6bc1e6 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Sun, 9 Dec 2012 10:36:13 -0800 Subject: [PATCH] Drop AssOverrideParameter::omitted since it's equivalent to the type being VARDATA_NONE --- aegisub/src/ass_override.cpp | 10 +++------- aegisub/src/ass_override.h | 3 --- aegisub/src/command/edit.cpp | 1 - aegisub/src/subtitle_format_ebu3264.cpp | 2 +- aegisub/src/visual_tool.cpp | 3 +-- 5 files changed, 5 insertions(+), 14 deletions(-) diff --git a/aegisub/src/ass_override.cpp b/aegisub/src/ass_override.cpp index 9288fdcae..c7a9a5040 100644 --- a/aegisub/src/ass_override.cpp +++ b/aegisub/src/ass_override.cpp @@ -52,14 +52,12 @@ using namespace boost::adaptors; AssOverrideParameter::AssOverrideParameter() : classification(PARCLASS_NORMAL) -, omitted(false) { } AssOverrideParameter::AssOverrideParameter(AssOverrideParameter&& o) : VariableData(std::move(o)) , classification(o.classification) -, omitted(o.omitted) { } @@ -101,7 +99,7 @@ wxString AssDialogueBlockOverride::GetText() { void AssDialogueBlockOverride::ProcessParameters(ProcessParametersCallback callback, void *userData) { for (auto tag : Tags) { for (auto& par : tag->Params) { - if (par.GetType() == VARDATA_NONE || par.omitted) continue; + if (par.GetType() == VARDATA_NONE) continue; callback(tag->Name, &par, userData); @@ -366,10 +364,8 @@ void AssOverrideTag::ParseParameters(const wxString &text, AssOverrideTagProto:: newparam->classification = curproto.classification; // Check if it's optional and not present - if (!(curproto.optional & parsFlag) || curPar >= totalPars) { - newparam->omitted = true; + if (!(curproto.optional & parsFlag) || curPar >= totalPars) continue; - } wxString curtok = paramList[curPar++]; @@ -429,7 +425,7 @@ AssOverrideTag::operator wxString() const { // Add parameters result += join(Params - | filtered([](AssOverrideParameter const& p) { return p.GetType() != VARDATA_NONE && !p.omitted; }) + | filtered([](AssOverrideParameter const& p) { return p.GetType() != VARDATA_NONE; }) | transformed(param_str), wxS(",")); diff --git a/aegisub/src/ass_override.h b/aegisub/src/ass_override.h index 8a9b83904..bcd6adc33 100644 --- a/aegisub/src/ass_override.h +++ b/aegisub/src/ass_override.h @@ -73,9 +73,6 @@ public: /// Type of parameter AssParameterClass classification; - /// Is the parameter's value actually given? - bool omitted; - AssOverrideParameter(); }; diff --git a/aegisub/src/command/edit.cpp b/aegisub/src/command/edit.cpp index 51d678206..0ab79a749 100644 --- a/aegisub/src/command/edit.cpp +++ b/aegisub/src/command/edit.cpp @@ -248,7 +248,6 @@ void set_tag(AssDialogue *line, boost::ptr_vector &blocks, wxS } else { ovr->Tags[i]->Params[0].Set(value); - ovr->Tags[i]->Params[0].omitted = false; found = true; } } diff --git a/aegisub/src/subtitle_format_ebu3264.cpp b/aegisub/src/subtitle_format_ebu3264.cpp index d63565118..8065625d8 100644 --- a/aegisub/src/subtitle_format_ebu3264.cpp +++ b/aegisub/src/subtitle_format_ebu3264.cpp @@ -130,7 +130,7 @@ namespace italic = t->Params[0].Get(style_italic); else if (t->Name == "\\an") align = t->Params[0].Get(align); - else if (t->Name == "\\a" && !t->Params[0].omitted) + else if (t->Name == "\\a" && t->Params[0].GetType() != VARDATA_NONE) align = AssStyle::SsaToAss(t->Params[0].Get()); } } diff --git a/aegisub/src/visual_tool.cpp b/aegisub/src/visual_tool.cpp index 5db7098af..388773ef2 100644 --- a/aegisub/src/visual_tool.cpp +++ b/aegisub/src/visual_tool.cpp @@ -373,7 +373,6 @@ static param_vec find_tag(boost::ptr_vector& blocks, wxString static Vector2D vec_or_bad(param_vec tag, size_t x_idx, size_t y_idx) { if (!tag || tag->size() <= x_idx || tag->size() <= y_idx || - (*tag)[x_idx].omitted || (*tag)[y_idx].omitted || (*tag)[x_idx].GetType() == VARDATA_NONE || (*tag)[y_idx].GetType() == VARDATA_NONE) { return Vector2D(); @@ -402,7 +401,7 @@ Vector2D VisualToolBase::GetLinePosition(AssDialogue *diag) { param_vec align_tag; int ovr_align = 0; - if ((align_tag = find_tag(blocks, "\\an")) && !(*align_tag)[0].omitted) + if ((align_tag = find_tag(blocks, "\\an")) && (*align_tag)[0].GetType() != VARDATA_NONE) ovr_align = (*align_tag)[0].Get(); else if ((align_tag = find_tag(blocks, "\\a"))) ovr_align = AssStyle::SsaToAss((*align_tag)[0].Get(2));