You can subscribe to this list here.
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(46) |
Jul
(37) |
Aug
(154) |
Sep
(140) |
Oct
(132) |
Nov
(104) |
Dec
(67) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2009 |
Jan
(113) |
Feb
(73) |
Mar
(102) |
Apr
(106) |
May
(114) |
Jun
(67) |
Jul
(116) |
Aug
(48) |
Sep
(108) |
Oct
(296) |
Nov
(56) |
Dec
(53) |
2010 |
Jan
(95) |
Feb
(31) |
Mar
(40) |
Apr
(12) |
May
(10) |
Jun
(27) |
Jul
(19) |
Aug
(81) |
Sep
(48) |
Oct
(45) |
Nov
(40) |
Dec
(7) |
2011 |
Jan
(16) |
Feb
(32) |
Mar
(55) |
Apr
(38) |
May
(24) |
Jun
(37) |
Jul
(12) |
Aug
(16) |
Sep
(97) |
Oct
(90) |
Nov
(101) |
Dec
(89) |
2012 |
Jan
(18) |
Feb
(2) |
Mar
(54) |
Apr
(69) |
May
(97) |
Jun
(131) |
Jul
(70) |
Aug
(48) |
Sep
(48) |
Oct
(119) |
Nov
(194) |
Dec
(60) |
2013 |
Jan
(73) |
Feb
(35) |
Mar
(42) |
Apr
(28) |
May
(7) |
Jun
(17) |
Jul
(27) |
Aug
(10) |
Sep
(38) |
Oct
(12) |
Nov
(4) |
Dec
(16) |
2014 |
Jan
(33) |
Feb
(37) |
Mar
(19) |
Apr
(3) |
May
(47) |
Jun
(26) |
Jul
(22) |
Aug
|
Sep
(10) |
Oct
(30) |
Nov
(24) |
Dec
(19) |
2015 |
Jan
(13) |
Feb
(16) |
Mar
(36) |
Apr
(19) |
May
(5) |
Jun
(5) |
Jul
(3) |
Aug
(11) |
Sep
(22) |
Oct
(7) |
Nov
(14) |
Dec
|
2016 |
Jan
|
Feb
(26) |
Mar
(13) |
Apr
(61) |
May
|
Jun
|
Jul
(4) |
Aug
|
Sep
|
Oct
(27) |
Nov
(14) |
Dec
(21) |
2017 |
Jan
(30) |
Feb
(4) |
Mar
(3) |
Apr
(5) |
May
(69) |
Jun
(29) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <emm...@us...> - 2008-11-12 10:51:08
|
Revision: 4205 http://fudaa.svn.sourceforge.net/fudaa/?rev=4205&view=rev Author: emmanuel_martin Date: 2008-11-12 10:51:03 +0000 (Wed, 12 Nov 2008) Log Message: ----------- bugfix : test faux dans la palette de visibilit?\195?\169 Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java 2008-11-12 10:29:56 UTC (rev 4204) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java 2008-11-12 10:51:03 UTC (rev 4205) @@ -393,7 +393,7 @@ if(indexTitre!=-1&&indexVisibility!=-1) for(int j=0;j<zone.getNbGeometries();j++) if(!onlyInvisible_||zone.getValue(indexVisibility, j)==GISAttributeConstants.ATT_VAL_FALSE) - if(zone.getModel(indexVisibility).getSize()<j&&zone.getModel(indexTitre).getSize()<j) + if(j<zone.getModel(indexVisibility).getSize()&&j<zone.getModel(indexTitre).getSize()) rows.add(new Object[]{zone.getValue(indexTitre, j), zone.getValue(indexVisibility, j).equals(GISAttributeConstants.ATT_VAL_TRUE)?true:false, model, scene_.layerId2SceneId(calques_[i], j)}); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-12 10:30:06
|
Revision: 4204 http://fudaa.svn.sourceforge.net/fudaa/?rev=4204&view=rev Author: emmanuel_martin Date: 2008-11-12 10:29:56 +0000 (Wed, 12 Nov 2008) Log Message: ----------- commit 4190 Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java 2008-11-12 10:11:48 UTC (rev 4203) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java 2008-11-12 10:29:56 UTC (rev 4204) @@ -44,6 +44,10 @@ GISCollection.this.fireGeometryAdded(_newIdx, (Geometry) _newGeom); } + protected void fireObjectChanged(int _idx, Object _geom){ + fireObjectModified(_idx, _geom); + } + protected void fireObjectModified(int _oldIdx, Object _oldGeom) { GISCollection.this.geometryChanged(); GISCollection.this.fireGeometryModified(_oldIdx, (Geometry) _oldGeom); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bma...@us...> - 2008-11-12 10:11:52
|
Revision: 4203 http://fudaa.svn.sourceforge.net/fudaa/?rev=4203&view=rev Author: bmarchan Date: 2008-11-12 10:11:48 +0000 (Wed, 12 Nov 2008) Log Message: ----------- Created tag FudaaModeleur_0_07. Added Paths: ----------- tags/FudaaModeleur_0_07/ tags/FudaaModeleur_0_07/fudaa_devel/ tags/FudaaModeleur_0_07/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java Removed Paths: ------------- tags/FudaaModeleur_0_07/fudaa_devel/ tags/FudaaModeleur_0_07/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java Property changes on: tags/FudaaModeleur_0_07 ___________________________________________________________________ Added: svn:ignore + eclipse_projects Added: svn:mergeinfo + /branches/Br_FudaaModeleur_TF:3445-3850 /branches/FudaaModeleur_TC1:3861-3891 Deleted: tags/FudaaModeleur_0_07/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java 2008-11-12 09:53:38 UTC (rev 4201) +++ tags/FudaaModeleur_0_07/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java 2008-11-12 10:11:48 UTC (rev 4203) @@ -1,698 +0,0 @@ -/* - * @creation 7 juin 07 - * @modification $Date: 2008/05/13 12:10:12 $ - * @license GNU General Public License 2 - * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne - * @mail de...@fu... - */ -package org.fudaa.fudaa.modeleur; - -import java.awt.Dimension; -import java.awt.EventQueue; -import java.awt.Point; -import java.awt.event.ActionEvent; -import java.beans.PropertyVetoException; -import java.io.File; -import java.io.IOException; -import java.net.URL; -import java.util.List; - -import javax.swing.Action; -import javax.swing.JComponent; -import javax.swing.JInternalFrame; -import javax.swing.JOptionPane; -import javax.swing.filechooser.FileFilter; - -import org.fudaa.ctulu.CtuluExportDataInterface; -import org.fudaa.ctulu.CtuluLib; -import org.fudaa.ctulu.CtuluLibFile; -import org.fudaa.ctulu.CtuluRunnable; -import org.fudaa.ctulu.CtuluTaskDelegate; -import org.fudaa.ctulu.ProgressionInterface; -import org.fudaa.ctulu.gui.CtuluDialogPanel; -import org.fudaa.ctulu.gui.CtuluFileChooserTestWritable; -import org.fudaa.ctulu.gui.CtuluHelpComponent; -import org.fudaa.ctulu.gui.CtuluLibDialog; -import org.fudaa.ebli.calque.ZEbliFilleCalques; -import org.fudaa.ebli.commun.EbliActionMap; -import org.fudaa.ebli.impression.EbliMiseEnPagePreferencesPanel; -import org.fudaa.ebli.ressource.EbliResource; -import org.fudaa.fudaa.commun.FudaaLib; -import org.fudaa.fudaa.commun.FudaaProjectStateListener; -import org.fudaa.fudaa.commun.FudaaProjetStateInterface; -import org.fudaa.fudaa.commun.aide.FudaaHelpPanel; -import org.fudaa.fudaa.commun.impl.FudaaCommonImplementation; -import org.fudaa.fudaa.commun.impl.FudaaGuiLib; -import org.fudaa.fudaa.commun.impl.FudaaLookPreferencesPanel; -import org.fudaa.fudaa.commun.impl.FudaaStartupExitPreferencesPanel; -import org.fudaa.fudaa.commun.save.FudaaSaveLib; -import org.fudaa.fudaa.commun.save.FudaaSaveZipLoader; -import org.fudaa.fudaa.sig.FSigLib; -import org.fudaa.fudaa.sig.FSigProjectPersistence; -import org.fudaa.fudaa.sig.FSigResource; -import org.fudaa.fudaa.tr.TrLauncherDefault; -import org.fudaa.fudaa.tr.common.TrProjectImportPanel; -import org.fudaa.fudaa.tr.common.TrProjectPersistence; -import org.fudaa.fudaa.tr.common.TrResource; - -import com.memoire.bu.BuBrowserPreferencesPanel; -import com.memoire.bu.BuColumn; -import com.memoire.bu.BuDesktopPreferencesPanel; -import com.memoire.bu.BuInformationsSoftware; -import com.memoire.bu.BuLanguagePreferencesPanel; -import com.memoire.bu.BuLib; -import com.memoire.bu.BuMainPanel; -import com.memoire.bu.BuMenu; -import com.memoire.bu.BuMenuBar; -import com.memoire.bu.BuMenuItem; -import com.memoire.bu.BuMenuRecentFiles; -import com.memoire.bu.BuPreferences; -import com.memoire.bu.BuRegistry; -import com.memoire.bu.BuResource; -import com.memoire.bu.BuScrollPane; -import com.memoire.bu.BuTaskView; -import com.memoire.bu.BuUserPreferencesPanel; -import com.memoire.fu.FuLog; - -/** - * La classe principale de mise en place de l'application, de gestion des - * actions, des \xE9tats de l'interface, etc. - * - * @author Bertrand Marchand - * @version $Id: MdlImplementation.java,v 1.1.2.9 2008/05/13 12:10:12 bmarchan Exp $ - */ -public class MdlImplementation extends FudaaCommonImplementation implements FudaaProjectStateListener { - - protected static BuInformationsSoftware isMdl_ = new BuInformationsSoftware(); - static { - isMdl_.name = "Modeleur"; - isMdl_.version = "0.07"; - isMdl_.date = "2008-11-06"; - isMdl_.rights = "Tous droits r\xE9serv\xE9s. CETMEF (c)1999-2008"; - isMdl_.license = "GPL2"; - isMdl_.languages = "fr,en"; - isMdl_.authors=new String[]{"F.Deniger, B.Marchand"}; - isMdl_.contact="nic...@eq..."; - isMdl_.http="http://www.fudaa.fr/mdl/"; - - isMdl_.logo = EbliResource.EBLI.getIcon("draw-palette"); - isMdl_.banner = BuResource.BU.getIcon("aproposde_32"); - } - - public static File getDestFile(File _init) { - return CtuluLibFile.appendExtensionIfNeeded(_init, getExtension()); - } - - public static String getExtension() { - return "mod.zip"; - } - - public static class MdlFileFilter extends FileFilter { - final String extension_ = '.' + getExtension(); - - public boolean accept(File _f) { - return _f != null && (_f.isDirectory() || _f.getName().endsWith(extension_)); - } - - public String getDescription() { - return FSigResource.FSIG.getString("Fudaa Modeleur (*.mod.zip)"); - } - - } - - public static BuInformationsSoftware informationsSoftware() { - return isMdl_; - } - - MdlFille2d currentFrame_; - MdlProjet project_; - public final static FileFilter FILTER = new MdlFileFilter(); - - public MdlImplementation() { - super(); - useNewHelp_ = false; - } - - private File chooseNewFile(boolean _saveDialog) { - return getDestFile(chooseFile(_saveDialog)); - } - - private File chooseFile(boolean _saveDialog) { - return FudaaGuiLib.ouvrirFileChooser(FSigResource.FSIG.getString("Fichier modeleur"), FILTER, this.getFrame(), - _saveDialog, _saveDialog ? new CtuluFileChooserTestWritable(this) : null); - } - - protected void setFileIfNeeded() { - if (project_.getParamsFile() == null) { - project_.setParamFile(chooseNewFile(true)); - } - } - - public void projectStateChanged(FudaaProjetStateInterface _proj) { - updateActionsState(); - } - - /** - * Mise \xE0 jour de l'\xE9tat des boutons. - */ - void updateActionsState() { - FuLog.trace("Project state change"); - - boolean bprjOpen=project_!=null; - boolean bprjModPar=bprjOpen && project_.getProjectState().isParamsModified(); - boolean buiMod=bprjOpen && project_.getProjectState().isUIModified(); - - setEnabledForAction("ENREGISTRER", bprjModPar | buiMod); - setEnabledForAction("ENREGISTRERSOUS", bprjOpen); - setEnabledForAction("FERMER", bprjOpen); - setEnabledForAction("IMPORT_PROJECT", bprjOpen); - setEnabledForAction(CtuluExportDataInterface.EXPORT_CMD, bprjOpen); - } - - void createNewInternalFrame(/*boolean _add*/) { - currentFrame_ = new MdlFille2d(this); - /*if (_add) */addInternalFrame(currentFrame_); - } - - protected boolean buildExportDataToolIcon() { - return true; - } - - protected boolean buildFudaaReportTool() { - return true; - } - - protected boolean buildImageToolIcon() { - return true; - } - - /** - * Ferme le projet, ferme les fenetres associ\xE9s, sans demande d'enregistrement en cas - * de modif (ce controle a \xE9t\xE9 effectu\xE9 en amont). - */ - protected void closeProject() { - if (project_==null) return; - project_.close(); - try { - currentFrame_.setClosed(true); - } catch (PropertyVetoException _evt) { - FuLog.error(_evt); - - } - removeInternalFrames(getAllInternalFrames()); -// removeInternalFrame(currentFrame_); - getMainMenuBar().repaint(); - project_ = null; - } - - protected void createProject(final boolean _add) { - project_ = new MdlProjet(); - project_.setOpening(true); - if (_add) createNewInternalFrame(); - else ((MdlVisuPanel)currentFrame_.getVisuPanel()).initCalques(false); - project_.install(this); - BuLib.invokeLater(new Runnable() { - - public void run() { - project_.setOpening(false); -// changeSaveActions(false); - updateActionsState(); - project_.setSaved(); - getMainMenuBar().repaint(); - } - }); - } - - protected boolean useScrollInBuDesktop() { - return true; - } - - public void actionPerformed(ActionEvent _evt) { - final String action = _evt.getActionCommand(); - if (action == null) { - return; - } - if ("OUVRIR".equals(action)) { - ouvrir(null); - } else if ("ENREGISTRER".equals(action)) { - save(); - } else if ("ENREGISTRERSOUS".equals(action)) { - saveAs(); - } else if ("FERMER".equals(action)) { - close(); - } else if ("CREER".equals(action)) { - create(); - } else if ("IMPORT_PROJECT".equals(action)) { - importProject(); - } else if ("AIDE_INDEX".equals(action)) { - displayHelp(getAideIndexUrl()); - } else if (action.startsWith("TOGGLE")) { - final BuColumn c = getMainPanel().getRightColumn(); - final JComponent comp = c.getToggleComponent(action); - if (comp != null) { - comp.setVisible(!comp.isVisible()); - c.revalidate(); - } - } else if (action.startsWith("REOUVRIR")) { - FuLog.trace(action.substring(9,action.length()-1)); - ouvrir(new File(action.substring(9,action.length()-1))); - } else - super.actionPerformed(_evt); - } - - /** - * Met a jour les fichiers recents chaque fois que necessaire. - */ - private void updateRecentFiles(File _fichier) { - getMainMenuBar().addRecentFile(_fichier.getPath(),null); - MdlPreferences.MDL.writeIniFile(); - } - - /** - * Surcharge de la m\xE9thode pour pouvoir sauvegarder les pr\xE9f\xE9rences. - */ - public void exit() { - confirmExit(); - } - - /** - * Confirmation de la sortie avec ou sans sauvegarde. - */ - public boolean confirmExit() { - if (!FudaaStartupExitPreferencesPanel.isExitConfirmed() || - question(BuResource.BU.getString("Quitter"), BuResource.BU - .getString("Voulez-vous vraiment quitter ce logiciel ?"))) { - return saveAndCloseProjet(new Runnable() { - // Lanc\xE9 apr\xE8s la sauvegarde, si op\xE9ration de sauvegarde concluante ou si pas de sauvegarde demand\xE9e. - public void run() { - savePreferencesAndTerminate(); - } - }); - } - return true; - } - - public void create() { - saveAndCloseProjet(new Runnable() { - public void run() { - createProject(true); - } - }); - } - - public void close() { - saveAndCloseProjet(null); - updateActionsState(); - } - - protected String getAideIndexUrl() { - return getHelpDir() + "modeleur/index.html"; - } - - public BuPreferences getApplicationPreferences() { - return null; - } - - public BuInformationsSoftware getInformationsSoftware() { - return informationsSoftware(); - } - - /** - * Ouvre un nouveau projet. Peut demander la sauvegarde du projet pr\xE9c\xE9demment ouvert si - * existant. - * @param _f Le fichier projet \xE0 ouvrir. null, si le fichier doit etre choisi par l'utilisateur. - */ - public void ouvrir(final File _f) { - if (isProjectModified()) { - saveAndCloseProjet(new Runnable() { - - public void run() { - ouvrir(_f); - } - }); - return; - } - - closeProject(); - - final File f = CtuluLibFile.exists(_f) ? _f : chooseFile(false); - if (f==null) return; // Abandon utilisateur. - - createProject(false); - setGlassPaneStop(); - new CtuluRunnable(BuResource.BU.getString("Ouvrir"), MdlImplementation.this) { - - public boolean run(ProgressionInterface _proj) { - project_.setOpening(true); - Runnable r = null; - try { - r = FudaaSaveLib.restoreFille(MdlImplementation.this, currentFrame_, _proj, f); - project_.setParamFile(f); - - } finally { - - final Runnable swingRun = r; - BuLib.invokeLater(new Runnable() { - - public void run() { - try { - addInternalFrame(currentFrame_); - if (swingRun != null) swingRun.run(); - - // le projet a ete install\xE9: on enl\xE8ve les flag de modification - project_.setOpening(false); - project_.setSaved(); - if (swingRun == null) { - MdlImplementation.this.warn(BuResource.BU.getString("Ouvrir"), FSigResource.FSIG - .getString("Le projet n'a pas \xE9t\xE9 ouvert!")); - } - else { - updateRecentFiles(project_.getParamsFile()); - } - } finally { - unsetGlassPaneStop(); - - } - } - - }); - - } - return r != null; - } - }.run(); - } - - public void save() { - if (project_.getParamsFile() != null) { - CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) { - - public boolean run(ProgressionInterface _proj) { - if (FSigProjectPersistence.saveProject(MdlImplementation.this, project_, project_.getParamsFile(), _proj)) { - updateRecentFiles(project_.getParamsFile()); - return true; - } - return false; - } - }; - act.setAfterRunnable(getSaveSwingRunnable(project_.getParamsFile()), true); - act.run(); - } else - saveAs(); - } - - public void saveAs() { - final File f = chooseNewFile(true); - if (f == null) return; - - CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) { - - public boolean run(ProgressionInterface _proj) { - if (FSigProjectPersistence.saveProject(MdlImplementation.this, project_, f, _proj)) { - updateRecentFiles(f); - return true; - } - return false; - } - }; - act.setAfterRunnable(getSaveSwingRunnable(f), true); - act.run(); - } - - protected boolean isProjectModified() { - return project_ != null - && (project_.getProjectState().isParamsModified() || project_.getProjectState().isUIModified()); - } - - public void importProject() { - MdlProjectImportPanel pn=new MdlProjectImportPanel(); - if (CtuluDialogPanel.isOkResponse(pn.afficheModale(getFrame(), "Import d'un projet"))) { - FudaaSaveZipLoader loader = null; - try { - loader = pn.getLoader(); - final FudaaSaveZipLoader finalLoader = loader; - final CtuluTaskDelegate createTask = createTask("Import d'un projet"); -// FIXME BM: Suppression de la tache dans un thread diff\xE9rent, car l'appli se bloque -// Probable pb de deadlock. -// createTask.start(new Runnable() { -// public void run() { - FudaaSaveLib.restoreAndLaunch(MdlImplementation.this, currentFrame_, createTask.getStateReceiver(), finalLoader); -// } -// }); - } catch (final IOException _evt) { - FuLog.error(_evt); - - } - } - } - - /** - * Dans le thread swing.... - * - * @param _relaunch l'exe a lancer apr\xE8s: si l'utilisateur a accept\xE9 la fermeture du projet - */ - public boolean saveAndCloseProjet(final Runnable _relaunch) { - final Runnable r = new Runnable() { - - public void run() { - closeProject(); - if (_relaunch != null) _relaunch.run(); - } - }; - boolean save = false; - if (isProjectModified()) { - final int i = CtuluLibDialog.confirmExitIfProjectisModified(getFrame()); - // l'utilisateur veut annuler l'op\xE9ration - if (i == JOptionPane.CANCEL_OPTION) { - FuLog.debug("FSI: close operation cancelled by user"); - return false; - } - save = (i == JOptionPane.OK_OPTION); - } - - FuLog.debug("FSI: close operation accepted and save option= " + save); - // pas de sauvegarde: on lance l'op\xE9ration suivante: - if (!save) { - r.run(); - } else { - // on initilialise le fichier de dest si n\xE9cessaire - setFileIfNeeded(); - if (project_.getParamsFile()==null) return false; - CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) { - - public boolean run(ProgressionInterface _prog) { - // le fichier peut etre null si l'utilisateur a refuse de pr\xE9ciser un fichier - // dans ce cas, on ne sauvegarde pas. - if (project_.getParamsFile() != null) { - setGlassPaneStop(); - FSigProjectPersistence.saveProject(MdlImplementation.this, project_, - project_.getParamsFile(), _prog); - updateRecentFiles(project_.getParamsFile()); - - unsetGlassPaneStop(); - return true; - } - else return false; - } - }; - // le r sera lance apres et dans le thread swing - act.setAfterRunnable(r, true); - act.run(); - return false; - } - return true; - } - - protected Runnable getSaveSwingRunnable(final File _paramFile) { - return new Runnable() { - - public void run() { - if (_paramFile != null) project_.setParamFile(_paramFile); - project_.setSaved(); - - } - }; - } - - /** - * Methode surcharg\xE9e pour les panneau de pr\xE9f\xE9rence. - */ - protected void buildPreferences(final List _frAddTab) { - _frAddTab.add(new BuUserPreferencesPanel(this)); - _frAddTab.add(new BuLanguagePreferencesPanel(this)); - _frAddTab.add(new BuDesktopPreferencesPanel(this)); - _frAddTab.add(new FudaaStartupExitPreferencesPanel(true)); - _frAddTab.add(new FudaaLookPreferencesPanel(this)); - _frAddTab.add(new BuBrowserPreferencesPanel(this)); - _frAddTab.add(new EbliMiseEnPagePreferencesPanel()); - } - - /** - * Cr\xE9ation du panneau des taches, dans la colonne de droite. - */ - protected void buildTaskView() { - final BuMainPanel mp = getMainPanel(); - final BuColumn lc = mp.getLeftColumn(); - lc.setFocusable(false); - final BuColumn rc = mp.getRightColumn(); - rc.setFocusable(false); - lc.setBorder(null); - // rc.setBorder(new EmptyBorder(0,2,0,2)); - BuTaskView taches = new BuTaskView(); - taches.setToolTipText(TrResource.getS("Les t\xE2ches en cours")); - final BuScrollPane sp = new BuScrollPane(taches); - sp.setPreferredSize(new Dimension(150, 80)); - sp.setToolTipText(TrResource.getS("Les t\xE2ches en cours")); - rc.addToggledComponent(BuResource.BU.getString("T\xE2ches"), "TOGGLE_TACHE", BuResource.BU.getToolIcon("tache"), sp, - true, this).setToolTipText(TrResource.getS("Cacher/Afficher les t\xE2ches")); - mp.setTaskView(taches); - } - - /** - * Sauvegarde des pr\xE9f\xE9rences de l'appli \xE0 la sortie. - * - * Remarque importante : Certaines infos sauv\xE9es par cette m\xE9thode sont relues - * par d'autres applications Fudaa, qui risquent alors de s'afficher de facon - * inattendue. - */ - protected void savePreferencesAndTerminate() { - final Point p = getFrame().getLocation(); - final Dimension d = getFrame().getSize(); - BuPreferences.BU.putIntegerProperty("window.x", p.x); - BuPreferences.BU.putIntegerProperty("window.y", p.y); - BuPreferences.BU.putIntegerProperty("window.w", d.width); - BuPreferences.BU.putIntegerProperty("window.h", d.height); - BuPreferences.BU.writeIniFile(); - - BuRegistry.unregister(this.getFrame()); - } - - /** - * Mise en place de l'application ava,nt affichage. - */ - public void init() { - super.init(); - // Pour forcer l'activation du command listener. - getUndoCmdListener(); - - removeUnusedActions(); - final BuMenuBar mb = getMainMenuBar(); - // on enleve le menu des look and feel : moche car tout n'est pas mis a jour -/* Issu de Fudaa-Prepro - final BuMenu mAide = (BuMenu) b.getMenu("MENU_AIDE"); - - mAide.add(TrLib.buildAideContextItem(this), 0); - TrLib.addJavawsForJnlp(mAide); - TrLib.addJava3DJMFTest(mAide);*/ - - setEnabledForAction("QUITTER", true); - setEnabledForAction("PREFERENCE", true); - setEnabledForAction("CREER", true); - setEnabledForAction("OUVRIR", true); - setEnabledForAction("IMPORTER", true); - setEnabledForAction("EXPORTER", true); - - BuMenuRecentFiles mr= (BuMenuRecentFiles)mb.getMenu("REOUVRIR"); - if (mr != null) { - mr.setPreferences(MdlPreferences.MDL); - mr.setResource(MdlResource.MDL); - mr.setEnabled(true); - } - -/* setEnabledForAction("MAJ", true); - setEnabledForAction("SEND_COMMENT", true); - setEnabledForAction("LAUNCH_JAVAWS", true); - final BuMenu mFichier = (BuMenu) b.getMenu("MENU_FICHIER"); - mFichier.addMenuItem(TrResource.getS("Fermer toutes les applications"), "CLOSE_ALL", BuResource.BU - .getIcon("fermer"), true, 0); - final BuToolBar tb = getMainToolBar(); - if (!isSupervisor()) { - - tb.addToolButton(TrResource.getSupervisorName(), TrResource.getS("ouvrir le superviseur"), "SUPERVISEUR", - TrResource.getSupervisorIcon(), true).setVisible(true); - - }*/ - // les menus exporter et importer sont construit dynamiquement -// b.getMenu(getExporterCmd()).addItemListener(this); - BuMenu mmImport = (BuMenu) mb.getMenu("IMPORTER"); - BuMenu mnExport = (BuMenu) mb.getMenu("EXPORTER"); - -// menu.addMenuItem(FSigImageImportAction.getCommonTitle(), "IMPORT_IMAGE", FSigImageImportAction.getCommonImage(), -// this).setEnabled(false); - mmImport.addMenuItem(FudaaLib.getS("Importer un projet"), "IMPORT_PROJECT", BuResource.BU.getMenuIcon("importer"), this) - .setEnabled(false); -// menu.addItemListener(this); - setEnabledForAction("IMPORT_PROJECT", true); - mmImport.setEnabled(true); - - BuMenuItem itExportData = new BuMenuItem(); - super.initExportDataButton(itExportData); - mnExport.add(itExportData); - -/* setEnabledForAction("RANGERICONES", true); - if (!isSupervisor()) { - final JComponent cp = getMainPanel().getMiddleComponent(); - if (cp instanceof JScrollPane) { - ScrollPaneSelector.installScrollPaneSelector((JScrollPane) cp); - } - }*/ - buildTaskView(); - } - - /** - * Suppression des commandes par d\xE9faut dans Fudaa. - */ - protected void removeUnusedActions() { -/* Issu de Fudaa-Prepro - final BuMenu r = (BuMenu) getMainMenuBar().getMenu("MENU_EDITION"); - if (r != null) { - r.removeAll(); - r.addMenuItem(BuResource.BU.getString("D\xE9faire"), "DEFAIRE", false, KeyEvent.VK_Z); - r.addMenuItem(BuResource.BU.getString("Refaire"), "REFAIRE", false).setAccelerator( - KeyStroke.getKeyStroke(KeyEvent.VK_Z, InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK)); - // normalement Ctrl-Y - // r.addSeparator(); - // - r.addMenuItem(BuResource.BU.getString("Copier"), "COPIER", false, KeyEvent.VK_C); - r.addMenuItem(BuResource.BU.getString("Couper"), "COUPER", false, KeyEvent.VK_X); - r.addMenuItem(BuResource.BU.getString("Coller"), "COLLER", false, KeyEvent.VK_V); - // r.addMenuItem(BuResource.BU.getString("Dupliquer" ),"DUPLIQUER" ,false) - // .setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,KeyEvent.CTRL_MASK|KeyEvent.SHIFT_MASK)); - r.addSeparator(); - FSigLib.addSelectionAction(r, null); - // r.addMenuItem(BuResource.BU.getString("Remplacer..." ),"REMPLACER" - // ,false,KeyEvent.VK_R); - r.addSeparator(); - r.addMenuItem(BuResource.BU.getString("Pr\xE9f\xE9rences"), "PREFERENCE", false, KeyEvent.VK_F2); - addConsoleMenu(r); - final BuToolBar tb = getMainToolBar(); - BuActionRemover.removeAction(tb, "COUPER"); - BuActionRemover.removeAction(tb, "COLLER"); - BuActionRemover.removeAction(tb, "COPIER"); - BuActionRemover.removeAction(tb, "DUPLIQUER"); - BuActionRemover.removeAction(tb, "RANGERICONES"); - // BuActionRemover.removeAction(tb, "TOUTSELECTIONNER"); - BuActionRemover.removeAction(tb, "REMPLACER"); - - }*/ - /* - * removeAction("COUPER"); removeAction("COLLER"); removeAction("COPIER"); removeAction("DUPLIQUER"); - * removeAction("TOUTSELECTIONNER"); removeAction("REMPLACER"); - */ - removeAction("ASSISTANT"); -// removeAction("ASTUCE"); - removeAction("POINTEURAIDE"); - removeAction("INDEX_THEMA"); - removeAction("INDEX_ALPHA"); - removeAction("PROPRIETE"); - removeAction("PLEINECRAN"); - removeAction("VISIBLE_LEFTCOLUMN"); - } - - public void start() { - super.start(); - super.addFrameListLeft(); - createProject(true); - } - -} Copied: tags/FudaaModeleur_0_07/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java (from rev 4202, branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java) =================================================================== --- tags/FudaaModeleur_0_07/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java (rev 0) +++ tags/FudaaModeleur_0_07/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java 2008-11-12 10:11:48 UTC (rev 4203) @@ -0,0 +1,698 @@ +/* + * @creation 7 juin 07 + * @modification $Date: 2008/05/13 12:10:12 $ + * @license GNU General Public License 2 + * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne + * @mail de...@fu... + */ +package org.fudaa.fudaa.modeleur; + +import java.awt.Dimension; +import java.awt.EventQueue; +import java.awt.Point; +import java.awt.event.ActionEvent; +import java.beans.PropertyVetoException; +import java.io.File; +import java.io.IOException; +import java.net.URL; +import java.util.List; + +import javax.swing.Action; +import javax.swing.JComponent; +import javax.swing.JInternalFrame; +import javax.swing.JOptionPane; +import javax.swing.filechooser.FileFilter; + +import org.fudaa.ctulu.CtuluExportDataInterface; +import org.fudaa.ctulu.CtuluLib; +import org.fudaa.ctulu.CtuluLibFile; +import org.fudaa.ctulu.CtuluRunnable; +import org.fudaa.ctulu.CtuluTaskDelegate; +import org.fudaa.ctulu.ProgressionInterface; +import org.fudaa.ctulu.gui.CtuluDialogPanel; +import org.fudaa.ctulu.gui.CtuluFileChooserTestWritable; +import org.fudaa.ctulu.gui.CtuluHelpComponent; +import org.fudaa.ctulu.gui.CtuluLibDialog; +import org.fudaa.ebli.calque.ZEbliFilleCalques; +import org.fudaa.ebli.commun.EbliActionMap; +import org.fudaa.ebli.impression.EbliMiseEnPagePreferencesPanel; +import org.fudaa.ebli.ressource.EbliResource; +import org.fudaa.fudaa.commun.FudaaLib; +import org.fudaa.fudaa.commun.FudaaProjectStateListener; +import org.fudaa.fudaa.commun.FudaaProjetStateInterface; +import org.fudaa.fudaa.commun.aide.FudaaHelpPanel; +import org.fudaa.fudaa.commun.impl.FudaaCommonImplementation; +import org.fudaa.fudaa.commun.impl.FudaaGuiLib; +import org.fudaa.fudaa.commun.impl.FudaaLookPreferencesPanel; +import org.fudaa.fudaa.commun.impl.FudaaStartupExitPreferencesPanel; +import org.fudaa.fudaa.commun.save.FudaaSaveLib; +import org.fudaa.fudaa.commun.save.FudaaSaveZipLoader; +import org.fudaa.fudaa.sig.FSigLib; +import org.fudaa.fudaa.sig.FSigProjectPersistence; +import org.fudaa.fudaa.sig.FSigResource; +import org.fudaa.fudaa.tr.TrLauncherDefault; +import org.fudaa.fudaa.tr.common.TrProjectImportPanel; +import org.fudaa.fudaa.tr.common.TrProjectPersistence; +import org.fudaa.fudaa.tr.common.TrResource; + +import com.memoire.bu.BuBrowserPreferencesPanel; +import com.memoire.bu.BuColumn; +import com.memoire.bu.BuDesktopPreferencesPanel; +import com.memoire.bu.BuInformationsSoftware; +import com.memoire.bu.BuLanguagePreferencesPanel; +import com.memoire.bu.BuLib; +import com.memoire.bu.BuMainPanel; +import com.memoire.bu.BuMenu; +import com.memoire.bu.BuMenuBar; +import com.memoire.bu.BuMenuItem; +import com.memoire.bu.BuMenuRecentFiles; +import com.memoire.bu.BuPreferences; +import com.memoire.bu.BuRegistry; +import com.memoire.bu.BuResource; +import com.memoire.bu.BuScrollPane; +import com.memoire.bu.BuTaskView; +import com.memoire.bu.BuUserPreferencesPanel; +import com.memoire.fu.FuLog; + +/** + * La classe principale de mise en place de l'application, de gestion des + * actions, des \xE9tats de l'interface, etc. + * + * @author Bertrand Marchand + * @version $Id: MdlImplementation.java,v 1.1.2.9 2008/05/13 12:10:12 bmarchan Exp $ + */ +public class MdlImplementation extends FudaaCommonImplementation implements FudaaProjectStateListener { + + protected static BuInformationsSoftware isMdl_ = new BuInformationsSoftware(); + static { + isMdl_.name = "Modeleur"; + isMdl_.version = "0.07"; + isMdl_.date = "2008-11-12"; + isMdl_.rights = "Tous droits r\xE9serv\xE9s. CETMEF (c)1999-2008"; + isMdl_.license = "GPL2"; + isMdl_.languages = "fr,en"; + isMdl_.authors=new String[]{"F.Deniger, B.Marchand"}; + isMdl_.contact="nic...@eq..."; + isMdl_.http="http://www.fudaa.fr/mdl/"; + + isMdl_.logo = EbliResource.EBLI.getIcon("draw-palette"); + isMdl_.banner = BuResource.BU.getIcon("aproposde_32"); + } + + public static File getDestFile(File _init) { + return CtuluLibFile.appendExtensionIfNeeded(_init, getExtension()); + } + + public static String getExtension() { + return "mod.zip"; + } + + public static class MdlFileFilter extends FileFilter { + final String extension_ = '.' + getExtension(); + + public boolean accept(File _f) { + return _f != null && (_f.isDirectory() || _f.getName().endsWith(extension_)); + } + + public String getDescription() { + return FSigResource.FSIG.getString("Fudaa Modeleur (*.mod.zip)"); + } + + } + + public static BuInformationsSoftware informationsSoftware() { + return isMdl_; + } + + MdlFille2d currentFrame_; + MdlProjet project_; + public final static FileFilter FILTER = new MdlFileFilter(); + + public MdlImplementation() { + super(); + useNewHelp_ = false; + } + + private File chooseNewFile(boolean _saveDialog) { + return getDestFile(chooseFile(_saveDialog)); + } + + private File chooseFile(boolean _saveDialog) { + return FudaaGuiLib.ouvrirFileChooser(FSigResource.FSIG.getString("Fichier modeleur"), FILTER, this.getFrame(), + _saveDialog, _saveDialog ? new CtuluFileChooserTestWritable(this) : null); + } + + protected void setFileIfNeeded() { + if (project_.getParamsFile() == null) { + project_.setParamFile(chooseNewFile(true)); + } + } + + public void projectStateChanged(FudaaProjetStateInterface _proj) { + updateActionsState(); + } + + /** + * Mise \xE0 jour de l'\xE9tat des boutons. + */ + void updateActionsState() { + FuLog.trace("Project state change"); + + boolean bprjOpen=project_!=null; + boolean bprjModPar=bprjOpen && project_.getProjectState().isParamsModified(); + boolean buiMod=bprjOpen && project_.getProjectState().isUIModified(); + + setEnabledForAction("ENREGISTRER", bprjModPar | buiMod); + setEnabledForAction("ENREGISTRERSOUS", bprjOpen); + setEnabledForAction("FERMER", bprjOpen); + setEnabledForAction("IMPORT_PROJECT", bprjOpen); + setEnabledForAction(CtuluExportDataInterface.EXPORT_CMD, bprjOpen); + } + + void createNewInternalFrame(/*boolean _add*/) { + currentFrame_ = new MdlFille2d(this); + /*if (_add) */addInternalFrame(currentFrame_); + } + + protected boolean buildExportDataToolIcon() { + return true; + } + + protected boolean buildFudaaReportTool() { + return true; + } + + protected boolean buildImageToolIcon() { + return true; + } + + /** + * Ferme le projet, ferme les fenetres associ\xE9s, sans demande d'enregistrement en cas + * de modif (ce controle a \xE9t\xE9 effectu\xE9 en amont). + */ + protected void closeProject() { + if (project_==null) return; + project_.close(); + try { + currentFrame_.setClosed(true); + } catch (PropertyVetoException _evt) { + FuLog.error(_evt); + + } + removeInternalFrames(getAllInternalFrames()); +// removeInternalFrame(currentFrame_); + getMainMenuBar().repaint(); + project_ = null; + } + + protected void createProject(final boolean _add) { + project_ = new MdlProjet(); + project_.setOpening(true); + if (_add) createNewInternalFrame(); + else ((MdlVisuPanel)currentFrame_.getVisuPanel()).initCalques(false); + project_.install(this); + BuLib.invokeLater(new Runnable() { + + public void run() { + project_.setOpening(false); +// changeSaveActions(false); + updateActionsState(); + project_.setSaved(); + getMainMenuBar().repaint(); + } + }); + } + + protected boolean useScrollInBuDesktop() { + return true; + } + + public void actionPerformed(ActionEvent _evt) { + final String action = _evt.getActionCommand(); + if (action == null) { + return; + } + if ("OUVRIR".equals(action)) { + ouvrir(null); + } else if ("ENREGISTRER".equals(action)) { + save(); + } else if ("ENREGISTRERSOUS".equals(action)) { + saveAs(); + } else if ("FERMER".equals(action)) { + close(); + } else if ("CREER".equals(action)) { + create(); + } else if ("IMPORT_PROJECT".equals(action)) { + importProject(); + } else if ("AIDE_INDEX".equals(action)) { + displayHelp(getAideIndexUrl()); + } else if (action.startsWith("TOGGLE")) { + final BuColumn c = getMainPanel().getRightColumn(); + final JComponent comp = c.getToggleComponent(action); + if (comp != null) { + comp.setVisible(!comp.isVisible()); + c.revalidate(); + } + } else if (action.startsWith("REOUVRIR")) { + FuLog.trace(action.substring(9,action.length()-1)); + ouvrir(new File(action.substring(9,action.length()-1))); + } else + super.actionPerformed(_evt); + } + + /** + * Met a jour les fichiers recents chaque fois que necessaire. + */ + private void updateRecentFiles(File _fichier) { + getMainMenuBar().addRecentFile(_fichier.getPath(),null); + MdlPreferences.MDL.writeIniFile(); + } + + /** + * Surcharge de la m\xE9thode pour pouvoir sauvegarder les pr\xE9f\xE9rences. + */ + public void exit() { + confirmExit(); + } + + /** + * Confirmation de la sortie avec ou sans sauvegarde. + */ + public boolean confirmExit() { + if (!FudaaStartupExitPreferencesPanel.isExitConfirmed() || + question(BuResource.BU.getString("Quitter"), BuResource.BU + .getString("Voulez-vous vraiment quitter ce logiciel ?"))) { + return saveAndCloseProjet(new Runnable() { + // Lanc\xE9 apr\xE8s la sauvegarde, si op\xE9ration de sauvegarde concluante ou si pas de sauvegarde demand\xE9e. + public void run() { + savePreferencesAndTerminate(); + } + }); + } + return true; + } + + public void create() { + saveAndCloseProjet(new Runnable() { + public void run() { + createProject(true); + } + }); + } + + public void close() { + saveAndCloseProjet(null); + updateActionsState(); + } + + protected String getAideIndexUrl() { + return getHelpDir() + "modeleur/index.html"; + } + + public BuPreferences getApplicationPreferences() { + return null; + } + + public BuInformationsSoftware getInformationsSoftware() { + return informationsSoftware(); + } + + /** + * Ouvre un nouveau projet. Peut demander la sauvegarde du projet pr\xE9c\xE9demment ouvert si + * existant. + * @param _f Le fichier projet \xE0 ouvrir. null, si le fichier doit etre choisi par l'utilisateur. + */ + public void ouvrir(final File _f) { + if (isProjectModified()) { + saveAndCloseProjet(new Runnable() { + + public void run() { + ouvrir(_f); + } + }); + return; + } + + closeProject(); + + final File f = CtuluLibFile.exists(_f) ? _f : chooseFile(false); + if (f==null) return; // Abandon utilisateur. + + createProject(false); + setGlassPaneStop(); + new CtuluRunnable(BuResource.BU.getString("Ouvrir"), MdlImplementation.this) { + + public boolean run(ProgressionInterface _proj) { + project_.setOpening(true); + Runnable r = null; + try { + r = FudaaSaveLib.restoreFille(MdlImplementation.this, currentFrame_, _proj, f); + project_.setParamFile(f); + + } finally { + + final Runnable swingRun = r; + BuLib.invokeLater(new Runnable() { + + public void run() { + try { + addInternalFrame(currentFrame_); + if (swingRun != null) swingRun.run(); + + // le projet a ete install\xE9: on enl\xE8ve les flag de modification + project_.setOpening(false); + project_.setSaved(); + if (swingRun == null) { + MdlImplementation.this.warn(BuResource.BU.getString("Ouvrir"), FSigResource.FSIG + .getString("Le projet n'a pas \xE9t\xE9 ouvert!")); + } + else { + updateRecentFiles(project_.getParamsFile()); + } + } finally { + unsetGlassPaneStop(); + + } + } + + }); + + } + return r != null; + } + }.run(); + } + + public void save() { + if (project_.getParamsFile() != null) { + CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) { + + public boolean run(ProgressionInterface _proj) { + if (FSigProjectPersistence.saveProject(MdlImplementation.this, project_, project_.getParamsFile(), _proj)) { + updateRecentFiles(project_.getParamsFile()); + return true; + } + return false; + } + }; + act.setAfterRunnable(getSaveSwingRunnable(project_.getParamsFile()), true); + act.run(); + } else + saveAs(); + } + + public void saveAs() { + final File f = chooseNewFile(true); + if (f == null) return; + + CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) { + + public boolean run(ProgressionInterface _proj) { + if (FSigProjectPersistence.saveProject(MdlImplementation.this, project_, f, _proj)) { + updateRecentFiles(f); + return true; + } + return false; + } + }; + act.setAfterRunnable(getSaveSwingRunnable(f), true); + act.run(); + } + + protected boolean isProjectModified() { + return project_ != null + && (project_.getProjectState().isParamsModified() || project_.getProjectState().isUIModified()); + } + + public void importProject() { + MdlProjectImportPanel pn=new MdlProjectImportPanel(); + if (CtuluDialogPanel.isOkResponse(pn.afficheModale(getFrame(), "Import d'un projet"))) { + FudaaSaveZipLoader loader = null; + try { + loader = pn.getLoader(); + final FudaaSaveZipLoader finalLoader = loader; + final CtuluTaskDelegate createTask = createTask("Import d'un projet"); +// FIXME BM: Suppression de la tache dans un thread diff\xE9rent, car l'appli se bloque +// Probable pb de deadlock. +// createTask.start(new Runnable() { +// public void run() { + FudaaSaveLib.restoreAndLaunch(MdlImplementation.this, currentFrame_, createTask.getStateReceiver(), finalLoader); +// } +// }); + } catch (final IOException _evt) { + FuLog.error(_evt); + + } + } + } + + /** + * Dans le thread swing.... + * + * @param _relaunch l'exe a lancer apr\xE8s: si l'utilisateur a accept\xE9 la fermeture du projet + */ + public boolean saveAndCloseProjet(final Runnable _relaunch) { + final Runnable r = new Runnable() { + + public void run() { + closeProject(); + if (_relaunch != null) _relaunch.run(); + } + }; + boolean save = false; + if (isProjectModified()) { + final int i = CtuluLibDialog.confirmExitIfProjectisModified(getFrame()); + // l'utilisateur veut annuler l'op\xE9ration + if (i == JOptionPane.CANCEL_OPTION) { + FuLog.debug("FSI: close operation cancelled by user"); + return false; + } + save = (i == JOptionPane.OK_OPTION); + } + + FuLog.debug("FSI: close operation accepted and save option= " + save); + // pas de sauvegarde: on lance l'op\xE9ration suivante: + if (!save) { + r.run(); + } else { + // on initilialise le fichier de dest si n\xE9cessaire + setFileIfNeeded(); + if (project_.getParamsFile()==null) return false; + CtuluRunnable act = new CtuluRunnable(FudaaSaveLib.getActionSaveTitle(), this) { + + public boolean run(ProgressionInterface _prog) { + // le fichier peut etre null si l'utilisateur a refuse de pr\xE9ciser un fichier + // dans ce cas, on ne sauvegarde pas. + if (project_.getParamsFile() != null) { + setGlassPaneStop(); + FSigProjectPersistence.saveProject(MdlImplementation.this, project_, + project_.getParamsFile(), _prog); + updateRecentFiles(project_.getParamsFile()); + + unsetGlassPaneStop(); + return true; + } + else return false; + } + }; + // le r sera lance apres et dans le thread swing + act.setAfterRunnable(r, true); + act.run(); + return false; + } + return true; + } + + protected Runnable getSaveSwingRunnable(final File _paramFile) { + return new Runnable() { + + public void run() { + if (_paramFile != null) project_.setParamFile(_paramFile); + project_.setSaved(); + + } + }; + } + + /** + * Methode surcharg\xE9e pour les panneau de pr\xE9f\xE9rence. + */ + protected void buildPreferences(final List _frAddTab) { + _frAddTab.add(new BuUserPreferencesPanel(this)); + _frAddTab.add(new BuLanguagePreferencesPanel(this)); + _frAddTab.add(new BuDesktopPreferencesPanel(this)); + _frAddTab.add(new FudaaStartupExitPreferencesPanel(true)); + _frAddTab.add(new FudaaLookPreferencesPanel(this)); + _frAddTab.add(new BuBrowserPreferencesPanel(this)); + _frAddTab.add(new EbliMiseEnPagePreferencesPanel()); + } + + /** + * Cr\xE9ation du panneau des taches, dans la colonne de droite. + */ + protected void buildTaskView() { + final BuMainPanel mp = getMainPanel(); + final BuColumn lc = mp.getLeftColumn(); + lc.setFocusable(false); + final BuColumn rc = mp.getRightColumn(); + rc.setFocusable(false); + lc.setBorder(null); + // rc.setBorder(new EmptyBorder(0,2,0,2)); + BuTaskView taches = new BuTaskView(); + taches.setToolTipText(TrResource.getS("Les t\xE2ches en cours")); + final BuScrollPane sp = new BuScrollPane(taches); + sp.setPreferredSize(new Dimension(150, 80)); + sp.setToolTipText(TrResource.getS("Les t\xE2ches en cours")); + rc.addToggledComponent(BuResource.BU.getString("T\xE2ches"), "TOGGLE_TACHE", BuResource.BU.getToolIcon("tache"), sp, + true, this).setToolTipText(TrResource.getS("Cacher/Afficher les t\xE2ches")); + mp.setTaskView(taches); + } + + /** + * Sauvegarde des pr\xE9f\xE9rences de l'appli \xE0 la sortie. + * + * Remarque importante : Certaines infos sauv\xE9es par cette m\xE9thode sont relues + * par d'autres applications Fudaa, qui risquent alors de s'afficher de facon + * inattendue. + */ + protected void savePreferencesAndTerminate() { + final Point p = getFrame().getLocation(); + final Dimension d = getFrame().getSize(); + BuPreferences.BU.putIntegerProperty("window.x", p.x); + BuPreferences.BU.putIntegerProperty("window.y", p.y); + BuPreferences.BU.putIntegerProperty("window.w", d.width); + BuPreferences.BU.putIntegerProperty("window.h", d.height); + BuPreferences.BU.writeIniFile(); + + BuRegistry.unregister(this.getFrame()); + } + + /** + * Mise en place de l'application ava,nt affichage. + */ + public void init() { + super.init(); + // Pour forcer l'activation du command listener. + getUndoCmdListener(); + + removeUnusedActions(); + final BuMenuBar mb = getMainMenuBar(); + // on enleve le menu des look and feel : moche car tout n'est pas mis a jour +/* Issu de Fudaa-Prepro + final BuMenu mAide = (BuMenu) b.getMenu("MENU_AIDE"); + + mAide.add(TrLib.buildAideContextItem(this), 0); + TrLib.addJavawsForJnlp(mAide); + TrLib.addJava3DJMFTest(mAide);*/ + + setEnabledForAction("QUITTER", true); + setEnabledForAction("PREFERENCE", true); + setEnabledForAction("CREER", true); + setEnabledForAction("OUVRIR", true); + setEnabledForAction("IMPORTER", true); + setEnabledForAction("EXPORTER", true); + + BuMenuRecentFiles mr= (BuMenuRecentFiles)mb.getMenu("REOUVRIR"); + if (mr != null) { + mr.setPreferences(MdlPreferences.MDL); + mr.setResource(MdlResource.MDL); + mr.setEnabled(true); + } + +/* setEnabledForAction("MAJ", true); + setEnabledForAction("SEND_COMMENT", true); + setEnabledForAction("LAUNCH_JAVAWS", true); + final BuMenu mFichier = (BuMenu) b.getMenu("MENU_FICHIER"); + mFichier.addMenuItem(TrResource.getS("Fermer toutes les applications"), "CLOSE_ALL", BuResource.BU + .getIcon("fermer"), true, 0); + final BuToolBar tb = getMainToolBar(); + if (!isSupervisor()) { + + tb.addToolButton(TrResource.getSupervisorName(), TrResource.getS("ouvrir le superviseur"), "SUPERVISEUR", + TrResource.getSupervisorIcon(), true).setVisible(true); + + }*/ + // les menus exporter et importer sont construit dynamiquement +// b.getMenu(getExporterCmd()).addItemListener(this); + BuMenu mmImport = (BuMenu) mb.getMenu("IMPORTER"); + BuMenu mnExport = (BuMenu) mb.getMenu("EXPORTER"); + +// menu.addMenuItem(FSigImageImportAction.getCommonTitle(), "IMPORT_IMAGE", FSigImageImportAction.getCommonImage(), +// this).setEnabled(false); + mmImport.addMenuItem(FudaaLib.getS("Importer un projet"), "IMPORT_PROJECT", BuResource.BU.getMenuIcon("importer"), this) + .setEnabled(false); +// menu.addItemListener(this); + setEnabledForAction("IMPORT_PROJECT", true); + mmImport.setEnabled(true); + + BuMenuItem itExportData = new BuMenuItem(); + super.initExportDataButton(itExportData); + mnExport.add(itExportData); + +/* setEnabledForAction("RANGERICONES", true); + if (!isSupervisor()) { + final JComponent cp = getMainPanel().getMiddleComponent(); + if (cp instanceof JScrollPane) { + ScrollPaneSelector.installScrollPaneSelector((JScrollPane) cp); + } + }*/ + buildTaskView(); + } + + /** + * Suppression des commandes par d\xE9faut dans Fudaa. + */ + protected void removeUnusedActions() { +/* Issu de Fudaa-Prepro + final BuMenu r = (BuMenu) getMainMenuBar().getMenu("MENU_EDITION"); + if (r != null) { + r.removeAll(); + r.addMenuItem(BuResource.BU.getString("D\xE9faire"), "DEFAIRE", false, KeyEvent.VK_Z); + r.addMenuItem(BuResource.BU.getString("Refaire"), "REFAIRE", false).setAccelerator( + KeyStroke.getKeyStroke(KeyEvent.VK_Z, InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK)); + // normalement Ctrl-Y + // r.addSeparator(); + // + r.addMenuItem(BuResource.BU.getString("Copier"), "COPIER", false, KeyEvent.VK_C); + r.addMenuItem(BuResource.BU.getString("Couper"), "COUPER", false, KeyEvent.VK_X); + r.addMenuItem(BuResource.BU.getString("Coller"), "COLLER", false, KeyEvent.VK_V); + // r.addMenuItem(BuResource.BU.getString("Dupliquer" ),"DUPLIQUER" ,false) + // .setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,KeyEvent.CTRL_MASK|KeyEvent.SHIFT_MASK)); + r.addSeparator(); + FSigLib.addSelectionAction(r, null); + // r.addMenuItem(BuResource.BU.getString("Remplacer..." ),"REMPLACER" + // ,false,KeyEvent.VK_R); + r.addSeparator(); + r.addMenuItem(BuResource.BU.getString("Pr\xE9f\xE9rences"), "PREFERENCE", false, KeyEvent.VK_F2); + addConsoleMenu(r); + final BuToolBar tb = getMainToolBar(); + BuActionRemover.removeAction(tb, "COUPER"); + BuActionRemover.removeAction(tb, "COLLER"); + BuActionRemover.removeAction(tb, "COPIER"); + BuActionRemover.removeAction(tb, "DUPLIQUER"); + BuActionRemover.removeAction(tb, "RANGERICONES"); + // BuActionRemover.removeAction(tb, "TOUTSELECTIONNER"); + BuActionRemover.removeAction(tb, "REMPLACER"); + + }*/ + /* + * removeAction("COUPER"); removeAction("COLLER"); removeAction("COPIER"); removeAction("DUPLIQUER"); + * removeAction("TOUTSELECTIONNER"); removeAction("REMPLACER"); + */ + removeAction("ASSISTANT"); +// removeAction("ASTUCE"); + removeAction("POINTEURAIDE"); + removeAction("INDEX_THEMA"); + removeAction("INDEX_ALPHA"); + removeAction("PROPRIETE"); + removeAction("PLEINECRAN"); + removeAction("VISIBLE_LEFTCOLUMN"); + } + + public void start() { + super.start(); + super.addFrameListLeft(); + createProject(true); + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bma...@us...> - 2008-11-12 10:08:02
|
Revision: 4202 http://fudaa.svn.sourceforge.net/fudaa/?rev=4202&view=rev Author: bmarchan Date: 2008-11-12 10:07:56 +0000 (Wed, 12 Nov 2008) Log Message: ----------- Chgt de date pour la version. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java 2008-11-12 09:53:38 UTC (rev 4201) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java 2008-11-12 10:07:56 UTC (rev 4202) @@ -87,7 +87,7 @@ static { isMdl_.name = "Modeleur"; isMdl_.version = "0.07"; - isMdl_.date = "2008-11-06"; + isMdl_.date = "2008-11-12"; isMdl_.rights = "Tous droits r\xE9serv\xE9s. CETMEF (c)1999-2008"; isMdl_.license = "GPL2"; isMdl_.languages = "fr,en"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-12 09:53:42
|
Revision: 4201 http://fudaa.svn.sourceforge.net/fudaa/?rev=4201&view=rev Author: emmanuel_martin Date: 2008-11-12 09:53:38 +0000 (Wed, 12 Nov 2008) Log Message: ----------- bugfix : concernant la palette de visibilit?\195?\169 Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java 2008-11-12 09:11:09 UTC (rev 4200) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java 2008-11-12 09:53:38 UTC (rev 4201) @@ -393,7 +393,8 @@ if(indexTitre!=-1&&indexVisibility!=-1) for(int j=0;j<zone.getNbGeometries();j++) if(!onlyInvisible_||zone.getValue(indexVisibility, j)==GISAttributeConstants.ATT_VAL_FALSE) - rows.add(new Object[]{zone.getValue(indexTitre, j), zone.getValue(indexVisibility, j).equals(GISAttributeConstants.ATT_VAL_TRUE)?true:false, model, scene_.layerId2SceneId(calques_[i], j)}); + if(zone.getModel(indexVisibility).getSize()<j&&zone.getModel(indexTitre).getSize()<j) + rows.add(new Object[]{zone.getValue(indexTitre, j), zone.getValue(indexVisibility, j).equals(GISAttributeConstants.ATT_VAL_TRUE)?true:false, model, scene_.layerId2SceneId(calques_[i], j)}); } } table_.setModel(new GeomTableModel(new String[]{EbliLib.getS("Nom"), EbliLib.getS("Visibilit\xE9")}, rows.toArray(new Object[0][]))); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-12 09:11:14
|
Revision: 4200 http://fudaa.svn.sourceforge.net/fudaa/?rev=4200&view=rev Author: emmanuel_martin Date: 2008-11-12 09:11:09 +0000 (Wed, 12 Nov 2008) Log Message: ----------- bugfix : correction concernant la palette de visibilit?\195?\169 et le undo Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/collection/CtuluListObject.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/collection/CtuluListObject.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/collection/CtuluListObject.java 2008-11-10 12:31:02 UTC (rev 4199) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/collection/CtuluListObject.java 2008-11-12 09:11:09 UTC (rev 4200) @@ -19,8 +19,6 @@ import org.fudaa.ctulu.CtuluCommandContainer; import org.fudaa.ctulu.CtuluLibArray; -import com.vividsolutions.jts.geom.Geometry; - /** * Une classe permettant de gerer un vecteur de double. Fonctionnalites sup: <br> * Undo/Redo Max/min enregistrer automatiquement @@ -204,6 +202,7 @@ */ for(int i=idx_.length-1;i>=0;i--) internalRemove(idx_[i]); + fireObjectRemoved(-1, null); } public void undo() { @@ -215,6 +214,7 @@ */ for(int i=0;i<idx_.length;i++) internalAdd(idx_[i], oldValues_[i]); + fireObjectAdded(-1, null); } } @@ -295,6 +295,7 @@ protected void fireObjectAdded(int _newIdx, Object _newGeom) { // System.err.println("overload " + getClass().getName() + ".firePointAdded"); + fireObjectChanged(_newIdx, _newGeom); } protected void fireObjectChanged(int _oldIdx, Object _oldGeom) { @@ -303,10 +304,12 @@ protected void fireObjectRemoved(int _oldIdx, Object _oldGeom) { // System.err.println("overload " + getClass().getName() + ".firePointRemoved"); + fireObjectChanged(_oldIdx, _oldGeom); } protected void fireObjectModified(int _idx, Object _geom) { // System.err.println("overload " + getClass().getName() + ".firePointStructureChanged"); + fireObjectChanged(_idx, _geom); } protected void internalAdd(final Object _v) { @@ -562,12 +565,12 @@ } if (idx + idxOldV == initSize) { if (commandComposite != null) { - internActionPointRemoved(iToRemove, commandComposite); if (_forceMemento || idxOldV > 10) { commandComposite.addCmd(new CommandRemoveMemento(memento, iToRemove)); } else { commandComposite.addCmd(new CommandRemoveDangerous(oldV, iToRemove)); } + internActionPointRemoved(iToRemove, commandComposite); } fireObjectRemoved(-1, null); if (_cmd != null && commandComposite != null) { Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java 2008-11-10 12:31:02 UTC (rev 4199) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java 2008-11-12 09:11:09 UTC (rev 4200) @@ -220,19 +220,22 @@ table_.getSelectionModel().addSelectionInterval(rowIndex, rowIndex); } else if(columnIndex==1){ - rows_[rowIndex][columnIndex]=value; - changeVisibility((Integer) rows_[rowIndex][3], (ZModeleEditable) rows_[rowIndex][2], (Boolean) rows_[rowIndex][1]); - // Dans le cas o\xF9 on n'affiche que les g\xE9om\xE9tries invisibles, on enl\xE8ve celle qu'on passe \xE0 visible. - if(onlyInvisible_&&((Boolean) rows_[rowIndex][1])==true){ - Object[][] newRows=new Object[rows_.length-1][]; - for(int i=0;i<rowIndex;i++) - newRows[i]=rows_[i]; - for(int i=rowIndex+1;i<rows_.length;i++) - newRows[i-1]=rows_[i]; - rows_=newRows; - fireTableDataChanged(); - if(selected) - table_.getSelectionModel().addSelectionInterval(rowIndex, rowIndex); + if (rows_[rowIndex][columnIndex]!=value) { + rows_[rowIndex][columnIndex]=value; + changeVisibility((Integer)rows_[rowIndex][3], (ZModeleEditable)rows_[rowIndex][2], (Boolean)rows_[rowIndex][1]); + // Dans le cas o\xF9 on n'affiche que les g\xE9om\xE9tries invisibles, on + // enl\xE8ve celle qu'on passe \xE0 visible. + if (onlyInvisible_&&((Boolean)rows_[rowIndex][1])==true) { + Object[][] newRows=new Object[rows_.length-1][]; + for (int i=0; i<rowIndex; i++) + newRows[i]=rows_[i]; + for (int i=rowIndex+1; i<rows_.length; i++) + newRows[i-1]=rows_[i]; + rows_=newRows; + fireTableDataChanged(); + if (selected) + table_.getSelectionModel().addSelectionInterval(rowIndex, rowIndex); + } } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-10 12:31:07
|
Revision: 4199 http://fudaa.svn.sourceforge.net/fudaa/?rev=4199&view=rev Author: emmanuel_martin Date: 2008-11-10 12:31:02 +0000 (Mon, 10 Nov 2008) Log Message: ----------- bugfix : ?\195?\169crasement des valeurs d'attributs des g?\195?\169om?\195?\169tries (sauf la premi?\195?\168re) lors qu'un d?\195?\169placement vers un calque cible qui se trouve plus 'haut' dans l'arbre. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-10 10:22:58 UTC (rev 4198) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-10 12:31:02 UTC (rev 4199) @@ -7,7 +7,6 @@ */ package org.fudaa.fudaa.modeleur; -import java.awt.Dimension; import java.awt.Frame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -161,6 +160,10 @@ } } + // Nouveaux objets + Geometry[] newGeom=new Geometry[idxGeom.length]; + Object[][] newData=new Object[idxGeom.length][]; + // Ajout des nouveaux objets. for (int i=0; i<idxGeom.length; i++) { @@ -247,23 +250,26 @@ } } + // Enregistrement temporaire des data + newData[i]=datadest; + // La g\xE9om\xE9trie - if (mdldest instanceof MdlModel2dMultiPoint) { - Geometry gn=GISGeometryFactory.INSTANCE.createMultiPoint(geoms[i].getCoordinates()); - coldest.addGeometry(gn,datadest,cmp); - } + if (mdldest instanceof MdlModel2dMultiPoint) + newGeom[i]=GISGeometryFactory.INSTANCE.createMultiPoint(geoms[i].getCoordinates()); else if (mdldest instanceof MdlModel2dLine) { - Geometry gn; CoordinateSequence coordSeq=((GISCoordinateSequenceContainerInterface) geoms[i]).getCoordinateSequence(); boolean isFerme=coordSeq.getCoordinate(0).equals(coordSeq.getCoordinate(coordSeq.size()-1)); if((calque.canAddForme(DeForme.LIGNE_BRISEE)&&!isFerme)||!calque.canAddForme(DeForme.POLYGONE)) - gn=GISLib.toPolyligne(coordSeq); + newGeom[i]=GISLib.toPolyligne(coordSeq); else - gn=GISLib.toPolygone(coordSeq); - coldest.addGeometry(gn,datadest,cmp); + newGeom[i]=GISLib.toPolygone(coordSeq); } } + // Ajout des nouvelles g\xE9om\xE9tries + for (int i=0; i<newGeom.length; i++) + coldest.addGeometry(newGeom[i], newData[i], cmp); + // Suppression des anciens. removeSelectedObjects(cmp); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-10 10:23:03
|
Revision: 4198 http://fudaa.svn.sourceforge.net/fudaa/?rev=4198&view=rev Author: emmanuel_martin Date: 2008-11-10 10:22:58 +0000 (Mon, 10 Nov 2008) Log Message: ----------- bugfix :"2 undo n?\195?\169c?\195?\169ssaires pour d?\195?\169faire une op?\195?\169ration de jonction de 2 semis." Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleMultiPointEditable.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleMultiPointEditable.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleMultiPointEditable.java 2008-11-07 16:42:07 UTC (rev 4197) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleMultiPointEditable.java 2008-11-10 10:22:58 UTC (rev 4198) @@ -9,17 +9,9 @@ import gnu.trove.TIntObjectIterator; -import java.awt.Frame; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; import java.util.ArrayList; import java.util.List; -import javax.swing.BorderFactory; -import javax.swing.JButton; -import javax.swing.JComponent; -import javax.swing.JDialog; -import javax.swing.JPanel; import javax.swing.table.AbstractTableModel; import org.fudaa.ctulu.CtuluAnalyze; @@ -37,7 +29,6 @@ import org.fudaa.ctulu.gis.GISAttributeModelDoubleArray; import org.fudaa.ctulu.gis.GISGeometryFactory; import org.fudaa.ctulu.gis.GISMultiPoint; -import org.fudaa.ctulu.gis.GISPolyligne; import org.fudaa.ctulu.gis.GISZoneCollection; import org.fudaa.ctulu.gis.GISZoneCollectionMultiPoint; import org.fudaa.ctulu.gui.CtuluTable; @@ -48,14 +39,11 @@ import org.fudaa.ebli.commun.EbliListeSelectionMultiInterface; import org.fudaa.ebli.palette.BPaletteInfo.InfoData; -import com.memoire.bu.BuBorderLayout; -import com.memoire.bu.BuLabel; import com.memoire.bu.BuTable; import com.memoire.fu.FuLog; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.CoordinateSequence; import com.vividsolutions.jts.geom.Geometry; -import com.vividsolutions.jts.geom.impl.CoordinateArraySequenceFactory; /** * Une implementation par defaut d'un mod\xE8le \xE9ditable pour des multipoints. @@ -868,7 +856,7 @@ } // Remplacement dans la collection. - if (getGeomData().addGeometry(GISGeometryFactory.INSTANCE.createMultiPoint(coord), dataSemis, _cmd)!=-1) { + if (getGeomData().addGeometry(GISGeometryFactory.INSTANCE.createMultiPoint(coord), dataSemis, cmp)!=-1) { geometries_.removeGeometries(_idxSemis, cmp); if (_cmd!=null) _cmd.addCmd(cmp.getSimplify()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 16:42:19
|
Revision: 4197 http://fudaa.svn.sourceforge.net/fudaa/?rev=4197&view=rev Author: emmanuel_martin Date: 2008-11-07 16:42:07 +0000 (Fri, 07 Nov 2008) Log Message: ----------- bugfix : plantage lorsque la palette de propri?\195?\169t?\195?\169s est ouverte et que l'on d?\195?\169place le groupe de calque contenant le calque selectionn?\195?\169. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/BCalquePaletteInfo.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/BCalquePaletteInfo.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/BCalquePaletteInfo.java 2008-11-07 16:25:18 UTC (rev 4196) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/BCalquePaletteInfo.java 2008-11-07 16:42:07 UTC (rev 4197) @@ -67,7 +67,9 @@ // Informations relatives aux calques switch (calqueWithGeometriesSelected_.size()) { case 0: - treeModel_.getSelectedCalque().fillWithInfo(tableModel_); + tableModel_.clear(); + if(treeModel_.getSelectedCalque()!=null) + treeModel_.getSelectedCalque().fillWithInfo(tableModel_); tableModel_.fireTableDataChanged(); break; case 1: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 16:25:29
|
Revision: 4196 http://fudaa.svn.sourceforge.net/fudaa/?rev=4196&view=rev Author: emmanuel_martin Date: 2008-11-07 16:25:18 +0000 (Fri, 07 Nov 2008) Log Message: ----------- bugfix : probl?\195?\168me de undo/redo non atomique avec la palette de propri?\195?\169t?\195?\169s Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleGeometryDefault.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleLigneBriseeDefault.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/palette/BPaletteInfo.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleGeometryDefault.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleGeometryDefault.java 2008-11-07 15:55:59 UTC (rev 4195) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleGeometryDefault.java 2008-11-07 16:25:18 UTC (rev 4196) @@ -8,23 +8,19 @@ package org.fudaa.ebli.calque.edition; import java.awt.Component; -import java.util.ArrayList; -import java.util.List; import javax.swing.JTable; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.TableCellRenderer; -import org.fudaa.ctulu.CtuluCommandManager; +import org.fudaa.ctulu.CtuluCommandContainer; import org.fudaa.ctulu.gis.GISAttributeConstants; import org.fudaa.ctulu.gis.GISAttributeInterface; import org.fudaa.ctulu.gis.GISCoordinateSequenceContainerInterface; import org.fudaa.ctulu.gis.GISZoneCollection; import org.fudaa.ctulu.gis.GISZoneCollectionGeometry; -import org.fudaa.ctulu.gis.GISZoneListener; import org.fudaa.ebli.calque.ZCalqueAffichageDonneesInterface; import org.fudaa.ebli.calque.ZModelGeometryListener; -import org.fudaa.ebli.calque.ZModelListener; import org.fudaa.ebli.calque.ZModeleDonnesAbstract; import org.fudaa.ebli.calque.ZModeleGeometry; import org.fudaa.ebli.commun.EbliLib; @@ -214,7 +210,7 @@ /* (non-Javadoc) * @see org.fudaa.ebli.palette.BPaletteInfo.ModifyPropertyInfo#modifyProperty(java.lang.String, java.lang.Object) */ - public void modifyProperty(String _key, Object _value, int[] _index, CtuluCommandManager _cmd) { + public void modifyProperty(String _key, Object _value, int[] _index, CtuluCommandContainer _cmd) { if (_index!=null) { // Recherche de l'attribut d\xE9fini par _key boolean found=false; Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleLigneBriseeDefault.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleLigneBriseeDefault.java 2008-11-07 15:55:59 UTC (rev 4195) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleLigneBriseeDefault.java 2008-11-07 16:25:18 UTC (rev 4196) @@ -15,7 +15,8 @@ import javax.swing.table.AbstractTableModel; import org.fudaa.ctulu.CtuluAnalyze; -import org.fudaa.ctulu.CtuluCommandManager; +import org.fudaa.ctulu.CtuluCommandComposite; +import org.fudaa.ctulu.CtuluCommandContainer; import org.fudaa.ctulu.CtuluLib; import org.fudaa.ctulu.CtuluLibString; import org.fudaa.ctulu.CtuluListSelectionInterface; @@ -352,8 +353,9 @@ /* (non-Javadoc) * @see org.fudaa.ebli.palette.BPaletteInfo.ModifyPropertyInfo#modifyProperty(java.lang.String, java.lang.Object) */ - public void modifyProperty(String _key, Object _value, final int[] _index, CtuluCommandManager _cmd) { - super.modifyProperty(_key, _value, _index, _cmd); + public void modifyProperty(String _key, Object _value, final int[] _index, CtuluCommandContainer _cmd) { + CtuluCommandComposite cmd=new CtuluCommandComposite(); + super.modifyProperty(_key, _value, _index, cmd); if (_index!=null&&_value!=null&&_key==CtuluLib.getS("Ferm\xE9")) { // Modification de la propri\xE9t\xE9 int[] indexPolylines=_index; @@ -368,9 +370,11 @@ else FuLog.error("ZModeleLigneBriseeDefault.modifyProperty : la valeur pour la propri\xE9t\xE9 'ferm\xE9' est inconnue donc intraitable."); // Remplacement de l'ancienne g\xE9om\xE9trie par la nouvelle - geometries_.setGeometry(indexPolyligne, newGeom, _cmd); + geometries_.setGeometry(indexPolyligne, newGeom, cmd); } } + if(_cmd!=null) + _cmd.addCmd(cmd.getSimplify()); } Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/palette/BPaletteInfo.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/palette/BPaletteInfo.java 2008-11-07 15:55:59 UTC (rev 4195) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/palette/BPaletteInfo.java 2008-11-07 16:25:18 UTC (rev 4196) @@ -25,6 +25,7 @@ import javax.swing.table.TableCellEditor; import javax.swing.table.TableCellRenderer; +import org.fudaa.ctulu.CtuluCommandContainer; import org.fudaa.ctulu.CtuluCommandManager; import org.fudaa.ctulu.gui.CtuluTableCellEditorProxy; import org.fudaa.ctulu.gui.CtuluValueEditorI; @@ -88,7 +89,7 @@ * est impl\xE9ment\xE9, permettant ainsi de r\xE9percuter les modification du tableau sur * l'objet concern\xE9. * @author Emmanuel MARTIN - * @version $Id:$ + * @version $Id$ */ public interface ModifyPropertyInfo { /** @@ -99,7 +100,7 @@ * @param _index l'information pass\xE9 en param\xE8tre du put * @param _cmd le gestionnaire de commande pour le undo/redo */ - void modifyProperty(String _key, Object _newValue, int[] _index, CtuluCommandManager _cmd); + void modifyProperty(String _key, Object _newValue, int[] _index, CtuluCommandContainer _cmd); } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 15:56:09
|
Revision: 4195 http://fudaa.svn.sourceforge.net/fudaa/?rev=4195&view=rev Author: emmanuel_martin Date: 2008-11-07 15:55:59 +0000 (Fri, 07 Nov 2008) Log Message: ----------- BugFix : Plantage lorsque l'on d?\195?\169place une g?\195?\169om?\195?\169trie ayant moins de 3 points dans un calque n'acceptant que les polygones. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 15:12:28 UTC (rev 4194) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 15:55:59 UTC (rev 4195) @@ -144,16 +144,23 @@ final CtuluCommandComposite cmp = new CtuluCommandComposite(FudaaLib.getS("D\xE9placer dans calque cible")); - // Controle qu'une bloc n'est pas constitu\xE9 que d'un point => Message d'erreur. - if (mdldest instanceof MdlModel2dLine) { + // Controle sur le nombre de point minimum + ZCalqueEditable calque=(ZCalqueEditable)getScene().getCalqueActif(); + if(calque.canAddForme(DeForme.POLYGONE)&&!calque.canAddForme(DeForme.LIGNE_BRISEE)) for (Geometry g : geoms) { + if (g.getNumPoints()<3) { + ui_.error(FudaaLib.getS("Vous ne pouvez pas d\xE9placer ces g\xE9om\xE9tries.\nUne au moins est constitu\xE9e de moins de 3 points.")); + return; + } + } + else if(calque.canAddForme(DeForme.LIGNE_BRISEE)) + for (Geometry g : geoms) { if (g.getNumPoints()<2) { - ui_.error(FudaaLib.getS("Vous ne pouvez pas d\xE9placer ces g\xE9om\xE9tries.\nUne au moins n'est constitu\xE9e que d'un point!")); + ui_.error(FudaaLib.getS("Vous ne pouvez pas d\xE9placer ces g\xE9om\xE9tries.\nUne au moins est constitu\xE9e de moins de 2 points.")); return; } } - } - + // Ajout des nouveaux objets. for (int i=0; i<idxGeom.length; i++) { @@ -249,7 +256,6 @@ Geometry gn; CoordinateSequence coordSeq=((GISCoordinateSequenceContainerInterface) geoms[i]).getCoordinateSequence(); boolean isFerme=coordSeq.getCoordinate(0).equals(coordSeq.getCoordinate(coordSeq.size()-1)); - ZCalqueEditable calque=(ZCalqueEditable)getScene().getCalqueActif(); if((calque.canAddForme(DeForme.LIGNE_BRISEE)&&!isFerme)||!calque.canAddForme(DeForme.POLYGONE)) gn=GISLib.toPolyligne(coordSeq); else This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 15:12:33
|
Revision: 4194 http://fudaa.svn.sourceforge.net/fudaa/?rev=4194&view=rev Author: emmanuel_martin Date: 2008-11-07 15:12:28 +0000 (Fri, 07 Nov 2008) Log Message: ----------- bugfix : Demande du Z lors de la jonction de deux polylignes m?\195?\170me si leur z est identique. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleLigneBriseeEditable.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleLigneBriseeEditable.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleLigneBriseeEditable.java 2008-11-07 14:30:46 UTC (rev 4193) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZModeleLigneBriseeEditable.java 2008-11-07 15:12:28 UTC (rev 4194) @@ -443,7 +443,7 @@ // Cas particulier de l'attribut Z, demande de la valeur \xE0 l'utilisateur si non identique entre les deux polylignes else if (geometries_.getModel(att).getAttribute().getID().equals("Z")) { // Valeurs identiques - if(geometries_.getModel(att).getObjectValueAt(_ligneIdx[0])==geometries_.getModel(att).getObjectValueAt(_ligneIdx[1])) + if(geometries_.getModel(att).getObjectValueAt(_ligneIdx[0]).equals(geometries_.getModel(att).getObjectValueAt(_ligneIdx[1]))) dataline[att]=geometries_.getModel(att).getAttribute().createDataForGeom(geometries_.getModel(att).getObjectValueAt(_ligneIdx[0]),1); // Valeurs diff\xE9rentes => demande \xE0 l'utilisateur else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 14:30:53
|
Revision: 4193 http://fudaa.svn.sourceforge.net/fudaa/?rev=4193&view=rev Author: emmanuel_martin Date: 2008-11-07 14:30:46 +0000 (Fri, 07 Nov 2008) Log Message: ----------- Ajout du nom dans la popup de demande du Z lors du d?\195?\169placement de g?\195?\169om?\195?\169tries dans un calque diff?\195?\169rent Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 14:06:27 UTC (rev 4192) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 14:30:46 UTC (rev 4193) @@ -7,6 +7,7 @@ */ package org.fudaa.fudaa.modeleur; +import java.awt.Dimension; import java.awt.Frame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -185,8 +186,8 @@ // Utilisation d'une fen\xEAtre modale pour l'obtension du Z. class myDialogModal extends JDialog implements ActionListener{ private JComponent text_; - public myDialogModal(Frame _frame){ - super(_frame, MdlResource.MDL.getString("Choix du Z"), true); + public myDialogModal(Frame _frame, String _title){ + super(_frame, _title, true); // Position & resizable setLocation(_frame.getLocation().x+_frame.getSize().width/2, _frame.getLocation().y+_frame.getSize().height/2); setResizable(false); @@ -210,7 +211,14 @@ return (Double) GISAttributeConstants.BATHY.getEditor().getValue(text_); } } - myDialogModal dialog =new myDialogModal(calquePanel_.getDefaultGisEditor().getFrame()); + // Pour le titre de la popup, on met le titre de la geom si possible + String titre=MdlResource.MDL.getString("Nom : "); + if(colsrc.getIndiceOf(GISAttributeConstants.TITRE)!=-1) + titre+=(String) colsrc.getValue(colsrc.getIndiceOf(GISAttributeConstants.TITRE), getScene().sceneId2LayerId(idxGeom[i])); + else + titre+=MdlResource.MDL.getString("sans nom"); + // Instanciation de la popup + myDialogModal dialog =new myDialogModal(calquePanel_.getDefaultGisEditor().getFrame(), titre); dialog.setVisible(true); datadest[iatt]=dialog.getValue(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 14:06:36
|
Revision: 4192 http://fudaa.svn.sourceforge.net/fudaa/?rev=4192&view=rev Author: emmanuel_martin Date: 2008-11-07 14:06:27 +0000 (Fri, 07 Nov 2008) Log Message: ----------- annulation temporaire du commit 4190 pour la version 0.07 Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java 2008-11-07 14:00:00 UTC (rev 4191) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java 2008-11-07 14:06:27 UTC (rev 4192) @@ -44,10 +44,6 @@ GISCollection.this.fireGeometryAdded(_newIdx, (Geometry) _newGeom); } - protected void fireObjectChanged(int _idx, Object _geom){ - fireObjectModified(_idx, _geom); - } - protected void fireObjectModified(int _oldIdx, Object _oldGeom) { GISCollection.this.geometryChanged(); GISCollection.this.fireGeometryModified(_oldIdx, (Geometry) _oldGeom); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 14:00:03
|
Revision: 4191 http://fudaa.svn.sourceforge.net/fudaa/?rev=4191&view=rev Author: emmanuel_martin Date: 2008-11-07 14:00:00 +0000 (Fri, 07 Nov 2008) Log Message: ----------- bugfix : Plantage quand deux objets sont s?\195?\169lectionn?\195?\169s, modifi?\195?\169s par le panneau de propri?\195?\169t?\195?\169, puis clic sur un nouvel objet. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gui/CtuluTableCellEditorProxy.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gui/CtuluTableCellEditorProxy.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gui/CtuluTableCellEditorProxy.java 2008-11-07 12:13:47 UTC (rev 4190) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gui/CtuluTableCellEditorProxy.java 2008-11-07 14:00:00 UTC (rev 4191) @@ -153,9 +153,9 @@ * Supprime tout les editeurs. */ public void clear(){ - mapEditors_.clear(); if(editable_) stopCellEditing(); + mapEditors_.clear(); editable_=false; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 12:13:51
|
Revision: 4190 http://fudaa.svn.sourceforge.net/fudaa/?rev=4190&view=rev Author: emmanuel_martin Date: 2008-11-07 12:13:47 +0000 (Fri, 07 Nov 2008) Log Message: ----------- bugfix : correction d'une suppression abusive d'un m?\195?\169thode lors de la fusion de REPLACE et STRUCTURE_CHANGED Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java 2008-11-07 11:06:41 UTC (rev 4189) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java 2008-11-07 12:13:47 UTC (rev 4190) @@ -44,6 +44,10 @@ GISCollection.this.fireGeometryAdded(_newIdx, (Geometry) _newGeom); } + protected void fireObjectChanged(int _idx, Object _geom){ + fireObjectModified(_idx, _geom); + } + protected void fireObjectModified(int _oldIdx, Object _oldGeom) { GISCollection.this.geometryChanged(); GISCollection.this.fireGeometryModified(_oldIdx, (Geometry) _oldGeom); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bma...@us...> - 2008-11-07 11:06:49
|
Revision: 4189 http://fudaa.svn.sourceforge.net/fudaa/?rev=4189&view=rev Author: bmarchan Date: 2008-11-07 11:06:41 +0000 (Fri, 07 Nov 2008) Log Message: ----------- Chgt mineur sur nom g?\195?\169om?\195?\169trie r?\195?\169cup?\195?\169r?\195?\169e. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/dodico/src/org/fudaa/dodico/rubar/io/RubarStReader.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/dodico/src/org/fudaa/dodico/rubar/io/RubarStReader.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/dodico/src/org/fudaa/dodico/rubar/io/RubarStReader.java 2008-11-07 10:48:51 UTC (rev 4188) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/dodico/src/org/fudaa/dodico/rubar/io/RubarStReader.java 2008-11-07 11:06:41 UTC (rev 4189) @@ -118,7 +118,7 @@ if (str != null) { lignes.add(str); if ("".equals(name)) { - names.add(CtuluLib.getS(isSt_?"P":"_N")+((GISGeometry)str).getId()); + names.add(CtuluLib.getS(isSt_?"P":"N")+((GISGeometry)str).getId()); } else { names.add(name); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 10:48:54
|
Revision: 4188 http://fudaa.svn.sourceforge.net/fudaa/?rev=4188&view=rev Author: emmanuel_martin Date: 2008-11-07 10:48:51 +0000 (Fri, 07 Nov 2008) Log Message: ----------- Bugfix : undo/redo se fait en plusieurs fois sur le rafinement et la d?\195?\169cimation Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/layer/MdlModel2dLine.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 10:43:51 UTC (rev 4187) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 10:48:51 UTC (rev 4188) @@ -265,6 +265,8 @@ if (pnDecimation_==null) pnDecimation_=new MdlDecimationPanel(); + CtuluCommandComposite cmd=new CtuluCommandComposite(); + String title; if (getScene().isAtomicMode()) title=MdlResource.MDL.getString("D\xE9cimation entre 2 sommets"); @@ -294,12 +296,14 @@ if (mdld instanceof MdlModel2dLine) { MdlModel2dLine mdl=(MdlModel2dLine)mdld; mdl.decimate(getScene().sceneId2LayerId(idxGeom), idxdeb, idxfin, pnDecimation_.isNbPtsGiven() ? 0:1, pnDecimation_ - .getNbPts(), pnDecimation_.getDistance(), getMng()); + .getNbPts(), pnDecimation_.getDistance(), cmd); } super.getScene().clearSelection(); } } + if(getMng()!=null) + getMng().addCmd(cmd.getSimplify()); } /** @@ -309,6 +313,8 @@ if (pnRaffinement_==null) pnRaffinement_=new MdlRefinementPanel(); + CtuluCommandComposite cmd=new CtuluCommandComposite(); + String title; if (getScene().isAtomicMode()) title=MdlResource.MDL.getString("Raffinement entre 2 sommets"); @@ -338,12 +344,14 @@ if (mdld instanceof MdlModel2dLine) { MdlModel2dLine mdl=(MdlModel2dLine)mdld; mdl.refine(getScene().sceneId2LayerId(idxGeom), idxdeb, idxfin, pnRaffinement_.isNbPtsGiven() ? 0:1, pnRaffinement_ - .getNbPts(), pnRaffinement_.getDistance(), getMng()); + .getNbPts(), pnRaffinement_.getDistance(), cmd); } super.getScene().clearSelection(); } } + if(getMng()!=null) + getMng().addCmd(cmd.getSimplify()); } /** Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/layer/MdlModel2dLine.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/layer/MdlModel2dLine.java 2008-11-07 10:43:51 UTC (rev 4187) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/layer/MdlModel2dLine.java 2008-11-07 10:48:51 UTC (rev 4188) @@ -11,6 +11,7 @@ import java.util.ArrayList; +import org.fudaa.ctulu.CtuluCommandComposite; import org.fudaa.ctulu.CtuluCommandContainer; import org.fudaa.ctulu.CtuluListSelection; import org.fudaa.ctulu.CtuluListSelectionInterface; @@ -77,9 +78,12 @@ } if (coords.length>=2) { GISPolyligne poly=(GISPolyligne)GISGeometryFactory.INSTANCE.createLineString(coords); - int idx=getGeomData().addGeometry(poly, null, _cmd); + CtuluCommandComposite cmd=new CtuluCommandComposite(); + int idx=getGeomData().addGeometry(poly, null, cmd); if (idx!=-1) - setGeomModif(idx, _cmd); + setGeomModif(idx, cmd); + if(_cmd!=null) + _cmd.addCmd(cmd.getSimplify()); return true; } else @@ -177,8 +181,11 @@ } CtuluListSelectionInterface ids = new CtuluListSelection(list.toNativeArray()); - getGeomData().removeAtomics(_idxGeom, ids, null, _cmd); // L'UI est null, le cas ou moins de 2 points ne peut pas arriver. - setGeomModif(_idxGeom, _cmd); // Modification de l'etat de la g\xE9om\xE9trie + CtuluCommandComposite cmd=new CtuluCommandComposite(); + getGeomData().removeAtomics(_idxGeom, ids, null, cmd); // L'UI est null, le cas ou moins de 2 points ne peut pas arriver. + setGeomModif(_idxGeom, cmd); // Modification de l'etat de la g\xE9om\xE9trie + if(_cmd!=null) + _cmd.addCmd(cmd.getSimplify()); return true; } @@ -238,8 +245,11 @@ } GISPolyligne newgeom=(GISPolyligne)GISGeometryFactory.INSTANCE.createLineString((Coordinate[])coords.toArray(new Coordinate[0])); - getGeomData().setGeometry(_idxGeom, newgeom, _cmd); - setGeomModif(_idxGeom, _cmd); // Modification de l'etat de la g\xE9om\xE9trie + CtuluCommandComposite cmd=new CtuluCommandComposite(); + getGeomData().setGeometry(_idxGeom, newgeom, cmd); + setGeomModif(_idxGeom, cmd); // Modification de l'etat de la g\xE9om\xE9trie + if(_cmd!=null) + _cmd.addCmd(cmd.getSimplify()); return true; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bma...@us...> - 2008-11-07 10:43:55
|
Revision: 4187 http://fudaa.svn.sourceforge.net/fudaa/?rev=4187&view=rev Author: bmarchan Date: 2008-11-07 10:43:51 +0000 (Fri, 07 Nov 2008) Log Message: ----------- Chgt intitul?\195?\169 titre commande. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 10:01:45 UTC (rev 4186) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 10:43:51 UTC (rev 4187) @@ -141,7 +141,7 @@ geoms[i]=(Geometry)getScene().getObject(idxGeom[i]); } - final CtuluCommandComposite cmp = new CtuluCommandComposite(FudaaLib.getS("D\xE9placement de g\xE9om\xE9tries")); + final CtuluCommandComposite cmp = new CtuluCommandComposite(FudaaLib.getS("D\xE9placer dans calque cible")); // Controle qu'une bloc n'est pas constitu\xE9 que d'un point => Message d'erreur. if (mdldest instanceof MdlModel2dLine) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 10:01:49
|
Revision: 4186 http://fudaa.svn.sourceforge.net/fudaa/?rev=4186&view=rev Author: emmanuel_martin Date: 2008-11-07 10:01:45 +0000 (Fri, 07 Nov 2008) Log Message: ----------- bugfix : Palette d'?\195?\169dition ouverte, chargement d'un projet => plantage. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorDefault.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorDefault.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorDefault.java 2008-11-06 17:18:57 UTC (rev 4185) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorDefault.java 2008-11-07 10:01:45 UTC (rev 4186) @@ -331,9 +331,9 @@ // palette_.setAtomeEnable(target_.canUseAtomicMode(), target_.isAtomicMode()); // atomic = palette_.isAtomicMode(); boolean isModifiable = true; - if (target_.getModelEditable().getGeomData() != null) { - isModifiable = target_.getModelEditable().getGeomData().isGeomModifiable(); - } + if(target_.getModelEditable()!=null) + if (target_.getModelEditable().getGeomData() != null) + isModifiable = target_.getModelEditable().getGeomData().isGeomModifiable(); // palette_.setEnable("GLOBAL_MOVE", isModifiable); // boolean ligne = target_.canAddLigneBrisee(); // ligne &= isModifiable; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-06 17:13:43
|
Revision: 4184 http://fudaa.svn.sourceforge.net/fudaa/?rev=4184&view=rev Author: emmanuel_martin Date: 2008-11-06 17:13:33 +0000 (Thu, 06 Nov 2008) Log Message: ----------- bugfix : le panel de dessin ne mettait pas ?\195?\160 jour correctement les widget d'?\195?\169dition d'attribut Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorLigneBriseePanel.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorLigneBriseePanel.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorLigneBriseePanel.java 2008-11-06 14:22:09 UTC (rev 4183) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/ZEditorLigneBriseePanel.java 2008-11-06 17:13:33 UTC (rev 4184) @@ -285,8 +285,7 @@ */ public void update() { if (edition_!=null&&edition_.getFormeEnCours()!=null&&edition_.getFormeEnCours().enCours()) { - if (!((FormDelegateEllipse)edition_.getFormeEnCours()).isSetDataAttributs()) - ((FormDelegateEllipse)edition_.getFormeEnCours()).setDataAttributs(editorAttribute_); + ((FormDelegateEllipse)edition_.getFormeEnCours()).setDataAttributs(editorAttribute_); GrPoint pointOrigine=((FormDelegateEllipse)edition_.getFormeEnCours()).getPointOrigine(); if (pointOrigine!=null) { tfCoordX_.setText(formatter_.getXYFormatter().format(new Double(pointOrigine.x_))); @@ -521,8 +520,7 @@ public void update() { if (edition_!=null&&edition_.getFormeEnCours()!=null&&edition_.getFormeEnCours().enCours()) { GrPoint pointOrigine=(GrPoint)edition_.getFormeEnCours().getFormeEnCours(); - if(!((FormDelegateRectangle)edition_.getFormeEnCours()).isSetDataAttributs()) - ((FormDelegateRectangle)edition_.getFormeEnCours()).setDataAttributs(editorAttribute_); + ((FormDelegateRectangle)edition_.getFormeEnCours()).setDataAttributs(editorAttribute_); if (pointOrigine!=null) { tfCoordX_.setText(formatter_.getXYFormatter().format(new Double(pointOrigine.x_))); tfCoordY_.setText(formatter_.getXYFormatter().format(new Double(pointOrigine.y_))); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-06 14:22:23
|
Revision: 4183 http://fudaa.svn.sourceforge.net/fudaa/?rev=4183&view=rev Author: emmanuel_martin Date: 2008-11-06 14:22:09 +0000 (Thu, 06 Nov 2008) Log Message: ----------- bugfix : sur la palette de visibilit?\195?\169 : changement de visibilit?\195?\169 infonctionnelle, probl?\195?\168me de d?\195?\169placement des g?\195?\169om?\195?\169tries, undo/redo en deux temps. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISZoneCollection.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java 2008-11-06 14:11:44 UTC (rev 4182) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISCollection.java 2008-11-06 14:22:09 UTC (rev 4183) @@ -403,9 +403,12 @@ if(_index1!=_index2){ CtuluCommandComposite cmd=new CtuluCommandComposite(); // Permutation de la g\xE9om\xE9trie - Object tmp=geometry_.getValueAt(_index1); - geometry_.set(_index1, geometry_.getValueAt(_index2), cmd); - geometry_.set(_index2, tmp, cmd); + Object idx1=geometry_.getValueAt(_index1); + Object idx2=geometry_.getValueAt(_index2); + geometry_.set(_index1, idx2, cmd); + geometry_.set(_index2, idx1, cmd); + fireGeometryModified(_index1, (Geometry) idx1); + fireGeometryModified(_index2, (Geometry) idx2); if(_cmd!=null) _cmd.addCmd(cmd.getSimplify()); } Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISZoneCollection.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISZoneCollection.java 2008-11-06 14:11:44 UTC (rev 4182) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISZoneCollection.java 2008-11-06 14:22:09 UTC (rev 4183) @@ -794,8 +794,10 @@ for(int i=0;i<attr_.length;i++){ Object tmp=attr_[i].getObjectValueAt(_index1); attr_[i].setObject(_index1, attr_[i].getObjectValueAt(_index2), cmd); - attr_[i].setObject(_index2, tmp, _cmd); + attr_[i].setObject(_index2, tmp, cmd); } + fireAttributeValueChanged(-1, null, _index1, null); + fireAttributeValueChanged(-1, null, _index2, null); if(_cmd!=null) _cmd.addCmd(cmd.getSimplify()); } Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java 2008-11-06 14:11:44 UTC (rev 4182) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ebli/src/org/fudaa/ebli/calque/edition/BPaletteEditVisibility.java 2008-11-06 14:22:09 UTC (rev 4183) @@ -419,7 +419,7 @@ GISZoneCollection zone=_model.getGeomData(); int indexVisibility=zone.getIndiceOf(GISAttributeConstants.VISIBILITE); if (indexVisibility!=-1) - zone.getModel(indexVisibility).setObject(_numGeom, _visibility==true ? GISAttributeConstants.ATT_VAL_TRUE:GISAttributeConstants.ATT_VAL_FALSE, cmd_); + zone.getModel(indexVisibility).setObject(scene_.sceneId2LayerId(_numGeom), _visibility==true ? GISAttributeConstants.ATT_VAL_TRUE:GISAttributeConstants.ATT_VAL_FALSE, cmd_); listenVisibility=true; } @@ -632,30 +632,48 @@ } public void attributeValueChangeAction(Object _source, int att, GISAttributeInterface _att, int _geom, Object _value) { - if(listenVisibility&&(_att==GISAttributeConstants.TITRE||_att==GISAttributeConstants.VISIBILITE)){ - if(_geom>=0){ - // Mise \xE0 jour seulement de la g\xE9om\xE9trie. - boolean found=false; - int i=-1; - while(!found&&++i<table_.getModel().getRowCount()){ - ZModeleEditable model=(ZModeleEditable) table_.getModel().getValueAt(i, 2); - Integer indexGeom=(Integer) table_.getModel().getValueAt(i, 3); - found=(model==_source)&&(indexGeom==_geom); + if(listenVisibility&&(_att==GISAttributeConstants.TITRE||_att==GISAttributeConstants.VISIBILITE||_att==null)){ + // Recherche le calque contenant le model + boolean foundCalque=false; + int j=-1; + ZCalqueEditable[] calques=scene_.getEditableLayers(); + while (!foundCalque&&++j<calques.length) + foundCalque=calques[j].getModelEditable()==_source; + if (foundCalque) { + if (_geom>=0) { + int idxGeom=scene_.layerId2SceneId(calques[j], _geom); + // Mise \xE0 jour seulement de la g\xE9om\xE9trie. + boolean found=false; + int i=-1; + while (!found&&++i<table_.getModel().getRowCount()) { + ZModeleEditable model=(ZModeleEditable)table_.getModel().getValueAt(i, 2); + Integer indexGeom=(Integer)table_.getModel().getValueAt(i, 3); + found=(model==_source)&&(indexGeom==idxGeom); + } + if (found) + if (_att==GISAttributeConstants.TITRE) + table_.getModel().setValueAt(_value, i, 0); + else if (_att==GISAttributeConstants.VISIBILITE) + table_.getModel().setValueAt(_value.equals(GISAttributeConstants.ATT_VAL_TRUE) ? true:false, i, 1); + else { + GISZoneCollection zone=((ZModeleEditable)_source).getGeomData(); + table_.getModel().setValueAt( + ((ZModeleEditable)_source).getGeomData().getValue(zone.getIndiceOf(GISAttributeConstants.TITRE), _geom), i, 0); + table_.getModel().setValueAt( + ((ZModeleEditable)_source).getGeomData().getValue(zone.getIndiceOf(GISAttributeConstants.VISIBILITE), _geom) + .equals(GISAttributeConstants.ATT_VAL_TRUE) ? true:false, i, 1); + } } - if(found) - if(_att==GISAttributeConstants.TITRE) - table_.getModel().setValueAt(_value, i, 0); - else - table_.getModel().setValueAt(_value.equals(GISAttributeConstants.ATT_VAL_TRUE) ? true : false, i, 1); + else + // Mise \xE0 jour de toutes les g\xE9om\xE9tries. + fillTableGeometry(); } - else - // Mise \xE0 jour de toutes les g\xE9om\xE9tries. - fillTableGeometry(); } } public void geometryAction(Object _source, int geom, Geometry _geom, int _action) { - fillTableGeometry(); + if(_action!=GEOMETRY_ACTION_MODIFY) + fillTableGeometry(); } // La selection dans un calque \xE0 chang\xE9e \\ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bma...@us...> - 2008-11-06 14:11:49
|
Revision: 4182 http://fudaa.svn.sourceforge.net/fudaa/?rev=4182&view=rev Author: bmarchan Date: 2008-11-06 14:11:44 +0000 (Thu, 06 Nov 2008) Log Message: ----------- Chgt de version Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java 2008-11-06 11:55:18 UTC (rev 4181) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlImplementation.java 2008-11-06 14:11:44 UTC (rev 4182) @@ -86,8 +86,8 @@ protected static BuInformationsSoftware isMdl_ = new BuInformationsSoftware(); static { isMdl_.name = "Modeleur"; - isMdl_.version = "0.06"; - isMdl_.date = "2008-09-29"; + isMdl_.version = "0.07"; + isMdl_.date = "2008-11-06"; isMdl_.rights = "Tous droits r\xE9serv\xE9s. CETMEF (c)1999-2008"; isMdl_.license = "GPL2"; isMdl_.languages = "fr,en"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bma...@us...> - 2008-11-06 12:13:22
|
Revision: 4181 http://fudaa.svn.sourceforge.net/fudaa/?rev=4181&view=rev Author: bmarchan Date: 2008-11-06 11:55:18 +0000 (Thu, 06 Nov 2008) Log Message: ----------- Change "IndexGeometry" par GISAttributsConstants.INDEX_GEOM pour etre sur que c'est un attribut systeme. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISAttributeConstants.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISDataModelFeatureAdapter.java branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/gml/GISGMLZoneExporter.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISAttributeConstants.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISAttributeConstants.java 2008-11-06 11:01:19 UTC (rev 4180) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISAttributeConstants.java 2008-11-06 11:55:18 UTC (rev 4181) @@ -161,7 +161,18 @@ return "ATTRIBUTE_Z"; } }; + + /** + * Un attribut index de g\xE9om\xE9trie. + * Attention : Il n'est utilis\xE9 que lors de la sauvegarde, et n'apparait pas dans les calques autrement. + */ + public final static GISAttributeInteger INDEX_GEOM = new GISAttributeInteger(CtuluLib.getS("Index"), false) { + public String getID() { + return "ATTRIBUTE_INDEX_GEOM"; + } + }; + /** La liste des attributs syst\xE8mes. */ protected final static List<GISAttribute> attrs_= Arrays.asList(new GISAttribute[]{BATHY,TITRE,NATURE,VISIBILITE,ETAT_GEOM}); Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISDataModelFeatureAdapter.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISDataModelFeatureAdapter.java 2008-11-06 11:01:19 UTC (rev 4180) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/GISDataModelFeatureAdapter.java 2008-11-06 11:55:18 UTC (rev 4181) @@ -93,7 +93,7 @@ for (int i = 0; i < initAttributeCount; i++) { final GISAttributeInterface att = GISLib.createAttributeFrom(type.getAttributeType(i)); if (att != null){ - if(att.getName().equals("IndexGeometry")) + if(att.getID().equals(GISAttributeConstants.INDEX_GEOM.getID())) indexGeomAttr=i; else{ atts.add(att); Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/gml/GISGMLZoneExporter.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/gml/GISGMLZoneExporter.java 2008-11-06 11:01:19 UTC (rev 4180) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/gis/gml/GISGMLZoneExporter.java 2008-11-06 11:55:18 UTC (rev 4181) @@ -32,6 +32,7 @@ import org.fudaa.ctulu.CtuluActivity; import org.fudaa.ctulu.ProgressionInterface; import org.fudaa.ctulu.ProgressionUpdater; +import org.fudaa.ctulu.gis.GISAttributeConstants; import org.fudaa.ctulu.gis.GISAttributeInterface; import org.fudaa.ctulu.gis.GISZoneCollection; @@ -82,7 +83,8 @@ _attrIdx.put(atts[i + 1], posInZone); } // Le dernier correspond \xE0 l'index de la g\xE9om\xE9trie dans la GISZone - atts[atts.length-1]=AttributeTypeFactory.newAttributeType("IndexGeometry", Integer.class); + GISAttributeInterface attInd=GISAttributeConstants.INDEX_GEOM; + atts[atts.length-1]=AttributeTypeFactory.newAttributeType(attInd.getID(), attInd.getDataClass()); return atts; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-06 11:01:32
|
Revision: 4180 http://fudaa.svn.sourceforge.net/fudaa/?rev=4180&view=rev Author: emmanuel_martin Date: 2008-11-06 11:01:19 +0000 (Thu, 06 Nov 2008) Log Message: ----------- Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/collection/CtuluListObject.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/collection/CtuluListObject.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/collection/CtuluListObject.java 2008-11-06 10:56:59 UTC (rev 4179) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/ctulu/src/org/fudaa/ctulu/collection/CtuluListObject.java 2008-11-06 11:01:19 UTC (rev 4180) @@ -197,7 +197,7 @@ public void redo() { /* - * Losqu'on supprime un indice de la liste, \xE7a d\xE9cale tout les indices + * Losqu'on supprime un indice de la liste, \xE7a d\xE9cale tous les indices * suivants de -1. Donc pour pouvoir supprimer plusieurs indices de fa\xE7on * coh\xE9rente, il faut commencer par la fin de la liste. Contrairement \xE0 * l'ajout. @@ -208,7 +208,7 @@ public void undo() { /* - * Losqu'on ajoute un indice de la liste, \xE7a d\xE9cale tout les indices + * Losqu'on ajoute un indice de la liste, \xE7a d\xE9cale tous les indices * suivants de +1. Donc pour pouvoir ajouter plusieurs indices de fa\xE7on * coh\xE9rente, il faut commencer par la d\xE9but de la liste. Contrairement \xE0 * la supression. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |