- implicit documents are now auto-closed when rendered unused, in general, a LOT better document closing behavior

- made history ignore file loading and undo/redo calls instead of having hard-coded ignore on the actions, this will probably save a lot of hair

- fixed: LDObject methods still used operator delete directly, causing *a very frustrating* crash to debug

History should now behave properly..

- corrected history behavior. LDObject::clone() is now off-limits, createCopy() must be used instead. LDObject::deleteSelf() must be used to delete LDObjects (destructor is protected now)

- fixed: cones with 3 digit numbers wouldn't go to the "Cones (48)" category properly

- LDEmpty now overrides getTypeName properly

- changed source file extension from .cpp to .cc

- LDObject::move is no longer virtual

- fixed: LDMatrixObject's position would be an invalid pointer if it was created with the default constructor, causing a crash

- Reworked primitive listing. No longer uses multi-threading.

- LDFile renamed to LDDocument, file.h -> document.h

net_autoclose is now true by default

renamed LDCndLine to LDCondLine

more stuff

Cleaned up download.cpp/.h, used PROPERTY. Added LIST_OPS to PROPERTY

minor cleanup

Renamed "quick colors" in the configuration to "color toolbar"

- re-added the external programs to the toolbar

updated README.md with a mention of the ring drawing

minor cleanup

- added build_shared to .gitignore

- Improved coordinate rounding, replaced the hack with a proper implementation, now rounds properly and works on subfiles as well

- Renamed common.h to main.h, split the PROPERTY macro and supporting macros to property.h

- Changed the callback parm of PROPERTY to a stock/custom write method argument.

- upgraded the PROPERTY macro, resulting in a major code refactor

- ensured header files' guards start with LDFORGE_

removed old and unused src.pro file

renamed the version to 0.3-alpha in the changelog

changelog entry

Made rotation/pan/zoom values camera-dependant (so now there's 7 sets of them instead of 1)

updated .gitignore

removed the legacy dir

forgot the new icons

- Added new actions "Hide" and "Reveal" which allow direct setting of objects' visibility setting instead of toggling it.

added a configuration option for line anti-aliasing

fixed: deleting objects would trigger a crash

more minor changes

style corrections

i'm dumb

also removed the if() case mentioned in the prior commit from addObjectDialog.cpp. :P

enclosed the assert replacement in braces. In release mode, the assert is replaced with nothing and there's a little bit of code in addObjectDialog which uses it as a statement in an one-line if(). With the assert disappearing in release builds this triggered a GCC warning, as the if would be left without a body.

- migrated selection from ForgeWindow to individual LDFiles. Should've done this long ago.

changeProperty(): don't change the property if the value would not change, this should save some procecssing..

initialize GLRenderer::m_hoverpos to (0, 0, 0)

cosmetic fixes

fixed: the file loader would skip every 300th line. And I thought I was going nuts when my quads kept disappearing...

Made the config dialog use a list widget for navigation over a tab widget.

(0) -300 -100 -48 +48 +100 +300 tip

mercurial