From 2ec4a97dbbf579ac5e10a8fd50270a4bc62d3e0d Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Thu, 20 May 2010 08:55:18 +0000 Subject: [PATCH] Fix bad coordinate conversion in the clip visual tool Originally committed to SVN as r4315. --- aegisub/src/visual_tool.h | 5 ++--- aegisub/src/visual_tool_clip.cpp | 13 +++++++------ aegisub/src/visual_tool_rotatez.cpp | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/aegisub/src/visual_tool.h b/aegisub/src/visual_tool.h index 5cc3fe0b2..63bc712b3 100644 --- a/aegisub/src/visual_tool.h +++ b/aegisub/src/visual_tool.h @@ -100,6 +100,7 @@ private: /// DOCME VisualToolEvent eventSink; + int GetHighlightedFeature(); protected: /// DOCME VideoDisplay *parent; @@ -165,12 +166,10 @@ protected: void GetLineScale(AssDialogue *diag,float &scalX,float &scalY); void GetLineClip(AssDialogue *diag,int &x1,int &y1,int &x2,int &y2,bool &inverse); wxString GetLineVectorClip(AssDialogue *diag,int &scale,bool &inverse); - void FillPositionData(); void SetOverride(wxString tag,wxString value); AssDialogue *GetActiveDialogueLine(); - int GetHighlightedFeature(); void DrawAllFeatures(); void Commit(bool full=false); @@ -252,7 +251,7 @@ public: /// @brief DOCME /// @param event /// - virtual void OnSubTool(wxCommandEvent &event) {} + virtual void OnSubTool(wxCommandEvent &) {} virtual void Update() { }; virtual void Draw()=0; void Refresh(); diff --git a/aegisub/src/visual_tool_clip.cpp b/aegisub/src/visual_tool_clip.cpp index 07f7dcc24..6ff8bfcaa 100644 --- a/aegisub/src/visual_tool_clip.cpp +++ b/aegisub/src/visual_tool_clip.cpp @@ -144,12 +144,13 @@ void VisualToolClip::UpdateHold() { /// @brief Commit hold /// void VisualToolClip::CommitHold() { - parent->ToScriptCoords(&curX1, &curY1); - parent->ToScriptCoords(&curX2, &curY2); - if (inverse) - SetOverride(L"\\iclip",wxString::Format(L"(%i,%i,%i,%i)",curX1,curY1,curX2,curY2)); - else - SetOverride(L"\\clip",wxString::Format(L"(%i,%i,%i,%i)",curX1,curY1,curX2,curY2)); + int x1 = curX1; + int x2 = curX2; + int y1 = curY1; + int y2 = curY2; + parent->ToScriptCoords(&x1, &y1); + parent->ToScriptCoords(&x2, &y2); + SetOverride(GetActiveDialogueLine(), inverse ? L"\\iclip" : L"\\clip",wxString::Format(L"(%i,%i,%i,%i)",x1,y1,x2,y2)); } diff --git a/aegisub/src/visual_tool_rotatez.cpp b/aegisub/src/visual_tool_rotatez.cpp index 8a1f7bc99..019ff4f00 100644 --- a/aegisub/src/visual_tool_rotatez.cpp +++ b/aegisub/src/visual_tool_rotatez.cpp @@ -147,7 +147,7 @@ void VisualToolRotateZ::Draw() { glPopMatrix(); // Draw line to mouse - if (!dragging && GetHighlightedFeature() == -1) { + if (!dragging && curFeature == -1) { SetLineColour(colour[0]); DrawLine(dx,dy,video.x,video.y); }