2,17 → 2,18 |
|
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.interfaces.VueListable; |
import org.tela_botanica.client.vues.BarreOutilsVue; |
import org.tela_botanica.client.vues.GalerieImageVue; |
import org.tela_botanica.client.vues.ListeImageVue; |
import org.tela_botanica.client.vues.MenuImageVue; |
import org.tela_botanica.client.vues.PanneauMetadonneesVue; |
import org.tela_botanica.client.vues.ZoomImageVue; |
|
import com.google.gwt.user.client.DOM; |
import com.google.gwt.user.client.Element; |
import com.google.gwt.user.client.Event; |
import com.google.gwt.user.client.Window; |
import com.gwtext.client.core.EventObject; |
import com.gwtext.client.core.Function; |
import com.gwtext.client.core.RegionPosition; |
import com.gwtext.client.data.Record; |
import com.gwtext.client.data.Store; |
19,8 → 20,6 |
import com.gwtext.client.widgets.DataView; |
import com.gwtext.client.widgets.Panel; |
import com.gwtext.client.widgets.TabPanel; |
import com.gwtext.client.widgets.Tool; |
import com.gwtext.client.widgets.Tool.ToolType; |
import com.gwtext.client.widgets.layout.BorderLayout; |
import com.gwtext.client.widgets.layout.BorderLayoutData; |
import com.gwtext.client.widgets.layout.FitLayout; |
57,10 → 56,28 |
|
private MenuImageVue menuImageVue = null ; |
|
private BarreOutilsVue barreOutilsVue = null ; |
|
private PanneauMetadonneesVue metadonneesIptcExif = null ; |
|
private int dernierIndexOnglet = 0 ; |
|
private boolean selection = false ; |
|
/** |
* @param selection the selection to set |
*/ |
public void setSelection(boolean selection) { |
this.selection = selection; |
} |
|
/** |
* @return the selection |
*/ |
public boolean isSelection() { |
return selection; |
} |
|
public static ImageMediateur Instance() |
{ |
if(!estInstancie) |
108,6 → 125,7 |
ongletsImage.add(panneauListeImage); |
|
menuImageVue = new MenuImageVue(this) ; |
barreOutilsVue = new BarreOutilsVue(this) ; |
|
detailsEtMotsCles.setWidth("20%"); |
detailsEtMotsCles.setAnimCollapse(true); |
118,7 → 136,7 |
detailsEtMotsCles.add(metadonneesIptcExif) ; |
|
|
//panneauMenuEtOngletsImage.add(menuImageVue,regionNord) ; |
panneauMenuEtOngletsImage.add(barreOutilsVue,regionNord) ; |
panneauMenuEtOngletsImage.add(ongletsImage,regionCentre); |
|
panneauPrincipalImage.add(panneauMenuEtOngletsImage,regionCentre); |
159,6 → 177,48 |
return detailsEtMotsCles; |
} |
|
/** |
* @return the estInstancie |
*/ |
public static boolean isEstInstancie() { |
return estInstancie; |
} |
|
/** |
* @return the panneauMenuEtOngletsImage |
*/ |
public Panel getPanneauMenuEtOngletsImage() { |
return panneauMenuEtOngletsImage; |
} |
|
/** |
* @return the menuImageVue |
*/ |
public MenuImageVue getMenuImageVue() { |
return menuImageVue; |
} |
|
/** |
* @return the barreOutilsVue |
*/ |
public BarreOutilsVue getBarreOutilsVue() { |
return barreOutilsVue; |
} |
|
/** |
* @return the metadonneesIptcExif |
*/ |
public PanneauMetadonneesVue getMetadonneesIptcExif() { |
return metadonneesIptcExif; |
} |
|
/** |
* @return the dernierIndexOnglet |
*/ |
public int getDernierIndexOnglet() { |
return dernierIndexOnglet; |
} |
|
public VueListable getVueSelectionnee() |
{ |
Panel active = ongletsImage.getActiveTab() ; |
189,10 → 249,24 |
|
} |
|
public void synchroniserZoomListeGalerie(Object o, Rafraichissable r) |
public void synchroniserDonneesZoomListeGalerie(Object o, Rafraichissable r) |
{ |
getIModele().rafraichirListeImage(o) ; |
|
if(o instanceof Store) { |
|
Store li = (Store)o ; |
|
if(li.getCount() <= 0) |
{ |
aucuneSelection() ; |
} |
else |
{ |
selection() ; |
} |
|
} |
|
if(r != getGalerieImage()) |
{ |
getGalerieImage().rafraichir(o,false); |
204,7 → 278,9 |
if(r != getListeImage()) |
{ |
getListeImage().rafraichir(o,false); |
} |
} |
|
aucuneSelection() ; |
} |
|
|
249,8 → 325,7 |
obtenirMetadonnees(metadonneesIptcExif,imgNum) ; |
} |
|
public void clicListeImage(int rowIndex, |
EventObject e) |
public void clicListeImage(int rowIndex) |
{ |
Record rd = getListeImage().getSelectionModel().getSelected() ; |
String imgUrl = rd.getAsString("url_image"); |
263,10 → 338,9 |
obtenirMetadonnees(metadonneesIptcExif,imgNum) ; |
} |
|
public void doubleClicListeImage(int rowIndex, |
EventObject e) |
public void doubleClicListeImage(int rowIndex) |
{ |
clicListeImage(rowIndex, e) ; |
clicListeImage(rowIndex) ; |
getOngletsImage().setActiveTab(1); |
} |
|
298,6 → 372,11 |
DataView dv = getGalerieImage().getDView(); |
st = getGalerieImage().getSt(); |
|
if(st.getCount() <= 0) |
{ |
return ; |
} |
|
selected = st.indexOf(dv.getSelectedRecords()[0]); |
storeIndex = dv.indexOf(selected); |
} |
304,6 → 383,12 |
else |
{ |
st = listeImage.getSt() ; |
|
if(st.getCount() <= 0) |
{ |
return ; |
} |
|
selected = st.indexOf(listeImage.getSelectionModel().getSelected()) ; |
storeIndex = selected ; |
} |
361,6 → 446,88 |
} |
} |
|
public void obtenirSelection(String nomVue) |
{ |
|
} |
|
|
public void synchroniserSelection(String string) { |
|
if(string.equals("galerie") && getDernierIndexOnglet() != 2) |
{ |
Record[] sel = getGalerieImage().getDView().getSelectedRecords() ; |
getListeImage().selectionnerEnregistrements(sel) ; |
} |
|
if(string.equals("liste") && getDernierIndexOnglet() != 0) |
{ |
|
Record[] sel = getListeImage().getSelectionModel().getSelections() ; |
int[] ids = new int[sel.length] ; |
|
for (int i = 0; i < sel.length; i++) { |
|
ids[i] = getGalerieImage().getSt().indexOf(sel[i]) ; |
} |
|
getGalerieImage().selectionnerImages(ids) ; |
} |
|
} |
|
public void supprimerImages() { |
|
String[] ids = null ; |
|
|
if(dernierIndexOnglet == 0) |
{ |
ids = getGalerieImage().getIdSelectionnees() ; |
} |
else |
{ |
ids = getListeImage().getIdSelectionnees() ; |
} |
|
if(ids.length > 0) |
{ |
|
if(com.google.gwt.user.client.Window |
.confirm("Supprimer les images sélectionnées ?")) |
{ |
getIModele().supprimerImages(ids) ; |
aucuneSelection() ; |
} |
} |
else |
{ |
Window.alert("Impossible de supprimer : aucune image selectionnée") ; |
} |
|
} |
|
public void aucuneSelection() { |
|
if(getListeImage().getSelectionModel().getCount() <= 0 && getGalerieImage().getDView().getSelectionCount() <= 0) |
{ |
getMetadonneesIptcExif().desactiverPanneau() ; |
getZoomImage().desactiverPanneau() ; |
setSelection(false) ; |
} |
|
} |
|
public void selection() { |
|
if(!isSelection()) |
{ |
getMetadonneesIptcExif().activerPanneau() ; |
getZoomImage().activerPanneau() ; |
setSelection(true); |
} |
} |
|
|
|
} |