Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 1599 Rev 1633
Line 51... Line 51...
51
	private int pageTotale = 1;
51
	private int pageTotale = 1;
52
	private Text page, surTotalPage, afficherNbElem, nbElemParPage, intervalleElements;
52
	private Text page, surTotalPage, afficherNbElem, nbElemParPage, intervalleElements;
Line 53... Line 53...
53
	
53
	
54
	private TextField<String> champPage = new TextField<String>();
54
	private TextField<String> champPage = new TextField<String>();
55
	private SimpleComboBox<Integer> selecteurTaillePage = new SimpleComboBox<Integer>();
-
 
56
	private Text labelFiltre;
-
 
57
	private TextField<String> filtre;
-
 
58
	private Button annulerFiltre;
-
 
59
	private boolean filtreActive = false;
-
 
Line 60... Line 55...
60
	private String termeRecherche = "";
55
	private SimpleComboBox<Integer> selecteurTaillePage = new SimpleComboBox<Integer>();
61
	
56
	
Line 62... Line 57...
62
	private LinkedList<Integer> intervallePages = new LinkedList<Integer>();
57
	private LinkedList<Integer> intervallePages = new LinkedList<Integer>();
Line 163... Line 158...
163
		nbElemParPage.setStyleAttribute("padding-left", "5px");
158
		nbElemParPage.setStyleAttribute("padding-left", "5px");
164
		add(nbElemParPage);
159
		add(nbElemParPage);
Line 165... Line 160...
165
		
160
		
166
		//Séparation
161
		//Séparation
167
		add(new SeparatorToolItem());
162
		add(new SeparatorToolItem());
168
		
-
 
169
		labelFiltre = new Text("Recherche rapide : ");
-
 
170
		labelFiltre.setStyleAttribute("padding-right", "5px");
-
 
171
		add(labelFiltre);
-
 
172
		
-
 
173
		filtre = new TextField<String>();
-
 
174
		filtre.setWidth(150);
-
 
175
		this.add(filtre);
-
 
176
		
-
 
177
		annulerFiltre = new Button();
-
 
178
		annulerFiltre.setIcon(Images.ICONES.annuler());
-
 
179
		annulerFiltre.setVisible(false);
-
 
180
		add(annulerFiltre);
-
 
181
		
-
 
182
		add(new FillToolItem());
-
 
183
		
163
				
184
		intervalleElements = new Text(i18nM.elementsAffiches(UtilString.ucFirst(labelElement), 
164
		intervalleElements = new Text(i18nM.elementsAffiches(UtilString.ucFirst(labelElement), 
185
			pageCourante * taillePage, (pageCourante + 1) * taillePage, nbElement));
165
			pageCourante * taillePage, (pageCourante + 1) * taillePage, nbElement));
Line 186... Line 166...
186
		add(intervalleElements);
166
		add(intervalleElements);
Line 232... Line 212...
232
		selecteurTaillePage.setEnabled(etat);
212
		selecteurTaillePage.setEnabled(etat);
233
		page.setEnabled(etat);
213
		page.setEnabled(etat);
234
		surTotalPage.setEnabled(etat);
214
		surTotalPage.setEnabled(etat);
235
		afficherNbElem.setEnabled(etat);
215
		afficherNbElem.setEnabled(etat);
236
		nbElemParPage.setEnabled(etat);
216
		nbElemParPage.setEnabled(etat);
237
		annulerFiltre.setVisible(!etat);
-
 
238
	}
217
	}
Line 239... Line 218...
239
	
218
	
