From 63b72aabaa412341295fffa27f4ff354b8bd7418 Mon Sep 17 00:00:00 2001 From: CounterPillow Date: Sun, 15 Jul 2012 05:53:15 +0200 Subject: [PATCH] Added defaultzoom config option --- overviewer.py | 2 +- overviewer_core/settingsDefinition.py | 1 + overviewer_core/settingsValidators.py | 6 ++++++ overviewer_core/tileset.py | 3 ++- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/overviewer.py b/overviewer.py index ab4e4ac..3759594 100755 --- a/overviewer.py +++ b/overviewer.py @@ -421,7 +421,7 @@ dir but you forgot to put quotes around the directory, since it contains spaces. # only pass to the TileSet the options it really cares about render['name'] = render_name # perhaps a hack. This is stored here for the asset manager - tileSetOpts = util.dict_subset(render, ["name", "imgformat", "renderchecks", "rerenderprob", "bgcolor", "imgquality", "optimizeimg", "rendermode", "worldname_orig", "title", "dimension", "changelist","showspawn", "overlay","base"]) + tileSetOpts = util.dict_subset(render, ["name", "imgformat", "renderchecks", "rerenderprob", "bgcolor", "defaultzoom", "imgquality", "optimizeimg", "rendermode", "worldname_orig", "title", "dimension", "changelist","showspawn", "overlay","base"]) tileSetOpts.update({"spawn": w.find_true_spawn()}) # TODO find a better way to do this tset = tileset.TileSet(w, rset, assetMrg, tex, tileSetOpts, tileset_dir) tilesets.append(tset) diff --git a/overviewer_core/settingsDefinition.py b/overviewer_core/settingsDefinition.py index bdf21e9..8ffe738 100644 --- a/overviewer_core/settingsDefinition.py +++ b/overviewer_core/settingsDefinition.py @@ -71,6 +71,7 @@ renders = Setting(required=True, default=util.OrderedDict(), "imgformat": Setting(required=True, validator=validateImgFormat, default="png"), "imgquality": Setting(required=False, validator=validateImgQuality, default=95), "bgcolor": Setting(required=True, validator=validateBGColor, default="1a1a1a"), + "defaultzoom": Setting(required=True, validator=validateDefaultZoom, default=1), "optimizeimg": Setting(required=True, validator=validateOptImg, default=0), "nomarkers": Setting(required=False, validator=validateBool, default=None), "texturepath": Setting(required=False, validator=validateTexturePath, default=None), diff --git a/overviewer_core/settingsValidators.py b/overviewer_core/settingsValidators.py index 58e4835..0d0299e 100644 --- a/overviewer_core/settingsValidators.py +++ b/overviewer_core/settingsValidators.py @@ -208,6 +208,12 @@ def validateObserver(observer): else: raise ValidationException("%r does not look like an observer" % repr(observer)) +def validateDefaultZoom(z): + if z > 0: + return int(z) + else: + raise ValidationException("The default zoom is set below 1") + def make_dictValidator(keyvalidator, valuevalidator): """Compose and return a dict validator -- a validator that validates each key and value in a dictionary. diff --git a/overviewer_core/tileset.py b/overviewer_core/tileset.py index c2a8bec..aeb8fc2 100644 --- a/overviewer_core/tileset.py +++ b/overviewer_core/tileset.py @@ -517,7 +517,7 @@ class TileSet(object): d = dict(name = self.options.get('title'), zoomLevels = self.treedepth, minZoom = 0, - defaultZoom = 1, + defaultZoom = self.options.get('defaultzoom'), maxZoom = self.treedepth, path = self.options.get('name'), base = self.options.get('base'), @@ -528,6 +528,7 @@ class TileSet(object): imgextension = self.imgextension, isOverlay = isOverlay ) + if isOverlay: d.update({"tilesets": self.options.get("overlay")})