Subversion Repositories eFlore/Archives.cel-v2

Rev

Rev 20 | Rev 28 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 20 Rev 25
Line 1... Line 1...
1
package org.tela_botanica.client.image;
1
package org.tela_botanica.client.image;
Line -... Line 2...
-
 
2
 
2
 
3
import java.util.HashMap;
Line 3... Line 4...
3
import java.util.Iterator;
4
import java.util.Iterator;
4
 
5
 
5
import org.tela_botanica.client.interfaces.Rafraichissable;
6
import org.tela_botanica.client.interfaces.Rafraichissable;
6
import org.tela_botanica.client.modeles.ImageAsynchroneDAO;
7
import org.tela_botanica.client.modeles.ImageAsynchroneDAO;
7
import org.tela_botanica.client.modeles.ImageCarnet;
8
import org.tela_botanica.client.modeles.ImageCarnet;
8
import org.tela_botanica.client.modeles.ImageUploaderAsynchroneDAO;
9
import org.tela_botanica.client.modeles.ImageUploaderAsynchroneDAO;
Line -... Line 10...
-
 
10
import org.tela_botanica.client.modeles.ListeImageCarnet;
9
import org.tela_botanica.client.modeles.ListeImageCarnet;
11
import org.tela_botanica.client.modeles.ListeImageAsynchroneDAO;
10
import org.tela_botanica.client.modeles.ListeImageAsynchroneDAO;
12
 
11
 
13
import com.google.gwt.user.client.ui.Tree;
12
import com.gwtext.client.data.ArrayReader;
14
import com.gwtext.client.data.ArrayReader;
-
 
15
import com.gwtext.client.data.FieldDef;
13
import com.gwtext.client.data.FieldDef;
16
import com.gwtext.client.data.IntegerFieldDef;
14
import com.gwtext.client.data.IntegerFieldDef;
17
import com.gwtext.client.data.MemoryProxy;
15
import com.gwtext.client.data.MemoryProxy;
18
import com.gwtext.client.data.Node;
-
 
19
import com.gwtext.client.data.RecordDef;
Line 16... Line 20...
16
import com.gwtext.client.data.RecordDef;
20
import com.gwtext.client.data.Store;
17
import com.gwtext.client.data.Store;
21
import com.gwtext.client.data.StringFieldDef;
18
import com.gwtext.client.data.StringFieldDef;
22
import com.gwtext.client.widgets.tree.TreeNode;
19
 
23
 
Line 29... Line 33...
29
	
33
	
Line 30... Line 34...
30
	private ImageMediateur iMediateur = null ;
34
	private ImageMediateur iMediateur = null ;
Line -... Line 35...
-
 
35
	
-
 
36
	private ListeImageCarnet cacheImage = new ListeImageCarnet(0) ;
31
	
37
	
Line -... Line 38...
-
 
38
	private HashMap motcles = new HashMap(0) ;
-
 
39
	
32
	private ListeImageCarnet cacheImage = new ListeImageCarnet(0) ;
40
	private Store st = null ;
33
	
41
	
34
	private Store st = null ;
42
	private Tree arbreMotsCles = null ;
35
	
43
	
36
	static ImageModele Instance(ImageMediateur im)
44
	static ImageModele Instance(ImageMediateur im)
Line 71... Line 79...
71
	public void rafraichirListeImage(Object o)
79
	public void rafraichirListeImage(Object o)
72
	{
80
	{
73
		cacheImage = (ListeImageCarnet)o ;
81
		cacheImage = (ListeImageCarnet)o ;
74
	}
82
	}
Line -... Line 83...
-
 
83
	
-
 
84
	public void rafraichirArbreMotsCles(Object o)
-
 
85
	{
-
 
86
		arbreMotsCles = (Tree)o ;
-
 
87
	}
-
 
88
	
-
 
89
	public void rafraichirMotsCles(Object o)
-
 
90
	{
-
 
91
		motcles = (HashMap)o ;
-
 
92
	}
75
	
93
	
76
	public void obtenirMetadonnees(Rafraichissable r, String id)
94
	public void obtenirMetadonnees(Rafraichissable r, String id)
