Commit 4df9cc73 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Aplica mejoras de nuevos diseños al de mapa

Reemplaza el uso de constructores por otro método más específico llamado
desde la base de los nuevos diseños, para mezclar las configuraciones
por defecto de cada parte.

Hereda desde los diferentes layout la definición del controller del
diseño, para ahorrarse heredarlo en cada sitio donde se vaya a usar el
diseño, ya que siempre será el mismo porque sólo hay uno por diseño.

Actualiza el código de los lugares donde se usaba ya el nuevo diseño de
mapa.
parent ca17633d
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
define([
	'dojo/_base/declare'
	, 'dojo/_base/lang'
], function (
	declare
	, lang
) {

	return declare(null, {
@@ -10,6 +12,22 @@ define([
		// description:
		//   Reúne funciones básicas usadas por todos los controladores de diseño.

		_mergeOwnAttributes: function(/*Object*/ args) {
			// summary:
			//   Recibe atributos definidos desde fuera para mezclarlos en profundidad dentro de la instancia.
			// description:
			//   Es importante que este método se llame desde la fase de postMixInProperties del componente, ya que
			//   justo antes Dijit hace una primera mezcla de args en this, que no tiene en cuenta los cambios. Por
			//   tanto, si se ejecuta antes, los cambios serán sobreescritos, y si se ejecuta después, puede ser
			//   demasiado tarde para asignar algunos valores necesarios en otras fases tempranas.
			//   Respetar siempre en la definición del método los posibles valores devueltos en llamadas heredadas,
			//   para poder ir acumulando la configuración que aporta cada nivel.

			const defaultConfig = this._getDesignDefaultConfig?.() || {};

			lang.mixin(this, this._merge([this, defaultConfig, args]));
		},

		prepareComponentDefinition: function(/*Array*/ baseDefinitionArray, /*Object*/ extensionEnableFlags,
			/*Object*/ extensionDefinitions) {
			// summary:
+1 −19
Original line number Diff line number Diff line
define([
	'dojo/_base/declare'
	, 'dojo/_base/lang'
], function(
	declare
	, lang
) {

	return declare(null, {
@@ -22,22 +20,6 @@ define([
			this._mergeOwnAttributes(this.params || {});
		},

		_mergeOwnAttributes: function(/*Object*/ args) {
			// summary:
			//   Recibe atributos definidos desde fuera para mezclarlos en profundidad dentro de la instancia.
			// description:
			//   Es importante que este método se llame desde la fase de postMixInProperties del componente, ya que
			//   justo antes Dijit hace una primera mezcla de args en this, que no tiene en cuenta los cambios. Por
			//   tanto, si se ejecuta antes, los cambios serán sobreescritos, y si se ejecuta después, puede ser
			//   demasiado tarde para asignar algunos valores necesarios en otras fases tempranas.
			//   Respetar siempre en la definición del método los posibles valores devueltos en llamadas heredadas,
			//   para poder ir acumulando la configuración que aporta cada nivel.

			const defaultConfig = this._getDesignDefaultConfig?.() || {};

			lang.mixin(this, this._merge([this, defaultConfig, args]));
		},

		buildRendering: function() {
			// Método perteneciente al ciclo de vida de un widget Dijit.

+2 −2
Original line number Diff line number Diff line
@@ -40,7 +40,7 @@ define([

		createDesignControllerComponents: function() {

			let inheritedComponents = this.inherited(arguments);
			const inheritedComponents = this.inherited(arguments);

			const mapInstance = inheritedComponents.map,
				getMapChannel = lang.hitch(mapInstance, mapInstance.getChannel);
+12 −10
Original line number Diff line number Diff line
@@ -36,14 +36,6 @@ define([
		select: _Select
	};

	return declare(null, {
		// summary:
		//   Lógica de diseño para añadir un componente Browser, junto con otros para mostrarlo y filtrar contenido.
		//   Debe asociarse como mixin a un componente al instanciarlo, junto con la parte de controlador y alguna
		//   maquetación de este diseño.

		constructor: function(args) {

	const defaultConfig = {
		enabledBrowserExtensions: {
			dragAndDrop: false,
@@ -52,7 +44,17 @@ define([
		}
	};

			lang.mixin(this, this._merge([this, defaultConfig, args]));
	return declare(null, {
		// summary:
		//   Lógica de diseño para añadir un componente Browser, junto con otros para mostrarlo y filtrar contenido.
		//   Debe asociarse como mixin a un componente al instanciarlo, junto con la parte de controlador y alguna
		//   maquetación de este diseño.

		_getDesignDefaultConfig: function() {

			const inheritedDefaultConfig = this.inherited(arguments) || {};

			return this._merge([inheritedDefaultConfig, defaultConfig]);
		},

		_setConfigurations: function() {
@@ -101,7 +103,7 @@ define([

		createDesignControllerComponents: function() {

			let inheritedComponents = this.inherited(arguments);
			const inheritedComponents = this.inherited(arguments);

			let tabsDisplayer = inheritedComponents.tabsDisplayer;

+16 −14
Original line number Diff line number Diff line
@@ -32,15 +32,6 @@ define([
		radius: _RadiusOnClick
	};

	return declare(null, {
		// summary:
		//   Lógica de diseño para añadir un componente MapLayer, junto con otros para comunicarlo y mostrar información
		//   en el mapa.
		//   Debe asociarse como mixin a un componente al instanciarlo, junto con la parte de controlador y alguna
		//   maquetación de este diseño.

		constructor: function(args) {

	const defaultConfig = {
		mapLayerDefinition: 'cluster',
		enabledMapLayerExtensions: {
@@ -52,7 +43,18 @@ define([
		mapLayerPopupTemplate: null
	};

			lang.mixin(this, this._merge([this, defaultConfig, args]));
	return declare(null, {
		// summary:
		//   Lógica de diseño para añadir un componente MapLayer, junto con otros para comunicarlo y mostrar información
		//   en el mapa.
		//   Debe asociarse como mixin a un componente al instanciarlo, junto con la parte de controlador y alguna
		//   maquetación de este diseño.

		_getDesignDefaultConfig: function() {

			const inheritedDefaultConfig = this.inherited(arguments) || {};

			return this._merge([inheritedDefaultConfig, defaultConfig]);
		},

		_setConfigurations: function() {
@@ -92,7 +94,7 @@ define([

		createDesignControllerComponents: function() {

			let inheritedComponents = this.inherited(arguments);
			const inheritedComponents = this.inherited(arguments);

			const mapLayer = this._createDesignMapLayerComponent(inheritedComponents.map),
				mapCentering = this._createDesignMapCenteringComponent();
Loading