diff -Nru tiled-qt-1.2.0/appveyor.yml tiled-qt-1.2.1+dfsg.1/appveyor.yml --- tiled-qt-1.2.0/appveyor.yml 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/appveyor.yml 2018-11-14 09:48:34.000000000 +0000 @@ -1,5 +1,5 @@ clone_depth: 200 -version: '1.1.{build}' +version: '1.2.{build}' cache: - C:\Users\appveyor\.m2 @@ -7,14 +7,14 @@ - C:\ProgramData\chocolatey\lib -> appveyor.yml environment: - my_secret: - secure: +3IhWT10lCSC4GE4gGfWt8WiZdIXuMUfaImgvQUullg= + BUTLER_API_KEY: + secure: j7JM5L6KeqpnQukzJLsm7J6oV92SpmyEZLSoED1pZ3gQ79VIkdxtbQmTkqUNZPsz matrix: - - QTDIR: C:\Qt\5.9.5\msvc2013_64 + - QTDIR: C:\Qt\5.9\msvc2013_64 PYTHONHOME: C:\Python37-x64 PUSH_RELEASE: true TILED_ITCH_CHANNEL: windows-64bit - - QTDIR: C:\Qt\5.9.5\mingw53_32 + - QTDIR: C:\Qt\5.9\mingw53_32 PYTHONHOME: C:\Python37 MINGW: C:\Qt\Tools\mingw530_32 PUSH_RELEASE: true @@ -28,7 +28,7 @@ configuration: Release install: - - choco install -y qbs --version 1.12.0 + - choco install -y qbs --version 1.12.1 - nuget install secure-file -ExcludeVersion - set PATH=%PATH%;%QTDIR%\bin;%MINGW%\bin diff -Nru tiled-qt-1.2.0/debian/changelog tiled-qt-1.2.1+dfsg.1/debian/changelog --- tiled-qt-1.2.0/debian/changelog 2018-10-05 11:03:34.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/debian/changelog 2018-11-27 22:41:14.000000000 +0000 @@ -1,3 +1,11 @@ +tiled-qt (1.2.1+dfsg.1-1) unstable; urgency=low + + * New upstream release + * Bump Standards-Version to 4.2.1: nothing needs to be changed + * Repack upstream tarball to remove .dll and .lib + + -- Ying-Chun Liu (PaulLiu) Wed, 28 Nov 2018 06:41:14 +0800 + tiled-qt (1.2.0-1) unstable; urgency=low * New upstream release diff -Nru tiled-qt-1.2.0/debian/control tiled-qt-1.2.1+dfsg.1/debian/control --- tiled-qt-1.2.0/debian/control 2018-05-02 19:05:28.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/debian/control 2018-11-27 22:41:14.000000000 +0000 @@ -9,7 +9,7 @@ qttools5-dev-tools, xsltproc, zlib1g-dev -Standards-Version: 4.1.4 +Standards-Version: 4.2.1 Homepage: http://www.mapeditor.org/ Package: tiled diff -Nru tiled-qt-1.2.0/debian/copyright tiled-qt-1.2.1+dfsg.1/debian/copyright --- tiled-qt-1.2.0/debian/copyright 2015-10-18 15:46:12.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/debian/copyright 2018-11-27 20:19:33.000000000 +0000 @@ -2,6 +2,7 @@ Upstream-Name: tiled Upstream-Contact: Thorbjørn Lindeijer Source: http://www.mapeditor.org/ +Files-Excluded: *.dll *.lib Files: * Copyright: 2009 Tiled (Qt) developers diff -Nru tiled-qt-1.2.0/debian/watch tiled-qt-1.2.1+dfsg.1/debian/watch --- tiled-qt-1.2.0/debian/watch 2014-09-19 18:08:58.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/debian/watch 2018-11-27 20:31:39.000000000 +0000 @@ -1,4 +1,4 @@ version=3 -http://sf.net/tiled/tiled-qt-(.*)\.tar\.gz debian uupdate -opts="filenamemangle=s/(?:.*\/)?v?(\d[\d\.]*)\.tar\.gz/tiled-qt-$1.tar.gz/" \ +#http://sf.net/tiled/tiled-qt-(.*)\.tar\.gz debian uupdate +opts="filenamemangle=s/(?:.*\/)?v?(\d[\d\.]*)\.tar\.gz/tiled-qt-$1.tar.gz/, repacksuffix=+dfsg.1, dversionmangle=auto" \ https://github.com/bjorn/tiled/tags (?:.*/)?v?(\d[\d\.]*)\.tar\.gz debian uupdate Binary files /tmp/tmpD7k4oT/I1bKN5RTpA/tiled-qt-1.2.0/dist/butler_creds.enc and /tmp/tmpD7k4oT/CzZpJh2TaY/tiled-qt-1.2.1+dfsg.1/dist/butler_creds.enc differ diff -Nru tiled-qt-1.2.0/dist/linux/push-to-itch.sh tiled-qt-1.2.1+dfsg.1/dist/linux/push-to-itch.sh --- tiled-qt-1.2.0/dist/linux/push-to-itch.sh 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/dist/linux/push-to-itch.sh 2018-11-14 09:48:34.000000000 +0000 @@ -1,6 +1,5 @@ #!/bin/bash set -ev -openssl aes-256-cbc -K $encrypted_498dac83364f_key -iv $encrypted_498dac83364f_iv -in dist/butler_creds.enc -out butler_creds -d -wget https://dl.itch.ovh/butler/linux-amd64/head/butler -chmod +x ./butler -./butler -i butler_creds push --userversion=$TILED_VERSION Tiled thorbjorn/tiled:linux-64bit-snapshot +curl -JOL https://broth.itch.ovh/butler/linux-amd64/LATEST/archive/default +unzip butler-linux-amd64.zip +./butler push --userversion=$TILED_VERSION Tiled thorbjorn/tiled:linux-64bit-snapshot diff -Nru tiled-qt-1.2.0/dist/macos/push-to-itch.sh tiled-qt-1.2.1+dfsg.1/dist/macos/push-to-itch.sh --- tiled-qt-1.2.0/dist/macos/push-to-itch.sh 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/dist/macos/push-to-itch.sh 2018-11-14 09:48:34.000000000 +0000 @@ -1,8 +1,7 @@ #!/bin/bash set -ev -openssl aes-256-cbc -K $encrypted_498dac83364f_key -iv $encrypted_498dac83364f_iv -in dist/butler_creds.enc -out butler_creds -d mkdir itch mv install/Tiled.app itch/ -curl https://dl.itch.ovh/butler/darwin-amd64/head/butler --output butler -chmod +x ./butler -./butler -i butler_creds push --userversion=$TILED_VERSION itch thorbjorn/tiled:macos-snapshot +curl -JOL https://broth.itch.ovh/butler/darwin-amd64/LATEST/archive/default +unzip butler-darwin-amd64.zip +./butler push --userversion=$TILED_VERSION itch thorbjorn/tiled:macos-snapshot diff -Nru tiled-qt-1.2.0/dist/win/butler_creds.enc tiled-qt-1.2.1+dfsg.1/dist/win/butler_creds.enc --- tiled-qt-1.2.0/dist/win/butler_creds.enc 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/dist/win/butler_creds.enc 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -k9} o㫓LC˲YlYtwf"!L7 \ No newline at end of file diff -Nru tiled-qt-1.2.0/dist/win/push-to-itch.bat tiled-qt-1.2.1+dfsg.1/dist/win/push-to-itch.bat --- tiled-qt-1.2.0/dist/win/push-to-itch.bat 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/dist/win/push-to-itch.bat 2018-11-14 09:48:34.000000000 +0000 @@ -1,3 +1,2 @@ -secure-file\tools\secure-file -decrypt dist\win\butler_creds.enc -secret %my_secret% -out butler_creds curl -fsS -o butler.exe https://dl.itch.ovh/butler/windows-amd64/head/butler.exe -butler.exe -i butler_creds push --userversion=%TILED_ITCH_VERSION% itch/install-root thorbjorn/tiled:%TILED_ITCH_CHANNEL% +butler.exe push --userversion=%TILED_ITCH_VERSION% itch/install-root thorbjorn/tiled:%TILED_ITCH_CHANNEL% diff -Nru tiled-qt-1.2.0/docs/conf.py tiled-qt-1.2.1+dfsg.1/docs/conf.py --- tiled-qt-1.2.0/docs/conf.py 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/conf.py 2018-11-14 09:48:34.000000000 +0000 @@ -55,9 +55,9 @@ # built documents. # # The short X.Y version. -version = '1.1' +version = '1.2' # The full version, including alpha/beta/rc tags. -release = '1.1.0' +release = '1.2.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff -Nru tiled-qt-1.2.0/docs/manual/custom-properties.rst tiled-qt-1.2.1+dfsg.1/docs/manual/custom-properties.rst --- tiled-qt-1.2.0/docs/manual/custom-properties.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/custom-properties.rst 2018-11-14 09:48:34.000000000 +0000 @@ -41,7 +41,7 @@ .. raw:: html -
New in Tiled 1.0
+
Since Tiled 1.0
.. _tile-property-inheritance: @@ -95,7 +95,7 @@ .. raw:: html -
New in Tiled 1.0
+
Since Tiled 1.0
.. _typed-tiles: diff -Nru tiled-qt-1.2.0/docs/manual/editing-tile-layers.rst tiled-qt-1.2.1+dfsg.1/docs/manual/editing-tile-layers.rst --- tiled-qt-1.2.0/docs/manual/editing-tile-layers.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/editing-tile-layers.rst 2018-11-14 09:48:34.000000000 +0000 @@ -68,7 +68,7 @@ .. raw:: html -
New in Tiled 1.0
+
Since Tiled 1.0
When holding ``Alt``, the editing operations are also applied at a 180 degree rotation. This is especially useful when editing strategic maps @@ -78,7 +78,7 @@ .. raw:: html -
New in Tiled 1.1
+
Since Tiled 1.1
.. _wang-tool: @@ -122,7 +122,7 @@ .. raw:: html -
New in Tiled 1.1
+
Since Tiled 1.1
.. _shape-fill-tool: diff -Nru tiled-qt-1.2.0/docs/manual/editing-tilesets.rst tiled-qt-1.2.1+dfsg.1/docs/manual/editing-tilesets.rst --- tiled-qt-1.2.0/docs/manual/editing-tilesets.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/editing-tilesets.rst 2018-11-14 09:48:34.000000000 +0000 @@ -61,7 +61,7 @@ .. raw:: html -
New in Tiled 1.0
+
Since Tiled 1.0
Orientation When the tileset contains isometric tiles, you can set this to @@ -94,7 +94,7 @@ .. raw:: html -
New in Tiled 1.0
+
Since Tiled 1.0
Type This property refers to custom types defined in the :ref:`Object Types Editor `. @@ -123,7 +123,7 @@ .. raw:: html -
New in Tiled 1.1
+
Since Tiled 1.1
.. _wang-sets: diff -Nru tiled-qt-1.2.0/docs/manual/export.rst tiled-qt-1.2.1+dfsg.1/docs/manual/export.rst --- tiled-qt-1.2.0/docs/manual/export.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/export.rst 2018-11-14 09:48:34.000000000 +0000 @@ -10,6 +10,10 @@ first time. Exporting can also be automated using the ``--export-map`` command-line parameter. +Several :ref:`export-options` are available, which are applied to maps +or tilesets before they are exported (without affecting the map +or tileset itself). + .. note:: When exporting on the command-line on Linux, Tiled will still need an @@ -213,13 +217,12 @@ object layers in general, nor external tilesets), so you need to know what you are doing. -.. warning:: +.. note:: The tBIN format supports setting custom properties on the tiles of a tile layer. Since Tiled does not support this directly, "TileData" objects are created that match the location of the tile, on which - such properties are then stored. Care should be taken to keep these - objects aligned to the grid for the saving to work correctly. + such properties are then stored. Defold ------ Binary files /tmp/tmpD7k4oT/I1bKN5RTpA/tiled-qt-1.2.0/docs/manual/images/preferences-general.png and /tmp/tmpD7k4oT/CzZpJh2TaY/tiled-qt-1.2.1+dfsg.1/docs/manual/images/preferences-general.png differ Binary files /tmp/tmpD7k4oT/I1bKN5RTpA/tiled-qt-1.2.0/docs/manual/images/world-view.png and /tmp/tmpD7k4oT/CzZpJh2TaY/tiled-qt-1.2.1+dfsg.1/docs/manual/images/world-view.png differ diff -Nru tiled-qt-1.2.0/docs/manual/keyboard-shortcuts.rst tiled-qt-1.2.1+dfsg.1/docs/manual/keyboard-shortcuts.rst --- tiled-qt-1.2.0/docs/manual/keyboard-shortcuts.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/keyboard-shortcuts.rst 2018-11-14 09:48:34.000000000 +0000 @@ -45,6 +45,7 @@ - ``Ctrl + Shift + W`` - Close all documents - ``Ctrl + E`` - Export current document - ``Ctrl + Shift + E`` - Export current document to another file +- ``Ctrl + Q`` - Quit Tiled - ``Ctrl + R`` - Reload current document - ``Ctrl + T`` - Force-reload all tilesets used by the current map (mainly useful when not using the automatic reloading) @@ -101,7 +102,6 @@ - ``I`` - Activate :ref:`insert-point-tool` - ``C`` - Activate :ref:`insert-ellipse-tool` - ``P`` - Activate :ref:`insert-polygon-tool` -- ``L`` - Activate :ref:`insert-polyline-tool` - ``Enter`` - Finish creating object - ``Escape`` - Cancel creating object diff -Nru tiled-qt-1.2.0/docs/manual/layers.rst tiled-qt-1.2.1+dfsg.1/docs/manual/layers.rst --- tiled-qt-1.2.0/docs/manual/layers.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/layers.rst 2018-11-14 09:48:34.000000000 +0000 @@ -101,7 +101,7 @@ .. raw:: html -
New in Tiled 1.0
+
Since Tiled 1.0
Group Layers ------------ diff -Nru tiled-qt-1.2.0/docs/manual/objects.rst tiled-qt-1.2.1+dfsg.1/docs/manual/objects.rst --- tiled-qt-1.2.0/docs/manual/objects.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/objects.rst 2018-11-14 09:48:34.000000000 +0000 @@ -17,6 +17,15 @@ Each type of object has its own placement tool. +.. raw:: html + +
New in Tiled 1.2
+ +A preview is shown of the object you're about to place when you hover +over the map. While placing an object, you can press ``Escape`` or +right-click to cancel placement of the object. Press ``Escape`` again +to switch to the :ref:`select-objects-tool` tool. + .. _insert-rectangle-tool: Insert Rectangle @@ -37,6 +46,10 @@ as a small square around its position. This is mainly to keep it visible and selectable. +.. raw:: html + +
Since Tiled 1.1
+ .. _insert-point-tool: Insert Point @@ -72,27 +85,34 @@ When placing a polygon, the first click determines the location of the object as well as the location of the first point of the polygon. Subsequent clicks are used to add additional points to the polygon. -Right click or press ``Enter`` to finish creating the polygon. Polygons -needs to have at least three points. You can press ``Escape`` to cancel +Polygons needs to have at least three points. Click the first point +again to finish creating the polygon. You can press ``Escape`` to cancel the creation of the polygon. When you want to change a polygon after it has been placed, you need to use the :ref:`edit-polygons-tool` tool. -.. _insert-polyline-tool: - -Insert Polyline -~~~~~~~~~~~~~~~ +Polylines +^^^^^^^^^ -Shortcut: ``L`` +Polylines are created by not closing a polygon. Right-click or press Enter +while creating a polygon to finish it as a polyline. -Polylines work very similar to `polygons <#insert-polygon>`__, except -that they are rendered as a line and require only two points. While they +Polylines are rendered as a line and require only two points. While they can represent collision walls, they are also often used to represent paths to be followed. -Despite its name, the :ref:`edit-polygons-tool` tool is also used to -edit polylines. +.. raw:: html + +
New in Tiled 1.2
+ +You can extend an existing polyline at either end when it is selected, +by clicking on the displayed dots. It is also possible to finish the +polyline by connecting it to either end of another existing polyline +object. The other polyline object needs to be selected as well, since +the interactive dots only show on selected polylines. + +The :ref:`edit-polygons-tool` tool is used to edit polylines as well. .. _insert-tile-tool: @@ -115,7 +135,7 @@ .. raw:: html -
New in Tiled 1.0
+
Since Tiled 1.0
To change the tile used by existing tile objects, select all the objects you want to change using the :ref:`select-objects-tool` tool and then @@ -124,7 +144,7 @@ .. raw:: html -
New in Tiled 1.1
+
Since Tiled 1.1
.. _insert-template-tool: @@ -164,7 +184,7 @@ You can select objects by clicking them or by dragging a rectangular lasso, selecting any object that intersect with its area. By holding ``Shift`` or ``Ctrl`` while clicking, you can add/remove single objects -to/from the selection. +to/from the selection. Press ``Escape`` to deselect all objects. When pressing and dragging on an object, this object is selected and moved. When this prevents you from starting a rectangular selection, you @@ -172,7 +192,7 @@ .. raw:: html -
New in Tiled 1.0
+
Since Tiled 1.0
By default you interact with the top-most object. When you need to select an object below another object, first select the higher object @@ -181,6 +201,13 @@ to get a list of all objects at the clicked location, so you may directly select the desired object. +.. raw:: html + +
New in Tiled 1.2
+ +You can quickly switch to the :ref:`edit-polygons-tool` tool by +double-clicking on the polygon or polyline you want to edit. + Moving ~~~~~~ @@ -253,7 +280,9 @@ Polygons and polylines have their own editing needs and as such are covered by a separate tool, which allows selecting and moving around their nodes. You can select and move the nodes of multiple polygons at -the same time. +the same time. Click a segment to select the nodes at both ends. Press +``Escape`` to deselect all nodes, or to switch back to the +:ref:`select-objects-tool` tool. Nodes can be deleted by selecting them and choosing "Delete Nodes" from the context menu. The ``Delete`` key can also be used to delete the @@ -262,10 +291,23 @@ When you have selected multiple consecutive nodes of the same polygon, you can join them together by choosing "Join Nodes" from the context menu. You can also split the segments in between the nodes by choosing -"Split Segments", which is currently the only way to extend an existing -polygon. You can also delete a segment when two consecutive nodes are +"Split Segments". Alternatively, you can simply double-click a segment +to split it at that location. + +You can also delete a segment when two consecutive nodes are selected in a polygon by choosing "Delete Segment" in the context menu. -This will convert a polygon into a polyline. +This will convert a polygon into a polyline, or turn one polyline +object in two polyline objects. + +.. raw:: html + +
New in Tiled 1.2
+ +It is possible to extend a polyline at either end, either by +right-clicking those nodes and choosing "Extend Polyline", or by +switching to the :ref:`insert-polygon-tool` tool and clicking on either +end of an already selected polylines. + .. topic:: Future Extensions :class: future @@ -273,13 +315,13 @@ Here are some ideas about improvements that could be made to the above tools: - - For the `Insert Tile <#insert-tile>`__ tool, show the preview already - before pressing the left mouse button - (`#537 `__) - - - Many improvements could be made to the support for editing polygons - and polylines, like allowing to rotate and scale the selected nodes - (`#1487 `__). + - Some improvements could still be made to the support for editing + polygons and polylines, like allowing to rotate and scale the + selected nodes (`#1487 `__). + + - The tools could put short usage instructions in the status bar, + to help new users without requiring them to carefully read the + manual (`#1855 `__). If you like any of these plans, please help me getting around to it faster by `becoming a patron `__. The diff -Nru tiled-qt-1.2.0/docs/manual/preferences.rst tiled-qt-1.2.1+dfsg.1/docs/manual/preferences.rst --- tiled-qt-1.2.0/docs/manual/preferences.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/preferences.rst 2018-11-14 09:48:34.000000000 +0000 @@ -22,7 +22,7 @@ .. figure:: images/preferences-general.png :alt: General Preferences - :scale: 66 + :scale: 50 :align: right Saving and Loading @@ -50,6 +50,38 @@ files to a Dropbox folder or a network drive, in which case it helps to disable this feature. +.. raw:: html + +
New in Tiled 1.2
+ +.. _export-options: + +Export Options +~~~~~~~~~~~~~~ + +The following export options are applied each time a map or tileset gets +exported, without affecting the map or tileset itself. + +Embed tilesets + All tilesets are embedded in the exported map. Useful for example + when you are exporting to JSON and loading an external tileset is + not desired. + +Detach templates + All template instances are detached. Useful when you want to use the + templates feature but can't or don't want to load the external + template object files. + +Resolve object types and properties + Stores effective object type and properties with each object. + Object properties are inherited from a tile (in case of a tile + object) and from the default properties of their type. + +These options are also available as options when exporting using the command-line. + +Interface +--------- + Interface ~~~~~~~~~ @@ -77,7 +109,7 @@ .. raw:: html -
New in Tiled 1.1
+
Since Tiled 1.1
Mouse wheel zooms by default This option causes the mouse wheel to zoom without the need to hold @@ -86,7 +118,7 @@ touchpad. Theme ------ +~~~~~ On Windows and Linux, the default style used by Tiled is "Tiled Fusion". This is a customized version of the "Fusion" style that ships with Qt. diff -Nru tiled-qt-1.2.0/docs/manual/python.rst tiled-qt-1.2.1+dfsg.1/docs/manual/python.rst --- tiled-qt-1.2.0/docs/manual/python.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/python.rst 2018-11-14 09:48:34.000000000 +0000 @@ -16,9 +16,17 @@ .. warning:: On Windows, Python is not installed by default. For the Tiled Python - plugin to work, you'll need to install Python 3 (get it from - https://www.python.org/). On Linux you may also need to install the - appropriate package. + plugin to work, you'll need to install Python 3.7 (get it from + https://www.python.org/). + + On Linux you will also need to install the appropriate package. + However, currently Linux builds are done on Ubuntu 14.04 against + Python 3.4, and you'd need to install the same version somehow. + + The Python plugin is currently not enabled for macOS releases. We'll + need to find out how to build it against Python 3, while macOS only + ships with Python 2.7 by default. If you rely on this plugin on + macOS you'll need to use Tiled 1.1 for now. Example Export Plugin diff -Nru tiled-qt-1.2.0/docs/manual/using-infinite-maps.rst tiled-qt-1.2.1+dfsg.1/docs/manual/using-infinite-maps.rst --- tiled-qt-1.2.0/docs/manual/using-infinite-maps.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/using-infinite-maps.rst 2018-11-14 09:48:34.000000000 +0000 @@ -1,6 +1,6 @@ .. raw:: html -
New in Tiled 1.1
+
Since Tiled 1.1
Using Infinite Maps =================== diff -Nru tiled-qt-1.2.0/docs/manual/using-templates.rst tiled-qt-1.2.1+dfsg.1/docs/manual/using-templates.rst --- tiled-qt-1.2.0/docs/manual/using-templates.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/using-templates.rst 2018-11-14 09:48:34.000000000 +0000 @@ -1,6 +1,6 @@ .. raw:: html -
New in Tiled 1.1
+
Since Tiled 1.1
Using Templates =============== diff -Nru tiled-qt-1.2.0/docs/manual/using-wang-tiles.rst tiled-qt-1.2.1+dfsg.1/docs/manual/using-wang-tiles.rst --- tiled-qt-1.2.0/docs/manual/using-wang-tiles.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/manual/using-wang-tiles.rst 2018-11-14 09:48:34.000000000 +0000 @@ -1,6 +1,6 @@ .. raw:: html -
New in Tiled 1.1
+
Since Tiled 1.1
Using Wang Tiles ================ diff -Nru tiled-qt-1.2.0/docs/reference/tmx-changelog.rst tiled-qt-1.2.1+dfsg.1/docs/reference/tmx-changelog.rst --- tiled-qt-1.2.0/docs/reference/tmx-changelog.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/reference/tmx-changelog.rst 2018-11-14 09:48:34.000000000 +0000 @@ -4,6 +4,12 @@ Below are described the changes/additions that were made to the :doc:`tmx-map-format` for recent versions of Tiled. +Tiled 1.2.1 +----------- + +- Text objects can now get their horizontal alignment saved as ``justify``. + This option existed in the UI before but wasn't saved properly. + Tiled 1.2 --------- diff -Nru tiled-qt-1.2.0/docs/reference/tmx-map-format.rst tiled-qt-1.2.1+dfsg.1/docs/reference/tmx-map-format.rst --- tiled-qt-1.2.0/docs/reference/tmx-map-format.rst 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/reference/tmx-map-format.rst 2018-11-14 09:48:34.000000000 +0000 @@ -577,7 +577,7 @@ - **kerning:** Whether kerning should be used while rendering the text (1) or not (0). Default to 1. - **halign:** Horizontal alignment of the text within the object - (``left`` (default), ``center`` or ``right``) + (``left`` (default), ``center``, ``right`` or ``justify`` (since Tiled 1.2.1)) - **valign:** Vertical alignment of the text within the object (``top`` (default), ``center`` or ``bottom``) diff -Nru tiled-qt-1.2.0/docs/_static/css/custom.css tiled-qt-1.2.1+dfsg.1/docs/_static/css/custom.css --- tiled-qt-1.2.0/docs/_static/css/custom.css 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/docs/_static/css/custom.css 2018-11-14 09:48:34.000000000 +0000 @@ -36,5 +36,6 @@ .new-prev { background-color: unset; - color: rgb(254, 89, 0); + color: gray; + border-color: gray; } diff -Nru tiled-qt-1.2.0/NEWS.md tiled-qt-1.2.1+dfsg.1/NEWS.md --- tiled-qt-1.2.0/NEWS.md 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/NEWS.md 2018-11-14 09:48:34.000000000 +0000 @@ -1,3 +1,17 @@ +### Tiled 1.2.1 (14 November 2018) + +* Fixed JSON templates not being visible in Templates view (#2009) +* Fixed Maps view to show all readable map formats +* Fixed crash when deleting a command using the context menu (#2014) +* Fixed crash after a world file failed to load +* Fixed Select None action to be enabled when there is any selection +* Fixed disappearing of tile types on export/import of a tileset (#2023) +* Fixed tool shortcuts when using Spanish translation +* Fixed saving of the "Justify" alignment option for text objects (#2026) +* Changed Cut, Copy and Delete actions to apply based on selected layer types +* Windows: Updated builds to Qt 5.9.7 +* Updated Russian translation (by Rafael Osipov, #2017) + ### Tiled 1.2.0 (19 September 2018) * Added multi-layer selection, including multi-layer tile layer editing diff -Nru tiled-qt-1.2.0/src/libtiled/mapreader.cpp tiled-qt-1.2.1+dfsg.1/src/libtiled/mapreader.cpp --- tiled-qt-1.2.0/src/libtiled/mapreader.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/libtiled/mapreader.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -1177,6 +1177,8 @@ alignment |= Qt::AlignHCenter; else if (hAlignString == QLatin1String("right")) alignment |= Qt::AlignRight; + else if (hAlignString == QLatin1String("justify")) + alignment |= Qt::AlignJustify; else alignment |= Qt::AlignLeft; diff -Nru tiled-qt-1.2.0/src/libtiled/maptovariantconverter.cpp tiled-qt-1.2.1+dfsg.1/src/libtiled/maptovariantconverter.cpp --- tiled-qt-1.2.0/src/libtiled/maptovariantconverter.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/libtiled/maptovariantconverter.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -562,6 +562,8 @@ textVariant[QLatin1String("halign")] = QLatin1String("center"); else if (textData.alignment.testFlag(Qt::AlignRight)) textVariant[QLatin1String("halign")] = QLatin1String("right"); + else if (textData.alignment.testFlag(Qt::AlignJustify)) + textVariant[QLatin1String("halign")] = QLatin1String("justify"); } if (!textData.alignment.testFlag(Qt::AlignTop)) { diff -Nru tiled-qt-1.2.0/src/libtiled/mapwriter.cpp tiled-qt-1.2.1+dfsg.1/src/libtiled/mapwriter.cpp --- tiled-qt-1.2.0/src/libtiled/mapwriter.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/libtiled/mapwriter.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -846,6 +846,8 @@ w.writeAttribute(QLatin1String("halign"), QLatin1String("center")); else if (textData.alignment.testFlag(Qt::AlignRight)) w.writeAttribute(QLatin1String("halign"), QLatin1String("right")); + else if (textData.alignment.testFlag(Qt::AlignJustify)) + w.writeAttribute(QLatin1String("halign"), QLatin1String("justify")); } if (!textData.alignment.testFlag(Qt::AlignTop)) { diff -Nru tiled-qt-1.2.0/src/libtiled/pluginmanager.cpp tiled-qt-1.2.1+dfsg.1/src/libtiled/pluginmanager.cpp --- tiled-qt-1.2.0/src/libtiled/pluginmanager.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/libtiled/pluginmanager.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -172,8 +172,8 @@ Q_ASSERT(object); Q_ASSERT(mInstance->mObjects.contains(object)); - emit mInstance->objectAboutToBeRemoved(object); mInstance->mObjects.removeOne(object); + emit mInstance->objectRemoved(object); } void PluginManager::loadPlugins() diff -Nru tiled-qt-1.2.0/src/libtiled/pluginmanager.h tiled-qt-1.2.1+dfsg.1/src/libtiled/pluginmanager.h --- tiled-qt-1.2.0/src/libtiled/pluginmanager.h 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/libtiled/pluginmanager.h 2018-11-14 09:48:34.000000000 +0000 @@ -141,7 +141,7 @@ signals: void objectAdded(QObject *object); - void objectAboutToBeRemoved(QObject *object); + void objectRemoved(QObject *object); private: Q_DISABLE_COPY(PluginManager) diff -Nru tiled-qt-1.2.0/src/libtiled/tile.cpp tiled-qt-1.2.1+dfsg.1/src/libtiled/tile.cpp --- tiled-qt-1.2.0/src/libtiled/tile.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/libtiled/tile.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -205,6 +205,8 @@ c->setProperties(properties()); c->mImageSource = mImageSource; + c->mImageStatus = mImageStatus; + c->mType = mType; c->mTerrain = mTerrain; c->mProbability = mProbability; diff -Nru tiled-qt-1.2.0/src/libtiled/varianttomapconverter.cpp tiled-qt-1.2.1+dfsg.1/src/libtiled/varianttomapconverter.cpp --- tiled-qt-1.2.0/src/libtiled/varianttomapconverter.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/libtiled/varianttomapconverter.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -783,6 +783,8 @@ alignment |= Qt::AlignHCenter; else if (hAlignString == QLatin1String("right")) alignment |= Qt::AlignRight; + else if (hAlignString == QLatin1String("justify")) + alignment |= Qt::AlignJustify; else alignment |= Qt::AlignLeft; diff -Nru tiled-qt-1.2.0/src/libtiled/worldmanager.cpp tiled-qt-1.2.1+dfsg.1/src/libtiled/worldmanager.cpp --- tiled-qt-1.2.0/src/libtiled/worldmanager.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/libtiled/worldmanager.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -178,6 +178,8 @@ bool WorldManager::loadWorld(const QString &fileName, QString *errorString) { auto world = privateLoadWorld(fileName, errorString); + if (!world) + return false; if (mWorlds.contains(fileName)) delete mWorlds.take(fileName); diff -Nru tiled-qt-1.2.0/src/plugins/lua/luaplugin.cpp tiled-qt-1.2.1+dfsg.1/src/plugins/lua/luaplugin.cpp --- tiled-qt-1.2.0/src/plugins/lua/luaplugin.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/plugins/lua/luaplugin.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -786,6 +786,8 @@ writer.writeKeyAndValue("halign", "center"); else if (textData.alignment.testFlag(Qt::AlignRight)) writer.writeKeyAndValue("halign", "right"); + else if (textData.alignment.testFlag(Qt::AlignJustify)) + writer.writeKeyAndValue("halign", "justify"); } if (!textData.alignment.testFlag(Qt::AlignTop)) { diff -Nru tiled-qt-1.2.0/src/tiled/clipboardmanager.cpp tiled-qt-1.2.1+dfsg.1/src/tiled/clipboardmanager.cpp --- tiled-qt-1.2.0/src/tiled/clipboardmanager.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/tiled/clipboardmanager.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -39,6 +39,8 @@ #include #include +#include + static const char * const TMX_MIMETYPE = "text/tmx"; using namespace Tiled; @@ -125,7 +127,8 @@ /** * Convenience method to copy the current selection to the clipboard. - * Copies both tile selection and object selection. + * Copies selected tiles when any tile layer is selected and selected objects + * when any object layer is selected. * * @returns whether anything was copied. */ @@ -145,39 +148,49 @@ map->tileWidth(), map->tileHeight()); copyMap.setRenderOrder(map->renderOrder()); - LayerIterator layerIterator(map); - while (Layer *layer = layerIterator.next()) { - switch (layer->layerType()) { - case Layer::TileLayerType: { - if (!selectedLayers.contains(layer)) // ignore unselected tile layers - continue; - - const TileLayer *tileLayer = static_cast(layer); - const QRegion area = selectedArea.intersected(tileLayer->bounds()); - if (area.isEmpty()) // nothing to copy - continue; - - // Copy the selected part of the layer - TileLayer *copyLayer = tileLayer->copy(area.translated(-tileLayer->position())); - copyLayer->setName(tileLayer->name()); - copyLayer->setPosition(area.boundingRect().topLeft()); + bool tileLayerSelected = std::any_of(selectedLayers.begin(), selectedLayers.end(), + [] (Layer *layer) { return layer->isTileLayer(); }); - copyMap.addLayer(copyLayer); - break; - } - case Layer::ObjectGroupType: // todo: maybe it makes to group selected objects by layer - case Layer::ImageLayerType: - case Layer::GroupLayerType: - break; // nothing to do + if (tileLayerSelected) { + LayerIterator layerIterator(map); + while (Layer *layer = layerIterator.next()) { + switch (layer->layerType()) { + case Layer::TileLayerType: { + if (!selectedLayers.contains(layer)) // ignore unselected tile layers + continue; + + const TileLayer *tileLayer = static_cast(layer); + const QRegion area = selectedArea.intersected(tileLayer->bounds()); + if (area.isEmpty()) // nothing to copy + continue; + + // Copy the selected part of the layer + TileLayer *copyLayer = tileLayer->copy(area.translated(-tileLayer->position())); + copyLayer->setName(tileLayer->name()); + copyLayer->setPosition(area.boundingRect().topLeft()); + + copyMap.addLayer(copyLayer); + break; + } + case Layer::ObjectGroupType: // todo: maybe it makes to group selected objects by layer + case Layer::ImageLayerType: + case Layer::GroupLayerType: + break; // nothing to do + } } } if (!selectedObjects.isEmpty()) { - // Create a new object group with clones of the selected objects - ObjectGroup *objectGroup = new ObjectGroup; - for (const MapObject *mapObject : selectedObjects) - objectGroup->addObject(mapObject->clone()); - copyMap.addLayer(objectGroup); + bool objectGroupSelected = std::any_of(selectedLayers.begin(), selectedLayers.end(), + [] (Layer *layer) { return layer->isObjectGroup(); }); + + if (objectGroupSelected) { + // Create a new object group with clones of the selected objects + ObjectGroup *objectGroup = new ObjectGroup; + for (const MapObject *mapObject : selectedObjects) + objectGroup->addObject(mapObject->clone()); + copyMap.addLayer(objectGroup); + } } if (copyMap.layerCount() > 0) { @@ -213,6 +226,7 @@ if (!(flags & PasteInPlace)) { // Determine where to insert the objects const MapRenderer *renderer = mapDocument->renderer(); + // FIXME: This is not the visual center const QPointF center = objectGroup->objectsBoundingRect().center(); // Take the mouse position if the mouse is on the view, otherwise diff -Nru tiled-qt-1.2.0/src/tiled/commanddatamodel.cpp tiled-qt-1.2.1+dfsg.1/src/tiled/commanddatamodel.cpp --- tiled-qt-1.2.0/src/tiled/commanddatamodel.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/tiled/commanddatamodel.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -89,7 +89,7 @@ if (row < 0 || row + count > mCommands.size()) return false; - beginRemoveRows(parent, row, row + count); + beginRemoveRows(parent, row, row + count - 1); mCommands.erase(mCommands.begin() + row, mCommands.begin() + row + count); endRemoveRows(); diff -Nru tiled-qt-1.2.0/src/tiled/mapdocumentactionhandler.cpp tiled-qt-1.2.1+dfsg.1/src/tiled/mapdocumentactionhandler.cpp --- tiled-qt-1.2.0/src/tiled/mapdocumentactionhandler.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/tiled/mapdocumentactionhandler.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -48,6 +48,8 @@ #include "qtcompat_p.h" +#include + namespace Tiled { namespace Internal { @@ -316,6 +318,10 @@ return false; } +/** + * Erases the selected tiles when any tile layer is selected and removes the + * selected objects when any object layer is selected. + */ void MapDocumentActionHandler::delete_() { if (!mMapDocument) @@ -325,37 +331,48 @@ return; const QRegion &selectedArea = mMapDocument->selectedArea(); + const QList &selectedLayers = mMapDocument->selectedLayers(); + const QList selectedObjects = mMapDocument->selectedObjectsOrdered(); + + bool tileLayerSelected = std::any_of(selectedLayers.begin(), selectedLayers.end(), + [] (Layer *layer) { return layer->isTileLayer(); }); QList commands; - LayerIterator layerIterator(mMapDocument->map(), Layer::TileLayerType); - for (Layer *layer : mMapDocument->selectedLayers()) { - if (!layer->isTileLayer()) - continue; + if (tileLayerSelected) { + LayerIterator layerIterator(mMapDocument->map(), Layer::TileLayerType); + for (Layer *layer : selectedLayers) { + if (!layer->isTileLayer()) + continue; - auto tileLayer = static_cast(layer); - const QRegion area = selectedArea.intersected(tileLayer->bounds()); - if (area.isEmpty()) // nothing to delete - continue; + auto tileLayer = static_cast(layer); + const QRegion area = selectedArea.intersected(tileLayer->bounds()); + if (area.isEmpty()) // nothing to delete + continue; + + // Delete the selected part of the layer + commands.append(new EraseTiles(mMapDocument, tileLayer, area)); + } - // Delete the selected part of the layer - commands.append(new EraseTiles(mMapDocument, tileLayer, area)); + if (!selectedArea.isEmpty()) + commands.append(new ChangeSelectedArea(mMapDocument, QRegion())); } - commands.append(new RemoveMapObjects(mMapDocument, mMapDocument->selectedObjects())); + if (!selectedObjects.isEmpty()) { + bool objectGroupSelected = std::any_of(selectedLayers.begin(), selectedLayers.end(), + [] (Layer *layer) { return layer->isObjectGroup(); }); - QUndoStack *undoStack = mMapDocument->undoStack(); + if (objectGroupSelected) + commands.append(new RemoveMapObjects(mMapDocument, selectedObjects)); + } if (!commands.isEmpty()) { + QUndoStack *undoStack = mMapDocument->undoStack(); undoStack->beginMacro(tr("Delete")); for (QUndoCommand *command : commands) undoStack->push(command); - } - - selectNone(); - - if (!commands.isEmpty()) undoStack->endMacro(); + } } void MapDocumentActionHandler::selectAll() @@ -721,19 +738,7 @@ mActionSelectAll->setEnabled(map); mActionSelectInverse->setEnabled(map); - - if (currentLayer) { - if (currentLayer->asTileLayer()) { - mActionSelectNone->setEnabled(!selection.isEmpty()); - } else if (currentLayer->asObjectGroup()) { - mActionSelectNone->setEnabled(selectedObjectsCount > 0); - } else { - mActionSelectNone->setEnabled(false); - } - } else { - mActionSelectNone->setEnabled(false); - } - + mActionSelectNone->setEnabled(!selection.isEmpty() || selectedObjectsCount > 0); mActionCropToSelection->setEnabled(!selection.isEmpty()); diff -Nru tiled-qt-1.2.0/src/tiled/mapsdock.cpp tiled-qt-1.2.1+dfsg.1/src/tiled/mapsdock.cpp --- tiled-qt-1.2.0/src/tiled/mapsdock.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/tiled/mapsdock.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -168,21 +168,11 @@ mFileSystemModel = new FileSystemModel(this); mFileSystemModel->setRootPath(mapsDir.absolutePath()); - - QStringList nameFilters; - - for (MapFormat *format : PluginManager::objects()) { - if (!(format->capabilities() & MapFormat::Read)) - continue; - - const QString filter = format->nameFilter(); - nameFilters.append(Utils::cleanFilterList(filter)); - } - mFileSystemModel->setFilter(QDir::AllDirs | QDir::Files | QDir::NoDot); - mFileSystemModel->setNameFilters(nameFilters); mFileSystemModel->setNameFilterDisables(false); // hide filtered files + updateNameFilters(); + setModel(mFileSystemModel); QHeaderView *headerView = header(); @@ -197,6 +187,11 @@ connect(this, &QAbstractItemView::activated, this, &MapsView::onActivated); + + connect(PluginManager::instance(), &PluginManager::objectAdded, + this, &MapsView::pluginObjectAddedOrRemoved); + connect(PluginManager::instance(), &PluginManager::objectRemoved, + this, &MapsView::pluginObjectAddedOrRemoved); } QSize MapsView::sizeHint() const @@ -237,3 +232,25 @@ DocumentManager::instance()->openFile(path); } + +void MapsView::pluginObjectAddedOrRemoved(QObject *object) +{ + if (auto format = qobject_cast(object)) + if (format->capabilities() & FileFormat::Read) + updateNameFilters(); +} + +void MapsView::updateNameFilters() +{ + QStringList nameFilters; + + for (MapFormat *format : PluginManager::objects()) { + if (!(format->capabilities() & MapFormat::Read)) + continue; + + const QString filter = format->nameFilter(); + nameFilters.append(Utils::cleanFilterList(filter)); + } + + mFileSystemModel->setNameFilters(nameFilters); +} diff -Nru tiled-qt-1.2.0/src/tiled/mapsdock.h tiled-qt-1.2.1+dfsg.1/src/tiled/mapsdock.h --- tiled-qt-1.2.0/src/tiled/mapsdock.h 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/tiled/mapsdock.h 2018-11-14 09:48:34.000000000 +0000 @@ -79,7 +79,11 @@ void onMapsDirectoryChanged(); void onActivated(const QModelIndex &index); + void pluginObjectAddedOrRemoved(QObject *object); + private: + void updateNameFilters(); + QFileSystemModel *mFileSystemModel; }; diff -Nru tiled-qt-1.2.0/src/tiled/newsfeed.cpp tiled-qt-1.2.1+dfsg.1/src/tiled/newsfeed.cpp --- tiled-qt-1.2.0/src/tiled/newsfeed.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/tiled/newsfeed.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -22,6 +22,7 @@ #include "preferences.h" +#include #include #include #include diff -Nru tiled-qt-1.2.0/src/tiled/objecttemplatemodel.cpp tiled-qt-1.2.1+dfsg.1/src/tiled/objecttemplatemodel.cpp --- tiled-qt-1.2.0/src/tiled/objecttemplatemodel.cpp 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/tiled/objecttemplatemodel.cpp 2018-11-14 09:48:34.000000000 +0000 @@ -35,19 +35,14 @@ ObjectTemplateModel::ObjectTemplateModel(QObject *parent): QFileSystemModel(parent) { - QStringList nameFilters; - - for (ObjectTemplateFormat *format : PluginManager::objects()) { - if (!(format->capabilities() & FileFormat::Read)) - continue; - - const QString filter = format->nameFilter(); - nameFilters.append(Utils::cleanFilterList(filter)); - } - setFilter(QDir::AllDirs | QDir::Files | QDir::NoDotAndDotDot); - setNameFilters(nameFilters); setNameFilterDisables(false); // hide filtered files + updateNameFilters(); + + connect(PluginManager::instance(), &PluginManager::objectAdded, + this, &ObjectTemplateModel::pluginObjectAddedOrRemoved); + connect(PluginManager::instance(), &PluginManager::objectRemoved, + this, &ObjectTemplateModel::pluginObjectAddedOrRemoved); } int ObjectTemplateModel::columnCount(const QModelIndex &parent) const @@ -104,5 +99,27 @@ return mimeData; } +void ObjectTemplateModel::pluginObjectAddedOrRemoved(QObject *object) +{ + if (auto format = qobject_cast(object)) + if (format->capabilities() & FileFormat::Read) + updateNameFilters(); +} + +void ObjectTemplateModel::updateNameFilters() +{ + QStringList nameFilters; + + for (ObjectTemplateFormat *format : PluginManager::objects()) { + if (!(format->capabilities() & FileFormat::Read)) + continue; + + const QString filter = format->nameFilter(); + nameFilters.append(Utils::cleanFilterList(filter)); + } + + setNameFilters(nameFilters); +} + } // namespace Internal } // namespace Tiled diff -Nru tiled-qt-1.2.0/src/tiled/objecttemplatemodel.h tiled-qt-1.2.1+dfsg.1/src/tiled/objecttemplatemodel.h --- tiled-qt-1.2.0/src/tiled/objecttemplatemodel.h 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/src/tiled/objecttemplatemodel.h 2018-11-14 09:48:34.000000000 +0000 @@ -43,6 +43,12 @@ Qt::ItemFlags flags(const QModelIndex &index) const override; QStringList mimeTypes() const override; QMimeData *mimeData(const QModelIndexList &indexes) const override; + +private slots: + void pluginObjectAddedOrRemoved(QObject *object); + +private: + void updateNameFilters(); }; } // namespace Internal Binary files /tmp/tmpD7k4oT/I1bKN5RTpA/tiled-qt-1.2.0/src/tiled/winsparkle/x64/WinSparkle.dll and /tmp/tmpD7k4oT/CzZpJh2TaY/tiled-qt-1.2.1+dfsg.1/src/tiled/winsparkle/x64/WinSparkle.dll differ Binary files /tmp/tmpD7k4oT/I1bKN5RTpA/tiled-qt-1.2.0/src/tiled/winsparkle/x64/WinSparkle.lib and /tmp/tmpD7k4oT/CzZpJh2TaY/tiled-qt-1.2.1+dfsg.1/src/tiled/winsparkle/x64/WinSparkle.lib differ Binary files /tmp/tmpD7k4oT/I1bKN5RTpA/tiled-qt-1.2.0/src/tiled/winsparkle/x86/WinSparkle.dll and /tmp/tmpD7k4oT/CzZpJh2TaY/tiled-qt-1.2.1+dfsg.1/src/tiled/winsparkle/x86/WinSparkle.dll differ Binary files /tmp/tmpD7k4oT/I1bKN5RTpA/tiled-qt-1.2.0/src/tiled/winsparkle/x86/WinSparkle.lib and /tmp/tmpD7k4oT/CzZpJh2TaY/tiled-qt-1.2.1+dfsg.1/src/tiled/winsparkle/x86/WinSparkle.lib differ diff -Nru tiled-qt-1.2.0/tiled.pri tiled-qt-1.2.1+dfsg.1/tiled.pri --- tiled-qt-1.2.0/tiled.pri 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/tiled.pri 2018-11-14 09:48:34.000000000 +0000 @@ -1,5 +1,5 @@ # Initialize the version -isEmpty(TILED_VERSION):TILED_VERSION = "1.2.0" +isEmpty(TILED_VERSION):TILED_VERSION = "1.2.1" # See the README file for instructions about setting the install prefix. isEmpty(PREFIX):PREFIX = /usr/local diff -Nru tiled-qt-1.2.0/tiled.qbs tiled-qt-1.2.1+dfsg.1/tiled.qbs --- tiled-qt-1.2.0/tiled.qbs 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/tiled.qbs 2018-11-14 09:48:34.000000000 +0000 @@ -7,7 +7,7 @@ qbsSearchPaths: "qbs" minimumQbsVersion: "1.8" - property string version: Environment.getEnv("TILED_VERSION") || "1.2.0"; + property string version: Environment.getEnv("TILED_VERSION") || "1.2.1"; property bool sparkleEnabled: Environment.getEnv("TILED_SPARKLE") property bool snapshot: Environment.getEnv("TILED_SNAPSHOT") property bool release: Environment.getEnv("TILED_RELEASE") diff -Nru tiled-qt-1.2.0/translations/tiled_es.ts tiled-qt-1.2.1+dfsg.1/translations/tiled_es.ts --- tiled-qt-1.2.0/translations/tiled_es.ts 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/translations/tiled_es.ts 2018-11-14 09:48:34.000000000 +0000 @@ -2785,7 +2785,7 @@ F - R + F @@ -3201,7 +3201,7 @@ E - G + E diff -Nru tiled-qt-1.2.0/translations/tiled_ru.ts tiled-qt-1.2.1+dfsg.1/translations/tiled_ru.ts --- tiled-qt-1.2.0/translations/tiled_ru.ts 2018-09-19 13:13:49.000000000 +0000 +++ tiled-qt-1.2.1+dfsg.1/translations/tiled_ru.ts 2018-11-14 09:48:34.000000000 +0000 @@ -37,12 +37,12 @@ Add Property - Добавить параметр + Добавить свойство Property name - Имя параметра + Имя свойства @@ -80,17 +80,17 @@ Export syntax is --export-tileset [format] <source> <target> - + Формат экспорта такой: --export-tileset [format] <source> <target> Failed to load source tileset. - + Не удалось загрузить исходный набор тайлов. Failed to export tileset to target file. - + Не удалось экспортировать набор файлов в указанный файл. @@ -134,12 +134,12 @@ Working Directory: - Рабочая директория: + Рабочая папка: Show output in Debug Console - Показывать вывод в Консоли Отладки + Показывать вывод в Консоли Отладки @@ -157,32 +157,32 @@ Only check validity of arguments - Проверять только валидность аргументов + Проверять только корректность аргументов Disable hardware accelerated rendering - Выключить аппаратное ускорение отрисовки + Отключить аппаратное ускорение отрисовки Export the specified map file to target - + Экспортировать указанный файл с картой Export the specified tileset file to target - + Экспортировать указанный файл с набором тайлов Map export formats: - + Форматы для экспорта карт: Tileset export formats: - + Форматы для экспорта набора тайлов: @@ -192,17 +192,17 @@ Export the map with tilesets embedded - + Экспортировать карту с включённым в неё набором тайлов Export the map or tileset with template instances detached - + Экспортировать карту или набор тайлов с отсоединёнными от них шаблонами Export the map or tileset with types and properties resolved - + Экспортировать карту или набор тайлов с определёнными для них типами и свойствами @@ -220,12 +220,12 @@ Unknown long argument %1: %2 - Неверный long аргумент %1: %2 + Неизвестный аргумент с типом long %1: %2 Unknown short argument %1.%2: %3 - Неверный short аргумент %1.%2: %3 + Неизвестный аргумент с типом short %1.%2: %3 @@ -263,7 +263,7 @@ Save all as %1 - Сохранить все как %1 + Сохранить всё как %1 @@ -286,7 +286,7 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -304,7 +304,7 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -327,7 +327,7 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -388,7 +388,7 @@ Could not open file for reading. - Не удается открыть файл для чтения. + Не удалось открыть файл для чтения. @@ -398,17 +398,17 @@ No tilesets section found before layer section. - Не найдено набора тайлов до слоя тайлов. + Не найдено раздела с набором тайлов, расположенного до слоя тайлов. Error mapping tile id %1. - Ошибка при создании карты для тайла с ID %1. + Ошибка при создании карты для тайла с id %1. This seems to be no valid flare map. A Flare map consists of at least a header section, a tileset section and one tile layer. - Файл не соответствует спецификации Flare-карты. Flare карта состоит по крайней мере из одной секции заголовка, набора тайлов и слоя тайлов. + Возможно файл не соответствует спецификации Flare-карты. Flare карта состоит по крайней мере из одной секции заголовка, набора тайлов и слоя тайлов. @@ -418,7 +418,7 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -426,7 +426,7 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -439,7 +439,7 @@ Could not open file for reading. - Не удается открыть файл для чтения. + Не удалось открыть файл для чтения. @@ -449,7 +449,7 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -474,29 +474,29 @@ Could not open file for reading. - Не удается открыть файл для чтения. + Не удалось открыть файл для чтения. Error parsing file. - Ошибка при обработке файла. + Ошибка при разборе содержимого файла. Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. Error while writing file: %1 - Ошибка во время записи файла: + Ошибка во время записи файла: %1 Json template files (*.json) - + Json файлы шаблонов (*.json) @@ -504,17 +504,17 @@ Could not open file for reading. - Не удается открыть файл для чтения. + Не удалось открыть файл для чтения. Error parsing file. - Ошибка при обработке файла. + Ошибка при разборе содержимого файла. Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -526,7 +526,7 @@ Json tileset files (*.json) - Json tileset файлы (*.json) + Json файлы с наборами тайлов (*.json) @@ -534,12 +534,12 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. Lua files (*.lua) - Lua файлы (*.lua) + Lua файлы (*.lua) @@ -547,12 +547,12 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. Lua files (*.lua) - Lua файлы (*.lua) + Lua файлы (*.lua) @@ -585,7 +585,7 @@ Unload World - + Выгрузить Мир @@ -645,7 +645,7 @@ A - + А @@ -655,7 +655,7 @@ Ctrl+G - + Ctrl+G @@ -665,7 +665,7 @@ Ctrl+Alt+S - + Ctrl+Alt+S @@ -695,7 +695,7 @@ Ctrl+0 - + Ctrl+0 @@ -705,22 +705,22 @@ Save All - Сохранить все + Сохранить всё For Hovered Object - + Для объекта под курсором мыши Load World... - + Загрузить Мир... Highlight Hovered Object - + Подсвечивать объект под курсором мыши @@ -780,7 +780,7 @@ Offsets everything in a layer - Смещается все, что на слое + Смещается всё, что на слое @@ -790,7 +790,7 @@ Clear Recent Files - Очистить список недавних файлов + Очистить список ранее открытых файлов @@ -805,7 +805,7 @@ Ctrl+E - + Ctrl+E @@ -850,7 +850,7 @@ Ctrl+Shift+E - + Ctrl+Shift+E @@ -860,12 +860,12 @@ C&lose All - &Закрыть все + &Закрыть всё Ctrl+Shift+W - + Ctrl+Shift+W @@ -885,7 +885,7 @@ H - + H @@ -910,7 +910,7 @@ Ctrl+Shift+S - + Ctrl+Shift+S @@ -920,7 +920,7 @@ Snap to &Pixels - Привязать к пикселам + Привязать к пикселям @@ -1005,7 +1005,7 @@ Unable to read file: %1 - Не удается прочитать файл: %1 + Не удалось прочитать файл: %1 @@ -1018,7 +1018,7 @@ Invalid tileset parameters for tileset '%1' - Неверный параметр набора тайлов: '%1' + Неверные параметры для набора тайлов: '%1' @@ -1041,12 +1041,12 @@ Invalid draw order: %1 - Неверный порядок отображения: %1 + Неверный порядок отрисовки: %1 Invalid points data for polygon - Неверные координаты полигона + Неверные координаты для вершин многоугольника @@ -1077,7 +1077,7 @@ Unable to parse tile at (%1,%2) on layer '%3' - Не удается обработать тайл по координатам (%1, %2) на слое '%3' + Не удалось обработать тайл по координатам (%1, %2) на слое '%3' @@ -1089,7 +1089,7 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -1126,7 +1126,7 @@ Fixed - Исправлено + Фиксированный @@ -1136,8 +1136,8 @@ - Infinite - + Бесконечный + @@ -1149,7 +1149,7 @@ px Remember starting with a space. - + точек @@ -1169,7 +1169,7 @@ Tile render order: - Порядок отображения тайлов: + Порядок отрисовки тайлов: @@ -1188,7 +1188,7 @@ Based on Tileset Image - Основано на наборе тайлов + Основано на изображении набора тайлов @@ -1237,7 +1237,7 @@ px Remember starting with a space. - + точек @@ -1285,7 +1285,7 @@ New Tileset... - Новый набор тайлов... + Новый набор тайлов... @@ -1293,12 +1293,12 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. Could not open file. - Не удается открыть файл. + Не удалось открыть файл. @@ -1358,7 +1358,7 @@ X: - + X: @@ -1375,7 +1375,7 @@ Y: - + Y: @@ -1395,7 +1395,7 @@ Selected Layers - + Выбранные слои @@ -1461,7 +1461,7 @@ XML - + XML @@ -1484,7 +1484,7 @@ CSV - + CSV @@ -1559,22 +1559,22 @@ Export Options - + Параметры экспорта Resolve object types and properties - + Определить типы и свойства объектов Detach templates - + Отсоединить шаблоны Embed tilesets - + Встроить наборы тайлов @@ -1599,7 +1599,7 @@ Mouse wheel &zooms by default - + По-умолчанию колесо мыши выполняет масштабирование @@ -1610,7 +1610,7 @@ Native - Системный + Системная @@ -1675,7 +1675,7 @@ Uncaught exception in script. Please check console. - Неопределенное исключение в скрипте. Пожалуйста, проверьте консоль. + Необработанное исключение в скрипте. Пожалуйста, проверьте консоль. @@ -1711,7 +1711,7 @@ not a map - не карта + не является картой @@ -1807,7 +1807,7 @@ IBeam - I + IBeam @@ -1852,7 +1852,7 @@ Pointing Hand - Рука-указатель + Указующий перст @@ -1936,7 +1936,7 @@ Clear Shortcut - Очистить быстрый вызов + Очистить комбинацию клавиш @@ -2003,7 +2003,7 @@ Not set - Не указан + Не установлено @@ -2190,12 +2190,12 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. You must define a background_index property on the map! - Вы должны установить параметр background_index для карты! + Вы должны установить свойство background_index для карты! @@ -2205,17 +2205,17 @@ You must define a type property on each layer! - Вы должны установить параметр типа для каждого слоя! + Вы должны установить свойство типа для каждого слоя! You must define a tile_index property on each layer! - Вы должны установить параметр tile_index для каждого слоя! + Вы должны установить свойство tile_index для каждого слоя! You must define a scroll_speed property on each layer! - Вы должны установить параметр scroll_speed для каждого слоя! + Вы должны установить свойство scroll_speed для каждого слоя! @@ -2256,12 +2256,12 @@ X: - + X: Y: - + Y: @@ -2274,47 +2274,47 @@ Could not open file for reading. - Не удается открыть файл для чтения. + Не удалось открыть файл для чтения. Tilesheet must have equal spacings. - + Лист тайлов должен иметь разбиение на равные промежутки. Tilesheet must have equal margins. - + Лист тайлов должен иметь равные отступы. Different tile sizes per layer are not supported. - + Разные размеры тайлов на одном слое не поддерживаются. Invalid animation frame. - + Некорректный кадр анимации. Only object and tile layers supported. - + Поддерживаются только объекты и слои тайлов. Could not open file for writing - + Не удалось открыть файл для записи Exception: %1 - + Исключение: %1 Tbin map files (*.tbin) - Файлы Tbin карт (*.tbin) + Файлы Tbin карт (*.tbin) @@ -2323,13 +2323,13 @@ Bad property type - Неверный тип свойства + Неверный тип свойства Bad layer tile data - + Некорректные данные в слое тайлов @@ -2339,7 +2339,7 @@ File is not a tbin file. - Файл не является файлом tbin. + Файл не является файлом tbin. @@ -2349,7 +2349,7 @@ Unsupported property type - Данный тип свойства не поддерживается + Данный тип свойства не поддерживается @@ -2357,7 +2357,7 @@ Could not open file for writing. - Не удается открыть файл для записи. + Не удалось открыть файл для записи. @@ -2383,17 +2383,17 @@ Frame Duration: - + Длительность отображения кадра: ms - + миллисекунд Apply - + Применить @@ -2431,32 +2431,32 @@ Replace Tile - Заменить Tile + Заменить тайл Replace With Template - + Заменить на шаблон Replace With Template "%1" - + Заменить на шаблон "%1" Save As Template - Сохранить как Шаблон + Сохранить как Шаблон Detach - Отсоединить + Отсоединить Reset Template Instance(s) - Сбросить Шаблон(ы) + Сбросить Шаблон(ы) @@ -2540,22 +2540,22 @@ Replace Selection - + Заменить выделенное Add Selection - + Добавить выделенное Subtract Selection - + Исключить выделенное Intersect Selection - + Пересечь выделенное @@ -2591,7 +2591,7 @@ '%1': Property '%2' = '%3' on layer '%4' does not make sense. Ignoring this property. - + '%1': Свойство '%2' = '%3' слоя '%4' не имеет смысла. Игнорируем это свойство. @@ -2627,7 +2627,7 @@ No output_<name> layer found! - + Не найден слой output_<name>! @@ -2680,7 +2680,7 @@ Template tileset - + Шаблонный набор тайлов @@ -2690,7 +2690,7 @@ Template - Шаблон + Шаблон @@ -2730,7 +2730,7 @@ Open Template... - Открыть Шаблон.. + Открыть Шаблон... @@ -2746,7 +2746,7 @@ Locate Object Template - + Указать шаблон объекта @@ -2756,7 +2756,7 @@ Error Reading Object Template - + Ошибка при чтении шаблона объекта @@ -2787,7 +2787,7 @@ F - + F @@ -2920,7 +2920,7 @@ Select Working Directory - Выбрать рабочую директорию + Выбрать рабочую папку @@ -2946,7 +2946,7 @@ Executing: %1 - Выполняется: %1 + Выполняется: %1 @@ -2992,7 +2992,7 @@ C - + C @@ -3000,12 +3000,12 @@ Insert Point - Вставить точку + Вставить точку I - I + I @@ -3013,22 +3013,22 @@ Insert Polygon - Вставить полигон + Вставить многоугольник P - + P Connect Polylines - + Соединить ломаные линии Create Polygon - + Создать многоугольник @@ -3041,7 +3041,7 @@ R - + R @@ -3049,12 +3049,12 @@ Insert Template - Вставить шаблон + Вставить шаблон V - V + V @@ -3067,7 +3067,7 @@ E - E + E @@ -3085,7 +3085,7 @@ T - + T @@ -3093,7 +3093,7 @@ Unrecognized file format. - Неизвестный формат файла. + Неизвестный формат файла. @@ -3108,17 +3108,17 @@ Close - Закрыть + Закрыть Close Other Tabs - Закрыть другие вкладки + Закрыть другие вкладки Close Tabs to the Right - Закрыть вкладки справа + Закрыть вкладки справа @@ -3137,18 +3137,18 @@ Edit Polygons - Редактировать полигоны + Редактировать многоугольники O - O + O Split Segment - + Разделить сегмент @@ -3190,7 +3190,7 @@ Extend Polyline - + Продолжить ломаную линию @@ -3205,7 +3205,7 @@ E - + E @@ -3235,7 +3235,7 @@ Could not allocate sufficient memory for the image. Try reducing the zoom level or using a 64-bit version of Tiled. - Не удалось выделить память для изображения. Увеличьте масштаб или используйте 64-битную версию Tiled. + Не удалось выделить память для изображения. Уменьшите коэффициент масштабирования или используйте 64-битную версию Tiled. @@ -3245,7 +3245,7 @@ The resulting image would be %1 x %2 pixels and take %3 GB of memory. Tiled is unable to create such an image. Try reducing the zoom level. - Конечное изображение имеет размеры %1 x %2 пикселей и требует %3 GB памяти. Tiled не удалось создать изображение. Попробуйте увеличить масштаб. + Конечное изображение имеет размеры %1 x %2 пикселей и требует %3 GB памяти. Tiled не удалось создать изображение. Попробуйте уменьшить коэффициент масштабирования. @@ -3307,12 +3307,12 @@ Visible - Видимость + Видимый Locked - Заблокировать + Заблокированный @@ -3336,12 +3336,12 @@ Lock Other Layers - + Заблокировать другие слои Unlock Other Layers - + Разблокировать другие слои @@ -3424,27 +3424,27 @@ Ctrl+Q - + Ctrl+Q Ctrl+T - + Ctrl+T Ctrl+= - + Ctrl+= + - + + - - + - @@ -3455,17 +3455,17 @@ Load World - + Загрузить Мир Error Loading World - + Ошибка при загрузке Мира Reset to Default Layout - + Сбросить расположение в состояние по-умолчанию @@ -3485,22 +3485,22 @@ Ctrl+Shift+O - + Ctrl+Shift+O Ctrl+Shift+Tab - + Ctrl+Shift+Tab Ctrl+Tab - + Ctrl+Tab Alt+C - + Alt+C @@ -3512,18 +3512,18 @@ Extension Mismatch - Несоответствие расширений + Несоответствие расширения Error Opening File - Ошибка открытия файла + Ошибка при открытии файла Error Saving File - Ошибка сохранения файла + Ошибка при сохранении файла @@ -3533,7 +3533,7 @@ Tiled may not automatically recognize your file when loading. Are you sure you want to save with this extension? - Tiled может не распознать автоматически тип загружаемого файла при загрузке. Вы уверены, что хотите сохранить файл с данным расширением? + Возможно, Tiled не сможет автоматически распознать тип загружаемого файла при загрузке. Вы уверены, что хотите сохранить файл с данным расширением? @@ -3553,7 +3553,7 @@ Error Exporting Map - Ошибка экспорта карты + Ошибка при экспорте карты @@ -3595,12 +3595,12 @@ Overwrite Files - Переписать файлы + Перезаписать файлы [*]%1 - + [*]%1 @@ -3611,12 +3611,12 @@ Error Exporting Map! - Ошибка экспорта карты! + Ошибка при экспорте карты! Error Reloading Map - Ошибка загрузки карты + Ошибка при перезагрузке карты @@ -3659,7 +3659,7 @@ untitled - безымянный + безымянный @@ -3669,7 +3669,7 @@ Error Saving Template - Ошибка сохранения шаблона + Ошибка при сохранении шаблона @@ -3722,28 +3722,28 @@ Group %n Layer(s) - - - - + + Сгруппировать %n слой + Сгруппировать %n слоя + Сгруппировать %n слоёв Ungroup %n Layer(s) - - - - + + Разгруппировать %n слой + Разгруппировать %n слоя + Разгруппировать %n слоёв Duplicate %n Layer(s) - - - - + + Дублировать %n слой + Дублировать %n слоя + Дублировать %n слоёв @@ -3759,10 +3759,10 @@ Remove %n Layer(s) - - - - + + Удалить %n слой + Удалить %n слоя + Удалить %n слоёв @@ -3826,12 +3826,12 @@ Ctrl+Shift+A - + Ctrl+Shift+A Ctrl+Shift+D - + Ctrl+Shift+D @@ -3851,7 +3851,7 @@ Ctrl+Shift+Up - + Ctrl+Shift+Up @@ -3866,12 +3866,12 @@ Ctrl+Shift+L - Ctrl+Shift+L + Ctrl+Shift+L Select &All - Выделить вс&е + Выделить вс&ё @@ -3891,7 +3891,7 @@ Autocrop - + Автоматическая обрезка @@ -3928,17 +3928,17 @@ &Remove Layers - + &Удалить слои R&aise Layers - + &Поднять слои &Lower Layers - + &Опустить слои @@ -3958,7 +3958,7 @@ Lock/&Unlock all Other Layers - + З&аблокировать/Разблокировать другие слои @@ -4021,17 +4021,17 @@ &Group Layers - + &Сгруппировать слои &Ungroup Layers - + &Разгруппировать слои &Duplicate Layers - + &Дублировать слои @@ -4049,13 +4049,13 @@ Paste in Place - + Вставить в место Error Reading Tileset - Ошибка чтения набора тайлов + Ошибка при чтении набора тайлов @@ -4074,7 +4074,7 @@ Tool Options - Настройки инструмента + Настройки инструмента @@ -4209,7 +4209,7 @@ No tiles found in the tileset image when using the given tile size, margin and spacing! - Не удалось найти тайлы в изображении набора тайлов, соответствующие заданным параметрам! + Не удалось найти тайлы в изображении набора тайлов, соответствующие заданным параметрам (размер тайла, отступы и разрядка)! @@ -4233,12 +4233,12 @@ News - + Новости News Archive - + Архив новостей @@ -4486,7 +4486,7 @@ System default - Системные настройки + Системные настройки по-умолчанию @@ -4504,19 +4504,19 @@ Add Property - Добавить параметр + Добавить свойство Rename Property - Переименовать параметр + Переименовать свойство Paste Property/Properties - Вставить свойство + Вставить свойств Вставить свойство Вставить свойства @@ -4525,7 +4525,7 @@ Remove Property/Properties - Удалить свойство + Удалить свойств Удалить свойство Удалить свойства @@ -4572,12 +4572,12 @@ Properties - Параметры + Свойства Remove Property - Удалить параметр + Удалить свойство @@ -4600,7 +4600,7 @@ Manual - Руководство + Вручную @@ -4620,7 +4620,7 @@ Wang Set - + Набор плиток Вана @@ -4645,7 +4645,7 @@ Tile Render Order - Порядок отображения тайлов + Порядок отрисовки тайлов @@ -4678,7 +4678,7 @@ Visible - Видимость + Видимый @@ -4695,22 +4695,22 @@ Edge Count - + Количество граней Corner Count - + Количество углов Wang Color - + Цвет плиток Вана Change Infinite Property - + Изменить значение для свойства бесконечности @@ -4757,7 +4757,7 @@ Infinite - + Бесконечный @@ -4812,7 +4812,7 @@ Locked - Заблокировать + Блокировка @@ -4930,7 +4930,7 @@ Terrain - Участок + Участок местности @@ -4954,23 +4954,23 @@ Shape Fill Tool - + Инструмент заливки форм P - P + P Rectangle Fill - + Заливка прямоугольника Circle Fill - + Заливка окружности @@ -4979,65 +4979,65 @@ Random Mode - Случайный режим + Случайный режим D - D + D Wang Fill Mode - + Режим заливки плиток Вана Flip Horizontally - Отразить по горизонтали + Отразить по горизонтали Flip Vertically - Отразить по вертикали + Отразить по вертикали Rotate Left - Вращать влево + Вращать влево Rotate Right - Вращать вправо + Вращать вправо X - X + X Y - Y + Y Shift+Z - Shift+Z + Shift+Z Z - Z + Z @@ -5052,7 +5052,7 @@ B - + B @@ -5060,48 +5060,48 @@ Open Tileset - Открыть набор тайлов + Открыть набор тайлов %1: Couldn't find "%2" - %1: Не удалось найти "%2" + %1: Не удалось найти "%2" Locate Tileset - + Указать набор тайлов Choose the Templates Folder - + Выбрать папку с шаблонами Templates - Шаблоны + Шаблоны Choose Templates Directory - Выбрать директорию для шаблонов + Выбрать папку для шаблонов All Files (*) - Все файлы (*) + Все файлы (*) Locate External Tileset - Расположение внешнего набора тайлов + Указать внешний набор тайлов Error Reading Tileset - Ошибка чтения набора тайлов + Ошибка при чтении набора тайлов @@ -5109,7 +5109,7 @@ Select All Instances - + Выбрать все экземпляры @@ -5118,7 +5118,7 @@ Terrain Brush - Рисование участком + Рисование участком местности @@ -5132,32 +5132,32 @@ Terrains - Участки + Участки местности Erase Terrain - Очистка участка + Очистка участка местности Add Terrain Type - Добавить тип участка + Добавить тип участка местности Remove Terrain Type - Удалить тип участка + Удалить тип участка местности Move Terrain Type Up - + Передвинуть тип участка местности вверх Move Terrain Type Down - + Передвинуть тип участка местности вниз @@ -5165,7 +5165,7 @@ Terrain &Properties... - &Параметры участка... + &Свойства участка местности... @@ -5181,7 +5181,7 @@ Delete Frames - Удалить рамки + Удалить кадры @@ -5189,12 +5189,12 @@ Delete - Удалить + Удалить Cut - Вырезать + Вырезать @@ -5209,7 +5209,7 @@ R - + R @@ -5333,7 +5333,7 @@ Error saving tileset: %1 - Ошибка сохранения карты: %1 + Ошибка при сохранении набора тайлов: %1 @@ -5375,7 +5375,7 @@ Tile Animation Editor - Редактор анимации + Редактор анимации @@ -5410,12 +5410,12 @@ New Terrain - Новый участок + Новый участок местности New Wang Set - + Новый набор плиток Вана @@ -5446,17 +5446,17 @@ Set Wang Set Image - + Задать изображение для набора плиток Вана Set Wang Color Image - + Задать изображение для цвета плиток Вана &Swap Tiles - &Обменять тайлы + П&оменять тайлы местами @@ -5469,7 +5469,7 @@ Tiled map files (*.tmx *.xml) - Файлы Tiled карт (*.tmx *.xml) + Файлы Tiled карт (*.tmx *.xml) @@ -5477,7 +5477,7 @@ Tiled tileset files (*.tsx *.xml) - Файлы набора тайлов Tiled (*.tsx *.xml) + Файлы набора тайлов Tiled (*.tsx *.xml) @@ -5550,7 +5550,7 @@ Wang Brush - + Кисть для рисования плиток Вана @@ -5561,7 +5561,7 @@ Missing wang tile transition - + Отстутствует переход для плиток Вана @@ -5569,12 +5569,12 @@ Edge Colors - + Цвета граней Corner Colors - + Цвета углов @@ -5582,7 +5582,7 @@ Pick Custom Color - Выбрать случайный цвет + Выбрать другой цвет @@ -5591,48 +5591,48 @@ Patterns - Паттерны + Паттерны Colors - Цвета + Цвета Wang Sets - + Наборы плиток Вана Erase WangIds - + Очистить идентификаторы плиток Вана Add Wang Set - + Добавить набор плиток Вана Remove Wang Set - + Удалить набор плиток Вана Add Edge Color - + Добавить цвет грани Add Corner Color - + Добавить цвет угла Remove Color - Удалить цвет + Удалить цвет @@ -5640,7 +5640,7 @@ Wang Set &Properties... - + Свойства плиток &Вана... @@ -5648,7 +5648,7 @@ Tiled template files (*.tx) - Файлы шаблонов Tiled (*.tx) + Файлы шаблонов Tiled (*.tx) @@ -5656,13 +5656,14 @@ Could not open file for reading. - Не удается открыть файл для чтения. + Не удалось открыть файл для чтения. JSON parse error at offset %1: %2. - + Ошибка разбора JSON по смещению %1: +%2. @@ -5693,7 +5694,7 @@ Add Objects - + Добавить объекты @@ -5703,7 +5704,7 @@ Remove Objects - Удалить объекты + Удалить объекты @@ -5733,27 +5734,27 @@ Change %1 Properties - Изменить параметры %1 + Изменить свойства для %1 Set Property - Указать параметр + Задать свойство Add Property - Добавить параметр + Добавить свойство Remove Property - Удалить параметр + Удалить свойство Rename Property - Переименовать параметр + Переименовать свойство @@ -5763,7 +5764,7 @@ Erase - Удалить + Стереть @@ -5820,7 +5821,7 @@ Change Drawing Offset - Изменить смещение отображения + Изменить смещение отрисовки @@ -5845,48 +5846,48 @@ Lower Layer - Сместить слой ниже + Переместить слой ниже Raise Layer - Сместить слой выше + Переместить слой выше Change Polygon - Изменить полигон + Изменить многоугольник Toggle Polygon/Polyline - + Переключить режим многоугольник/ломаная линия Split Polyline - + Разбить ломаную линию Add Terrain - Добавить участок + Добавить участок местности Remove Terrain - Удалить участок + Удалить участок местности Change Tile Terrain - Изменить участок тайла + Изменить участок местности тайла Change Terrain Image - Изменить изображение участка + Изменить изображение участка местности @@ -5896,17 +5897,17 @@ Hide Layer - Спрятать слой + Скрыть слой Lock Layer - Закрепить слой + Закрепить слой Unlock Layer - Открепить слой + Открепить слой @@ -5926,7 +5927,7 @@ Hide Object - Спрятать объект + Скрыть объект @@ -5940,19 +5941,19 @@ Detach %n Template Instance(s) - - - - + + Отсоединить %n экземпляр шаблона + Отсоединить %n экземпляра шаблонов + Отсоединить %n экземпляров шаблонов Reset %n Instances - - - - + + Сбросить %n экземпляр + Сбросить %n экземпляра + Сбросить %n экземпляров @@ -5967,7 +5968,7 @@ Change Terrain Name - Переименовать участок + Переименовать участок местности @@ -5989,13 +5990,13 @@ Raise Object - Поднять объект + Переместить объект вверх Lower Object - Опустить объект + Переместить объект вниз @@ -6026,7 +6027,7 @@ Change Tile Width - Изменить длину тайла + Изменить ширину тайла @@ -6036,7 +6037,7 @@ Change Infinite Property - + Изменить значение для свойства бесконечности @@ -6115,7 +6116,7 @@ Swap Tiles - Обменять тайлы + Переставить тайлы местами @@ -6125,81 +6126,81 @@ Add Wang Set - + Добавить набор плиток Вана Remove Wang Set - + Удалить набор плиток Вана Change Tile WangId - + Изменить идентификатор плитки Вана для тайла Change Wang Set edge count - + Изменить количество граней для набора плиток Вана Change Wang Set corner count - + Изменить количество углов для набора плиток Вана Remove Wang Color - + Удалить цвет для набора плиток Вана Set Wang Set Image - + Установить изображение для набора плиток Вана Move Terrain Up - Поднять участок + Поднять участок местности Move Terrain Down - Опустить участок + Опустить участок местности Change Wang Set Name - + Изменить название набора плиток Вана Replace Template - Заменить шаблон + Заменить шаблон Shape Fill - + Заливка формы Raise %n Layer(s) - - - - + + Переместить вверх %n слой + Переместить вверх %n слоя + Переместить вверх %n слоёв Lower %n Layer(s) - - - - + + Переместить вниз %n слой + Переместить вниз %n слоя + Переместить вниз %n слоёв @@ -6213,12 +6214,12 @@ Copy File Path - Копировать путь к файлу + Копировать путь к файлу Open Containing Folder... - Открыть папку, содержащую карту... + Открыть папку, содержащую карту... @@ -6226,93 +6227,93 @@ Renders a Tiled map (TMX format) to an image. - + Преобразовывает тайловую карту (в TMX формате) в изображение. The scale of the output image (default: 1). - + Коэффициент масштабирования результирующего изображения (по-умолчанию: 1). scale - + коэффициент масштабирования The requested size in pixels at which a tile is rendered (overrides the --scale option). - + Запрашиваемый размер изображения в точках в котором будет отрисовываться тайл (переопределяет значение, заданное через --scale). size - + размер The output image fits within a SIZE x SIZE square (overrides the --scale and --tilesize options). - + Результирующее изображение помещается в квадрат с размерами SIZE x SIZE (переопределяет значения, заданные через --scale и --tilesize). Antialias edges of primitives. - + Сглаживание углов для графических примитивов. Use nearest neighbour instead of smooth blending of pixels. - + Использовать принцип ближайшего соседа вместо плавного смешивания пикселей. Ignore all layer visibility flags in the map file, and render all layers in the output (default is to omit invisible layers). - + Игнорировать свойства видимости для всех слоёв в файле карты и отрисовать их все (по-умолчанию невидимые слои исключаются из отрисовки). Specifies a layer to omit from the output image. Can be repeated to hide multiple layers. - + Задаёт слой, который следует исключить из результирующего изображения. Может повторяться, чтобы скрыть множество слоёв. name - + имя Map file to render. - + Файл карты для отрисовки. Image file to output. - + Результирующий файл изображения. Invalid size specified: "%1" - + Указан некорректный размер: "%1" Invalid tile size specified: "%1" - + Указан некорректный размер тайла: "%1" Invalid scale specified: "%1" - + Указан некорректный коэффициент масштабирования: "%1" Displays a Tiled map (TMX format). - + Отображает тайловую карту (в TMX формате). Map file to display. - + Файл карты для отображения.