Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 104 Rev 130
Line 16... Line 16...
16
import com.gwtext.client.core.RegionPosition;
16
import com.gwtext.client.core.RegionPosition;
17
import com.gwtext.client.dd.DragData;
17
import com.gwtext.client.dd.DragData;
18
import com.gwtext.client.dd.DragSource;
18
import com.gwtext.client.dd.DragSource;
19
import com.gwtext.client.dd.DropTarget;
19
import com.gwtext.client.dd.DropTarget;
20
import com.gwtext.client.dd.DropTargetConfig;
20
import com.gwtext.client.dd.DropTargetConfig;
-
 
21
import com.gwtext.client.widgets.BoxComponent;
-
 
22
import com.gwtext.client.widgets.Component;
21
import com.gwtext.client.widgets.Container;
23
import com.gwtext.client.widgets.Container;
22
import com.gwtext.client.widgets.Panel;
24
import com.gwtext.client.widgets.Panel;
-
 
25
import com.gwtext.client.widgets.event.PanelListener;
23
import com.gwtext.client.widgets.event.PanelListenerAdapter;
26
import com.gwtext.client.widgets.event.PanelListenerAdapter;
24
import com.gwtext.client.widgets.grid.GridDragData;
27
import com.gwtext.client.widgets.grid.GridDragData;
25
import com.gwtext.client.widgets.layout.BorderLayout;
28
import com.gwtext.client.widgets.layout.BorderLayout;
26
import com.gwtext.client.widgets.layout.BorderLayoutData;
29
import com.gwtext.client.widgets.layout.BorderLayoutData;
27
import com.gwtext.client.widgets.menu.BaseItem;
30
import com.gwtext.client.widgets.menu.BaseItem;
Line 139... Line 142...
139
				}
142
				}
140
			}
143
			}
Line 141... Line 144...
141
			
144
			
Line -... Line 145...
-
 
145
		};
-
 
146
		
142
		};
147
		image.setPixelSize(150, 150);
Line 143... Line 148...
143
		
148
		
Line 144... Line 149...
144
		infosImages = new String[0] ;
149
		infosImages = new String[0] ;
Line 161... Line 166...
161
		// l'image de base est vide
166
		// l'image de base est vide
162
		image.setUrl("");
167
		image.setUrl("");
Line 163... Line 168...
163
 
168
 
Line 164... Line 169...
164
		this.setLayout(new BorderLayout());
169
		this.setLayout(new BorderLayout());
165
 
170
 
Line 166... Line 171...
166
		prev.setWidth("60px");
171
		prev.setWidth("15%");
167
		suiv.setWidth("60px");
172
		suiv.setWidth("15%");
168
 
173
 
Line 211... Line 216...
211
		// c'est l'url de l'image qu'on associe à la vue
216
		// c'est l'url de l'image qu'on associe à la vue
212
		if(infosImages.length != 0)
217
		if(infosImages.length != 0)
213
		{
218
		{
214
			activerPanneau() ;
219
			activerPanneau() ;
215
			getImage().setUrl(convertirIdEnUrl(infosImages[index]));
220
			getImage().setUrl(convertirIdEnUrl(infosImages[index]));
-
 
221
			imageWidth =getImage().getWidth();
-
 
222
			imageHeight = getImage().getHeight();
-
 
223
			verifierEtRetaillerImage();
216
		}
224
		}
217
		else
225
		else
218
		{
226
		{
219
			desactiverPanneau() ;
227
			desactiverPanneau() ;
220
		}
228
		}
Line 284... Line 292...
284
				}
292
				}
Line 285... Line 293...
285
					
293
					
Line 286... Line 294...
286
			}
294
			}
287
 
295
 
-
 
296
		});
-
 
297
		
-
 
298
		/*addListener(new PanelListenerAdapter() {
-
 
299
			public void onResize(BoxComponent component, int adjWidth, int adjHeight, int rawWidth, int rawHeight)  {
-
 
300
				verifierEtRetaillerImage();
288
		});
301
			}
Line 289... Line 302...
289
 
302
		});*/
