@@ -5,11 +5,15 @@ Transform = require 'a-mo.Transform'
55util = require ' aegisub.util'
66
77class Line
8+ fieldsToDeepCopy : {
9+ ' extra'
10+ }
11+
812 fieldsToCopy : {
9- -- Built in line fields
10- ' actor' , ' class' , ' comment' , ' effect' , ' end_time' , ' extra ' , ' layer' , ' margin_l' , ' margin_r' , ' margin_t' , ' section' , ' start_time' , ' style' , ' text'
13+ -- Line fields
14+ ' actor' , ' class' , ' comment' , ' effect' , ' end_time' , ' layer' , ' margin_l' , ' margin_r' , ' margin_t' , ' section' , ' start_time' , ' style' , ' text'
1115 -- Our fields
12- ' number' , ' transforms' , ' transformsAreTokenized' , ' properties' , ' styleRef' , ' wasLinear'
16+ ' number' , ' transforms' , ' transformShift ' , ' transformsAreTokenized' , ' properties' , ' styleRef' , ' wasLinear'
1317 }
1418
1519 splitChar : " \\\6 "
@@ -40,11 +44,15 @@ class Line
4044 }
4145
4246 new : ( line, @parentCollection , overrides = { } ) =>
43- for field in * @fieldsToCopy
47+ for field in * @fieldsToDeepCopy
4448 if " table" == type line[ field]
4549 @[ field] = util. deep_copy overrides[ field] or line[ field]
4650 else
4751 @[ field] = overrides[ field] or line[ field]
52+
53+ for field in * @fieldsToCopy
54+ @[ field] = overrides[ field] or line[ field]
55+
4856 @duration = @end_time - @start_time
4957
5058 -- Gathers extra line metrics: the alignment and position.
0 commit comments