mirror of
https://github.com/amyinspace/MagicSetEditor2.git
synced 2026-06-10 04:57:00 -04:00
3c4729aaa2
Added 'pack type', intended for playtesting (random boosters/starters); Added 'default(_image)' property to ImageStyle, and added the frame fillers for magic; Added blurring and bold printing (rather hacky) to the text rendering functions (used for "double click to add image" text); Added 'symmetric overlay' combine mode, which will look really nice for hybrids; Moved the watermark choices from the game to an include file in magic-watermarks; Working on a replacement for the image scripting system that plays nicer with the rest of the code. In particular, it will be possible to compare generated images quickly, so they can be updated continuously. This is a work in progress, currently there are two versions of everything. git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@327 0fc631ac-6414-0410-93d0-97cfa31319b6
79 lines
2.4 KiB
C++
79 lines
2.4 KiB
C++
//+----------------------------------------------------------------------------+
|
|
//| Description: Magic Set Editor - Program to make Magic (tm) cards |
|
|
//| Copyright: (C) 2001 - 2007 Twan van Laarhoven |
|
|
//| License: GNU General Public License 2 or later (see file COPYING) |
|
|
//+----------------------------------------------------------------------------+
|
|
|
|
#ifndef HEADER_DATA_FIELD_SYMBOL
|
|
#define HEADER_DATA_FIELD_SYMBOL
|
|
|
|
// ----------------------------------------------------------------------------- : Includes
|
|
|
|
#include <util/prec.hpp>
|
|
#include <data/field.hpp>
|
|
#include <script/scriptable.hpp>
|
|
|
|
DECLARE_POINTER_TYPE(SymbolFilter);
|
|
DECLARE_POINTER_TYPE(SymbolVariation);
|
|
|
|
// ----------------------------------------------------------------------------- : SymbolField
|
|
|
|
DECLARE_POINTER_TYPE(SymbolField);
|
|
DECLARE_POINTER_TYPE(SymbolStyle);
|
|
DECLARE_POINTER_TYPE(SymbolValue);
|
|
|
|
/// A field for image values
|
|
class SymbolField : public Field {
|
|
public:
|
|
// no extra data
|
|
DECLARE_FIELD_TYPE(Symbol);
|
|
|
|
private:
|
|
DECLARE_REFLECTION();
|
|
};
|
|
|
|
// ----------------------------------------------------------------------------- : SymbolStyle
|
|
|
|
/// The Style for a SymbolField
|
|
class SymbolStyle : public Style {
|
|
public:
|
|
inline SymbolStyle(const SymbolFieldP& field) : Style(field) {}
|
|
DECLARE_STYLE_TYPE(Symbol);
|
|
|
|
vector<SymbolVariationP> variations; ///< Different variantions of the same symbol
|
|
|
|
private:
|
|
DECLARE_REFLECTION();
|
|
};
|
|
|
|
/// Styling for a symbol variation, defines color, border, etc.
|
|
class SymbolVariation {
|
|
public:
|
|
SymbolVariation();
|
|
String name; ///< Name of this variation
|
|
SymbolFilterP filter; ///< Filter to color the symbol
|
|
double border_radius; ///< Border radius for the symbol
|
|
DECLARE_REFLECTION();
|
|
};
|
|
|
|
// ----------------------------------------------------------------------------- : SymbolValue
|
|
|
|
/// The Value in a SymbolField, i.e. a symbol
|
|
class SymbolValue : public Value {
|
|
public:
|
|
inline SymbolValue(const SymbolFieldP& field) : Value(field) {}
|
|
DECLARE_HAS_FIELD(Symbol)
|
|
|
|
typedef FileName ValueType;
|
|
ValueType filename; ///< Filename of the symbol (in the current package)
|
|
Age last_update; ///< When was the symbol last changed?
|
|
|
|
virtual String toString() const;
|
|
|
|
private:
|
|
DECLARE_REFLECTION();
|
|
};
|
|
|
|
// ----------------------------------------------------------------------------- : EOF
|
|
#endif
|