Revision 3383

View differences:

tags/Root_remoteServices/applications/appgvSIG/.project
1
<?xml version="1.0" encoding="UTF-8"?>
2
<projectDescription>
3
	<name>gvSIG 03</name>
4
	<comment></comment>
5
	<projects>
6
	</projects>
7
	<buildSpec>
8
		<buildCommand>
9
			<name>org.eclipse.jdt.core.javabuilder</name>
10
			<arguments>
11
			</arguments>
12
		</buildCommand>
13
		<buildCommand>
14
			<name>org.eclipse.ve.java.core.vebuilder</name>
15
			<arguments>
16
			</arguments>
17
		</buildCommand>
18
	</buildSpec>
19
	<natures>
20
		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
21
		<nature>org.eclipse.jdt.core.javanature</nature>
22
		<nature>org.eclipse.jem.beaninfo.BeanInfoNature</nature>
23
	</natures>
24
</projectDescription>
0 25

  
tags/Root_remoteServices/applications/appgvSIG/VCN
1
REALIZADOS:
2

  
3
- Al a?adir un nuevo fframe se debe de quedar ese como seleccionado 
4
y todos los dem?s hay que dejarlos como no seleccionados.
5

  
6
- Implementar el FFrameLegend con todos los nombres de capas 
7
como textLayout y los s?mbolos.
8

  
9
-Meterle un m?todo que cambie cada uno de los nombres y s?mbolos 
10
del fframe en un fframe por separado.
11
(Simplificar)A partir de un FFrameLegend crear FFrameText y FFrameSymbol.
12

  
13
-Introducir dentro FGraphicsUtilities la parte del m?todo paintcomponent 
14
de FPreviewSymbol que sea com?n dibujar sobre el mapa de forma est?tica.
15
Se dibuja por la posici?n del shape y no del rect?ngulo.
16

  
17
-Crear una clase FLayoutUtilities, con los m?todos est?ticos fromSheet y toSheet.
18

  
19
-Crear grupos de fframes unidos, Agrupar y para Desagrupar, 
20
de forma que cuando se agrupan se crea un FframeGroup que contenga dentro 
21
todos los fframes seleccionados previamente, y cuando se desagrupa 
22
se elimina el fframegroup y se vuelve a crear un fframe 
23
de cada uno de los fframe que contenia dentro el fframegroup.
24

  
25
-Alinear como lo hace arcView o como lo hace el visual editor en funci?n 
26
de los fframes seleccionados o en funci?n del Layout.
27

  
28
-Colocar detr?s y delante fframes seleccionados respecto de los dem?s.
29

  
30
-El FConstanstLayout debe de desaparecer y a?adir las 
31
constantes que contiene en las clases que las necesiten.
32

  
33
- Crear las barras de escala y modificar la escala en vez de en metros en cent?metros.
34

  
35
-Cuando se muestra una escala que no es fija, y se modifica la escala de la vista, 
36
la escala que lo representa no varia.
37

  
38
- Se pueda abrir el di?logo de propiedades de cada uno de los fframes a?adidos al Layout, 
39
con la informaci?n que necesita.
40

  
41
- Cuando se alinea un solo elemento no se hace como deber?a. 
42

  
43
-L?nea gr?fica.
44

  
45
-FullExtent.
46

  
47
- El di?logo de FPanelDefault no tiene la posibilidad p?blica de modificar 
48
que no contenga relleno.
49
-Los puntos se deben de poder cambiar su tama?o al cambiar su tama?o arrastrando con 
50
el rat?n en el Layout y no solo desde el di?logo de propiedades de este.
51

  
52
- El Fshape se crea cada vez que se dibuja y por lo tanto no hay que guardarlo.
53

  
54
- FSymbol tiene que guardarse en XML utilizando la XMLEntity.La forma separar el modelo del Layout.
55

  
56
-Al cambiar de tama?o un fframe por encima de su posicion x e y, se distorsiona.
57

  
58
-Al modificar la escala de una vista en el Layout la escala gr?fica debe de cambiar su tama?o 
59
de acuerdo al cambio en la escala de la vista.
60

  
61
-Haciendo un doble click se acceda al dialogo de propiedades de cada uno de los fframes.
62

  
63
-FFrameText: Falta poder posicionar las l?neas a la izquierda, centro o derecha.
64

  
65
-Hacer el entramado que sea transparente totalmente en vez de blanco y que se pueda controlar su transparencia en las l?neas que lo componen.
66

  
67
- La propiedad de poder a?adir una vista, una imagen o una leyenda en forma de borrador o presentaci?n.
68

  
69
- Popupmenu en el Layout que se abre pulsando el bot?n derecho del rat?n.
70

  
71
- En FFrameViewDialog si no se selecciona ninguna vista y se acepta salta una excepci?n.
72

  
73
- Al cambiar el zoom y posicionar alg?n elemento detr?s o delante respecto de los dem?s 
74
cambia el zoom y se coloca siempre en mismo lugar.
75

  
76
- Teniendo seleccionada la herramienta de selecci?n y desplazar un fframe cambia su tama?o, ahora lo sigue cambiando pero solo cuando
77
 se desplaza de su posici?n, el desplazamiento y cambio de tama?o de un rect?ngulo 
78
con el grid seleccionado no funciona del todo bien, cambia 
79
el tama?o de forma anormal, pero no siempre.
80

  
81
- Separar el drawLayout para imprimir del drawLayout para visualizar en pantalla.
82

  
83
-En FBorderDialog, falta a?adir propiedades al rect?ngulo que se a?ade, 
84
por ejemplo elegir el color, grosor, textura,de momento es un rect?ngulo simple.
85

  
86

  
87
- FFramePicture se debe cambiar, ya que crea un bufferedimage tan grande como el zoom que se hace y salta la excepci?n de out of memory.
88

  
89
PENDIENTES:
90

  
91
- Rematar el a?adir una vista al Layout, 
92
y su actualizaci?n.
93

  
94
- El Di?logo FLegendManagerWindow, 
95
para que pueda funcionar igual que en arcView 
96
debe ser ?nico implementando SingletonView y que se pueda cambiar su modelo 
97
por el de otra vista que lo requiera. 
98
Ahora mismo lo he dejado como modal y que implementa View.
99

  
100
-Al a?adir una misma vista dos veces al Layout sigue cambiando su extent, cada repaint.
101
Tambi?n al tocar la vista y refrescar en el Layout, que debe ser por lo mismo ya que la 
102
escala que calcula es diferente cada vez y eso cambia el extent.
103
Supongo que es la forma de calcular el extent respecto de la anchura y altura del 
104
fframe que lo contiene y al ser dos se reajusta sin parar. Para corregir esto hay que:
105
El extent del Fmap debe de quedarse fuera de este, 
106
de esta forma no se necesitara clonar fmap cuando el extent 
107
de la vista a a?adir al Layout no tiene que ser la misma.
108

  
109
-A?adir el insertar un rect?ngulo a cada uno de los fframes seleccionados
110
dentro de fframeGraphics contener FShapes con el rect?ngulo dentro en este caso y 
111
pensando en poder a?adir tambi?n de otras formas los rect?ngulos y l?neas que queramos.
112
fshape + symbol==graphics.
113

  
114
- No corren prisa: deshacer, escala real, 
115
zoom a lo seleccionado.
116

  
117
-Revisar los di?logos de los fframes para ver posibles fallos.
118

  
119
- Hay que tener en cuenta que di?logos abrir cuando hay varios fframes seleccionados 
120
cuando se quiere abrir el di?logo de propiedades. En FLayoutGraphics,openFFrameDialog(), 
121
hay que abrir el di?logo de propiedades cuando hayan m?s de uno seleccionado, 
122
incluido cuando son de tipos diferentes.
123

  
124
- Cuando se deslinka el extent de una vista a?adidar al Layout del extent original, se clona el FMap. 
125

  
126
-FFrameView: Falta recortar a la vista y lo de los eventos de cuando se tiene que actualizar el Layout respecto de los cambios de la vista.
127
	Enlace vivo: Se debe guardar el extent actual de la vista y quedarse con ese extent.
