Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release')
-rw-r--r--release/datafiles/bfont.ttfbin191532 -> 194320 bytes
-rw-r--r--release/datafiles/blender_icons.svg104
-rw-r--r--release/datafiles/blender_icons16/icon16_anchor_bottom.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_anchor_center.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_anchor_left.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_anchor_right.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_anchor_top.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_brushes_all.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_folder_redirect.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_handle_aligned.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_handle_auto.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_handle_autoclamped.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_handle_free.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons16/icon16_handle_vector.datbin0 -> 1048 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_anchor_bottom.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_anchor_center.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_anchor_left.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_anchor_right.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_anchor_top.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_brushes_all.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_folder_redirect.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_handle_aligned.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_handle_auto.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_handle_autoclamped.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_handle_free.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/blender_icons32/icon32_handle_vector.datbin0 -> 4120 bytes
-rw-r--r--release/datafiles/bmonofont.ttfbin309588 -> 314980 bytes
-rw-r--r--release/datafiles/fonts/bmonofont-i18n.ttf.gzbin2623844 -> 2686344 bytes
-rw-r--r--release/datafiles/fonts/droidsans.ttf.gzbin2487589 -> 2436926 bytes
m---------release/datafiles/locale0
-rw-r--r--release/datafiles/userdef/userdef_default_theme.c27
m---------release/scripts/addons0
m---------release/scripts/addons_contrib0
-rw-r--r--release/scripts/modules/bl_i18n_utils/bl_extract_messages.py4
-rw-r--r--release/scripts/modules/bl_i18n_utils/utils.py4
-rw-r--r--release/scripts/modules/rna_prop_ui.py5
-rw-r--r--release/scripts/presets/keyconfig/keymap_data/blender_default.py62
-rw-r--r--release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py102
-rw-r--r--release/scripts/startup/bl_operators/vertexpaint_dirt.py14
-rw-r--r--release/scripts/startup/bl_ui/properties_data_empty.py32
-rw-r--r--release/scripts/startup/bl_ui/properties_data_light.py9
-rw-r--r--release/scripts/startup/bl_ui/properties_data_modifier.py16
-rw-r--r--release/scripts/startup/bl_ui/properties_paint_common.py2
-rw-r--r--release/scripts/startup/bl_ui/space_info.py2
-rw-r--r--release/scripts/startup/bl_ui/space_sequencer.py45
-rw-r--r--release/scripts/startup/bl_ui/space_text.py33
-rw-r--r--release/scripts/startup/bl_ui/space_toolsystem_common.py10
-rw-r--r--release/scripts/startup/bl_ui/space_toolsystem_toolbar.py107
-rw-r--r--release/scripts/startup/bl_ui/space_userpref.py1
-rw-r--r--release/scripts/startup/bl_ui/space_view3d.py4
-rw-r--r--release/scripts/startup/bl_ui/space_view3d_toolbar.py62
51 files changed, 472 insertions, 173 deletions
diff --git a/release/datafiles/bfont.ttf b/release/datafiles/bfont.ttf
index 2217f9d1aad..7cb06a988ed 100644
--- a/release/datafiles/bfont.ttf
+++ b/release/datafiles/bfont.ttf
Binary files differ
diff --git a/release/datafiles/blender_icons.svg b/release/datafiles/blender_icons.svg
index 6a87ac0adaa..ebebc82695a 100644
--- a/release/datafiles/blender_icons.svg
+++ b/release/datafiles/blender_icons.svg
@@ -1048,6 +1048,9 @@
</linearGradient>
+ <filter color-interpolation-filters="sRGB" inkscape:collect="always" id="filter15613" x="-0.092011765" width="1.1840235" y="-0.097762503" height="1.1955251">
+ <feGaussianBlur inkscape:collect="always" stdDeviation="0.65175" id="feGaussianBlur15615"/>
+ </filter>
<linearGradient id="linearGradient37542-55">
<stop id="stop37544-61" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
<stop id="stop37546-03" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
@@ -1062,6 +1065,9 @@
</linearGradient>
+ <filter color-interpolation-filters="sRGB" inkscape:collect="always" id="filter15613-8" x="-0.092011765" width="1.1840235" y="-0.097762503" height="1.1955251">
+ <feGaussianBlur inkscape:collect="always" stdDeviation="0.65175" id="feGaussianBlur15615-1"/>
+ </filter>
<filter color-interpolation-filters="sRGB" inkscape:label="Greyscale" id="filter15388">
@@ -1321,6 +1327,14 @@
<radialGradient inkscape:collect="always" xlink:href="#linearGradient16595" id="radialGradient52883-6-8-3" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.39420438,-0.08239205,0.27256031,1.3040635,-362.22886,-161.73912)" cx="-302.79681" cy="462.0358" fx="-302.79681" fy="462.0358" r="8"/>
+ <filter style="color-interpolation-filters:sRGB" inkscape:collect="always" id="filter15613-7" x="-0.092011765" width="1.1840235" y="-0.097762503" height="1.1955251">
+ <feGaussianBlur inkscape:collect="always" stdDeviation="0.65175" id="feGaussianBlur15615-4"/>
+ </filter>
+
+
+ <filter style="color-interpolation-filters:sRGB" inkscape:collect="always" id="filter15613-8-8" x="-0.092011765" width="1.1840235" y="-0.097762503" height="1.1955251">
+ <feGaussianBlur inkscape:collect="always" stdDeviation="0.65175" id="feGaussianBlur15615-1-5"/>
+ </filter>
<filter style="color-interpolation-filters:sRGB" inkscape:label="Greyscale" id="filter15388-0">
@@ -3732,6 +3746,14 @@
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m 449.50391,369 c -0.27613,3e-5 -0.49997,0.22387 -0.5,0.5 v 11 c 3e-5,0.27613 0.22387,0.49997 0.5,0.5 H 455 c 1.08333,0 2.07323,-0.26796 2.8125,-0.85938 C 458.55177,379.54921 459,378.625 459,377.5 c 0,-1.125 -0.44823,-2.04921 -1.1875,-2.64062 -0.49098,-0.39279 -1.11527,-0.59695 -1.78125,-0.72071 C 456.61178,373.63193 457,372.89881 457,372 c 0,-0.96354 -0.41934,-1.76349 -1.07422,-2.26758 C 455.27091,369.22833 454.41324,369 453.5,369 Z m 0.5,1 H 453.5 c 0.74361,0 1.38549,0.19369 1.81641,0.52539 0.43091,0.3317 0.68359,0.7813 0.68359,1.47461 0,0.69331 -0.25268,1.14291 -0.68359,1.47461 C 454.88549,373.80631 454.24361,374 453.5,374 h -3.49609 z m 0,5 h 3.46093 0.0352 1.5 c 0.91667,0 1.67677,0.23204 2.1875,0.64062 0.51073,0.40859 0.8125,0.98438 0.8125,1.85938 0,0.875 -0.30177,1.45079 -0.8125,1.85938 C 456.67677,379.76796 455.91667,380 455,380 h -4.99609 z" id="path10949-7" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccscsccscsccscscscccccscscscc"/>
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m 408.50391,369 a 0.50005,0.50005 0 0 0 -0.5,0.5 v 5.91992 a 0.50005,0.50005 0 0 0 0,0.16211 V 380.5 a 0.50005,0.50005 0 1 0 1,0 V 376 h 3.25586 l 3.84961,4.8125 a 0.50024018,0.50024018 0 1 0 0.78124,-0.625 l -3.49414,-4.36914 c 1.48603,-0.40423 2.60743,-1.70768 2.60743,-3.31836 0,-1.92707 -1.57293,-3.5 -3.5,-3.5 z m 0.5,1 h 3.5 c 1.38662,0 2.5,1.11337 2.5,2.5 0,1.38663 -1.11338,2.5 -2.5,2.5 a 0.50005,0.50005 0 0 0 -0.004,0 h -3.49609 z" id="path13132" inkscape:connector-curvature="0"/>
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="M 431.51758,369.26562 C 429.42795,369.91461 428,371.85293 428,374.04102 V 376 c 0,1.78552 0.9537,3.43731 2.5,4.33008 1.54631,0.89277 3.45369,0.89277 5,0 1.5463,-0.89277 2.5,-2.54456 2.5,-4.33008 v -0.5 a 0.50004997,0.50004997 0 0 0 -0.5,-0.5 h -4 a 0.50004997,0.50004997 0 1 0 0,1 h 3.5 c 0,1.42986 -0.7617,2.74991 -2,3.46484 -1.23829,0.71494 -2.76171,0.71494 -4,0 -1.2383,-0.71493 -2,-2.03498 -2,-3.46484 v -1.95898 c 0,-1.75422 1.13918,-3.30002 2.81445,-3.82032 1.69498,-0.52641 3.36746,-0.003 4.25196,1.5293 a 0.50050004,0.50050004 0 1 0 0.86718,-0.5 c -1.1155,-1.93212 -3.34609,-2.62724 -5.41601,-1.98438 z" id="path13141" inkscape:connector-curvature="0"/>
+ <g style="display:inline;fill:#ffffff;enable-background:new" id="g13321" transform="translate(-42.000002,21.000005)">
+ <g id="g13309" style="fill:#ffffff">
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.6;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 365.49219,94.992188 a 0.50005,0.50005 0 0 0 -0.38867,0.195312 0.50005,0.50005 0 0 0 -0.004,0.0059 l -1.95313,1.953125 a 0.50005,0.50005 0 1 0 0.70704,0.707032 L 365,96.707031 V 98.5 a 0.50005,0.50005 0 1 0 1,0 v -1.792969 l 1.14648,1.146485 a 0.50005,0.50005 0 1 0 0.70704,-0.707032 l -1.95704,-1.957031 a 0.50005,0.50005 0 0 0 -0.40429,-0.197265 z m 9.05859,1.941406 a 0.50005,0.50005 0 0 0 -0.0586,0.0059 h -2.93164 a 0.50005,0.50005 0 1 0 0,1 h 1.79297 l -3.14649,3.146486 a 0.50005,0.50005 0 1 0 0.70703,0.70703 l 3.14649,-3.146485 v 1.792965 a 0.50005,0.50005 0 1 0 1,0 v -2.931637 a 0.50005,0.50005 0 0 0 -0.50977,-0.574218 z m -0.0566,7.060546 a 0.50005,0.50005 0 0 0 -0.34766,0.85938 L 375.29297,106 H 371.5 a 0.50005,0.50005 0 1 0 0,1 h 3.79297 l -1.14649,1.14648 a 0.50005,0.50005 0 1 0 0.70704,0.70704 l 1.95703,-1.95704 a 0.50005,0.50005 0 0 0 0.002,-0.79296 0.50005,0.50005 0 0 0 -0.006,-0.004 l -1.95312,-1.95313 a 0.50005,0.50005 0 0 0 -0.35938,-0.15234 z" id="path13047-6" inkscape:connector-curvature="0"/>
+ </g>
+ <g id="g13313" style="fill:#ffffff">
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.98000004;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 324.5,121 c -1.14583,0 -1.86235,0.56478 -2.18359,1.12695 C 321.99517,122.68912 322,123.25 322,123.25 V 125 h -0.5 c -0.27613,3e-5 -0.49997,0.22387 -0.5,0.5 v 4 c 3e-5,0.27613 0.22387,0.49997 0.5,0.5 h 6 c 0.27613,-3e-5 0.49997,-0.22387 0.5,-0.5 v -4 c -3e-5,-0.27613 -0.22387,-0.49997 -0.5,-0.5 H 327 v -1.75 c 0,0 0.005,-0.56088 -0.31641,-1.12305 C 326.36235,121.56478 325.64583,121 324.5,121 Z m 0,1 c 0.85417,0 1.13765,0.31022 1.31641,0.62305 C 325.99517,122.93588 326,123.25 326,123.25 V 125 h -3 v -1.75 c 0,0 0.005,-0.31412 0.18359,-0.62695 C 323.36235,122.31022 323.64583,122 324.5,122 Z m -0.5,4 h 1 v 2 h -1 z" transform="translate(42.000002,-21.000005)" id="rect13261" inkscape:connector-curvature="0"/>
+ </g>
+ </g>
<g inkscape:export-ydpi="96" inkscape:export-xdpi="96" inkscape:export-filename="C:\Users\Andrzej Ambroż\Desktop\mtrx.png" id="g13337" style="display:inline;opacity:0.98999999;fill:#ffffff;enable-background:new" transform="matrix(-1,0,0,1,1458,302.99979)">
<path style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.3;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 1262.5,-278.49979 h -13 v -13 h 13 v 13" id="path14450" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccc"/>
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m 1257.5039,-287 c -0.191,-10e-4 -0.3661,0.1063 -0.4512,0.27734 l -3,6 c -0.1652,0.33223 0.076,0.72231 0.4473,0.72266 h 6 c 0.371,-3.5e-4 0.6125,-0.39043 0.4473,-0.72266 l -3,-6 c -0.084,-0.16853 -0.2552,-0.27571 -0.4434,-0.27734 z" id="path13331" inkscape:connector-curvature="0" sodipodi:nodetypes="cccccccc"/>
@@ -3809,6 +3831,11 @@
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 237.49219,305 a 0.50005,0.50005 0 0 0 -0.5,0.5 v 2 a 0.50005,0.50005 0 1 0 1,0 V 306 h 3 v 12 h -1.5 a 0.50005,0.50005 0 1 0 0,1 h 4 a 0.50005,0.50005 0 1 0 0,-1 h -1.5 v -12 h 3 v 1.5 a 0.50005,0.50005 0 1 0 1,0 v -2 a 0.50005,0.50005 0 0 0 -0.5,-0.5 z m 7,6 a 0.50005,0.50005 0 0 0 -0.5,0.5 v 1 a 0.50005,0.50005 0 1 0 1,0 V 312 h 2 v 6 h -0.5 a 0.50005,0.50005 0 1 0 0,1 h 2 a 0.50005,0.50005 0 1 0 0,-1 h -0.5 v -6 h 2 v 0.5 a 0.50005,0.50005 0 1 0 1,0 v -1 a 0.50005,0.50005 0 0 0 -0.5,-0.5 z" id="path6924-7" inkscape:connector-curvature="0"/>
</g>
<path inkscape:connector-curvature="0" d="m 353,628 h 1 v 1 h -1 z m -3,0 h 1 v 1 h -1 z m -3,0 h 1 v 1 h -1 z m -3,0 h 1 v 1 h -1 z m 9,-3 h 1 v 1 h -1 z m -3,0 h 1 v 1 h -1 z m -3,0 h 1 v 1 h -1 z m -3,0 h 1 v 1 h -1 z" style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;enable-background:new" id="path14337"/>
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m 374.4375,121.17773 c -0.55229,-0.19531 -1.19407,-0.23097 -1.84766,0.002 -0.65359,0.23293 -1.30733,0.71399 -1.9707,1.49609 -0.28137,0.33173 -0.45085,0.79694 -0.61914,1.24219 -0.17701,-0.45587 -0.36207,-0.94012 -0.61914,-1.24219 -0.66249,-0.77846 -1.31558,-1.25837 -1.96875,-1.49023 -0.65317,-0.23186 -1.2953,-0.19616 -1.84766,-0.002 -1.10471,0.38842 -1.89002,1.32506 -2.44922,1.9961 a 0.50064603,0.50064603 0 1 0 0.76954,0.64062 c 0.54481,-0.65377 1.26345,-1.43095 2.00976,-1.69336 0.37316,-0.1312 0.7444,-0.1559 1.18359,0 0.4392,0.1559 0.95757,0.51168 1.54102,1.19727 0.19894,0.23376 0.56603,0.91963 0.64063,1.27734 A 0.50005,0.50005 0 0 0 369.75,125 h 0.5 a 0.50005,0.50005 0 0 0 0.49023,-0.40234 c 0.0736,-0.37229 0.37785,-0.96363 0.64063,-1.27344 0.58467,-0.68931 1.10595,-1.04668 1.54492,-1.20313 0.43897,-0.15644 0.80714,-0.13175 1.17969,0 0.74509,0.2635 1.46354,1.04375 2.00976,1.69922 a 0.50064603,0.50064603 0 1 0 0.76954,-0.64062 c -0.55904,-0.67084 -1.34269,-1.61133 -2.44727,-2.00196 z" id="path17826-1" inkscape:connector-curvature="0"/>
+ <g style="display:inline;fill:#ffffff;enable-background:new" id="g14433" transform="rotate(-90,380.52904,134)">
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m 390.04688,140.46484 a 0.50005,0.50005 0 0 0 -0.41797,0.20704 l -2.95508,3.93945 a 0.50005,0.50005 0 0 0 -0.01,0.70703 l 2.96485,3.95312 a 0.50019216,0.50019216 0 1 0 0.80078,-0.5996 l -2.40039,-3.20118 h 7.1914 l -0.63867,1.27735 a 0.50005635,0.50005635 0 1 0 0.89453,0.44726 l 0.96875,-1.93554 a 0.50005,0.50005 0 0 0 -0.006,-0.58399 l -0.96289,-1.92773 a 0.50005635,0.50005635 0 1 0 -0.89453,0.44726 l 0.63867,1.27539 h -7.1914 l 2.40039,-3.19922 a 0.50005,0.50005 0 0 0 -0.38281,-0.80664 z" id="path17796-5" inkscape:connector-curvature="0"/>
+ </g>
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:7.40000248;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 348.5,120 c -1.47879,0 -2.81353,0.43206 -3.80469,1.06641 C 343.70416,121.70075 343,122.54357 343,123.5 c 0,1.02778 0.79097,1.88608 1.87891,2.49805 1.08228,0.60878 2.52394,0.99597 4.09765,1 0.0129,9.4e-4 3.75669,0.27336 6.02344,-2.21094 V 127.5 a 0.50005,0.50005 0 1 0 1,0 v -4 a 0.50005,0.50005 0 0 0 -0.5,-0.5 h -4.25 a 0.50005,0.50005 0 1 0 0,1 h 3.10156 c -1.87731,2.16501 -5.32031,2 -5.32031,2 A 0.50005,0.50005 0 0 0 349,126 c -1.41667,0 -2.71684,-0.36001 -3.62891,-0.87305 C 344.45903,124.61392 344,123.97222 344,123.5 c 0,-0.41012 0.41561,-1.06779 1.23438,-1.5918 C 346.05313,121.38419 347.21846,121 348.5,121 a 0.50005,0.50005 0 1 0 0,-1 z" id="path18766-5" inkscape:connector-curvature="0"/>
<g style="display:inline;fill:#ffffff;enable-background:new" id="g12950" transform="translate(-42.000002,4.4999696e-6)">
<g id="g12531-9" transform="translate(-209.00718,-44.00717)" style="display:inline;opacity:0.6;fill:#ffffff;enable-background:new">
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m 446.5,161 c -0.27613,3e-5 -0.49997,0.22387 -0.5,0.5 v 8 c 3e-5,0.27613 0.22387,0.49997 0.5,0.5 h 7 c 0.67616,0.01 0.67616,-1.00956 0,-1 H 447 v -7 h 0.5 4.9707 1.0293 c 0.67616,0.01 0.67616,-1.00956 0,-1 H 452.4707 447.5 Z m 4.50718,10.00717 L 451,173 h -1.5 c -0.67616,-0.01 -0.67616,1.00956 0,1 h 1.91992 c 0.0537,0.009 0.10843,0.009 0.16211,0 H 453.5 c 0.67616,0.01 0.67616,-1.00956 0,-1 H 452 l 0.007,-1.99283 z" id="path12529-5" inkscape:connector-curvature="0" sodipodi:nodetypes="cccccccccccccccccccccccccc"/>
@@ -4137,6 +4164,66 @@
<g transform="translate(41.999999,42.000005)" style="display:inline;opacity:1;fill:#ffffff;enable-background:new" id="g22961">
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="M 534.49219,599 C 534.2199,599 534,599.223 534,599.5 v 1.5 h -2.5 a 0.50005,0.50005 0 1 0 0,1 h 2.5 v 3 h -2.5 a 0.50005,0.50005 0 1 0 0,1 h 2.5 v 1.5 c 0,0.277 0.2199,0.5 0.49219,0.5 h 0.0156 C 534.7801,608 535,607.777 535,607.5 v -8 c 0,-0.277 -0.2199,-0.5 -0.49219,-0.5 z m 1.25781,1 v 7 H 537 c 1.69468,0 3,-1.30532 3,-3 v -1 c 0,-1.69468 -1.30532,-3 -3,-3 z" transform="translate(-41.999999,-42.000005)" id="path22706-5" inkscape:connector-curvature="0"/>
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.6;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00157475;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m 499.48633,561.02734 c -0.55718,0.017 -0.67407,0.7946 -0.14649,0.97461 1.47614,0.5388 2.51343,1.91841 2.64454,3.53711 0.13105,1.61806 -0.67507,3.15416 -2.04493,3.94532 C 499.32404,569.8398 498.6905,570 498,570 h -9 v 1 h 9 c 0.84916,0 1.67422,-0.20648 2.43945,-0.64844 1.70819,-0.98656 2.70486,-2.89381 2.54297,-4.89258 -0.16183,-1.99811 -1.44941,-3.72267 -3.30078,-4.39843 -0.0622,-0.024 -0.12865,-0.0353 -0.19531,-0.0332 z" id="path22783-2-0" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccccccccc"/>
+ <g style="display:inline;enable-background:new" id="g25540" transform="translate(582,-1322)">
+ <g id="g25433" style="display:inline;enable-background:new">
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.7;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m -449.5,1609 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 3.06836 c -0.18417,-0.3108 -0.32709,-0.6451 -0.42188,-1 z m 10.35352,0 c -0.0948,0.3549 -0.23771,0.6892 -0.42188,1 h 3.06055 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m -10.35352,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 12.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 0,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 12.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 0,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 12.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z" id="path25304" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccccccccccccccccccccc"/>
+ <circle style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;enable-background:new" id="circle25308" cx="-443" cy="1608" r="1.5" inkscape:export-filename="C:\Users\Andrzej Ambroż\Desktop\mtrx.png" inkscape:export-xdpi="96" inkscape:export-ydpi="96"/>
+ </g>
+ <g id="g25466" style="display:inline;enable-background:new">
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.7;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m -365.49219,1608 c -0.67616,-0.01 -0.67616,1.0096 0,1 H -352.5 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 0,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 2.63867 c 0.0948,-0.3549 0.23771,-0.6892 0.42188,-1 z m 9.92383,0 c 0.18417,0.3108 0.32709,0.6451 0.42188,1 H -352.5 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m -9.92383,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 3.06055 c -0.18417,-0.3108 -0.32709,-0.6451 -0.42188,-1 z m 10.34571,0 c -0.0948,0.3549 -0.23771,0.6892 -0.42188,1 H -352.5 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m -10.34571,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 H -352.5 c 0.67616,0.01 0.67616,-1.0096 0,-1 z" id="path25334" inkscape:connector-curvature="0" sodipodi:nodetypes="cccccccccccccccccccccccccccccc"/>
+ <circle style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;enable-background:new" id="circle25338" cx="359" cy="-1613.0002" r="1.5" inkscape:export-filename="C:\Users\Andrzej Ambroż\Desktop\mtrx.png" inkscape:export-xdpi="96" inkscape:export-ydpi="96" transform="scale(-1)"/>
+ </g>
+ <g id="g25449" style="display:inline;enable-background:new">
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.7;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m -406.5,1608 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 11.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 3.93164,3 c 0.18417,0.3108 0.32709,0.6451 0.42188,1 h 7.63867 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 0.42188,3 c -0.0948,0.3549 -0.23771,0.6892 -0.42188,1 h 8.06055 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m -4.35352,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 11.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z" id="path25345" inkscape:connector-curvature="0" sodipodi:nodetypes="cccccccccccccccccccc"/>
+ <circle style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;enable-background:new" id="circle25349" cx="-406" cy="-1613.0002" r="1.5" inkscape:export-filename="C:\Users\Andrzej Ambroż\Desktop\mtrx.png" inkscape:export-xdpi="96" inkscape:export-ydpi="96" transform="scale(1,-1)"/>
+ </g>
+ <g transform="matrix(1,0,0,-1,21,3226.0001)" id="g25439" style="display:inline;enable-background:new">
+ <path sodipodi:nodetypes="ccccccccccccccccccccccccc" inkscape:connector-curvature="0" id="path25435" d="m -449.5,1609 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 3.06836 c -0.18417,-0.3108 -0.32709,-0.6451 -0.42188,-1 z m 10.35352,0 c -0.0948,0.3549 -0.23771,0.6892 -0.42188,1 h 3.06055 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m -10.35352,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 12.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 0,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 12.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 0,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 12.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.7;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new"/>
+ <circle inkscape:export-ydpi="96" inkscape:export-xdpi="96" inkscape:export-filename="C:\Users\Andrzej Ambroż\Desktop\mtrx.png" r="1.5" cy="1608" cx="-443" id="circle25437" style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;enable-background:new"/>
+ </g>
+ <g transform="matrix(-1,0,0,1,-781.00069,0)" id="g25455" style="display:inline;enable-background:new">
+ <path sodipodi:nodetypes="cccccccccccccccccccc" inkscape:connector-curvature="0" id="path25451" d="m -406.5,1608 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 11.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 3.93164,3 c 0.18417,0.3108 0.32709,0.6451 0.42188,1 h 7.63867 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m 0.42188,3 c -0.0948,0.3549 -0.23771,0.6892 -0.42188,1 h 8.06055 c 0.67616,0.01 0.67616,-1.0096 0,-1 z m -4.35352,3 c -0.67616,-0.01 -0.67616,1.0096 0,1 h 11.99219 c 0.67616,0.01 0.67616,-1.0096 0,-1 z" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.7;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new"/>
+ <circle transform="scale(1,-1)" inkscape:export-ydpi="96" inkscape:export-xdpi="96" inkscape:export-filename="C:\Users\Andrzej Ambroż\Desktop\mtrx.png" r="1.5" cy="-1613.0002" cx="-406" id="circle25453" style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;enable-background:new"/>
+ </g>
+ </g>
+ <g transform="translate(791,-1295)" style="display:inline;enable-background:new" id="g25378-9">
+ <g transform="translate(1,-1)" id="g26210-2">
+ <path inkscape:connector-curvature="0" id="path24970-9" d="m -511.49974,1278.4919 -2.6e-4,-2.1822 c 2e-5,-2.8698 1.14768,-5.4099 3,-6.8448 1.85234,-1.4349 4.14766,-1.4349 6,0 1.85233,1.4349 2.99998,4.0575 3,6.9272 v 2.0998" style="display:inline;overflow:visible;visibility:visible;opacity:0.7;fill:none;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" sodipodi:nodetypes="ccsccc"/>
+ <g transform="translate(-729.00712,939.005)" style="opacity:1" id="g24984-6">
+ <path sodipodi:nodetypes="cccccccccc" id="path24980-2" style="opacity:1;vector-effect:none;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" d="m 228.50712,326.49495 h 2 v 2 h -2 z m -10.00994,0 h -2 v 2 h 2 z" inkscape:connector-curvature="0"/>
+ <path id="path24982-2" style="opacity:1;vector-effect:none;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal" d="m 228.5043,327.5 -2.49718,-0.005 M 218.5,327.5 l 2.50712,-0.005" inkscape:connector-curvature="0" sodipodi:nodetypes="cccc"/>
+ </g>
+ <rect style="opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke" id="rect24986-0" width="1.9999762" height="2" x="-506.5" y="1265.5" rx="0" ry="0"/>
+ </g>
+ <g transform="translate(-21,-64)" id="g25924-0">
+ <path sodipodi:nodetypes="ccsccc" style="display:inline;overflow:visible;visibility:visible;opacity:0.7;fill:none;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" d="m -511.49974,1341.4919 -2.6e-4,-2.1822 c 2e-5,-2.8698 1.14768,-5.4099 3,-6.8448 1.85234,-1.4349 4.14766,-1.4349 6,0 1.85233,1.4349 2.99998,4.0575 3,6.9272 v 2.0998" id="path25802-2" inkscape:connector-curvature="0"/>
+ <rect ry="0" rx="0" y="1329.5" x="-504.5" height="2" width="1.9999762" id="rect25810-8" style="opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke"/>
+ </g>
+ <g transform="matrix(1,0,0,-1,-21,2604.9941)" id="g25919-9">
+ <path sodipodi:nodetypes="ccccc" id="path25812-9" style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;enable-background:new" d="m -464.5,1340.5001 v -2 h 2 v 2 z" inkscape:connector-curvature="0"/>
+ <path sodipodi:nodetypes="cccc" id="path25814-0" style="display:inline;overflow:visible;visibility:visible;opacity:0.7;vector-effect:none;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" d="m -463.25,1339 5.75,-11.4994 m -6.25,11.4994 -5.75,-11.4994" inkscape:connector-curvature="0"/>
+ </g>
+ <g transform="matrix(-1,0,0,1,-968.99001,-84)" id="g25915-9">
+ <path sodipodi:nodetypes="ccccc" inkscape:connector-curvature="0" d="m -503.5,1348.5 h -2 v 2 h 2 z" style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;enable-background:new" id="path25851-1"/>
+ <path sodipodi:nodetypes="csc" inkscape:connector-curvature="0" id="path25853-8" d="m -498.49506,1361.4978 -2.00459,-2.0055 c -2.16266,-2.1636 -3.0003,-5.1361 -3.0003,-7.9852 l 0.01,-1.0071" style="opacity:0.7;vector-effect:none;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.99999988;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal"/>
+ <path style="opacity:0.7;vector-effect:none;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.99999988;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal" d="m -511.5049,1361.4907 c 0,-2.8491 0.8375,-5.8217 3.0003,-7.9852 L -505.5,1350.5" id="path25855-4" inkscape:connector-curvature="0" sodipodi:nodetypes="csc"/>
+ <g id="g25861-1" transform="translate(-47,-2)">
+ <path sodipodi:nodetypes="ccccc" id="path25857-8" style="opacity:1;vector-effect:none;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" d="m -457.50994,1358.5 h -2 v 2 h 2 z" inkscape:connector-curvature="0"/>
+ <path id="path25859-9" style="opacity:1;vector-effect:none;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal" d="m -458.5,1358 v -3" inkscape:connector-curvature="0" sodipodi:nodetypes="cc"/>
+ </g>
+ <g transform="rotate(90,-479.5,1328.5)" id="g25873-3">
+ <path inkscape:connector-curvature="0" d="m -457.50994,1359.5 h -2 v 2 h 2 z" style="opacity:1;vector-effect:none;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="path25869-0" sodipodi:nodetypes="ccccc"/>
+ <path sodipodi:nodetypes="cc" inkscape:connector-curvature="0" d="m -458.5,1359 v -3" style="opacity:1;vector-effect:none;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal" id="path25871-3"/>
+ </g>
+ </g>
+ <g id="g25347-2">
+ <g transform="translate(-43,-61)" id="g25301-4">
+ <path sodipodi:nodetypes="ccsccc" style="display:inline;overflow:visible;visibility:visible;opacity:0.7;fill:none;stroke:#ffffff;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" d="m -510.49974,1338.4932 -2.6e-4,-0.2387 c 0,-2.5685 1.14768,-5.2795 3,-6.6953 1.85233,-1.4159 4.14765,-1.4159 5.99999,0 1.85233,1.4158 3,4.1268 3,6.6953 v 0.2387" id="path25297-7" inkscape:connector-curvature="0"/>
+ <rect ry="0" rx="0" y="1328.5" x="-503.5" height="2" width="1.9999762" id="rect25299-7" style="opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke"/>
+ </g>
+ <path sodipodi:nodetypes="ccccccccccccccc" id="path25355-6-1" style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:new" d="m -554,1265 h 3 v -1 h -3 z m 5,0 h 3 v -1 h -3 z m 5,0 h 3 v -1 h -3 z" inkscape:connector-curvature="0"/>
+ </g>
+ </g>
</g>
<g style="display:inline;fill:#ffffff;enable-background:new" transform="rotate(-180,349.00525,417)" id="g22180" inkscape:export-filename="C:\Users\Andrzej Ambroż\Desktop\mtrx.png" inkscape:export-xdpi="96" inkscape:export-ydpi="96">
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.6;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m 324.95117,410.94531 c -0.75176,0.0616 -1.47366,0.37015 -2.05469,0.95117 -1.16941,1.16942 -1.16162,2.91055 -0.28906,4.30664 0.87256,1.3961 2.57397,2.52709 4.83399,2.79297 2.83908,0.33401 5.63985,-1.05664 6.5332,-3.3125 a 0.50005,0.50005 0 1 0 -0.92969,-0.36718 c -0.67177,1.69632 -3.05327,2.97373 -5.48633,2.6875 -1.98998,-0.23411 -3.41357,-1.22813 -4.10351,-2.33203 -0.68994,-1.10391 -0.68215,-2.23778 0.14844,-3.06836 0.83795,-0.83796 1.98844,-0.89361 3.08398,-0.26368 1.09554,0.62994 2.08242,1.9799 2.31641,3.96875 a 0.50005,0.50005 0 1 0 0.99218,-0.11718 c -0.26601,-2.26115 -1.40413,-3.91119 -2.80859,-4.71875 -0.70223,-0.40379 -1.48457,-0.58895 -2.23633,-0.52735 z m 3.54102,9.04883 a 0.50005,0.50005 0 0 0 -0.37696,0.1875 c -0.31249,0.377 -0.92604,0.69672 -1.66015,0.78906 a 0.50005,0.50005 0 1 0 0.125,0.99219 c 0.94034,-0.11828 1.77818,-0.50935 2.30469,-1.14453 a 0.50005,0.50005 0 0 0 -0.39258,-0.82422 z" id="path22178" inkscape:connector-curvature="0"/>
@@ -5348,6 +5435,23 @@
<path sodipodi:nodetypes="csssscccccc" inkscape:connector-curvature="0" id="path28911-6" transform="translate(540,1)" d="m 7,654 v 8 c 0,0.54532 0.45468,1 1,1 h 12 c 0.54532,0 1,-0.45468 1,-1 v -8 h -1 v 8 H 8 v -8 z" style="opacity:0.6;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke"/>
<path sodipodi:nodetypes="ssccccsssccccc" inkscape:connector-curvature="0" style="opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke" d="m 8,670 c -0.54532,0 -1,0.45468 -1,1 v 3 h 1 12 1 v -3 c 0,-0.54532 -0.45468,-1 -1,-1 z m 0,1 h 2 v 2 H 8 Z" transform="translate(540,-20)" id="path28913-4"/>
</g>
+ <g id="g25642" transform="translate(-63,-20)" style="display:inline;fill:#ffffff;fill-opacity:1;enable-background:new">
+ <path inkscape:connector-curvature="0" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:0.7;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m -33.5,1328 c -0.27613,0 -0.49997,0.2239 -0.5,0.5 v 11 c 3e-5,0.2761 0.22387,0.5 0.5,0.5 h 2.5 v -3 c 0,-1.645 1.35499,-3 3,-3 h 2.585938 l -1.292969,-1.293 a 1.0001,1.0001 0 0 1 0.726562,-1.7168 1.0001,1.0001 0 0 1 0.6875,0.3028 l 3,3 a 1.0001,1.0001 0 0 1 0,1.414 l -3,3 a 1.0001,1.0001 0 1 1 -1.414062,-1.414 L -25.414062,1336 H -28 c -0.56413,0 -1,0.4359 -1,1 v 3 h 8.5 c 0.27613,0 0.49997,-0.2239 0.5,-0.5 v -9 c -3e-5,-0.2761 -0.22387,-0.5 -0.5,-0.5 H -29 v -1.5 c -3e-5,-0.2761 -0.22387,-0.5 -0.5,-0.5 z" transform="translate(397,-1232)" id="path25640"/>
+ </g>
+ <g transform="translate(712,-665)" style="display:inline;enable-background:new" id="g25686">
+ <g transform="rotate(-180,-177.49644,1250.0035)" id="g25671">
+ <path inkscape:connector-curvature="0" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m -242.00195,1242.9922 c -0.58284,0 -1.10871,0.154 -1.47657,0.5215 -0.36785,0.3675 -0.52148,0.8952 -0.52148,1.4785 V 1248 h 6 v -2.4863 c -0.002,-0.3369 0.17839,-0.7279 0.47461,-1.0254 0.29622,-0.2975 0.68988,-0.4819 1.0293,-0.4844 0.65765,-0.012 0.6539,-0.9937 -0.004,-1 h -0.004 L -239,1243 v 0.4863 c 0.01,0.6762 -1.00956,0.6762 -1,0 v -0.4883 h -1 v 0.4903 c 0.01,0.6762 -1.00956,0.6762 -1,0 v -0.4922 h -0.002 z M -244,1249 v 0.5 c 0,0.2521 0.16407,0.4981 0.5,0.4863 l 1.50195,0.01 -0.002,5.9941 c -0.0191,1.3523 2.01913,1.3523 2,0 l -0.002,-5.9941 1.50195,-0.01 c 0.32137,0 0.5,-0.2464 0.5,-0.4863 v -0.5 z" transform="rotate(180,-208.99644,1250.0035)" id="path25652"/>
+ <g transform="matrix(1,0,0,-1,-61.992879,2500.0212)" id="g25669">
+ <g id="g25662" transform="translate(-17)">
+ <g transform="translate(-2,-2)" id="g25660"/>
+ </g>
+ </g>
+ </g>
+ <g id="g25684" transform="matrix(1,0,0,-1,0,2500.0142)">
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:new" d="m -232,1242.9863 c -0.50478,0 -1.00956,0.3375 -1,1.0137 v 7 h 2 v -7 c 0.01,-0.6762 -0.49522,-1.0137 -1,-1.0137 z m 0,9.0274 c -1.09865,0 -2,0.9013 -2,2 0,0.8274 -0.13264,1.3367 -0.33203,1.5937 -0.1994,0.257 -0.49978,0.3926 -1.16797,0.3926 -0.11793,0 -0.23139,0.046 -0.32031,0.123 -0.0251,0.022 -0.048,0.046 -0.0684,0.072 -0.0409,0.053 -0.0708,0.1132 -0.0879,0.1777 -0.004,0.016 -0.007,0.033 -0.01,0.049 -0.003,0.017 -0.005,0.034 -0.006,0.051 -0.002,0.033 -7.6e-4,0.067 0.004,0.1 0.005,0.033 0.0138,0.065 0.0254,0.096 0.0107,0.031 0.0244,0.061 0.041,0.09 0.009,0.015 0.0188,0.029 0.0293,0.043 0.0403,0.053 0.0907,0.098 0.14844,0.1308 0.0742,0.043 0.15827,0.067 0.24414,0.068 2.01924,0 3.30957,-0.2641 4.16992,-0.7461 0.85624,-0.4797 1.23067,-1.2322 1.30078,-1.918 0.0175,-0.1066 0.0293,-0.2142 0.0293,-0.3222 0,-1.0987 -0.90135,-2 -2,-2 z" transform="matrix(1,0,0,-1,62.999999,2500.0142)" id="path25673" inkscape:connector-curvature="0" sodipodi:nodetypes="sccccssscscccccccccccccss"/>
+ <g transform="matrix(-1,0,0,1,-263.99995,0)" id="g25682"/>
+ </g>
+ </g>
</g>
<g inkscape:groupmode="layer" id="layer2" inkscape:label="EMPTY ICON TRACKING" style="display:none">
<g id="g16331" style="fill:#ffcc00">
diff --git a/release/datafiles/blender_icons16/icon16_anchor_bottom.dat b/release/datafiles/blender_icons16/icon16_anchor_bottom.dat
new file mode 100644
index 00000000000..e79dfded6ef
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_anchor_bottom.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_anchor_center.dat b/release/datafiles/blender_icons16/icon16_anchor_center.dat
new file mode 100644
index 00000000000..7dfbc8cce3a
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_anchor_center.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_anchor_left.dat b/release/datafiles/blender_icons16/icon16_anchor_left.dat
new file mode 100644
index 00000000000..665291de855
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_anchor_left.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_anchor_right.dat b/release/datafiles/blender_icons16/icon16_anchor_right.dat
new file mode 100644
index 00000000000..fcd2fe6c872
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_anchor_right.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_anchor_top.dat b/release/datafiles/blender_icons16/icon16_anchor_top.dat
new file mode 100644
index 00000000000..fc90b1fed63
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_anchor_top.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_brushes_all.dat b/release/datafiles/blender_icons16/icon16_brushes_all.dat
new file mode 100644
index 00000000000..82840288a39
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_brushes_all.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_folder_redirect.dat b/release/datafiles/blender_icons16/icon16_folder_redirect.dat
new file mode 100644
index 00000000000..90b3498c0fd
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_folder_redirect.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_handle_aligned.dat b/release/datafiles/blender_icons16/icon16_handle_aligned.dat
new file mode 100644
index 00000000000..5b265740449
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_handle_aligned.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_handle_auto.dat b/release/datafiles/blender_icons16/icon16_handle_auto.dat
new file mode 100644
index 00000000000..93e21513010
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_handle_auto.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_handle_autoclamped.dat b/release/datafiles/blender_icons16/icon16_handle_autoclamped.dat
new file mode 100644
index 00000000000..05e3b834710
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_handle_autoclamped.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_handle_free.dat b/release/datafiles/blender_icons16/icon16_handle_free.dat
new file mode 100644
index 00000000000..d3cf9857b53
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_handle_free.dat
Binary files differ
diff --git a/release/datafiles/blender_icons16/icon16_handle_vector.dat b/release/datafiles/blender_icons16/icon16_handle_vector.dat
new file mode 100644
index 00000000000..4d2e11ff72c
--- /dev/null
+++ b/release/datafiles/blender_icons16/icon16_handle_vector.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_anchor_bottom.dat b/release/datafiles/blender_icons32/icon32_anchor_bottom.dat
new file mode 100644
index 00000000000..0e56e3c653b
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_anchor_bottom.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_anchor_center.dat b/release/datafiles/blender_icons32/icon32_anchor_center.dat
new file mode 100644
index 00000000000..0f859b7a316
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_anchor_center.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_anchor_left.dat b/release/datafiles/blender_icons32/icon32_anchor_left.dat
new file mode 100644
index 00000000000..354154d1cf6
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_anchor_left.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_anchor_right.dat b/release/datafiles/blender_icons32/icon32_anchor_right.dat
new file mode 100644
index 00000000000..7c7f7987596
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_anchor_right.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_anchor_top.dat b/release/datafiles/blender_icons32/icon32_anchor_top.dat
new file mode 100644
index 00000000000..d4d67ce90c3
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_anchor_top.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_brushes_all.dat b/release/datafiles/blender_icons32/icon32_brushes_all.dat
new file mode 100644
index 00000000000..d224036d082
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_brushes_all.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_folder_redirect.dat b/release/datafiles/blender_icons32/icon32_folder_redirect.dat
new file mode 100644
index 00000000000..45ed10c6f46
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_folder_redirect.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_handle_aligned.dat b/release/datafiles/blender_icons32/icon32_handle_aligned.dat
new file mode 100644
index 00000000000..7793d128216
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_handle_aligned.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_handle_auto.dat b/release/datafiles/blender_icons32/icon32_handle_auto.dat
new file mode 100644
index 00000000000..e8675fb5884
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_handle_auto.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_handle_autoclamped.dat b/release/datafiles/blender_icons32/icon32_handle_autoclamped.dat
new file mode 100644
index 00000000000..0bc5ba6275f
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_handle_autoclamped.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_handle_free.dat b/release/datafiles/blender_icons32/icon32_handle_free.dat
new file mode 100644
index 00000000000..a2ee1527b1d
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_handle_free.dat
Binary files differ
diff --git a/release/datafiles/blender_icons32/icon32_handle_vector.dat b/release/datafiles/blender_icons32/icon32_handle_vector.dat
new file mode 100644
index 00000000000..78788c56873
--- /dev/null
+++ b/release/datafiles/blender_icons32/icon32_handle_vector.dat
Binary files differ
diff --git a/release/datafiles/bmonofont.ttf b/release/datafiles/bmonofont.ttf
index e95786a49e4..06235dce116 100644
--- a/release/datafiles/bmonofont.ttf
+++ b/release/datafiles/bmonofont.ttf
Binary files differ
diff --git a/release/datafiles/fonts/bmonofont-i18n.ttf.gz b/release/datafiles/fonts/bmonofont-i18n.ttf.gz
index 1453ad48c6c..2c3e00d1c75 100644
--- a/release/datafiles/fonts/bmonofont-i18n.ttf.gz
+++ b/release/datafiles/fonts/bmonofont-i18n.ttf.gz
Binary files differ
diff --git a/release/datafiles/fonts/droidsans.ttf.gz b/release/datafiles/fonts/droidsans.ttf.gz
index 8cd640ba525..858264142f1 100644
--- a/release/datafiles/fonts/droidsans.ttf.gz
+++ b/release/datafiles/fonts/droidsans.ttf.gz
Binary files differ
diff --git a/release/datafiles/locale b/release/datafiles/locale
-Subproject 8a05b618f031582c006c6f62b9e60619ab3eef8
+Subproject 74afb3ed35e3271b2609feaf67bea6b8bdffe7c
diff --git a/release/datafiles/userdef/userdef_default_theme.c b/release/datafiles/userdef/userdef_default_theme.c
index 147b55f60ef..1eff85b6129 100644
--- a/release/datafiles/userdef/userdef_default_theme.c
+++ b/release/datafiles/userdef/userdef_default_theme.c
@@ -339,6 +339,7 @@ const bTheme U_theme_default = {
.bone_solid = RGBA(0xb2b2b2ff),
.bone_pose = RGBA(0x50c8ff50),
.bone_pose_active = RGBA(0x8cffff50),
+ .bone_locked_weight = RGBA(0xff000080),
.cframe = RGBA(0x60c040ff),
.time_keyframe = RGBA(0xddd700ff),
.time_gp_keyframe = RGBA(0xb5e61dff),
@@ -419,7 +420,7 @@ const bTheme U_theme_default = {
.list = RGBA(0x282828ff),
.list_title = RGBA(0xffffffff),
.list_text = RGBA(0xb8b8b8ff),
- .list_text_hi = RGBA(0xffffffff),
+ .list_text_hi = RGBA(0xffaf29ff),
.panelcolors = {
.header = RGBA(0x424242cc),
.back = RGBA(0x333333b3),
@@ -453,11 +454,11 @@ const bTheme U_theme_default = {
.anim_preview_range = RGBA(0xa14d0066),
},
.space_info = {
- .back = RGBA(0x42424200),
- .title = RGBA(0xeeeeeeff),
- .text = RGBA(0xe6e6e6ff),
+ .back = RGBA(0x28282800),
+ .title = RGBA(0xffffffff),
+ .text = RGBA(0xc3c3c3ff),
.text_hi = RGBA(0xffffffff),
- .header = RGBA(0x424242ff),
+ .header = RGBA(0x454545ff),
.header_text = RGBA(0xeeeeeeff),
.header_text_hi = RGBA(0xffffffff),
.tab_active = RGBA(0x4b4b4bff),
@@ -476,16 +477,20 @@ const bTheme U_theme_default = {
.vertex_size = 3,
.outline_width = 1,
.facedot_size = 4,
- .info_selected = RGBA(0x6080ffff),
+ .info_selected = RGBA(0x3b5689ff),
.info_selected_text = RGBA(0xffffffff),
- .info_error = RGBA(0x990000ff),
+ .info_error = RGBA(0xff613dff),
.info_error_text = RGBA(0xffffffff),
.info_warning = RGBA(0xb36a00ff),
.info_warning_text = RGBA(0xffffffff),
.info_info = RGBA(0x1d4383ff),
.info_info_text = RGBA(0xffffffff),
.info_debug = RGBA(0xd3d3d3ff),
- },
+ .info_property = RGBA(0x3ace87ff),
+ .info_property_text = RGBA(0xffffffff),
+ .info_operator = RGBA(0x3ace87ff),
+ .info_operator_text = RGBA(0xffffffff),
+ },
.space_action = {
.back = RGBA(0x42424200),
.title = RGBA(0xeeeeeeff),
@@ -505,7 +510,7 @@ const bTheme U_theme_default = {
.list = RGBA(0x282828ff),
.list_title = RGBA(0xffffffff),
.list_text = RGBA(0xb8b8b8ff),
- .list_text_hi = RGBA(0xffffffff),
+ .list_text_hi = RGBA(0xffaf29ff),
.panelcolors = {
.header = RGBA(0x424242cc),
.back = RGBA(0x333333b3),
@@ -556,14 +561,14 @@ const bTheme U_theme_default = {
.tab_inactive = RGBA(0x2b2b2bff),
.tab_back = RGBA(0x232323ff),
.tab_outline = RGBA(0x232323ff),
- .button = RGBA(0x282828ff),
+ .button = RGBA(0x424242ff),
.button_title = RGBA(0xffffffff),
.button_text = RGBA(0xe5e5e5ff),
.button_text_hi = RGBA(0xffffffff),
.list = RGBA(0x282828ff),
.list_title = RGBA(0xffffffff),
.list_text = RGBA(0xb8b8b8ff),
- .list_text_hi = RGBA(0xffffffff),
+ .list_text_hi = RGBA(0xffaf29ff),
.panelcolors = {
.header = RGBA(0x424242cc),
.back = RGBA(0x333333b3),
diff --git a/release/scripts/addons b/release/scripts/addons
-Subproject 1470f353c65034db91131d21ab9c782d029a2ee
+Subproject ad6928706de2fa8f44fa35a275453c716d65e77
diff --git a/release/scripts/addons_contrib b/release/scripts/addons_contrib
-Subproject ffbaca558a27bab4716bcd51ca7ea1df8e4f4b1
+Subproject 70b649775eeeebedb02c1c7b7aa996a7f629417
diff --git a/release/scripts/modules/bl_i18n_utils/bl_extract_messages.py b/release/scripts/modules/bl_i18n_utils/bl_extract_messages.py
index 4aaa30a0508..2034b2ac55c 100644
--- a/release/scripts/modules/bl_i18n_utils/bl_extract_messages.py
+++ b/release/scripts/modules/bl_i18n_utils/bl_extract_messages.py
@@ -599,8 +599,8 @@ def dump_py_messages_from_files(msgs, reports, files, settings):
# We manually add funcs from bpy.app.translations
for func_id, func_ids in pgettext_variants:
func_translate_args[func_id] = pgettext_variants_args
- for func_id in func_ids:
- func_translate_args[func_id] = pgettext_variants_args
+ for sub_func_id in func_ids:
+ func_translate_args[sub_func_id] = pgettext_variants_args
# print(func_translate_args)
# Break recursive nodes look up on some kind of nodes.
diff --git a/release/scripts/modules/bl_i18n_utils/utils.py b/release/scripts/modules/bl_i18n_utils/utils.py
index 2cca4171193..7c22a86d687 100644
--- a/release/scripts/modules/bl_i18n_utils/utils.py
+++ b/release/scripts/modules/bl_i18n_utils/utils.py
@@ -1413,8 +1413,8 @@ class I18n:
"# and edit the translations by hand.",
"# Just carefully respect the format of the tuple!",
"",
- "# Tuple of tuples "
- "((msgctxt, msgid), (sources, gen_comments), (lang, translation, (is_fuzzy, comments)), ...)",
+ "# Tuple of tuples:",
+ "# ((msgctxt, msgid), (sources, gen_comments), (lang, translation, (is_fuzzy, comments)), ...)",
"translations_tuple = (",
]
# First gather all keys (msgctxt, msgid) - theoretically, all translations should share the same, but...
diff --git a/release/scripts/modules/rna_prop_ui.py b/release/scripts/modules/rna_prop_ui.py
index 202fd865723..8dda8c90f85 100644
--- a/release/scripts/modules/rna_prop_ui.py
+++ b/release/scripts/modules/rna_prop_ui.py
@@ -277,14 +277,15 @@ def draw(layout, context, context_member, property_type, use_edit=True):
else:
val_draw = val
- row = flow.row(align=True)
+ row = layout.row(align=True)
box = row.box()
if use_edit:
split = box.split(factor=0.75)
row = split.row(align=True)
else:
- row = box.row(align=True)
+ split = box.split(factor=1.00)
+ row = split.row(align=True)
row.alignment = 'RIGHT'
diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index 8b398d1541c..629bc24abb3 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -290,12 +290,14 @@ def _template_items_proportional_editing(*, connected=False):
# Tool System Templates
-def _template_items_tool_select(params, operator, cursor_operator):
+def _template_items_tool_select(params, operator, cursor_operator, *, extend):
if params.select_mouse == 'LEFTMOUSE':
# Immediate select without quick delay.
return [
(operator, {"type": 'LEFTMOUSE', "value": 'PRESS'},
{"properties": [("deselect_all", True)]}),
+ (operator, {"type": 'LEFTMOUSE', "value": 'PRESS', "shift": True},
+ {"properties": [(extend, True)]}),
]
else:
# For right mouse, set the cursor.
@@ -940,6 +942,7 @@ def km_view3d(params):
# Visibility.
("view3d.localview", {"type": 'NUMPAD_SLASH', "value": 'PRESS'}, None),
("view3d.localview", {"type": 'SLASH', "value": 'PRESS'}, None),
+ ("view3d.localview", {"type": 'MOUSESMARTZOOM', "value": 'ANY'}, None),
("view3d.localview_remove_from", {"type": 'M', "value": 'PRESS'}, None),
# Navigation.
("view3d.rotate", {"type": 'MIDDLEMOUSE', "value": 'PRESS'}, None),
@@ -2032,6 +2035,7 @@ def km_dopesheet(params):
op_menu_pie("VIEW3D_MT_proportional_editing_falloff_pie", {"type": 'O', "value": 'PRESS', "shift": True}),
("marker.add", {"type": 'M', "value": 'PRESS'}, None),
("marker.rename", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
+ ("marker.camera_bind", {"type": 'B', "value": 'PRESS', "ctrl": True}, None),
*_template_items_context_menu("DOPESHEET_MT_context_menu", params.context_menu_event),
])
@@ -2333,6 +2337,7 @@ def km_sequencercommon(_params):
items.extend([
*_template_space_region_type_toggle(
+ toolbar_key={"type": 'T', "value": 'PRESS'},
sidebar_key={"type": 'N', "value": 'PRESS'},
),
("wm.context_toggle", {"type": 'O', "value": 'PRESS', "shift": True},
@@ -2340,6 +2345,13 @@ def km_sequencercommon(_params):
("sequencer.view_toggle", {"type": 'TAB', "value": 'PRESS', "ctrl": True}, None),
])
+ if _params.select_mouse == 'LEFTMOUSE' and not _params.legacy:
+ # Quick switch to select tool, since left select can't easily
+ # select with any tool active.
+ items.extend([
+ op_tool_cycle("builtin.select_box", {"type": 'W', "value": 'PRESS'}),
+ ])
+
return keymap
@@ -2918,6 +2930,10 @@ def km_animation_channels(params):
*_template_items_select_actions(params, "anim.channels_select_all"),
("anim.channels_select_box", {"type": 'B', "value": 'PRESS'}, None),
("anim.channels_select_box", {"type": 'EVT_TWEAK_L', "value": 'ANY'}, None),
+ ("anim.channels_select_box", {"type": 'EVT_TWEAK_L', "value": 'ANY', "shift": True,},
+ {"properties": [("extend", True)]}),
+ ("anim.channels_select_box", {"type": 'EVT_TWEAK_L', "value": 'ANY', "ctrl": True,},
+ {"properties": [("deselect", True)]}),
# Delete.
("anim.channels_delete", {"type": 'X', "value": 'PRESS'}, None),
("anim.channels_delete", {"type": 'DEL', "value": 'PRESS'}, None),
@@ -5055,7 +5071,7 @@ def km_image_editor_tool_uv_select(params):
return (
"Image Editor Tool: Uv, Tweak",
{"space_type": 'IMAGE_EDITOR', "region_type": 'WINDOW'},
- {"items": _template_items_tool_select(params, "uv.select", "uv.cursor_set")},
+ {"items": _template_items_tool_select(params, "uv.select", "uv.cursor_set", extend="extend")},
)
@@ -5206,7 +5222,7 @@ def km_3d_view_tool_select(params):
return (
"3D View Tool: Tweak",
{"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
- {"items": _template_items_tool_select(params, "view3d.select", "view3d.cursor3d")},
+ {"items": _template_items_tool_select(params, "view3d.select", "view3d.cursor3d", extend="toggle")},
)
@@ -5913,7 +5929,7 @@ def km_3d_view_tool_edit_gpencil_select(params):
return (
"3D View Tool: Edit Gpencil, Tweak",
{"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
- {"items": _template_items_tool_select(params, "gpencil.select", "view3d.cursor3d")},
+ {"items": _template_items_tool_select(params, "gpencil.select", "view3d.cursor3d", extend="toggle")},
)
@@ -6018,7 +6034,7 @@ def km_3d_view_tool_sculpt_gpencil_select(params):
return (
"3D View Tool: Sculpt Gpencil, Tweak",
{"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
- {"items": _template_items_tool_select(params, "gpencil.select", "view3d.cursor3d")},
+ {"items": _template_items_tool_select(params, "gpencil.select", "view3d.cursor3d", extend="toggle")},
)
@@ -6049,6 +6065,39 @@ def km_3d_view_tool_sculpt_gpencil_select_lasso(params):
)
+def km_sequencer_editor_tool_select(params):
+ return (
+ "Sequencer Tool: Select",
+ {"space_type": 'SEQUENCE_EDITOR', "region_type": 'WINDOW'},
+ {"items": [
+ ("sequencer.select", {"type": params.select_mouse, "value": 'PRESS'},
+ {"properties": [("extend", False), ("deselect_all", not params.legacy)]}),
+ ]},
+ )
+
+
+def km_sequencer_editor_tool_select_box(params):
+ return (
+ "Sequencer Tool: Select Box",
+ {"space_type": 'SEQUENCE_EDITOR', "region_type": 'WINDOW'},
+ {"items": _template_items_tool_select_actions_simple(
+ "sequencer.select_box", type=params.tool_tweak, value='ANY',
+ properties=[("tweak", True)],
+ )},
+ )
+
+
+def km_sequencer_editor_tool_cut(params):
+ return (
+ "Sequencer Tool: Cut",
+ {"space_type": 'SEQUENCE_EDITOR', "region_type": 'WINDOW'},
+ {"items":[
+ ("sequencer.cut", {"type": 'LEFTMOUSE', "value": 'PRESS'},
+ {"properties": [("type", 'SOFT'), ("side", 'NO_CHANGE'), ("use_cursor_position", True), ("ignore_selection", True)]}),
+ ]},
+ )
+
+
# ------------------------------------------------------------------------------
# Full Configuration
@@ -6262,6 +6311,9 @@ def generate_keymaps(params=None):
km_3d_view_tool_sculpt_gpencil_select_box(params),
km_3d_view_tool_sculpt_gpencil_select_circle(params),
km_3d_view_tool_sculpt_gpencil_select_lasso(params),
+ km_sequencer_editor_tool_select(params),
+ km_sequencer_editor_tool_select_box(params),
+ km_sequencer_editor_tool_cut(params),
]
# ------------------------------------------------------------------------------
diff --git a/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py b/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py
index 2af3bc4898c..735aa560356 100644
--- a/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py
+++ b/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py
@@ -39,6 +39,9 @@ class Params:
use_mouse_emulate_3_button=False,
):
self.tool_mouse = 'LEFTMOUSE'
+ self.select_mouse = 'LEFTMOUSE'
+ self.select_mouse_value = 'CLICK'
+ self.select_tweak = 'EVT_TWEAK_L'
self.tool_tweak = 'EVT_TWEAK_L'
self.action_tweak = 'EVT_TWEAK_R'
self.use_mouse_emulate_3_button = use_mouse_emulate_3_button
@@ -135,8 +138,13 @@ def _template_items_basic_tools(*, connected=False):
op_tool_cycle("builtin.cursor", {"type": 'C', "value": 'PRESS'}),
]
-def _template_items_tool_select(params, operator, cursor_operator):
- return [(operator, {"type": 'LEFTMOUSE', "value": 'PRESS'}, None)]
+def _template_items_tool_select(params, operator, *, extend):
+ return [
+ (operator, {"type": 'LEFTMOUSE', "value": 'PRESS'},
+ {"properties": [("deselect_all", True)]}),
+ (operator, {"type": 'LEFTMOUSE', "value": 'PRESS', "shift": True},
+ {"properties": [(extend, True)]}),
+ ]
def _template_items_tool_select_actions(operator, *, type, value):
@@ -622,6 +630,7 @@ def km_view3d(params):
("wm.search_menu", {"type": 'TAB', "value": 'PRESS'}, None),
# Visibility.
("view3d.localview", {"type": 'I', "value": 'PRESS', "shift": True}, None),
+ ("view3d.localview", {"type": 'MOUSESMARTZOOM', "value": 'ANY'}, None),
op_menu_pie("VIEW3D_MT_view_pie", {"type": 'V', "value": 'PRESS'}),
# Navigation.
("view3d.rotate", {"type": 'LEFTMOUSE', "value": 'PRESS', "alt": True}, None),
@@ -2182,8 +2191,11 @@ def km_animation_channels(params):
("anim.channels_select_all", {"type": 'A', "value": 'PRESS', "ctrl": True}, {"properties": [("action", 'SELECT')]}),
("anim.channels_select_all", {"type": 'A', "value": 'PRESS', "ctrl": True, "shift": True}, {"properties": [("action", 'DESELECT')]}),
("anim.channels_select_all", {"type": 'I', "value": 'PRESS', "ctrl": True}, {"properties": [("action", 'INVERT')]}),
- ("anim.channels_select_box", {"type": 'B', "value": 'PRESS'}, None),
("anim.channels_select_box", {"type": 'EVT_TWEAK_L', "value": 'ANY'}, None),
+ ("anim.channels_select_box", {"type": 'EVT_TWEAK_L', "value": 'ANY', "shift": True,},
+ {"properties": [("extend", True)]}),
+ ("anim.channels_select_box", {"type": 'EVT_TWEAK_L', "value": 'ANY', "ctrl": True,},
+ {"properties": [("deselect", True)]}),
# Delete.
("anim.channels_delete", {"type": 'BACK_SPACE', "value": 'PRESS'}, None),
("anim.channels_delete", {"type": 'DEL', "value": 'PRESS'}, None),
@@ -3565,79 +3577,19 @@ def km_transform_modal_map(_params):
# Named are auto-generated based on the tool name and it's toolbar.
-def km_image_editor_tool_uv_move(params):
- return (
- "Image Editor Tool: Uv, Move",
- {"space_type": 'IMAGE_EDITOR', "region_type": 'WINDOW'},
- {"items": [
- ("transform.translate", {"type": 'EVT_TWEAK_M', "value": 'ANY'},
- {"properties": [("release_confirm", True)]}),
- ]},
- )
-
-
-def km_image_editor_tool_uv_rotate(params):
- return (
- "Image Editor Tool: Uv, Rotate",
- {"space_type": 'IMAGE_EDITOR', "region_type": 'WINDOW'},
- {"items": [
- ("transform.rotate", {"type": 'EVT_TWEAK_M', "value": 'ANY'},
- {"properties": [("release_confirm", True)]}),
- ]},
- )
-
-
-def km_image_editor_tool_uv_scale(params):
- return (
- "Image Editor Tool: Uv, Scale",
- {"space_type": 'IMAGE_EDITOR', "region_type": 'WINDOW'},
- {"items": [
- ("transform.resize", {"type": 'EVT_TWEAK_M', "value": 'ANY'},
- {"properties": [("release_confirm", True)]}),
- ]},
- )
-
-
-def km_3d_view_tool_move(params):
- return (
- "3D View Tool: Move",
- {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
- {"items": [
- ("transform.translate", {"type": 'EVT_TWEAK_M', "value": 'ANY'},
- {"properties": [("release_confirm", True)]}),
- ]},
- )
-
-
-def km_3d_view_tool_rotate(params):
+def km_3d_view_tool_select(params):
return (
- "3D View Tool: Rotate",
+ "3D View Tool: Tweak",
{"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
- {"items": [
- ("transform.rotate", {"type": 'EVT_TWEAK_M', "value": 'ANY'},
- {"properties": [("release_confirm", True)]}),
- ]},
+ {"items": _template_items_tool_select(params, "view3d.select", extend="toggle")},
)
-def km_3d_view_tool_scale(params):
+def km_image_editor_tool_uv_select(params):
return (
- "3D View Tool: Scale",
- {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
- {"items": [
- ("transform.resize", {"type": 'EVT_TWEAK_M', "value": 'ANY'},
- {"properties": [("release_confirm", True)]}),
- ]},
- )
-
-
-def km_3d_view_tool_transform(params):
- return (
- "3D View Tool: Transform",
- {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
- {"items": [
- ("transform.from_gizmo", {"type": 'EVT_TWEAK_M', "value": 'ANY'}, None),
- ]},
+ "Image Editor Tool: Uv, Tweak",
+ {"space_type": 'IMAGE_EDITOR', "region_type": 'WINDOW'},
+ {"items": _template_items_tool_select(params, "uv.select", extend="extend")},
)
@@ -3759,14 +3711,8 @@ def generate_keymaps_impl(params=None):
km_generic_gizmo_maybe_drag(params),
# Tool System.
- km_image_editor_tool_uv_move(params),
- km_image_editor_tool_uv_rotate(params),
- km_image_editor_tool_uv_scale(params),
- km_3d_view_tool_transform(params),
- km_3d_view_tool_move(params),
- km_3d_view_tool_rotate(params),
- km_3d_view_tool_scale(params),
-
+ km_3d_view_tool_select(params),
+ km_image_editor_tool_uv_select(params),
]
diff --git a/release/scripts/startup/bl_operators/vertexpaint_dirt.py b/release/scripts/startup/bl_operators/vertexpaint_dirt.py
index 39d792bd557..a249599b5d7 100644
--- a/release/scripts/startup/bl_operators/vertexpaint_dirt.py
+++ b/release/scripts/startup/bl_operators/vertexpaint_dirt.py
@@ -37,6 +37,20 @@ def applyVertexDirt(me, blur_iterations, blur_strength, clamp_dirt, clamp_clean,
from math import acos
import array
+ # We simulate the accumulation of dirt in the creases of geometric surfaces
+ # by comparing the vertex normal to the average direction of all vertices
+ # connected to that vertex. We can also simulate surfaces being buffed or
+ # worn by testing protruding surfaces.
+ #
+ # So if the angle between the normal and geometric direction is:
+ # < 90 - dirt has accumulated in the crease
+ # > 90 - surface has been worn or buffed
+ # ~ 90 - surface is flat and is generally unworn and clean
+ #
+ # This method is limited by the complexity or lack there of in the geometry.
+ #
+ # Original code and method by Keith "Wahooney" Boshoff.
+
vert_tone = array.array("f", [0.0]) * len(me.vertices)
# create lookup table for each vertex's connected vertices (via edges)
diff --git a/release/scripts/startup/bl_ui/properties_data_empty.py b/release/scripts/startup/bl_ui/properties_data_empty.py
index dc9c170c65b..88fdaae0433 100644
--- a/release/scripts/startup/bl_ui/properties_data_empty.py
+++ b/release/scripts/startup/bl_ui/properties_data_empty.py
@@ -37,7 +37,6 @@ class DATA_PT_empty(DataButtonsPanel, Panel):
def draw(self, context):
layout = self.layout
layout.use_property_split = True
- layout.use_property_decorate = False
ob = context.object
@@ -45,12 +44,6 @@ class DATA_PT_empty(DataButtonsPanel, Panel):
layout.prop(ob, "empty_display_size", text="Size")
if ob.empty_display_type == 'IMAGE':
- layout.prop(ob, "use_empty_image_alpha")
-
- col = layout.column()
- col.active = ob.use_empty_image_alpha
- col.prop(ob, "color", text="Opacity", index=3, slider=True)
-
col = layout.column(align=True)
col.prop(ob, "empty_image_offset", text="Offset X", index=0)
col.prop(ob, "empty_image_offset", text="Y", index=1)
@@ -63,6 +56,30 @@ class DATA_PT_empty(DataButtonsPanel, Panel):
col.prop(ob, "show_empty_image_only_axis_aligned")
+class DATA_PT_empty_alpha(DataButtonsPanel, Panel):
+ bl_label = "Transparency"
+ bl_parent_id = "DATA_PT_empty"
+
+ @classmethod
+ def poll(cls, context):
+ ob = context.object
+ return (ob and ob.type == 'EMPTY' and ob.empty_display_type == 'IMAGE')
+
+ def draw_header(self, context):
+ ob = context.object
+
+ self.layout.prop(ob, "use_empty_image_alpha", text="")
+
+ def draw(self, context):
+ layout = self.layout
+ layout.use_property_split = True
+
+ ob = context.object
+
+ layout.active = ob.use_empty_image_alpha
+ layout.prop(ob, "color", text="Opacity", index=3, slider=True)
+
+
class DATA_PT_empty_image(DataButtonsPanel, Panel):
bl_label = "Image"
@@ -81,6 +98,7 @@ class DATA_PT_empty_image(DataButtonsPanel, Panel):
classes = (
DATA_PT_empty,
+ DATA_PT_empty_alpha,
DATA_PT_empty_image,
)
diff --git a/release/scripts/startup/bl_ui/properties_data_light.py b/release/scripts/startup/bl_ui/properties_data_light.py
index 6f730cf3307..cf894b48e1e 100644
--- a/release/scripts/startup/bl_ui/properties_data_light.py
+++ b/release/scripts/startup/bl_ui/properties_data_light.py
@@ -134,17 +134,15 @@ class DATA_PT_EEVEE_light_distance(DataButtonsPanel, Panel):
light = context.light
layout = self.layout
- layout.active = light.use_shadow
layout.prop(light, "use_custom_distance", text="")
def draw(self, context):
layout = self.layout
light = context.light
+ layout.active = light.use_custom_distance
layout.use_property_split = True
- col = layout.column()
-
- col.prop(light, "cutoff_distance", text="Distance")
+ layout.prop(light, "cutoff_distance", text="Distance")
class DATA_PT_EEVEE_shadow(DataButtonsPanel, Panel):
@@ -311,7 +309,8 @@ class DATA_PT_falloff_curve(DataButtonsPanel, Panel):
def draw(self, context):
light = context.light
- self.layout.template_curve_mapping(light, "falloff_curve", use_negative_slope=True)
+ self.layout.template_curve_mapping(
+ light, "falloff_curve", use_negative_slope=True)
class DATA_PT_custom_props_light(DataButtonsPanel, PropertyPanel, Panel):
diff --git a/release/scripts/startup/bl_ui/properties_data_modifier.py b/release/scripts/startup/bl_ui/properties_data_modifier.py
index d4b2c39bd5e..330f05205fc 100644
--- a/release/scripts/startup/bl_ui/properties_data_modifier.py
+++ b/release/scripts/startup/bl_ui/properties_data_modifier.py
@@ -293,7 +293,9 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
col = split.column()
col.label(text="Vertex Group:")
- col.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
+ row = col.row(align=True)
+ row.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
+ row.prop(md, "invert_vertex_group", text="", icon='ARROW_LEFTRIGHT')
col = split.column()
col.label(text="Control Object:")
col.prop(md, "object", text="")
@@ -379,7 +381,9 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
col.label(text="Space:")
col.prop(md, "space", text="")
col.label(text="Vertex Group:")
- col.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
+ row = col.row(align=True)
+ row.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
+ row.prop(md, "invert_vertex_group", text="", icon='ARROW_LEFTRIGHT')
col = split.column(align=True)
col.active = has_texture
@@ -528,7 +532,9 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
col = split.column()
col.label(text="Vertex Group:")
- col.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
+ row = col.row(align=True)
+ row.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
+ row.prop(md, "invert_vertex_group", text="", icon='ARROW_LEFTRIGHT')
layout.separator()
layout.prop(md, "strength", slider=True)
@@ -1135,7 +1141,9 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
col = split.column()
col.label(text="To:")
col.prop(md, "object_to", text="")
- col.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
+ row = col.row(align=True)
+ row.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
+ row.prop(md, "invert_vertex_group", text="", icon='ARROW_LEFTRIGHT')
col = layout.column()
diff --git a/release/scripts/startup/bl_ui/properties_paint_common.py b/release/scripts/startup/bl_ui/properties_paint_common.py
index 8b4f86b2879..ec3dec6c54d 100644
--- a/release/scripts/startup/bl_ui/properties_paint_common.py
+++ b/release/scripts/startup/bl_ui/properties_paint_common.py
@@ -121,7 +121,7 @@ class UnifiedPaintPanel:
if unified_name and not header:
# NOTE: We don't draw UnifiedPaintSettings in the header to reduce clutter. D5928#136281
- row.prop(ups, unified_name, text="", icon="WORLD")
+ row.prop(ups, unified_name, text="", icon="BRUSHES_ALL")
return row
diff --git a/release/scripts/startup/bl_ui/space_info.py b/release/scripts/startup/bl_ui/space_info.py
index 82ed701aa4c..cd65980fc0d 100644
--- a/release/scripts/startup/bl_ui/space_info.py
+++ b/release/scripts/startup/bl_ui/space_info.py
@@ -92,7 +92,7 @@ class INFO_MT_area(Menu):
layout.separator()
- layout.operator("screen.area_dupli", icon='DUPLICATE')
+ layout.operator("screen.area_dupli", icon='WINDOW')
layout.separator()
diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py
index 097564444d0..af0c23e7892 100644
--- a/release/scripts/startup/bl_ui/space_sequencer.py
+++ b/release/scripts/startup/bl_ui/space_sequencer.py
@@ -30,6 +30,9 @@ from bpy.app.translations import (
from bl_ui.properties_grease_pencil_common import (
AnnotationDataPanel,
)
+from bl_ui.space_toolsystem_common import (
+ ToolActivePanelHelper,
+)
from rna_prop_ui import PropertyPanel
@@ -89,6 +92,35 @@ def draw_color_balance(layout, color_balance):
split.template_color_picker(color_balance, "gain", value_slider=True, lock_luminosity=True, cubic=True)
+class SEQUENCER_PT_active_tool(ToolActivePanelHelper, Panel):
+ bl_space_type = 'SEQUENCE_EDITOR'
+ bl_region_type = 'UI'
+ bl_category = "Tool"
+
+
+class SEQUENCER_HT_tool_header(Header):
+ bl_space_type = 'SEQUENCE_EDITOR'
+ bl_region_type = 'TOOL_HEADER'
+
+ def draw(self, context):
+ layout = self.layout
+
+ layout.template_header()
+
+ self.draw_tool_settings(context)
+
+ # TODO: options popover.
+
+ def draw_tool_settings(self, context):
+ layout = self.layout
+
+ # Active Tool
+ # -----------
+ from bl_ui.space_toolsystem_common import ToolSelectPanelHelper
+ tool = ToolSelectPanelHelper.draw_active_tool_header(context, layout)
+ tool_mode = context.mode if tool is None else tool.mode
+
+
class SEQUENCER_HT_header(Header):
bl_space_type = 'SEQUENCE_EDITOR'
@@ -97,7 +129,10 @@ class SEQUENCER_HT_header(Header):
st = context.space_data
- layout.template_header()
+ show_region_tool_header = st.show_region_tool_header
+
+ if not show_region_tool_header:
+ layout.template_header()
layout.prop(st, "view_type", text="")
@@ -226,8 +261,12 @@ class SEQUENCER_MT_view(Menu):
# wm_keymap_item_find_props() (see #32595).
layout.operator_context = 'INVOKE_REGION_PREVIEW'
layout.prop(st, "show_region_ui")
+ layout.prop(st, "show_region_toolbar")
layout.operator_context = 'INVOKE_DEFAULT'
+ if is_sequencer_view:
+ layout.prop(st, "show_region_hud")
+
if st.view_type == 'SEQUENCER':
layout.prop(st, "show_backdrop", text="Preview as Backdrop")
@@ -268,6 +307,7 @@ class SEQUENCER_MT_view(Menu):
layout.operator_context = 'INVOKE_DEFAULT'
layout.prop(st, "show_seconds")
+ layout.prop(st, "show_locked_time")
layout.prop(st, "show_strip_offset")
layout.separator()
layout.prop(st, "show_markers")
@@ -2128,6 +2168,7 @@ class SEQUENCER_PT_custom_props(SequencerButtonsPanel, PropertyPanel, Panel):
classes = (
SEQUENCER_MT_change,
+ SEQUENCER_HT_tool_header,
SEQUENCER_HT_header,
SEQUENCER_MT_editor_menus,
SEQUENCER_MT_range,
@@ -2153,7 +2194,7 @@ classes = (
SEQUENCER_MT_strip_input,
SEQUENCER_MT_strip_lock_mute,
SEQUENCER_MT_context_menu,
-
+ SEQUENCER_PT_active_tool,
SEQUENCER_PT_strip,
SEQUENCER_PT_effect,
diff --git a/release/scripts/startup/bl_ui/space_text.py b/release/scripts/startup/bl_ui/space_text.py
index 81ccc9216a1..b7c5dcd5437 100644
--- a/release/scripts/startup/bl_ui/space_text.py
+++ b/release/scripts/startup/bl_ui/space_text.py
@@ -30,7 +30,7 @@ class TEXT_HT_header(Header):
st = context.space_data
text = st.text
-
+ is_syntax_highlight_supported = st.is_syntax_highlight_supported()
layout.template_header()
TEXT_MT_editor_menus.draw_collapsible(context, layout)
@@ -43,7 +43,18 @@ class TEXT_HT_header(Header):
layout.separator_spacer()
row = layout.row(align=True)
- row.template_ID(st, "text", new="text.new", unlink="text.unlink", open="text.open")
+ row.template_ID(st, "text", new="text.new",
+ unlink="text.unlink", open="text.open")
+
+ if text:
+ is_osl = text.name.endswith((".osl", ".osl"))
+ if is_osl:
+ row.operator("node.shader_script_update",
+ text="", icon='FILE_REFRESH')
+ else:
+ row = layout.row()
+ row.active = is_syntax_highlight_supported
+ row.operator("text.run_script", text="", icon='PLAY')
layout.separator_spacer()
@@ -51,28 +62,10 @@ class TEXT_HT_header(Header):
row.prop(st, "show_line_numbers", text="")
row.prop(st, "show_word_wrap", text="")
- is_syntax_highlight_supported = st.is_syntax_highlight_supported()
syntax = row.row(align=True)
syntax.active = is_syntax_highlight_supported
syntax.prop(st, "show_syntax_highlight", text="")
- if text:
- text_name = text.name
- is_osl = text_name.endswith((".osl", ".oso"))
-
- row = layout.row()
- if is_osl:
- row = layout.row()
- row.operator("node.shader_script_update")
- else:
- row = layout.row()
- row.active = text_name.endswith(".py")
- row.prop(text, "use_module")
-
- row = layout.row()
- row.active = is_syntax_highlight_supported
- row.operator("text.run_script")
-
class TEXT_HT_footer(Header):
bl_space_type = 'TEXT_EDITOR'
diff --git a/release/scripts/startup/bl_ui/space_toolsystem_common.py b/release/scripts/startup/bl_ui/space_toolsystem_common.py
index 05785b85dfc..4dc724299f0 100644
--- a/release/scripts/startup/bl_ui/space_toolsystem_common.py
+++ b/release/scripts/startup/bl_ui/space_toolsystem_common.py
@@ -390,6 +390,14 @@ class ToolSelectPanelHelper:
if tool is not None:
tool.refresh_from_context()
return tool
+ elif space_type == 'SEQUENCE_EDITOR':
+ space_data = context.space_data
+ if mode is None:
+ mode = space_data.view_type
+ tool = context.workspace.tools.from_space_sequencer(mode, create=create)
+ if tool is not None:
+ tool.refresh_from_context()
+ return tool
return None
@staticmethod
@@ -656,6 +664,8 @@ class ToolSelectPanelHelper:
return space_type, space_data.mode
elif space_type == 'NODE_EDITOR':
return space_type, None
+ elif space_type == 'SEQUENCE_EDITOR':
+ return space_type, context.space_data.view_type
else:
return None, None
diff --git a/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py b/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py
index 0759d37e2b8..c1ad196b555 100644
--- a/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py
@@ -134,6 +134,7 @@ class _defs_view3d_generic:
idname="builtin.measure",
label="Measure",
description=description,
+ cursor='CROSSHAIR',
icon="ops.view3d.ruler",
widget="VIEW3D_GGT_ruler",
keymap="3D View Tool: Measure",
@@ -375,6 +376,7 @@ class _defs_view3d_select:
label="Select Lasso",
icon="ops.generic.select_lasso",
widget=None,
+ cursor='DEFAULT',
keymap="3D View Tool: Select Lasso",
draw_settings=draw_settings,
)
@@ -399,6 +401,7 @@ class _defs_view3d_select:
label="Select Circle",
icon="ops.generic.select_circle",
widget=None,
+ cursor='DEFAULT',
keymap="3D View Tool: Select Circle",
draw_settings=draw_settings,
draw_cursor=draw_cursor,
@@ -1707,6 +1710,51 @@ class _defs_node_edit:
keymap="Node Tool: Links Cut",
)
+class _defs_sequencer_generic:
+
+ @ToolDef.from_fn
+ def cut():
+ def draw_settings(_context, layout, tool):
+ props = tool.operator_properties("sequencer.cut")
+ row = layout.row()
+ row.use_property_split = False
+ row.prop(props, "type", expand=True)
+ return dict(
+ idname="builtin.cut",
+ label="Cut",
+ icon="ops.mesh.knife_tool",
+ widget=None,
+ keymap="Sequencer Tool: Cut",
+ draw_settings=draw_settings,
+ )
+
+class _defs_sequencer_select:
+ @ToolDef.from_fn
+ def select():
+ return dict(
+ idname="builtin.select",
+ label="Select",
+ icon="ops.generic.select",
+ widget=None,
+ keymap="Sequencer Tool: Select",
+ )
+ @ToolDef.from_fn
+ def box():
+ def draw_settings(_context, layout, tool):
+ props = tool.operator_properties("sequencer.select_box")
+ row = layout.row()
+ row.use_property_split = False
+ row.prop(props, "mode", text="", expand=True, icon_only=True)
+ pass
+ return dict(
+ idname="builtin.select_box",
+ label="Select Box",
+ icon="ops.generic.select_box",
+ widget=None,
+ keymap="Sequencer Tool: Select Box",
+ draw_settings=draw_settings,
+ )
+
class IMAGE_PT_tools_active(ToolSelectPanelHelper, Panel):
bl_space_type = 'IMAGE_EDITOR'
@@ -2158,12 +2206,71 @@ class VIEW3D_PT_tools_active(ToolSelectPanelHelper, Panel):
*_tools_annotate,
],
}
+class SEQUENCER_PT_tools_active(ToolSelectPanelHelper, Panel):
+ bl_space_type = 'SEQUENCE_EDITOR'
+ bl_region_type = 'TOOLS'
+ bl_label = "Tools" # not visible
+ bl_options = {'HIDE_HEADER'}
+
+ # Satisfy the 'ToolSelectPanelHelper' API.
+ keymap_prefix = "Sequence Editor Tool:"
+ # Default group to use as a fallback.
+ tool_fallback_id = "builtin.select"
+
+ @classmethod
+ def tools_from_context(cls, context, mode=None):
+ if mode is None:
+ if context.space_data:
+ mode = context.space_data.view_type
+ for tools in (cls._tools[None], cls._tools.get(mode, ())):
+ for item in tools:
+ if not (type(item) is ToolDef) and callable(item):
+ yield from item(context)
+ else:
+ yield item
+
+ @classmethod
+ def tools_all(cls):
+ yield from cls._tools.items()
+
+ _tools_select = (
+ (
+ _defs_sequencer_select.select,
+ _defs_sequencer_select.box,
+ ),
+ )
+ _tools_annotate = (
+ (
+ _defs_annotate.scribble,
+ _defs_annotate.line,
+ _defs_annotate.poly,
+ _defs_annotate.eraser,
+ ),
+ )
+
+ _tools = {
+ None: [
+ ],
+ 'PREVIEW': [
+ *_tools_annotate,
+ ],
+ 'SEQUENCER': [
+ *_tools_select,
+ _defs_sequencer_generic.cut,
+ ],
+ 'SEQUENCER_PREVIEW': [
+ *_tools_select,
+ *_tools_annotate,
+ _defs_sequencer_generic.cut,
+ ],
+ }
classes = (
IMAGE_PT_tools_active,
NODE_PT_tools_active,
VIEW3D_PT_tools_active,
+ SEQUENCER_PT_tools_active,
)
if __name__ == "__main__": # only for live edit.
diff --git a/release/scripts/startup/bl_ui/space_userpref.py b/release/scripts/startup/bl_ui/space_userpref.py
index 4f35bcc29df..ad5e7b5442c 100644
--- a/release/scripts/startup/bl_ui/space_userpref.py
+++ b/release/scripts/startup/bl_ui/space_userpref.py
@@ -997,6 +997,7 @@ class PreferenceThemeSpacePanel:
"freestyle_face_mark",
"split_normal",
"bone_solid",
+ "bone_locked_weight",
"paint_curve_pivot",
},
'GRAPH_EDITOR': {
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index 3a3869068b0..6ca6cb7b544 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -2937,6 +2937,10 @@ class VIEW3D_MT_sculpt(Menu):
layout.menu("VIEW3D_MT_sculpt_set_pivot", text="Set Pivot")
+ layout.separator()
+
+ layout.operator("sculpt.optimize")
+
class VIEW3D_MT_mask(Menu):
bl_label = "Mask"
diff --git a/release/scripts/startup/bl_ui/space_view3d_toolbar.py b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
index 011c2a8b39a..c074069af06 100644
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@ -560,12 +560,23 @@ class VIEW3D_PT_slots_projectpaint(View3DPanel, Panel):
layout.operator("image.save_all_modified", text="Save All Images", icon='FILE_TICK')
+class VIEW3D_PT_mask(View3DPanel, Panel):
+ bl_category = "Tool"
+ bl_context = ".imagepaint" # dot on purpose (access from topbar)
+ bl_label = "Masking"
+ bl_options = {'DEFAULT_CLOSED'}
+
+ def draw(self, context):
+ pass
+
+
# TODO, move to space_view3d.py
class VIEW3D_PT_stencil_projectpaint(View3DPanel, Panel):
bl_category = "Tool"
bl_context = ".imagepaint" # dot on purpose (access from topbar)
- bl_label = "Mask"
+ bl_label = "Stencil Mask"
bl_options = {'DEFAULT_CLOSED'}
+ bl_parent_id = "VIEW3D_PT_mask"
bl_ui_units_x = 14
@classmethod
@@ -799,38 +810,14 @@ class VIEW3D_PT_sculpt_dyntopo(Panel, View3DPaintPanel):
sub.prop(sculpt, "detail_refine_method", text="Refine Method")
sub.prop(sculpt, "detail_type_method", text="Detailing")
- col.prop(sculpt, "use_smooth_shading")
-
-
-class VIEW3D_PT_sculpt_dyntopo_remesh(Panel, View3DPaintPanel):
- bl_context = ".sculpt_mode" # dot on purpose (access from topbar)
- bl_label = "Remesh"
- bl_parent_id = "VIEW3D_PT_sculpt_dyntopo"
- bl_options = {'DEFAULT_CLOSED'}
- bl_ui_units_x = 12
-
- def draw(self, context):
- layout = self.layout
- layout.use_property_split = True
- layout.use_property_decorate = False
+ if sculpt.detail_type_method in {'CONSTANT', 'MANUAL'}:
+ col.operator("sculpt.detail_flood_fill")
- tool_settings = context.tool_settings
- sculpt = tool_settings.sculpt
+ col.prop(sculpt, "use_smooth_shading")
- col = layout.column()
- col.active = context.sculpt_object.use_dynamic_topology_sculpting
- col.prop(sculpt, "symmetrize_direction")
- flow = layout.grid_flow(row_major=True, columns=0, even_columns=True, even_rows=False, align=False)
- col = flow.column()
- col.operator("sculpt.symmetrize")
- col = flow.column()
- col.operator("sculpt.optimize")
- if sculpt.detail_type_method in {'CONSTANT', 'MANUAL'}:
- col = flow.column()
- col.operator("sculpt.detail_flood_fill")
class VIEW3D_PT_sculpt_voxel_remesh(Panel, View3DPaintPanel):
@@ -979,6 +966,13 @@ class VIEW3D_PT_sculpt_symmetry(Panel, View3DPaintPanel):
layout.column().prop(sculpt, "radial_symmetry", text="Radial")
layout.column().prop(sculpt, "tile_offset", text="Tile Offset")
+ layout.separator()
+
+ col = layout.column()
+
+ col.prop(sculpt, "symmetrize_direction")
+ col.operator("sculpt.symmetrize")
+
class VIEW3D_PT_sculpt_symmetry_for_topbar(Panel):
bl_space_type = 'TOPBAR'
@@ -1191,7 +1185,7 @@ class VIEW3D_PT_tools_imagepaint_options(View3DPaintPanel, Panel):
class VIEW3D_PT_tools_imagepaint_options_cavity(View3DPaintPanel, Panel):
bl_context = ".imagepaint" # dot on purpose (access from topbar)
bl_label = "Cavity Mask"
- bl_parent_id = "VIEW3D_PT_tools_imagepaint_options"
+ bl_parent_id = "VIEW3D_PT_mask"
bl_options = {'DEFAULT_CLOSED'}
def draw_header(self, context):
@@ -1876,7 +1870,7 @@ classes = (
VIEW3D_PT_tools_curveedit_options_stroke,
VIEW3D_PT_tools_armatureedit_options,
VIEW3D_PT_tools_posemode_options,
-
+
VIEW3D_PT_slots_projectpaint,
VIEW3D_PT_tools_brush_select,
VIEW3D_PT_tools_brush_settings,
@@ -1886,7 +1880,6 @@ classes = (
VIEW3D_PT_tools_brush_clone,
TEXTURE_UL_texpaintslots,
VIEW3D_MT_tools_projectpaint_uvlayer,
- VIEW3D_PT_stencil_projectpaint,
VIEW3D_PT_tools_brush_texture,
VIEW3D_PT_tools_mask_texture,
VIEW3D_PT_tools_brush_stroke,
@@ -1897,7 +1890,6 @@ classes = (
VIEW3D_PT_tools_brush_display,
VIEW3D_PT_sculpt_dyntopo,
- VIEW3D_PT_sculpt_dyntopo_remesh,
VIEW3D_PT_sculpt_voxel_remesh,
VIEW3D_PT_sculpt_symmetry,
VIEW3D_PT_sculpt_symmetry_for_topbar,
@@ -1912,9 +1904,13 @@ classes = (
VIEW3D_PT_tools_vertexpaint_symmetry_for_topbar,
VIEW3D_PT_tools_vertexpaint_options,
+ VIEW3D_PT_mask,
+ VIEW3D_PT_stencil_projectpaint,
+ VIEW3D_PT_tools_imagepaint_options_cavity,
+
VIEW3D_PT_tools_imagepaint_symmetry,
VIEW3D_PT_tools_imagepaint_options,
- VIEW3D_PT_tools_imagepaint_options_cavity,
+
VIEW3D_PT_tools_imagepaint_options_external,
VIEW3D_MT_tools_projectpaint_stencil,