mirror of
https://github.com/amyinspace/MagicSetEditor2.git
synced 2026-06-10 04:57:00 -04:00
Implement unique IDs and card linking
This commit is contained in:
+36
-6
@@ -68,14 +68,14 @@ IMPLEMENT_REFLECTION(Field) {
|
||||
}
|
||||
|
||||
void Field::after_reading(Version ver) {
|
||||
name = canonical_name_form(name);
|
||||
if(caption.default_.empty()) caption.default_ = tr(package_relative_filename, name, name_to_caption);
|
||||
name = canonical_name_form(name);
|
||||
if(caption.default_.empty()) caption.default_ = tr(package_relative_filename, name, name_to_caption);
|
||||
if(card_list_name.default_.empty()) card_list_name.default_ = tr(package_relative_filename, caption.default_, capitalize);
|
||||
}
|
||||
|
||||
template <>
|
||||
intrusive_ptr<Field> read_new<Field>(Reader& reader) {
|
||||
intrusive_ptr<Field> field;
|
||||
intrusive_ptr<Field> field;
|
||||
// there must be a type specified
|
||||
String type;
|
||||
reader.handle(_("type"), type);
|
||||
@@ -95,7 +95,7 @@ intrusive_ptr<Field> read_new<Field>(Reader& reader) {
|
||||
} else {
|
||||
reader.warning(_ERROR_1_("unsupported field type", type));
|
||||
throw ParseError(_ERROR_("aborting parsing"));
|
||||
}
|
||||
}
|
||||
field->package_relative_filename = reader.getPackage()->relativeFilename().Clone();
|
||||
return field;
|
||||
}
|
||||
@@ -222,8 +222,38 @@ void Style::checkContentDependencies(Context& ctx, const Dependency& dep) const
|
||||
|
||||
void Style::markDependencyMember(const String& name, const Dependency& dep) const {
|
||||
// mark dependencies on content
|
||||
if (dep.type == DEP_DUMMY && dep.index == false && (starts_with(name, _("content")) || name == "layout") ) {
|
||||
// anything that starts with "content_" is a content property
|
||||
if (
|
||||
dep.type == DEP_DUMMY && dep.index == false && (
|
||||
starts_with(name, _("content")) ||
|
||||
name == "layout" ||
|
||||
name == "lines" ||
|
||||
name == "paragraphs" ||
|
||||
name == "blocks" ||
|
||||
name == "separators" ||
|
||||
name == "font" ||
|
||||
name == "symbol_font" ||
|
||||
name == "always_symbol" ||
|
||||
name == "allow_formating" ||
|
||||
name == "alignment" ||
|
||||
name == "padding_left" ||
|
||||
name == "padding_right" ||
|
||||
name == "padding_top" ||
|
||||
name == "padding_bottom" ||
|
||||
name == "padding_left_min" ||
|
||||
name == "padding_right_min" ||
|
||||
name == "padding_top_min" ||
|
||||
name == "padding_bottom_min" ||
|
||||
name == "line_height_soft" ||
|
||||
name == "line_height_hard" ||
|
||||
name == "line_height_line" ||
|
||||
name == "line_height_soft_max" ||
|
||||
name == "line_height_hard_max" ||
|
||||
name == "line_height_line_max" ||
|
||||
name == "paragraph_height" ||
|
||||
name == "block_height_min" ||
|
||||
name == "direction"
|
||||
)
|
||||
) {
|
||||
const_cast<Dependency&>(dep).index = true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user