remove Settings object from Painter

This commit is contained in:
Konstantin Käfer
2014-04-16 16:45:09 -04:00
parent 7e3f374bd4
commit b119aa92d8
3 changed files with 15 additions and 8 deletions

View File

@@ -17,7 +17,7 @@ Map::Map(Settings& settings)
texturepool(),
style(),
glyphAtlas(1024, 1024),
painter(transform, settings, style, glyphAtlas) {
painter(transform, style, glyphAtlas) {
}
Map::~Map() {
@@ -65,6 +65,7 @@ void Map::loadSettings() {
transform.setAngle(settings.angle);
transform.setScale(settings.scale);
transform.setLonLat(settings.longitude, settings.latitude);
painter.setDebug(settings.debug);
update();
}
@@ -256,6 +257,7 @@ void Map::resetZoom() {
void Map::toggleDebug() {
settings.debug = !settings.debug;
painter.setDebug(settings.debug);
update();
settings.persist();

View File

@@ -12,7 +12,6 @@
#include <llmr/renderer/raster_bucket.hpp>
#include <llmr/map/transform.hpp>
#include <llmr/map/settings.hpp>
#include <llmr/geometry/debug_font_buffer.hpp>
#include <llmr/platform/gl.hpp>
#include <llmr/style/style.hpp>
@@ -24,9 +23,8 @@ using namespace llmr;
#define BUFFER_OFFSET(i) ((char *)nullptr + (i))
Painter::Painter(Transform& transform, Settings& settings, Style& style, GlyphAtlas& glyphAtlas)
Painter::Painter(Transform& transform, Style& style, GlyphAtlas& glyphAtlas)
: transform(transform),
settings(settings),
style(style),
glyphAtlas(glyphAtlas) {
}
@@ -81,6 +79,10 @@ void Painter::resize() {
glViewport(0, 0, transform.getFramebufferWidth(), transform.getFramebufferHeight());
}
void Painter::setDebug(bool enabled) {
debug = enabled;
}
void Painter::useProgram(uint32_t program) {
if (gl_program != program) {
glUseProgram(program);
@@ -178,7 +180,7 @@ void Painter::render(const Tile& tile) {
renderLayers(tile.data, style.layers);
if (settings.debug) {
if (debug) {
renderDebug(tile.data);
}
}