Commit Graph

49 Commits

Author SHA1 Message Date
Twan van Laarhoven 64ea1d7322 Clean up pointer use:
* Use unique_ptr for Actions instead of manual memory management
 * Use unique_ptr in KeywordDatabase
 * Use unique_ptr instead of shared_ptr for file formats
 * Don't pass shared_ptr to Reader/Writer, use references instead
Also
 * Switch to C++17 so we can use map::try_emplace
2020-04-25 22:20:51 +02:00
Twan van Laarhoven 708b4389a0 Use make_intrusive/make_shared for smart pointer construction. 2020-04-25 22:20:51 +02:00
Twan van Laarhoven 713a9e4a40 Use underscores instead of spaces for all internal names. And renamed some script functions at the same time.
* cannocial_name_form now outputs "_", where it used to use " "
* this simplifies reflectio and scripting code, because now C++ names are also MSE internal names
* added 'caption' property to fields. This is used instead of the name in NativeLookEditor, since the latter will now contain underscores.
* renamed text related script functions for consistency, since we were touching that part of the code anyway.
2020-04-22 23:48:26 +02:00
Twan van Laarhoven 35a89676b4 CMake file
Update to C++ 11: std::shared_ptr, for each loops
Update to wxWidgets 3.0+
2020-04-08 01:10:01 +02:00
Lymia Aluysia 1d912a6853 Update copyright strings. 2017-01-18 08:52:57 -06:00
Lymia Aluysia d2c635f739 Change tabs to two spaces. 2017-01-18 08:43:21 -06:00
twanvl 69ea39c64f slightly better error messages when reading an enum value fails: also report the default used
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1464 0fc631ac-6414-0410-93d0-97cfa31319b6
2010-08-02 23:05:05 +00:00
twanvl 51dfed69b4 Instead of the new_intrusive<T>() functions, use intrusive(new T)
This means we no longer need 8 different functions for different numbers of arguments, and non-const references can now also be passed to constructors without problems.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1443 0fc631ac-6414-0410-93d0-97cfa31319b6
2010-07-21 14:32:28 +00:00
coppro cf91f9c43b Update copryright date to 2010.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1438 0fc631ac-6414-0410-93d0-97cfa31319b6
2010-03-01 23:33:25 +00:00
coppro b73f081b60 Updated copyright information (2009 + my real name)
MSE now handles opening more gracefully - can handle directories and failures
Changed behavior to always save cards to separate files with intent to add VCS later (note: shouldn't do this for zip, but can't see a good way to approach this)


git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1388 0fc631ac-6414-0410-93d0-97cfa31319b6
2009-06-19 03:09:05 +00:00
twanvl c8dd777bca EnumReader now warns about the correct string,
parse_enum function throws if the string can not be parsed

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1341 0fc631ac-6414-0410-93d0-97cfa31319b6
2009-01-11 00:45:21 +00:00
twanvl 4200e4ae0a made isComplex() function cope with the looping of the IMPLEMENT_REFLECTION function
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1337 0fc631ac-6414-0410-93d0-97cfa31319b6
2009-01-10 20:21:14 +00:00
twanvl c7c028b026 fixed: version number propagates to included files
magic pack template now uses 'pack type' instead of 'pack item'

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1331 0fc631ac-6414-0410-93d0-97cfa31319b6
2009-01-10 02:43:15 +00:00
twanvl 8389ed0c9a Fixed: include files where not read with the same ignore_invalid settings
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1097 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-08-08 13:55:59 +00:00
twanvl d70c3d6d74 Moved the AColor type to a gfx/ header, so other code can use it.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@847 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-05-16 19:49:14 +00:00
coppro 26562e03e3 Updated copyright information - added my name and also changed 2007 to 2008
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@837 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-04-06 18:16:32 +00:00
twanvl 4defac43ff Added <color:???> and <size:???> tags for changing text color/size
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@831 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-03-24 14:52:42 +00:00
twanvl d2196eea09 Finally got precompiled headers to work.
Now all C++ files need to #include <util/prec.hpp>
 That is why all .cpp files are touched by this commit

Many changes to installers and update checking:
     - the window is now called PackagesWindow, in a new source file
     - update checking is now independent from the PackagesWindow. For update checking only a list of package versions are needed (vector<PackageDependency>). This is much less information to download at each startup.
     - the list of available packages is now a list of available Installers, since an installer can contain multiple packages.
     - moved the logic of dependency checking etc. to data/installer
     - moved the actual installation to util/io/package_manager
     - moved directory iteration/creation logic to util/file_utils
     - added PackageDirectory: the local and global package directory now have their own object (was part of PackageManager)
     - added PackageVersion: for detecting if a package has been modified after it was installed.
     - added PackageDescription: description/header of a package. Basicly the same as what Packaged provides.
     - added DownloadableInstaller: where to find an insaller, what does it contain?
     - added InstallablePackage: brining it all together: installer, package, status, action.

Current status: the insaller is currently broken in a few places, more on that soon.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@792 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-12-29 18:30:41 +00:00
twanvl 36a36356c5 The 'Big Whine' patch:
Any use of a file from another package without a declared dependency will give a warning;

