From ce6a83e34b2e79b1e0a1e2283aa08eccf3cbf77b Mon Sep 17 00:00:00 2001 From: twanvl Date: Fri, 17 Nov 2006 17:57:04 +0000 Subject: [PATCH] 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 --- src/data/field.cpp | 4 +- src/data/field.hpp | 2 +- src/data/field/text.cpp | 24 +++- src/data/field/text.hpp | 35 +++-- src/data/font.cpp | 73 ++++++++++ src/data/font.hpp | 52 +++++++ src/data/set.cpp | 57 +++++++- src/data/set.hpp | 12 ++ src/data/stylesheet.cpp | 17 ++- src/data/stylesheet.hpp | 9 +- src/data/symbol_font.cpp | 25 ++++ src/data/symbol_font.hpp | 79 ++++++++++ src/gfx/gfx.hpp | 43 +++++- src/gui/set/cards_panel.cpp | 2 +- src/mse.vcproj | 136 +++++++++++++----- src/render/card/viewer.cpp | 7 +- src/render/card/viewer.hpp | 5 +- src/render/text/element.cpp | 143 ++++++++++++++++++ src/render/text/element.hpp | 186 ++++++++++++++++++++++++ src/render/text/font.cpp | 52 +++++++ src/render/text/line.cpp | 19 +++ src/render/text/symbol.cpp | 19 +++ src/render/text/viewer.cpp | 263 ++++++++++++++++++++++++++++++++++ src/render/text/viewer.hpp | 97 +++++++++++++ src/render/value/color.cpp | 2 +- src/render/value/text.cpp | 16 ++- src/render/value/text.hpp | 18 ++- src/render/value/viewer.cpp | 3 +- src/script/context.cpp | 7 +- src/script/parser.cpp | 5 +- src/script/script.cpp | 6 + src/script/script_manager.cpp | 2 +- src/script/scriptable.cpp | 1 + src/script/scriptable.hpp | 1 + src/script/value.cpp | 5 + src/script/value.hpp | 10 ++ src/util/index_map.hpp | 6 +- src/util/io/get_member.cpp | 1 + src/util/io/reader.hpp | 8 +- src/util/real_point.hpp | 30 +++- src/util/rotation.cpp | 29 +++- src/util/rotation.hpp | 8 ++ src/util/string.hpp | 2 +- src/util/tagged_string.cpp | 53 +++++++ src/util/tagged_string.hpp | 105 ++++++++++++++ 45 files changed, 1595 insertions(+), 84 deletions(-) create mode 100644 src/data/font.cpp create mode 100644 src/data/font.hpp create mode 100644 src/data/symbol_font.cpp create mode 100644 src/data/symbol_font.hpp create mode 100644 src/render/text/element.cpp create mode 100644 src/render/text/element.hpp create mode 100644 src/render/text/font.cpp create mode 100644 src/render/text/line.cpp create mode 100644 src/render/text/symbol.cpp create mode 100644 src/render/text/viewer.cpp create mode 100644 src/render/text/viewer.hpp create mode 100644 src/util/tagged_string.cpp create mode 100644 src/util/tagged_string.hpp diff --git a/src/data/field.cpp b/src/data/field.cpp index 685bf079..0e843496 100644 --- a/src/data/field.cpp +++ b/src/data/field.cpp @@ -93,7 +93,7 @@ IMPLEMENT_REFLECTION(Style) { } void init_object(const FieldP& field, StyleP& style) { - style = field->newStyle(field); + if (!style) style = field->newStyle(field); } template <> StyleP read_new