mirror of
https://github.com/amyinspace/MagicSetEditor2.git
synced 2026-06-12 13:37:00 -04:00
Card preview on style panel is refreshed when styling changes
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@492 0fc631ac-6414-0410-93d0-97cfa31319b6
This commit is contained in:
@@ -38,6 +38,10 @@ void CardViewer::redraw(const ValueViewer& v) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void CardViewer::onChange() {
|
void CardViewer::onChange() {
|
||||||
|
redraw();
|
||||||
|
}
|
||||||
|
|
||||||
|
void CardViewer::redraw() {
|
||||||
if (drawing) return;
|
if (drawing) return;
|
||||||
up_to_date = false;
|
up_to_date = false;
|
||||||
Refresh(false);
|
Refresh(false);
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ class CardViewer : public wxControl, public DataViewer {
|
|||||||
/** May NOT be called while in onPaint/draw */
|
/** May NOT be called while in onPaint/draw */
|
||||||
shared_ptr<DC> overdrawDC();
|
shared_ptr<DC> overdrawDC();
|
||||||
|
|
||||||
|
/// Invalidate and redraw the entire viewer
|
||||||
|
void redraw();
|
||||||
/// Invalidate and redraw (the area of) a single value viewer
|
/// Invalidate and redraw (the area of) a single value viewer
|
||||||
virtual void redraw(const ValueViewer&);
|
virtual void redraw(const ValueViewer&);
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,9 @@
|
|||||||
#include <data/card.hpp>
|
#include <data/card.hpp>
|
||||||
#include <data/stylesheet.hpp>
|
#include <data/stylesheet.hpp>
|
||||||
#include <data/action/set.hpp>
|
#include <data/action/set.hpp>
|
||||||
|
#include <data/action/value.hpp>
|
||||||
|
|
||||||
|
DECLARE_TYPEOF_COLLECTION(FieldP);
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------- : StylePanel
|
// ----------------------------------------------------------------------------- : StylePanel
|
||||||
|
|
||||||
@@ -68,6 +71,17 @@ void StylePanel::onAction(const Action& action, bool undone) {
|
|||||||
editor->showCard(card);
|
editor->showCard(card);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
TYPE_CASE(action, ValueAction) {
|
||||||
|
// is it a styling action?
|
||||||
|
const StyleSheet& s = set->stylesheetFor(card);
|
||||||
|
FOR_EACH_CONST(f, s.styling_fields) {
|
||||||
|
if (action.valueP->fieldP == f) {
|
||||||
|
// refresh the viewer
|
||||||
|
preview->redraw();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
use_for_all->Enable(card && card->stylesheet);
|
use_for_all->Enable(card && card->stylesheet);
|
||||||
use_custom_options->Enable(card);
|
use_custom_options->Enable(card);
|
||||||
use_custom_options->SetValue(card->has_styling);
|
use_custom_options->SetValue(card->has_styling);
|
||||||
|
|||||||
Reference in New Issue
Block a user