Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added support 32-wind compass rose #3036

Merged
merged 5 commits into from
Feb 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions guide/app_config_ini.tex
Original file line number Diff line number Diff line change
Expand Up @@ -916,6 +916,7 @@ \subsection{\big[viewing\big]}
flag\_cardinal\_points & bool & Display cardinal points\\
flag\_ordinal\_points & bool & Display intercardinal (or ordinal) points\\
flag\_16wcr\_points & bool & Display secondary intercardinal points\\%\midrule
flag\_32wcr\_points & bool & Display tertiary intercardinal points\\%\midrule
cardinal\_font\_size & int & Font size for cardinal points. Typical value: \emph{24}\\%\midrule
ordinal\_font\_size & int & Font size for intercardinal (or ordinal) points. Typical value: \emph{18}\\%\midrule
16wcr\_font\_size & int & Font size for secondary intercardinal points. Typical value: \emph{16}\\\midrule
Expand Down
Binary file modified guide/pictures/view_dialog_markings_tab.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion plugins/RemoteControl/webroot/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,8 @@ <h3><input type="checkbox" class="stelaction" name="actionShow_Gridlines" /><?=
<label><input type="checkbox" class="stelaction" name="actionShow_Galactic_Center" /><?= tr("Galactic center and anticenter")?></label>
<label><input type="checkbox" class="stelaction" name="actionShow_Cardinal_Points" /><?= tr("Cardinal points")?>
<input type="checkbox" class="stelaction" name="actionShow_Intercardinal_Points" />8
<input type="checkbox" class="stelaction" name="actionShow_Secondary_Intercardinal_Points" />16</label>
<input type="checkbox" class="stelaction" name="actionShow_Secondary_Intercardinal_Points" />16
<input type="checkbox" class="stelaction" name="actionShow_Tertiary_Intercardinal_Points" />32</label>
<label><input type="checkbox" class="stelaction" name="actionShow_Compass_Marks"/><?= tr("Compass marks")?></label>
</div>
<div class="inline-block blocklabel">
Expand Down
10 changes: 5 additions & 5 deletions plugins/RemoteControl/webroot/tablet7in.html
Original file line number Diff line number Diff line change
Expand Up @@ -451,7 +451,11 @@ <h3><?= tr("Markings")?>--<?= tr("Celestial Sphere")?></h3>
<label><input type="checkbox" class="stelaction" name="actionShow_Meridian_Line" /><?= tr("Meridian")?></label>
<label title='<?= tr("Show Prime (East-West) Vertical.")?>'><input type="checkbox" class="stelaction" name="actionShow_Prime_Vertical_Line" /><?= tr("Prime Vertical")?></label>
<label title='<?= tr("Show colures (great circles through poles and solstices/equinoxes).")?>'><input type="checkbox" class="stelaction" name="actionShow_Colure_Lines" /><?= tr("Colures")?></label>
<label><input type="checkbox" class="stelaction" name="actionShow_Cardinal_Points" /><?= tr("Cardinal points")?></label>
<label><input type="checkbox" class="stelaction" name="actionShow_Cardinal_Points" /><?= tr("Cardinal points")?>
<input type="checkbox" class="stelaction" name="actionShow_Intercardinal_Points" />8
<input type="checkbox" class="stelaction" name="actionShow_Secondary_Intercardinal_Points" />16
<input type="checkbox" class="stelaction" name="actionShow_Tertiary_Intercardinal_Points" />32</label>
<label><input type="checkbox" class="stelaction" name="actionShow_Compass_Marks"/><?= tr("Compass marks")?></label>
</div>
<div class="inline-block blocklabel">
<label><input type="checkbox" class="stelaction" name="actionShow_Celestial_J2000_Poles" /><?= tr("Celestial poles (J2000)")?></label>
Expand Down Expand Up @@ -508,10 +512,6 @@ <h3><label><input type="checkbox" class="stelproperty valign-middle" name="Archa
<label><input type="checkbox" class="stelproperty" name="ArchaeoLines.flagShowCustomDeclination2"/><?= tr("Custom Declination 2")?> (<span class="stelproperty" data-prop="ArchaeoLines.customDeclination2" data-numberformat="n1"></span>&deg;=<span class="stelproperty" data-prop="ArchaeoLines.customDeclination2Label"></span>)</label>
</div>
</div>
<div class="smallblock stelplugin" data-plugin="CompassMarks">
<label><input type="checkbox" class="stelaction" name="actionShow_Compass_Marks"/><?= tr("Compass Marks")?></label>
</div>