128
	
129
-FFramePicture: Falta lo de los eventos.
130
-FFrameScaleBar: Visualizar solo las vistas que esten a?adidas al Layout y no todas.
131
-FFrameLegend: Eventos .Y visualizar en la lista de selecci?n, si se quiere, las vistas a?adidas solamente y no todas.
132

  
133

  
134
-Preparar p?gina: FConfigLayoutDialog muestra una apariencia que no es la del Look and feel elegida. 
135
Puede que sea porque es un MODALDIALOG.
136

  
137
- Cuando se posiciona delante o detr?s una barra de escala, se cambia el tipo de fuente. 
138
Pero el tama?o es el mismo, el color del graphics tambi?n y el tipo de fuente.
139
- El area imprimible hay que conseguir que sea la misma para 
140
los attributes, PageFormat y para guardarla en un atributo 
141
de la clase Attributes. Imprimir de acuerdo a los m?rgenes establecidos, no funciona bien todav?a. Es un tema delicado.
142

  
143
- m_name de FFrame solo lo utilizan tres fframes de momento.
144

  
145
- Mirar el por que una vista tarda tanto en dibujar un trocillo peque?o en el Layout.
146

  
147
- La leyenda que se introduzca con tama?o adecuado, mirar arcView.
148

  
149
DUDAS:
150

  
151
- El simplificar un fframe, como por ejemplo la leyenda esta ya hecho pero el arcView 
152
tambi?n simplifica una vista por cada uno de sus shapes.(Esto no).
153
--------------------------------------------------------------------------------------
154
______________________________
155
VERSION 0.3:
156
______________________________
157

  
158
- Los botones del Layout que se apliquen sobre la vista a?adida se deben de poner a enables 
159
cuando se tenga seleccionada una vista. V
160

  
161
- Cuando se abre las propiedades de una vista a?adida en el Layout en el di?logo no se queda 
162
esta seleccionada en la lista, pero si se rellena el di?ologo con los datos necesarios. V
163

  
164
- Al imprimir un layout que est? en vertical tras haber guardado el proyecto y recuperado se 
165
visualiza en vertical pero la impresi?n es en horizontal. V
166

  
167
- A?adir al di?logo de FFrameText la posibilidad de poner color a los textos a?adidos. V
168

  
169

  
170

  
171
________________________________
172
CAD
173
________________________________
174

  
175

  
0 176

  
tags/Root_remoteServices/applications/appgvSIG/build.number
1
#Build Number for ANT. Do not edit!
2
#Mon Sep 05 13:36:50 CEST 2005
3
build.number=737
0 4

  
tags/Root_remoteServices/applications/appgvSIG/distFiles/llig-me.txt
1
llig-me.txt
2

  
3
**************************
4

  
5
gvSIG v 0.4
6

  
7
Requisits de la instal?laci?:
8

  
9
    - M?quina Virtual Java 1.4.2 o superior instal?lada (http://java.sun.com).
10

  
11
Requisits de l'aplicaci?:
12

  
13
    - Sistema
14

  
15
        ? M?nims: Pentium III / 256 MB RAM.
16

  
17
        ? Recomanables: Pentium IV / 512 MB RAM.
18

  
19
        ? Sistemes operatius: plataformes Windows i Linux.
20
        Provat en Win98/XP, Linux Suse 8.2/9.0/9.2 i Linux Debian(Lliurex).
21

  
22

  
23
    - Programari instal?lat (disponible en http://www.gvsig.gva.es o en http://java.sun.com)
24

  
25
        ? M?quina Virtual Java 1.4.2 (06 o superior).
26

  
27
        ? JAI (Java Advanced Imaging).
28

  
29
        ? JAI Image I/O.
30

  
31

  
32
Nota: les libreries JAI i JAI Image I/O han d'estar instal?lades sobre la M?quina Virtual Java que gvSIG utilitze en l'execuci?. Si s'instal?la una nova JVM en el sistema i s'usa per a executar gvSIG ser? indispensable instal?lar les llibreries sobre esta.
33

  
34

  
35
M?s informaci? ? suport:
36

  
37
    Web oficial del projecte:
38

  
39
        http://www.gvsig.gva.es
40

  
41
    Llistes de distribuci?:
42

  
43
        http://runas.cap.gva.es/mailman/listinfo/gvsig_usuarios (suport per a usuaris).
44

  
45
        http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores (suport per a desenvolupadors).
46

  
47
        http://runas.cap.gva.es/mailman/listinfo/gvsig_english (suport per a usuaris o desenvolupadors de parla no-hispana).
48

  
0 49

  
tags/Root_remoteServices/applications/appgvSIG/distFiles/LEEME.txt
1
gvSIG v 0.2.0 beta.
2

  
3
Prerequisitos:
4
  - Java instalado (JRE 1.4.2 o superior) (http://java.sun.com)
5
  - JAI + JAI image I/O (http://java.sun.com)
6
  - librer?as din?micas para los ECW: vienen con cualquier
7
    producto de ERMAPPER y son gratuitas (Actualmente solo hay disponibles para
8
    MS windows)(http://www.ermapper.com)
9
  
10
Instalaci?n:
11

  
12
	Descomprimir el archivo zip completo en el directorio deseado
13
	
14
Ejecuci?n
15
	En windows: gvSIG.bat
16
	En linux:  gvSIG.sh
17

  
18
M?s informaci?n:
19
	gvsig@gva.es
0 20

  
tags/Root_remoteServices/applications/appgvSIG/text_de.properties
1
#text_de.properties
2
__espacio_vertical=Vertikaler Abstand\:
3
__lineas=Linien
4
__proyeccion_actual=Aktuelle Projektion\:
5
__redimensionar_texto_escala=Textgr\u00F6\u00DFe an den Ansichtsma\u00DFstab anpassen
6
__seleccion_de_fuente=Auswahl der Schriftart
7
_(Etiquetas_estandar)=(Standard-Etiketten)
8
_(Intervalos)=(Intervalle)
9
_(Simbolo_unico)=(Einmaliges Symbol)
10
_(Valores_unicos)=(Einmalige Werte)
11
(escala_m\u00E1xima)=(Gr\u00F6\u00DFter Ma\u00DFstab)               
12
(escala_m\u00EDnima)=(Kleinster Ma\u00DFstab)
13
A0=A0
14
A1=A1
15
A2=A2
16
A3=A3
17
A4=A4
18
A5=A5
19
A6=A6
20
abajo=Nach unten
21
abrir=\u00D6ffnen
22
Abrir_Imagen=Bild \u00F6ffnen 
23
abrir_proyecto=Projekt \u00F6ffnen
24
abrir_tooltip=Vorhandenes Projekt \u00F6ffnen
25
Abrir_una_capa=Layer \u00F6ffnen
26
Accion_Predefinida=Vordefinierte Aktion
27
Aceptar=OK
28
acerca_de=\u00DCber...
29
activar_regla=Lineal aktivieren
30
activos=Aktiv
31
adjust_transparency=Transparenz anpassen
32
agrupar=Gruppieren
33
agrupar_capas=Layer gruppieren
34
agrupar_graficos=Grafiken gruppieren
35
agrupar_linea=Grafiklinie mit Grafiken gruppieren
36
Ajustar_cobertura_wcs=WCS-Cover anpassen
37
Ajustar_transparencia=Transparenz anpassen
38
ajustes_linea_grafica=Anpassung Grafiklinie
39
Al_leer_la_leyenda=Beim Lesen der Legende
40
alerta=Achtung
41
alias=Alias
42
alineamiento=Ausrichtung\:
43
alinear=Ausrichtung
44
alinear_graficos=Grafiken ausrichten
45
alta=Hoch
46
alto=Hoch
47
altura=H\u00F6he\:
48
Altura_fija_de_texto=Fixierte Texth\u00F6he
49
ambito=Bereich 
50
Anadir=Hinzuf\u00FCgen
51
Anadir_al_conjunto=Zum Datensatz hinzuf\u00FCgen
52
Anadir_capa=Layer hinzuf\u00FCgen
53
Anadir_Capa=Layer hinzuf\u00FCgen
54
Anadir_todos=Alle hinzuf\u00FCgen
55
ancho=Breite
56
ancho_alto=Breite x H\u00F6he
57
Ancho_Contorno=Konturbreite
58
Ancho_de_l\u00EDnea=Linienbreite
59
anchura=Breite\:
60
angulo_rotacion=Drehwinkel\:
61
anterior=Zur\u00FCck
62
Anterior=Zur\u00FCck
63
Aplicar=Anwenden
64
Archivo=Datei
65
Archivos_de_Disco=Disketten-Dateien
66
area_trabajo=Arbeitsbereich
67
arriba=Nach oben
68
ascending_order=Aufsteigende Ordnung
69
ascending_order_tooltip=Sortierung nach dem ausgew\u00E4hlten Feld in aufsteigender Ordnung.
70
automatico=Automatisch
71
Ayuda=Hilfe
72
back=Zur\u00FCck
73
Back=Zur\u00FCck
74
background_color=Hintergrundfarbe
75
baja=Niedrig
76
Bajar_capa=Layer nach unten
77
bandas=Farbstreifen
78
bands=Farbstreifen
79
barra=Balken\:
80
bd=db
81
bmp=BMP-Dateien
82
Bold=Fett
83
borra_seleccion=Auswahl l\u00F6schen
84
borrador=Entwurf
85
borrar=L\u00F6schen
86
Calcular_intervalos=Intervalle berechnen
87
calidad=Qualit\u00E4t
88
Cambio_Color=Farbe \u00E4ndern
89
Cambio_de_estilo=Stil \u00E4ndern
90
Cambio_Estilo=Stil \u00E4ndern
91
cambio_nombre=Namen \u00E4ndern
92
Cambios_de_estilo=Stil \u00E4ndern
93
campo=Feld
94
Campo=Feld
95
campo_altura_texto=H\u00F6he Textfeld\:
96
Campo_clasifica=Klassifikationsfeld
97
Campo_de_clasificacion=Klassifikationsfeld
98
campo_de_documentos_asociados=Feld der verbundenen Dokumente
99
Campo_de_etiquetado=Etikettierfeld
100
Campos=Felder
101
cancel=Abbrechen
102
Cancel=Abbrechen
103
Cancelar=Abbrechen
104
Capa=Layer
105
Capas=Layer
106
Capas_del_localizador=Navigatorlayer
107
capaWMS=WMS-Layer
108
cargar_leyenda=Legende laden
109
causa_error_desconocida=Unerwarteter Server-Fehler
110
Centimetros=Zentimeter
111
cerrar=Schlie\u00DFen
112
Cerrar=Schlie\u00DFen
113
circulo=Kreis
114
Circulo=Kreis
115
Coberturas=Covers
116
coincidir_tama\u00F1o=Gr\u00F6\u00DFe angleichen\:
117
colocar_a_margenes=Zu den R\u00E4ndern anordnen
118
colocar_alrededor_seleccionados=Um ausgew\u00E4hlte Graphiken anordnen.
119
colocar_alrededor_todos=Um alle Grafiken anordnen.
120
colocar_delante=Nach vorn
121
colocar_detras=Nach hinten
122
color=Farbe\:
123
Color_Contorno=Konturfarbe\:
124
Color_de_la_L\u00EDnea=Strichfarbe\:
125
Color_de_Relleno=F\u00FCllfarbe\:
126
Color_final=Endfarbe\:
127
Color_inicial=Anfangsfarbe\:
128
Color_inicio=Anfangsfarbe\:
129
color_texto=Textfarbe\:
130
comentarios=Kommentare
131
configuracion_andami_tooltip=Konfiguration Andami
132
configurar=Konfigurieren
133
configurar_localizador=Navigator konfigurieren
134
Configurar_localizador=Navigator konfigurieren ...
135
confirmar_borrar=Sind Sie sicher, dass Sie dieses Element l\u00F6schen wollen?
136
conservar_escala_visualizacion=Darstellungsma\u00DFstab beibehalten
137
coor_geograficas=Geografische Koordinaten
138
creation_date=Erstellungsdatum
139
Cruz=Kreuz
140
Cuadrado=Quadrat
141
cuando_activo=Wenn aktiv
142
Dado_un_campo_de_atributos=Bei vorgegebenen Attributfeld\:
143
debe_estar_activada=Sollte aktiviert sein.
144
Derecha=Rechts
145
Derecho=Rechts
146
desagrupar=Gruppe aufl\u00F6sen
147
desagrupar_graficos=Grafikgruppe aufl\u00F6sen
148
descending_order=Absteigende Ordnung
149
descending_order_tooltip=Sortierung nach dem ausgew\u00E4hlten Feld in absteigender Ordnung.
150
descripcion=Beschreibung
151
Descripcion=Beschreibung
152
desde_arriba=Von oben\:
153
desde_izquierda=Von links\:
154
Desplazamiento=Verschieben
155
desviacion_tipica=Typische Abweichung
156
detalles=Details
157
Detalles=Details
158
DGNFiles=DGN-Datei
159
distance_units=Ma\u00DFeinheiten
160
distribuir=Verteilen\:
161
divisiones_izquierda=Teilungen auf der linken Seite
162
documentos_existentes=Vorhandene Dokumente
163
driver=Treiber
164
Dxffiles=DXF-Dateien
165
Editar_leyenda=Legende editieren
166
editar_propiedades=Eigenschaften editieren
167
el_numero_maximo_de_intervalos_para_este_campo_es=Die maximal Intervallenummer f\u00FCr dieses Feld ist
168
Elegir_Color=Farbe ausw\u00E4hlen
169
Elegir_Fuente=Schriftart ausw\u00E4hlen
170
Eliminar=L\u00F6schen
171
eliminar_capa=Layer l\u00F6schen
172
eliminar_extremos=Extreme l\u00F6schen
173
en_el_mapa=Auf der Karte\:
174
En_metros=In Metern
175
En_pixels=In Pixeln
176
Encuadre=Bildausschnitt
177
Encuadre_Vista=Ansicht im Bildausschnitt verschieben
178
enlace_vivo=Aktiver Link zum Original
179
Enlazar_a_fichero_de_texto=Link zu Textdateien
180
Enlazar_a_ficheros_de_imagen=Link zu Bilddateien
181
equal_intervals=Gleiche intervalle
182
Error_abriendo_el_fichero=Fehler bei \u00D6ffnen der Datei
183
Error_accediendo_a_los_datos=Fehler beim Zugriff auf die Daten
184
error_comunicacion_servidor=Verbindungsfehler mit dem Server
185
error_escritura=Das Projekt konnte nicht gespeichert werden
186
Error_guardando_la_leyenda=Fehler beim Speichern der Legende
187
error_lectura=Das Projekt konnte nicht ge\u00F6ffnet werden\n
188
escala=Ma\u00DFstab
189
Escala=Ma\u00DFstab
190
escala_maxima=Maximalma\u00DFstab
191
Escala_Maxima=Gr\u00F6\u00DFter Ma\u00DFstab
192
escala_minima=Minimalma\u00DFstab
193
Escala_Minima=Kleinster Ma\u00DFstab
194
escala_usuario=Benutzerdefinierter Ma\u00DFstab
195
espaciado_horizontal=Horizontaler Rasterabstand
196
espaciado_vertical=Vertikaler Rasterabstand
197
espacio=Leerzeichen\:
198
espere=Warten Sie bitte.
199
estadisticas=Statistiken
200
este_por_debajo_de_=Kleiner ist als
201
este_por_encima_de=Gr\u00F6\u00DFer ist als
202
Estilo=Stil\:
203
Etiqueta=Etikett
204
Etiquetado=Etikettierung
205
Etiquetados=Etikettierung
206
etiquetas=Etiketten\:
207
Etiquetas_estandar=Standard-Etiketten
208
Examinar=Browse   
209
exportar=Exportieren
210
exportar_a=Exportieren nach...
211
exportar_pdf=Als pdf exportieren.
212
extension=Verl\u00E4ngerung
213
Extent=Bildbereich
214
extents_no_coincidentes=Die ausgew\u00E4hlte Bildgr\u00F6\u00DFe stimmt nicht mit dem Originalbild \u00FCberein.
215
Fichero=Datei
216
fichero_existe=Ausgew\u00E4hlte Datei existiert schon als Layergruppe.
217
fichero_incorrecto=Unrichtige Datei
218
filtro=Filter
219
finalizar=Beenden
220
finish=Beenden
221
Font=Schriftart
222
formato=Format
223
Formato=Format
224
formato_incorrecto=Unrichtig Format
225
fuente=Schriftart
226
Fuente=Schriftart
227
General=Allgemein
228
Generar_Intervalos=Intervalle erzeugen
229
gestion_encuadre=Verwaltung der Bildausschnitte
230
grados=Grad\:
231
Gr\u00E1ficos=Grafiken
232
Grosor_de_linea=Strichst\u00E4rke
233
grosor_linea=Strichst\u00E4rke
234
guardado=Gespeichert in
235
Guardar=Speichern
236
guardar_cambios=\u00C4nderungen speichern?
237
guardar_como=Speichern unter ...
238
Guardar_el_zoom_actual=Aktuellen Zoom speichern
239
guardar_leyenda=Legende speichern
240
Guardar_leyenda=Legende speichern
241
guardar_proyecto=Projekt speichern
242
guardar_tooltip=Speichert die \u00C4nderungen des Projekts
243
Habilitar_etiquetado=Etikettierung aktivieren
244
hasta=bis
245
Herramientas=Werkzeuge
246
Herramientas_vista=Ansichtswerkzeuge
247
Hiperenlace=Hyperlink
248
horizontal=Horizontal
249
host=host
250
Identificar_Resultados=Ergebnisse identifizieren
251
Igual_que_la_impresora=Wie Drucker
252
igual_todos_lados=Gleiche Verschiebung in alle Richtungen
253
imagen=Bild
254
Imagen=Bild
255
importar=Importieren
256
importar_extent=Aktuellen Ansichtsbereich importieren.
257
Imprimir=Drucken
258
Inferior=Unten
259
info=Information
260
infobreak=Zeigt die Elemente des Layers mit der gleichen Farbpalette.
261
infodef=Zeigt alle Elemente des Layers mit dem gleichen Symbol.
262
informacion=Information
263
Informaci\u00F3n=Information
264
infovalue=Zeigt Elemente des Layers mit je einem Symbol pro Wert.
265
Inicializando=Initialisiert
266
Insertar=Einf\u00FCgen
267
insertar_circulo=Kreis einf\u00FCgen
268
insertar_escala=Ma\u00DFstab einf\u00FCgen
269
insertar_imagen=Bild einf\u00FCgen
270
insertar_leyenda=Legende einf\u00FCgen
271
insertar_linea=Linie einf\u00FCgen
272
insertar_poligono=Polygon einf\u00FCgen
273
insertar_punto=Punkt einf\u00FCgen
274
insertar_recta=Gerade einf\u00FCgen
275
insertar_rectangulo=Rechteck einf\u00FCgen
276
insertar_texto=Text einf\u00FCgen
277
insertar_vista=Ansicht einf\u00FCgen
278
Intervalo=Intervall
279
Intervalos=Intervalle
280
Intervalos_equidistantes=Gleichwertige IIntervalle
281
Intervalos_por_rupturas_naturales=Intervalle durch nat\u00FCrliche Brechungen
282
introduce_nombre=Geben Sie den neuen Namen ein.
283
Italic=Kursiv
284
Izquierda=Links
285
Izquierdo=Links
286
join=Verbindung
287
jpg=JPEG-Datei
288
kilometros=Kilometer
289
Kilometros=Kilometer
290
leyenda=Legende
291
Leyenda=Legende
292
leyenda_campo_unido=Man verwendt ein Field der Verbindung in der Legende (und/oder Etikettierung). Tauschen Sie die Legende vorher aus, die Verbindung aufzul\u00F6sen.
293
Leyenda_Por_Defecto=Legende nach Vorgabe
294
linea=Linie
295
Linea=Linie
296
linea_grafica=Grafiklinie
297
lineal_directo=Direktlineal
298
linf_der=x unten rechts
299
link=Link
300
Link=Link
301
Localizador_por_atributo=F\u00FCr Attribut lokalisieren
302
lppp=dpi
303
lsup_izq=x oben links
304
malla_activada=Raster aktiviert
305
mantener_intervalo=Intervall beibehalten
306
map_units=Karteneinheiten
307
Mapa=Karte
308
mapas=Karten
309
marco=Rahmen
310
marco_vista=Ansichtsrahmen
311
margenes=R\u00E4nder\:
312
M\u00E1s_100=Die Anzahl der Werte ist h\u00F6her als 100 und es ist keine Information verf\u00FCgbar.
313
mas_de_100_simbolos=Mehr als 100 Symbols liefern keine Information zu der Karte
314
maximo=Maximal
315
media=Mittel
316
medir_area=Fl\u00E4che messen
317
medir_distancias=Abst\u00E4nde messen
318
metros=Meter
319
Metros=Meter
320
Milimetros=Milimeter
321
Millas=Meilen
322
minimo=Minimal
323
modification_date=Letzte \u00C4nderung
324
mosaico_tooltip=Mosaik
325
Mostrar_Contorno=Kontur zeigen
326
mostrar_descripcion=Beschreibung anzeigen.
327
Mostrar_siempre=Immer zeigen
328
mostrar_unidades=Einheiten anzeigen
329
Muestra_atributos=Zeigt die Attribute der ausgew\u00E4hlten Layer.
330
muestra_consola_tooltip=Zeigt die Konsole an.
331
Muestra_los_atributos_de_las_capas_seleccionadas=Zeigt die Attribute der ausgew\u00E4hlten Layer.
332
muestra_los_elementos_de_la_capa_usando_un_simbolo_por_cada_valor_unico=Zeigt Elemente des Layers mit je einem Symbol pro Wert.
333
Muestra_los_elementos_de_la_capa_usando_una_gama_de_colores_en_funcion_del_valor_de_un_determinado_campo_de_atributos=Zeigt die Elemente des Layers mit der gleichen Farbpalette, abh\u00E4ngig vom Wert eines bestimmten Attributfelds.
334
Muestra_todos_los_elementos_de_una_capa_usando_el_mismo_simbolo=Zeigt alle Elemente des Layers mit dem gleichen Symbol.
335
natural_intervals=Nat\u00FCrliche Intervalle
336
necesita_un_tema_activo=Es wird ein aktiviertes Thema ben\u00F6tigt.
337
necesita_un_tema_vectorial_activo=Es wird ein aktiviertes Vektorthema ben\u00F6tigt.
338
next=Weiter
339
Next=Weiter
340
ninguna_impresora_configurada=Kein Drucker konfiguriert
341
Nivel_de_transparencia=Transparenzgrad\n
342
no_activos=inaktiv
343
No_de_intervalos=Anzahl Intervalle
344
No_mostrar=Den Layer nicht zeigen, wenn der Ma\u00DFstab ...
345
No_mostrar_la_capa_cuando_la_escala=Den Layer nicht zeigen, wenn der Ma\u00DFstab ...
346
No_reconocido=Nicht erkannt
347
No_Shape=Dieser Layer ist kein Shape.
348
no_visibles=Unsichtbar
349
nombre=Name
350
Nombre=Name
351
nombre_capa=Name des Layers
352
nombre_cobertura=Name der Bedeckung
353
Nombre_que_se_le_dara_al_zoom=Name des Zooms
354
nombre_sesion=Name der Session
355
Nombres=Namen
356
normal=Normal
357
Nueva_tabla=Neue Tabelle
358
nuevo=Neu
359
Nuevo_conjunto=Neuer Datensatz
360
nuevo_proyecto=Neues Projekt
361
nuevo_tamano_fuente=Neue Schriftgr\u00F6\u00DFe\:
362
nuevo_tooltip=Erstellt ein neues Projekt
363
num_bandas=Anzahl Farbstreifen
364
N\u00FAm_intervalos=Anzahl Intervalle
365
numero_incorrecto=Unrichtig Nummer
366
ok=OK
367
opacidad=Lichtundurchl\u00E4ssigkeit
368
orientacion=Ausrichtung
369
Origen_de_datos=Herkunft der Daten
370
Origen_de_Datos=Herkunft der Daten\: 
371
Otros=Andere
372
owner=Besitzer
373
Parametros=Parameter
374
path=Pfad
375
Perimetro=Umfang
376
Permite_etiquetar_los_elementos_del_mapa_con_el_valor_de_un_determinado_campo=Erm\u00F6glicht das Etiketieren von Elementen der Karte, mit dem Wert eines bestimmten Felds.
377
Personalizado=Benutzerdefiniert
378
Pies=Feet
379
pixeles=Pixel
380
Plain=Einfach
381
png=PNG-Datei
382
poligono=Polygon
383
poner_temas_a=Themeneinstellungen ...
384
por_debajo_de=unter\:
385
por_encima_de=\u00FCber\:
386
Por_favor_active_el_tema=Aktivieren Sie bitte das Thema.
387
posicion_linea=Position der Linie
388
preparar_pagina=Seite einrichten
389
Preparar_pagina=Seite einrichten
390
presentacion=Pr\u00E4sentation
391
Previsualizacion=Voransicht
392
Previsualizacion_de_simbolo=Symbolvoransicht
393
propiedades=Eigenschaften
394
Propiedades_de_la_Capa=Eigenschaften des Layers
395
propiedades_del_tema=Eigenschaften des Themas
396
Propiedades_del_Tema=Eigenschaften des Themas
397
Propiedades_escala_grafica=Eigenschaften des Ma\u00DFstabsbalkens
398
propiedades_grafico=Eigenschaften der Grafik
399
propiedades_mapa=Eigenschaften der Karte
400
propiedades_marco_imagenes=Eigenschaften des Bildrahmens
401
propiedades_marco_leyenda=Eigenschaften des Legenderahmens
402
propiedades_marco_vista=Eigenschaften des Ansichtsrahmens
403
propiedades_raster=Eigenschaften der Rasterung
404
propiedades_sesion=Eigenschaften der Session
405
propiedades_tabla=Eigenschaften der Tabelle
406
propiedades_tema=Eigenschaften des Themas
407
Propiedades_texto=Eigenschaften des Textes
408
propiedades_vista=Eigenschaften der Ansicht
409
puerto=port
410
Pulgadas=Inches
411
punto=Punkt
412
quantile_intervals=Quantile Intervalle
413
quiere_continuar=W\u00F6llen Sie wietermachen?
414
Quitar=Entfernen
415
Quitar_capa=Layer entfernen
416
quitar_enlaces=Links aufl\u00F6sen
417
Quitar_todos=Alle entfernen
418
Quitar_Todos=Alle entfernen
419
quitar_uniones=Verbindungen aufl\u00F6sen
420
rango_de_escalas=Ma\u00DFstabsbereich
421
Rango_de_escalas=Ma\u00DFstabsbereich
422
Rasterfiles=Rasterungsdateien
423
realce=Heraushebung
424
recorte=zuschnitt
425
recorte_colas=Zuschnitt der Randbereiche
426
recorte_vista=Ausschneiden nach Augenma\u00DF
427
recta=Gerade
428
rectangulo=Rechteck
429
recuento=Nachz\u00E4hlung
430
Recuperar_leyenda=Legende laden
431
Recuperar_y_eliminar_otros_zoom=Andere Zooms laden oder l\u00F6schen
432
refrescar=Aktualisieren
433
registros=Register
434
registros_seleccionados_total=Alle ausgew\u00E4hlten Register
435
rellenar_marco_vista=Ansichtsrahmen f\u00FCllen
436
relleno=F\u00FCllung\:
437
renombrar=Umbenennen
438
reproyectar_aviso=Die Layerprojektion deckt sich nicht mit der Ansichtsprojektion. \nACHTUNG\: Bei einigen Transformationen k\u00F6nnte sie ungenau sein.\nLesen Sie bitte die Dokumentation.
439
reproyectar_pregunta=W\u00FCnschen Sie eine neue Projektion?
440
resolucion=Aufl\u00F6sung
441
resolucion_resultado=Ausgabeauf\u00F6sung\:
442
respuesta_error_servidor=Konnte das Cover nicht bekommen.
443
resto_valores=Andere Werte
444
salir=Schlie\u00DFen
445
Salir=Schlie\u00DFen
446
salir_tooltip=Schlie\u00DFen
447
salvar_raster=Als Rasterung sichern
448
Sample=Beispiel
449
Se_va_a_tener_en_cuenta_para_borrar_los_registros_desde=L\u00F6schen aller Register ab ...
450
seleccion_campos=W\u00E4hlen Sie die Felder aus.
451
seleccion_fuente=Schriftart w\u00E4hlen 
452
Seleccion_por_tema=Auswahl \u00FCber Thema
453
Seleccionar=ausw\u00E4hlen
454
seleccionar_capas=Layer ausw\u00E4hlen
455
seleccionar_coberturas=Covers ausw\u00E4hlen
456
seleccionar_CRS=CRS ausw\u00E4hlen
457
Seleccionar_del_conjunto=Aus dem Datensatz ausw\u00E4hlen
458
Seleccionar_fichero=Datei ausw\u00E4hlen
459
seleccionar_formato=Format ausw\u00E4hlen
460
seleccionar_parametros=Parameter ausw\u00E4hlen
461
seleccionar_por_punto=\u00DCber Punkt ausw\u00E4hlen
462
seleccionar_por_rectangulo=Auswahlrahmen
463
seleccionar_tiempo=Zeitposition ausw\u00E4hlen
464
seleccionar_todos=Alle ausw\u00E4hlen
465
seleccione_campo_enlace=W\u00E4hlen Sie das Feld aus, \u00FCber das Sie verlinken wollen.
466
seleccione_fecha=W\u00E4hlen sie ein Datum aus ...
467
seleccione_tabla=W\u00E4hlen sie die Tabelle aus.
468
seleccione_tabla_a_enlazar=W\u00E4hlen Sie die Tabelle aus, die Sie verlinken wollen.
469
seleccione_tabla_origen=W\u00E4hlen Sie die Originaltabelle f\u00FCr die Verbindung aus.
470
select_all=Alle ausw\u00E4hlen
471
select_geom_field=W\u00E4hlen Sie das Feld mit der Geometrie aus.
472
select_none=Alle aus der Auswahl entfernen
473
select_unique_field=W\u00E4hlen Sie das einmalige Feld aus.
474
selection_color=Farbe der Auswahl
475
servidor=Server
476
Servidor=Server
477
servidor_wcs_no_responde=Der ausgew\u00E4hlte Server reagiert nicht.
478
shape_seleccion=Auswahl exportieren
479
Shapefile=Shapefile
480
Shapefiles=SHP-Dateien 
481
siempre=Immer
482
siguiente=Weiter
483
Siguiente=N\u00E4chster
484
Simbolo=Symbol
485
S\u00EDmbolo=Symbol
486
Simbolo_unico=Einmaliges Symbol
487
S\u00EDmbolo_\u00DAnico=Einmaliges Symbol
488
Simbologia=Symbole
489
Simbolog\u00EDa=Symbole
490
simplificar=Vereinfachen
491
sin_realce=Ohne Heraushebung
492
sin_titulo=Ohne Titel
493
sincronizar_color_borde_relleno=Die Randfarbe mit der F\u00FCllung synchronisieren.
494
Size=Gr\u00F6\u00DFe
495
sobre_la_barra=Auf dem Balken
496
Solo_para_capas_vectoriales=Nur f\u00FCr Vektorlayer
497
statistics=Statistiken
498
Style=Stil
499
Subir_capa=Layer nach oben
500
suma=Summe
501
Superior=Oben
502
Tabla=Tabelle
503
Tabla_de_Atributos=Attributtabelle
504
Tabla_de_prueba=Testtabelle
505
tablas=Tabellen
506
tamano=Gr\u00F6\u00DFe\:
507
tamano_metros=Gr\u00F6\u00DFe in Metern
508
tamano_pagina=Seitenformat\:
509
tamanyo_borde=Randgr\u00F6\u00DFe
510
tamanyo_fuente=Schriftgr\u00F6\u00DFe
511
tama\u00F1o_pagina=Seitenformat\:
512
tama\u00F1o_posicion=Gr\u00F6\u00DFe und Position
513
tarea_en_progreso=Auftrag wird bearbeitet.
514
Tema=Layer
515
texto=Text
516
Tiempo=Zeit
517
tipo_dato=Datentyp
518
tipo_de_intervalo=Intervallesart
519
Tipo_de_intervalos=Intervalltyp
520
tipo_de_leyenda=Legendentyp
521
Tipo_de_leyenda=Legendentyp
522
Tipo_de_linea=Strichtyp
523
tipo_fichero_proyecto=Projektdatei gvSIG (*.GVP)
524
tipo_leyenda=Legendentyp-Datei (*.GVL)
525
tipo_linea=Strichtyp\:
526
Tipo_no_reconocido=Typ nicht erkannt
527
tipo_relleno=F\u00FCllstil\:
528
tipo_simbolo=Symboltyp\:\:
529
tipos_de_documentos=Dokumenttyp\:
530
titulo=Projektverwalter
531
titulo_confirmar=Best\u00E4tigung
532
titulo_fframetext=Titel des Textfelds
533
toda_la_tabla=Die gesamte Tabelle
534
transparencia=Transparenz
535
Transparencia=Transparenz
536
Triangulo=Dreieck
537
Un_Layer=W\u00E4hlen Sie mindestens einen Layer aus.
538
unidades=Einheiten\:
539
Unidades=Einheiten\:
540
untitled=Ohne Titel
541
usar_marco=Rahmen verwenden
542
usar_rango=Eine Rangordnung benutzen
543
usar_titulo=Titel verwenden
544
usuario=Benutzer
545
utilizar_margenes_impresora=Randbegrenzung des Druckers verwenden
546
vacia=Leer
547
Valor=Wert
548
Valor_azul=Wert Blau
549
Valor_Bandas=Wert Farbstreifen
550
valor_pixel=Pixelwert
551
Valor_rojo=Wert Rot
552
Valor_verde=Wert Gr\u00FCn
553
Valores=Werte
554
Valores_unicos=Einmalige Werte
555
Valores_\u00DAnicos=Einmalige Werte
556
varianza=Varianz
557
ventana_proyecto=Projektfenster
558
Ver=Sehen
559
ver_tabla_atributos=Attributtabelle sehen
560
ver_tooltip=Zeigt das Projektfenster
561
vertical=Vertikal
562
visible=Sichtbar
563
visibles=Sichtbar
564
Vista=Ansicht
565
vistas=Ansichten
566
visualizacion=Darstellung
567
Visualizacion=Visualisierung
568
visualizar_cuadricula=Raster darstellen
569
wcs_properties=WCS-Eigenschaften
570
WMS=WMS
571
xmax=Maximalwert x
572
xmin=Minimalwert x
573
Yardas=Yards
574
ymax=Maximalwert y
575
ymin=Minimalwert y
576
Zoom=Zoom
577
Zoom_al_Tema=Auf den Layer zoomen
578
Zoom_Completo=Zoom auf Alles
579
Zoom_Completo_Vista=Zoom auf Alles im Bildausschnitt
580
Zoom_M\u00E1s=Gr\u00F6\u00DFer zoomen
581
Zoom_M\u00E1s_Vista=Im Bildausschnitt gr\u00F6\u00DFer zoomen
582
Zoom_Menos=Kleiner zoomen
583
Zoom_Menos_Vista=Im Bildausschnitt kleiner zoomen
584
Zoom_pixel=Zoom zur Rasteraufl\u00F6sung
585
Zoom_Previo=Letzter Zoom
586
Zoom_Real=Zoom 1\:1
587
Zoom_Select=Zur Auswahl zoomen
0 588

  
tags/Root_remoteServices/applications/appgvSIG/src/com/lamatek/swingextras/DaySelectionListener.java
1
package com.lamatek.swingextras;
2

  
3
/**
4
 * Interface used by {@link com.lamatek.swingextras.JDateChooser JDateChooser}
5
 * to notify when the user has selected a date.
6
 */
7
public interface DaySelectionListener {
8
	
9
	/**
10
	 * Called when a user selects a date.
11
	 */
12
	public void daySelected(int day);
13
	
14
}
0 15

  
tags/Root_remoteServices/applications/appgvSIG/src/com/lamatek/swingextras/JDateChooser.java
1
package com.lamatek.swingextras;
2

  
3
import java.awt.BorderLayout;
4
import java.awt.Color;
5
import java.awt.Component;
6
import java.awt.FlowLayout;
7
import java.awt.GridBagConstraints;
8
import java.awt.GridBagLayout;
9
import java.awt.GridLayout;
10
import java.awt.Insets;
11
import java.awt.event.ActionEvent;
12
import java.awt.event.ActionListener;
13
import java.awt.event.MouseAdapter;
14
import java.awt.event.MouseEvent;
15
import java.awt.event.MouseListener;
16
import java.text.DateFormat;
17
import java.util.Calendar;
18
import java.util.Date;
19
import java.util.Vector;
20

  
21
import javax.swing.BorderFactory;
22
import javax.swing.JButton;
23
import javax.swing.JLabel;
24
import javax.swing.JPanel;
25
import javax.swing.border.BevelBorder;
26
import javax.swing.border.EtchedBorder;
27

  
28
import com.iver.andami.PluginServices;
29
import com.iver.andami.Utilities;
30
import com.iver.andami.ui.mdiManager.View;
31
import com.iver.andami.ui.mdiManager.ViewInfo;
32

  
33
/**
34
 * JDateChooser is a simple Date choosing component with similar functionality
35
 * to JFileChooser and JColorChooser. It can be used as a component, to 
36
 * be inserted into a client layout, or can display it's own Dialog
37
 * through use of the {@link #showDialog(Component, String) showDialog} method.
38
 * <p>
39
 * JDateChooser can be initialized to the current date using the no argument
40
 * constructor, or initialized to a predefined date by passing an instance
41
 * of Calendar to the constructor.<p>
42
 * Using the JDateChooser dialog works in a similar manner to JFileChooser
43
 * or JColorChooser. The {@link #showDialog(Component, String) showDialog} method
44
 * returns an int that equates to the public variables ACCEPT_OPTION, CANCEL_OPTION
45
 * or ERROR_OPTION.<p>
46
 * <tt>
47
 * JDateChooser chooser = new JDateChooser();<br>
48
 * if (chooser.showDialog(this, "Select a date...") == JDateChooser.ACCEPT_OPTION) {<br>
49
 * &nbsp;&nbsp;Calendar selectedDate = chooser.getSelectedDate();<br>
50
 * &nbsp;&nbsp;// process date here...<br>
51
 * }<p>
52
 * To use JDateChooser as a component within a GUI, users should subclass
53
 * JDateChooser and override the {@link #acceptSelection() acceptSelection} and
54
 * {@link #cancelSelection() cancelSelection} methods to process the 
55
 * corresponding user selection.<p>
56
 * The current date can be retrieved by calling {@link #getSelectedDate() getSelectedDate}
57
 * method.
58
 */
59

  
60
public class JDateChooser extends JPanel implements ActionListener, DaySelectionListener, View {
61
	
62
	public static final int CANCEL_OPTION = 4;
63
	private int currentDay;
64
	private int currentMonth;
65
	private int currentYear;
66
	private JLabel dateText;
67
	private Calendar calendar;
68
	private Date date;
69
	private JButton previousYear;
70
	private JButton previousMonth;
71
	private JButton nextMonth;
72
	private JButton nextYear;
73
	private JButton okay;
74
	private JButton cancel;
75
	private JPanel days;
76
	
77
	private DayListener dayListener = new DayListener();
78
	/**
79
	 * This constructor creates a new instance of JDateChooser initialized to
80
	 * the current date.
81
	 */
82
	public JDateChooser() {
83
		this(Calendar.getInstance());
84
	}
85
	
86
	/**
87
	 * Creates a new instance of JDateChooser initialized to the given Calendar.
88
	 */
89
	public JDateChooser(Calendar c) {
90
		super();
91
		this.calendar = c;
92
		this.calendar.setLenient(true);
93
		setup();
94
	}
95
	
96
	private void setup() {
97
		GridBagLayout g = new GridBagLayout();
98
		GridBagConstraints c = new GridBagConstraints();
99
		JPanel header = new JPanel(g);
100
		c.gridx = 0;
101
		c.gridy = 0;
102
		c.insets = new Insets(2, 0, 2, 0);
103
		previousYear = (JButton) header.add(new JButton("<<"));
104
		previousYear.addActionListener(this);
105
		previousYear.setToolTipText("A?o anterior");
106
		g.setConstraints(previousYear, c);
107
		previousMonth = (JButton) header.add(new JButton("<"));
108
		previousMonth.addActionListener(this);
109
		previousMonth.setToolTipText("Mes anterior");
110
		c.gridx++;
111
		g.setConstraints(previousMonth, c);
112
		dateText = (JLabel) header.add(new JLabel("", JLabel.CENTER));
113
		dateText.setBorder(new EtchedBorder(EtchedBorder.LOWERED));
114
		c.gridx++;
115
		c.weightx = 1.0;
116
		c.fill = c.BOTH;
117
		g.setConstraints(dateText, c);
118
		nextMonth = (JButton) header.add(new JButton(">"));
119
		nextMonth.addActionListener(this);
120
		nextMonth.setToolTipText("Mes siguiente");
121
		c.gridx++;
122
		c.weightx = 0.0;
123
		c.fill = c.NONE;
124
		g.setConstraints(nextMonth, c);
125
		nextYear = (JButton) header.add(new JButton(">>"));
126
		nextYear.addActionListener(this);
127
		nextYear.setToolTipText("A?o siguiente");
128
		c.gridx++;
129
		g.setConstraints(nextYear, c);
130
		
131
		updateCalendar(calendar);
132
		
133
		JPanel buttons = new JPanel(new FlowLayout(FlowLayout.RIGHT));
134
		okay = (JButton) buttons.add(new JButton("Ok"));
135
		okay.addActionListener(this);
136
		cancel = (JButton) buttons.add(new JButton("Cancelar"));
137
		cancel.addActionListener(this);
138
		
139
		setLayout(new BorderLayout());
140
		add("North", header);
141
		days.setBackground(Color.WHITE);
142
		days.setOpaque(true);
143
		days.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
144
		add("Center", days);
145
		add("South", buttons);
146
	}
147
	
148
	private void updateCalendar(Calendar c) {
149
		if (days != null)
150
			remove(days);
151
		currentDay = calendar.get(Calendar.DAY_OF_MONTH);
152
		currentMonth = calendar.get(Calendar.MONTH);
153
		currentYear = calendar.get(Calendar.YEAR);
154
		days = new JPanel(new GridLayout(7, 7));
155
		Calendar setup = (Calendar) calendar.clone();
156
		setup.set(Calendar.DAY_OF_WEEK, setup.getFirstDayOfWeek());
157
		int lastLayoutPosition = 0;
158
		for (int i = 0; i < 7; i++) {
159
			int dayInt = setup.get(Calendar.DAY_OF_WEEK);
160
			if (dayInt == Calendar.MONDAY)
161
				days.add(new JLabel("Mon", JLabel.CENTER));
162
			if (dayInt == Calendar.TUESDAY)
163
				days.add(new JLabel("Tue", JLabel.CENTER));
164
			if (dayInt == Calendar.WEDNESDAY)
165
				days.add(new JLabel("Wed", JLabel.CENTER));
166
			if (dayInt == Calendar.THURSDAY)
167
				days.add(new JLabel("Thu", JLabel.CENTER));
168
			if (dayInt == Calendar.FRIDAY)
169
				days.add(new JLabel("Fri", JLabel.CENTER));
170
			if (dayInt == Calendar.SATURDAY)
171
				days.add(new JLabel("Sat", JLabel.CENTER));
172
			if (dayInt == Calendar.SUNDAY)
173
				days.add(new JLabel("Sun", JLabel.CENTER));
174
			setup.roll(Calendar.DAY_OF_WEEK, true);
175
			lastLayoutPosition++;
176
		}
177
		setup = (Calendar) calendar.clone();
178
		setup.set(Calendar.DAY_OF_MONTH, 1);
179
		int first = setup.get(Calendar.DAY_OF_WEEK);
180
		for (int i = 0; i < (first - 1); i++) {
181
			days.add(new JLabel(""));
182
			lastLayoutPosition++;
183
		}
184
		setup.set(Calendar.DAY_OF_MONTH, 1);
185
		for (int i = 0; i < setup.getActualMaximum(setup.DAY_OF_MONTH); i++) {
186
			DayButton button = new DayButton(setup.get(setup.DAY_OF_MONTH));
187
			if (setup.get(Calendar.DAY_OF_MONTH) == currentDay){
188
				button.setBackground(Color.BLUE);
189
				button.setForeground(Color.WHITE);
190
				dayListener.setDia(button);
191
			}
192
			button.addDaySelectionListener(this);
193
			button.addMouseListener(dayListener);
194
			days.add(button);
195
			setup.roll(setup.DAY_OF_MONTH, true);
196
			lastLayoutPosition++;
197
		}
198
		for (int i = lastLayoutPosition; i < 49; i++)
199
			days.add(new JLabel(""));
200
		add("Center", days);
201
		validate();
202
		setup = null;
203
		updateLabel();
204
	}
205
	
206
	private void updateLabel() {
207
		Date date = calendar.getTime();
208
		dateText.setText(DateFormat.getInstance().format(date));
209
	}
210
	
211
	/**
212
	 * Returns the currently selected Date in the form of a java.util.Calendar
213
	 * object. Typically called adter receipt of an {@link #ACCEPT_OPTION ACCEPT_OPTION}
214
	 * (using the {@link #showDialog(Component, String) showDialog} method) or
215
	 * within the {@link #acceptSelection() acceptSelection} method (using the
216
	 * JDateChooser as a component.)<p>
217
	 * @return java.util.Calendar The selected date in the form of a Calendar object.
218
	 */
219
	public Calendar getSelectedDate() {
220
		return calendar;
221
	}
222
	
223
	/**
224
	 * Used to process events from the previous month, previous year, next month, next year,
225
	 * okay and cancel buttons. Users should call super.actionPerformed(ActionEvent) if overriding
226
	 * this method.
227
	 */
228
	public void actionPerformed(ActionEvent e) {
229
		if (e.getSource() == okay) {
230
			PluginServices.getMDIManager().closeView(this);
231
		}
232
		if (e.getSource() == cancel) {
233
			calendar = null;
234
			PluginServices.getMDIManager().closeView(this);
235
		}
236
		if (e.getSource() == previousYear) {
237
			calendar.roll(Calendar.YEAR, -1);
238
			updateCalendar(calendar);
239
		}
240
		if (e.getSource() == previousMonth) {
241
			calendar.roll(Calendar.MONTH, -1);
242
			updateCalendar(calendar);
243
		}
244
		if (e.getSource() == nextMonth) {
245
			calendar.roll(Calendar.MONTH, 1);
246
			updateCalendar(calendar);
247
		}
248
		if (e.getSource() == nextYear) {
249
			calendar.roll(Calendar.YEAR, 1);
250
			updateCalendar(calendar);
251
		}
252
	}
253
	
254
	/**
255
	 * Used to process day selection events from the user. This method resets
256
	 * resets the Calendar object to the selected day. Subclasses should make a call
257
	 * to super.daySelected() if overriding this method.
258
	 */
259
	public void daySelected(int d) {
260
		calendar.set(Calendar.DAY_OF_MONTH, d);
261
		updateLabel();
262
		currentDay = d;
263
	}
264

  
265
	/**
266
	 * @see com.iver.mdiApp.ui.MDIManager.View#getViewInfo()
267
	 */
268
	public ViewInfo getViewInfo() {
269
		ViewInfo m_viewinfo=new ViewInfo(ViewInfo.MODALDIALOG);
270
			m_viewinfo.setTitle(PluginServices.getText(this,"seleccione_fecha"));
271
			m_viewinfo.setWidth(400);
272
			m_viewinfo.setHeight(200);
273
		
274
		return m_viewinfo;
275
	}
276

  
277
	/**
278
	 * @see com.iver.mdiApp.ui.MDIManager.View#viewActivated()
279
	 */
280
	public void viewActivated() {
281
	}
282
}
283

  
284
class DayListener extends MouseAdapter{
285
	private DayButton btnDia;
286
	
287
	public void setDia(DayButton btn){
288
		btnDia = btn; 
289
	}
290
	/**
291
	 * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
292
	 */
293
	public void mouseClicked(MouseEvent e) {
294
		if (btnDia != null){
295
			btnDia.setBackground(Color.WHITE);
296
			btnDia.setForeground(Color.BLACK);
297
		}
298

  
299
		btnDia = (DayButton) e.getSource();
300
		btnDia.setBackground(Color.BLUE);
301
		btnDia.setForeground(Color.WHITE);
302
		
303
	}
304

  
305
}
306

  
307
class DayButton extends JLabel implements MouseListener {
308
	
309
	private int day;
310
	private Vector listeners;
311
	
312
	public DayButton(int d) {
313
		super((new Integer(d)).toString());
314
		this.day = d;
315
		addMouseListener(this);
316
		this.setBackground(Color.WHITE);
317
		this.setOpaque(true);
318
		this.setHorizontalAlignment(JLabel.CENTER);
319
	}
320
	
321
	public void addDaySelectionListener(DaySelectionListener l) {
322
		if (listeners == null)
323
			listeners = new Vector(1, 1);
324
		listeners.addElement(l);
325
	}
326
	
327
	public void removeDaySelectionListener(DaySelectionListener l) {
328
		if (listeners != null)
329
			listeners.removeElement(l);
330
	}
331
	
332
	public void removeAllListeners() {
333
		listeners = new Vector(1,1);
334
	}
335

  
336
	/**
337
	 * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
338
	 */
339
	public void mouseClicked(MouseEvent e) {
340
		if (listeners != null) {
341
			for (int i = 0; i < listeners.size(); i++) {
342
				((DaySelectionListener) listeners.elementAt(i)).daySelected(day);
343
			}
344
		}
345
	}
346

  
347
	/**
348
	 * @see java.awt.event.MouseListener#mouseEntered(java.awt.event.MouseEvent)
349
	 */
350
	public void mouseEntered(MouseEvent arg0) {
351
	}
352

  
353
	/**
354
	 * @see java.awt.event.MouseListener#mouseExited(java.awt.event.MouseEvent)
355
	 */
356
	public void mouseExited(MouseEvent arg0) {
357
	}
358

  
359
	/**
360
	 * @see java.awt.event.MouseListener#mousePressed(java.awt.event.MouseEvent)
361
	 */
362
	public void mousePressed(MouseEvent arg0) {
363
	}
364

  
365
	/**
366
	 * @see java.awt.event.MouseListener#mouseReleased(java.awt.event.MouseEvent)
367
	 */
368
	public void mouseReleased(MouseEvent arg0) {
369
	}
370
}
371

  
372
	
0 373

  
tags/Root_remoteServices/applications/appgvSIG/src/com/vividsolutions/jump/util/CoordinateArrays.java
1

  
2
/*
3
 * The Unified Mapping Platform (JUMP) is an extensible, interactive GUI 
4
 * for visualizing and manipulating spatial features with geometry and attributes.
5
 *
6
 * Copyright (C) 2003 Vivid Solutions
7
 * 
8
 * This program is free software; you can redistribute it and/or
9
 * modify it under the terms of the GNU General Public License
10
 * as published by the Free Software Foundation; either version 2
11
 * of the License, or (at your option) any later version.
12
 * 
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
 * GNU General Public License for more details.
17
 * 
18
 * You should have received a copy of the GNU General Public License
19
 * along with this program; if not, write to the Free Software
20
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
21
 * 
22
 * For more information, contact:
23
 *
24
 * Vivid Solutions
25
 * Suite #1A
26
 * 2328 Government Street
27
 * Victoria BC  V8T 5G5
28
 * Canada
29
 *
30
 * (250)385-6040
31
 * www.vividsolutions.com
32
 */
33

  
34
package com.vividsolutions.jump.util;
35

  
36
import java.util.*;
37

  
38
import com.vividsolutions.jts.algorithm.CGAlgorithms;
39
import com.vividsolutions.jts.algorithm.RobustCGAlgorithms;
40
import com.vividsolutions.jts.geom.*;
41
import com.vividsolutions.jts.util.Assert;
42

  
43

  
44
/**
45
 * Some utility functions for handling Coordinate arrays.
46
 */
47
public class CoordinateArrays {
48
    //<<TODO:REFACTORING>> JTS already has a class named CoordinateArrays.
49
    //I wonder if we should collapse this class into that one. [Jon Aquino]
50
    // MD - yep, at some point.
51
    private static final CGAlgorithms cga = new RobustCGAlgorithms();
52
    private final static Coordinate[] coordArrayType = new Coordinate[0];
53

  
54
    public static Coordinate[] toCoordinateArray(List coordList) {
55
        return (Coordinate[]) coordList.toArray(coordArrayType);
56
    }
57

  
58
    //<<TODO:REFACTORING>> This functionality is duplicated in
59
    //the protected method Geometry#reversePointOrder. Perhaps we should
60
    //make that method public and deprecate this method, or have this method
61
    //delegate to the other. [Jon Aquino]
62
    //MD: Geometry#reversePointOrder could delegate to this method.  Can't do it other way around.
63
    public static void reverse(Coordinate[] coord) {
64
        int last = coord.length - 1;
65
        int mid = last / 2;
66

  
67
        for (int i = 0; i <= mid; i++) {
68
            Coordinate tmp = coord[i];
69
            coord[i] = coord[last - i];
70
            coord[last - i] = tmp;
71
        }
72
    }
73

  
74
    /**
75
     * Converts an array of coordinates to a line or point, as appropriate.
76
     * @param coords the coordinates of a line or point
77
     * @param fact a factory used to create the Geometry
78
     * @return a line if there is more than one coordinate; a point if there is
79
     * just one coordinate; an empty point otherwise
80
     */
81
    public static Geometry toLineOrPoint(Coordinate[] coords,
82
        GeometryFactory fact) {
83
        if (coords.length > 1) {
84
            return fact.createLineString(coords);
85
        }
86

  
87
        if (coords.length == 1) {
88
            return fact.createPoint(coords[0]);
89
        }
90

  
91
        return fact.createPoint((Coordinate)null);
92
    }
93

  
94
    public static boolean equals(Coordinate[] coord1, Coordinate[] coord2) {
95
        if (coord1 == coord2) {
96
            return true;
97
        }
98

  
99
        if ((coord1 == null) || (coord2 == null)) {
100
            return false;
101
        }
102

  
103
        if (coord1.length != coord2.length) {
104
            return false;
105
        }
106

  
107
        for (int i = 0; i < coord1.length; i++) {
108
            if (!coord1[i].equals(coord2[i])) {
109
                return false;
110
            }
111
        }
112

  
113
        return true;
114
    }
115

  
116
    /**
117
     * Converts a collection of coordinate arrays to a collection of geometries.
118
     * @param coordArrays a collection of Coordinate[]
119
     * @param fact a factory used to create the Geometries
120
     * @return a collection of LineStrings and Points
121
     */
122
    public static List fromCoordinateArrays(List coordArrays,
123
        GeometryFactory fact) {
124
        List geomList = new ArrayList();
125

  
126
        for (Iterator i = coordArrays.iterator(); i.hasNext();) {
127
            Coordinate[] coords = (Coordinate[]) i.next();
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff