Skip to content
Snippets Groups Projects
Commit 18ea4b8e authored by GIRARDOT Raphael's avatar GIRARDOT Raphael Committed by MADELA Patrick
Browse files

view selection added, but does not work yet for vldocking (Jira JAVAAPI-132)

parent 81030127
No related branches found
No related tags found
No related merge requests found
...@@ -13,7 +13,6 @@ import java.awt.Container; ...@@ -13,7 +13,6 @@ import java.awt.Container;
import java.awt.event.FocusEvent; import java.awt.event.FocusEvent;
import java.awt.event.FocusListener; import java.awt.event.FocusListener;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; import java.util.List;
import javax.swing.Icon; import javax.swing.Icon;
...@@ -39,19 +38,18 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus ...@@ -39,19 +38,18 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus
protected SoleilDockingDesktop dockingDesktop; protected SoleilDockingDesktop dockingDesktop;
protected List<IViewListener> viewListeners; protected List<IViewListener> viewListeners;
public VlDockView(String title, Icon icon, Component component, Object id) { public VlDockView(String title, Icon icon, Component component, Object id) {
this.title = title; this.title = title;
this.icon = icon; this.icon = icon;
this.component = component; this.component = component;
this.id = id; this.id = id;
if (id instanceof String){ if (id instanceof String) {
String stringId = (String) id; String stringId = (String) id;
this.key = new DockKey(stringId, title, title, icon); this.key = new DockKey(stringId, title, title, icon);
} else { } else {
this.key = new DockKey(title, title, title, icon); this.key = new DockKey(title, title, title, icon);
} }
this.viewListeners = new ArrayList<IViewListener>(); this.viewListeners = new ArrayList<IViewListener>();
this.component.addFocusListener(this); this.component.addFocusListener(this);
} }
...@@ -91,14 +89,46 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus ...@@ -91,14 +89,46 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus
this.visible = visible; this.visible = visible;
if (visible) { if (visible) {
dockingDesktop.showDockable(this); dockingDesktop.showDockable(this);
} } else {
else {
dockingDesktop.close(this); dockingDesktop.close(this);
} }
component.setVisible(visible); component.setVisible(visible);
component.setEnabled(visible); component.setEnabled(visible);
} }
@Override
public void select() {
setVisible(true);
// TODO marche pas !!!!!!
System.out.println(getTitle() + " requestFocus()");
component.requestFocus();
focusGained(new FocusEvent(component, FocusEvent.FOCUS_GAINED));
// focus(component);
}
protected static boolean focus(Component comp) {
boolean focused = false;
if (comp != null) {
if (comp.isVisible() && comp.isShowing()) {
if (comp.isFocusable()) {
comp.requestFocus();
focused = true;
} else if (comp instanceof Container) {
Container container = (Container) comp;
for (Component child : container.getComponents()) {
if (focus(child)) {
break;
}
}
}
} else {
comp.setVisible(true);
}
}
return focused;
}
@Override @Override
public String getTitle() { public String getTitle() {
return title; return title;
...@@ -204,9 +234,7 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus ...@@ -204,9 +234,7 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus
if (event.getActionType() == DockingActionEvent.ACTION_CLOSE) { if (event.getActionType() == DockingActionEvent.ACTION_CLOSE) {
Dockable closedDockable = ((DockingActionCloseEvent) event).getDockable(); Dockable closedDockable = ((DockingActionCloseEvent) event).getDockable();
if (getDockKey().getKey().equals(closedDockable.getDockKey().getKey())) { if (getDockKey().getKey().equals(closedDockable.getDockKey().getKey())) {
for (Iterator<IViewListener> listenersIterator = viewListeners.iterator(); listenersIterator for (IViewListener listener : viewListeners) {
.hasNext();) {
IViewListener listener = listenersIterator.next();
listener.viewClosed(); listener.viewClosed();
} }
} }
...@@ -225,4 +253,3 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus ...@@ -225,4 +253,3 @@ public class VlDockView implements IView, Dockable, DockingActionListener, Focus
// Not managed. // Not managed.
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment