Subversion Repositories eFlore/Applications.cel

Rev

Rev 12 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 12 Rev 46
Line 1... Line 1...
1
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
Line 2... Line 2...
2
 
2
 
3
import org.tela_botanica.client.interfaces.Rafraichissable;
-
 
-
 
3
import org.tela_botanica.client.interfaces.Rafraichissable;
Line 4... Line 4...
4
import org.tela_botanica.client.observation.ObservationMediateur;
4
 
5
 
5
 
6
import com.gwtext.client.core.EventCallback;
6
import com.gwtext.client.core.EventCallback;
7
import com.gwtext.client.core.EventObject;
7
import com.gwtext.client.core.EventObject;
Line 24... Line 24...
24
/**
24
/**
25
 * Barre de pagination asynchrone avec filtrage des touches et accès directs et séquentiels à une page
25
 * Barre de pagination asynchrone avec filtrage des touches et accès directs et séquentiels à une page
26
 * @author aurelien
26
 * @author aurelien
27
 *
27
 *
28
 */
28
 */
29
public class BarrePaginationObservationVue extends Toolbar implements Rafraichissable {
29
public class BarrePaginationListeObservationVue extends Toolbar implements Rafraichissable {
Line 30... Line 30...
30
	
30
	
31
	/**
31
	/**
32
	 * Le médiateur associé à la vue
32
	 * Le médiateur associé à la vue
33
	 */
33
	 */
Line 34... Line 34...
34
	private ObservationMediateur	observationMediateur		= null;
34
	private ListeObservationVue	listeObservationVue		= null;
35
	
35
	
36
	/**
36
	/**
37
	 * Bouton précédent
37
	 * Bouton précédent
Line 85... Line 85...
85
	/**
85
	/**
86
	 * Affiche l'intervalle des éléments contenus dans la page
86
	 * Affiche l'intervalle des éléments contenus dans la page
87
	 */
87
	 */
88
	private ToolbarTextItem intervalleElements = new ToolbarTextItem("Observations "+pageCourante*taillePage+" sur "+nbElement) ;
88
	private ToolbarTextItem intervalleElements = new ToolbarTextItem("Observations "+pageCourante*taillePage+" sur "+nbElement) ;
Line 89... Line -...
89
 
-
 
90
	/**
-
 
91
	 * retourne le mediateur associe à la barre
-
 
92
	 */
-
 
93
	public ObservationMediateur getImediateur()
89
 
94
	{
-
 
95
		return observationMediateur;
-
 
Line 96... Line 90...
96
	}
90
 
97
		
91
		
98
	/***
92
	/***
99
	 * constructeur sans argument (privé car ne doit pas être utilisé)
93
	 * constructeur sans argument (privé car ne doit pas être utilisé)
100
	 */
94
	 */
101
	private  BarrePaginationObservationVue()
95
	private  BarrePaginationListeObservationVue()
102
	{
96
	{
Line 103... Line 97...
103
		super() ;
97
		super() ;
104
	}
98
	}
105
	
99
	
106
	/**
100
	/**
107
	 * constructeur avec paramètres
101
	 * constructeur avec paramètres
108
	 * @param im le médiateur à associer à la barre
102
	 * @param im le médiateur à associer à la barre
109
	 */
103
	 */
Line 110... Line 104...
110
	public BarrePaginationObservationVue(ObservationMediateur im)
104
	public BarrePaginationListeObservationVue(ListeObservationVue lst)
Line 111... Line 105...
111
	{
105
	{
112
		super() ;
106
		super() ;
113
		
107
		
114
		observationMediateur = im ;
108
		listeObservationVue = lst;
Line 172... Line 166...
172
					// on décrémente la page courante de 1
166
					// on décrémente la page courante de 1
173
					pageCourante -- ;
167
					pageCourante -- ;
174
					// on rafraichit l'affichage
168
					// on rafraichit l'affichage
175
					rafraichirNumeroPage() ;
169
					rafraichirNumeroPage() ;
176
					// et on notifie le médiateur de l'évenement
170
					// et on notifie le médiateur de l'évenement
177
					observationMediateur.changerNumeroPage(pageCourante) ;
171
					listeObservationVue.changerNumeroPage(pageCourante) ;
Line 178... Line 172...
178
					
172
					
179
				}
173
				}
180
			}
174
			}
