Subversion Repositories eFlore/Applications.del

Rev

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

Rev 445 Rev 446
Line 71... Line 71...
71
	private Vue vue;
71
	private Vue vue;
72
	private int nbPage = 1;
72
	private int nbPage = 1;
73
	private int pageCourante = 1;
73
	private int pageCourante = 1;
74
	private int nbElementsTotal = 0;
74
	private int nbElementsTotal = 0;
75
	private int pas = 10;
75
	private int pas = 10;
-
 
76
	
-
 
77
	private String groupePagination = null;
Line 76... Line 78...
76
 
78
 
77
	/**
79
	/**
78
	 * Constructeur de l'application
80
	 * Constructeur de l'application
79
	 * 
81
	 * 
Line 85... Line 87...
85
	public PaginationPresenteur(Vue vue, int nbElementsTotal, int pas, int pageCourante) {
87
	public PaginationPresenteur(Vue vue, int nbElementsTotal, int pas, int pageCourante) {
86
		this.nbElementsTotal = nbElementsTotal;
88
		this.nbElementsTotal = nbElementsTotal;
87
		this.vue = vue;
89
		this.vue = vue;
88
		this.pas = pas;
90
		this.pas = pas;
89
		this.pageCourante = pageCourante;
91
		this.pageCourante = pageCourante;
-
 
92
		
-
 
93
		this.nbPage = calculerNbPage();
90
	}
94
	}
Line 91... Line 95...
91
 
95
 
92
	/**
96
	/**
93
	 * Methode go du modèle MVP
97
	 * Methode go du modèle MVP
Line 108... Line 112...
108
	 * */
112
	 * */
109
	protected void gererEvenements() {
113
	protected void gererEvenements() {
110
		vue.getSelecteurPas().addChangeHandler(new ChangeHandler() {
114
		vue.getSelecteurPas().addChangeHandler(new ChangeHandler() {
111
			@Override
115
			@Override
112
			public void onChange(ChangeEvent event) {
116
			public void onChange(ChangeEvent event) {
113
				chargerElements(0, vue.getPasSelectionne());
117
				changerPas(vue.getPasSelectionne());
114
				BusEvenementiel.getInstance().fireEvent(new EvenementChangementPas(vue.getPasSelectionne()));
-
 
115
			}
118
			}
116
		});
119
		});
Line 117... Line 120...
117
 
120
 
118
		vue.getBoutonPrecedent().addClickHandler(new ClickHandler() {
121
		vue.getBoutonPrecedent().addClickHandler(new ClickHandler() {
Line 130... Line 133...
130
		});
133
		});
Line 131... Line 134...
131
 
134
 
132
		vue.getBoutonPremierePage().addClickHandler(new ClickHandler() {
135
		vue.getBoutonPremierePage().addClickHandler(new ClickHandler() {
133
			@Override
136
			@Override
134
			public void onClick(ClickEvent event) {
137
			public void onClick(ClickEvent event) {
135
				afficherLaPremierePage();
138
				allerALaPremierePage();
136
			}
139
			}
Line 137... Line 140...
137
		});
140
		});
138
 
141
 
139
		vue.getBoutonDernierePage().addClickHandler(new ClickHandler() {
142
		vue.getBoutonDernierePage().addClickHandler(new ClickHandler() {
140
			@Override
143
			@Override
141
			public void onClick(ClickEvent event) {
144
			public void onClick(ClickEvent event) {
142
				afficherlaDernierePage();
145
				allerAlaDernierePage();
Line 143... Line 146...
143
			}
146
			}
Line 144... Line 147...
144
		});
147
		});
145
 
148
 
-
 
149
		BusEvenementiel.getInstance().addHandler(EvenementChangementPage.TYPE, new GestionnaireEvenementChangementPage() {
146
		BusEvenementiel.getInstance().addHandler(EvenementChangementPage.TYPE, new GestionnaireEvenementChangementPage() {
150
 
147
 
151
			@Override
-
 
152
			public void onChangementPage(EvenementChangementPage event) {
148
			@Override
153
				if(event.getGroupePagination() == groupePagination) {
149
			public void onChangementPage(EvenementChangementPage event) {
154
					pageCourante = event.getPageAAfficher();
Line 150... Line 155...
150
				pageCourante = event.getPageAAfficher();
155
					mettreEnValeurPageCourante();
Line 151... Line 156...
151
				mettreEnValeurPageCourante();
156
				}
152
			}
157
			}
153
		});
-
 
154
 
158
		});
155
		BusEvenementiel.getInstance().addHandler(EvenementChangementPas.TYPE, new GestionnaireEvenementChangementPas() {
-
 
156
 
-
 
157
			@Override
159
 
158
			public void onChangementPas(EvenementChangementPas event) {
160
		BusEvenementiel.getInstance().addHandler(EvenementChangementPas.TYPE, new GestionnaireEvenementChangementPas() {
159
 
161
 
160
				// remet la page a zero lors du changement de pas
162
			@Override
161
				pageCourante = 1;
163
			public void onChangementPas(EvenementChangementPas event) {
162
 
164
				if(event.getGroupePagination() == groupePagination) {
163
				// modifie le pas et les liens en fonction
165
					// modifie le pas et les liens en fonction
164
				pas = event.getPas();
166
					pas = event.getPas();
165
				actualiserPas();
167
					actualiserPas();
-
 
168
					actualiserLiensPagesPagination();
-
 
169
				}
-
 
170
			}
-
 
171
		});
-
 
172
	}
-
 
173
	
-
 
174
	private void gererDecalagePageCourante(int ancienPas, int nouveauPas) {	
166
				actualiserLiensPagesPagination();
175
		if(ancienPas != nouveauPas) {
167
 
176
			double rapportPas = (double)ancienPas/(double)nouveauPas;
168
			}
177
			pageCourante = (int)(Math.ceil((double)pageCourante*(double)rapportPas));
169
		});
178
		}
170
	}
179
	}
