Replace casts

Commit work done on code cleanup

Commit work on scripting scripting

Refactoring update.

- fix spacing in cmakelists

- commit ldproject stuff projects

- more work on project files projects

- commit more work done on projects projects

- commit work done on projects projects

- merged with default projects

- fixed: actions did not fire anymore

- rewrote codegen in python and merged updaterevision into it

- moved ui files to src/

- renamed .cc files to .cpp

- added dependency to libarchive projects

- refactor MainWindow a tad

- removed the vertex object

- bump copyright year

- relaced updaterevision.c with a python script

- added/corrected license headers scripting

- ast: added root and macro nodes and processing of them scripting

- now parses to tokens scripting

- more work on scripting scripting

- commit work done on scripting scripting

- fixed stability problems

- closed old head experimental

- closed old head

- closed old head

- commit work done on header/body split experimental

- added integrity scan first steps experimental

- closed bad head experimental

- commit work done on inspector experimental

- merged experimental with default experimental

- merged with default experimental

- argh experimental

- merged two default heads

- fixed a rendering issue.. experimental

- bfc stuff (at least it works now...) experimental

- merged bfc with default experimental

- merged with default experimental

- added CMakeLists.txt.user to ignore list

- removed old .gitignore

- removed unneeded debug lines... whoops

- zoom-to-fit now works.. better than before

- commit work done on header/body split

- added integrity scan first steps

- bumped version to 0.4

- pressing ctrl while drawing now locks the draw to cardinal directions

- now remembers what toolbars are enabled and what are disabled in config

- merged with default experimental

- merged selection optimization from experimental into default

- removed the clock timer I forgot in the previous commit experimental

- rewritten updateSelection() core loop, a new algorithm there makes selection updating a ton lot faster than before experimental

- re-committed bfc work (this makes 903ec1e46298 a suitable common ancestor for experimental branch features) experimental

- backed out work done on bfc (re-committing later) experimental

- merged with default experimental

- improved part downloader: now asks for the path instead of just directing the user to settings. auto-fix download now configurable and opt-in

- interface fixes and changes: edit modes now use plain letter keybinds like gimp, fixed some edit modes missing from the menu, magic wand now follows the selection mode (in order to group selective/drawing modes together like that), etc

- fixed endless loop in prepareVBO due to badly incremented iterator

- commit work done on bfc support experimental

- fixed: missing WIN32 keyword in cmakelists caused the command prompt to show up when ldforge was executed

- fixed: due to a shared pointer called via reference called dismiss() in LDDocument::closeInitialFile, this could cause LDDocuments to delete themselves in setImplicit(true) as no shared pointers were left inside closeInitialFile to keep the refcount up.

- fixed compilation on windows

- a more elegant fix to the problem addressed in the previous commit

- fixed documentless objects being selected on document close

- if an external program fails to run properly, an stdout&stderr log is now printed

- changed the unorthodox color selection grid into a push button grid

- fixed infinite recursion when loading logoed studs

- renamed line loop to line path, updated changelog

- finished line loop mode

- added line loop mode (doesn't actually create anything yet)

- circle mode now locks the angle offset on final confirmation stage

- refactor

- display a label next to the spinbox showing the fraction

- axed an unused variable

- circle tool is now able to rotate the partial circular primitives spawned

- ring finder now also tries scaling by 10 (3.4, 6.4 -> 34, 64), fixed floating point math argghhhhhhhh

- now tries to download missing files off ldraw.org

- now able to spawn partial circular primitives

- circle mode can now do hi-res

- ldforge can now open files from command-line input

- got rid of an annoying debug message

- get rid of NUM_PRIMES

- major identifier renaming

- more refactor, updated .hgignore

- refactor

- use less verbose commit time/version string in the window title

- fixed crash-on-exit (simply by not running full destruction processing during program termination)

- and fixed compilation on linux systems too

- fixed compilation on windows systems

- fixed: changing the document of a subfile wasn't recorded into history properly

- whoah looks like I forgot to save in designer...

- down with all these unnecessary semicolons!

- refactored up the configuration dialog. Instead of setting all configuration values one-by-one, dynamically fill in the values and save them into config based on widget names and data

- changed configuration entry name from minuscule camelCase to majuscule CamelCase. reasoning for this being that these variables are globals.

- fixed: direct color support did not work properly with full-black #000000

- refactoring

- refactor

- use the untransformed subfile when testing whether a subfile is flat, otherwise it won't be considered flat if the subfile is rotated. or worse...

- added a code generator to produce a configuration.inc which replaces the old, DIABOLIC configuration indexing mechanism

- changed copyright lines to use my legal name instead of my nickname

- moved LDMatrixObject to be an abstract class deriving from LDObject. LDSubfile only inherits from LDMatrixObject.

- moved ringFinder into root source directory, clearing the src/misc/ directory

- split the rectangle ability out of the draw mode into its own edit mode

- changed `&&` and `||` operators to their named variants `and` and `or`

- part downloader: update the input widget with the corrected part name when guesswork is done

- initialize History as not ignoring or history will not work at all with new files

- altered the non-release version string format

- fixed incorrect conversions of weak pointers to strong ones

- reimplemented vertex tracking using a method similar to what the GL compiler uses

- now prints the filesize upon successful save

- magic wand: when flood-selecting surfaces, also pick any matching conditional lines

- fixed: ring finder's solutions' scale values would drop to 0.0 if it would not choose to upscale radii

- okay that was dumb

- updated filenames

- now with license headers

- and now it works fine too

- now compiles

- merged with main

- more work on edit modes

- more work on edit modes

- saving work done on edit mode revamp

- updated qrc

- draw the free camera icon when in magic wand mode

- changelog entry for magic wand

- update the object list when the magic wand empties the selection when clicking on background

- added the magic wand tool

- optimized simplify()

(0) -128 +128 tip

mercurial