Subversion Repositories eFlore/Archives.cel-v2

Rev

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

Rev 22 Rev 27
Line 1... Line -...
1
 
-
 
2
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
Line 3... Line -...
3
 
-
 
4
 
2
 
Line 5... Line 3...
5
import java.util.Iterator;
3
import java.util.Iterator;
6
 
4
 
7
import org.tela_botanica.client.image.ImageMediateur;
5
import org.tela_botanica.client.image.ImageMediateur;
8
import org.tela_botanica.client.interfaces.Rafraichissable;
6
import org.tela_botanica.client.interfaces.Rafraichissable;
9
import org.tela_botanica.client.interfaces.VueListable;
7
import org.tela_botanica.client.interfaces.VueListable;
Line 10... Line -...
10
import org.tela_botanica.client.modeles.ImageCarnet;
-
 
11
import org.tela_botanica.client.modeles.ListeImageCarnet;
8
import org.tela_botanica.client.modeles.ImageCarnet;
12
 
9
import org.tela_botanica.client.modeles.ListeImageCarnet;
13
 
10
 
14
import com.google.gwt.core.client.JavaScriptObject;
11
import com.google.gwt.core.client.JavaScriptObject;
15
import com.google.gwt.user.client.Window;
12
import com.google.gwt.user.client.Window;
Line 48... Line 45...
48
import com.gwtext.client.widgets.layout.FitLayout;
45
import com.gwtext.client.widgets.layout.FitLayout;
49
import com.gwtextux.client.data.BufferedStore;
46
import com.gwtextux.client.data.BufferedStore;
Line 50... Line 47...
50
 
47
 
51
/**
48
/**
52
 * Liste d'image composée de miniatures et d'information sur l'image
-
 
53
 * @author aurelien
49
 * Liste d'image composée de miniatures et d'information sur l'image
-
 
50
 * 
54
 *
51
 * @author aurelien
55
 */
52
 */