Line 180... Line 189...
180
			boutonCourant.addClickHandler(new ClickHandler() {
189
			boutonCourant.addClickHandler(new ClickHandler() {
181
				@Override
190
				@Override
182
				public void onClick(ClickEvent event) {
191
				public void onClick(ClickEvent event) {
183
					HasText boutonCourant = (HasText) event.getSource();
192
					HasText boutonCourant = (HasText) event.getSource();
184
					int pageAAfficher = Integer.parseInt(boutonCourant.getText());
193
					int pageAAfficher = Integer.parseInt(boutonCourant.getText());
-
 
194
					pageCourante = pageAAfficher;
185
					chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
195
					chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
186
					BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
196
					BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
187
				}
197
				}
188
			});
198
			});
189
		}
199
		}
190
	}
200
	}
Line 223... Line 233...
223
	}
233
	}
Line 224... Line 234...
224
 
234
 
225
	public void setPageCourante(int pageCourante) {
235
	public void setPageCourante(int pageCourante) {
226
		this.pageCourante = pageCourante;
236
		this.pageCourante = pageCourante;
-
 
237
	}
-
 
238
	
-
 
239
	public void changerPas(int nouveauPas) {
-
 
240
		gererDecalagePageCourante(pas, nouveauPas);
-
 
241
		pas = nouveauPas;
-
 
242
		chargerElements((pageCourante - 1)*pas, pageCourante*pas);
-
 
243
		BusEvenementiel.getInstance().fireEvent(new EvenementChangementPas(nouveauPas, groupePagination));
-
 
244
		BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageCourante, groupePagination));
Line 227... Line 245...
227
	}
245
	}
228
 
246
 
229
	public void allerALaPagePrecedente() {
247
	public void allerALaPagePrecedente() {
-
 
248
		if (pageCourante > 1) {
230
		if (pageCourante > 1) {
249
			int pageAAfficher = pageCourante - 1;
231
			int pageAAfficher = pageCourante - 1;
250
			pageCourante = pageAAfficher;
232
			chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
251
			chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
Line 233... Line 252...
233
			BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
252
			BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
Line 234... Line 253...
234
		}
253
		}
235
 
254
 
236
	}
255
	}
-
 
256
 
237
 
257
	public void allerALapageSuivante() {
238
	public void allerALapageSuivante() {
258
		if (pageCourante < nbPage - 1) {
239
		if (pageCourante < nbPage - 1) {
259
			int pageAAfficher = pageCourante + 1;
240
			int pageAAfficher = pageCourante + 1;
260
			pageCourante = pageAAfficher;
Line 241... Line 261...
241
			chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
261
			chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
242
			BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
262
			BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
-
 
263
		}
243
		}
264
	}
244
	}
265
 
245
 
266
	public void allerALaPremierePage() {
Line 246... Line 267...
246
	public void afficherLaPremierePage() {
267
		int pageAAfficher = 1;
247
		int pageAAfficher = 1;
268
		pageCourante = pageAAfficher;
-
 
269
		chargerElements(0, pas);
248
		chargerElements(0, pas);
270
		BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
249
		BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
271
	}
250
	}
272
 
Line 251... Line 273...
251
 
273
	public void allerAlaDernierePage() {
252
	public void afficherlaDernierePage() {
274
		int pageAAfficher = nbPage - 1;
253
		int pageAAfficher = nbPage - 1;
275
		pageCourante = pageAAfficher;
Line 282... Line 304...
282
	public abstract void actualiserPasCache(int pas);
304
	public abstract void actualiserPasCache(int pas);
Line 283... Line 305...
283
 
305
 
284
	public void setPas(int pas) {
306
	public void setPas(int pas) {
285
		this.pas = pas;
307
		this.pas = pas;
-
 
308
	}
-
 
309
	
-
 
310
	public void setGroupePagination(String groupePagination) {
-
 
311
		this.groupePagination = groupePagination;
-
 
312
	}
-
 
313
	
-
 
314
	public String getGroupePagination() {
-
 
315
		return groupePagination;
Line 286... Line 316...
286
	}
316
	}