Commit graph

96 commits

Author SHA1 Message Date
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
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
6dc100321a Changed: when the editor is unable to save the map, it will now display the list of processes, which lock the map file.
Fixed, Update Checker: the existence of Updater.exe and Updater.ini was not checked when using Help -> Check for updates command.
2015-09-06 22:15:21 +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
c6f9146b8b Fixed, DECORATE parser: enums were not handled properly.
General interface: selection info is now always displayed.
Visual mode: you can now hold Alt-Shift or Ctrl-Alt while selecting sidedefs to stop selecting connected sidedefs when already (un)selected sidedef is encountered.
Added, Numeric Textbox: you can now use "+++" and "---" prefixes to incrementally increase or decrease result values by given value.
Fixed, Numeric Textbox: fixed a potential divide by zero exception when using "/" prefix in numeric textboxes with decimal input enabled.
Fixed, Thing Info panel: relative z position of things with "+SPAWNCEILING" flag was incorrect.
Changed: Update checker now displays messages using MessageBoxes when called manually.
Map Analysis: changed result descriptions for Unknown Texture and Missing Texture checks.
Doom map format: renamed "Secret" linedef flag to "Shown as 1-sided on automap".
Updated ZDoom_DECORATE.cfg (A_RadiusGive stuff).
2015-07-26 23:18:13 +00:00
MaxED
643460efa6 Map Analysis mode: added "Check very short linedefs" check (unchecked by default), which finds linedefs shorter than 1 m.u.
Fixed: script editor must be closed during "Open map in current WAD" action.
Added: PNG offsets are now taken into account when loading sprites.
2015-07-13 11:20:02 +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
12f532208f General: added update checking/updater launching logic and interface.
Updater.exe: fixed many bugs.
Tweaked MakeSVNRelease.bat to generate additional file, required by updater.
2015-07-01 23:09:34 +00:00
MaxED
5668cfec10 Fixed, portable mode: fixed a possible crash when trying to check write permissions for GZDB folder.
Fixed, Texture Browser, High-DPI: bottom panel of ImageSelectorControl had incorrect height when using DPI scaling.
Changed, SplitterControl, High-DPI: DPI scaling is now used when drawing expand/collapse area.
Documentation: fixed typos, filled "Compiling GZDoom Builder" page.
2015-04-03 12:05:37 +00:00
MaxED
5147d0b8f5 Added "-portable" command line parameter. With this parameter, the editor will use the "GZBuilder.cfg" located in the program directory to load and save program settings. Log and crash report files will be also created in the program directory.
Renamed the default program configuration file from "GZBuilder.cfg" to "GZBuilder.default.cfg".
Changed the default keys of "Move Thing Left\Right\Forward\Back" actions to arrow keys (was Ctrl + arrow keys).
Updated documentation: added "Command Line Parameters" topic.
2015-04-02 10:57:08 +00:00
MaxED
dd5689766d Changed, Numeric textboxes: you can now hold Ctrl or Shift keys while clicking a textbox buttons or using mouse wheel on a textbox to change value increment step.
Changed, Numeric textboxes: trailing zeros are no longer displayed to reduce visual noise.
Fixed, paired numeric controls: in some cases culture-specific decimal separator was not used.
Fixed, map loading: inability to initialize D3D device is now handled a bit more gracefully.
Fixed, main toolbar context menu: we should suppress context menu closing only when user clicks on a menu item while holding Shift key.
Fixed, Game configurations: several Skulltag things were not included in many Zandronum game configurations.
2015-03-23 14:19:23 +00:00
MaxED
369e39dbc6 Added: Tag Explorer now has polyobjects display mode.
Changed, Tag Explorer: several wildcards can now be used at once. For example, entering "#12 $9" will show only map elements with tag 12 and action 9.
Changed, Tag Explorer: you can now filter list by polyobject number by entering "^NN" in the Filter field.
Changed, cosmetic: reduced map resizing caused by UI resizing during map loading.
2015-03-11 11:38:25 +00:00
MaxED
8218a5d906 UDMF: raised sector slope precision to 7 decimal places when saving a map.
Nodes Viewer mode: added more boilerplate to classic nodes reader.
Thing Filters Form: program configuration was not marked as changed when saving thing filters.
Cosmetic layout fixes in Thing/Linedef/Sector Info panels.
Cosmetic text fixes in several Map Analysis results.
Internal: debug console is now cleared when creating a new map.
Updated ZDoom_DECORATE.cfg.
2015-01-11 19:42:57 +00:00
MaxED
9c11d7e682 DECORATE parser: added special handling for ZDoom's special sprite names (namely TNT1, "####" and "----").
Internal: changed the way apppath is acquired. It should no longer fail when launching the editor from a shared network folder.
Main Form: changed some labels of dynamic light and model rendering selectors to be less confusing.
Updated ZDoom_DECORATE.cfg.
2015-01-03 18:43:37 +00:00
MaxED
704ec15ce6 Added more thorough map name validation logic to New/Open/Switch Map forms.
High-DPI: added app.manifest, which enables application DPI-awareness.
High-DPI: ExceptionDialog is now displayed properly.
2014-12-30 13:21:01 +00:00
MaxED
1648f1628b Several items can now be selected at once in Resource List Editor.
Resource List Editor now has a context menu.
Fixed misleading warning asking user to install DirectX when unable to detect SlimDX.
2014-12-12 13:21:52 +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
a0898c4e95 Thing/Linedef/Sector Edit forms: added help button to action special selector.
Cosmetic changes in Sector Info Panel and Thing Browser Control.
ArgumentInfo: fixed a crash when enum specified in a game configuration doesn't exist.
Updated Hexen and ZDoom linedef configs.
Updated ZDoom_DECORATE.cfg
2014-12-05 14:33:31 +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
66f75ec7c4 Internal: added a debug console. 2014-11-13 09:43:39 +00:00
MaxED
27d021887e A slightly better implementation of previous commit... 2014-11-03 14:03:47 +00:00
MaxED
720b4e01ec Fixed, "OpenMapInCurrentWad" action: we should not switch to already opened map.
Fixed, Open Map form: a warning is now displayed when no map is selected when accepting the form.
2014-11-03 13:58:19 +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
b90b7b8a79 Thing Edit Form: a warning is now displayed when a thing doesn't have any skill or class or game mode flags.
Game Configurations: moved "thingflagscompare" from Game to Map format blocks. "Check stuck things" check now works properly in Doom/Boom game configurations.
Map Analysis: fixed a possible crash during "Check texture alignment" check.
Map Analysis: ResultStuckThingInLine now highlights both thing and line.
Map Analysis: ResultStuckThingInThing now highlights both things and allows to delete any of them.
Internal, Map Analysis: rewritten parts of "Check stuck things" class.
Internal, Map Analysis: changed the way processed stuff is stored in "Check texture alignment" class.
Internal: changed CurrentDomainOnUnhandledException, so ExceptionDialog with proper info shows up even if adding exception to the Event Log failed.
Internal: changed format, in which thingflagscompare info is stored.
2014-09-29 20:49:41 +00:00
MaxED
e849c04112 Changed: when using "Save map" action, only .dbs file is saved when map was not changed.
Cosmetic: changed Angle Control's outline color.
2014-09-24 11:47:52 +00:00
MaxED
c6b0f38563 Fixed a crash when trying to update a vertex handle geometry.
The editor will fail more gracefully when no D3D device is detected.
In some cases the editor was constantly checking D3D device availability when minimized.
Added more DX-related debug output (only in Debug builds).
2014-09-17 12:46:47 +00:00
MaxED
c95c26bbbc Fixed: MapSet.GetSectorByCoordinates() returned "false" in some cases when a given coordinate was on top of sector's vertex.
Internal: UDMF sector slopes and offsets are no longer stored in sector.Fields. Use sector.FloorSlope, sector.FloorSlopeOffset, sector.CeilingSlope and sector.CeilingSlopeOffset.
2014-08-25 11:15:19 +00:00
MaxED
bce651348a "Fatal Non-UI Error" message was shown incorrectly. 2014-08-12 22:43:17 +00:00
MaxED
6e46203b38 Screenshots Folder can now be set in the Preferences.
Added custom icons for ZDoom's Decal and Sparkle things.
2014-08-07 10:20:35 +00:00
MaxED
00688d4c7c Script type can now be chosen when creating a new map and changed in Map Options form.
BCC script compiler (https://github.com/wormt/bcc/) is now bundled with GZDB.
Main Form, "File" menu: only existing files are now added to the "recent files" list.
2014-07-11 10:13:26 +00:00
MaxED
3c6a9547fa Script Editor: added a simple snippets system.
Updated documentation.
2014-05-13 09:43:58 +00:00
MaxED
ebd2400cde Things mode: added Filter Selection form (Things -> Filter Selection), which allows to quickly filter selected things by type.
Tag Statistics form, Thing Statistics form: fixed a crash when clicking on table's header cells.
2014-05-06 11:03:52 +00:00
MaxED
40bba55599 Last used map folder path is now stored in program configuration. It is used in "Open Map" dialog. 2014-05-05 09:59:20 +00:00
MaxED
f68e61e0fe Woops! Terrible bugs! 2014-03-23 09:24:42 +00:00
MaxED
71ad1199d8 The editor no longer locks up while testing the map. 2014-03-23 09:08:51 +00:00
MaxED
82b868e5f5 Fixed: .dbs map configuration was not loaded when loading a map by dragging a wad file on top of GZDB shortcut/executable. 2014-03-20 13:04:28 +00:00
MaxED
fb19f62fdb Angle in now set in 0..359 range when clicking on Angle control.
+ couple of cosmetic fixes.
2014-03-10 14:35:38 +00:00
MaxED
0369c969d1 According to dotnetperls.com, "new Dictionary<string, [anything]>(StringComparer.Ordinal)" works 17% faster than "new Dictionary<string, [anything]>()", so let's stick that everywhere and see what happens :)
Draw Curve Mode: added settings panel.
Sectors mode: added "Make Door" button to the toolbar.
Swapped Side panel and Info panel z-order. 
Interface: split toolbar into 3 separate toolbars. All toolbar buttons are now viewable at 1024x768.
Interface: grouped stuff in "Modes" menu a bit better.
Interface: added "Draw [stuff]" buttons to modes toolbar.
Interface: reorganized main menu. Hope it makes more sense now.
API: added General.Interface.AddModesButton() and General.Interface.AddModesMenu(), which can be used to add buttons to specific group in "Modes" toolbar and menu items to specific group in "Modes" menu, so actions, which behave like an editing mode, but are not part of one can be added there.
2014-02-26 14:11:06 +00:00
MaxED
3e5f85dc8f Game configurations: added "fixedrotation" property to dynamic lights, which use the angle property as a parameter.
Maintenance: removed a ton of redundant stuff.
2014-02-21 14:42:12 +00:00
MaxED
d9e53f2899 Game Configurations: added support for new property "fixedrotation", which keeps thing's angle constant when a thing is rotated in Edit Selection mode.
Game Configurations: added "fixedrotation" property to "Polyobject Anchor" (9300), "Polyobject Start Spot" (9301), "Polyobject Start Spot (crush)" (9302) and "Polyobject Start Spot (hurts to touch)" (9303) actors.
Color Picker plugin: moved plugin button to "Modes" toolbar group.
API: added ToolbarSection.Modes property, which can be used in MainForm.AddButton() to add a button to Modes group.
Removed a bunch of unused variables.
2014-02-20 12:36:09 +00:00
MaxED
c04a2e7c11 Game Configurations window: "enabled" status was not saved if the configuration was not changed.
When no configuration is enabled, a message was supposed to be shown after startup. Now it actually shows up.
Several configurations were missing from the "Configurations" folder.
2014-02-19 09:55:05 +00:00
MaxED
592887a086 Configurations: increased game configuration loading speed (in previous builds it took ~650 ms. to load a single game configuration, now it takes ~120 ms. to load all 64 of them). As a side effect, New\Open Map Options, Map Options and Game Configurations windows are now opened noticeably faster. The editor starts up a bit faster as well.
Configurations: all 64 game configuration are now available by default.
Game Configurations window: game configurations can now be disabled. This setting is mostly cosmetic. When a game configuration is disabled, it won't be shown in "game configuration" dropdowns in New\Open Map Options and Map Options windows. If a map's .dbs file specifies a disabled configuration, it will be picked as a map configuration anyway.
Linedefs mode: vertex insert preview logic used Highlight range instead of Stitch range (which is used when draw mode engages).
Visual mode: double-sided middle textures were not selected when using "Select" action with "with same texture" modifier.
Textures: some optimizations in patch blending code.
ZDoom ACS script configuration: added definitions for StrLeft, StrMid and StrRight functions.
2014-02-18 14:04:14 +00:00
MaxED
79dcaca457 Added Import Terrain mode (Create -> Terrain from Wavefront .obj)
Draw Settings panel: added "All" buttons to "Fill Selection with Textures" and "Remove Textures form Selection" groups
Export to .obj: fixed a crash when trying to export an unsaved map.
Texture preview are now created ~25% faster.
2014-01-30 14:52:08 +00:00
MaxED
88b12750c1 Linedef info panel: tag is no longer shown in Hexen map format.
Numeric textbox: in addition to '++NN' and '--NN', you can use '*NN' and '/NN' to multiply or divide the values.
Configurations, ZDoom_linedefs.cfg: some linedef action arguments were missing a proper type.
Rewritten parts of hints system. Hints are now loaded from "Hints.cfg" file.
2014-01-23 13:36:51 +00:00
MaxED
9ac9b18e2d Hints and Draw Settings panels were not removed during map closing/switching, which resulted in duplicate panels.
The way things were rendered during dragging is now used by default in Things mode.
2014-01-17 13:48:06 +00:00
MaxED
70102f1420 Changed mode buttons order in the toolbar.
Fixed a crash when enabling Nodes Viewer mode in an unsaved map.
2014-01-09 13:09:43 +00:00
MaxED
d27ae9c518 Added a bath file, which can be used to make an SVN build of GZDB.
Program version, including revision number, is now updated and handled properly.
2014-01-08 15:20:56 +00:00