77
	{
-
 
78
		
-
 
79
		for(Iterator it = cacheImage.keySet().iterator() ; it.hasNext() ;)
-
 
80
		{
-
 
Line 81... Line 95...
81
			ImageCarnet im = (ImageCarnet)cacheImage.get(it.next()) ;
95
	{
82
			
-
 
Line 83... Line 96...
83
			if(im.getOrdre().equals(id))
96
			
84
			{
97
		ImageCarnet im = (ImageCarnet)cacheImage.get(id) ;
85
				
98
				
86
				Object meta[] = new Object[3] ;
99
				Object meta[] = new Object[3] ;
Line 87... Line 100...
87
				meta[0] = im.getMetadonnesExif() ;
100
				meta[0] = im.getMetadonnesExif() ;
88
				meta[1] = im.getMetadonnesIptc() ;
-
 
89
				meta[2] = im.getInfoGenerales() ;
-
 
Line 90... Line 101...
90
				
101
				meta[1] = im.getMetadonnesIptc() ;
Line -... Line 102...
-
 
102
				meta[2] = im.getInfoGenerales() ;
-
 
103
				
-
 
104
				r.rafraichir(meta,false) ;
-
 
105
	
-
 
106
	}
-
 
107
	
-
 
108
	public void obtenirMotsClesId(Rafraichissable r, String id)
-
 
109
	{
-
 
110
		ImageCarnet im = (ImageCarnet)cacheImage.get(id) ;
91
				r.rafraichir(meta,false) ;
111
		String motsClesId = im.getMotsCles() ;
92
			}
112
		String[] motsClesIdTab = motsClesId.split(",") ;
93
		}
113
		
94
	
114
		r.rafraichir(motsClesIdTab, false) ;
95
	}
115
	}
96
	
-
 
97
	public void mettreAJourCacheImage(String commentaires, String date, String ids[])
116
	
