Check-in [33dbf985e5]
Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | translatable=no for combo boxes |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
33dbf985e5a4347083212930235866ac |
User & Date: | mario 2022-10-10 07:45:34 |
Context
2022-10-11
| ||
07:12 | separate handler for notebook/page sectioning check-in: 6b16bde070 user: mario tags: trunk | |
2022-10-10
| ||
07:45 | translatable=no for combo boxes check-in: 33dbf985e5 user: mario tags: trunk | |
2022-10-09
| ||
16:36 | prepare magick v7 support, minor parameter rework, dissolve duration_arg(), experiment with more convert options check-in: af566d903e user: mario tags: trunk | |
Changes
Changes to inkscape/animate_yo.inx.
︙ | ︙ | |||
26 27 28 29 30 31 32 | <option value="10">10</option> <option value="15">15</option> <option value="20">20</option> <option value="25">25</option> <option value="50">50</option> <option value="100">100</option> </param> | | | | | 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | <option value="10">10</option> <option value="15">15</option> <option value="20">20</option> <option value="25">25</option> <option value="50">50</option> <option value="100">100</option> </param> <param name="repeat_fill" type="optiongroup" appearance="combo" translatable="no" gui-description="Animation can either stay at last state, or reset to value before animation. (gif_export always reverts to previous slide state)" gui-text="repeatFill"> <option translatable="no" value="freeze">freeze</option> <option translatable="no" value="remove">remove</option> </param> </page> <page name="calc" gui-text="calc"> <param name="calc_mode" type="optiongroup" appearance="combo" gui-description="Defines if values in animation are traversed in a straight from-to progression (linear), jump from start to end (discrete), slowly speed up (paced), or use a list of values/keyTimes (spline)." gui-text="calcMode"> <option value="linear">linear</option> <option value="discrete">discrete</option> <option value="paced">paced</option> |
︙ | ︙ | |||
53 54 55 56 57 58 59 | <param name="remove_child" type="bool" mode="checkbox" gui-description="Remove any existing ﹤animate*﹥ tags from selected object. (Else use the XML editor Ctrl+Shift+X.)" gui-text="Strip previous animation">false</param> </vbox> <image width="220" height="220">animate_yo.svg</image> </hbox> <param name="mode" type="notebook" gui-description="Animation" gui-text="Animation mode"> <page name="style" gui-text="style"> <param name="style" type="optiongroup" appearance="combo" translatable="no" gui-description="Can change either colors, opacity, or width." gui-text="Attribute"> | | | | | | | 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | <param name="remove_child" type="bool" mode="checkbox" gui-description="Remove any existing ﹤animate*﹥ tags from selected object. (Else use the XML editor Ctrl+Shift+X.)" gui-text="Strip previous animation">false</param> </vbox> <image width="220" height="220">animate_yo.svg</image> </hbox> <param name="mode" type="notebook" gui-description="Animation" gui-text="Animation mode"> <page name="style" gui-text="style"> <param name="style" type="optiongroup" appearance="combo" translatable="no" gui-description="Can change either colors, opacity, or width." gui-text="Attribute"> <option translatable="no" value="fill">fill</option> <option translatable="no" value="stroke">stroke</option> <option translatable="no" value="fill-opacity">fill-opacity</option> <option translatable="no" value="stroke-opacity">stroke-opacity</option> <option translatable="no" value="stroke-width">stroke-width</option> </param> <param name="color" type="color" mode="color" appearance="colorbutton" translatable="no" gui-description="Target color" gui-text="Color">#ff5555</param> <param name="style_val" type="string" gui-description="Use a fraction 0.75 for opacity. Or an integer 25 for widths." gui-text="Opacity/width"/> </page> <page name="scale" gui-text="scale"> <param name="scale" type="string" gui-description="Scales both width and height. Specify fractions each. For example 0.0 will vanish the object, or 2.0 double it per dimension. Beware that this transform can 'scale' x= and y= positions alongside. Can also be a single value `2.5` to scale both width and height." gui-text="Scaling">1.0 1.0</param> </page> |
︙ | ︙ | |||
103 104 105 106 107 108 109 | <command location="inx" interpreter="python">animate_yo.py</command> </script> <!-- pars.add_argument("-"+"-general", type=str, dest="general", default="time", help="Timing and control settings") pars.add_argument("-"+"-start", type=str, dest="start", default="0s", help="Start time") pars.add_argument("-"+"-duration", type=str, dest="duration", default="5s", help="Duration") pars.add_argument("-"+"-repeat_count", type=str, dest="repeat_count", default="style", help="repeatCount") | | | 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | <command location="inx" interpreter="python">animate_yo.py</command> </script> <!-- pars.add_argument("-"+"-general", type=str, dest="general", default="time", help="Timing and control settings") pars.add_argument("-"+"-start", type=str, dest="start", default="0s", help="Start time") pars.add_argument("-"+"-duration", type=str, dest="duration", default="5s", help="Duration") pars.add_argument("-"+"-repeat_count", type=str, dest="repeat_count", default="style", help="repeatCount") pars.add_argument("-"+"-repeat_fill", type=str, dest="repeat_fill", default="freeze", help="repeatFill") pars.add_argument("-"+"-calc_mode", type=str, dest="calc_mode", default="linear", help="calcMode") pars.add_argument("-"+"-key_values", type=str, dest="key_values", default="", help="(key)values") pars.add_argument("-"+"-key_times", type=str, dest="key_times", default="", help="keyTimes") pars.add_argument("-"+"-key_splines", type=str, dest="key_splines", default="", help="keySplines") pars.add_argument("-"+"-set_id", type=str, dest="set_id", default="", help="Assign #id") pars.add_argument("-"+"-remove_child", type=inkex.Boolean, dest="remove_child", default=False, help="Strip previous animation") pars.add_argument("-"+"-mode", type=str, dest="mode", default="style", help="Animation mode") |
︙ | ︙ |
Changes to inkscape/animate_yo.py.
︙ | ︙ | |||
13 14 15 16 17 18 19 | # pylint: disable=line-too-long, missing-module-docstring, bad-whitespace # config: # { xml: <hbox><vbox> } # { name: general, type: notebook, value: time, description: Timing and control settings } # { class: timing, name: start, type: str, value: "0s", description: Start time, help: "Can be a numeric `1s` or an expression and reference events `click + 1s` or other animations `animXY.end - 1s`." } # { class: timing, name: duration, type: str, value: "5s", description: Duration, help: "Static value or expression again." } # { class: repeat, name: repeat_count, type: select, select: "indefinite|0|1|2|3|4|5|10|15|20|25|50|100", value: style, description: repeatCount, help: "How often this animation loops. (Ignored by gif_export, where animations are generally per-frame.)" } | | | 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | # pylint: disable=line-too-long, missing-module-docstring, bad-whitespace # config: # { xml: <hbox><vbox> } # { name: general, type: notebook, value: time, description: Timing and control settings } # { class: timing, name: start, type: str, value: "0s", description: Start time, help: "Can be a numeric `1s` or an expression and reference events `click + 1s` or other animations `animXY.end - 1s`." } # { class: timing, name: duration, type: str, value: "5s", description: Duration, help: "Static value or expression again." } # { class: repeat, name: repeat_count, type: select, select: "indefinite|0|1|2|3|4|5|10|15|20|25|50|100", value: style, description: repeatCount, help: "How often this animation loops. (Ignored by gif_export, where animations are generally per-frame.)" } # { class: repeat, name: repeat_fill, type: select, select: "freeze|remove", value: freeze, translatable: no, description: repeatFill, help: "Animation can either stay at last state, or reset to value before animation. (gif_export always reverts to previous slide state)" } # { class: calc, name: calc_mode, type: select, select: "linear|discrete|paced|spline", value: "linear", description: "calcMode", help: "Defines if values in animation are traversed in a straight from-to progression (linear), jump from start to end (discrete), slowly speed up (paced), or use a list of values/keyTimes (spline)." } # { class: calc, name: key_values, type: str, value: "", description: "(key)values", help: "Spline mode: Instead of a single to= attribute, can give a list of values `12px;20px;50px` or `#f33;#77cc99;#03F` for use with keyTimes/Splines." } # { class: calc, name: key_times, type: str, value: "", description: "keyTimes", help: "Spline mode: Lists the time lapse positions `0.0; 0.3; 0.9; 1.0` when point in values= list should be approached." } # { class: calc, name: key_splines, type: str, value: "", description: "keySplines", help: "Spline mode: defines bezier curves for use with keyTimes. (Ignored by gif_export)" } # { class: id, name: set_id, type: str, value: "", description: "Assign #id", help: "Animation itself can have an #id for referencing." } # { xml: </page></param> } # { name: remove_child, type: bool, value: 0, description: "Strip previous animation", help: "Remove any existing ﹤animate*﹥ tags from selected object. (Else use the XML editor Ctrl+Shift+X.)" } |
︙ | ︙ |
Changes to inkscape/pmd2inks.
︙ | ︙ | |||
98 99 100 101 102 103 104 | } bool_true_match = re.compile(r"^(1|yes|true)", re.I).match class state: tab = "" page = "" | | | | 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 | } bool_true_match = re.compile(r"^(1|yes|true)", re.I).match class state: tab = "" page = "" def enum_item(k, v, _add="", xml="option"): return f"""<{xml} {_add} value="{k}">{v}</{xml}>""" def param(o): # arguments raw_type = o.get("type") _type = raw_type or "str" _type = map["type"].get(_type, "string") _name = o.get("name", "_0") |
︙ | ︙ | |||
146 147 148 149 150 151 152 | text = meta[re.sub(r"^[#{$]+|[:}$]*$", "", text)] # in-place reference return f""" {_prefix} <label {_add}>{text}</label> """ # variants elif _type == "select": | > | | 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | text = meta[re.sub(r"^[#{$]+|[:}$]*$", "", text)] # in-place reference return f""" {_prefix} <label {_add}>{text}</label> """ # variants elif _type == "select": _option_add = 'translatable="no" ' if not bool_true_match(o.get("translatable", "yes")) else '' ls = "\n ".join([enum_item(k, v, _option_add) for k, v in o.get("select", {}).items()]) return f""" {_prefix} <param name="{_name}" type="optiongroup" {_add} gui-text="{_desc}"> {ls} </param> """ elif _type == "notebook": |
︙ | ︙ |