theme is back

This commit is contained in:
Hannes Janetzek
2013-06-28 04:21:10 +02:00
parent 092e5b7780
commit b39259621a

View File

@@ -14,11 +14,22 @@
*/ */
package org.oscim.layers.tile.vector; package org.oscim.layers.tile.vector;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import org.oscim.backend.CanvasAdapter;
import org.oscim.backend.Log; import org.oscim.backend.Log;
import org.oscim.core.GeoPoint; import org.oscim.core.GeoPoint;
import org.oscim.core.MapPosition; import org.oscim.core.MapPosition;
import org.oscim.layers.tile.TileLayer; import org.oscim.layers.tile.TileLayer;
import org.oscim.layers.tile.TileManager; import org.oscim.layers.tile.TileManager;
import org.oscim.renderer.GLRenderer;
import org.oscim.theme.ExternalRenderTheme;
import org.oscim.theme.IRenderTheme;
import org.oscim.theme.InternalRenderTheme;
import org.oscim.theme.RenderThemeHandler;
import org.oscim.theme.Theme;
import org.oscim.tilesource.ITileDataSource; import org.oscim.tilesource.ITileDataSource;
import org.oscim.tilesource.MapInfo; import org.oscim.tilesource.MapInfo;
import org.oscim.tilesource.TileSource; import org.oscim.tilesource.TileSource;
@@ -108,95 +119,98 @@ public class MapTileLayer extends TileLayer<MapTileLoader> {
return mapPosition; return mapPosition;
} }
// public String getRenderTheme() { public String getRenderTheme() {
// return mRenderTheme; return mRenderTheme;
// } }
//
// /** /**
// * Sets the internal theme which is used for rendering the map. * Sets the internal theme which is used for rendering the map.
// * *
// * @param internalRenderTheme * @param internalRenderTheme
// * the internal rendering theme. * the internal rendering theme.
// * @return ... * @return ...
// * @throws IllegalArgumentException * @throws IllegalArgumentException
// * if the supplied internalRenderTheme is null. * if the supplied internalRenderTheme is null.
// */ */
// public boolean setRenderTheme(InternalRenderTheme internalRenderTheme) { public boolean setRenderTheme(InternalRenderTheme internalRenderTheme) {
// if (internalRenderTheme == null) { if (internalRenderTheme == null) {
// throw new IllegalArgumentException("render theme must not be null"); throw new IllegalArgumentException("render theme must not be null");
// } }
//
// if (internalRenderTheme.name() == mRenderTheme) if (internalRenderTheme.name() == mRenderTheme)
// return true; return true;
//
// boolean ret = setRenderTheme((Theme) internalRenderTheme); boolean ret = setRenderTheme((Theme) internalRenderTheme);
// if (ret) { if (ret) {
// mRenderTheme = internalRenderTheme.name(); mRenderTheme = internalRenderTheme.name();
// } }
//
// mMapView.clearMap(); mMapView.clearMap();
//
// return ret; return ret;
// } }
//
// /** /**
// * Sets the theme file which is used for rendering the map. * Sets the theme file which is used for rendering the map.
// * *
// * @param renderThemePath * @param renderThemePath
// * the path to the XML file which defines the rendering theme. * the path to the XML file which defines the rendering theme.
// * @throws IllegalArgumentException * @throws IllegalArgumentException
// * if the supplied internalRenderTheme is null. * if the supplied internalRenderTheme is null.
// * @throws FileNotFoundException * @throws FileNotFoundException
// * if the supplied file does not exist, is a directory or cannot * if the supplied file does not exist, is a directory or cannot
// * be read. * be read.
// */ */
// public void setRenderTheme(String renderThemePath) throws FileNotFoundException { public void setRenderTheme(String renderThemePath) throws FileNotFoundException {
// if (renderThemePath == null) { if (renderThemePath == null) {
// throw new IllegalArgumentException("render theme path must not be null"); throw new IllegalArgumentException("render theme path must not be null");
// } }
//
// boolean ret = setRenderTheme(new ExternalRenderTheme(renderThemePath)); boolean ret = setRenderTheme(new ExternalRenderTheme(renderThemePath));
// if (ret) { if (ret) {
// mRenderTheme = renderThemePath; mRenderTheme = renderThemePath;
// } }
//
// mMapView.clearMap(); mMapView.clearMap();
// } }
//
// private boolean setRenderTheme(Theme theme) { private boolean setRenderTheme(Theme theme) {
//
// pauseLoaders(true); pauseLoaders(true);
//
// InputStream inputStream = null; InputStream inputStream = null;
// try { try {
// inputStream = theme.getRenderThemeAsStream(); inputStream = theme.getRenderThemeAsStream();
// IRenderTheme t = RenderThemeHandler.getRenderTheme(inputStream); IRenderTheme t = RenderThemeHandler.getRenderTheme(inputStream);
// t.scaleTextSize(1 + (CanvasAdapter.dpi / 240 - 1) * 0.5f); t.scaleTextSize(1 + (CanvasAdapter.dpi / 240 - 1) * 0.5f);
//
// // FIXME !!! // FIXME !!!
// GLRenderer.setRenderTheme(t); GLRenderer.setRenderTheme(t);
//
// for (MapTileLoader g : mTileLoader) for (MapTileLoader g : mTileLoader)
// g.setRenderTheme(t); g.setRenderTheme(t);
//
// return true; return true;
// } catch (ParserConfigurationException e) { // } catch (ParserConfigurationException e) {
// Log.e(TAG, e.getMessage()); // Log.e(TAG, e.getMessage());
// } catch (SAXException e) { // } catch (SAXException e) {
// Log.e(TAG, e.getMessage()); // Log.e(TAG, e.getMessage());
// } catch (IOException e) { } catch (IOException e) {
Log.e(TAG, e.getMessage());
} catch (Exception e) {
e.printStackTrace();
//Log.e(TAG, e.getMessage()); //Log.e(TAG, e.getMessage());
// } finally { } finally {
// try { try {
// if (inputStream != null) { if (inputStream != null) {
// inputStream.close(); inputStream.close();
// } }
// } catch (IOException e) { } catch (IOException e) {
// Log.e(TAG, e.getMessage()); Log.e(TAG, e.getMessage());
// } }
// resumeLoaders(); resumeLoaders();
// } }
// return false; return false;
// } }
} }