278 @Override 279 public Dimension getPreferredSize(JComponent x) { 280 Dimension preferredSize = super.getPreferredSize(x); 281 Dimension minimumSize = frame.getMinimumSize(); 282 if (preferredSize.width < minimumSize.width) { 283 preferredSize.width = minimumSize.width; 284 } 285 if (preferredSize.height < minimumSize.height) { 286 preferredSize.height = minimumSize.height; 287 } 288 return preferredSize; 289 } 290 291 @Override 292 public void setNorthPane(final JComponent c) { 293 replacePane(northPane, c); 294 northPane = c; 295 } 296 297 /** 298 * Installs necessary mouse handlers on <code>newPane</code> 299 * and adds it to the frame. 300 * Reverse process for the <code>currentPane</code>. 301 */ 302 @Override 303 protected void replacePane(final JComponent currentPane, final JComponent newPane) { 304 if (currentPane != null) { 305 deinstallMouseHandlers(currentPane); 306 frame.remove(currentPane); 307 } 308 if (newPane != null) { 309 frame.add(newPane); 310 installMouseHandlers(newPane); 311 } 312 } 313 314 // Our "Border" listener is shared by the AquaDesktopIcon 315 @Override 316 protected MouseInputAdapter createBorderListener(final JInternalFrame w) { 317 return new AquaBorderListener(); 318 } 319 320 /** | 278 @Override 279 public Dimension getPreferredSize(JComponent x) { 280 Dimension preferredSize = super.getPreferredSize(x); 281 Dimension minimumSize = frame.getMinimumSize(); 282 if (preferredSize.width < minimumSize.width) { 283 preferredSize.width = minimumSize.width; 284 } 285 if (preferredSize.height < minimumSize.height) { 286 preferredSize.height = minimumSize.height; 287 } 288 return preferredSize; 289 } 290 291 @Override 292 public void setNorthPane(final JComponent c) { 293 replacePane(northPane, c); 294 northPane = c; 295 } 296 297 /** 298 * Installs necessary mouse handlers on {@code newPane} 299 * and adds it to the frame. 300 * Reverse process for the {@code currentPane}. 301 */ 302 @Override 303 protected void replacePane(final JComponent currentPane, final JComponent newPane) { 304 if (currentPane != null) { 305 deinstallMouseHandlers(currentPane); 306 frame.remove(currentPane); 307 } 308 if (newPane != null) { 309 frame.add(newPane); 310 installMouseHandlers(newPane); 311 } 312 } 313 314 // Our "Border" listener is shared by the AquaDesktopIcon 315 @Override 316 protected MouseInputAdapter createBorderListener(final JInternalFrame w) { 317 return new AquaBorderListener(); 318 } 319 320 /** |