Commit Graph

78 Commits

Author SHA1 Message Date
GenevensiS 3bf9de18b1 Implement unique IDs and card linking 2025-08-11 16:17:13 +02:00
GenevensiS b33fdd4856 add include localized file token 2025-03-11 02:27:03 +01:00
Twan van Laarhoven c9c708dfbe Fix #63: don't use reference arguments in openFileInPackage 2020-05-27 22:16:48 +02:00
Twan van Laarhoven 22b1c2604b Remove reader_pragma_handler hack 2020-05-22 01:23:53 +02:00
Twan van Laarhoven 173f702ffa Warn about missing ':' in reader 2020-05-22 01:20:48 +02:00
Twan van Laarhoven 1bb61ea9ac Fix gcc build 2020-05-21 19:53:56 +02:00
Twan van Laarhoven 1a0e17221b Added StringView type (similar to std::string_view) 2020-05-21 19:29:42 +02:00
Twan van Laarhoven 0c3712b61a Cleanup: indentation of public/protected/private keywords 2020-05-12 21:57:37 +02:00
Twan van Laarhoven a1d54f36fc Use LocalFileName class for file names inside a package. 2020-04-30 00:20:32 +02:00
Twan van Laarhoven 40d78edf0f Cleaned up the reflection code a bit
* Renamed 'tag' variable to 'handler'
* Removed addAlias stuff, instead check for matching names with if statements
* Added after_reading function that is called by Reader after reading a complete object. This generalizes Packaged::validate, which is now also called via this mechanism.
* Removed some backwards compatibility with <0.3.0 for templates
2020-04-26 15:33:59 +02:00
Twan van Laarhoven bad9981ad9 Cleaned up copyright block.
Removed the year so we don't get tempted to change this ever again.
2020-04-26 01:11:14 +02:00
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 a585fc40cc Remove some useless "typedef wxX X" 2020-04-22 23:58:01 +02:00
Twan van Laarhoven a6cd6c2dd0 Spelling of canonical 2020-04-21 21:48:47 +02:00
Twan van Laarhoven cbf1251f8c Fix more gcc warnings 2020-04-16 01:03:10 +02:00
Twan van Laarhoven 6e7a4485a8 Cleaned up utf8 decoding code.
It was actually completely broken in newer wxWidgets versions, putting '\0' characters in the string, which broke things like concatenation.
2020-04-08 01:24:19 +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 bd55326c7d * Added console panel for evaluating scripts and showing error messages.
* Rewrite of error queue code: errors are now pulled, instead of being turned into messageboxes automatically.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1629 0fc631ac-6414-0410-93d0-97cfa31319b6
2011-01-21 13:26:03 +00:00
twanvl 3562891b42 compatibility with wxWdigets 2.9+: there is now a built in wxString::FromUTF8 function, use it
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1527 0fc631ac-6414-0410-93d0-97cfa31319b6
2010-12-07 21:02:55 +00:00
twanvl 2f7d95af9c No longer using namespace boost,
doing that lead to conflicts in new compilers, because both boost and std contain a shared_ptr type.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1517 0fc631ac-6414-0410-93d0-97cfa31319b6
2010-10-03 16:16:28 +00: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 44b3d15a68 warn about invalid conversion to int/double/bool in Reader
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1459 0fc631ac-6414-0410-93d0-97cfa31319b6
2010-07-22 13:36:05 +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 47aa7ce923 Rename 'cannocial_name_form' to 'canonical_name_form'
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1433 0fc631ac-6414-0410-93d0-97cfa31319b6
2009-12-04 06:04:57 +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 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 4fde933a11 added time_created and time_modified to Card. This changes the file format
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1321 0fc631ac-6414-0410-93d0-97cfa31319b6
2009-01-09 19:07:14 +00:00
twanvl 432cdcd583 mostly backwards compatibility with old pack system, uses boost tribool
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1311 0fc631ac-6414-0410-93d0-97cfa31319b6
2009-01-09 00:49:14 +00:00
twanvl 893547aff2 Locale now sneakily also recognizes lines marked as #_ADD
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1101 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-08-08 18:25:47 +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 779a240e2f Whitespace skipping in Reader should not eat the newlines, previously it was impossible to load a string containing "\n\n"
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@909 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-05-31 17:47:36 +00:00
twanvl f3ff6f22ae Renamed global PackageManager object to package_manager to reduce confusion
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@907 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-05-31 14:45:04 +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
coppro e6f466933d More warnings/minor fixes
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@836 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-04-06 18:08: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
coppro 98fe6a4e26 Made the reader capable of skipping blank lines.
Added a bunch of missing byte-order marks.


git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@827 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-01-28 04:30:33 +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 29c9f9ae8d Some minor performance tweaks
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@726 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-09-21 11:55:54 +00:00
twanvl 1f3f4e01fe Added support for named colors, e.g. "white" and "black";
Added missing keys to locale.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@716 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-09-20 18:16:10 +00:00
twanvl 0625a3ca87 Fixed UTF8 decoding for non-unicode build;
conclusion: @#%!@#% ASCII/Windows-1252/ISO-8859 must die!

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@621 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-08-24 01:05:39 +00:00
twanvl 565ddc1e12 Fixed: keys without save_value caused reader to loop
Fixed: first line of multi line text value could cause warnings about whitespace
Fixed some copy/paste errors in choice style reading;
Text viewer correctly uses mask for first line

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@604 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-08-07 14:19:38 +00:00
coppro 11609df5db Implemented reflection for PackageVersionData
A little memory cleanup (most memory loss is in wx and gtk though)


git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@563 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-07-13 16:10:36 +00:00
twanvl 64ad82bdd8 Fixed 'todo' in reader in ASCII build
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@503 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-07-06 13:30:52 +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 73c2d9b152 Reader now correctly reads the last line of input (if no newline at eof)
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@365 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-05-14 00:07:07 +00:00