98
	{
117
	public void mettreAJourCacheImage(String commentaires, String date, String ids[])
99
			for (int i = 0; i < ids.length; i++) {
118
	{
100
				
-
 
101
				String key = ids[i] ;
119
			for (int i = 0; i < ids.length; i++) 
102
				
120
			{	
Line -... Line 121...
-
 
121
				String key = ids[i] ;
-
 
122
				ImageCarnet ic = (ImageCarnet)cacheImage.get(key) ;
-
 
123
				ic.miseAJourInfoGenerales(commentaires, date) ;
-
 
124
				mettreAjourImageCarnet(ic) ;	
-
 
125
			}
103
				ImageCarnet ic = (ImageCarnet)cacheImage.get(key) ;
126
	}
104
				ic.miseAJourInfoGenerales(commentaires, date) ;
127
	
105
				mettreAjourImageCarnet(ic) ;
128
	public void mettreAjourMotsClesId(String text, String id)
106
			
129
	{
Line 144... Line 167...
144
	}
167
	}
Line 145... Line 168...
145
 
168
 
146
	public void rafraichir(Object nouvelleDonnees,
169
	public void rafraichir(Object nouvelleDonnees,
Line 147... Line 170...
147
			boolean repandreRafraichissement) {
170
			boolean repandreRafraichissement) {
148
		
171
		
149
		ListeImageCarnet data = (ListeImageCarnet) nouvelleDonnees ;
172
			ListeImageCarnet data = (ListeImageCarnet) nouvelleDonnees ;
150
		Object[][] photoData = new Object[data.size()][7];
173
			Object[][] photoData = new Object[data.size()][7];
151
		int i = 0 ;
174
			int i = 0 ;
152
		for (Iterator it = data.keySet().iterator(); it.hasNext();) 
175
			for (Iterator it = data.keySet().iterator(); it.hasNext();) 
153
		{
176
			{
154
			ImageCarnet im = (ImageCarnet) data.get(it.next());
177
				ImageCarnet im = (ImageCarnet) data.get(it.next());
155
			photoData[i][0] = im.getOrdre() ;
178
				photoData[i][0] = im.getOrdre() ;
156
			photoData[i][1] = im.getDate() ;
179
				photoData[i][1] = im.getDate() ;
157
			photoData[i][2] = im.getIptcCity() ;
180
				photoData[i][2] = im.getIptcCity() ;
158
			photoData[i][3] = im.getMake()+" "+im.getModel() ;
181
				photoData[i][3] = im.getMake()+" "+im.getModel() ;
159
			photoData[i][4] = im.getSUrl() ;
182
				photoData[i][4] = im.getSUrl() ;
160
			photoData[i][5] = im.getMUrl() ;
183
				photoData[i][5] = im.getMUrl() ;
161
			photoData[i][6] = im.getUrl() ;
184
				photoData[i][6] = im.getUrl() ;
162
			
185
				
163
			i++ ;
186
				i++ ;
164
		}
187
			}
165
 
188
	
166
		// creation du store
189
			// creation du store
167
		FieldDef defNumImage = new IntegerFieldDef("num_image");
190
			FieldDef defNumImage = new IntegerFieldDef("num_image");
168
		FieldDef defDatImage = new StringFieldDef("dat_image");
191
			FieldDef defDatImage = new StringFieldDef("dat_image");
169
		FieldDef defLieImage = new StringFieldDef("lie_image");
192
			FieldDef defLieImage = new StringFieldDef("lie_image");
170
		FieldDef defAppImage = new StringFieldDef("app_image");
193
			FieldDef defAppImage = new StringFieldDef("app_image");
171
		FieldDef defUrlImageS = new StringFieldDef("url_image_S");
194
			FieldDef defUrlImageS = new StringFieldDef("url_image_S");
172
		FieldDef defUrlImageM = new StringFieldDef("url_image_M");
195
			FieldDef defUrlImageM = new StringFieldDef("url_image_M");
173
		FieldDef defUrlImage = new StringFieldDef("url_image");
196
			FieldDef defUrlImage = new StringFieldDef("url_image");
174
		FieldDef[] defTab = {defNumImage,defDatImage,defLieImage,defAppImage,defUrlImageS,defUrlImageM,defUrlImage};
197
			FieldDef[] defTab = {defNumImage,defDatImage,defLieImage,defAppImage,defUrlImageS,defUrlImageM,defUrlImage};
175
		RecordDef rd = new RecordDef(defTab) ;
198
			RecordDef rd = new RecordDef(defTab) ;
176
		
199
			
177
		final MemoryProxy dataProxy = new MemoryProxy(photoData);
200
			final MemoryProxy dataProxy = new MemoryProxy(photoData);
178
		final ArrayReader reader = new ArrayReader(rd);
201
			final ArrayReader reader = new ArrayReader(rd);
-
 
202
	
-
 
203
			final Store photoStore = new Store(dataProxy, reader);
-
 
204
			
-
 
205
			rafraichirListeImage(nouvelleDonnees);
-
 
206
			
-
 
207
			st = photoStore ;
-
 
208
		
-
 
209
			if(repandreRafraichissement)
-
 
210
			{
Line 179... Line -...
179
 
-
 
Line 180... Line 211...
180
		final Store photoStore = new Store(dataProxy, reader);
211
				getIMediateur().synchroniserDonneesZoomListeGalerie(st, this) ;
Line 181... Line 212...
181
		
212
			}
-
 
213
		
-
 
214
		
182
		rafraichirListeImage(nouvelleDonnees);
215
	}
-
 
216
	
-
 
217
	public void afficherMotsCles()
183
		
218
	{
184
		st = photoStore ;
219
		for(Iterator it = motcles.keySet().iterator() ; it.hasNext() ;)
-
 
220
		{
-
 
221
			String key = (String)it.next() ;
-
 
222
			String valeur = (String)motcles.get(key) ; 
Line -... Line 223...
-
 
223
			System.out.println("clé : "+key+" valeur : "+valeur);
-
 
224
		}
-
 
225
	}
-
 
226
 
-
 
227
	public void mettreAjourMotsCles(String[] ids, String motsClesEnCours) {
-
 
228
		
-
 
229
		for (int i = 0; i < ids.length; i++) {
-
 
230
			
-
 
231
			if(cacheImage.containsKey(ids[i]))
185
	
232
			{
186
		if(repandreRafraichissement)
233
				ImageCarnet ic = (ImageCarnet)cacheImage.get(ids[i]) ;