Passa al contenuto principale

DEFDIAGRAMMAP

DesktopResponsive

Consente di rappresentare una mappa interattiva all'interno di una videata.

La fonte dati del controllo è una collezione di tipo BC_VID_DGR_MAP.

Ogni singola modifica fatta sulla collezione, si riflette automaticamente sul componente grafico.

suggerimento

Nel caso in cui si debbano eseguire modifiche massive è possibile sospendere l'aggiornamento del controllo video tramite la specifica '@SUSPENDEDVIDREFRESH.

Parametri

ParametroDefinizioneI/OInformazioniVersione traduttoreSMP
NOMEInteroINObbligatorioDesktopResponsive
RETINObbligatorioDesktop
POSINDesktop
DIMINDesktop
IDStringaINDesktopResponsive
COLLEZIONEDATICollezione di BC_VID_DGR_MAPINObbligatorioDesktopResponsive
MODIFICABILEInteroINBinarioDesktop
AZIONEAzioneINDesktop
AZIONECLICKAzioneINDesktopResponsive
AZIONECANCINDesktop
IMMAGINEVariabileINDesktopResponsive
IDMENUStringaINDesktop
GRIDINDesktop
STACKINDesktop
EXPANDERINDesktop
DOCKINDesktop
PERSONALIZZABILEInteroINBinarioDesktop
LINKTOINDesktop
OGGETTOCORRENTEVariabileIN29.3Responsive

NOME

InteroINInputObbligatorioObbligatorioValore non necessarioValore non necessarioDesktopResponsive

Consente di definire il nome del controllo.

RET

INInputObbligatorioObbligatorioValore non necessarioValore non necessarioDesktop

Consente di definire le coordinate della cella del reticolo da associare al controllo, allo scopo di gestire gli spostamenti sulla videata.

POS

INInputValore non necessarioValore non necessarioDesktop

Consente di definire la posizione del controllo rispetto al contenitore.

DIM

INInputValore non necessarioValore non necessarioDesktop

Dimensione del controllo.

Consente di indicare l'altezza e la larghezza. Per entrambi è possibile specificare l'unità di misura.

DIM[Altezza [UnitàMisura], Larghezza [UnitàMisura]]

note

L'unità di misura può essere: 'C' per il posizionamento a caratteri e 'P' per il posizionamento in pixel. L'indicazione è opzionale, se omesso si assume 'C' come default.

ID

StringaINInputValore non necessarioValore non necessarioDesktopResponsive

Consente di definire l'identificativo univoco del controllo.

note

Viene utilizzato dall'ambiente per gestire le personalizzazioni effettuate durante l'esecuzione del programma.

COLLEZIONEDATI

Collezione di BC_VID_DGR_MAPINInputObbligatorioObbligatorioValore non necessarioValore non necessarioDesktopResponsive

Consente di definire gli elementi da visualizzare.

MODIFICABILE

InteroINInputBinarioBinarioValore non necessarioValore non necessarioDesktop

Consente di definire se il diagramma è modificabile.

Parametro con valori ammessi, si possono utilizzare i seguenti valori:

ValoreDescrizione
0No
1Si

AZIONE

AzioneINInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire la callback richiamata quando un'entità viene selezionata.

AZIONECLICK

AzioneINInputValore non necessarioValore non necessarioDesktopResponsive
SottoParametri

Consente di definire la callback da eseguire dopo il click singolo su un'entità.

AZIONECANC

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire la callback da eseguire alla pressione del tasto CANC.

IMMAGINE

VariabileINInputValore non necessarioValore non necessarioDesktopResponsive

Consente di definire l'immagine di sfondo del diagramma.

IDMENU

StringaINInputValore non necessarioValore non necessarioDesktop

Consente di definire l'identificativo univoco del menu contestuale da associare al diagramma.

GRID

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire l'attached property riferita ad un pannello grid.