290
	}
303
	}
291
 
304
 
Line 455... Line 468...
455
		String urlImg = baseUrl + infosFichier[1] + "/" + infosFichier[2] + "/M/"
468
		String urlImg = baseUrl + infosFichier[1] + "/" + infosFichier[2] + "/M/"
456
		+ infosFichier[0] + "_M.jpg";
469
		+ infosFichier[0] + "_M.jpg";
Line 457... Line 470...
457
		
470
		
458
		return urlImg ;
471
		return urlImg ;
-
 
472
	}
-
 
473
	
-
 
474
	/**
-
 
475
	 * Verifie si l'image est plus grande que le conteneur et la retaille le cas
-
 
476
	 * echeant
-
 
477
	 */
-
 
478
	public void verifierEtRetaillerImage() {
-
 
479
		// si l'image est nulle
-
 
480
		if (image == null) {
-
 
481
			// on ne fait rien
-
 
482
			return;
-
 
483
		}
-
 
484
 
-
 
485
		// on prend la taille originale de l'image
-
 
486
		int originalX = getTailleImage()[0];
-
 
487
		int originalY = getTailleImage()[1];
-
 
488
 
-
 
489
		// on la transforme en float (la division entre entier donne de curieux
-
 
490
		// résultats)
-
 
491
		float fOriginalX = (new Float(originalX)).floatValue();
-
 
492
		float fOriginalY = (new Float(originalY)).floatValue();
-
 
493
 
-
 
494
		// et on fait le rapport longueur sur hauteur (pour connaitre le ratio)
-
 
495
		float rapportTaille = fOriginalX / fOriginalY;
-
 
496
 
-
 
497
		// la nouvelle taille est pour le moment égale à l'ancienne
-
 
498
		int nouvelleTailleX = originalX;
-
 
499
		int nouvelleTailleY = originalY;
-
 
500
 
-
 
501
		// on prend la taille du conteneur
-
 
502
		int tailleConteneurX = imageConteneur.getWidth();
-
 
503
		int tailleConteneurY = imageConteneur.getHeight();
-
 
504
		
-
 
505
		int maxConteneur = Math.min(tailleConteneurX, tailleConteneurY);
-
 
506
		int max = Math.min(maxConteneur, 300);
-
 
507
		
-
 
508
		// si l'image ne rentre pas telle quelle (longueur ou hauteur trop
-
 
509
		// grande)	
-
 
510
		// si la longueur de l'image est la plus grande des deux
-
 
511
			
-
 
512
			int maxImage = Math.max(originalX, originalY);
-
 
513
			
-
 
514
			if(maxImage == originalX) {
-
 
515
				// on prend la longueur comme taille de référence, qu'on met à
-
 
516
				// la longueur du conteneur
-
 
517
				nouvelleTailleX = max;
-
 
518
				// et on recalcule la hauteur, par rapport à la nouvelle
-
 
519
				// longueur, en gardant le format de 'limage
-
 
520
				nouvelleTailleY = (int) Math.floor(nouvelleTailleX * 1
-
 
521
						/ rapportTaille);
-
 
522
			} 
-
 
523
			else
-
 
524
			{	
-
 
525
				// si la hauteur est la plus grande, on fait le même genre
-
 
526
				// d'opération en prenant la hauteur comme référence
-
 
527
				nouvelleTailleY = max;
-
 
528
				nouvelleTailleX = (int) Math.floor(nouvelleTailleY
-
 
529
						* rapportTaille);
-
 
530
			}
-
 
531
 
-
 
532
		// on modifie enfin la taille de l'image pour qu'elle soit affichée
-
 
533
		getImage().setSize("" + nouvelleTailleX + "px",
-
 
534
				"" + nouvelleTailleY + "px");
-
 
535
		
-
 
536
		doLayout();
459
	}
537
	}