37,6 → 37,9 |
import com.gwtext.client.widgets.DataView; |
import com.gwtext.client.widgets.Panel; |
import com.gwtext.client.widgets.TabPanel; |
import com.gwtext.client.widgets.event.ComponentListenerAdapter; |
import com.gwtext.client.widgets.event.ContainerListener; |
import com.gwtext.client.widgets.event.ContainerListenerAdapter; |
import com.gwtext.client.widgets.event.PanelListener; |
import com.gwtext.client.widgets.event.PanelListenerAdapter; |
import com.gwtext.client.widgets.grid.GridDragData; |
64,6 → 67,8 |
*/ |
private CarnetEnLigneMediateur cMediateur = null; |
|
|
private static ImageMediateur thisMediateur = null ; |
/** |
* booleen qui verifie l'unicite de l'instance (donc static) |
*/ |
82,7 → 87,7 |
/** |
* panneau principal des images (onglet "images") |
*/ |
private final Panel panneauPrincipalImage = new Panel("Images"); |
private Panel panneauPrincipalImage = null ; |
|
/** |
* panneau a onglet pour la liste, la galerie et la vue en grand |
159,24 → 164,10 |
*/ |
private ImageMediateur() { |
|
panneauPrincipalImage.addListener(new PanelListenerAdapter() { |
|
public boolean doBeforeRender(Component component) { |
|
initialiser() ; |
|
return true; |
} |
|
public boolean doBeforeShow(Component component) { |
|
return true; |
} |
|
}) ; |
|
} |
|
/** |
* constructeur avec paramètres privé (on accède a la classe par la méthode |
* getInstance) |
187,24 → 178,10 |
private ImageMediateur(CarnetEnLigneMediateur cm) { |
|
cMediateur = cm; |
panneauPrincipalImage.addListener(new PanelListenerAdapter() { |
|
public boolean doBeforeRender(Component component) { |
|
initialiser() ; |
|
return true; |
} |
|
public boolean doBeforeShow(Component component) { |
|
return true; |
} |
|
}) ; |
|
} |
|
/** |
* Change la valeur du booleen de selection |
* |
230,13 → 207,13 |
* @return l'instance unique du médiateur |
*/ |
public static ImageMediateur Instance() { |
if (!estInstancie) { |
if (!estInstancie && thisMediateur == null) { |
// on en crée un nouveau |
estInstancie = true; |
return new ImageMediateur(); |
} else { |
return null; |
|
thisMediateur = new ImageMediateur(); |
} |
// sinon on retourne le "pointeur" vers le médiateur lui-même |
return thisMediateur; |
} |
|
/** |
243,17 → 220,17 |
* Retourne une instance de manière unique en lui associant un médiateur |
* pour les observations |
* |
* @param om le médiateur des observations à associer |
* @param cm le médiateur de carnet à associer |
* @return l'instance unique du médiateur |
*/ |
public static ImageMediateur Instance(CarnetEnLigneMediateur cm) { |
if (!estInstancie) { |
if (!estInstancie && thisMediateur == null) { |
// on en crée un nouveau |
estInstancie = true; |
return new ImageMediateur(cm); |
} else { |
return null; |
|
thisMediateur = new ImageMediateur(cm); |
} |
// sinon on retourne le "pointeur" vers le médiateur lui-même |
return thisMediateur; |
} |
|
private void initialiser() |
273,7 → 250,8 |
RegionPosition.WEST); |
regionOuest.setSplit(true); |
|
setIdentifiant("0") ; |
panneauPrincipalImage = new Panel("Images") ; |
panneauPrincipalImage.setLayout(new BorderLayout()) ; |
|
// on crée un modèle |
iModele = ImageModele.Instance(this); |
281,7 → 259,6 |
iModele.initialiserArbreMotsCles(); |
|
// on gère la mise en page du panneau principal |
panneauPrincipalImage.setLayout(new BorderLayout()); |
|
// on crée le panneau des filtres |
filtres = new PanneauFiltresVues(this); |
317,14 → 294,13 |
detailsEtMotsCles.setTitleCollapse(true); |
detailsEtMotsCles.setCollapsible(true); |
|
filtreMotsCles = new ArbreMotsClesFiltreVue(this); |
filtreCommentaires = new BarreRechercheFiltreVue(this); |
|
// on crée le panneau conteneur des métadonnées et infos |
metadonneesIptcExif = new PanneauMetadonneesVue(this); |
// et on l'inclut dans le volet approprié |
detailsEtMotsCles.add(metadonneesIptcExif); |
|
panneauMenuEtOngletsImage = new Panel() ; |
panneauMenuEtOngletsImage.setLayout(new BorderLayout()) ; |
// on ajoute la barre de vue au nord du panneau qui contient menu et |
// onglets d'images |
panneauMenuEtOngletsImage.add(barreOutilsVue, regionNord); |
334,15 → 310,29 |
// on ajoute le panneau qui contient le menu et les onglets d'images au |
// centre |
panneauPrincipalImage.add(panneauMenuEtOngletsImage, regionCentre); |
|
// et le panneau de métadonnées et d'info sur le coté droit |
panneauPrincipalImage.add(detailsEtMotsCles, regionEst); |
|
// on ajoute les filtres au panneau gauche |
panneauMenuEtOngletsImage.add(filtres,regionOuest) ; |
panneauPrincipalImage.add(filtres,regionOuest) ; |
|
// filtres.setCollapsed(false) ; |
thisMediateur = this ; |
|
setIdentifiant(""+"aurelien".hashCode()); |
|
panneauPrincipalImage.addListener(new ContainerListenerAdapter() { |
|
public void onShow(Component component) |
{ |
changerUtilisateur() ; |
} |
|
}) ; |
|
} |
|
/** |
* Renvoie l'identifiant de l'utilisateur en cours |
* |