240
	/**
219
	/**
241
	 * ajoute les différents listeners nécessaires au bon fonctionnement des
220
	 * ajoute les différents listeners nécessaires au bon fonctionnement des
Line 293... Line 272...
293
			public void componentSelected(ButtonEvent ce)	{
272
			public void componentSelected(ButtonEvent ce)	{
294
				listePaginable.changerNumeroPage(pageCourante);
273
				listePaginable.changerNumeroPage(pageCourante);
295
			}
274
			}
296
		});
275
		});
Line 297... Line -...
297
		
-
 
298
		annulerFiltre.addSelectionListener(new SelectionListener<ButtonEvent>() {
-
 
299
			public void componentSelected(ButtonEvent ce)	{
-
 
300
				filtre.setValue("");
-
 
301
				termeRecherche = "";
-
 
302
				filtreActive = false;
-
 
303
				listePaginable.changerNumeroPage(pageCourante);
-
 
304
				labelFiltre.setStyleAttribute("font-weight", "normal");
-
 
305
				changerEtatBarre(true);
-
 
306
			}
-
 
307
		});
-
 
308
		
-
 
309
		filtre.addKeyListener(new KeyListener(){
-
 
310
			public void componentKeyUp(ComponentEvent ce) 	{
-
 
311
				if (ce.getKeyCode() == KeyCodes.KEY_ENTER) {
-
 
312
					termeRecherche = filtre.getValue();
-
 
313
					if (termeRecherche == null || termeRecherche.equals(""))	{
-
 
314
						filtreActive = false;
-
 
315
						labelFiltre.setStyleAttribute("font-weight", "normal");
-
 
316
						listePaginable.changerNumeroPage(pageCourante);
-
 
317
						changerEtatBarre(true);
-
 
318
					} else	{
-
 
319
						changerEtatBarre(false);
-
 
320
						listePaginable.filtrerParNom(termeRecherche);
-
 
321
						labelFiltre.setStyleAttribute("font-weight", "bold");
-
 
322
						filtreActive = true;
-
 
323
					}
-
 
324
				}
-
 
325
			}
-
 
326
		});
-
 
327
		
276
		
Line 328... Line 277...
328
		champPage.addKeyListener(new KeyListener() {
277
		champPage.addKeyListener(new KeyListener() {
329
			
278
			
330
			public void componentKeyUp(ComponentEvent ce) 	{
279
			public void componentKeyUp(ComponentEvent ce) 	{
Line 391... Line 340...
391
	/**
340
	/**
392
	 * Met à jour les affichage sur les numéros de pages et d'intervalle
341
	 * Met à jour les affichage sur les numéros de pages et d'intervalle
393
	 * d'éléments à partir des variables de classes
342
	 * d'éléments à partir des variables de classes
394
	 */
343
	 */
395
	public void rafraichirNumeroPage() {
344
	public void rafraichirNumeroPage() {
-
 
345
		surTotalPage.setText(" sur " + pageTotale);
396
		if (filtreActive == true) {
346
		if (nbElement == 0) {
-
 
347
			champPage.setValue("" + (0));
-
 
348
			// on met simplement à jour l'intervalle qui contient toujours le
-
 
349
			// même nombre d'éléments
397
			intervalleElements.setText("<b><i>Recherche active : </i></b>" + termeRecherche);
350
			intervalleElements.setText(i18nM.elementsAffiches(UtilString.ucFirst(labelElement), 0,0,0));
398
		} else {
351
		} else {
399
			surTotalPage.setText(" sur " + pageTotale);
352
			champPage.setValue("" + (pageCourante + 1));
400
			if (nbElement == 0) {
353
			// si la page n'est pas la dernière
401
				champPage.setValue("" + (0));
354
			if (pageCourante + 1 != pageTotale) {
402
				// on met simplement à jour l'intervalle qui contient toujours le
355
				// sauf pour la dernière page qui contient souvent moins
403
				// même nombre d'éléments
356
				// d'élements que le nombre d'élements par page
404
				intervalleElements.setText(i18nM.elementsAffiches(UtilString.ucFirst(labelElement), 0,0,0));
357
				intervalleElements.setText(i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage, 
-
 
358
						(pageCourante + 1) * taillePage, nbElement));
405
			} else {
359
			} else {
406
				champPage.setValue("" + (pageCourante + 1));
-
 
407
				// si la page n'est pas la dernière
-
 
408
				if (pageCourante + 1 != pageTotale) {
-
 
409
					// sauf pour la dernière page qui contient souvent moins
-
 
410
					// d'élements que le nombre d'élements par page
-
 
411
					intervalleElements.setText(i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage, 
-
 
412
							(pageCourante + 1) * taillePage, nbElement));
-
 
413
				} else {
-
 
414
					
360
				
415
					// on met simplement à jour l'intervalle qui contient toujours
361
				// on met simplement à jour l'intervalle qui contient toujours
416
					// le même nombre d'éléments
362
				// le même nombre d'éléments
417
					intervalleElements.setText(i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage, 
363
				intervalleElements.setText(i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage, 
418
							nbElement, nbElement));
364
						nbElement, nbElement));
419
				}
-
 
420
			}
365
			}
421
		}
366
		}
422
	}
367
	}
Line 423... Line 368...
423
 
368