Revision 43888 branches/org.gvsig.desktop-2018a/org.gvsig.desktop.plugin/org.gvsig.app/org.gvsig.app.mainplugin/src/main/java/org/gvsig/app/project/ProjectManager.java

View differences:

ProjectManager.java
27 27
import java.util.ArrayList;
28 28
import java.util.Collections;
29 29
import java.util.Comparator;
30
import java.util.EventListener;
30 31
import java.util.HashMap;
31 32
import java.util.Iterator;
32 33
import java.util.List;
......
43 44
import org.gvsig.app.project.documents.DocumentActionGroup;
44 45
import org.gvsig.app.project.documents.DocumentManager;
45 46
import org.gvsig.app.project.documents.gui.ProjectWindow;
46
import org.gvsig.fmap.mapcontrol.MapControlLocator;
47
import org.gvsig.propertypage.PropertiesPage;
48
import org.gvsig.propertypage.PropertiesPageFactory;
49
import org.gvsig.propertypage.PropertiesPageManager;
50 47
import org.gvsig.tools.ToolsLocator;
51 48
import org.gvsig.tools.extensionpoint.ExtensionPoint;
52 49
import org.gvsig.tools.extensionpoint.ExtensionPoint.Extension;
53 50
import org.gvsig.tools.extensionpoint.ExtensionPointManager;
54 51
import org.gvsig.tools.observer.impl.BaseWeakReferencingObservable;
52
import org.gvsig.tools.util.BaseListenerSupport;
53
import org.gvsig.tools.util.BaseListenerSupport.NotificationListener;
55 54

  
56 55
public class ProjectManager extends BaseWeakReferencingObservable {
57 56

  
......
68 67

  
69 68
    private Map<String, DocumentActionGroup> documentActionGroups;
70 69

  
70
    private final BaseListenerSupport newProjectListeners;
71
            
72
    public interface ProjectEvent extends EventListener {
73
        public Project getProject();
74
    }
75

  
76
    public interface NewProjectEvent extends ProjectEvent {
77
        
78
    }
79
    
80
    public interface ProjectLoadedEvent extends ProjectEvent {
81
        
82
    }    
83
    
71 84
    public static ProjectManager getInstance() {
72 85
        if (factory == null) {
73 86
            factory = new ProjectManager();
......
77 90

  
78 91
    private ProjectManager() {
79 92
        this.documentActionGroups = new HashMap<String, DocumentActionGroup>();
93
        this.newProjectListeners = new BaseListenerSupport();
80 94
    }
81 95

  
82 96
    
......
294 308
    public ProjectPreferences getProjectPreferences() {
295 309
        return DefaultProject.getPreferences();
296 310
    }
311

  
312
    public void addProjectListener(NotificationListener listener) {
313
        this.newProjectListeners.addListener(listener);
314
    }
315

  
316
    public NotificationListener[] getProjectListeners() {
317
        return (NotificationListener[]) this.newProjectListeners.getListeners();
318
    }
319

  
320
    public boolean hasProjectListeners() {
321
        return this.newProjectListeners.hasListeners();
322
    }
297 323
    
324
    public void removeProjectListener(NotificationListener listener) {
325
        this.newProjectListeners.removeListener(listener);
326
    }
327

  
328
    public void removeAllProjectListener() {    
329
        this.newProjectListeners.removeAllListener();
330
    }
331
    
332
    public void notifyProjectEvent(ProjectEvent event) {
333
        this.newProjectListeners.notifyEvent(event);
334
    }
298 335
}

Also available in: Unified diff