/* * To change this template, choose Tools | Templates * and open the template in the editor. */ /* * GenerateCatalogDialog.java * * Created on 17 f�vr. 2010, 14:01:28 */ package com.gmail.dpierron.calibre.gui; import com.gmail.dpierron.calibre.opds.*; import com.gmail.dpierron.tools.i18n.Localization; import com.gmail.dpierron.tools.Helper; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import javax.swing.*; import java.awt.*; /** * @author David */ public class GenerateCatalogDialog extends javax.swing.JDialog implements CatalogCallbackInterface { private final static Logger logger = LogManager.getLogger(Catalog.class); private Log4jCatalogCallback delegate = new Log4jCatalogCallback(); protected boolean continueGenerating = true; private Long stageStartTime; // step progress indicator ProgressIndicator progressStep = new ProgressIndicator() { @Override public void reset() { super.reset(); if (jProgressStep != null) jProgressStep.setValue(0); } @Override public void actOnPositionChange(int newPos) { if (jProgressStep != null) jProgressStep.setValue(newPos); try { Thread.sleep(1); } catch (InterruptedException e) { } } @Override public void actOnMessage(String message) { super.actOnMessage(message); if (lblStepMessage != null) { lblStepMessage.setText(message); } } @Override public ProgressIndicator setMaxVisible(long maxVisible) { super.setMaxVisible(maxVisible); if (jProgressStep != null) jProgressStep.setMaximum((int) maxVisible); return this; } }; /** * Initialise the progress indicator * * @param max */ public void setProgressMax(long max) { progressStep.setMaxVisible(max); progressStep.setMaxScale(max); } public void incStepProgressIndicatorPosition() { checkIfContinueGenerating(); progressStep.incPosition(); } /** * Creates new form GenerateCatalogDialog */ public GenerateCatalogDialog(java.awt.Frame parent, boolean modal) { super(parent, modal); initComponents(); // NOTE: Initialise components first so that dialog centers on parent. // Failure to do causes top left to be centred on parent which is undesireable setLocationRelativeTo(parent); progressStep.setMaxVisible(500); translateTexts(); } @Override public void pack() { super.pack(); Rectangle oldbounds = getBounds(); oldbounds.width += 10; oldbounds.height += 10; setBounds(oldbounds); } private void translateTexts() { setTitle(Localization.Main.getText("gui.generateProgress")); lblStoppingGeneration.setVisible(false); lblStoppingGeneration.repaint(); lblStoppingGeneration.setText(Localization.Main.getText("gui.stoppingGeneration")); // NOI18N lblStarted.setText(Localization.Main.getText("info.step.started")); // NOI18N lblDatabase.setText(Localization.Main.getText("info.step.database")); // NOI18N lblTags.setText(Localization.Main.getText("info.step.tags")); // NOI18N lblAuthors.setText(Localization.Main.getText("info.step.authors")); // NOI18N lblSeries.setText(Localization.Main.getText("info.step.series")); // NOI18N lblRecent.setText(Localization.Main.getText("info.step.recent")); // NOI18N lblAllbooks.setText(Localization.Main.getText("info.step.allbooks")); // NOI18N lblRated.setText(Localization.Main.getText("info.step.rated")); // NOI18N lblFeaturedBooks.setText(Localization.Main.getText("info.step.featuredbooks")); // NOI18N lblCustomCatalogs.setText(Localization.Main.getText("info.step.customcatalogs")); // NOI18N lblIndex.setText(Localization.Main.getText("info.step.index")); // NOI18N lblReprocessingEpubMetadata.setText(Localization.Main.getText("info.step.reprocessingEpubMetadata")); // NOI18N lblCopyLibToTarget.setText(Localization.Main.getText("info.step.copylib")); // NOI18N lblCopyCatToTarget.setText(Localization.Main.getText("info.step.copycat")); // NOI18N lblZipCatalog.setText(Localization.Main.getText("info.step.zipCatalog")); // NOI18N lblFinished.setText(Localization.Main.getText("info.step.done.gui")); // NOI18N cmdStopGenerating.setText(Localization.Main.getText("gui.stopGeneration")); // NOI18N } public void dumpOptions() { delegate.dumpOptions(); } private void boldFont(JLabel label, boolean bold) { label.setFont(lblStarted.getFont().deriveFont(bold ? Font.BOLD : Font.PLAIN)); } private void setTimeNow(JLabel label) { label.setText(String.format("%tT", System.currentTimeMillis())); } private void startStage(long nb, JLabel label, String localizationKey) { stageStartTime = System.currentTimeMillis(); progressStep.setMaxScale(nb); logger.info(Localization.Main.getText(localizationKey) + " (" + nb +")"); boldFont(label, true); label.setForeground(Color.RED); } private void endStage(JLabel label, JLabel time, JCheckBox chkBox) { logger.info(Localization.Main.getText("info.step.donein", System.currentTimeMillis() - stageStartTime)); System.currentTimeMillis(); // Probably redundant as set when starting stage! if (label.isEnabled()) chkBox.setSelected(true); label.setForeground(Color.BLACK); boldFont(label, false); if (label.isEnabled()) setTimeNow(time); checkIfContinueGenerating(); } /** * Called when a stage will not be relevant to this generate run * * @param check * @param label * @param time */ private void disableStage(JCheckBox check, JLabel label, JLabel time) { check.setEnabled(false); // TODO decide if this is a good idea check.setVisible(false); label.setEnabled(false); time.setEnabled(false); } /** * Update a progess step with the count for that step. * * @param label The field to be updated * @param summary The additional text to be added to the field */ private void setCount(JLabel label, String summary) { label.setText(label.getText() + " (" + summary + ")"); } public void startInitializeMainCatalog() { cmdStopGenerating.setVisible(true); cmdStopGenerating.repaint(); lblStoppingGeneration.setVisible(false); lblStoppingGeneration.repaint(); lblStartedTime.setText(""); lblDatabaseTime.setText(""); lblAuthorsTime.setText(""); lblTagsTime.setText(""); lblSeriesTime.setText(""); lblRecentTime.setText(""); lblRatingTime.setText(""); lblAllbooksTime.setText(""); lblFeaturedBooksTime.setText(""); lblCustomCatalogsTime.setText(""); lblReprocessingEpubMetadataTime.setText(""); lblIndexTime.setText(""); lblCopyLibraryTime.setText(""); lblCopyCatalogTime.setText(""); lblZipCatalogTime.setText(""); lblFinishedTime.setText(""); startStage(100, lblStarted,"info.step.started"); } public void endInitializeMainCatalog() { endStage(lblStarted, lblStartedTime, chkStarted); } public void startReadDatabase() { startStage(100, lblDatabase, "info.step.database"); setTimeNow(lblStartedTime); } public void endReadDatabase() { endStage(lblDatabase, lblDatabaseTime, chkDatabase); } public void setDatabaseCount (String summary) { setCount(lblDatabase, summary); } public void setAuthorCount(String summary){ setCount(lblAuthors, summary); } public void startCreateAuthors(long nb) { startStage(nb, lblAuthors, "info.step.authors"); } public void endCreateAuthors() { endStage(lblAuthors, lblAuthorsTime, chkAuthors); } public void disableCreateAuthors() { disableStage(chkAuthors, lblAuthors, lblAuthorsTime); } public void setSeriesCount(String summary) { setCount(lblSeries, summary); } public void setTagCount(String summary) { setCount(lblTags, summary); } public void setFeaturedCount(String summary) { setCount(lblFeaturedBooks, summary); } public void startCreateTags(long nb) { startStage(nb, lblTags, "info.step.tags"); } public void endCreateTags() { endStage(lblTags, lblTagsTime, chkTags); } public void disableCreateTags() { disableStage(chkTags, lblTags, lblTagsTime); } public void startCreateSeries(long nb) { startStage(nb, lblSeries, "info.step.series"); } public void endCreateSeries() { endStage(lblSeries, lblSeriesTime, chkSeries); } public void setRecentCount(String summary){ lblRecent.setText(lblRecent.getText() + " (" + summary + ")"); } public void disableCreateSeries() { disableStage(chkSeries, lblSeries, lblSeriesTime); } public void startCreateRecent(long nb) { startStage(nb, lblRecent, "info.step.recent"); } public void endCreateRecent() { endStage(lblRecent, lblRecentTime, chkRecent); } public void disableCreateRecent() { disableStage(chkRecent, lblRecent, lblRecentTime); } public void startCreateRated(long nb) { startStage(nb, lblRated, "info.step.rated"); } public void endCreateRated() { endStage(lblRated, lblRatingTime, chkRated); } public void disableCreateRated() { disableStage(chkRated, lblRated, lblRatingTime); } public void setAllBooksCount(String summary) { setCount(lblAllbooks, summary); } public void startCreateAllbooks(long nb) { startStage(nb, lblAllbooks, "info.step.allbooks"); } public void endCreateAllbooks() { endStage(lblAllbooks, lblAllbooksTime, chkAllbooks); } public void disableCreateAllBooks() { disableStage(chkAllbooks, lblAllbooks, lblAllbooksTime); } public void startCreateFeaturedBooks(long nb) { startStage(nb, lblFeaturedBooks, "info.step.featuredbooks"); } public void endCreateFeaturedBooks() { endStage(lblFeaturedBooks, lblFeaturedBooksTime, chkFeaturedBooks); } public void disableCreateFeaturedBooks() { disableStage(chkFeaturedBooks, lblFeaturedBooks, lblFeaturedBooksTime); } public void startCreateCustomCatalogs(long nb) { startStage(nb, lblCustomCatalogs, "info.step.customcatalogs"); } public void endCreateCustomCatalogs() { endStage(lblCustomCatalogs, lblCustomCatalogsTime, chkCustomCatalogs); } public void disableCreateCustomCatalogs() { disableStage(chkCustomCatalogs, lblCustomCatalogs, lblCustomCatalogsTime); } public void startReprocessingEpubMetadata(long nb) { startStage(nb, lblReprocessingEpubMetadata, "info.step.reprocessingEpubMetadata"); } public void endReprocessingEpubMetadata() { endStage(lblReprocessingEpubMetadata, lblReprocessingEpubMetadataTime, chkReprocessingEpubMetadata); } public void disableReprocessingEpubMetadata () { disableStage(chkReprocessingEpubMetadata, lblReprocessingEpubMetadata, lblReprocessingEpubMetadataTime); } public void endCreateJavascriptDatabase() { endStage(lblIndex, lblIndexTime, chkIndex); } public void startCreateJavascriptDatabase(long nb) { startStage(nb, lblIndex, "info.step.index"); } public void disableCreateJavascriptDatabase() { disableStage(chkIndex, lblIndex, lblIndexTime); } public void setCopyLibCount(String summary){ lblCopyLibToTarget.setText(lblCopyLibToTarget.getText() + " (" + summary + ")"); } public void startCopyLibToTarget(long nb) { startStage(nb, lblCopyLibToTarget, "info.step.copylib"); } public void endCopyLibToTarget() { endStage(lblCopyLibToTarget, lblCopyLibraryTime, chkCopyLibToTarget); } public void disableCopyLibToTarget() { disableStage(chkCopyLibToTarget, lblCopyLibToTarget, lblCopyLibraryTime); } public void setCopyCatCount(String summary){ lblCopyCatToTarget.setText(lblCopyCatToTarget.getText() + " (" + summary + ")"); } public void startCopyCatToTarget(long nb) { startStage(nb, lblCopyCatToTarget, "info.step.copycat"); } public void endCopyCatToTarget() { endStage(lblCopyCatToTarget, lblCopyCatalogTime, chkCopyCatToTarget); } public void startZipCatalog(long nb) { startStage(nb,lblZipCatalog,"info.step.zipCatalog"); } public void endZipCatalog() { endStage(lblZipCatalog, lblZipCatalogTime, chkZipCatalog); } public void disableZipCatalog() { disableStage(chkZipCatalog, lblZipCatalog, lblZipCatalogTime); } public void startFinalizeMainCatalog() { startStage(100,lblFinished,"info.step.done"); } public void endFinalizeMainCatalog(String where, long timeInHtml) { endStage(lblFinished, lblFinishedTime, chkFinished); logger.info("Time generating HTML was " + timeInHtml + " milliseconds"); if (where != null) { String message = Localization.Main.getText("info.step.done", where); logger.info(message); JOptionPane.showMessageDialog(this, message); } else { if (getWarnCount() != 0) { String message = Localization.Main.getText("info.completedWithWarnings", getWarnCount()); logger.info(message); JOptionPane.showMessageDialog(this, message); } else { // TODO Decide if we should do anything her - currently ignoring! } } } public void showMessage(String message) { progressStep.actOnMessage(message); } public void errorOccured(String message, Throwable error) { String msg; String title; Boolean b = cmdStopGenerating.isVisible(); cmdStopGenerating.setVisible(false); cmdStopGenerating.repaint(); if (error != null) { title = message; if (Helper.isNullOrEmpty(title)) title = error.getClass().getName(); msg = error.getMessage() + "\n" + error.getClass() + "\n" + Helper.getStackTrace(error); } else { msg = message; title = ""; } lblStoppingGeneration.setVisible(false); JOptionPane.showMessageDialog(this, msg, title, JOptionPane.ERROR_MESSAGE); cmdStopGenerating.setVisible(b); cmdStopGenerating.repaint(); logger.error(Helper.getTextFromPseudoHtmlText(message), error); } public int askUser(String message, String... possibleAnswers) { Boolean b = cmdStopGenerating.isVisible(); cmdStopGenerating.setVisible(false); cmdStopGenerating.repaint(); int nAnswer = JOptionPane .showOptionDialog(this, message, message, JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, possibleAnswers, possibleAnswers[0]); if (nAnswer > -1) { String logMessage = message + " (answered " + possibleAnswers[nAnswer] + ")"; logger.info(Helper.getTextFromPseudoHtmlText(logMessage)); } cmdStopGenerating.setVisible(b); cmdStopGenerating.repaint(); return nAnswer; } private void setCmdStopGeneratingVisbile(boolean state) { cmdStopGenerating.setVisible(state); cmdStopGenerating.repaint(); } public void setStopGenerating () { clearStopGenerating(); continueGenerating = false; } public void clearStopGenerating() { setCmdStopGeneratingVisbile(false); lblStoppingGeneration.repaint(); } private void actionStopGenerating() { setCmdStopGeneratingVisbile(false); int n = JOptionPane.showConfirmDialog(this, Localization.Main.getText("gui.stopGeneration.confirm"), "", JOptionPane.OK_CANCEL_OPTION); if (JOptionPane.OK_OPTION == n) { lblStoppingGeneration.setText(Localization.Main.getText("gui.prepareStopGeneration")); lblStoppingGeneration.setVisible(true); setStopGenerating(); } else { setCmdStopGeneratingVisbile(true); } } public void checkIfContinueGenerating() throws GenerationStoppedException { if (!continueGenerating) { lblStoppingGeneration.setText(Localization.Main.getText("gui.stoppingGeneration")); throw new GenerationStoppedException(); } } private int warnCount; public void resetWarnCount() { warnCount = 0; } public int getWarnCount() { return warnCount; } public void incrementWarnCount() { warnCount++; return; } /** * This method is called from within the constructor to reset the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" // <editor-fold defaultstate="collapsed" // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { java.awt.GridBagConstraints gridBagConstraints; jProgressStep = new javax.swing.JProgressBar(); cmdStopGenerating = new javax.swing.JButton(); chkStarted = new javax.swing.JCheckBox(); lblStarted = new javax.swing.JLabel(); lblStartedTime = new javax.swing.JLabel(); chkDatabase = new javax.swing.JCheckBox(); lblDatabase = new javax.swing.JLabel(); lblDatabaseTime = new javax.swing.JLabel(); chkAuthors = new javax.swing.JCheckBox(); lblAuthors = new javax.swing.JLabel(); lblAuthorsTime = new javax.swing.JLabel(); chkTags = new javax.swing.JCheckBox(); lblTags = new javax.swing.JLabel(); lblTagsTime = new javax.swing.JLabel(); chkSeries = new javax.swing.JCheckBox(); lblSeries = new javax.swing.JLabel(); lblSeriesTime = new javax.swing.JLabel(); chkRecent = new javax.swing.JCheckBox(); lblRecent = new javax.swing.JLabel(); lblRecentTime = new javax.swing.JLabel(); chkRated = new javax.swing.JCheckBox(); lblRated = new javax.swing.JLabel(); lblRatingTime = new javax.swing.JLabel(); chkAllbooks = new javax.swing.JCheckBox(); lblAllbooks = new javax.swing.JLabel(); lblAllbooksTime = new javax.swing.JLabel(); chkFeaturedBooks = new javax.swing.JCheckBox(); lblFeaturedBooks = new javax.swing.JLabel(); lblFeaturedBooksTime = new javax.swing.JLabel(); chkCustomCatalogs = new javax.swing.JCheckBox(); lblCustomCatalogs = new javax.swing.JLabel(); lblCustomCatalogsTime = new javax.swing.JLabel(); chkReprocessingEpubMetadata = new javax.swing.JCheckBox(); lblReprocessingEpubMetadata = new javax.swing.JLabel(); lblReprocessingEpubMetadataTime = new javax.swing.JLabel(); chkIndex = new javax.swing.JCheckBox(); lblIndex = new javax.swing.JLabel(); lblIndexTime = new javax.swing.JLabel(); chkCopyLibToTarget = new javax.swing.JCheckBox(); lblCopyLibToTarget = new javax.swing.JLabel(); lblCopyLibraryTime = new javax.swing.JLabel(); chkCopyCatToTarget = new javax.swing.JCheckBox(); lblCopyCatToTarget = new javax.swing.JLabel(); lblCopyCatalogTime = new javax.swing.JLabel(); chkFinished = new javax.swing.JCheckBox(); lblFinished = new javax.swing.JLabel(); lblFinishedTime = new javax.swing.JLabel(); lblStepMessage = new javax.swing.JLabel(); lblStoppingGeneration = new javax.swing.JLabel(); lblZipCatalog = new javax.swing.JLabel(); lblZipCatalogTime = new javax.swing.JLabel(); chkZipCatalog = new javax.swing.JCheckBox(); setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE); setResizable(false); getContentPane().setLayout(new java.awt.GridBagLayout()); jProgressStep.setMaximum(62); jProgressStep.setPreferredSize(new java.awt.Dimension(300, 19)); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 0; gridBagConstraints.gridwidth = 3; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.insets = new java.awt.Insets(5, 5, 15, 5); getContentPane().add(jProgressStep, gridBagConstraints); cmdStopGenerating.setText("cmdStopGenerating"); cmdStopGenerating.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { cmdStopGeneratingMouseClicked(evt); } }); cmdStopGenerating.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { cmdStopGeneratingActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 22; gridBagConstraints.gridwidth = 2; getContentPane().add(cmdStopGenerating, gridBagConstraints); chkStarted.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 2; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkStarted, gridBagConstraints); lblStarted.setText("lblStarted"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 2; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblStarted, gridBagConstraints); lblStartedTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 2; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblStartedTime, gridBagConstraints); chkDatabase.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 3; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkDatabase, gridBagConstraints); lblDatabase.setText("lblDatabase"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 3; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblDatabase, gridBagConstraints); lblDatabaseTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 3; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblDatabaseTime, gridBagConstraints); chkAuthors.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 5; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkAuthors, gridBagConstraints); lblAuthors.setText("lblAuthors"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 5; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblAuthors, gridBagConstraints); lblAuthorsTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 5; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblAuthorsTime, gridBagConstraints); chkTags.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 7; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkTags, gridBagConstraints); lblTags.setText("lblTags"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 7; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblTags, gridBagConstraints); lblTagsTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 7; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblTagsTime, gridBagConstraints); chkSeries.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 6; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkSeries, gridBagConstraints); lblSeries.setText("lblSeries"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 6; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblSeries, gridBagConstraints); lblSeriesTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 6; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblSeriesTime, gridBagConstraints); chkRecent.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 8; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkRecent, gridBagConstraints); lblRecent.setText("lblRecent"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 8; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblRecent, gridBagConstraints); lblRecentTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 8; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblRecentTime, gridBagConstraints); chkRated.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 9; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkRated, gridBagConstraints); lblRated.setText("lblRated"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 9; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblRated, gridBagConstraints); lblRatingTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 9; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblRatingTime, gridBagConstraints); chkAllbooks.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 10; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkAllbooks, gridBagConstraints); lblAllbooks.setText("lblAllbooks"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 10; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblAllbooks, gridBagConstraints); lblAllbooksTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 10; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblAllbooksTime, gridBagConstraints); chkFeaturedBooks.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 4; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkFeaturedBooks, gridBagConstraints); lblFeaturedBooks.setText("lblFeaturedBooks"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 4; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblFeaturedBooks, gridBagConstraints); lblFeaturedBooksTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 4; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblFeaturedBooksTime, gridBagConstraints); chkCustomCatalogs.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 11; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkCustomCatalogs, gridBagConstraints); lblCustomCatalogs.setText("lblCustomCatalogs"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 11; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblCustomCatalogs, gridBagConstraints); lblCustomCatalogsTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 11; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblCustomCatalogsTime, gridBagConstraints); chkReprocessingEpubMetadata.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 15; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkReprocessingEpubMetadata, gridBagConstraints); lblReprocessingEpubMetadata.setText("lblReprocessingEpubMetadata"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 15; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblReprocessingEpubMetadata, gridBagConstraints); lblReprocessingEpubMetadataTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 15; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblReprocessingEpubMetadataTime, gridBagConstraints); chkIndex.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 14; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkIndex, gridBagConstraints); lblIndex.setText("lblIndex"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 14; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblIndex, gridBagConstraints); lblIndexTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 14; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblIndexTime, gridBagConstraints); chkCopyLibToTarget.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 16; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkCopyLibToTarget, gridBagConstraints); lblCopyLibToTarget.setText("lblCopyLibToTarget"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 16; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblCopyLibToTarget, gridBagConstraints); lblCopyLibraryTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 16; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblCopyLibraryTime, gridBagConstraints); chkCopyCatToTarget.setEnabled(false); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 17; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkCopyCatToTarget, gridBagConstraints); lblCopyCatToTarget.setText("lblCopyCatToTarget"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 17; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblCopyCatToTarget, gridBagConstraints); lblCopyCatalogTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 17; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblCopyCatalogTime, gridBagConstraints); chkFinished.setEnabled(false); chkFinished.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { chkFinishedActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 20; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkFinished, gridBagConstraints); lblFinished.setText("lblFinished"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 20; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblFinished, gridBagConstraints); lblFinished.getAccessibleContext().setAccessibleName("null"); lblFinishedTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 20; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblFinishedTime, gridBagConstraints); lblStepMessage.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); lblStepMessage.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0))); lblStepMessage.setMaximumSize(new java.awt.Dimension(600, 20)); lblStepMessage.setMinimumSize(new java.awt.Dimension(600, 0)); lblStepMessage.setPreferredSize(new java.awt.Dimension(600, 20)); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 21; gridBagConstraints.gridwidth = 3; gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints.insets = new java.awt.Insets(15, 5, 5, 5); getContentPane().add(lblStepMessage, gridBagConstraints); lblStoppingGeneration.setText("lblStoppingGeneration"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 22; gridBagConstraints.gridwidth = 2; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblStoppingGeneration, gridBagConstraints); lblZipCatalog.setText("lblZipCatalog"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 19; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(lblZipCatalog, gridBagConstraints); lblZipCatalogTime.setText("!"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 19; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3); getContentPane().add(lblZipCatalogTime, gridBagConstraints); chkZipCatalog.setEnabled(false); chkZipCatalog.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { chkZipCatalogActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 19; gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5); getContentPane().add(chkZipCatalog, gridBagConstraints); pack(); }// </editor-fold>//GEN-END:initComponents private void cmdStopGeneratingActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdStopGeneratingActionPerformed actionStopGenerating(); }//GEN-LAST:event_cmdStopGeneratingActionPerformed private void cmdStopGeneratingMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_cmdStopGeneratingMouseClicked }//GEN-LAST:event_cmdStopGeneratingMouseClicked private void chkFinishedActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkFinishedActionPerformed // TODO add your handling code here: }//GEN-LAST:event_chkFinishedActionPerformed private void chkZipCatalogActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkZipCatalogActionPerformed // TODO add your handling code here: }//GEN-LAST:event_chkZipCatalogActionPerformed // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JCheckBox chkAllbooks; private javax.swing.JCheckBox chkAuthors; private javax.swing.JCheckBox chkCopyCatToTarget; private javax.swing.JCheckBox chkCopyLibToTarget; private javax.swing.JCheckBox chkCustomCatalogs; private javax.swing.JCheckBox chkDatabase; private javax.swing.JCheckBox chkFeaturedBooks; private javax.swing.JCheckBox chkFinished; private javax.swing.JCheckBox chkIndex; private javax.swing.JCheckBox chkRated; private javax.swing.JCheckBox chkRecent; private javax.swing.JCheckBox chkReprocessingEpubMetadata; private javax.swing.JCheckBox chkSeries; private javax.swing.JCheckBox chkStarted; private javax.swing.JCheckBox chkTags; private javax.swing.JCheckBox chkZipCatalog; private javax.swing.JButton cmdStopGenerating; private javax.swing.JProgressBar jProgressStep; private javax.swing.JLabel lblAllbooks; private javax.swing.JLabel lblAllbooksTime; private javax.swing.JLabel lblAuthors; private javax.swing.JLabel lblAuthorsTime; private javax.swing.JLabel lblCopyCatToTarget; private javax.swing.JLabel lblCopyCatalogTime; private javax.swing.JLabel lblCopyLibToTarget; private javax.swing.JLabel lblCopyLibraryTime; private javax.swing.JLabel lblCustomCatalogs; private javax.swing.JLabel lblCustomCatalogsTime; private javax.swing.JLabel lblDatabase; private javax.swing.JLabel lblDatabaseTime; private javax.swing.JLabel lblFeaturedBooks; private javax.swing.JLabel lblFeaturedBooksTime; private javax.swing.JLabel lblFinished; private javax.swing.JLabel lblFinishedTime; private javax.swing.JLabel lblIndex; private javax.swing.JLabel lblIndexTime; private javax.swing.JLabel lblRated; private javax.swing.JLabel lblRatingTime; private javax.swing.JLabel lblRecent; private javax.swing.JLabel lblRecentTime; private javax.swing.JLabel lblReprocessingEpubMetadata; private javax.swing.JLabel lblReprocessingEpubMetadataTime; private javax.swing.JLabel lblSeries; private javax.swing.JLabel lblSeriesTime; private javax.swing.JLabel lblStarted; private javax.swing.JLabel lblStartedTime; private javax.swing.JLabel lblStepMessage; private javax.swing.JLabel lblStoppingGeneration; private javax.swing.JLabel lblTags; private javax.swing.JLabel lblTagsTime; private javax.swing.JLabel lblZipCatalog; private javax.swing.JLabel lblZipCatalogTime; // End of variables declaration//GEN-END:variables }