</div>
</div>
<div id="tab_dso">
Expand Down
109 changes: 102 additions & 7 deletions src/core/modules/LandscapeMgr.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -77,13 +77,18 @@ Cardinals::Cardinals()
font8WCR.setPixelSize(conf->value("viewing/ordinal_font_size", screenFontSize+5).toInt());
// Draw the principal wind points even smaller.
font16WCR.setPixelSize(conf->value("viewing/16wcr_font_size", screenFontSize+2).toInt());
font32WCR.setPixelSize(conf->value("viewing/32wcr_font_size", screenFontSize).toInt());

// English names for cardinals
labels = {
{ dN, "N" }, { dS, "S" }, { dE, "E" }, { dW, "W" },
{ dNE, "NE" }, { dSE, "SE" }, { dSW, "SW" }, { dNW, "NW" },
{ dNNE,"NNE" }, { dENE,"ENE" }, { dESE,"ESE" }, { dSSE,"SSE" },
{ dSSW,"SSW" }, { dWSW,"WSW" }, { dWNW,"WNW" }, { dNNW,"NNW" }
{ dSSW,"SSW" }, { dWSW,"WSW" }, { dWNW,"WNW" }, { dNNW,"NNW" },
{ dNbE,"NbE" }, {dNEbN,"NEbN"}, {dNEbE,"NEbE"}, { dEbN,"EbN" },
{ dEbS,"EbS" }, {dSEbE,"SEbE"}, {dSEbS,"SEbS"}, { dSbE,"SbE" },
{ dSbW,"SbW" }, {dSWbS,"SWbS"}, {dSWbW,"SWbW"}, { dWbS,"WbS" },
{ dWbN,"WbN" }, {dNWbW,"NWbW"}, {dNWbN,"NWbN"}, { dNbW,"NbW" }
};
}

Expand All @@ -100,24 +105,36 @@ const QMap<Cardinals::CompassDirection, Vec3f> Cardinals::rose8winds = {
{ Cardinals::dSW, Vec3f( 1.f, -1.f, 0.f) }, { Cardinals::dNW, Vec3f(-1.f, -1.f, 0.f) }
};
const QMap<Cardinals::CompassDirection, Vec3f> Cardinals::rose16winds = {
{ dNNE, Vec3f(-1.f, cp, 0.f) }, { dENE, Vec3f( -cp, 1.f, 0.f) },
{ dESE, Vec3f( cp, 1.f, 0.f) }, { dSSE, Vec3f( 1.f, cp, 0.f) },
{ dSSW, Vec3f( 1.f, -cp, 0.f) }, { dWSW, Vec3f( cp, -1.f, 0.f) },
{ dWNW, Vec3f( -cp, -1.f, 0.f) }, { dNNW, Vec3f(-1.f, -cp, 0.f) }
{ Cardinals::dNNE, Vec3f(-1.f, cp, 0.f) }, { Cardinals::dENE, Vec3f( -cp, 1.f, 0.f) },
{ Cardinals::dESE, Vec3f( cp, 1.f, 0.f) }, { Cardinals::dSSE, Vec3f( 1.f, cp, 0.f) },
{ Cardinals::dSSW, Vec3f( 1.f, -cp, 0.f) }, { Cardinals::dWSW, Vec3f( cp, -1.f, 0.f) },
{ Cardinals::dWNW, Vec3f( -cp, -1.f, 0.f) }, { Cardinals::dNNW, Vec3f(-1.f, -cp, 0.f) }
};
const QMap<Cardinals::CompassDirection, Vec3f> Cardinals::rose32winds = {
{ Cardinals::dNbE, Vec3f(-1.f, qp, 0.f) }, { Cardinals::dNbW, Vec3f(-1.f, -qp, 0.f) },
{ Cardinals::dSbE, Vec3f( 1.f, qp, 0.f) }, { Cardinals::dSbW, Vec3f( 1.f, -qp, 0.f) },
{ Cardinals::dEbS, Vec3f( qp, 1.f, 0.f) }, { Cardinals::dEbN, Vec3f( -qp, 1.f, 0.f) },
{ Cardinals::dWbN, Vec3f( -qp, -1.f, 0.f) }, { Cardinals::dWbS, Vec3f( qp, -1.f, 0.f) },
{ Cardinals::dNEbN, Vec3f(-1.f, tqp, 0.f) }, { Cardinals::dNWbN, Vec3f(-1.f, -tqp, 0.f) },
{ Cardinals::dSEbS, Vec3f( 1.f, tqp, 0.f) }, { Cardinals::dSWbS, Vec3f( 1.f, -tqp, 0.f) },
{ Cardinals::dSEbE, Vec3f( tqp, 1.f, 0.f) }, { Cardinals::dNEbE, Vec3f(-tqp, 1.f, 0.f) },
{ Cardinals::dNWbW, Vec3f(-tqp, -1.f, 0.f) }, { Cardinals::dSWbW, Vec3f( tqp, -1.f, 0.f) }
};

