public void propertyChange(final PropertyChangeEvent evt)
{
final String propertyName = evt.getPropertyName();
final PreviewPane previewPane = getPreviewPane();
final JStatusBar statusBar = getStatusBar();
if (PreviewPane.MENU_PROPERTY.equals(propertyName))
{
// Update the menu
final JMenu[] menus = previewPane.getMenu();
updateMenu(menus);
return;
}
if (PreviewPane.TITLE_PROPERTY.equals(propertyName))
{
setTitle(previewPane.getTitle());
return;
}
if (PreviewPane.STATUS_TEXT_PROPERTY.equals(propertyName)
|| PreviewPane.STATUS_TYPE_PROPERTY.equals(propertyName))
{
statusBar.setStatus(previewPane.getStatusType(), previewPane.getStatusText());
return;
}
if (PreviewPane.ICON_THEME_PROPERTY.equals(propertyName))
{
statusBar.setIconTheme(previewPane.getIconTheme());
return;
}
if (PreviewPane.PAGINATING_PROPERTY.equals(propertyName))
{
if (Boolean.TRUE.equals(evt.getNewValue()))
{
pageLabel.setVisible(false);
statusBar.setStatus(StatusType.INFORMATION, messages.getString(
"PreviewDialog.USER_PAGINATING")); //$NON-NLS-1$
if (progressBar != null)
{
previewPane.addReportProgressListener(progressBar);
progressBar.setOnlyPagination(true);
progressBar.setVisible(true);
progressBar.revalidate();
}
if (progressDialog != null)
{
previewPane.addReportProgressListener(progressDialog);
SwingUtil.centerDialogInParent(progressDialog);
progressDialog.setOnlyPagination(true);
progressDialog.setVisible(true);
}
}
else
{
pageLabel.setVisible(true);
statusBar.setStatus(StatusType.NONE, ""); //$NON-NLS-1$
if (progressBar != null)
{
progressBar.setOnlyPagination(false);
progressBar.setVisible(false);
previewPane.removeReportProgressListener(progressBar);