Line 191... Line 185...
191
					// on incrémente la page courante de 1
185
					// on incrémente la page courante de 1
192
					pageCourante ++ ;
186
					pageCourante ++ ;
193
					// on rafraichit l'affichage
187
					// on rafraichit l'affichage
194
					rafraichirNumeroPage() ;
188
					rafraichirNumeroPage() ;
195
					// et on notifie le médiateur de l'évenement
189
					// et on notifie le médiateur de l'évenement
196
					observationMediateur.changerNumeroPage(pageCourante) ;
190
					listeObservationVue.changerNumeroPage(pageCourante) ;
Line 197... Line 191...
197
					
191
					
198
				}	
192
				}	
199
			}
193
			}
Line 225... Line 219...
225
					// et si la nouvelle est comprise dans l'intervalle des pages existantes (0..pageTotale)
219
					// et si la nouvelle est comprise dans l'intervalle des pages existantes (0..pageTotale)
226
					if(nouvellePage != pageCourante + 1 && nouvellePage > 0 && nouvellePage <= pageTotale)
220
					if(nouvellePage != pageCourante + 1 && nouvellePage > 0 && nouvellePage <= pageTotale)
227
					{
221
					{
228
							// le cas échéant, on charge la nouvelle page et on notifie le médiateur
222
							// le cas échéant, on charge la nouvelle page et on notifie le médiateur
229
							changerPageCourante(nouvellePage - 1) ;
223
							changerPageCourante(nouvellePage - 1) ;
230
							observationMediateur.changerNumeroPage(pageCourante);
224
							listeObservationVue.changerNumeroPage(pageCourante);
Line 231... Line 225...
231
 
225
 
232
					}
226
					}
233
					else
227
					else
234
					{
228
					{
Line 362... Line 356...
362
			// de zéro)
356
			// de zéro)
363
			if(pageCourante >= pageTotale && pageCourante != 0)
357
			if(pageCourante >= pageTotale && pageCourante != 0)
364
			{
358
			{
365
				pageCourante = pageTotale - 1 ;
359
				pageCourante = pageTotale - 1 ;
366
				// le cas échéant on en notifie le médiateur
360
				// le cas échéant on en notifie le médiateur
367
				observationMediateur.changerNumeroPage(pageCourante) ;
361
				listeObservationVue.changerNumeroPage(pageCourante) ;
368
			}
362
			}
369
		}
363
		}
Line 370... Line 364...
370
		
364
		
371
		// enfin on rafraichit les informations affichées à partir des nouvelles variables de classes mises à jour
365
		// enfin on rafraichit les informations affichées à partir des nouvelles variables de classes mises à jour
Line 388... Line 382...
388
	 * (qui va à son tour faire les modifications nécessaires)
382
	 * (qui va à son tour faire les modifications nécessaires)
389
	 * @param nouvelleTaillePage la nouvelle taille de page (élement appartenant au tableau renvoyé par getNbPages())
383
	 * @param nouvelleTaillePage la nouvelle taille de page (élement appartenant au tableau renvoyé par getNbPages())
390
	 */
384
	 */
391
	public void changerTaillePage(int nouvelleTaillePage) {
385
	public void changerTaillePage(int nouvelleTaillePage) {
Line 392... Line 386...
392
		
386
		
Line 393... Line 387...
393
		observationMediateur.changerTaillePage(nouvelleTaillePage) ;
387
		listeObservationVue.changerTaillePage(nouvelleTaillePage) ;