void Cardinals::update(double deltaTime)
{
fader4WCR.update(static_cast<int>(deltaTime*1000));
fader8WCR.update(static_cast<int>(deltaTime*1000));
fader16WCR.update(static_cast<int>(deltaTime*1000));
fader32WCR.update(static_cast<int>(deltaTime*1000));
}

void Cardinals::setFadeDuration(float duration)
{
fader4WCR.setDuration(static_cast<int>(duration*1000.f));
fader8WCR.setDuration(static_cast<int>(duration*1000.f));
fader16WCR.setDuration(static_cast<int>(duration*1000.f));
fader32WCR.setDuration(static_cast<int>(duration*1000.f));
}

// Draw the cardinals points : N S E W and the subcardinal and sub-subcardinal.
Expand All @@ -134,7 +151,7 @@ void Cardinals::draw(const StelCore* core, double latitude) const
const float ppx = static_cast<float>(core->getCurrentStelProjectorParams().devicePixelsPerPixel);
StelPainter sPainter(prj);
sPainter.setFont(font4WCR);
float sshift=0.f, bshift=0.f, cshift=0.f, vshift=1.f;
float sshift=0.f, bshift=0.f, cshift=0.f, dshift=0.f, vshift=1.f;
bool flagMask = (core->getProjection(StelCore::FrameJ2000)->getMaskType() != StelProjector::MaskDisk);
if (propMgr->getProperty("SpecialMarkersMgr.compassMarksDisplayed")->getValue().toBool())
vshift = static_cast<float>(screenFontSize + 12)*ppx;
Expand Down Expand Up @@ -215,6 +232,33 @@ void Cardinals::draw(const StelCore* core, double latitude) const
sPainter.drawText(xy[0], xy[1], directionLabel, -textAngle*M_180_PIf, -cshift, vshift, true);
}
}

