forked from mia/Aegisub
Changes to text will no longer be discarded when you commit timing in the audio display and vice-versa, fixed glitches related to the Duration time edit box, and fixed snapping.
Originally committed to SVN as r742.
This commit is contained in:
parent
0fbfd67864
commit
0ad1815eed
6 changed files with 28 additions and 4 deletions
|
@ -55,6 +55,7 @@
|
||||||
#include "colorspace.h"
|
#include "colorspace.h"
|
||||||
#include "hotkeys.h"
|
#include "hotkeys.h"
|
||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
|
#include "timeedit_ctrl.h"
|
||||||
|
|
||||||
|
|
||||||
///////////////
|
///////////////
|
||||||
|
@ -1021,9 +1022,15 @@ void AudioDisplay::CommitChanges (bool nextLine) {
|
||||||
|
|
||||||
curDiag->Start.SetMS(curStartMS);
|
curDiag->Start.SetMS(curStartMS);
|
||||||
curDiag->End.SetMS(curEndMS);
|
curDiag->End.SetMS(curEndMS);
|
||||||
|
curDiag->Text = grid->editBox->TextEdit->GetText();
|
||||||
curDiag->UpdateData();
|
curDiag->UpdateData();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Update edit box
|
||||||
|
grid->editBox->StartTime->Update();
|
||||||
|
grid->editBox->EndTime->Update();
|
||||||
|
grid->editBox->Duration->Update();
|
||||||
|
|
||||||
// Update grid
|
// Update grid
|
||||||
grid->editBox->Update(!karaoke->enabled);
|
grid->editBox->Update(!karaoke->enabled);
|
||||||
grid->ass->FlagAsModified();
|
grid->ass->FlagAsModified();
|
||||||
|
@ -1321,7 +1328,8 @@ void AudioDisplay::OnMouseEvent(wxMouseEvent& event) {
|
||||||
// Dragging nothing, time from scratch
|
// Dragging nothing, time from scratch
|
||||||
if (!gotGrab) {
|
if (!gotGrab) {
|
||||||
if (buttonIsDown) {
|
if (buttonIsDown) {
|
||||||
hold = 3;
|
if (leftIsDown) hold = 3;
|
||||||
|
else hold = 2;
|
||||||
lastX = x;
|
lastX = x;
|
||||||
gotGrab = true;
|
gotGrab = true;
|
||||||
}
|
}
|
||||||
|
@ -1427,7 +1435,13 @@ void AudioDisplay::OnMouseEvent(wxMouseEvent& event) {
|
||||||
if (diagUpdated) {
|
if (diagUpdated) {
|
||||||
diagUpdated = false;
|
diagUpdated = false;
|
||||||
NeedCommit = true;
|
NeedCommit = true;
|
||||||
if (Options.AsBool(_T("Audio Autocommit")) && curStartMS <= curEndMS) CommitChanges();
|
if (curStartMS <= curEndMS) {
|
||||||
|
grid->editBox->StartTime->SetTime(curStartMS,true);
|
||||||
|
grid->editBox->EndTime->SetTime(curEndMS,true);
|
||||||
|
grid->editBox->Duration->SetTime(curEndMS-curStartMS,true);
|
||||||
|
if (Options.AsBool(_T("Audio Autocommit"))) CommitChanges();
|
||||||
|
}
|
||||||
|
|
||||||
else UpdateImage(true);
|
else UpdateImage(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1451,6 +1465,7 @@ void AudioDisplay::OnMouseEvent(wxMouseEvent& event) {
|
||||||
|
|
||||||
// Update stuff
|
// Update stuff
|
||||||
if (updated) {
|
if (updated) {
|
||||||
|
if (diagUpdated) NeedCommit = true;
|
||||||
player->SetEndPosition(GetSampleAtX(selEnd));
|
player->SetEndPosition(GetSampleAtX(selEnd));
|
||||||
wxCursor cursor(wxCURSOR_SIZEWE);
|
wxCursor cursor(wxCURSOR_SIZEWE);
|
||||||
SetCursor(cursor);
|
SetCursor(cursor);
|
||||||
|
|
|
@ -81,6 +81,8 @@ Please visit http://aegisub.net to download latest version
|
||||||
- Moved karaoke syllable text in audio display to the top instead of bottom, since it often covers important information in spectrum mode (jfs)
|
- Moved karaoke syllable text in audio display to the top instead of bottom, since it often covers important information in spectrum mode (jfs)
|
||||||
- Implemented a version checker that can automatically or manually check if there are any updates to Aegisub. (AMZ)
|
- Implemented a version checker that can automatically or manually check if there are any updates to Aegisub. (AMZ)
|
||||||
- Added support for reading v4.00++ (ASS2) files. (AMZ)
|
- Added support for reading v4.00++ (ASS2) files. (AMZ)
|
||||||
|
- Changes to text will no longer be discarded when you commit timing in the audio display and vice-versa. (AMZ)
|
||||||
|
- Fixed glitches related to the Duration time edit box. (AMZ)
|
||||||
|
|
||||||
|
|
||||||
= 1.10 beta - 2006.08.07 ===========================
|
= 1.10 beta - 2006.08.07 ===========================
|
||||||
|
|
|
@ -321,6 +321,7 @@ void SubsEditBox::SetToLine(int n) {
|
||||||
linen = n;
|
linen = n;
|
||||||
StartTime->Update();
|
StartTime->Update();
|
||||||
EndTime->Update();
|
EndTime->Update();
|
||||||
|
Duration->Update();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -449,6 +450,7 @@ void SubsEditBox::OnFrameRadio(wxCommandEvent &event) {
|
||||||
if (ByFrame->GetValue()) {
|
if (ByFrame->GetValue()) {
|
||||||
StartTime->SetByFrame(true);
|
StartTime->SetByFrame(true);
|
||||||
EndTime->SetByFrame(true);
|
EndTime->SetByFrame(true);
|
||||||
|
Duration->SetByFrame(true);
|
||||||
grid->SetByFrame(true);
|
grid->SetByFrame(true);
|
||||||
}
|
}
|
||||||
event.Skip();
|
event.Skip();
|
||||||
|
@ -461,6 +463,7 @@ void SubsEditBox::OnTimeRadio(wxCommandEvent &event) {
|
||||||
if (ByTime->GetValue()) {
|
if (ByTime->GetValue()) {
|
||||||
StartTime->SetByFrame(false);
|
StartTime->SetByFrame(false);
|
||||||
EndTime->SetByFrame(false);
|
EndTime->SetByFrame(false);
|
||||||
|
Duration->SetByFrame(false);
|
||||||
grid->SetByFrame(false);
|
grid->SetByFrame(false);
|
||||||
}
|
}
|
||||||
event.Skip();
|
event.Skip();
|
||||||
|
@ -509,6 +512,7 @@ void SubsEditBox::SetControlsState (bool state) {
|
||||||
TextEdit->SetTextTo(_T(""));
|
TextEdit->SetTextTo(_T(""));
|
||||||
StartTime->SetTime(0);
|
StartTime->SetTime(0);
|
||||||
EndTime->SetTime(0);
|
EndTime->SetTime(0);
|
||||||
|
Duration->SetTime(0);
|
||||||
Layer->SetValue(_T(""));
|
Layer->SetValue(_T(""));
|
||||||
MarginL->SetValue(_T(""));
|
MarginL->SetValue(_T(""));
|
||||||
MarginR->SetValue(_T(""));
|
MarginR->SetValue(_T(""));
|
||||||
|
|
|
@ -59,6 +59,7 @@ class wxScintilla;
|
||||||
class SubsEditBox : public wxPanel {
|
class SubsEditBox : public wxPanel {
|
||||||
friend class SubsTextEditHandler;
|
friend class SubsTextEditHandler;
|
||||||
friend class SubsTextEditCtrl;
|
friend class SubsTextEditCtrl;
|
||||||
|
friend class AudioDisplay;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool splitLineMode;
|
bool splitLineMode;
|
||||||
|
|
|
@ -102,9 +102,11 @@ void TimeEdit::Modified() {
|
||||||
|
|
||||||
/////////////////////////////
|
/////////////////////////////
|
||||||
// Set time and update stuff
|
// Set time and update stuff
|
||||||
void TimeEdit::SetTime(int ms) {
|
void TimeEdit::SetTime(int ms,bool setModified) {
|
||||||
|
int oldMs = time.GetMS();
|
||||||
time.SetMS(ms);
|
time.SetMS(ms);
|
||||||
UpdateText();
|
UpdateText();
|
||||||
|
if (setModified && oldMs != ms) Modified();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -69,7 +69,7 @@ public:
|
||||||
TimeEdit(wxWindow* parent, wxWindowID id, const wxString& value = _T(""), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxTextCtrlNameStr);
|
TimeEdit(wxWindow* parent, wxWindowID id, const wxString& value = _T(""), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxTextCtrlNameStr);
|
||||||
|
|
||||||
void SetByFrame(bool enable);
|
void SetByFrame(bool enable);
|
||||||
void SetTime(int ms);
|
void SetTime(int ms,bool setModified=false);
|
||||||
void Update();
|
void Update();
|
||||||
bool HasBeenModified() { return modified; }
|
bool HasBeenModified() { return modified; }
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue