English
Instant Developer Foundation Documentazione
  • Approfondimenti
  • Componentizzazione

Google Maps versione 1.1

copia link

Introduzione

Il componente GoogleMaps è stato rilasciato in versione 1.1. Le novità di questa versione sono:

  • compatibilità con la versione 9.1 di In.de;
  • utilizzo della versione 3 delle API di Google;
  • aggiunta videata Mappa incorporabile in altre videate;
  • personalizzazione della mappa.

Compatibilità con la versione 9.1 di In.de

Il componente è utilizzabile sia in versione 9.0 che in versione 9.1 di In.de (C# e Java).

La versione 1.0 del componente è utilizzabile con la versione 9.0 di In.de, mentre la 1.1 del componente con la 9.1 di In.de. Durante l'importazione del componente verrà segnalato un errore nel caso si sia scelta una versione del componente incompatibile con la versione correntemente utilizzata di In.de.

N.B.: Quando si cambia versione di In.de per poter compilare occorre reimportare nel progetto i componenti nella versione compatibile.

Utilizzo della versione 3 delle API

Il componente utilizza ora Google Maps Javascript API in versione 3; la versione 9.0 usava la versione 2. La versione 3 delle API, dichiara Google, è disegnata per essere più veloce e meglio utilizzabile sui dispositivi mobili; inoltre non è più richiesta la chiave di registrazione quindi ora non occorre più valorizzare il parametro GoogleMapsKey.

Aggiunta videata Mappa incorporabile in altre videate

Sfruttando la nuova funzionalità della 9.1 che permette di incorporare una videata in un altra videata (vedi nota di rilascio) è stata creata la videata Mappa che comunica con la videata ospitante tramite l'evento OnSendMessage. I messaggi che notifica sono i seguenti:

// ****************************************************************************
// Evento notificato quando una videata invia un messaggio tramite la procedura
// SendMessage
// ****************************************************************************

event SediProGamma.OnSendMessage(
  string Message // Indica il nome del messaggio
  IDForm Sender  // Identifica la form che ha inviato il messaggio
  IDDocument Document // Optional document sent by the sender
  string Par1    // Opzionale. Contiene una espressione qualsiasi (il cui ...
  string Par2    // Opzionale. Contiene una espressione qualsiasi (il cui ...
  string Par3    // Opzionale. Contiene una espressione qualsiasi (il cui ...
  string Par4    // Opzionale. Contiene una espressione qualsiasi (il cui ...
)
{
  // Se ho ricevuto un messaggio dalla Mappa
  if (Mappa.isMyInstance(Sender))
  {
    switch (Message)
    {
      case MoveMarker:
         GeoMarker gm = GeoMarker.cast(Document)
         AltroIndirizzo.Latitudine = gm.Latitudine
         AltroIndirizzo.Longitudine = gm.Longitudine
      break
      case ClickPoint:
         // Evento notificato quando viene cliccato su un punto qualsiasi della
         // mappa

         
      break
      case ClickMarker:
         // Evento notificato quando viene cliccato un marker presente sulla
         // mappa

         
      break
      case ClickPolygon:
         // Evento notificato quando viene cliccato un poligono presente sulla
         // mappa

         
      break
    }
  }
}

Personalizzazione della mappa

Sono state aggiunte all'oggetto GoogleMaps le proprietà mostrare in figura necessarie per configurare la mappa.


Proprietà di configurazione della mappa

Per configurare la mappa basta modificarne le proprietà nell'evento di Load della videata ospitante come mostrato di seguito:

// *********************************************************************
// Evento notificato alla videata al momento del caricamento in memoria.
// *********************************************************************

event SediProGamma.Load()
{
  Inserisco i dati delle sedi della Pro Gamma
    ...
  // 
  // Disabilito la multiselezione

  SediProGamma.enableMultipleSelection = false
  // 
  // Configuro la mappa a mio piacimento

  Mappa SubFormMap = Mappa.cast(Mappa.IDForm())
  GoogleMap MapOpts = SubFormMap.GetMapOptions()
  // 
  // Mostro l'indicatore della scala

  MapOpts.ScaleControl = true
}

Ultima modifica: 25/10/2016 / Validità: da 9.1.4040

Vedi anche

    GoogleMaps.idz
    Google Maps Javascript API v2
    Google Maps Javascript API v3
  • IDE: Form in Form
  • On Send Message (evento)
  • Load (evento)