if (fader32WCR.getInterstate()>0.f)
{
sPainter.setColor(color, qMin(minFader, fader32WCR.getInterstate()));
sPainter.setFont(font32WCR);

QMapIterator<Cardinals::CompassDirection, Vec3f> it32w(rose32winds);
while(it32w.hasNext())
{
it32w.next();
QString directionLabel = labels.value(it32w.key(), "");

if (flagMask)
dshift = ppx*static_cast<float>(sPainter.getFontMetrics().boundingRect(directionLabel).width())*0.5f;

if (prj->project(it32w.value(), xy))
{
Vec3f up(it32w.value()[0], it32w.value()[1], 1.f*M_PI_180f);
Vec3f upPrj;
prj->project(up, upPrj);
float dx=upPrj[0]-xy[0];
float dy=upPrj[1]-xy[1];
float textAngle=atan2(dx, dy);
sPainter.drawText(xy[0], xy[1], directionLabel, -textAngle*M_180_PIf, -dshift, vshift, true);
}
}
}
}
}
}
Expand Down Expand Up @@ -255,7 +299,39 @@ void Cardinals::updateI18n()
// TRANSLATORS: West-northwest
{ dWNW, qc_("WNW", "compass direction") },
// TRANSLATORS: North-northwest
{ dNNW, qc_("NNW", "compass direction") }
{ dNNW, qc_("NNW", "compass direction") },
// TRANSLATORS: North by east
{ dNbE, qc_("NbE", "compass direction") },
// TRANSLATORS: Northeast by north
{dNEbN, qc_("NEbN","compass direction") },
// TRANSLATORS: Northeast by east
{dNEbE, qc_("NEbE","compass direction") },
// TRANSLATORS: East by north
{ dEbN, qc_("EbN", "compass direction") },
// TRANSLATORS: East by south
{ dEbS, qc_("EbS", "compass direction") },
// TRANSLATORS: Southeast by east
{dSEbE, qc_("SEbE","compass direction") },
// TRANSLATORS: Southeast by south
{dSEbS, qc_("SEbS","compass direction") },
// TRANSLATORS: South by east
{ dSbE, qc_("SbE", "compass direction") },
// TRANSLATORS: South by west
{ dSbW, qc_("SbW", "compass direction") },
// TRANSLATORS: Southwest by south
{dSWbS, qc_("SWbS","compass direction") },
// TRANSLATORS: Southwest by west
{dSWbW, qc_("SWbW","compass direction") },
// TRANSLATORS: West by south
{ dWbS, qc_("WbS", "compass direction") },
// TRANSLATORS: West by north
{ dWbN, qc_("WbN", "compass direction") },
// TRANSLATORS: Northwest by west
{dNWbW, qc_("NWbW","compass direction") },
// TRANSLATORS: Northwest by north
{dNWbN, qc_("NWbN","compass direction") },
// TRANSLATORS: North by west
{ dNbW, qc_("NbW", "compass direction") }
};
}

Expand Down Expand Up @@ -762,6 +838,7 @@ void LandscapeMgr::init()
cardinalPoints->setFlagShow4WCRLabels(conf->value("viewing/flag_cardinal_points", true).toBool());
cardinalPoints->setFlagShow8WCRLabels(conf->value("viewing/flag_ordinal_points", true).toBool());
cardinalPoints->setFlagShow16WCRLabels(conf->value("viewing/flag_16wcr_points", false).toBool());
cardinalPoints->setFlagShow32WCRLabels(conf->value("viewing/flag_32wcr_points", false).toBool());
// Load colors from config file
QString defaultColor = conf->value("color/default_color").toString();
setColorCardinalPoints(Vec3f(conf->value("color/cardinal_color", defaultColor).toString()));
Expand All @@ -782,6 +859,7 @@ void LandscapeMgr::init()
addAction("actionShow_Cardinal_Points", displayGroup, N_("Cardinal points"), "cardinalPointsDisplayed", "Q");
addAction("actionShow_Intercardinal_Points", displayGroup, N_("Ordinal (Intercardinal) points"), "ordinalPointsDisplayed");
addAction("actionShow_Secondary_Intercardinal_Points", displayGroup, N_("Secondary Intercardinal points"), "ordinal16WRPointsDisplayed");
addAction("actionShow_Tertiary_Intercardinal_Points", displayGroup, N_("Tertiary Intercardinal points"), "ordinal32WRPointsDisplayed");
addAction("actionShow_Ground", displayGroup, N_("Ground"), "landscapeDisplayed", "G");
addAction("actionShow_LandscapeIllumination", displayGroup, N_("Landscape illumination"), "illuminationDisplayed", "Shift+G");
addAction("actionShow_LandscapeLabels", displayGroup, N_("Landscape labels"), "labelsDisplayed", "Ctrl+Shift+G");
Expand Down Expand Up @@ -1096,6 +1174,7 @@ void LandscapeMgr::onTargetLocationChanged(const StelLocation &loc)
setFlagCardinalPoints(conf->value("viewing/flag_cardinal_points", true).toBool());
setFlagOrdinalPoints(conf->value("viewing/flag_ordinal_points", true).toBool());
setFlagOrdinal16WRPoints(conf->value("viewing/flag_16wcr_points", false).toBool());
setFlagOrdinal32WRPoints(conf->value("viewing/flag_32wcr_points", false).toBool());
alex-w marked this conversation as resolved.
Show resolved Hide resolved
}
}
}
Expand Down Expand Up @@ -1352,6 +1431,22 @@ bool LandscapeMgr::getFlagOrdinal16WRPoints() const
return cardinalPoints->getFlagShow16WCRLabels();
}