STACK

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire l'attached property riferita ad un pannello stack.

EXPANDER

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire l'attached property riferita ad un pannello expander.

DOCK

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di indicare se il controllo deve occupare tutto lo spazio del DockPanel in verticale e/o in orizzontale.

PERSONALIZZABILE

InteroINInputBinarioBinarioValore non necessarioValore non necessarioDesktop

Consente di definire se il controllo grafico è personalizzabile dall'utente in fase di runtime.

Parametro con valori ammessi, si possono utilizzare i seguenti valori:

ValoreDescrizione
0No
1Si

LINKTO

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire un legame tra due controlli esistenti all'interno della stessa videata.

OGGETTOCORRENTE

29.3VariabileINInputValore non necessarioValore non necessarioResponsive

Consente di indicare la variabile valorizzata con l'elemento del diagramma corrente.

Metodi

MetodoDescrizioneSMP
CambiaIdentificativoModifica identitificativo oggetto graficoDesktop
CopiaSuClipboardCopia il diagramma in memoriaDesktop
Get_ElementoRestituisce la classe riferita all'elemento selezionatoDesktop
Get_SelezionatiRestituisce la lista degli identificativi di tutti gli elementi selezionatiDesktop
GetDimensioniRestituzione dimensioni (altezza, larghezza) di una data entitàDesktop
GetFontAngoloRestituzione dimensioni (altezza, larghezza) di una data entitàDesktop
GetFontDimensioneRestituzione dimensioni (altezza, larghezza) di una data entitàDesktop
GetNumeroElementiRestituisce il numero di elementi selezionati all'interno del diagrammaDesktop
SalvaImmagineSalvataggio del diagramma come immagineDesktop
Set_ImmagineImposta un'immagine di sfondoDesktop
Set_ZoomImposta un fattore di zoomDesktop
SetDimensioniRestituzione dimensioni (altezza, larghezza) di una data entitàDesktop
SetFontAngoloRestituzione dimensioni (altezza, larghezza) di una data entitàDesktop
SetFontDimensioneRestituzione dimensioni (altezza, larghezza) di una data entitàDesktop
StampaStampa diagrammaDesktop

Esempi

Esempio definizione

 ' Nome MapItem
SHARED DIM Name[STRING]

' Id MapItem
SHARED DIM Id[STRING]

' Forma MapItem
SHARED DIM Shape[INT]

SHARED DIM Zoom[INT]

SHARED DIM MapItem[CLASSE[BC_VID_DGR_MAP]]

SHARED DIM Map[CLASSE[BC_VID_DGR_MAP] COLLEZIONE]

SHARED DIM XMLFile[TIPO[BCFILE]]

...
'@SRP Load()

InitMapDiagram()
LoadData()

Return

...
'@DEFVID DIM[35,140] NOME[Videata] ID["IDVIDEATA"] TIT["Titolo Videata"] RIBBON[IDRIBBON["IDRIBBON"]]

