Commit Graph

246 Commits

Author SHA1 Message Date
twanvl 76d2eb7d42 Remove curly quotes for MWS and apprentice export
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1038 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-08-02 20:43:45 +00:00
twanvl 2f5666ac5b dependencies of extra card fields are now also added and updated;
this fixes combined_editor in extra fields.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1036 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-08-02 19:16:30 +00:00
coppro b49966dc03 Updates, including improvement to atomic code to ensure portability.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1031 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-08-01 20:58:09 +00:00
twanvl 13a37f4734 Simplified compilation of 'assert' pseudo function;
Added remove_duplicates flag to sort_list function;
Fixed documentation of <size:> tag

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1028 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-07-22 22:46:04 +00:00
twanvl 53808346a4 Allow "or else" construct to be used for error recovery
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1016 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-07-09 17:14:49 +00:00
twanvl bde65525ad some fixes to ^ operator
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1014 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-07-09 16:03:13 +00:00
twanvl 7cb2292d36 Added ^ power operator,
Added abs, random_int, random_real, random_shuffle, random_select script functions.
Made == comparison of doubles use a small epsilon, so things like 3/2 == 1.5 are actually true.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1013 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-07-09 15:51:07 +00:00
twanvl c0669fb658 Fixed length function to work correctly for ScriptObjects, in particular for TextValues.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1010 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-28 15:13:04 +00:00
twanvl c0d114c4a2 Fancier error messages for assert(X == Y)
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1008 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-28 14:51:20 +00:00
twanvl dfae1b2729 Added count_chosen function;
Added I_DUP instruction

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1007 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-28 14:41:38 +00:00
twanvl fe2e3fb9c8 Be more strict about type conversion:
* numbers are no longer auto converted to booleans, use to_boolean or != 0
  * booleans are no longer auto converted to numbers, use to_int
  * strings will soon no longer be auto converted to numbers, use to_int

Added version information ("since 0.3.7") to documentation

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1006 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-28 13:34:57 +00:00
coppro f2055044f9 Changed from a critical section to a mutex for error handling.
show_pending_errors() was being called over and over again from the GUI
update system - somehow it managed to have a single thread in two places
at once. Also tried recursive mutex, resulted in infinite dialogs until
an out-of-memory crash.

Also, minor conversion fix.


git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@998 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-21 05:02:46 +00:00
twanvl 158ecf67ad Now all regex functions use ScriptRule.
The *_rule functions can now be considered deprecated
Documented this by removing mentions of the rule functions, except for a mention of backwards compatibility.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@997 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-19 00:37:48 +00:00
twanvl 5ece2dbb86 More ScriptRule usage
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@996 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-19 00:04:28 +00:00
twanvl a3d209ae35 Use ScriptRule also for regex functions, optimizing them by pre-compiling default arguments
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@995 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-18 23:26:41 +00:00
twanvl 13157f6d67 Make ScriptClosure work correctly in combination with ScriptCompose: have a local scope.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@994 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-18 23:25:26 +00:00
twanvl a9c5f72fdc Make == script operator to work correctly on collections (lists)
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@992 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-18 23:11:26 +00:00
twanvl b7ffca6cfc Split regex related script functions into a separate file.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@991 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-18 22:25:45 +00:00
twanvl 864903bc0c Use closure stuff for making built in *_rule functions, simplifying the code.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@990 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-18 22:17:56 +00:00
twanvl 296cf8197a Also init dependencies of non rule form expand_keywords
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@989 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-18 21:45:12 +00:00
twanvl 95d38f9ba6 Added 'assert' pseudo function so I can run some tests of the script code
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@988 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-18 21:01:17 +00:00
twanvl 2662f9d4bf Optimize default arguments (@ operator) into script rules.
The plan is to deprecate rule form completely, so instead of replace_rule(match:..) write replace_text@(match: ...)

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@987 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-18 19:25:18 +00:00
twanvl 698d7e1f9f No age is Age(0), so we don't refresh symbols all the time
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@979 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-06 19:03:56 +00:00
twanvl 902a85f113 Allow symbol_variation script function to load images from the stylesheet by filename
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@977 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-05 20:36:20 +00:00
twanvl aa950d1821 Use smart_less when sorting collections
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@967 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-03 19:26:23 +00:00
twanvl d00beeb55f Closure operator now behaves as default argument operator, documentation.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@965 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-03 18:33:17 +00:00
twanvl c5159ebcf7 "div" operator for integer division,
Added parser support for closure operator fun@(args)
Use equal() function for all script comparisons, better support for deciding when to use strings and when to use pointers equality.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@964 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-03 16:38:33 +00:00
twanvl 6912dfda09 Simplified script VM:
- removed I_RET instruction, return is now implicit at end of script
 - I_POP is not a binary instruction.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@963 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-03 14:08:11 +00:00