//! Set flag for displaying ordinal points
void LandscapeMgr::setFlagOrdinal32WRPoints(const bool displayed)
{
if (cardinalPoints->getFlagShow32WCRLabels() != displayed)
{
cardinalPoints->setFlagShow32WCRLabels(displayed);
emit ordinal32WRPointsDisplayedChanged(displayed);
}
}

//! Get flag for displaying ordinal points
bool LandscapeMgr::getFlagOrdinal32WRPoints() const
{
return cardinalPoints->getFlagShow32WCRLabels();
}

//! Set Cardinals Points color
void LandscapeMgr::setColorCardinalPoints(const Vec3f& v)
{
Expand Down
131 changes: 81 additions & 50 deletions src/core/modules/LandscapeMgr.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -40,58 +40,79 @@ class QTimer;
//! @class Cardinals manages the display of cardinal points
class Cardinals
{
Q_GADGET
Q_GADGET
public:
enum CompassDirection
{
// Cardinals (4-wind compass rose)
dN = 1, // north
dS = 2, // south
dE = 3, // east
dW = 4, // west
// Intercardinals (or ordinals) (8-wind compass rose)
dNE = 5, // northeast
dSE = 6, // southeast
dNW = 7, // northwest
dSW = 8, // southwest
// Secondary Intercardinals (16-wind compass rose)
dNNE = 9, // north-northeast
dENE = 10, // east-northeast
dESE = 11, // east-southeast
dSSE = 12, // south-southeast
dSSW = 13, // south-southwest
dWSW = 14, // west-southwest
dWNW = 15, // west-northwest
dNNW = 16 // north-northwest
};
Q_ENUM(CompassDirection)

Cardinals();
virtual ~Cardinals();
void draw(const StelCore* core, double latitude) const;
void setColor(const Vec3f& c) {color = c;}
Vec3f getColor() const {return color;}
void updateI18n();
void update(double deltaTime);
void setFadeDuration(float duration);
void setFlagShowCardinals(bool b) { fader4WCR = b; }
bool getFlagShowCardinals() const { return fader4WCR; }

void setFlagShow4WCRLabels(bool b) { fader4WCR = b; }
bool getFlagShow4WCRLabels() const { return fader4WCR; }
void setFlagShow8WCRLabels(bool b) { fader8WCR = b; }
bool getFlagShow8WCRLabels() const { return fader8WCR; }
void setFlagShow16WCRLabels(bool b) { fader16WCR = b; }
bool getFlagShow16WCRLabels() const { return fader16WCR; }
enum CompassDirection
{
// Cardinals (4-wind compass rose)
dN = 1, // north
dS = 2, // south
dE = 3, // east
dW = 4, // west
// Intercardinals (or ordinals) (8-wind compass rose)
dNE = 5, // northeast
dSE = 6, // southeast
dNW = 7, // northwest
dSW = 8, // southwest
// Secondary Intercardinals (16-wind compass rose)
dNNE = 9, // north-northeast
dENE = 10, // east-northeast
dESE = 11, // east-southeast
dSSE = 12, // south-southeast
dSSW = 13, // south-southwest
dWSW = 14, // west-southwest
dWNW = 15, // west-northwest
dNNW = 16, // north-northwest
// Tertiary Intercardinals (32-wind compass rose)
dNbE = 17, // north by east
dNEbN = 18, // northeast by north
dNEbE = 19, // northeast by east
dEbN = 20, // east by north
dEbS = 21, // east by south
dSEbE = 22, // southeast by east
dSEbS = 23, // southeast by south
dSbE = 24, // south by east
dSbW = 25, // south by west
dSWbS = 26, // southwest by south
dSWbW = 27, // southwest by west
dWbS = 28, // west by south
dWbN = 29, // west by north
dNWbW = 30, // northwest by west
dNWbN = 31, // northwest by north
dNbW = 32 // north by west
};
Q_ENUM(CompassDirection)

Cardinals();
virtual ~Cardinals();
void draw(const StelCore* core, double latitude) const;
void setColor(const Vec3f& c) {color = c;}
Vec3f getColor() const {return color;}
void updateI18n();
void update(double deltaTime);
void setFadeDuration(float duration);
void setFlagShowCardinals(bool b) { fader4WCR = b; }
bool getFlagShowCardinals() const { return fader4WCR; }

void setFlagShow4WCRLabels(bool b) { fader4WCR = b; }
bool getFlagShow4WCRLabels() const { return fader4WCR; }
void setFlagShow8WCRLabels(bool b) { fader8WCR = b; }
bool getFlagShow8WCRLabels() const { return fader8WCR; }
void setFlagShow16WCRLabels(bool b) { fader16WCR = b; }
bool getFlagShow16WCRLabels() const { return fader16WCR; }
void setFlagShow32WCRLabels(bool b) { fader32WCR = b; }
bool getFlagShow32WCRLabels() const { return fader32WCR; }
private:
class StelPropertyMgr* propMgr;
QFont font4WCR, font8WCR, font16WCR;
Vec3f color;
static constexpr float cp = static_cast<float>(1./(1.+M_SQRT2)); // dimension for secondary intercardinals
static const QMap<Cardinals::CompassDirection, Vec3f> rose4winds, rose8winds, rose16winds;
QMap<Cardinals::CompassDirection, QString> labels;
LinearFader fader4WCR, fader8WCR, fader16WCR;
int screenFontSize;
class StelPropertyMgr* propMgr;
QFont font4WCR, font8WCR, font16WCR, font32WCR;
Vec3f color;
static constexpr float cp = static_cast<float>(1./(1.+M_SQRT2)); // dimension for secondary intercardinals
static constexpr float qp = static_cast<float>(0.5f*cp);
static constexpr float tqp = static_cast<float>(1.5f*cp);
static const QMap<Cardinals::CompassDirection, Vec3f> rose4winds, rose8winds, rose16winds, rose32winds;
QMap<Cardinals::CompassDirection, QString> labels;
LinearFader fader4WCR, fader8WCR, fader16WCR, fader32WCR;
int screenFontSize;
};

//! @class LandscapeMgr
Expand Down Expand Up @@ -166,6 +187,10 @@ class LandscapeMgr : public StelModule
READ getFlagOrdinal16WRPoints
WRITE setFlagOrdinal16WRPoints
NOTIFY ordinal16WRPointsDisplayedChanged)
Q_PROPERTY(bool ordinal32WRPointsDisplayed
READ getFlagOrdinal32WRPoints
WRITE setFlagOrdinal32WRPoints
NOTIFY ordinal32WRPointsDisplayedChanged)
Q_PROPERTY(Vec3f cardinalPointsColor
READ getColorCardinalPoints
WRITE setColorCardinalPoints
Expand Down Expand Up @@ -475,6 +500,11 @@ public slots:
//! Set flag for displaying intercardinal (or ordinal) points (16-wind compass rose directions).
void setFlagOrdinal16WRPoints(const bool displayed);

//! Get flag for displaying intercardinal (or ordinal) points (32-wind compass rose directions).
bool getFlagOrdinal32WRPoints() const;
//! Set flag for displaying intercardinal (or ordinal) points (32-wind compass rose directions).
void setFlagOrdinal32WRPoints(const bool displayed);

//! Get Cardinals Points color.
Vec3f getColorCardinalPoints() const;
//! Set Cardinals Points color.
Expand Down Expand Up @@ -653,6 +683,7 @@ public slots:
void cardinalPointsDisplayedChanged(const bool displayed);
void ordinalPointsDisplayedChanged(const bool displayed);
void ordinal16WRPointsDisplayedChanged(const bool displayed);
void ordinal32WRPointsDisplayedChanged(const bool displayed);
void cardinalPointsColorChanged(const Vec3f & newColor) const;
void fogDisplayedChanged(const bool displayed);
void landscapeDisplayedChanged(const bool displayed);
Expand Down
Loading