Commit graph

139 commits

Author SHA1 Message Date
biwa
3ee12f4ca7 Sectors Mode: tag and effect labels are now only updated when necessary, increasing performance 2020-11-16 00:45:57 +01:00
biwa
41e6632b18 Sectors Mode: fixed an potential crash when joining/merging sectors 2020-11-01 21:29:57 +01:00
biwa
4a0e1d7c62 Sectors Mode: significantly increased rendering speed 2020-10-31 20:45:05 +01:00
biwa
4991c323c3 Linedefs Mode, Sectors Mode, Vertices Mode, Sound Environment Mode, Sound Propagation Mode: slightly improved performance when moving the mouse 2020-10-31 16:09:22 +01:00
biwa
160db8da8c Editing modes: fixed some crashes related to undoing/redoing while objects with associations were highlighted 2020-10-09 18:53:10 +02:00
biwa
ba1abbcb4b Sectors mode: fixed a bug where applying floor and ceiling brightness gradients didn't work correctly 2020-08-04 16:25:49 +02:00
biwa
c047b98ba4 Sectors Mode: fixed a bug that could cause a crash when drag-selecting over areas that contained sectors after deleting those sectors 2020-07-27 20:18:33 +02:00
biwa
f204a17298
Improved associations (#440)
Improved associations and event lines. Refactorings to make the whole thing more sensible (hopefully). Options to display labels on event lines (can be configured in Preferences -> Editing).
2020-07-16 22:01:37 +02:00
biwa
5ddbd73916 Sectors Mode: the sectors things are in are only determined if necessary, which should increase performance when switching into Sectors Mode in very big maps 2020-06-21 12:52:36 +02:00
biwa
72169060f9 Things Mode: performing the smart grid transform action will now set the grid origin to the selected or highlighted thing
Sectors Mode: performing the smart grid transform action will now reset the grid transform
2020-06-15 21:25:31 +02:00
biwa
9338d1221f Removed lots of unnecessary casts to float of the Math methods. Also removed some other minor implicit casts 2020-05-22 22:30:32 +02:00
biwa
91cbcde1eb It's compiling! 2020-05-21 14:20:02 +02:00
biwa
47cec444b5 Slopes of 3D floor are now preserved when dragging the tagged sectors
Added option to lock texture offsets of 3D floors when dragging the tagged sectors
2020-05-03 17:25:07 +02:00
biwa
2516b97cee - Added option to enable additive paint selecting without holding shift independently from regular additive selecting 2019-06-20 15:38:41 +02:00
Mistranger
7168ad2095 Add "Mouse selection threshold" option (#141 by Mistranger)
* Mouse selection threshold

* Cleanup

* Fix selection bug
2017-08-24 16:24:03 +03:00
davidxn
3013723e91 Improve MakeDoor form - options for line special and tag (PR #91 by davidxn) 2017-04-03 04:20:40 -04:00
ZZYZX
ebd7fb1a57 Upgrade to VS2015 (14.0) 2017-01-15 00:35:40 +02:00
MaxED
aecd017b19 Added, Errors and Warnings window: most of warnings/errors related to (G)ZDoom text lump parsing can now be double-clicked to show warning/error source in the Script Editor.
Fixed: some map format conversion errors were never displayed, because errors list was cleared after performing map conversion.
Fixed: 3d floor indicators in 2D modes were not updated after leaving Visual mode.
Fixed: some UDMF-only interface buttons were never removed after converting map format from UDMF.
2016-11-26 00:02:56 +00:00
MaxED
4c2b60926c Silenced some compiler warnings... 2016-10-28 21:32:52 +00:00
MaxED
70d35bf1d6 Added, Edit Sectors window: added UI for floor/ceiling portals.
Updated ZDoom_DECORATE.cfg.
Updated documentation ("Game Configuration - Sectors Settings" page).
2016-10-11 12:58:35 +00:00
MaxED
8c6971a437 Changed, Vertices/Linedefs/Sectors/Things modes: selected map element is no longer deselected after accepting Edit window when it was the only selected map element when the Edit window was opening. 2016-09-27 19:39:46 +00:00
MaxED
2ea72437be Added, Visual mode: added support for "Change Floor Brightness to this Brightness" and "Change Ceiling Brightness to this Brightness" Boom actions.
Changed, Sectors mode: "Flip Linedefs" and "Align Linedefs" actions will no longer flip single-sided linedefs with only front side.
Fixed, Script Editor: fixed a crash when trying to update script navigator combo box when switching to a never saved ACS script.
2016-07-20 19:17:31 +00:00
MaxED
364b3c11c7 Changed: "Selection Options" window is now resized automatically.
Fixed: parts of UniFileds.UniValuesMatch() logic were inverted. In some cases this resulted in incorrect behavior of "Select Similar" action in UDMF map format.
Fixed, UDMF: alpha should be ignored when applying sector fade/light color gradients.
Ported eevee's fix for incorrect sector geometry occasionally created after dragging map elements (more info: https://github.com/sirjuddington/SLADE/issues/542).
2016-06-20 13:36:10 +00:00
MaxED
3d2d9e21ef Changed, Classic modes: displayed mouse map position coordinates are now snapped to current grid size.
Updated model pitch handling to match current GZDoom implementation.
Fixed imprecise vertex coordinates generated by Draw Ellipse mode.
Fixed a resource loading exception when opened map file wad was located in the root of a Directory resource.
Internal: changed output of all InterpolationTools methods from int to float.
Fixed, Internal: InterpolationTools.InterpolateColor() delta usage was inverted.
2016-06-03 20:22:07 +00:00
MaxED
b1e5d8b5be Added, Sound Environments mode: sound environments of the same type are now colored using the same color.
Added, Sound Environments mode: current sound environment is now highlighted (can be toggled using "Toggle Highlight" action).
Added: Tag selectors now have up/down buttons.
Fixed, Sound Environments mode: sound environments were not updated after performing Undo/Redo actions.
Fixed, Sound Propagation mode: sound zones were not updated after performing Undo/Redo actions.
Internal: moved "Toggle Highlight" action to the core, also changed it's category to "View".
Internal: "Toggle Highlight" action state is now saved in the Program configuration.
Updated ZDoom_DECORATE.cfg (GetZAt).
Updated ZDoom_linedefs.cfg (Sector_SetPortal args).
2016-05-12 22:35:11 +00:00
MaxED
133c2fce34 Fixed a bunch of typos. 2016-05-04 14:02:13 +00:00
MaxED
5a8c6342ea Fixed, Script Editor: fixed a crash triggered by creating a new tab, then closing script editor.
Fixed, Sectors mode: tags and effect labels were displayed instead of selection number labels after disabling, then enabling selection numbers when there were sectors with tags or effects selected.
2016-04-30 19:27:26 +00:00
MaxED
6e4540b314 Internal: some DataReaders refactoring.
Updated ZDoom_DECORATE.cfg (ALLOWTHRUFLAGS flag).
2016-04-29 13:42:52 +00:00
MaxED
6b25086795 Internal: did some refactoring. 2016-04-27 09:13:07 +00:00
MaxED
13aabd4257 Added, Drag Vertices\Linedefs\Sectors\Edit Selection modes: sidedefs facing outside of current selection are now reattached/added/removed after moving the selection.
Currently this will work as intended only if the selection ends up either completely inside a single sector or completely outside of any sector. Also this logic won't be applied if the selection contains the lines with only start or end vertex selected.
Internal: some TextLabel refactoring.
2016-04-25 14:48:39 +00:00
MaxED
b1ac703485 Added, Sectors, Linedefs, Things modes: map element selection order of rectangular selection is now direction-dependent. 2016-04-22 20:17:21 +00:00
MaxED
d888e57c76 Added, Draw Lines mode: additional guidelines and horizontal/vertical line lengths can now be displayed for currently drawn line using "Show guidelines" top menu button.
Changed, Draw Lines mode: line angles are now shown only when "Show guidelines" mode is enabled.
Fixed, Draw Lines mode: in some cases "Snap to cardinal directions" mode was snapping only to diagonals.
Fixed, Draw Lines mode: snap to geometry behaved incorrectly when "Snap to cardinal directions" mode was enabled.
Changed, Things mode: dynamic light shape is now drawn using highlight color when a dynamic light thing is highlighted.
Added more sanity checks to MODELDEFS parser.
2016-04-21 21:00:58 +00:00
MaxED
3eb05509af Added, Visual mode: "Increase/Decrease Scale", "Reset Texture Offsets" and "Reset Local Texture Offsets" actions now work when used on 3d floor sides.
Fixed: CVARINFO parser was unable to parse negative int/float values.
Fixed: in some cases TextLabel text size was checked before it was calculated. 
Internal, Visual mode: reduced the number of unnecessary geometry updates when changing map geometry.
Updated ZDoom_DECORATE.cfg (atan2 and VectorAngle).
2016-04-19 20:40:42 +00:00
MaxED
580f7d4461 Classic modes: further text label rendering optimization.
MODELDEF parser: rewrote most of the parser logic. Now it picks actor model(s) based on Frame / FrameName properties.
2016-04-06 11:44:38 +00:00
MaxED
ee12da96a1 Sectors, Linedefs, Things modes: optimized text label rendering.
Fixed, Things mode: in some cases selection labels were not updated after editing a thing.
Fixed, Things mode: selection labels were positioned incorrectly on things with FixedSize setting.
Fixed, Sectors mode: fixed a crash when selecting self-referencing sector when selection labels were enabled.
Fixed, Visual mode: in some cases Auto-align texture actions were not working when "use long texture names" Map Options setting was enabled.
Fixed, MD2/MD3 loader: available animation frames upper bound check was performed incorrectly, which would cause a crash in some very special cases.
Fixed, Game configurations: most Hexen/ZDoom teleport actions use TeleportDests as teleport targets, not MapSpots.
2016-04-05 22:24:36 +00:00
MaxED
a4428cf244 Added, Linedefs mode, Things mode: selection numbers can now be displayed and can be toggled using the "View Selection Numbering" mode toolbar button.
Added, Linedefs mode, Things mode: sector tags can now be displayed and can be toggled using the "View Sector Tags" mode toolbar button.
Fixed, Classic modes, DB2 bug: in some cases text label size was queried before it was calculated, resulting in text labels being rendered when they shouldn't.
Updated ZDoom_DECORATE.cfg (A_LogFloat).
2016-04-04 22:20:49 +00:00
MaxED
a9c64fe521 Changed, Texture Browser window: "All" textures group is now saved/reselected like the rest of the texture groups when closing/opening the window.
Changed, Classic modes: bigger Thing arrows are now rendered when thing sprite rendering is skipped.
Changed, Classic modes: when "Fixed Things Scale" option is enabled, thing size stays at 2x scale instead of 1x when extra bounding box is rendered.
Added Preferences -> Appearance -> "Things transparency (Things mode)" slider.
Renamed Preferences -> Appearance -> "Things transparency" to "Things transparency (other modes)".
Externalized thing bounding box and arrow texture, used to render things in Classic modes (Textures/ThingTexture2D.png).
Updated ZDoom_DECORATE.cfg (A_SetUserVarFloat, A_SetUserArrayFloat).
2016-04-01 10:49:19 +00:00
MaxED
f646dd7a57 Classic modes: rewritten and optimized some parts of text label rendering logic.
Internal, API: TextLabels can now display multi-line text, their font can be changed, they can have a background.
2016-03-30 23:25:03 +00:00
MaxED
a5fffa9c3a Added Preferences -> Appearance -> "Things transparency" slider. It controls Things transparency in all classic modes except Things mode.
Added Preferences -> Appearance -> "Hidden Things transparency" slider. It controls transparency of Things hidden by Things filter in Things mode, of all things :)
2016-03-30 11:29:39 +00:00
MaxED
dd26c3ded2 Internal: removed some duplicate casts, marked some classes is IDisposable, some streams were disposed more than once. 2016-03-18 12:52:12 +00:00
MaxED
23d2a27dec Added, Draw Ellipse mode: angle setting can now be changed using "Rotate Clockwise" and "Rotate Counterclockwise" actions.
Added, Draw Line and Draw Curve modes: added "Auto-finish drawing" setting. When enabled, the modes will automatically finish drawing when currently drawn lines and already existing level geometry form a closed shape.
Changed: sector-wise linedef flipping is now done using the new "Align Linedefs" action. "Flip Linedefs" action works the same as in DB2 again.
Changed: when a map was already loaded, using "Open Map" action will use that map's directory as the starting directory.
Changed: official IWADs can no longer be saved.
Changed: disabled lump ranges/duplicate entries checks for official IWADs.
Changed: wad type is now preserved when saving a map (previously all wads were saved as PWADs).
Changed: moved Updater.exe launch much closer to the editor termination point to avoid any chance of it closing the editor before it properly closes itself.
Updated ZDoom_DECORATE.cfg (A_Blast).
Updated documentation.
2016-03-14 10:25:27 +00:00
MaxED
49525177e3 Cosmetic: changed ' to " in some more Error and Warning messages. 2016-03-08 20:41:06 +00:00
MaxED
3a35b7603a Fixed, Map Analysis mode, "Check stuck things" check: rewritten parts of the flags checking logic to allow more accurate flag checks.
Fixed, Map Analysis mode: fixed a crash when trying to dissolve an invalid sector when one of it's linedefs referenced it on the both sides.
Fixed, Sectors mode: fixed incorrect undo description when deleting sectors.
Internal: joined declaration and assignment of some more variables.
2015-12-28 15:01:53 +00:00
MaxED
e44b918b52 Changed, "Select Similar", "Paste Properties Special" actions properties windows, Linedefs: removed "Sidedef Properties" from Linedef flags tab.
Fixed several issues with "Synchronized Things Selection" setting:
- Things were not deselected after dragging a single sector.
- Things were not deselected after editing properties of a single sector.
- Things sector references were not updated after using "Join Sectors" and "Merge Sectors" actions.
- Things (de)selection is now applied to all things, instead of only the ones visible using current Things Filter.
2015-12-13 19:18:09 +00:00
MaxED
e4d2019d82 Fixed, Visual mode, "Auto-align textures" actions, UDMF: vertical offsets of non-wrapped middle textures should not be clamped.
Fixed, Visual mode: brightness of 3d floors with "disable lighting" flag was calculated incorrectly.
Fixed, Sectors mode: 3d floor linedef indicators were not updated after using "Join Sectors" and "Merge Sectors" actions.
2015-12-02 13:55:15 +00:00
MaxED
ff40bdc588 Fixed, Visual mode: fixed a crash when undoing 3d floor creation.
Fixed: 3d floor linedef indicators shown in Classic modes were not updated when 3d floor creation was undone in Visual mode.
Performance optimization when selecting sectors in Sectors mode with "Synchronized Things selection" setting enabled.
2015-11-08 20:20:46 +00:00
MaxED
17ac1c6db5 Sectors/Linedefs modes: removed "Select Things in Selected Sectors" action.
Sectors mode: removed "Move Things in Selected Sectors" toolbar button.
Sectors mode: added "Synchronized Things Editing" menu item, action and toolbar button. When enabled, things dragging will be synchronized to sector dragging. Regular, Paint and Rectangular selection will also select things (holding Alt while selecting inverts this behavior). Deleting sectors will also delete selected things.
Linedefs mode: added "Synchronized Things Editing" menu item, action and toolbar button. When enabled, selected things will be dragged when dragging linedefs. Rectangular selection will also select things (holding Alt while selecting inverts this behavior).
Changed: selection info now always displays info about all types of map elements.
Fixed: .dbs containing only current map settings was created when trying to save unchanged map. 
Fixed, Visual mode, "Copy Texture" action: when "Use long texture names" option is disabled, texture name as stored in Sidedef should be used, not the 8-char texture name.
Updated documentation.
2015-11-03 08:54:56 +00:00
MaxED
3fb5679a9a Fixed: "Sectors -> Select Things in Selected Sectors" menu item was not triggering the appropriate action.
Fixed: "Select Things in Selected Sectors" action was clearing selected sectors without updating the display.
Changed, Sectors mode: number of selected things is now displayed in the info panel.
Changed, Game Configurations window, "Testing" tab: game engine executable browser now opens up when clicking the "Add game engine" button.
Changed, Game Configurations window, "Testing" tab: default game engine display name is now generated from the folder name game engine executable is in.
Changed, Visual mode: Sector_Outside (87) sector effect is now taken into account when determining sector fog color.
Game configurations: added "defaultwalltexture", "defaultfloortexture" and "defaultceilingtexture" parameters. These define textures used when drawing a sector (usually the first sector of a map only).
Game configurations: classic game configurations now use "-warp" command to load the map.
Game configurations: factorized testing parameters into "Includes\Test_params.cfg".
Added internal functions to Hexen acs scripting configuration.
Updated documentation ("Game Configuration - Basic Settings" topic).
2015-10-23 12:01:27 +00:00
MaxED
a182a5098d Game Configurations: added Vanilla Strife, Vanilla Heretic and Vanilla Hexen game configurations.
Added "makedoorceil" game configuration property. Works the same way as "makedoortrack" and "makedoordoor", but for ceilings of door sectors. 
Changed, Game configurations: the editor no longer tries to load DECORATE/MODELDEF/VOXELDEF/GLDEFS/REVERBS lumps when "decorategames" setting is not specified / is set to empty string.
Changed, General interface: "Tools -> Reload MODELDEF/VOXELDEF" and "Tools -> Reload GLDEFS" menu items are no longer shown when current game configuration doesn't support DECORATE. 
Fixed a crash when pasting linedef/thing properties in Hexen map format.
Fixed, Visual mode: Visual Thing resources were not fully unloaded when resetting D3D device leading to crash when switching to the editor from a DX-using game engine (like ZDoom) running in fullscreen.
Fixed: in some cases, when current game configuration supported multiple script compilers, it was possible to open/create a map or change map options without selecting any script compiler.
Fixed, New Map Options window: default map name was not updated when switching game configurations.
Fixed: copied map element properties were not reset after switching to another map.
Fixed: stored textures for "Make Door" action were not reset after switching to another map.
Fixed, Game Configurations window: currently selected test engine name was not updated when pasting test engines from another configuration. 
Fixed, Game Configurations: all "Heretic in Doom map format" configurations were using Doom sector effects list.
Fixed, Game Configurations: all "Strife in Doom map format" configurations were using Doom sector effects list.
2015-10-21 13:35:42 +00:00
MaxED
13c3155db5 Removed "Paste Properties Options" action.
Added "Paste Properties Special" actions in "Classic" and "Visual" categories. They work the same way as "Paste Special" action.
Added: "Copy Properties", "Paste Properties" and "Paste Properties Special" options are now shown in the Edit menu if current classic mode supports them.
Changed, Paste Properties Special window: only options relevant to current map format are now displayed.
Changed, Paste Properties Special window, UDMF: all UI-managed options are now available.
Fixed: MAPINFO parser was unable to process "include" directives.
Fixed, General interface: selection info was reset to "Nothing selected" after few seconds regardless of current selection.
Fixed, Visual mode: thing bounding boxes were not updated when changing things positions using Randomize mode.
Fixed, Visual mode: event lines were displayed at incorrect height when entering Visual mode for the first time.
Fixed, Texture Browser window: when MixTexturesFlats Game Configuration option is disabled, textures/flats are no longer shown in the Used group when flats/textures with the same names are used in the map. 
Fixed(?): probably fixed an exception some users reported when trying to initialize a Classic mode after switching from Visual mode with "Sync cameras" option enabled.
Changed, Game configurations, Thing Categories: a block must have at least one thing category property to be recognized as a thing category.
Changed, Visplane Explorer: the plugin now outputs more info when it fails to initialize vpo.dll.
Cosmetic, Thing Edit window, Doom/Hexen map format: adjusted UI layout so thing flags control no longer displays scrollbars in Hexen map format.
Internal: merged methods from UDMFTools into UniFields, removed UDMFTools. 
Updated Inno Setup script (added VC++ 2008 SP1 distributive). 
Updated ZDoom_DECORATE.cfg (A_CheckBlock).
Updated documentation (added "System Requirements" page).
2015-10-09 12:38:12 +00:00