Commit graph

187 commits

Author SHA1 Message Date
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
2b7eee8d1a Draw modes: linedef length labels no longer overlap linedefs. 2014-11-12 11:22:14 +00:00
MaxED
6c1dbc0bf3 Find and Replace mode:
"Find Any Texture or Flat", "Find Sector Flat" and "Find Sidedef Texture" options now support "*" (match any number of characters) and "?" (match any single character) wildcards.
"Find Any Texture or Flat" is now available any game configuration (previously it was disabled when "MixTexturesFlats" game configuration option was disabled, now only "Replace" functionality is disabled).
"Find Thing Flags" and "Find Linedef Flags" can now replace flags.
Added "Find Sidedef Flags" and "Find Sector Flags" search options.
2014-11-05 12:32:48 +00:00
MaxED
d45b812b2a Fixed, Draw Grid mode: fixed a crash on accepting the mode when start and end points had the same coordinates.
Fixed, Draw Grid mode: grid triangles are now aligned properly with previously drawn triangulated grids when using the same map grid size and "Lock slices to grid" and "Triangulate" options are enabled.
Fixed, Draw Grid mode: not all grid cells were drawn in some cases.
Fixed, Draw Grid mode: current grid size was not increased when "Lock slices to grid" was enabled and the start point was no longer on the map grid.
Changed, Draw Grid mode: snap to grid is now always enabled and snap to nearest is now always disabled when "Lock slices to grid" is enabled.
Changed, Draw Grid mode: when grid's width or height is 0 when accepting the mode, a segmented line is now drawn instead of just a line.
2014-11-04 14:24:47 +00:00
MaxED
fa1a1d42f6 Fixed, Classic modes: Alt-dragging map elements (e.g. "snap to grid increment while dragging" mode) was not working properly. 2014-09-30 19:46:33 +00:00
MaxED
e611c9347e Fixed: Drag Geometry Mode: dragged sectors, linedefs or vertices were snapped to 0, 0 in some cases when trying to snap them to a linedef fully inside of a grid cell. 2014-09-22 19:01:51 +00:00
MaxED
c97dd0e401 Map Analysis mode: errors can now be copied to clipboard.
Map Analysis mode: export to file command will now show "Save File" dialog instead of putting the file in the same folder as the map, also added some boilerplate.
Tag Explorer plugin: save to file command will now show "Save File" dialog instead of putting the file in the same folder as the map, also added some boilerplate.
Internal: reformatted GZCrash.log a bit.
2014-09-12 12:19:58 +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
f596b88376 Proper labels are now displayed for generalized sector effects.
Internal, Edit Sectors form: more changes to "Slopes" tab logic. It's still incomplete...
2014-09-04 12:34:26 +00:00
MaxED
10dd68b8c2 Classic modes: Draw Grid, Rectangle and Ellipse modes were missing "toggle grid snapping" mode (enabled by holding Shift key while drawing). 2014-08-28 11:16:33 +00:00
MaxED
9c17aa4fe8 Sectors mode: things inside of selected sectors can be moved when dragging sectors. This behavior can be toggled by the new button on Sectors mode's toolbar.
Sectors mode: changed Alt-key handling. Now it only enables "snap to grid increment" mode.
Things mode: "snap to grid increment" mode now works in this mode.
Updated documentation.
2014-07-18 15:11:37 +00:00
MaxED
f2c0d0a4c8 Classic modes: you can now hold ALT key while dragging map items to lock movement to grid increments relative to initial position. 2014-07-11 10:46:10 +00:00
MaxED
c9cb4ad11f Linedefs Mode: "Flip Sidedefs" action will no longer flip one-sided lines.
Linedefs Mode: "Flip Linedefs" action now tries to align linedefs, so their front (or back) point towards the same sector.
Sectors Mode: "Flip Linedefs" action is now available form this mode, and it will also try to align linedefs, so their front (or back) point towards the same sector.
2014-07-07 14:17:49 +00:00
MaxED
7254c62ee0 Draw Rectangle mode, Draw Ellipse mode: fixed a possible crash when restoring bevel/subdivisions values.
Draw Curve mode: added "Reset" button to the toolbar.
Draw Rectangle/Ellipse/Grid modes: "Reset" toolbar buttons didn't have a proper tooltip.
2014-07-02 10:12:53 +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
98aefb2681 Sectors, Linedefs, Things, Vertices modes: added "Select Similar" action (available in <Mode name> -> "Select Similar..." menu), which lets you select map elements similar to currently selected ones, based on a set of settings.
Some cosmetic fixes in "Filter Selected Things" and "Paste Properties Options" panels.
2014-05-08 09:24:32 +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
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
4af31e1aba Things mode: you can clone selected/highlighted things by holding "Shift" before starting to drag them. 2014-04-18 11:22:44 +00:00
MaxED
dddf91e56e Added "Paste Properties Options" form, which lets you pick properties for 'Copy Properties' and 'Paste Properties' actions.
Removed CopyPasteSectorProperties plugin, because built-in "Copy/Paste Properties" actions do the same job, but better.
2014-04-09 10:16:33 +00:00
MaxED
7a29d87cb1 "Rotate Clockwise" and "Rotate Counterclockwise" actions now work in Things mode (they will rotate things) and in Sectors mode (they will rotate floor/ceiling textures based on current view mode).
Moved "Rotate Clockwise" and "Rotate Counterclockwise" actions to "Edit" category.
Tag Statistics form: help label was incorrectly aligned.
Some actions in Sectors and Linedefs modes were not used on highlighted map elements.
Some actions in Sectors and Linedefs modes created undo groups incorrectly when used on highlighted map elements.
2014-04-02 10:57:52 +00:00
MaxED
71ad1199d8 The editor no longer locks up while testing the map. 2014-03-23 09:08:51 +00:00
MaxED
ee6faba11c "File -> Export -> Selection as Wavefront .obj" menu command was not working.
"Preferences -> Editing -> When splitting a linedef" setting is now always used when splitting linedefs.
"Preferences -> Editing -> When splitting a linedef": added "Reset X and Y" option.
"Preferences -> Editing -> Auto-align textures of newly created linedefs" option now works in a more intelligent fashion.
2014-03-19 13:03:47 +00:00
MaxED
6de11ea3b1 Make Door action: door texture can now be defined in a game configuration.
Make Door action: door and track textures are now stored while the editor is running.
Edit Selection Mode: pasted geometry was not merged with the rest of the map if the selection was not modified before applying the mode.
2014-03-06 09:08:21 +00:00
MaxED
f7f8c1e894 Make Door action: added missing activation properties for maps in Hexen and UDMF map formats.
Make Door action: made Make Door form a bit smaller.
Make Door action: sector highlight was not updated after performing the action when a single sector was selected.
2014-03-05 12:26:09 +00:00
MaxED
7faf6bc13e Linedef Edit Form, Sector Edit Form: when several map elements with different textures are selected, the "texture stack" icon is shown in the texture selectors instead of the "missing texture" icon.
Error Checker mode: added "Check missing flats" check.
Error Checker mode: fixed several descriptions. 
Sprite patches for sprites defined in TEXTURES are now loaded from Sprites namespace.
Some of my older texture alignment code didn't work properly when strict texture/flat handling ("mixtextureflats" game configuration flag set to false) was enabled.
Fixed some incorrect checks for missing texture ("-").
2014-03-05 09:21:28 +00:00
MaxED
9a50b38f78 Added "Full Brightness" toolbar button and "View" menu item. These call "Toggle Full Brightness" action.
Added "Make Door" menu item to "Sectors" menu.
A warning is now displayed when "Make Door" action is called without a selection.
2014-03-03 09:52:55 +00:00
MaxED
7d4ac20b0f Fixed button states for "Draw [stuff]" modes in the modes toolbar.
Moved settings for "Draw [stuff]" modes to the top toolbar.
Added hints for Draw Grid mode.
Fixed a status message update bug introduced in previous commit.
2014-02-28 14:32:20 +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
21889a98e7 Default thing arguments were not set when creating a new thing, only when changing thing type in Edit Things window. 2014-02-21 15:24:54 +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
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
8229cb8b71 Added "Go To Coordinates" action (available in "View" menu and via Ctrl-Shift-G shortcut). It will center the view on given coordinates in classic modes and place camera at given coordinates in visual mode. 2014-02-10 09:26:13 +00:00
MaxED
1367c37b8d Visual mode: when changing height of a triangular sector all vertices of which have height offset, vertex heights will be changed instead of sector's floor/ceiling height (this allows to edit terrain without the use of vertex handles).
Visual mode: "Copy Texture", "Copy Texture Offsets" and "Copy Properties" actions now always copy properties from currently highlighted surface (previously they copied properties from the first selected surface when something was selected).
Draw Rectangle mode: nothing was drawn in some cases.
Drag Things mode: grid was not updated when grid size was changed in this mode.
2014-02-03 11:19:12 +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
cd75b4e30e Sector info panel: rearranged controls a bit, so tag labels and long effect names can be displayed (more) properly.
Linedefs mode: event arrows were not redrawn after updating vertex insert indicator.
Configurations: some titles were too long to be displayed properly in the interface.
2014-01-27 11:18:24 +00:00
MaxED
bdcaa2b1f2 Linedefs mode: insert vertex preview is now shown. 2014-01-23 13:55:03 +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
e83da37f14 Draw Grid mode: added "Lock slices to grid" option. 2014-01-17 09:44:08 +00:00
MaxED
e487a9c80a Added Draw Grid mode.
When Draw Rectangle or Draw Ellipse mode is enabled, it's settings are now shown in side panel.
Draw Ellipse mode: increased maximum number of sides to 512.
Changed the way tags are shown in Tag Selector controls. Tags without labels are now shown as a number (not "Tag N"), and tags with label are now shown as "N (label)", not "label (N)".
Tag labels are now shown in Thing, Sector and Linedef info panels.
Once again changed the way things are rendered while dragged.
Rearranged the label in PairedIntControl and PairedFieldControl (it is now behind numeric controls).
Optimized MapSet.GetSectorByCoordinates().
2014-01-16 09:32:05 +00:00
MaxED
75114595ed Sectors mode: hold Alt while (de)selecting sectors to (de)select things inside of them.
Sectors mode, rectangular selection: you can now hold Alt to select things inside of selected sectors.
Sector highlight is now shown when selecting sectors in Tag Explorer.
2014-01-13 12:49:54 +00:00
MaxED
c087d014a1 Selected things are now dragged while dragging vertices, linedefs and sectors.
Error checks: added "Check unused textures" option.
Replaced MissingTexture3D and UnknownTexture3D.
Sectors mode: restored "Lower/Raise Floor/Ceiling by 8 mp" actions.
Visual mode: in some cases sidedefs were rendered as selected when they were not.
Existing linedefs were not split while drawing new lines in some cases.
Texture and height overrides were not applied correctly in some cases.
Preferences form: "Ctrl+Alt+ScrollUp" and "Ctrl+Alt+ScrollDown" dropdown items were setting the shortcut to "Ctrl+Shift+ScrollUp" and "Ctrl+Shift+ScrollDown".
2014-01-13 08:06:56 +00:00
MaxED
2e88f8f4a5 Nodes Viewer now supports ZNODES in "XNOD", "XGLN", "XGL2" and "XGL3" formats.
Sector highlight is now shown in many more places.
Edit area auto-focusing is now disabled when any form is open.
2014-01-10 15:08:39 +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
1adf313a91 Fixed: side panel was not auto-collapsed when Help tab was selected.
Fixed: texture size label's visibility was inconsistent in ImageSelectorControls.
2014-01-09 11:31:34 +00:00
MaxED
013865e27d Voxels can now be loaded from WAD resources.
Reverted "Delete Item" action to the way it worked in DB2.
Added "Dissolve Item" action, which works the way "Delete Item" worked in previous revisions of GZDB.
Added "Auto Clear Sidedef Textures" action, "Edit" menu and toolbar button, which toggle automatic removal of sidedef textures when floor or ceiling height is changed or when geometry is drawn, copied or pasted.
Draw Settings panel: upper/lower texture overrides can now be used.
Draw Settings panel: added 2 sets of buttons, which allow to quickly set or clear textures in current selection.
Things are now rendered behind AND on top of the grid/linedefs/vertices when they are dragged.
Redesigned hints system. They are now shown in a side panel.
Edit area auto-focusing is now disabled when script editor is open.
Texture Browser form: no texture group was selected when opening the form in some cases.
Fixed several strange/misleading text messages.
2014-01-08 09:46:57 +00:00
MaxED
46feeb422f I keep forgetting that, unlike protected methods, Actions MUST be implemented in derived classes... 2013-12-26 08:07:40 +00:00
MaxED
87ff11cc0f Things are now rendered behind grid and linedefs/vertices when they are dragged.
Added hints for Drag Geometry modes.
2013-12-23 12:02:58 +00:00