237 |
{ |
{ |
238 |
try |
try |
239 |
{ |
{ |
240 |
synchronized (dialog) |
synchronized (dialog) |
241 |
{ |
{ |
242 |
while (dialog.isVisible()) |
while (dialog.isVisible()) |
243 |
dialog.wait(); |
dialog.wait(); |
244 |
} |
} |
245 |
} |
} |
246 |
catch (InterruptedException e) |
catch (InterruptedException e) |
247 |
{ |
{ |
393 |
{ |
{ |
394 |
if (component != previewPanel) |
if (component != previewPanel) |
395 |
{ |
{ |
396 |
JComponent old = previewPanel; |
JComponent old = previewPanel; |
397 |
previewPanel = component; |
previewPanel = component; |
398 |
firePropertyChange(PREVIEW_PANEL_PROPERTY, old, previewPanel); |
firePropertyChange(PREVIEW_PANEL_PROPERTY, old, previewPanel); |
399 |
} |
} |
400 |
} // setPreviewPanel() |
} // setPreviewPanel() |
401 |
|
|
421 |
if (panel == null) |
if (panel == null) |
422 |
return; |
return; |
423 |
AbstractColorChooserPanel[] old = chooserPanels; |
AbstractColorChooserPanel[] old = chooserPanels; |
424 |
AbstractColorChooserPanel[] newPanels = new AbstractColorChooserPanel[(old == null) |
AbstractColorChooserPanel[] newPanels = |
425 |
? 1 |
new AbstractColorChooserPanel[(old == null) ? 1 : old.length + 1]; |
|
: old.length |
|
|
+ 1]; |
|
426 |
if (old != null) |
if (old != null) |
427 |
System.arraycopy(old, 0, newPanels, 0, old.length); |
System.arraycopy(old, 0, newPanels, 0, old.length); |
428 |
newPanels[newPanels.length - 1] = panel; |
newPanels[newPanels.length - 1] = panel; |
445 |
for (int i = 0; i < chooserPanels.length; i++) |
for (int i = 0; i < chooserPanels.length; i++) |
446 |
if (panel == chooserPanels[i]) |
if (panel == chooserPanels[i]) |
447 |
{ |
{ |
448 |
index = i; |
index = i; |
449 |
break; |
break; |
450 |
} |
} |
451 |
|
|
452 |
if (index == -1) |
if (index == -1) |
457 |
chooserPanels = null; |
chooserPanels = null; |
458 |
else |
else |
459 |
{ |
{ |
460 |
AbstractColorChooserPanel[] newPanels = new AbstractColorChooserPanel[chooserPanels.length |
AbstractColorChooserPanel[] newPanels = |
461 |
- 1]; |
new AbstractColorChooserPanel[chooserPanels.length - 1]; |
462 |
System.arraycopy(chooserPanels, 0, newPanels, 0, index); |
System.arraycopy(chooserPanels, 0, newPanels, 0, index); |
463 |
System.arraycopy(chooserPanels, index, newPanels, index - 1, |
System.arraycopy(chooserPanels, index, newPanels, index - 1, |
464 |
chooserPanels.length - index); |
chooserPanels.length - index); |
465 |
chooserPanels = newPanels; |
chooserPanels = newPanels; |
466 |
} |
} |
467 |
panel.uninstallChooserPanel(this); |
panel.uninstallChooserPanel(this); |
468 |
firePropertyChange(CHOOSER_PANELS_PROPERTY, old, chooserPanels); |
firePropertyChange(CHOOSER_PANELS_PROPERTY, old, chooserPanels); |
478 |
{ |
{ |
479 |
if (panels != chooserPanels) |
if (panels != chooserPanels) |
480 |
{ |
{ |
481 |
if (chooserPanels != null) |
if (chooserPanels != null) |
482 |
for (int i = 0; i < chooserPanels.length; i++) |
for (int i = 0; i < chooserPanels.length; i++) |
483 |
if (chooserPanels[i] != null) |
if (chooserPanels[i] != null) |
484 |
chooserPanels[i].uninstallChooserPanel(this); |
chooserPanels[i].uninstallChooserPanel(this); |
485 |
|
|
486 |
AbstractColorChooserPanel[] old = chooserPanels; |
AbstractColorChooserPanel[] old = chooserPanels; |
487 |
chooserPanels = panels; |
chooserPanels = panels; |
488 |
|
|
489 |
if (panels != null) |
if (panels != null) |
490 |
for (int i = 0; i < panels.length; i++) |
for (int i = 0; i < panels.length; i++) |
491 |
if (panels[i] != null) |
if (panels[i] != null) |
492 |
panels[i].installChooserPanel(this); |
panels[i].installChooserPanel(this); |
493 |
|
|
494 |
firePropertyChange(CHOOSER_PANELS_PROPERTY, old, chooserPanels); |
firePropertyChange(CHOOSER_PANELS_PROPERTY, old, chooserPanels); |
495 |
} |
} |
496 |
} // setChooserPanels() |
} // setChooserPanels() |
497 |
|
|