56
public class ListeImageVue extends GridPanel implements Rafraichissable, VueListable {
-
 
57
	
53
public class ListeImageVue extends GridPanel implements Rafraichissable,
Line 58... Line 54...
58
	
54
		VueListable {
59
	
55
 
Line 60... Line -...
60
	// instance du médiateur
-
 
61
	private ImageMediateur iMediateur = null; 
56
	// instance du médiateur
62
	
57
	private ImageMediateur	iMediateur		= null;
63
	
58
 
64
	private ColumnConfig numImage ;
59
	private ColumnConfig	numImage;
65
	private ColumnConfig urlImage ;
60
	private ColumnConfig	urlImage;
66
	private ColumnConfig lieImage ;
61
	private ColumnConfig	lieImage;
Line 67... Line 62...
67
	private ColumnConfig datImage ;
62
	private ColumnConfig	datImage;
Line 68... Line -...
68
	private ColumnConfig appImage ;
-
 
69
	private ColumnModel modeleColonnes ;
-
 
70
	
63
	private ColumnConfig	appImage;
71
	private boolean estInstancie = false ;
64
	private ColumnModel		modeleColonnes;
72
	
65
 
73
	
66
	private boolean			estInstancie	= false;
Line 74... Line -...
74
	
-
 
75
	// données locales
67
 
Line 76... Line 68...
76
	// store qui gère les données de la liste d'images
68
	// données locales
Line 77... Line 69...
77
	private Store st = null ;
69
	// store qui gère les données de la liste d'images
Line 88... Line 80...
88
		
80
 
89
		numImage = new ColumnConfig("numéro","num_image",100,true);	
81
		numImage = new ColumnConfig("numéro", "num_image", 100, true);
90
		datImage = new ColumnConfig("date","dat_image",120,true);	
82
		datImage = new ColumnConfig("date", "dat_image", 120, true);
91
		lieImage = new ColumnConfig("lieu","lie_image",120,true);	
83
		lieImage = new ColumnConfig("lieu", "lie_image", 120, true);
92
		appImage = new ColumnConfig("appareil","app_image",200,true);	
84
		appImage = new ColumnConfig("appareil", "app_image", 200, true);
-
 
85
		urlImage = new ColumnConfig("Image", "url_image_S", 200, true,
Line 93... Line 86...
93
		urlImage = new ColumnConfig("Image","url_image_S",200,true,new Renderer() {
86
				new Renderer() {
-
 
87
 
94
 
88
					public String render(Object value,
Line 95... Line 89...
95
			public String render(Object value, CellMetadata cellMetadata,
89
							CellMetadata cellMetadata, Record record,
96
					Record record, int rowIndex, int colNum, Store store) {
90
							int rowIndex, int colNum, Store store) {
97
 
91
 
-
 
92
						String ImgUrl = record.getAsString("url_image_S");
98
				String ImgUrl = record.getAsString("url_image_S");
93
						String ImgNum = record.getAsString("num_image");
Line 99... Line 94...
99
				String ImgNum = record.getAsString("num_image");
94
						return "<div class=\"img-list\"> <img src=\"" + ImgUrl
Line 100... Line 95...
100
				return "<div class=\"img-list\"> <img src=\""+ImgUrl+"\" title='"+ImgNum+"'> </div>";
95
								+ "\" title='" + ImgNum + "'> </div>";
101
			}
96
					}
102
 
97
 
103
		});
98
				});
104
		
99
 
Line 105... Line -...
105
		ColumnConfig[] cm = {numImage,datImage,lieImage,appImage,urlImage};
-
 
106
		modeleColonnes = new ColumnModel(cm);
100
		ColumnConfig[] cm = { numImage, datImage, lieImage, appImage, urlImage };
107
		this.setColumnModel(modeleColonnes);
101
		modeleColonnes = new ColumnModel(cm);
108
		this.setAutoScroll(true);
102
		this.setColumnModel(modeleColonnes);
109
		this.setAutoWidth(true);
103
		this.setAutoScroll(true);
110
		
104
		this.setAutoWidth(true);
111
		
105
 
112
		// creation du store
106
		// creation du store
113
		FieldDef defNumImage = new IntegerFieldDef("num_image");
107
		FieldDef defNumImage = new IntegerFieldDef("num_image");
114
		FieldDef defDatImage = new StringFieldDef("dat_image");
108
		FieldDef defDatImage = new StringFieldDef("dat_image");
-
 
109
		FieldDef defLieImage = new StringFieldDef("lie_image");
115
		FieldDef defLieImage = new StringFieldDef("lie_image");
110
		FieldDef defAppImage = new StringFieldDef("app_image");
116
		FieldDef defAppImage = new StringFieldDef("app_image");
111
		FieldDef defUrlImageS = new StringFieldDef("url_image_S");
117
		FieldDef defUrlImageS = new StringFieldDef("url_image_S");
112
		FieldDef defUrlImageM = new StringFieldDef("url_image_M");
118
		FieldDef defUrlImageM = new StringFieldDef("url_image_M");
113
		FieldDef defUrlImage = new StringFieldDef("url_image");
Line 119... Line 114...
119
		FieldDef defUrlImage = new StringFieldDef("url_image");
114
		FieldDef[] defTab = { defNumImage, defDatImage, defLieImage,
120
		FieldDef[] defTab = {defNumImage,defDatImage,defLieImage,defAppImage,defUrlImageS,defUrlImageM,defUrlImage};
115
				defAppImage, defUrlImageS, defUrlImageM, defUrlImage };
Line 121... Line 116...
121
		RecordDef rd = new RecordDef(defTab) ;
116
		RecordDef rd = new RecordDef(defTab);
Line 122... Line -...
122
		st = new Store(rd) ;
-
 
123
		this.setStore(st);
117
		st = new Store(rd);
Line 124... Line 118...
124
		this.getView().setAutoFill(true) ;
118
		this.setStore(st);
125
		
-
 
126
		//this.setLoadMask(true) ;
119
		this.getView().setAutoFill(true);
Line 127... Line -...
127
		this.setLoadMask("chargement") ;
-
 
128
		
120
 
129
		ajouterListeners() ;
-
 
Line 130... Line 121...
130
		
121
		// this.setLoadMask(true) ;
Line 131... Line -...
131
		
-
 
132
	}
122
		this.setLoadMask("chargement");
Line 133... Line 123...
133
	
123
 
134
	public void ajouterListeners()
-
 
135
	{	
124
		ajouterListeners();
136
		this.addListener(new ContainerListenerAdapter() {
125
 
137
 
126
	}
138
			
127
 
Line 139... Line -...
139
			public void onHide(Component component) {
-
 
140
				// TODO Auto-generated method stub
128
	public void ajouterListeners() {
Line 141... Line -...
141
				
-
 
142
			}
129
		this.addListener(new ContainerListenerAdapter() {
Line 143... Line -...
143
 
-
 
144
			
130
 
Line 145... Line 131...
145
			public void onRender(Component component) {
131
			public void onHide(Component component) {
Line 146... Line -...
146
 
-
 
147
				if(!isEstInstancie())
132
 
148
				{
133
			}
149
					setEstInstancie(true) ;
134
 
150
					getIMediateur().synchroniserSelection("galerie") ;
135
			public void onRender(Component component) {
Line 151... Line 136...
151
				}
136
 
152
			}
137
				if (!isEstInstancie()) {
Line 153... Line 138...
153
 
138
					setEstInstancie(true);
154
			
-
 
155
			public void onShow(Component component) {
139
					getIMediateur().synchroniserSelection("galerie");
Line 156... Line 140...
156
				
140
				}
157
				
141
			}
Line 158... Line -...
158
			}
-
 
159
 
142
 
160
			
-
 
161
		});
-
 
162
		
143
			public void onShow(Component component) {
163
		this.addGridRowListener(new GridRowListener() {
-
 
164
 
144
 
Line 165... Line 145...
165
 
145
			}
Line 166... Line 146...
166
			public void onRowClick(GridPanel grid, int rowIndex, EventObject e) {
146
 
Line 167... Line 147...
167
					;
147
		});
168
				getIMediateur().clicListeImage(rowIndex) ;	
-
 
169
			}
148
 
170
 
-
 
171
			public void onRowContextMenu(GridPanel grid, int rowIndex,
149
		this.addGridRowListener(new GridRowListener() {
172
					EventObject e) {
-
 
173
				
150
 
174
				getIMediateur().montrerContextMenu(e) ;
151
			public void onRowClick(GridPanel grid, int rowIndex, EventObject e) {
175
				
152
 
176
			}
-
 
177
 
153
				getIMediateur().clicListeImage(rowIndex);
178
			public void onRowDblClick(GridPanel grid, int rowIndex,
-
 
179
					EventObject e) {
154
			}
180
				
155
 
Line 181... Line 156...
181
 
156
			public void onRowContextMenu(GridPanel grid, int rowIndex,
-
 
157
					EventObject e) {
182
				getIMediateur().doubleClicListeImage(rowIndex) ;
158
 
-
 
159
				getIMediateur().montrerContextMenu(e);
-
 
160
			}
183
				                                    
161
 
184
				
162
			public void onRowDblClick(GridPanel grid, int rowIndex,
185
			}
163
					EventObject e) {
Line 186... Line 164...
186
			
164
 
Line 217... Line 195...
217
		}
195
		}
Line 218... Line 196...
218
		
196
 
219
		return id_selection ;
197
		return id_selection;
Line 220... Line -...
220
	}
-
 
221
 
-
 
222
 
-
 
223
	public void rafraichir(Object nouvelleDonnees, boolean repandreRafraichissement) {
-
 
224
		
-
 
225
		if(nouvelleDonnees instanceof Store)
-
 
226
		{
-
 
227
			
-
 
228
			st = (Store)nouvelleDonnees;
-
 
229
			st.load();
-
 
230
			this.reconfigure(st, this.getColumnModel());
-
 
231
		}
-
 
232
		
-
 
233
		if(repandreRafraichissement)
-
 
234
		{
-
 
235
			getIMediateur().synchroniserDonneesZoomListeGalerie(nouvelleDonnees, this) ;
-
 
236
		}
-
 
237
	}
-
 
238
 
198
	}
239
 
199
 
240
	public ImageMediateur getIMediateur() {
200
	public ImageMediateur getIMediateur() {
Line 241... Line -...
241
		return iMediateur;
-
 
242
	}
-
 
243
 
-
 
244
 
-
 
245
	public ColumnConfig getNumImage() {
-
 
246
		return numImage;
-
 
247
	}
-
 
248
 
-
 
249
 
-
 
250
	public ColumnConfig getUrlImage() {
-
 
251
		return urlImage;
-
 
252
	}
201
		return iMediateur;
253
 
202
	}
254
 
203
 
Line -... Line 204...
-
 
204
	public ColumnModel getModeleColonnes() {
-
 
205
		return modeleColonnes;
-
 
206
	}
Line 255... Line 207...
255
	public ColumnModel getModeleColonnes() {
207
 
256
		return modeleColonnes;
208
	public ColumnConfig getNumImage() {
257
	}
209
		return numImage;
Line 258... Line -...
258
 
-
 
259
 
210
	}
260
	public Store getSt() {
211
 
261
		return st;
212
	public Store getSt() {
Line 262... Line -...
262
	}
-
 
263
 
213
		return st;
264
 
214
	}
265
	public ColumnConfig getCl() {
215
 
266
		return cl;
216
	public ColumnConfig getUrlImage() {
267
	}
217
		return urlImage;
268
 
218
	}
Line -... Line 219...
-
 
219
 
-
 
220
	/**
Line 269... Line -...
269
 
-
 
270
	/**
221
	 * @return the estInstancie
271
	 * @return the estInstancie
-
 
272
	 */
-
 
273
	public boolean isEstInstancie() {
-
 
274
		return estInstancie;
-
 
Line -... Line 222...
-
 
222
	 */
-
 
223
	public boolean isEstInstancie() {
-
 
224
		return estInstancie;
-
 
225
	}
Line 275... Line -...
275
	}
-
 
276
 
226
 
277
 
-
 
278
	/**
227
	public void rafraichir(Object nouvelleDonnees,
279
	 * @param estInstancie the estInstancie to set
228
			boolean repandreRafraichissement) {
-
 
229
 
280
	 */
230
		if (nouvelleDonnees instanceof Store) {
Line 281... Line 231...
281
	public void setEstInstancie(boolean estInstancie) {
231
 
Line 282... Line 232...
282
		this.estInstancie = estInstancie;
232
			st = (Store) nouvelleDonnees;
283
	}
-
 
284
 
233
			st.load();
285
 
234
			this.reconfigure(st, this.getColumnModel());
286
	/**
235
		}
287
	 * @param mediateur the iMediateur to set
236
 
Line -... Line 237...
-
 
237
		if (repandreRafraichissement) {
-
 
238
			getIMediateur().synchroniserDonneesZoomListeGalerie(
-
 
239
					nouvelleDonnees, this);
-
 
240
		}
-
 
241
	}
-
 
242
 
-
 
243
	public void selectionnerEnregistrements(Record[] sel) {
Line -... Line 244...
-
 
244
 
-
 
245
		if (isEstInstancie()) {
-
 
246
			getSelectionModel().clearSelections();
-
 
247
			getSelectionModel().selectRecords(sel);
-
 
248
		}
-
 
249
	}
-
 
250
 
Line 288... Line 251...
288
	 */
251
	/**