2012-08-18 18:43:11 +02:00
|
|
|
|
-- Automation 4 test file
|
2007-07-06 16:26:04 +02:00
|
|
|
|
-- Create a Macro feature, that displays some text
|
|
|
|
|
|
|
|
|
|
script_name = "Automation 4 set-selection test"
|
|
|
|
|
script_description = "Test setting the grid selection"
|
|
|
|
|
script_author = "Niels Martin Hansen"
|
|
|
|
|
script_version = "1"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function selecttest(subtitles, selected_lines, active_line)
|
|
|
|
|
-- get line-id of first selected line
|
|
|
|
|
local lid = selected_lines[1]
|
|
|
|
|
-- insert a copy of line 'lid' before itself
|
|
|
|
|
subtitles[-lid] = subtitles[lid]
|
|
|
|
|
-- append a copy of the copy of the copied line
|
|
|
|
|
subtitles[0] = subtitles[lid]
|
|
|
|
|
-- grab the copied line
|
|
|
|
|
local l = subtitles[lid]
|
|
|
|
|
-- modify it
|
|
|
|
|
l.text = "A4 was here!"
|
|
|
|
|
-- and store it back
|
|
|
|
|
subtitles[lid] = l
|
|
|
|
|
-- select some new lines
|
|
|
|
|
selected_lines = { lid-1, lid, lid+1 }
|
|
|
|
|
-- and set undo point (never forget!)
|
|
|
|
|
aegisub.set_undo_point("Insert+select Stuff")
|
|
|
|
|
-- return the new selection
|
|
|
|
|
return selected_lines
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
aegisub.register_macro("Insert+select stuff", "Inserts some lines near the active line and selects the new lines", selecttest, nil)
|