twanvl 5b47f6f498 Improved position reporting of script errors
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@931 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-01 01:07:45 +00:00
twanvl 97ccf34dce Slightly more information on script errors in keyword reminder text
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@930 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-06-01 00:50:51 +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 e61aed5c6b Names of add/remove card/keyword actions
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@868 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-05-18 21:10:13 +00:00
twanvl 8d6af1d37a Fixed some bugs from last commit (typo in SCRIPT_PARAM_DEFAULT_C definition)
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@858 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-05-18 17:53:44 +00:00
twanvl 1a7e689e95 Added break_text function
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@857 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-05-18 17:27:44 +00:00
twanvl c666e98645 Allow multiple cards to be selected in a card list,
Allow card actions to add/remove multiple cards.
not yet: actually use these multicard actions.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@853 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-05-17 01:51:50 +00:00
twanvl 1b516e781f Script support for AColors. All colors in script related code are now AColor.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@852 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-05-16 20:51:16 +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 60b1bb0489 Fixed that stupid user-made keyword precedence bug.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@828 0fc631ac-6414-0410-93d0-97cfa31319b6
2008-02-10 02:14:15 +00:00
twanvl abf4da9cff Fixed: rotation adjust code was overwriting scripts;
Fixed: positioning of stretched + rotated text

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@802 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-12-30 01:53:41 +00:00
twanvl 796975bd9d Added saturate script function (+documentation), it also desaturates
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@800 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-12-30 00:48:39 +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 4405863485 Added caching to filter_text script function
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@786 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-12-26 17:43:17 +00:00
twanvl 547a48b98d - Optimization: common parameters to built in functions are no longer looked up as a string at each call, instead their integer ids are global constants
- Optimization: some other minor tweaks.
 - Nicer --help message

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@783 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-12-24 02:04:45 +00:00
twanvl b79f52db84 New rotation system (see forum thread).
Major changes:
  - when rotating, the top left corner of the rectangle stays in place.
  - ValueViewers get a dc that is pre-rotated/translated for them, i.e. (0,0) is the top-left of the viewer (with ValueViewer::getRotation).
  - moved 'angle' from individual Styles to the Style base class.
  - any rotation angle is now possible. angle is still an int for now.

This warrants a version bump

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@782 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-12-23 21:58:58 +00:00
coppro dd656ba1bd Fixed "regex escape" function, and updated a script that needed it.
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@762 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-09-30 14:37:18 +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 458062fa37 Spelling: availAble;
Added information about what parameter an error occured in;
Conversion to string no longer results in [[typeName()]], it gives an error instead.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@721 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-09-20 21:52:26 +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 e4f9bf1eac Fixed: "X time counter(s)" for suspend keyword, caused by not adding number hints for non-numeric things;
No longer request thumbnails of missing images

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@714 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-09-20 17:54:10 +00:00
coppro 99d385eb00 Added some fixes
More work on update window.


git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@700 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-09-15 03:38:54 +00:00