Commit graph

120 commits

Author SHA1 Message Date
MaxED
751e2dd3e3 Added some boilerplate to clipboard operations. 2016-05-06 08:47:30 +00:00
MaxED
133c2fce34 Fixed a bunch of typos. 2016-05-04 14:02:13 +00:00
MaxED
977adb47f2 Added: holding Control key while switching to/from Visual mode will now temporarily disable position synchronization (works only when 'Synchronize camera position between 2D and 3D modes' Preferences option is enabled).
Fixed severe lock-up after finishing dragging many vertices/linedefs/sectors in Classic modes.
Updated documentation ("Synchronizing camera position").
2016-04-29 21:38:43 +00:00
MaxED
70586e3538 Fixed, Classic modes: fixed excessive redraws and text label / sector highlight flickering when using rectangular selection with modifier keys. 2016-04-28 20:41:10 +00:00
MaxED
6b25086795 Internal: did some refactoring. 2016-04-27 09:13:07 +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
5121619dc1 Fixed, Linedefs mode: fixed a crash on undoing linedef draw when trying to update a text label for disposed linedef. 2016-04-18 08:10:30 +00:00
MaxED
5fd79cd7a2 Fixed, "Check Polyobjects" error check: an error is no longer added when "Mirror Polyobject Number" of "Polyobj_Startline" is 0.
Fixed, "Find and Replace" mode: "Find and Replace" window no longer closes when no results are found and Replace mode is enabled.
Changed, "Find and Replace" mode: renamed some search modes for better grouping.
2016-03-24 09:25:54 +00:00
MaxED
db9de0d349 Fixed: HiRes images should not be used on surfaces with long texture names.
Changed, Draw Lines and Draw Curve modes: "Auto-finish drawing" option now works regardless of "Continuous drawing" option (previously it worked only when the latter was enabled). 
Changed: position and size of the "Errors and Warnings" window is now stored while the editor is running.
Internal: rewritten parts of long texture names support code. It now involves much less special handling.
Updated ZDoom_DECORATE.cfg (A_QuakeEx, A_CheckBlock).
Updated ZDoom_ACS.cfg (QuakeEx).
Updated ZDoom ACC (QuakeEx).
2016-03-23 14:52:33 +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
5fde78a2c9 Added, Tag Explorer plugin, UDMF: added multiple tags support.
Changed, cosmetic: elapsed time is now displayed after resources loading finishes.
Changed, internal: changed Clock.CurrentTime type to long.
Fixed, Tag Statistics window: in some cases the map view was not updated after selecting items in Sectors/Linedefs/Things columns. 
Fixed, cosmetic: Draw Curve mode icon was missing a shadow.
2016-03-14 00:01:21 +00:00
MaxED
09b32eba42 Fixed, Visual mode: GLDEFS glow color was incorrectly interpolated on sidedefs.
Fixed, Visual mode: in some cases GLDEFS glow effect was not updated after changing floor/ceiling texture.
Fixed, Draw Rectangle and Draw Ellipse modes: in some cases pressing "Reset" button did not update the shape preview.
Fixed, DB2 bug: sector geometry was not updated after undoing "Flip Sidedefs" action.
2016-03-08 20:37:44 +00:00
MaxED
b44023abed Added, Draw Grid mode: "Lock slices to grid" now operates in 4 modes: "None", "Horizontal", "Vertical" and "Both". Can be helpful when drawing ladders and such.
Changed, all drawing modes: changeable drawing mode settings are now persistent.
Changed: "Dynamic grid size" mode is now disabled when changing grid size manually.
Documentation: "Command Line Parameters" topic contained a lot of incorrect information...
Updated ZDoom_DECORATE.cfg.
2016-03-04 13:41:55 +00:00
MaxED
324a7461c7 Changed, Copy/Paste: the whole pasting operation is now aborted if the resulting number of sectors, linedefs, vertices or things exceeds map format's maximum. 2016-02-22 08:20:33 +00:00
MaxED
74015b1ba0 Cosmetic: changed ' to " in the most of Error and Warning messages. 2016-02-22 08:04:06 +00:00
MaxED
9632ecd0d2 Added, all drawing modes: added "Continuous drawing" option (available in the top mode menu / Draw Grid panel for the Draw Grid mode). When enabled, drawing mode will not be switched to previously active mode after finishing drawing a shape.
Fixed, general interlace: in some cases "Show Editable Vertices in Visual Mode" top toolbar button showed up when using Doom/Hexen map formats.
Fixed(?), Classic modes: probably fixed an rare issue when map element dragging was not starting when supposed to.
2016-02-17 22:23:18 +00:00
MaxED
139c297161 Fixed, Visual mode: some video memory was not released after closing a map if the Visual mode was enabled at least once during the editing session, eventually resulting in E_OUTOFMEMORY crash.
Fixed, General interface, cosmetic: in some cases the warnings label was disabled in a flashing state (e.g. with red background).
Internal: moved some older GZDB actions form GZGeneral to MapManager. They can no longer be toggled when no map is loaded (which is probably for the best).
Updated ZDoom_ACS.cfg.
Updated ZDoom_DECORATE.cfg.
2016-02-01 22:04:00 +00:00
MaxED
75b107ef2f Updated: any graphic can be used as a skybox texture.
Fixed a crash when trying to get map title after closing Map options window.
Updated game configurations (Sector_SetPortal).
2016-01-13 09:34:32 +00:00
MaxED
64b822b903 Implemented, TEXTURES: ZDoom can use any graphic as a texture patch.
Fixed a typo.
2015-12-30 11:53:03 +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
f6f277065f ACS parser: fixed several cases when #include and #import directives were processed incorrectly.
Internal: joined declaration and assignment of some variables.
2015-12-27 21:54:50 +00:00
MaxED
dbcc57b7a6 Fixed, Script Editor: file was marked as changed when changing script configurations.
Fixed, Script Editor: in some cases clicking on an error in the errors list didn't navigate to the error location.
Fixed, Script Editor: in some cases incorrect error line number was shown.
Fixed, Text lump parsers: fixed a crash when trying to get a filename from a quoted string with missing closing quote.
Fixed, Text lump parsers: in several cases parsing errors were ignored by overlaying data structures.
Fixed: in some cases Thing Filter thing flags were cleared when switching game configurations in the "Game Configurations" window.
Changed, PK3 reader: loading of files with invalid path chars is now skipped instead of skipping loading of the whole resource. Also more helpful warning message is now displayed.
Updated SharpCompress library to v.0.11.2.0.
2015-12-17 10:07:28 +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
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
MaxED
9253788ccd Fixed, DB2 bug: we should not switch to a new editing mode if it fails to initialize.
More detailed info is now saved to the log file (GZBuilder.log) when an editing mode fails to initialize.
General interface: added "Help -> Program Configuration Folder" menu item.
2015-10-02 23:15:29 +00:00
MaxED
942c8a3276 Fixed, UDMF: we should fail map loading if there were TEXTMAP parsing errors.
Fixed, UDMF parser: parser failed to parse decimals stored using scientific notation (like "1E-06").
Fixed, UDMF parser: incorrect line numbers were shown when displaying errors.
Changed, UDMF parser: many error descriptions are now more detailed.
Updated ZDoom ACC to Git rev. ae5f036.
2015-10-01 21:35:52 +00:00
MaxED
dc840605aa Added emergency map backup system (EMBS). When the editor crashes, it will try to export a backup copy of the map structures. When the same map is loaded again, it will ask the user if he wants to restore the map.
High-DPI: fixed many issues with incorrect controls size (Tag selector width, Comment Editor size, icons size, tabs size etc.).
Cosmetic: changed map geometry dragging undo messages to more descriptive ones.
Fixed, Textures Browser, cosmetic: "Show textures in subdirectories" checkbox should be repositioned when "Long texture names" one is invisible.
Updated ZDoom_DECORATE.cfg (added A_SetFloatSpeed + a couple of fixes).
2015-09-25 13:20:53 +00:00
MaxED
25b3bf2287 Added, Texture Browser: added "Show textures in subdirectories" checkbox (enabled by default). When enabled, textures from current PK3/PK7/Directory resource directory and it's subdirectories will be shown. Otherwise, only textures from current directory will be shown.
Removed, Texture Browser: removed "Show image sizes" checkbox. "Show texture and flat sizes in browsers" preferences setting is now used instead.
Fixed, Things mode: event line between pre-last and the last PatrolPoint was not drawn.
Fixed, Things mode: highlight range for sizeless things (things with "fixedsize" game configuration property) was calculated incorrectly.
Fixed: fixed a crash when opening Script Editor after using "Open map in current wad" command to switch to UDMF map with SCRIPTS lump when current script configuration was not saved in the wad's .dbs file.
Fixed: map closing events were not triggered when using "Open map in current wad" command, which could potentially result in plugin crashes/incorrect behavior.
Fixed: Sector Drawing overrides panel could trigger an exception when closing the map during resource loading.
Internal: added "Debug + Profiler" solution configuration, added 2 profiling methods to DebugConsole.
Internal: rewrote MainForm.DisplayStatus() / StatusInfo to handle selection info in a more structured way.
Fixed, internal: some destructors could potentially be executed more than once potentially leading to exceptions. Other destructors were not called at all.
Updated ZDoom_DECORATE.cfg.
2015-09-16 12:10:43 +00:00
MaxED
008846539b Added: Auto-updater window now has "Ignore this revision" checkbox. If enabled, the window will show up only if a newer update is available.
Fixed, Edit Selection mode: sector highlight was not updated when switching from Edit Selection to Sectors mode.
Fixed, Edit Selection mode, UDMF: in some cases texture scale Y was flipped when applying/canceling changes made in the mode.
Probably fixed a crash caused by uninitialized Association when highlighting map elements.
Fixed, Comments Panel plugin: selection info was not updated when selecting map elements in the side panel.
Fixed, Tag Explorer plugin: selection info was not updated when selecting map elements in the side panel.
Fixed a typo in Hexen_things.cfg.
2015-09-04 12:44:09 +00:00
MaxED
980fc2f4c8 Classic modes: added "Dynamic grid size" option (available in the View menu and on the main toolbar). When enabled, grid size will be automatically adjusted based on current zoom level.
Updated ZDoom ACC to rev. 19995bb.
Updated ZDoom_ACS.cfg and ZDoom_DECORATE.cfg.
2015-08-20 14:09:28 +00:00
MaxED
39beaf2cdb Linedef Color Presets: completely redone Linedef Color Presets UI. Now it's done the same way as Things Filters UI.
Linedef Color Presets: Linedef Color Presets can now be disabled.
Things Filters window: a warning icon is now displayed near the filter name in the filters list when the filter has no usable settings.
Change Map in Current WAD window: keyboard focus was not set to initially selected item.
Changed the default wad filename from "unnamed.wad" to "[map name].wad".
Updated documentation ("Custom linedef colors" page).
2015-07-30 23:48:16 +00:00
MaxED
712dbd03e8 Cosmetic: renamed Drawing mode to Draw Lines mode.
Changed: current 2D position and zoom is now stored in the .dbs file when saving the map and restored when opening it (should this be turned into toggleable option?).
Draw Lines mode, Draw Curve mode: you can now hold Alt - Shift to snap to 8 cardinal directions.
Draw Rectangle mode, Draw Grid mode: you can now hold Alt - Shift to draw square shapes.
Draw Ellipse mode: you can now hold Alt - Shift to draw circle shapes.
You can now hold Alt - Shift to snap to 8 cardinal directions while dragging map objects.
Fixed, Draw Lines mode: line angle is now displayed in 0..359 range (was -45..314).
Fixed, Linedef info panel: line angle is now displayed in 0..359 range (was -45..314).
2015-07-09 22:32:12 +00:00
MaxED
a4049f900e Things Filters window: added "Mode" setting, which allows to choose whether to apply current filter in Classic modes, Visual mode, or both. 2015-06-27 18:55:17 +00:00
MaxED
8f2c6e3f60 Classic modes: added "Show models for current things filter only" model rendering mode.
Things Filters: things filters can now be inverted (added "Invert Filter" checkbox to the Things Filters window).
2015-06-27 09:10:24 +00:00
MaxED
1b9f94f3f7 More code sanity changes (constructors of abstract classes should not be public or internal). 2015-05-27 12:38:03 +00:00
MaxED
2fe402b165 Fixed, MAPINFO parser: properties, written like '667=CuteCaco' were not parsed, while '667 = CuteCaco' worked fine.
Changed, Classic modes: increased maximum zoom level to 9000% (was 3000%).
Added, General interface: added "800%" zoom level to the bottom toolbar zoom menu.
Added, General interface: added "400%" and "800%" zoom levels to "View -> Zoom" menu.
2015-05-18 18:49:15 +00:00
MaxED
54fccb73e7 Fixed, Scale control (UDMF): in some cases default values were shown when displaying mixed values.
Fixed, long texture names support: in some cases long texture names were not processed correctly when pasting map geometry.
Fixed, Visual mode: in some cases combined sidedef brightness was calculated incorrectly. Also, MAPINFO FadeColor and OutsideFogColor properties are now taken into account.
Hexen_linedefs.cfg: "Door Raise" and "Door Locked Raise" used incorrect enums for "Close Delay".
2015-02-06 09:01:33 +00:00
MaxED
4f7e2298f4 Added Hexen -> UDMF and UDMF -> Hexen action conversion as described in "Universal Doom Map Format ZDoom extensions" (udmf_zdoom.txt). It is used when changing map format form Hexen to UDMF and from UDMF to Hexen.
Game configurations, Line Identification action: added "Front side only" (128) flag to arg1.
Game configurations, Line Identification action: renamed arg1 flags to match corresponding UDMF flag names.
Updated udmf_zdoom.txt.
2014-12-29 09:19:20 +00:00
MaxED
33a35e2148 Import Wavefront .obj as Terrain mode now works in all map formats.
Import Wavefront .obj as Terrain mode: floor height of each created sector is now set to the average height of an .obj polygon it was created from.
Import Wavefront .obj as Terrain Settings window: added "Use slopes" checkbox. When enabled, the mode will create slopes using vertex height offsets (UDMF) or Floor Vertex Height things (1504).
Fixed, Visual Mode: things were rendered at wrong height after using "Lower/Raise Height" actions in sectors with sloped floor (or ceiling for ceiling-aligned things) 
Fixed: info panel was not updated after switching to another Edit Mode.
2014-12-10 21:11:56 +00:00
MaxED
15b2adfe30 Texture Browser Form: swapped foreground and background colors of texture size labels.
Fixed, Texture Browser Form: well, I broke "Tab" key functionality again (in previous commit)...
Maintenance: changed curly braces style to match DB2 one (hopefully not breaking anything in the process...).
Maintenance: changed private method names casing to match DB2 one.
2014-12-03 23:15:26 +00:00
MaxED
99f3ba2844 Changed long texture names handling. Texture names conversion is no longer required.
Texture browser form: added "Long texture names" check-box. It can be used to toggle between displaying long and short texture names.
Texture browser form: added "Show image size" check-box.
Texture browser form: image size is now shown differently.
Image Selector: added a button to toggle between long and short texture name.
Linedef info panel: long texture names are now displayed properly.
Sector info panel: long texture names are now displayed properly.
Fixed: "Save Screenshot" and "Save Edit Area Screenshot" actions were triggered multiple times when a child window was open.
Fixed: used textures should be always updated after using "Change map in current WAD" action.
Fixed, "Change map in current WAD": fixed a crash when trying to switch from a map with missing game configuration path.
Updated ZDoom_ACS.cfg.
2014-12-03 09:06:05 +00:00
MaxED
6b765f5a27 Added long texture names support (enabled when "longtexturenames" game configuration property is set to true and "Use long texture names" check box is checked in Map Options).
Open Map in Current WAD: resources are now reloaded when current and target map's resources don't match.
Added some boilerplate to UniversalParser and PK3FileImage.
Internal: ImageSelectorControl now has "UsePreviews" property.
Internal: added ConfigurablePictureBox.
Updated ZDoom_DECORATE.cfg.
2014-11-25 11:52:01 +00:00
MaxED
77ba424fdd Fixed: it's now impossible to set grid size smaller than 1. 2014-11-02 17:15:04 +00:00
MaxED
badd7dcea8 Fixed: undo list must be cleared during "Switch map in current wad" action.
Fixed incorrect non-UDMF <-> UDMF skills translations in Strife_misc.cfg.
2014-10-23 08:18:14 +00:00
MaxED
697069e27b Texture Browser Form: some minor logic fixes (no texture groups were selected when initial texture was empty and no texture group was stored in the program configuration).
Texture Browser Form: don't save current texture group when the form was canceled.
Keyboard Shortcut Reference export: generated html will now be saved to program configuration folder if working folder is write-protected.
Internal: added SupportedMapFormats property to EditModeAttribute. A mode with this property specified will be available only in specified map formats.
Interface: Ceiling Align Mode and Floor Align Mode are now enabled by default.
Interface: Ceiling Align Mode and Floor Align Mode are now only available in UDMF map format.
Interface: Visplane Explorer Mode is now available only in Doom map format.
2014-09-08 13:09:14 +00:00
MaxED
8555d75cd2 A r1959 change in ImageSelectorControl prevented inherited classes from showing properly in Visual Studio's designer.
Also made a bunch of methods static.
2014-05-20 09:09:28 +00:00
MaxED
9c7b8e4e3c Model rendering (all modes): UDMF scale, pitch and roll are now displayed.
Thing Edit Form, UDMF: added controls for setting pitch, roll, scale, render style, fill color, alpha, health and score.
Visual mode, UDMF: UDMF scale is now applied when rendering sprites.
Added Thing Statistics form (Edit -> View Thing Types...), which shows all loaded thing types with some additional info.
Visual mode: sprites with negative ScaleX and positive ScaleY were not rendered properly.
Classic modes: display was not updated after loading a sprite.
Current testing engine change was not saved on closing the program when no other game configuration settings were changed.
2014-04-30 10:01:22 +00:00
MaxED
8132584155 Find and Replace mode: added "Sector Floor Height" and "Sector Ceiling Height" search modes. 2014-04-07 08:48:02 +00:00