Revision 8838 trunk/libraries/libCorePlugin/src/com/iver/core/mdiManager/FrameWindowSupport.java
FrameWindowSupport.java | ||
---|---|---|
46 | 46 |
import java.util.Iterator; |
47 | 47 |
|
48 | 48 |
import javax.swing.ImageIcon; |
49 |
import javax.swing.JComponent; |
|
49 | 50 |
import javax.swing.JDialog; |
50 | 51 |
import javax.swing.JFrame; |
51 | 52 |
import javax.swing.JInternalFrame; |
52 | 53 |
import javax.swing.JPanel; |
53 | 54 |
|
55 |
import com.iver.andami.PluginServices; |
|
56 |
import com.iver.andami.plugins.PluginClassLoader; |
|
54 | 57 |
import com.iver.andami.ui.mdiFrame.MDIFrame; |
55 | 58 |
import com.iver.andami.ui.mdiManager.IWindow; |
56 | 59 |
import com.iver.andami.ui.mdiManager.WindowInfo; |
... | ... | |
107 | 110 |
JDialog nuevo = new JDialog(mainFrame); |
108 | 111 |
|
109 | 112 |
nuevo.getContentPane().add((JPanel) p); |
110 |
nuevo.setSize(getWidth(p), getHeight(p) + 30);
|
|
113 |
nuevo.setSize(getWidth(p, vi), getHeight(p, vi) + 30);
|
|
111 | 114 |
nuevo.setTitle(vi.getTitle()); |
112 | 115 |
nuevo.setResizable(vi.isResizable()); |
113 | 116 |
|
... | ... | |
129 | 132 |
* @return DOCUMENT ME! |
130 | 133 |
*/ |
131 | 134 |
public JInternalFrame getJInternalFrame(IWindow p) { |
132 |
JInternalFrame frame = (JInternalFrame) viewFrame.get(p);
|
|
135 |
JInternalFrame frame = (JInternalFrame) viewFrame.get(p);
|
|
133 | 136 |
|
134 | 137 |
if (frame == null) { |
135 | 138 |
//ViewInfo vi = vis.getViewInfo(p); |
... | ... | |
152 | 155 |
} |
153 | 156 |
nuevo.getContentPane().add((JPanel) p); |
154 | 157 |
nuevo.setClosable(true); |
155 |
nuevo.setSize(getWidth(p), getHeight(p));
|
|
158 |
nuevo.setSize(getWidth(p, vi), getHeight(p, vi));
|
|
156 | 159 |
nuevo.setTitle(vi.getTitle()); |
157 | 160 |
nuevo.setVisible(vi.isVisible()); |
158 | 161 |
nuevo.setResizable(vi.isResizable()); |
... | ... | |
262 | 265 |
return vi.getWidth(); |
263 | 266 |
} |
264 | 267 |
} |
268 |
|
|
269 |
/** |
|
270 |
* DOCUMENT ME! |
|
271 |
* |
|
272 |
* @param v DOCUMENT ME! |
|
273 |
* |
|
274 |
* @return DOCUMENT ME! |
|
275 |
*/ |
|
276 |
private int getWidth(IWindow v, WindowInfo wi) { |
|
277 |
if (wi.getWidth() == -1) { |
|
278 |
JPanel p = (JPanel) v; |
|
265 | 279 |
|
280 |
return p.getSize().width; |
|
281 |
} else { |
|
282 |
return wi.getWidth(); |
|
283 |
} |
|
284 |
} |
|
285 |
|
|
266 | 286 |
/** |
267 | 287 |
* DOCUMENT ME! |
268 | 288 |
* |
... | ... | |
281 | 301 |
return vi.getHeight(); |
282 | 302 |
} |
283 | 303 |
} |
304 |
|
|
305 |
/** |
|
306 |
* DOCUMENT ME! |
|
307 |
* |
|
308 |
* @param v DOCUMENT ME! |
|
309 |
* |
|
310 |
* @return DOCUMENT ME! |
|
311 |
*/ |
|
312 |
private int getHeight(IWindow v, WindowInfo wi) { |
|
313 |
if (wi.getHeight() == -1) { |
|
314 |
JPanel p = (JPanel) v; |
|
315 |
|
|
316 |
return p.getSize().height; |
|
317 |
} else { |
|
318 |
return wi.getHeight(); |
|
319 |
} |
|
320 |
} |
|
321 |
|
|
322 |
public void updateWindowInfo(IWindow win, WindowInfo windowInfo) { |
|
323 |
Object o = viewFrame.get(win); |
|
324 |
if (windowInfo!=null && o!=null) { |
|
325 |
if (o instanceof JComponent) { |
|
326 |
JComponent component = (JComponent) o; |
|
327 |
windowInfo.setWidth(component.getWidth()); |
|
328 |
windowInfo.setHeight(component.getHeight()); |
|
329 |
windowInfo.setX(component.getX()); |
|
330 |
windowInfo.setY(component.getY()); |
|
331 |
windowInfo.setClosed(!component.isShowing()); |
|
332 |
if (component instanceof JInternalFrame) { |
|
333 |
JInternalFrame iframe = (JInternalFrame) component; |
|
334 |
windowInfo.setNormalBounds(iframe.getNormalBounds()); |
|
335 |
windowInfo.setMaximized(iframe.isMaximum()); |
|
336 |
} |
|
337 |
} |
|
338 |
} |
|
339 |
} |
|
284 | 340 |
} |
Also available in: Unified diff