'@DEFRIBBONBAR NOME[RB_MASTER] IDRIBBONBAR["IDRIBBON"] _
CATEGORIA[ID["CAT_AZIONI"] TIT["AZIONI"] _
GRUPPO[ID["Gestione"] TIT["Gestione"] _
BOTTONE[ID["SYS_EXIT_ESC"] TIT["-"] VALIDADATI[#NESSUNA] AZIONE[Exit()] NASCOSTO[1]] _
BOTTONE[ID["SYS_EXIT"] TIT["-"] VALIDADATI[#NESSUNA] AZIONE[Exit()] NASCOSTO[1]] _
BOTTONE[ID["SYS_SAVE"] TIT["-"] VALIDADATI[#NESSUNA] AZIONE[SaveMapXML()]] _
BOTTONE[ID["SYS_NEW"] TIT["-"] VALIDADATI[#NESSUNA] AZIONE[AddElement()]] _
BOTTONE[ID["SYS_DELETE"] TIT["-"] VALIDADATI[#NESSUNA] AZIONE[RemoveElement()]] _
] _
GRUPPO[ID["wine2"] TIT["Visualizza"] _
BOTTONE[ID["ZoomIn"] TIT["Zoom in"] AZIONE[ZoomIn()]] _
BOTTONE[ID["ZoomOut"] TIT["Zoom out"] AZIONE[ZoomOut()] DISABILITATO[ Zoom <= 2]] _
] _
]

'@DEFGRIDPANEL NOME[GridPanel] ID["GridPanel"] _
RIGA[ALTEZZA[0.5] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[34] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[0.5] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[0.5] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[139] LAYOUT[#DINAMICO]] _
COLONNA[LUNGHEZZA[0.5] LAYOUT[#FISSO]]

'@DEFDIAGRAMMAP NOME[DIAGMAP] ID["DIAGMAP"] RET[1,1] POS[1,1] DIM[1,1] _
COLLEZIONEDATI[Map] AZIONECLICK[GetCurrMapItem()] MODIFICABILE[1] _
GRID[COL[2] RIGA[2] COLDIN[1] RIGADIN[1]]

'@ENDGRIDPANEL NOME[GridPanel]

'@RUNVID

...
' Uscita dalla videata
'@SRP Exit() ' Descrizione

'@EXITWINDOW

Return

...
'@SRP InitMapDiagram()

' Definizione immagini map - risorse AGIS
'@DEFRESOURCE NOMERISORSA["PLAN.PNG"]

' Definizione stili
'@DEFSTYLE STILE["load"] COLORESFONDO[BIANCO] _
COLOREBORDO[NERO] DIMBORDO[1] COLORETESTO[NERO]

'@DEFSTYLE STILE["hight"] COLORESFONDO[FUCSIA] _
COLOREBORDO[NERO] DIMBORDO[1] COLORETESTO[NERO]

'@DEFSTYLE STILE["insert"] COLORESFONDO[GRIGIOCHIARO] _
COLOREBORDO[NERO] DIMBORDO[1] COLORETESTO[NERO]

Return

...
'@SRP LoadData()

' Ottenimento cartella file XML di configurazione
DIM XMLPath[TIPO[BCFOLDER]] = BCContextInfo.GetCartellaDati() + "MAPPE"

' Creazione cartella
If XMLPath.Exists() = #False Then XMLPath.CreateFolder(err [CLASSE[BC_VID_ERROR]] [OUT])

' Creazione percorso completo file XML di configurazione - path + nome file
XMLFile = XMLPath + "map.xml"

' Popolamento collezione MapItem da file XML - Se esistente
If XMLFile.Exists() = #True Then Map.LoadFromFile(XMLFile, #XML)

Return

...
'@SRP SaveMapXML()

' Salvataggio su file XML
Map.SaveToFile(XMLFile, #XML)

Return

...
'@SRP AddElement()

' Pulizia oggetto MapItem
MapItem.Clear()

' Valorizzazione MapItem
MapItem.Id = Id
MapItem.Riga1 = Name
MapItem.Riga2 = ""
MapItem.Riga3 = ""
MapItem.Forma = Shape

' Aggiunta MapItem valorizzato alla collezione
Map.AggiungiElemento(MapItem [INOUT])

Return

...
'@SRP RemoveElement()

' Eliminazione MapItem Corrente
Map.EliminaElementoConOggetto(MapItem [INOUT])

Return

...
'@SRP ZoomIn()

Zoom = Zoom + 2
DIAGMAP.Set_Zoom(Zoom)


Return

...
'@SRP ZoomOut()

If Zoom - 2 >= 1 Then
Zoom = Zoom - 2
DIAGMAP.Set_Zoom(Zoom)

EndIf

Return

...
'@SRP GetCurrMapItem()

' Ottenimento MapItem corrente
DIAGMAP.Get_Elemento(MapItem)

Return