Also added some more _LOCALE_123_ macros so we need less format_string calls

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@753 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-09-24 20:24:22 +00:00
twanvl e46cbe66b2 Cleaned up Set::Styling/Card::Styling by spliting that functionality into a 'DelayedIndexMaps' class;
Added 'right' and 'bottom' properties to style as an alternative way of specifying width/height;
Added content_width, content_height and content_lines properties that give feedback on text rendering;
Always show warnings when showing errors and vice-versa, this prevents script errors from appearing before the reader/parse error that caused them;
Finally some preliminairy work on export templates

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@428 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-06-22 23:12:41 +00:00
twanvl 8b11433cbd Reader now warns about invalid UTF-8 files;
Fixed possible hang when reading multiline strings with incorrect indentation;
Warnings from reading are shown also in NewSetWindow;
Script parse errors get reported with the correct line number;

Added support for showing multiple choice fields as a single image;
Added 'line_below' to ChoiceField::Choice, for putting a line below menu items.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@420 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-06-12 19:35:24 +00:00
twanvl 33fd2b5e18 default smart pointer type switched to intrusive_ptr
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@337 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-05-11 21:34:53 +00:00
twanvl 90b685f0f8 Working on installer packages;
Nicer warnings about using spaces for indentation

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@321 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-05-06 00:30:53 +00:00
twanvl 6feef4feb0 Fixed/hacked 'no parameter' for 0.2.7 keyword compatability;
Added 'just_header' flag to make stylesheet list load faster;
Added versioning and dependency support to packages

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@320 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-05-05 23:19:52 +00:00
twanvl a2e709d86b It is 2007 by now
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@275 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-04-21 17:06:29 +00:00
twanvl cb1c0a9afb nicer error messags when aliases don't but should apply
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@242 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-03-29 18:23:09 +00:00
twanvl 439dbfce6b rewritten retrying part of reader, it is now implemented how it should have been from the start.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@175 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-12-25 16:52:07 +00:00
twanvl 2504eb908b fixed: GetMember works on values without save_value
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@130 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-12-19 22:16:29 +00:00
twanvl ca42f31ccc Localisation, using Locale class
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@113 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-12-12 16:09:05 +00:00
twanvl 8dcda6fd93 Dependency following now works
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@95 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-11-25 22:48:14 +00:00
twanvl ce6a83e34b Basic text rendering working;
Added Font (done) and SymbolFont (skeleton);
Added styling to set;
Added CountourMap;
Some script fixes

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@73 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-11-17 17:57:04 +00:00
twanvl 1ffaa5bd58 made a start with script functions
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@62 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-31 12:17:36 +00:00
twanvl 0caaf01a78 Implemented the context management part of the ScriptManager
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@61 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-30 21:39:58 +00:00
twanvl 0a3a089c98 implemented reading of maps
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@60 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-29 23:04:46 +00:00
twanvl 10f52c80ac improved handling of aliasses and warnings
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@51 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-26 23:33:33 +00:00
twanvl 1459cd6d76 Added dummy CardEditor, implemented Stylesheet loading
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@50 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-26 22:46:28 +00:00
twanvl b5cb26474a fixed reading of IndexMaps: loop, initialization of 'index'
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@41 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-20 13:38:03 +00:00
twanvl c15bc94ee7 Added version number to files; IndexMap now works with GetMember
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@40 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-19 21:01:17 +00:00
twanvl ff96f1522a added FieldP to values and styles, implemented reflection for IndexMap
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@36 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-19 18:44:27 +00:00
twanvl 301594c165 fixed infinite loops after includes and at eof
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@32 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-19 14:09:50 +00:00
twanvl 89aa0254ab added support for includes
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@31 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-19 13:42:20 +00:00
twanvl ba4785ac49 Added warnings to Reader, fixed some bugs found that way
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@30 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-19 13:03:11 +00:00
twanvl dc0ece358b Split GetMember into GetMember (for handle) and GetDefaultMember (for store);
Split IMPLEMENT_REFLECTION macro to match

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@24 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-19 12:29:51 +00:00
twanvl b389685fc8 Added Alignment, Defaultable and Scriptable types, needed some reflection tweaks for the last two.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@17 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-12 14:07:34 +00:00
twanvl 156d1f6632 Automatic use of singular names -> even more use of REFLECT instead of REFLECT_N.
This also works better for GetMember, since the plural names (which make sense for scripts) are the default.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@16 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-11 22:58:55 +00:00
twanvl 9de743030e Switched to a new coding style, which plays nicely with the Reader/Writer. This new style allows REFLECT to be used instead of REFLECT_N in most places.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@15 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-11 22:26:55 +00:00
twanvl b6c7e5bd01 start with implementing fields
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@12 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-09 16:21:38 +00:00
twanvl 50b22e9478 improved the doxygen documentation
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@4 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-01 15:18:40 +00:00
twanvl ddfb1a5089 initial checkin of C++ port (in progress)
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@2 0fc631ac-6414-0410-93d0-97cfa31319b6
2006-10-01 14:08:07 +00:00