package com.gmail.dpierron.calibre.gui;
/**
* Handle the main GUI within Calibre2opds
*
* Note that the GUI form and this associated java class is constructed
* and maintained using the Netbeans IDE tool for form design.
* Although the java class can be edited from within the IntelliJ IDEA editor
* you should not make any changes that invalidate its use by the Netbeans one.
*/
import com.gmail.dpierron.calibre.configuration.*;
import com.gmail.dpierron.calibre.database.*;
import com.gmail.dpierron.calibre.gui.table.ButtonColumn;
import com.gmail.dpierron.calibre.gui.table.CustomCatalogTableModel;
import com.gmail.dpierron.calibre.opds.Catalog;
import com.gmail.dpierron.calibre.opds.Constants;
import com.gmail.dpierron.tools.i18n.Localization;
import com.gmail.dpierron.calibre.opds.indexer.Index;
import com.gmail.dpierron.tools.Helper;
import com.gmail.dpierron.tools.OS;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import javax.swing.*;
import javax.swing.border.Border;
import javax.swing.border.LineBorder;
import com.l2fprod.common.swing.JDirectoryChooser;
import javax.swing.filechooser.FileFilter;
import javax.swing.table.TableModel;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.Locale;
import java.util.Random;
public class Mainframe extends javax.swing.JFrame {
private final Logger logger = LogManager.getLogger(Mainframe.class);
GenerateCatalogDialog catalogDialog;
Locale language;
CustomCatalogTableModel customCatalogTableModel = new CustomCatalogTableModel();
private final Cursor hourglassCursor = new Cursor(Cursor.WAIT_CURSOR);
private final Cursor normalCursor = new Cursor(Cursor.DEFAULT_CURSOR);
private String tabHelpUrl = Constants.HELP_URL_MAIN_OPTIONS;
// Store this as we use it a lot and it should improve effeciency
// IMPORTANT: We need to update this cached copy if the profile ever gets changed!
private ConfigurationHolder currentProfile = ConfigurationManager.getCurrentProfile();
private guiField[] guiFields;
private File SyncLogFile = new File(ConfigurationManager.getConfigurationDirectory() + "/" + Constants.LOGFILE_FOLDER + "/" + Constants.SYNCFILE_NAME);
/**
* Creates new form Mainframe
*/
public Mainframe() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException e) {
// do nothing
} catch (InstantiationException e) {
// do nothing
} catch (IllegalAccessException e) {
// do nothing
} catch (UnsupportedLookAndFeelException e) {
// do nothing
}
if (currentProfile.isObsolete()) {
currentProfile.reset();
String msg = Localization.Main.getText("gui.reset.warning");
JOptionPane.showMessageDialog(this, msg, "", JOptionPane.WARNING_MESSAGE);
}
initComponents();
initGuiFields();
setLocationRelativeTo(null);
tabHelpUrl = Constants.HELP_URL_MAIN_OPTIONS;
loadProfileValues();
translateTexts();
}
/**
* Table that defines the GUI fields
* Allows standardised handling of GUI fields to be applied with minimal developer effort
*
* There are a couple of different constructors supported to keep table definition clean.
* The fields indicated as Optional are only included for the specific field type they relate to.
*
* Meaning/Use of the fields is:
*
* Field 1 Mandatory Field to which the label localisation should be applied
* Can be set to null if no label localization required
* Field 2 Mandatory Field in which value stored )if relevant). Can be same as field 1.
* Also has tooltip localisation applied if .tooltip version of Field 3 found
* so set field 1 to null if only tooltip to be set up.
* Can be null for fields that do not held stored configuration values
* Field 3 Mandatory Key for finding localization string. Any .label/.tooltip suffix is omitted
* Can optionally have the .label added to the key in localization file
* If key with .tooltip found in localization file this is assumed to be a tooltip
*
* Field 4 Optional Base name of the methods for loading/storing the the values in Field 2
* If the field only needs localisation, but not storing in the configuration
* file then then there will be no method defined so only fields 1 to 3 defined.
*
* Field 5 Optional For checkboxes only. Indicate is displayed field is negated from config value
*
* Field 5 Optional Numeric fields. Indicates minimum value allowed
* Field 6 Optional Numeric fields: Indicates maximum value allowed
*
* NOTE: If any new types are introduced for field 1 or field 2 then guiField class will
* neeed to be updated to handle this new type in the standard way desired.
*/
private void initGuiFields() {
guiFields = new guiField[] {
// Yab definitions
// (last character of localizationKey is assumed to be the index)
new guiField(tabOptionsTabs, null, "gui.tab1"),
new guiField(tabOptionsTabs, null, "gui.tab2"),
new guiField(tabOptionsTabs, null, "gui.tab3"),
new guiField(tabOptionsTabs, null, "gui.tab4"),
new guiField(tabOptionsTabs, null, "gui.tab5"),
new guiField(tabOptionsTabs, null, "gui.tab6"),
new guiField(tabOptionsTabs, null, "gui.tab7"),
// Main Windows
new guiField(cmdCancel, null, "gui.close"),
new guiField(cmdSave, null, "gui.save"),
new guiField(cmdGenerate, null, "gui.generate"),
new guiField(cmdReset, null, "gui.reset"),
new guiField(cmdHelp, null, "gui.help"),
new guiField(null, lblProfile, "config.profile"),
// main options
new guiField(lblDatabaseFolder, txtDatabaseFolder, "config.DatabaseFolder", "DatabaseFolder"),
new guiField(lblTargetFolder, txtTargetFolder, "config.TargetFolder", "TargetFolder"),
new guiField(lblCopyToDatabaseFolder, chkCopyToDatabaseFolder, "config.CopyToDatabaseFolder", "CopyToDatabaseFolder"),
new guiField(lblOnlyCatalogAtTarget, chkOnlyCatalogAtTarget, "config.OnlyCatalogAtTarget", "OnlyCatalogAtTarget"),
new guiField(lblReprocessEpubMetadata, chkReprocessEpubMetadata, "config.ReprocessEpubMetadata", "ReprocessEpubMetadata"),
new guiField(lblCatalogFolder, txtCatalogFolder, "config.CatalogFolderName", "CatalogFolderName"),
new guiField(lblUrlBooks, txtUrlBooks, "config.UrlBooks", "UrlBooks"),
new guiField(lblCatalogTitle, txtCatalogTitle, "config.CatalogTitle", "CatalogTitle"),
new guiField(lblSplittagson, txtSplittagson, "config.SplitTagsOn", "SplitTagsOn", true),
new guiField(chkDontsplittags, chkDontsplittags, "config.DontSplitTagsOn", "DontSplitTagsOn"),
new guiField(lblCatalogFilter, txtCatalogFilter, "config.CatalogFilter", "CatalogFilter"),
new guiField(lblFavicon, txtFavicon, "config.Favicon", "Favicon"),
new guiField(lblWikilang, txtWikilang, "config.WikipediaLanguage", "WikipediaLanguage"),
new guiField(lblCryptFilenames, chkCryptFilenames, "config.CryptFilenames", "CryptFilenames"),
new guiField(lblDisableOptimizer, chkDisableOptimizer, "config.DisableOptimizer", "DisableOptimizer"),
// catalog structure options
new guiField(lblNogenerateopds, chkNogenerateopds, "config.GenerateOpds", "GenerateOpds", true),
new guiField(lblNogeneratehtml, chkNogeneratehtml, "config.GenerateHtml", "GenerateHtml", true),
new guiField(lblNogenerateopdsfiles, chkNogenerateopdsfiles, "config.GenerateOpdsDownloads", "GenerateOpdsDownloads", true),
new guiField(lblNogeneratehtmlfiles, chkNogeneratehtmlfiles, "config.GenerateHtmlDownloads", "GenerateHtmlDownloads", true),
new guiField(lblBrowseByCover, chkBrowseByCover, "config.BrowseByCover", "BrowseByCover"),
new guiField(lblBrowseByCoverWithoutSplit, chkBrowseByCoverWithoutSplit, "config.BrowseByCoverWithoutSplit", "BrowseByCoverWithoutSplit"),
new guiField(lblLanguageAsTag, chkLanguageAsTag, "config.LanguageAsTag", "LanguageAsTag"),
new guiField(lblNoIncludeAboutLink, chkNoIncludeAboutLink, "config.IncludeAboutLink", "IncludeAboutLink", true),
new guiField(lblExternalIcons, chkExternalIcons, "config.ExternalIcons", "ExternalIcons"),
new guiField(lblexternalImages, chkExternalImages, "config.ExternalImages", "ExternalImages"),
new guiField(lblNoGenerateAuthors, chkNoGenerateAuthors, "config.GenerateAuthors", "GenerateAuthors", true),
new guiField(lblNoGenerateTags, chkNoGenerateTags, "config.GenerateTags", "GenerateTags", true),
new guiField(lblTagsToIgnore, txtTagsToIgnore, "config.TagsToIgnore", "TagsToIgnore"),
new guiField(lblCatalogCustomColumns, txtCatalogCustomColumns, "config.CatalogCustomColumns", "CatalogCustomColumns"),
new guiField(lblNoGenerateSeries, chkNoGenerateSeries, "config.GenerateSeries", "GenerateSeries", true),
new guiField(lblNogeneraterecent, chkNogeneraterecent, "config.GenerateRecent", "GenerateRecent", true),
new guiField(lblNogenerateratings, chkNogenerateratings, "config.GenerateRatings", "GenerateRatings", true),
new guiField(lblSupressRatings, chkSupressRatings, "config.SuppressRatingsInTitles", "SuppressRatingsInTitles"),
new guiField(lblNogenerateallbooks, chkNogenerateallbooks, "config.GenerateAllbooks", "GenerateAllbooks", true),
new guiField(lblSortTagsByAuthor, chkSortTagsByAuthor, "config.SortTagsByAuthor", "SortTagsByAuthor"),
new guiField(lblTagBooksNoSplit, chkTagBookNoSplit, "config.TagBooksNoSplit", "TagBooksNoSplit"),
new guiField(lblSortUsingAuthor, chkSortUsingAuthorSort, "config.SortUsingAuthor", "SortUsingAuthor"),
new guiField(lblSortUsingTitle, chkSortUsingTitleSort, "config.SortUsingTitle", "SortUsingTitle"),
new guiField(lblSortSeriesUsingLibrarySort, chkSortSeriesUsingLibrarySort, "config.SortSeriesUsingLibrarySort", "SortSeriesUsingLibrarySort"),
// Book Details Options
new guiField(lblIncludeTitleInBookDetails, chkIncludeTitleInBookDetails, "config.IncludeTitleInBookDetails", "IncludeTitleInBookDetails"),
new guiField(lblIncludeAuthorInBookDetails, chkIncludeAuthorInBookDetails, "config.IncludeAuthorInBookDetails", "IncludeAuthorInBookDetails"),
new guiField(lblIncludeSeriesInBookDetails, chkIncludeSeriesInBookDetails, "config.IncludeSeriesInBookDetails", "IncludeSeriesInBookDetails"),
new guiField(lblIncludeRatingInBookDetails, chkIncludeRatingInBookDetails, "config.IncludeRatingInBookDetails", "IncludeRatingInBookDetails"),
new guiField(lblIncludeTagsInBookDetails, chkIncludeTagsInBookDetails, "config.IncludeTagsInBookDetails", "IncludeTagsInBookDetails"),
new guiField(lblIncludePublisherInBookDetails, chkIncludePublisherInBookDetails, "config.IncludePublisherInBookDetails", "IncludePublisherInBookDetails"),
new guiField(lblIncludePublishedInBookDetails, chkIncludePublishedInBookDetails, "config.IncludePublishedInBookDetails", "IncludePublishedInBookDetails"),
new guiField(lblPublishedDateAsYear, chkPublishedDateAsYear, "config.PublishedDateAsYear", "PublishedDateAsYear"),
new guiField(lblDisplayAuthorSort, chkDisplayAuthorSort, "config.DisplayAuthorSort", "DisplayAuthorSort"),
new guiField(lblDisplayTitleSort, chkDisplayTitleSort, "config.DisplayTitleSort", "DisplayTitleSort"),
new guiField(lblDisplaySeriesSort, chkDisplaySeriesSort, "config.DisplaySeriesSort", "DisplaySeriesSort"),
new guiField(lblIncludeAddedInBookDetails, chkIncludeAddedInBookDetails, "config.IncludeAddedInBookDetails", "IncludeAddedInBookDetails"),
new guiField(lblIncludeModifiedInBookDetails, chkIncludeModifiedInBookDetails, "config.IncludeModifiedInBookDetails", "IncludeModifiedInBookDetails"),
new guiField(lblIncludeSizeOfDownloads, chkIncludeSizeOfDownloads, "config.IncludeSizeOfDownloads", "IncludeSizeOfDownloads"),
new guiField(lblBookDetailsCustomFields, txtBookDetailsCustomFields, "config.BookDetailsCustomFields", "BookDetailsCustomFields"),
new guiField(null, chkBookDetailsCustomFieldsAlways, "config.BookDetailsCustomFieldsAlways", "BookDetailsCustomFieldsAlways"),
new guiField(lblNogeneratecrosslinks, chkNogeneratecrosslinks, "config.GenerateCrossLinks", "GenerateCrossLinks", true),
new guiField(lblSingleBookCrossReferences, chkSingleBookCrossReferences, "config.SingleBookCrossReferences", "SingleBookCrossReferences"),
new guiField(lblIncludeAuthorCrossReferences, chkIncludeAuthorCrossReferences, "config.IncludeAuthorCrossReferences", "IncludeAuthorCrossReferences"),
new guiField(lblIncludeSerieCrossReferences, chkIncludeSerieCrossReferences, "config.IncludeSerieCrossReferences", "IncludeSerieCrossReferences"),
new guiField(lblIncludeTagCrossReferences, chkIncludeTagCrossReferences, "config.IncludeTagCrossReferences", "IncludeTagCrossReferences"),
new guiField(lblIncludeRatingCrossReferences, chkIncludeRatingCrossReferences, "config.IncludeRatingCrossReferences", "IncludeRatingCrossReferences"),
// advanced customization options
new guiField(lblIncludeformat, txtIncludeformat, "config.IncludedFormatsList", "IncludedFormatsList"),
new guiField(lblMaxbeforepaginate, txtMaxbeforepaginate, "config.MaxBeforePaginate", "MaxBeforePaginate", 0, 99999),
new guiField(lblMaxbeforesplit, txtMaxbeforesplit, "config.MaxBeforeSplit", "MaxBeforeSplit",0, 99999),
new guiField(lblMaxSplitLevels, txtMaxSplitLevels, "config.MaxSplitLevels", "MaxSplitLevels", 0,8),
new guiField(lblBooksinrecent, txtBooksinrecent, "config.BooksInRecentAdditions", "BooksInRecentAdditions", 0, 1000),
new guiField(lblMaxsummarylength, txtMaxsummarylength, "config.MaxSummaryLength", "MaxSummaryLength", 0, 99999),
new guiField(lblMaxBookSummaryLength, txtMaxBookSummaryLength, "config.MaxBookSummaryLength", "MaxBookSummaryLength", 0, 99999),
new guiField(lblIncludeemptybooks, chkIncludeemptybooks, "config.IncludeBooksWithNoFile", "IncludeBooksWithNoFile"),
new guiField(lblIncludeOnlyOneFile, chkIncludeOnlyOneFile, "config.IncludeOnlyOneFile", "IncludeOnlyOneFile"),
new guiField(lblZipTrookCatalog, chkZipTrookCatalog, "config.ZipTrookCatalog", "ZipTrookCatalog"),
new guiField(lblNoShowSeries, chkNoShowSeries, "config.ShowSeriesInAuthorCatalog", "ShowSeriesInAuthorCatalog", true),
new guiField(lblOrderAllBooksBySeries, chkOrderAllBooksBySeries, "config.OrderAllBooksBySeries", "OrderAllBooksBySeries"),
new guiField(lblSplitByAuthorInitialGoToBooks, chkSplitByAuthorInitialGoToBooks, "config.SplitByAuthorInitialGoToBooks", "SplitByAuthorInitialGoToBooks"),
new guiField(lblNoThumbnailGenerate, chkNoThumbnailGenerate, "config.ThumbnailGenerate", "ThumbnailGenerate", true),
new guiField(lblThumbnailheight, txtThumbnailheight, "config.ThumbnailHeight", "ThumbnailHeight", 0, 1000),
new guiField(lblNoCoverResize, chkNoCoverResize, "config.CoverResize", "CoverResize", true),
new guiField(lblIncludeCoversInCatalog, chkIncludeCoversInCatalog, "config.IncludeCoversInCatalog", "IncludeCoversInCatalog"),
new guiField(lblUseThumbnailAsCover, chkUseThumbnailAsCover, "config.UseThumbnailsAsCovers", "UseThumbnailsAsCovers"),
new guiField(lblZipCatalog, chkZipCatalog, "config.ZipCatalog", "ZipCatalog"),
new guiField(lblZipOmitXml, chkZipOmitXml, "config.ZipOmitXml", "ZipOmitXml"),
new guiField(lblCoverHeight, txtCoverHeight, "config.CoverHeight", "CoverHeight", 0, 999),
new guiField(lblTagsToMakeDeep, txtTagsToMakeDeep, "config.TagsToMakeDeep", "TagsToMakeDeep"),
new guiField(lblMinBooksToMakeDeepLevel, txtMinBooksToMakeDeepLevel, "config.MinBooksToMakeDeepLevel", "MinBooksToMakeDeepLevel", 0, 99999),
// new guiField(lblMaxMobileResolution, txtMaxMobileResolution, "config.MaxMobileResolution", "MaxMobileResolution", 0, 2000),
new guiField(lblGenerateIndex, chkGenerateIndex, "config.GenerateIndex", "GenerateIndex"),
new guiField(lblMaxKeywords, txtMaxKeywords, "config.MaxKeywords", "MaxKeywords"),
new guiField(lblIndexComments, chkIndexComments, "config.IndexComments", "IndexComments"),
new guiField(lblIndexFilterAlgorithm, cboIndexFilterAlgorithm, "config.IndexFilterAlgorithm"),
// external links
new guiField(lblNogenerateExternalReferences, chkNogenerateExternalReferences, "config.GenerateExternalReferences", "GenerateExternalReferences", true),
new guiField(lblNewWindowForExternalReferences, chkNewWindowForExternalReferences, "config.NewWindowForExternalReferences", "NewWindowForExternalReferences", false),
new guiField(lblWikipediaUrl, txtWikipediaUrl, "config.WikipediaUrl", "WikipediaUrl"),
new guiField(cmdWikipediaUrlReset, null, "config.Reset"),
new guiField(lblAmazonAuthorUrl, txtAmazonAuthorUrl, "config.AmazonAuthorUrl", "AmazonAuthorUrl"),
new guiField(cmdAmazonUrlReset, null, "config.Reset"),
new guiField(lblAmazonIsbnUrl, txtAmazonIsbnUrl, "config.AmazonIsbnUrl", "AmazonIsbnUrl"),
new guiField(cmdAmazonIsbnReset, null, "config.Reset"),
new guiField(lblAmazonTitleUrl, txtAmazonTitleUrl, "config.AmazonTitleUrl", "AmazonTitleUrl"),
new guiField(cmdAmazonTitleReset, null, "config.Reset"),
new guiField(lblGoodreadAuthorUrl, txtGoodreadAuthorUrl, "config.GoodreadAuthorUrl", "GoodreadAuthorUrl"),
new guiField(cmdGoodreadAuthorReset, null, "config.Reset"),
new guiField(lblGoodreadIsbnUrl, txtGoodreadIsbnUrl, "config.GoodreadIsbnUrl", "GoodreadIsbnUrl"),
new guiField(cmdGoodreadIsbnReset, null, "config.Reset.label"),
new guiField(lblGoodreadTitleUrl, txtGoodreadTitleUrl, "config.GoodreadTitleUrl", "GoodreadTitleUrl"),
new guiField(cmdGoodreadTitleReset, null, "config.Reset"),
new guiField(lblGoodreadReviewIsbnUrl, txtGoodreadReviewIsbnUrl, "config.GoodreadReviewIsbnUrl", "GoodreadReviewIsbnUrl"),
new guiField(cmdGoodreadReviewReset, null, "config.Reset"),
new guiField(lblIsfdbAuthorUrl, txtIsfdbAuthorUrl, "config.IsfdbAuthorUrl", "IsfdbAuthorUrl"),
new guiField(cmdIsfdbAuthorReset, null, "config.Reset.label"),
new guiField(lblLibrarythingAuthorUrl, txtLibrarythingAuthorUrl, "config.LibrarythingAuthorUrl", "LibrarythingAuthorUrl"),
new guiField(cmdLibrarythingAuthorReset, null, "config.Reset"),
new guiField(lblLibrarythingIsbnUrl, txtLibrarythingIsbnUrl, "config.LibrarythingIsbnUrl", "LibrarythingIsbnUrl"),
new guiField(cmdLibrarythingIsbnReset, null, "config.Reset"),
new guiField(lblLibrarythingTitleUrl, txtLibrarythingTitleUrl, "config.LibrarythingTitleUrl", "LibrarythingTitleUrl"),
new guiField(cmdLibrarythingTitleReset, null, "config.Reset"),
// Custom catalogs
new guiField(lblNewWindowForCustomExternalLinks, chkNewWindowForCustomExternalLinks, "config.NewWindowForCustomExternalLinks", "NewWindowForCustomExternalLinks", false),
new guiField(cmdAdd, null, "config.CustomCatalogAdd"),
new guiField(lblFeaturedCatalogTitle, txtFeaturedCatalogTitle, "config.FeaturedCatalogTitle", "FeaturedCatalogTitle"),
new guiField(lblFeaturedCatalogSavedSearchName, txtFeaturedCatalogSavedSearchName, "config.FeaturedCatalogSavedSearchName", "FeaturedCatalogSavedSearchName"),
// Menus
new guiField(mnuFile, null, "gui.menu.file"),
new guiField(mnuFileSave, null, "gui.save"),
new guiField(mnuFileGenerateCatalogs, null, "gui.generate"),
new guiField(mnuFileExit, null, "gui.close"),
new guiField(mnuProfiles, null, "gui.menu.profiles"),
new guiField(mnuTools, null, "gui.menu.tools"),
new guiField(mnuToolsprocessEpubMetadataOfAllBooks, null, "gui.menu.tools.processEpubMetadataOfAllBooks"),
new guiField(mnuHelp, null, "gui.menu.help"),
new guiField(mnuHelpDonate, null, "gui.menu.help.donate"),
new guiField(mnuHelpAbout, null, "gui.menu.help.about"),
new guiField(mnuHelpHome, null, "gui.menu.help.home"),
new guiField(mnuHelpUserGuide, null, "gui.menu.help.userGuide"),
new guiField(mnuHelpDevelopersGuide, null, "gui.menu.help.developerGuide"),
new guiField(mnuHelpOpenIssues, null, "gui.menu.help.issueRegister"),
new guiField(mnuHelpOpenForum, null, "gui.menu.help.supportForum"),
new guiField(mnuHelpOpenLocalize, null, "gui.menu.help.localize"),
new guiField(mnuHelpOpenCustomize, null, "gui.menu.help.customize"),
new guiField(mnuToolsResetSecurityCache, null, "gui.menu.tools.resetEncrypted"),
new guiField(mnuToolsConfigLog,null,"gui.menu.tools.logConfig"),
new guiField(mnuToolsOpenLog,null, "gui.menu.tools.logFile"),
new guiField(mnuToolsOpenOldLog,null, "gui.menu.tools.oldLogFile"),
new guiField(mnuToolsOpenSyncLog,null, "gui.menu.tools.syncFile"),
new guiField(mnuToolsClearLog, null, "gui.menu.tools.logClear"),
new guiField(mnuToolsOpenConfig, null, "gui.menu.tools.configFolder"),
new guiField(lblSearchDeprecated,null,"gui.searchDeprecated.label"),
// Should always be last entry in case it triggers re-localisation to new language
new guiField(lblLang, cboLang, "config.Language", "Language")
};
}
/**
* Get the guiField entry corresponding to a particular label field
* Useful if we want to check the stored properties
*
* @param label
* @return
*/
private guiField getGuiField(JComponent label) {
assert label != null;
for (guiField g : guiFields) {
if (label == g.getGuiLabel()) {
return g;
}
}
logger.trace("Unable to locate guiField " + label.getName());
return null;
}
/**
* add a button to the custom catalogs table
*/
private void addDeleteButtonToCustomCatalogsTable() {
// add a button to the custom catalogs table
Action delete = new AbstractAction() {
public void actionPerformed(ActionEvent e) {
int modelRow = Integer.valueOf(e.getActionCommand());
customCatalogTableModel.deleteCustomCatalog(modelRow);
}
};
/*
Action check = new AbstractAction() {
public void actionPerformed(ActionEvent e) {
int modelRow = Integer.valueOf(e.getActionCommand());
customCatalogTableModel.checkCustomCatalog(modelRow);
}
};
*/
// CheckboxColumn checkboxColumn = new CheckboxColumn(tblCustomCatalogs, null, 2);
// checkboxColumn.setMnemonic(KeyEvent.VK_C);
ButtonColumn buttonColumn = new ButtonColumn(tblCustomCatalogs, delete, 3);
buttonColumn.setMnemonic(KeyEvent.VK_D);
Dimension d = tabOptionsTabs.getPreferredSize();
int width = (int) d.getWidth() - 24;
tblCustomCatalogs.getColumnModel().getColumn(0).setPreferredWidth((int)(width * .2));
tblCustomCatalogs.getColumnModel().getColumn(1).setPreferredWidth((int) (width * .6));
tblCustomCatalogs.getColumnModel().getColumn(2).setMinWidth(40); // Checkbox
tblCustomCatalogs.getColumnModel().getColumn(2).setMaxWidth(40); // Checkbox
tblCustomCatalogs.getColumnModel().getColumn(3).setMinWidth(80); // Delete
tblCustomCatalogs.getColumnModel().getColumn(3).setMaxWidth(80); // Delete
tblCustomCatalogs.getColumnModel().getColumn(3).setPreferredWidth((int)(width * .10)); // Delete button
}
/**
* Check a field that is meant to contain a search term
*
* @param title
* @param searchText
* @return
*/
private boolean validateSearch (String title, String searchText) {
if (searchText.toUpperCase().startsWith(Constants.CUSTOMCATALOG_SEARCH_SAVED.toUpperCase())) {
return true;
}
for (String val : Constants.CUSTOMCATALOG_SEARCH_FIELD_NAMES) {
if (searchText.toUpperCase().startsWith(val.toUpperCase())) {
return true;
}
}
return false;
}
/**
* check a field that defines a Custom Catalog
*/
private boolean validateCustomCatalog(String title, String value) {
return false;
}
private void processEpubMetadataOfAllBooks() {
// question
String message = Localization.Main.getText("gui.confirm.tools.processEpubMetadataOfAllBooks");
String yes = Localization.Main.getText("boolean.yes");
String cancel = Localization.Main.getText("boolean.no");
boolean removeCss = false;
boolean restoreCss = false;
File defaultCss = null;
String onlyForTag = null;
int result;
if (ConfigurationManager.isHacksEnabled()) {
String yesAndRemoveCss = Localization.Main.getText("gui.confirm.tools.removeCss");
String yesAndRestoreCss = Localization.Main.getText("gui.confirm.tools.restoreCss");
result = JOptionPane
.showOptionDialog(this, message, "", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, new Object[]{yes, yesAndRemoveCss, yesAndRestoreCss,
cancel},
cancel);
if (result == 3)
return;
removeCss = (result == 1);
restoreCss = (result == 2);
if (removeCss || restoreCss) {
onlyForTag = JOptionPane.showInputDialog(this, "Only for tag (empty for all)");
if (removeCss) {
JFileChooser chooser = new JFileChooser();
chooser.setFileFilter(new FileFilter() {
@Override
public boolean accept(File f) {
return (f != null && (!f.isFile() || f.getName().toUpperCase().endsWith(".CSS")));
}
@Override
public String getDescription() {
return "CSS stylesheets";
}
});
result = chooser.showOpenDialog(this);
if (result != JFileChooser.CANCEL_OPTION)
defaultCss = chooser.getSelectedFile();
}
}
} else {
result =
JOptionPane.showOptionDialog(this, message, "", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, new Object[]{yes, cancel}, cancel);
if (result == JOptionPane.NO_OPTION)
return;
}
// confirmation
message = Localization.Main.getText("gui.confirm.tools.processEpubMetadataOfAllBooks2");
result = JOptionPane.showConfirmDialog(this, message, "", JOptionPane.YES_NO_OPTION);
if (result != JOptionPane.YES_OPTION)
return;
new ReprocessEpubMetadataDialog(this, true, removeCss, restoreCss, defaultCss, onlyForTag).start();
}
void checkAuthorsIncluded() {
boolean b = chkIncludeAuthorInBookDetails.isSelected();
// Toggle the setting for Including authors to match
chkNoGenerateAuthors.setEnabled(true);
chkNoGenerateAuthors.setSelected(!b);
lblNoGenerateAuthors.setEnabled(b);
chkNoGenerateAuthors.setEnabled(b);
// Hide optios which are not relevant if not including author.
lblDisplayAuthorSort.setVisible(b);
chkDisplayAuthorSort.setVisible(b);
lblIncludeAuthorCrossReferences.setVisible(b);
chkIncludeAuthorCrossReferences.setVisible(b);
}
/**
* Do some validation on the options to split tags.
*
* If the option is disabled, but the txt field is empty then set it
* to the default value (this will auto-correct legacy cases)
*
* Ptherwise give error mesages if the field is empty or eet to comma
*/
private boolean checkSplitTagsOn(boolean warn) {
if (chkDontsplittags.isSelected()) {
if (txtSplittagson.getText().equals("")) {
txtSplittagson.setText(".");
}
} else {
if (txtSplittagson.getText().equals("")) {
String message = Localization.Main.getText("config.SplitTagsOnEmpty.error");
JOptionPane.showMessageDialog(this, message,"", JOptionPane.ERROR_MESSAGE);
return false;
}
if (warn && txtSplittagson.getText().equals(",")) {
String message = Localization.Main.getText("config.SplitTagsOnComma.warn");
JOptionPane.showMessageDialog(this, message,"", JOptionPane.WARNING_MESSAGE);
return false;
}
}
txtSplittagson.setEnabled(!chkDontsplittags.isSelected());
return true;
}
/**
*
*/
private void computeBrowseByCoverWithoutSplitVisibility() {
boolean visible = chkBrowseByCover.isSelected();
chkBrowseByCoverWithoutSplit.setVisible(visible);
lblBrowseByCoverWithoutSplit.setVisible(visible);
}
/**
* Control the valid combinations of generation types and downloads allowed
*/
private void checkDownloads() {
// If we are not generating OPDS files, then the option to
// set OPDS downloads will follow the HTML setting. Also the
// user can no longer toggle the OPDS download option directly.
if (chkNogenerateopds.isSelected()) {
chkNogeneratehtmlfiles.setEnabled(chkNogeneratehtml.isEnabled());
chkNogenerateopdsfiles.setSelected(chkNogeneratehtmlfiles.isSelected());
chkNogenerateopdsfiles.setEnabled(false);
chkZipOmitXml.setSelected(true);
chkZipOmitXml.setEnabled(false);
} else {
// If we are generating OPDS catalogs, then start by assuming that
// both types of downloads are allowed.
chkNogenerateopdsfiles.setEnabled(true);
// If we are not generating OPDS downloads then the HTML downloads
// must be suppressed.
if (chkNogenerateopdsfiles.isSelected()) {
chkNogeneratehtmlfiles.setSelected(true);
chkNogeneratehtmlfiles.setEnabled(false);
} else {
chkNogeneratehtmlfiles.setEnabled(true);
}
}
// If we are not generating HTML catalogs then we cannot
// set HTML downloads
if (chkNogeneratehtml.isSelected()) {
chkNogeneratehtmlfiles.setSelected(true);
chkNogeneratehtmlfiles.setEnabled(false);
chkZipOmitXml.setSelected(false);
chkZipOmitXml.setEnabled(false);
} else {
// If we are generating HTHL catalogs then HTML
// downloads are only allowed if OPDS ones are also active
// or we are not generating OPDS catalogs
chkNogeneratehtmlfiles.setEnabled(chkNogenerateopds.isSelected()==true || chkNogenerateopdsfiles.isSelected()==false);
}
lblZipOmitXml.setEnabled(lblZipOmitXml.isEnabled());
}
/**
* Check if the user is allowed to set the option to only have a
* catalog at the target location?
*/
private void checkOnlyCatalogAllowed() {
if (lblTargetFolder.isEnabled()
&& Helper.isNotNullOrEmpty(txtUrlBooks.getText())) {
lblOnlyCatalogAtTarget.setEnabled(true);
} else {
lblOnlyCatalogAtTarget.setEnabled(false);
}
chkOnlyCatalogAtTarget.setEnabled(lblOnlyCatalogAtTarget.isEnabled());
checkCatalogFolderNeeded();
}
/**
* Decide if the catalog folder setting is relevant
*/
private void checkCatalogFolderNeeded() {
if (Helper.isNotNullOrEmpty(txtUrlBooks.getText())
&& chkOnlyCatalogAtTarget.isSelected()
&& lblOnlyCatalogAtTarget.isEnabled()
&& !chkCopyToDatabaseFolder.isSelected()) {
lblCatalogFolder.setEnabled(false);
} else {
lblCatalogFolder.setEnabled(true);
}
txtCatalogFolder.setEnabled(lblCatalogFolder.isEnabled());
}
/**
* Enable/disable the sub-selections for cross-references depending on master setting
*/
private void checkCrossReferencesEnabled() {
boolean state = !chkNogeneratecrosslinks.isSelected();
lblSingleBookCrossReferences.setEnabled(state);
chkSingleBookCrossReferences.setEnabled(state);
lblIncludeAuthorCrossReferences.setEnabled(state);
chkIncludeAuthorCrossReferences.setEnabled(state);
lblIncludeSerieCrossReferences.setEnabled(state);
chkIncludeSerieCrossReferences.setEnabled(state);
lblIncludeTagCrossReferences.setEnabled(state);
chkIncludeTagCrossReferences.setEnabled(state);
lblIncludeRatingCrossReferences.setEnabled(state);
chkIncludeRatingCrossReferences.setEnabled(state);
}
private void actOnGenerateIndexActionPerformed() {
boolean generateIndex = chkGenerateIndex.isSelected();
lblIndexComments.setVisible(generateIndex);
chkIndexComments.setVisible(generateIndex);
lblMaxKeywords.setVisible(generateIndex);
txtMaxKeywords.setVisible(generateIndex);
lblIndexFilterAlgorithm.setVisible(generateIndex);
cboIndexFilterAlgorithm.setVisible(generateIndex);
}
/**
* Enable/disables GUI fiels that are mode specific
* @param mode
*/
private void adaptInterfaceToDeviceSpecificMode(DeviceMode mode) {
Border RED_BORDER = new LineBorder(Color.red,2);
switch (mode) {
case Nook:
// put a border on the selected mode icon
lblDeviceDropbox.setBorder(null);
lblDeviceNAS.setBorder(null);
lblDeviceNook.setBorder(RED_BORDER);
lblDeviceMode.setText(Localization.Main.getText("config.DeviceMode.nook.tooltip"));
lblZipTrookCatalog.setVisible(true);
chkZipTrookCatalog.setVisible(true);
break;
case Nas:
// put a border on the selected mode icon
lblDeviceDropbox.setBorder(null);
lblDeviceNook.setBorder(null);
lblDeviceNAS.setBorder(RED_BORDER);
lblDeviceMode.setText(Localization.Main.getText("config.DeviceMode.nas.tooltip"));
lblZipTrookCatalog.setVisible(false);
chkZipTrookCatalog.setVisible(false);
break;
default:
// put a border on the selected mode icon
lblDeviceNAS.setBorder(null);
lblDeviceNook.setBorder(null);
lblDeviceDropbox.setBorder(RED_BORDER);
lblDeviceMode.setText(Localization.Main.getText("config.DeviceMode.dropbox.tooltip"));
lblZipTrookCatalog.setVisible(false);
chkZipTrookCatalog.setVisible(false);
break;
}
// show all the buttons and commands
// ITIMPI: Not quite sure why this needs to be done here?
cmdCancel.setEnabled(true);
mnuFileExit.setEnabled(true);
cmdGenerate.setEnabled(true);
mnuFileGenerateCatalogs.setEnabled(true);
cmdReset.setEnabled(true);
cmdSave.setEnabled(true);
mnuFileSave.setEnabled(true);
}
/**
*
* @param mode
*/
private void setDeviceSpecificMode(DeviceMode mode) {
DeviceMode currentMode = currentProfile.getDeviceMode();
// If switching modes, then some values may need their values forced to be mode specific
if (currentMode != mode) {
currentProfile.setDeviceMode(mode);
adaptInterfaceToDeviceSpecificMode(mode);
DeviceMode.fromName(currentProfile.getDeviceMode().toString()).setModeSpecificOptions(currentProfile);
}
loadProfileValues();
}
/**
* Change the localization to match the language set in the GUI option
*/
private void changeLanguage() {
String newLanguage = (String) cboLang.getSelectedItem();
if (newLanguage == null) newLanguage = Locale.ENGLISH.getLanguage();
if ((language == null) || Helper.checkedCompare(language.getLanguage(), newLanguage) != 0) {
language = Helper.getLocaleFromLanguageString(newLanguage);
currentProfile.setLanguage(Helper.getLocaleFromLanguageString(newLanguage));
Localization.Main.setProfileLanguage(currentProfile.getLanguage());
Localization.Enum.setProfileLanguage(currentProfile.getLanguage());
Localization.Main.reloadLocalizations();
Localization.Enum.reloadLocalizations();
translateTexts();
pack();
}
}
private void debugShowFile(File file) {
try {
OS.factory().openFile(file);
} catch (IOException e) {
JOptionPane.showMessageDialog(this, e.getMessage());
}
}
private String debugShowFolder(File file, String defaultName) {
Frame parent = new Frame(); // Dummy ever shown
FileDialog fd = new FileDialog(parent, file.getPath());
fd.setDirectory(file.getPath() +"\\");
fd.setMode(FileDialog.LOAD);
if (defaultName != null) {
fd.setFile(defaultName);
}
fd.setVisible(true);
String result = fd.getFile();
parent.dispose();
return result;
}
/**
* Start up the dialog for configuring the log settings
*/
private void configLogFile() {
ConfigureLoggingDialog dialog = new ConfigureLoggingDialog(Mainframe.this, true);
dialog.setLocationRelativeTo(Mainframe.this);
dialog.setVisible(true);
}
private void debugShowLogFile(String f) {
assert f != null;
File fl = new File(ConfigurationManager.getConfigurationDirectory(), Constants.LOGFILE_FOLDER + "/" + f);
logger.info(Localization.Main.getText("gui.menu.tools.logFile") + ": " + fl.getPath());
debugShowFile(fl);
}
/**
* Remove any existing log files.
* This will include any of the following that are present:
* calibre2opds.log
* calibre2opds.log.*
* synclog.log
* TODO: There appears to be an issue deleting the current active log file - not sure how to resolve this!
*/
private void debugClearLogFile() {
File logFolder = new File(ConfigurationManager.getConfigurationDirectory(), Constants.LOGFILE_FOLDER);
File fileList[] = logFolder.listFiles();
for (File f : fileList) {
if (f.getName().contains(".log")) {
f.delete();
logger.trace("Deleted: " + f);
}
}
String msg = Localization.Main.getText("gui.menu.tools.logCleared");
logger.info(msg);
JOptionPane.showMessageDialog(this, msg, "", JOptionPane.INFORMATION_MESSAGE);
}
private void debugShowLogFolder() {
File f = new File(ConfigurationManager.getConfigurationDirectory(), Constants.LOGFILE_FOLDER);
logger.info(Localization.Main.getText("gui.menu.tools.logFolder") + ": " + f.getPath());
String sel = debugShowFolder(f, Constants.LOGFILE_NAME);
if (Helper.isNotNullOrEmpty(sel)) {
debugShowLogFile(sel);
}
}
private void debugShowSupportFolder() {
File f = ConfigurationManager.getConfigurationDirectory();
logger.info(Localization.Main.getText("gui.menu.tools.configFolder") + ": " + f.getPath());
debugShowFolder(f, null);
}
private void about() {
logger.info("Displaying About dialog");
String prog_version = Localization.Main.getText("gui.title", Constants.PROGTITLE + Constants.BZR_VERSION);
String intro_goal = Localization.Main.getText("intro.goal");
String intro_wiki_title = Localization.Main.getText("intro.wiki.title");
String intro_wiki_url = Localization.Main.getText("intro.wiki.url");
String intro_team_title = Localization.Main.getText("intro.team.title");
String intro_team_list1 = Localization.Main.getText("intro.team.list1");
String intro_team_title2 = Localization.Main.getText("intro.team.title2");
String intro_team_list2 = Localization.Main.getText("intro.team.list2");
String intro_team_list3 = Localization.Main.getText("intro.team.list3");
String intro_team_list4 = Localization.Main.getText("intro.team.list4");
String intro_team_list5 = Localization.Main.getText("intro.team.list5");
String intro_thanks_1 = Localization.Main.getText("intro.thanks.1");
String intro_thanks_2 = Localization.Main.getText("intro.thanks.2");
String message =
"<html>" + prog_version + "<br><br>" + intro_goal + "<br><br>" + intro_wiki_title + intro_wiki_url
+ "<br><br>" + intro_team_title
+ "<br><ul>"
+ "<li>" + intro_team_list1
+ "</ul>"
+ "<br>" + intro_team_title2
+ "<br><ul>"
+ "<li>" + intro_team_list2
+ "<li>" + intro_team_list3
+ "<li>" + intro_team_list4
+ "<li>" + intro_team_list5
+ "</ul><br>"
+ intro_thanks_1
+ "<br>" + intro_thanks_2 + "<br><br></html>";
JOptionPane.showMessageDialog(this, message, Localization.Main.getText("gui.menu.help.about"), JOptionPane.INFORMATION_MESSAGE);
}
private void donate() {
String message = Localization.Main.getText("gui.confirm.donate");
int result = JOptionPane.showConfirmDialog(this, message, "", JOptionPane.YES_NO_OPTION);
if (result != JOptionPane.YES_OPTION)
return;
logger.info(Localization.Main.getText("gui.menu.help.donate") + ": " + Constants.PAYPAL_DONATION);
BareBonesBrowserLaunch.openURL(Constants.PAYPAL_DONATION);
}
/**
* Control the generation of the catalog
* displaying the progress as it goes
*/
private void generateCatalog() {
if (! checkSplitTagsOn(false)) {
return;
}
storeProfileValues();
catalogDialog = new GenerateCatalogDialog(this, true);
final Catalog catalog = new Catalog(catalogDialog);
Runnable runnable = new Runnable() {
public void run() {
try {
catalog.createMainCatalog();
catalogEnded(null);
} catch (Exception e) {
catalogEnded(e);
}
}
};
new Thread(runnable).start();
try {
catalogDialog.setVisible(true);
catalogDialog.pack();
} catch (Exception e) {
// ITIMPI: This is a brute force fix to #772538
// which has only been reproduced on OS/X so far
// Maybe a tidier fix could be implemented?
// Do nothing
}
}
/**
* Catalog generation completed so close down generation dialog
* If necessary display the reason
* @param e
*/
synchronized void catalogEnded(final Exception e) {
if (catalogDialog == null)
return;
catalogDialog.setVisible(false);
catalogDialog = null;
if (e != null) {
Runnable runnable = new Runnable() {
public void run() {
String s = Helper.getStackTrace(e);
s = e.getMessage() + "\n" + s;
System.out.println(s);
logger.error(s, e);
JOptionPane.showMessageDialog(Mainframe.this, s, e.getClass().getName(), JOptionPane.ERROR_MESSAGE);
}
};
new Thread(runnable).start();
new Thread(runnable).start();
}
}
/**
* Set a new profile
* @param profileName
*/
private void setProfile(String profileName) {
currentProfile = ConfigurationManager.changeProfile(profileName, false);
// Changed profile - so need to update local cached copy as well!
if (currentProfile.isObsolete()) {
currentProfile.reset();
String msg = Localization.Main.getText("gui.reset.warning");
JOptionPane.showMessageDialog(this, msg, "", JOptionPane.WARNING_MESSAGE);
}
logger.info(Localization.Main.getText("info.setProfile", profileName));
loadProfileValues();
}
public void saveNewProfile() {
String newProfileName = JOptionPane.showInputDialog(Localization.Main.getText("gui.profile.new.msg"));
if ("default".equalsIgnoreCase(newProfileName)) {
return;
}
if (isUnSavedChanges() == true) {
String message = Localization.Main.getText("gui.save,confirm");
int result = JOptionPane.showConfirmDialog(this, message, "", JOptionPane.YES_NO_OPTION);
if (result != JOptionPane.YES_OPTION) {
return;
}
}
ConfigurationManager.copyCurrentProfile(newProfileName);
// Changed profile - so need to update local cached copy pointer as well!
loadProfileValues();
}
/**
*
*/
private void loadProfiles() {
// empty the profiles menu
mnuProfiles.removeAll();
JMenuItem mnuProfileNew = new JMenuItem();
mnuProfileNew.setText(Localization.Main.getText("gui.menu.profiles.new"));
mnuProfileNew.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
saveNewProfile();
}
});
mnuProfiles.add(mnuProfileNew);
JMenuItem mnuProfileManage = new JMenuItem();
mnuProfileManage.setText(Localization.Main.getText("gui.menu.profiles.manage"));
mnuProfileManage.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ProfileManagerDialog dialog = new ProfileManagerDialog(Mainframe.this, true);
dialog.setLocationRelativeTo(Mainframe.this);
dialog.setVisible(true);
// We only get to this next statement when the dialog hides itself.
loadProfiles(); // Reload the list as it has probably changed.
loadProfileValues(); // Reload the current profile as it may have been renamed
}
});
mnuProfiles.add(mnuProfileManage);
mnuProfiles.add(new JSeparator());
List<String> profiles = ConfigurationManager.getExistingConfigurations();
for (String profileName : profiles) {
JCheckBoxMenuItem mnuProfileItem = new JCheckBoxMenuItem();
mnuProfileItem.setText(profileName); // NOI18N
ActionListener listener = new ActionListener() {
String profile;
public void actionPerformed(java.awt.event.ActionEvent evt) {
Mainframe.this.setProfile(profile);
}
public ActionListener setProfile(String profile) {
this.profile = profile;
return this;
}
}.setProfile(profileName);
mnuProfileItem.addActionListener(listener);
// TODO check if it works
mnuProfileItem.setSelected(ConfigurationManager.getCurrentProfileName().equalsIgnoreCase(profileName));
mnuProfiles.add(mnuProfileItem);
}
}
/**
* We want the 'enabled's tate of the fields for specifying the URL's for
* external links to be anbled/disabled according to whether we are
* allowing the generation of this sort of link
*/
private void setExternalLinksEnabledState() {
boolean enabledNoExternalLinks = chkNogenerateExternalReferences.isSelected();
boolean derivedState;
derivedState = ! (enabledNoExternalLinks || currentProfile.isWikipediaUrlReadOnly());
txtWikipediaUrl.setEnabled(derivedState);
lblWikipediaUrl.setEnabled(derivedState);
lblWikipediaUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdWikipediaUrlReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isAmazonAuthorUrlReadOnly());
txtAmazonAuthorUrl.setEnabled(derivedState);
lblAmazonAuthorUrl.setEnabled(derivedState);
lblAmazonAuthorUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdAmazonUrlReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isAmazonIsbnUrlReadOnly());
txtAmazonIsbnUrl.setEnabled(derivedState);
lblAmazonIsbnUrl.setEnabled(derivedState);
lblAmazonIsbnUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdAmazonIsbnReset.setEnabled(derivedState);
derivedState = ! (enabledNoExternalLinks || currentProfile.isAmazonTitleUrlReadOnly());
txtAmazonTitleUrl.setEnabled(derivedState);
lblAmazonTitleUrl.setEnabled(derivedState);
lblAmazonTitleUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdAmazonTitleReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isGoodreadAuthorUrlReadOnly());
txtGoodreadAuthorUrl.setEnabled(derivedState);
lblGoodreadAuthorUrl.setEnabled(derivedState);
lblGoodreadAuthorUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdGoodreadAuthorReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isGoodreadIsbnUrlReadOnly());
txtGoodreadIsbnUrl.setEnabled(derivedState);
lblGoodreadIsbnUrl.setEnabled(derivedState);
lblGoodreadIsbnUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdGoodreadIsbnReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isGoodreadTitleUrlReadOnly());
txtGoodreadTitleUrl.setEnabled(derivedState);
lblGoodreadTitleUrl.setEnabled(derivedState);
lblGoodreadTitleUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdGoodreadTitleReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isGoodreadReviewIsbnUrlReadOnly());
txtGoodreadReviewIsbnUrl.setEnabled(derivedState);
lblGoodreadReviewIsbnUrl.setEnabled(derivedState);
lblGoodreadReviewIsbnUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdGoodreadReviewReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isIsfdbAuthorUrlReadOnly());
txtIsfdbAuthorUrl.setEnabled(derivedState);
lblIsfdbAuthorUrl.setEnabled(derivedState);
lblIsfdbAuthorUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdIsfdbAuthorReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isLibrarythingAuthorUrlReadOnly());
txtLibrarythingAuthorUrl.setEnabled(derivedState);
lblLibrarythingAuthorUrl.setEnabled(derivedState);
lblLibrarythingAuthorUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdLibrarythingAuthorReset.setEnabled((derivedState));
derivedState = ! (enabledNoExternalLinks || currentProfile.isLibrarythingIsbnUrlReadOnly());
txtLibrarythingIsbnUrl.setEnabled(derivedState);
lblLibrarythingIsbnUrl.setEnabled(derivedState);
cmdLibrarythingIsbnReset.setEnabled((derivedState));
lblLibrarythingIsbnUrl.setEnabled(false); //TODO remove when support for changing title ready
derivedState = ! (enabledNoExternalLinks || currentProfile.isLibrarythingTitleUrlReadOnly());
txtLibrarythingTitleUrl.setEnabled(derivedState);
lblLibrarythingTitleUrl.setEnabled(derivedState);
lblLibrarythingTitleUrl.setEnabled(false); //TODO remove when support for changing title ready
cmdLibrarythingTitleReset.setEnabled((derivedState));
}
/**
* Load values for configuration into GUI
* Also enable/disable any fields according to current values if required
*/
private void loadProfileValues() {
InputVerifier iv = new InputVerifier() {
@Override
public boolean verify(JComponent input) {
if (!(input instanceof JTextField))
return false;
try {
Integer.parseInt(((JTextField) input).getText());
return true;
} catch (NumberFormatException e) {
return false;
}
}
};
// Localizations that need completing before calling default processing
cboLang.setModel(new DefaultComboBoxModel(Localization.Main.getAvailableLocalizationsAsIso2()));
// Types not handled (yet) by guiField class
cboIndexFilterAlgorithm.setModel(new DefaultComboBoxModel(Index.FilterHintType.values()));
cboIndexFilterAlgorithm.setSelectedItem(currentProfile.getIndexFilterAlgorithm());
cboIndexFilterAlgorithm.setEnabled(!currentProfile.isIndexFilterAlgorithmReadOnly());
lblIndexFilterAlgorithm.setEnabled(!currentProfile.isIndexFilterAlgorithmReadOnly());
// Invoke standard field processing
guiFields[0].setCurrentConfiguration(currentProfile);
for (guiField g : guiFields) g.loadValue();
// Now additional settings not handled by default processing
cmdSetDatabaseFolder.setEnabled(lblDatabaseFolder.isEnabled());
// TODO Check whether check against Default mode is needed
if (currentProfile.getDeviceMode() == DeviceMode.Default) {
txtTargetFolder.setEnabled(false);
lblTargetFolder.setEnabled(false);
}
cmdSetTargetFolder.setEnabled(lblTargetFolder.isEnabled());
lblIndexFilterAlgorithm.setEnabled(!currentProfile.isIndexFilterAlgorithmReadOnly());
actOnGenerateIndexActionPerformed();
checkDownloads();
checkCrossReferencesEnabled();
checkSplitTagsOn(false);
lblFavicon.setVisible(false); // TODO remove to activate option
txtFavicon.setVisible(false); // TODO remove to activate option
cmdSetFavicon.setVisible(false); // TODO remove to activate option
lblCatalogCustomColumns.setVisible(false); // TODO remove to activate option
txtCatalogCustomColumns.setVisible(false); // TODO remove to activate option
// txtMaxMobileResolution.setVisible(false); // TODO Not currently being used
// lblMaxMobileResolution.setVisible(false); // TODO Not currently being used
setExternalLinksEnabledState();
customCatalogTableModel.setCustomCatalogs(currentProfile.getCustomCatalogs());
tblCustomCatalogs.setModel(customCatalogTableModel);
tblCustomCatalogs.setEnabled(!currentProfile.isCustomCatalogsReadOnly());
pnlCustomCatalogsTableButtons.setEnabled(!currentProfile.isCustomCatalogsReadOnly());
tblCustomCatalogs.revalidate(); // Force a redraw of table contents
DeviceMode mode = currentProfile.getDeviceMode();
// Ensuer we have a Device Mode actually set
if (Helper.isNullOrEmpty(mode)) {
if (logger.isTraceEnabled())
logger.trace("Device mode was not set - setting to " + DeviceMode.Default);
currentProfile.setDeviceMode(DeviceMode.Default);
}
// Set interface to match the mode
adaptInterfaceToDeviceSpecificMode(mode);
computeBrowseByCoverWithoutSplitVisibility();
changeLanguage();
loadProfiles();
checkDownloads();
checkOnlyCatalogAllowed();
String profile=Localization.Main.getText("config.profile.label", ConfigurationManager.getCurrentProfileName());
String title = Localization.Main.getText("gui.title", Constants.PROGTITLE + Constants.BZR_VERSION) + " - " + profile;
setTitle(title);
lblProfile.setText(profile);
pack();
}
private int getValue(JTextField field) {
try {
int i = Integer.parseInt(field.getText());
return i;
} catch (NumberFormatException e) {
return -1;
}
}
/**
* Reset GUI vlues to match the current profile
*/
private void resetValuesToProfile() {
String message = Localization.Main.getText("gui.reset.confirm");
int result = JOptionPane.showConfirmDialog(this, message, "", JOptionPane.YES_NO_OPTION);
if (result != JOptionPane.YES_OPTION) {
return;
}
Locale lang = currentProfile.getLanguage();
currentProfile.reset();
loadProfileValues();
currentProfile.setLanguage(lang);
changeLanguage();
}
/**
* Routine that determines if there are any
* fields in the GUI that are different to
* those currently stored in the profile
*
* @return
*/
private boolean isUnSavedChanges() {
guiFields[0].setCurrentConfiguration(currentProfile);
for (guiField g : guiFields) {
Object guiValue = g.getGuiValue();
if (guiValue != null) {
Object profileValue = g.getProfileValue();
if (profileValue == null) {
int dummy = 1; // Should it be possible to get here?
} else {
if (!guiValue.equals(profileValue)) {
return true;
}
}
}
}
return false;
}
/**
* Save the setting values from the GUI to the configuration file
*/
private void storeProfileValues() {
checkSplitTagsOn(false);
setCursor(hourglassCursor);
// setMinimumSize(new java.awt.Dimension(1000, 750));
Dimension size = getSize();
currentProfile.setWindowHeight((size.height));
currentProfile.setWindowWidth(size.width);
guiFields[0].setCurrentConfiguration(currentProfile);
for (guiField g : guiFields) g.storeValue();
// Field types not (yet) handled by guiField
currentProfile.setCustomCatalogs(customCatalogTableModel.getCustomCatalogs());
currentProfile.setIndexFilterAlgorithm(Index.FilterHintType.valueOf("" + cboIndexFilterAlgorithm.getSelectedItem()));
currentProfile.save();
setCursor(normalCursor);
}
/**
* Apply localization strings to all UI elements and set up Tooltips
* Same tootip is applied to a label and its associated input field
*/
private void translateTexts() {
// main window
setSize(new java.awt.Dimension(currentProfile.getWindowWidth(), currentProfile.getWindowHeight()));
lblBottom0.setText(Localization.Main.getText("gui.label.clickToDescribe")); // NOI18N
lblBottom0.setFont(lblBottom0.getFont().deriveFont(Font.BOLD));
lblDeviceDropbox.setToolTipText(
Localization.Main.getText("config.DeviceMode.dropbox.tooltip"));
lblDeviceNAS.setToolTipText(Localization.Main.getText("config.DeviceMode.nas.tooltip"));
lblDeviceNook.setToolTipText(
Localization.Main.getText("config.DeviceMode.nook.tooltip"));
// Do translations that are handled by guiFields table
guiFields[0].setCurrentConfiguration(currentProfile);
for (guiField f : guiFields) f.translateTexts();
checkAuthorsIncluded();
// `Additional translations (if any)
adaptInterfaceToDeviceSpecificMode(currentProfile.getDeviceMode());
mnuToolsOpenSyncLog.setVisible(SyncLogFile.exists());
}
/**
* Display in a popup the tooltip assoicated with a label that the user has clicked on
* This is for convenience in environments where the tootip is not conveniently displayed.
*
* @param label
*/
private void popupExplanation(JLabel label) {
if (Helper.isNotNullOrEmpty(label.getToolTipText()))
JOptionPane.showMessageDialog(this, label.getToolTipText(), Localization.Main.getText("gui.tooltip"), JOptionPane.INFORMATION_MESSAGE);
}
/**
*
*/
private void showSetDatabaseFolderDialog() {
JDirectoryChooser chooser = new JDirectoryChooser();
chooser.setShowingCreateDirectory(false);
File f = currentProfile.getDatabaseFolder();
if (f != null && f.exists())
chooser.setCurrentDirectory(f);
int result = chooser.showOpenDialog(this);
if (result == JFileChooser.CANCEL_OPTION)
return;
f = chooser.getSelectedFile();
if (setDatabaseFolder(f.getAbsolutePath()))
txtDatabaseFolder.setText(f.getAbsolutePath());
}
/**
*
* @param targetFolder
* @return
*/
private boolean setDatabaseFolder(String targetFolder) {
File newFolder = new File(targetFolder);
if (newFolder.exists()) {
File oldFolder = currentProfile.getDatabaseFolder();
currentProfile.setDatabaseFolder(newFolder);
if (Database.databaseExists()) {
JOptionPane.showMessageDialog(this, Localization.Main.getText("info.databasefolderset", targetFolder), null, JOptionPane.INFORMATION_MESSAGE);
return true;
} else
currentProfile.setDatabaseFolder(oldFolder);
}
JOptionPane.showMessageDialog(this, Localization.Main.getText("error.nodatabase", targetFolder), null, JOptionPane.ERROR_MESSAGE);
return false;
}
/**
*
*/
private void showSetTargetFolderDialog() {
JDirectoryChooser chooser = new JDirectoryChooser();
chooser.setShowingCreateDirectory(true);
File f = currentProfile.getTargetFolder();
if (f != null && f.exists())
chooser.setCurrentDirectory(f);
else {
f = currentProfile.getDatabaseFolder();
if (f != null && f.exists())
chooser.setCurrentDirectory(f);
}
int result = chooser.showOpenDialog(this);
if (result == JFileChooser.CANCEL_OPTION)
return;
f = chooser.getSelectedFile();
if (setTargetFolder(f.getAbsolutePath()))
txtTargetFolder.setText(f.getAbsolutePath());
}
/**
*
* @param targetFolder
* @return
*/
private boolean setTargetFolder(String targetFolder) {
File newFolder = new File(targetFolder);
if (!newFolder.exists()) {
String message = Localization.Main.getText("error.targetdoesnotexist", targetFolder);
int result = JOptionPane.showConfirmDialog(this, message, "", JOptionPane.YES_NO_OPTION);
if (result != JOptionPane.YES_OPTION)
return false;
newFolder.mkdirs();
}
JOptionPane.showMessageDialog(this, Localization.Main.getText("info.targetfolderset", targetFolder), null, JOptionPane.INFORMATION_MESSAGE);
return true;
}
/**
*
*/
private void openLogFolder() {
// Do nothing yet
}
/**
*
*/
private void saveConfiguration() {
storeProfileValues();
String message = Localization.Main.getText("gui.info.saved");
JOptionPane.showMessageDialog(this, message, "", JOptionPane.INFORMATION_MESSAGE);
}
/**
* Close down the program.
*
* If we know there are unsaved changes then confirm that
* exiting and losing the changes is what is wanted.
*/
private void exitProgram() {
if (isUnSavedChanges() == true) {
String message = Localization.Main.getText("gui.save.confirm");
int result = JOptionPane.showConfirmDialog(this, message, "", JOptionPane.YES_NO_OPTION);
if (result != JOptionPane.YES_OPTION) {
return;
}
}
System.exit(0);
}
/**
*
* @return
*/
private TableModel getTblCustomCatalogsModel() {
return customCatalogTableModel;
}
/**
* Add a new entry to the custom Catalog table
*/
private void addCustomCatalog() {
assert customCatalogTableModel.equals(tblCustomCatalogs.getModel());
customCatalogTableModel.addCustomCatalog();
tblCustomCatalogs.revalidate();
tblCustomCatalogs.repaint();
}
/**
* 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"
// <editor-fold defaultstate="collapsed"
// <editor-fold defaultstate="collapsed"
// <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;
pnlMain = new javax.swing.JPanel();
lblDeviceDropbox = new javax.swing.JLabel();
lblDeviceNAS = new javax.swing.JLabel();
lblDeviceNook = new javax.swing.JLabel();
lblDeviceMode = new javax.swing.JLabel();
lblDonate = new javax.swing.JLabel();
tabOptionsTabs = new javax.swing.JTabbedPane();
pnlMainOptions = new javax.swing.JPanel();
lblLang = new javax.swing.JLabel();
cboLang = new javax.swing.JComboBox();
lblDatabaseFolder = new javax.swing.JLabel();
txtDatabaseFolder = new javax.swing.JTextField();
cmdSetDatabaseFolder = new javax.swing.JButton();
lblTargetFolder = new javax.swing.JLabel();
txtTargetFolder = new javax.swing.JTextField();
cmdSetTargetFolder = new javax.swing.JButton();
lblUrlBooks = new javax.swing.JLabel();
txtUrlBooks = new javax.swing.JTextField();
lblCatalogFolder = new javax.swing.JLabel();
txtCatalogFolder = new javax.swing.JTextField();
lblCatalogTitle = new javax.swing.JLabel();
txtCatalogTitle = new javax.swing.JTextField();
lblSplittagson = new javax.swing.JLabel();
pnlSplitTagsOn = new javax.swing.JPanel();
txtSplittagson = new javax.swing.JTextField();
chkDontsplittags = new javax.swing.JCheckBox();
lblCatalogFilter = new javax.swing.JLabel();
txtCatalogFilter = new javax.swing.JTextField();
lblWikilang = new javax.swing.JLabel();
txtWikilang = new javax.swing.JTextField();
chkCopyToDatabaseFolder = new javax.swing.JCheckBox();
lblCopyToDatabaseFolder = new javax.swing.JLabel();
chkReprocessEpubMetadata = new javax.swing.JCheckBox();
lblReprocessEpubMetadata = new javax.swing.JLabel();
lblZipTrookCatalog = new javax.swing.JLabel();
chkZipTrookCatalog = new javax.swing.JCheckBox();
lblOnlyCatalogAtTarget = new javax.swing.JLabel();
chkOnlyCatalogAtTarget = new javax.swing.JCheckBox();
lblCryptFilenames = new javax.swing.JLabel();
chkCryptFilenames = new javax.swing.JCheckBox();
lblFavicon = new javax.swing.JLabel();
txtFavicon = new javax.swing.JTextField();
cmdSetFavicon = new javax.swing.JButton();
chkDisableOptimizer = new javax.swing.JCheckBox();
lblDisableOptimizer = new javax.swing.JLabel();
pnlCatalogStructure = new javax.swing.JPanel();
lblNogeneratehtml = new javax.swing.JLabel();
chkNogeneratehtml = new javax.swing.JCheckBox();
lblNoIncludeAboutLink = new javax.swing.JLabel();
chkNoIncludeAboutLink = new javax.swing.JCheckBox();
lblNogenerateopdsfiles = new javax.swing.JLabel();
chkNogenerateopdsfiles = new javax.swing.JCheckBox();
lblNogenerateratings = new javax.swing.JLabel();
chkNogenerateratings = new javax.swing.JCheckBox();
lblNogenerateallbooks = new javax.swing.JLabel();
chkNogenerateallbooks = new javax.swing.JCheckBox();
lblSupressRatings = new javax.swing.JLabel();
chkSupressRatings = new javax.swing.JCheckBox();
chkNogenerateopds = new javax.swing.JCheckBox();
lblNogenerateopds = new javax.swing.JLabel();
chkNoGenerateAuthors = new javax.swing.JCheckBox();
lblNoGenerateSeries = new javax.swing.JLabel();
lblNogeneraterecent = new javax.swing.JLabel();
chkNogeneraterecent = new javax.swing.JCheckBox();
lblNoGenerateTags = new javax.swing.JLabel();
lblNoGenerateAuthors = new javax.swing.JLabel();
chkNoGenerateTags = new javax.swing.JCheckBox();
chkNoGenerateSeries = new javax.swing.JCheckBox();
lblNoShowSeries = new javax.swing.JLabel();
chkNoShowSeries = new javax.swing.JCheckBox();
lblOrderAllBooksBySeries = new javax.swing.JLabel();
chkOrderAllBooksBySeries = new javax.swing.JCheckBox();
lblSplitByAuthorInitialGoToBooks = new javax.swing.JLabel();
chkSplitByAuthorInitialGoToBooks = new javax.swing.JCheckBox();
lblSortUsingAuthor = new javax.swing.JLabel();
lblSortUsingTitle = new javax.swing.JLabel();
chkSortUsingAuthorSort = new javax.swing.JCheckBox();
chkSortUsingTitleSort = new javax.swing.JCheckBox();
lblTagsToIgnore = new javax.swing.JLabel();
txtTagsToIgnore = new javax.swing.JTextField();
lblCatalogCustomColumns = new javax.swing.JLabel();
txtCatalogCustomColumns = new javax.swing.JTextField();
lblSortTagsByAuthor = new javax.swing.JLabel();
chkSortTagsByAuthor = new javax.swing.JCheckBox();
lblTagBooksNoSplit = new javax.swing.JLabel();
chkTagBookNoSplit = new javax.swing.JCheckBox();
lblNogeneratehtmlfiles = new javax.swing.JLabel();
chkNogeneratehtmlfiles = new javax.swing.JCheckBox();
lblSortSeriesUsingLibrarySort = new javax.swing.JLabel();
lblBrowseByCover = new javax.swing.JLabel();
chkBrowseByCover = new javax.swing.JCheckBox();
lblBrowseByCoverWithoutSplit = new javax.swing.JLabel();
chkBrowseByCoverWithoutSplit = new javax.swing.JCheckBox();
chkSortSeriesUsingLibrarySort = new javax.swing.JCheckBox();
javax.swing.JPanel pnlBookDetails = new javax.swing.JPanel();
chkIncludeTagsInBookDetails = new javax.swing.JCheckBox();
lblIncludeTagsInBookDetails = new javax.swing.JLabel();
chkIncludeSeriesInBookDetails = new javax.swing.JCheckBox();
lblIncludePublisherInBookDetails = new javax.swing.JLabel();
lblIncludeSeriesInBookDetails = new javax.swing.JLabel();
chkIncludePublisherInBookDetails = new javax.swing.JCheckBox();
lblIncludePublishedInBookDetails = new javax.swing.JLabel();
lblIncludeModifiedInBookDetails = new javax.swing.JLabel();
chkIncludeModifiedInBookDetails = new javax.swing.JCheckBox();
chkIncludePublishedInBookDetails = new javax.swing.JCheckBox();
lblDisplayAuthorSort = new javax.swing.JLabel();
lblDisplayTitleSort = new javax.swing.JLabel();
chkDisplayAuthorSort = new javax.swing.JCheckBox();
chkDisplayTitleSort = new javax.swing.JCheckBox();
lblNogeneratecrosslinks = new javax.swing.JLabel();
chkNogeneratecrosslinks = new javax.swing.JCheckBox();
chkPublishedDateAsYear = new javax.swing.JCheckBox();
lblPublishedDateAsYear = new javax.swing.JLabel();
lblIncludeAddedInBookDetails = new javax.swing.JLabel();
chkIncludeAddedInBookDetails = new javax.swing.JCheckBox();
lblIncludeRatingInBookDetails = new javax.swing.JLabel();
chkIncludeRatingInBookDetails = new javax.swing.JCheckBox();
txtBookDetailsCustomFields = new javax.swing.JTextField();
lblBookDetailsCustomFields = new javax.swing.JLabel();
chkBookDetailsCustomFieldsAlways = new javax.swing.JCheckBox();
lblSingleBookCrossReferences = new javax.swing.JLabel();
chkSingleBookCrossReferences = new javax.swing.JCheckBox();
chkIncludeAuthorCrossReferences = new javax.swing.JCheckBox();
lblIncludeAuthorCrossReferences = new javax.swing.JLabel();
chkIncludeTagCrossReferences = new javax.swing.JCheckBox();
lblIncludeTagCrossReferences = new javax.swing.JLabel();
lblIncludeRatingCrossReferences = new javax.swing.JLabel();
lblIncludeSerieCrossReferences = new javax.swing.JLabel();
chkIncludeSerieCrossReferences = new javax.swing.JCheckBox();
chkIncludeRatingCrossReferences = new javax.swing.JCheckBox();
lblDisplaySeriesSort = new javax.swing.JLabel();
chkDisplaySeriesSort = new javax.swing.JCheckBox();
lblIncludeSizeOfDownloads = new javax.swing.JLabel();
chkIncludeSizeOfDownloads = new javax.swing.JCheckBox();
lblIncludeAuthorInBookDetails = new javax.swing.JLabel();
lblIncludeTitleInBookDetails = new javax.swing.JLabel();
chkIncludeTitleInBookDetails = new javax.swing.JCheckBox();
chkIncludeAuthorInBookDetails = new javax.swing.JCheckBox();
pnlAdvancedOptions = new javax.swing.JPanel();
lblIncludeformat = new javax.swing.JLabel();
txtIncludeformat = new javax.swing.JTextField();
lblMaxbeforepaginate = new javax.swing.JLabel();
txtMaxbeforepaginate = new javax.swing.JTextField();
lblMaxbeforesplit = new javax.swing.JLabel();
txtMaxbeforesplit = new javax.swing.JTextField();
lblBooksinrecent = new javax.swing.JLabel();
txtBooksinrecent = new javax.swing.JTextField();
lblMaxsummarylength = new javax.swing.JLabel();
txtMaxsummarylength = new javax.swing.JTextField();
lblIncludeemptybooks = new javax.swing.JLabel();
chkIncludeemptybooks = new javax.swing.JCheckBox();
lblThumbnailheight = new javax.swing.JLabel();
txtThumbnailheight = new javax.swing.JTextField();
lblMinBooksToMakeDeepLevel = new javax.swing.JLabel();
txtMinBooksToMakeDeepLevel = new javax.swing.JTextField();
txtCoverHeight = new javax.swing.JTextField();
lblCoverHeight = new javax.swing.JLabel();
lblIncludeOnlyOneFile = new javax.swing.JLabel();
chkIncludeOnlyOneFile = new javax.swing.JCheckBox();
lblNoCoverResize = new javax.swing.JLabel();
lblNoThumbnailGenerate = new javax.swing.JLabel();
chkNoCoverResize = new javax.swing.JCheckBox();
chkNoThumbnailGenerate = new javax.swing.JCheckBox();
lblMaxBookSummaryLength = new javax.swing.JLabel();
txtMaxBookSummaryLength = new javax.swing.JTextField();
lblExternalIcons = new javax.swing.JLabel();
chkExternalIcons = new javax.swing.JCheckBox();
lblMaxSplitLevels = new javax.swing.JLabel();
txtMaxSplitLevels = new javax.swing.JTextField();
txtTagsToMakeDeep = new javax.swing.JTextField();
lblTagsToMakeDeep = new javax.swing.JLabel();
lblIncludeCoversInCatalog = new javax.swing.JLabel();
chkIncludeCoversInCatalog = new javax.swing.JCheckBox();
lblZipCatalog = new javax.swing.JLabel();
lblZipOmitXml = new javax.swing.JLabel();
chkZipOmitXml = new javax.swing.JCheckBox();
chkZipCatalog = new javax.swing.JCheckBox();
lblUseThumbnailAsCover = new javax.swing.JLabel();
chkUseThumbnailAsCover = new javax.swing.JCheckBox();
lblexternalImages = new javax.swing.JLabel();
chkExternalImages = new javax.swing.JCheckBox();
lblLanguageAsTag = new javax.swing.JLabel();
chkLanguageAsTag = new javax.swing.JCheckBox();
pnlExternalUrlsOptions = new javax.swing.JPanel();
txtWikipediaUrl = new javax.swing.JTextField();
txtAmazonAuthorUrl = new javax.swing.JTextField();
txtAmazonIsbnUrl = new javax.swing.JTextField();
txtAmazonTitleUrl = new javax.swing.JTextField();
txtGoodreadAuthorUrl = new javax.swing.JTextField();
txtGoodreadIsbnUrl = new javax.swing.JTextField();
txtGoodreadTitleUrl = new javax.swing.JTextField();
txtGoodreadReviewIsbnUrl = new javax.swing.JTextField();
txtIsfdbAuthorUrl = new javax.swing.JTextField();
txtLibrarythingAuthorUrl = new javax.swing.JTextField();
txtLibrarythingIsbnUrl = new javax.swing.JTextField();
txtLibrarythingTitleUrl = new javax.swing.JTextField();
cmdWikipediaUrlReset = new javax.swing.JButton();
cmdAmazonUrlReset = new javax.swing.JButton();
cmdAmazonTitleReset = new javax.swing.JButton();
cmdAmazonIsbnReset = new javax.swing.JButton();
cmdGoodreadAuthorReset = new javax.swing.JButton();
cmdGoodreadIsbnReset = new javax.swing.JButton();
cmdGoodreadReviewReset = new javax.swing.JButton();
cmdGoodreadTitleReset = new javax.swing.JButton();
cmdIsfdbAuthorReset = new javax.swing.JButton();
cmdLibrarythingAuthorReset = new javax.swing.JButton();
cmdLibrarythingIsbnReset = new javax.swing.JButton();
cmdLibrarythingTitleReset = new javax.swing.JButton();
lblWikipediaUrl = new javax.swing.JTextField();
lblAmazonAuthorUrl = new javax.swing.JTextField();
lblAmazonIsbnUrl = new javax.swing.JTextField();
lblAmazonTitleUrl = new javax.swing.JTextField();
lblGoodreadAuthorUrl = new javax.swing.JTextField();
lblGoodreadIsbnUrl = new javax.swing.JTextField();
lblGoodreadTitleUrl = new javax.swing.JTextField();
lblIsfdbAuthorUrl = new javax.swing.JTextField();
lblLibrarythingAuthorUrl = new javax.swing.JTextField();
lblLibrarythingIsbnUrl = new javax.swing.JTextField();
lblLibrarythingTitleUrl = new javax.swing.JTextField();
lblNogenerateExternalReferences = new javax.swing.JLabel();
chkNogenerateExternalReferences = new javax.swing.JCheckBox();
lblGoodreadReviewIsbnUrl = new javax.swing.JTextField();
lblNewWindowForExternalReferences = new javax.swing.JLabel();
chkNewWindowForExternalReferences = new javax.swing.JCheckBox();
pnlCustomCatalogs = new javax.swing.JPanel();
lblCustomDummy1 = new javax.swing.JLabel();
lblFeaturedCatalogSavedSearchName = new javax.swing.JLabel();
txtFeaturedCatalogSavedSearchName = new javax.swing.JTextField();
lblFeaturedCatalogTitle = new javax.swing.JLabel();
txtFeaturedCatalogTitle = new javax.swing.JTextField();
lblCustomDummy2 = new javax.swing.JLabel();
cmdAdd = new javax.swing.JButton();
scrCustomCatalogs = new javax.swing.JScrollPane();
tblCustomCatalogs = new javax.swing.JTable();
pnlCustomCatalogsTableButtons = new javax.swing.JPanel();
lblNewWindowForCustomExternalLinks = new javax.swing.JLabel();
chkNewWindowForCustomExternalLinks = new javax.swing.JCheckBox();
pnlSearchOptions = new javax.swing.JPanel();
txtMaxKeywords = new javax.swing.JTextField();
lblMaxKeywords = new javax.swing.JLabel();
lblIndexComments = new javax.swing.JLabel();
chkIndexComments = new javax.swing.JCheckBox();
lblIndexFilterAlgorithm = new javax.swing.JLabel();
cboIndexFilterAlgorithm = new javax.swing.JComboBox();
lblGenerateIndex = new javax.swing.JLabel();
chkGenerateIndex = new javax.swing.JCheckBox();
lblSearchDeprecated = new javax.swing.JLabel();
pnlBottom = new javax.swing.JPanel();
lblBottom0 = new javax.swing.JLabel();
pnlButtons = new javax.swing.JPanel();
cmdCancel = new javax.swing.JButton();
cmdReset = new javax.swing.JButton();
cmdSave = new javax.swing.JButton();
cmdGenerate = new javax.swing.JButton();
cmdHelp = new javax.swing.JButton();
pnlTitle = new javax.swing.JPanel();
lblProfile = new javax.swing.JLabel();
jMenuBar1 = new javax.swing.JMenuBar();
mnuFile = new javax.swing.JMenu();
mnuFileSave = new javax.swing.JMenuItem();
mnuFileGenerateCatalogs = new javax.swing.JMenuItem();
mnuFileExit = new javax.swing.JMenuItem();
mnuProfiles = new javax.swing.JMenu();
mnuTools = new javax.swing.JMenu();
mnuToolsprocessEpubMetadataOfAllBooks = new javax.swing.JMenuItem();
mnuToolsResetSecurityCache = new javax.swing.JMenuItem();
mnuToolsConfigLog = new javax.swing.JMenuItem();
mnuToolsClearLog = new javax.swing.JMenuItem();
mnuToolsOpenLog = new javax.swing.JMenuItem();
mnuToolsOpenOldLog = new javax.swing.JMenuItem();
mnuToolsOpenSyncLog = new javax.swing.JMenuItem();
mnuToolsOpenConfig = new javax.swing.JMenuItem();
mnuHelp = new javax.swing.JMenu();
mnuHelpDonate = new javax.swing.JMenuItem();
mnuHelpHome = new javax.swing.JMenuItem();
mnuHelpOpenForum = new javax.swing.JMenuItem();
mnuHelpOpenIssues = new javax.swing.JMenuItem();
mnuHelpUserGuide = new javax.swing.JMenuItem();
mnuHelpDevelopersGuide = new javax.swing.JMenuItem();
mnuHelpOpenLocalize = new javax.swing.JMenuItem();
mnuHelpOpenCustomize = new javax.swing.JMenuItem();
mnuHelpAbout = new javax.swing.JMenuItem();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(700, 550));
setPreferredSize(new java.awt.Dimension(1050, 760));
pnlMain.setMinimumSize(new java.awt.Dimension(910, 768));
pnlMain.setName(""); // NOI18N
pnlMain.setPreferredSize(new java.awt.Dimension(900, 760));
pnlMain.setLayout(new java.awt.GridBagLayout());
lblDeviceDropbox.setIcon(new javax.swing.ImageIcon(getClass().getResource("/calibre-icon.gif"))); // NOI18N
lblDeviceDropbox.setMinimumSize(new java.awt.Dimension(80, 61));
lblDeviceDropbox.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
lblDeviceDropboxMouseClicked(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.insets = new java.awt.Insets(10, 5, 10, 5);
pnlMain.add(lblDeviceDropbox, gridBagConstraints);
lblDeviceNAS.setIcon(new javax.swing.ImageIcon(getClass().getResource("/nas.png"))); // NOI18N
lblDeviceNAS.setMinimumSize(new java.awt.Dimension(61, 61));
lblDeviceNAS.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
lblDeviceNASMouseClicked(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.insets = new java.awt.Insets(10, 5, 10, 5);
pnlMain.add(lblDeviceNAS, gridBagConstraints);
lblDeviceNook.setIcon(new javax.swing.ImageIcon(getClass().getResource("/nook.png"))); // NOI18N
lblDeviceNook.setMinimumSize(new java.awt.Dimension(50, 61));
lblDeviceNook.setName(""); // NOI18N
lblDeviceNook.setPreferredSize(null);
lblDeviceNook.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
lblDeviceNookMouseClicked(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 0;
gridBagConstraints.insets = new java.awt.Insets(10, 5, 10, 5);
pnlMain.add(lblDeviceNook, gridBagConstraints);
lblDeviceMode.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
lblDeviceMode.setText("lblDeviceMode1");
lblDeviceMode.setVerticalAlignment(javax.swing.SwingConstants.TOP);
lblDeviceMode.setRequestFocusEnabled(false);
lblDeviceMode.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.gridwidth = 4;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(5, 10, 0, 5);
pnlMain.add(lblDeviceMode, gridBagConstraints);
lblDonate.setIcon(new javax.swing.ImageIcon(getClass().getResource("/donate.gif"))); // NOI18N
lblDonate.setMinimumSize(new java.awt.Dimension(80, 28));
lblDonate.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
lblDonateMouseClicked(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(10, 5, 10, 5);
pnlMain.add(lblDonate, gridBagConstraints);
tabOptionsTabs.setMinimumSize(new java.awt.Dimension(850, 470));
tabOptionsTabs.setPreferredSize(new java.awt.Dimension(90, 480));
pnlMainOptions.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentShown(java.awt.event.ComponentEvent evt) {
pnlMainOptionsComponentShown(evt);
}
});
pnlMainOptions.setLayout(new java.awt.GridBagLayout());
lblLang.setText("lblLang");
lblLang.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblLang, gridBagConstraints);
cboLang.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
cboLang.setMaximumSize(new java.awt.Dimension(100, 20));
cboLang.setMinimumSize(new java.awt.Dimension(100, 20));
cboLang.setPreferredSize(new java.awt.Dimension(100, 20));
cboLang.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cboLangActionPerformed(evt);
}
});
cboLang.addVetoableChangeListener(new java.beans.VetoableChangeListener() {
public void vetoableChange(java.beans.PropertyChangeEvent evt)throws java.beans.PropertyVetoException {
cboLangVetoableChange(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(cboLang, gridBagConstraints);
lblDatabaseFolder.setText("lblDatabaseFolder");
lblDatabaseFolder.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblDatabaseFolder, gridBagConstraints);
txtDatabaseFolder.setText("txtDatabaseFolder");
txtDatabaseFolder.setPreferredSize(new java.awt.Dimension(400, 20));
txtDatabaseFolder.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtDatabaseFolderActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 2;
gridBagConstraints.gridwidth = 3;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(txtDatabaseFolder, gridBagConstraints);
cmdSetDatabaseFolder.setText("...");
cmdSetDatabaseFolder.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdSetDatabaseFolderActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(cmdSetDatabaseFolder, gridBagConstraints);
lblTargetFolder.setText("lblDatabaseFolder");
lblTargetFolder.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblTargetFolder, gridBagConstraints);
txtTargetFolder.setText("txtTargetFolder");
txtTargetFolder.setPreferredSize(new java.awt.Dimension(400, 20));
txtTargetFolder.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtTargetFolderActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 3;
gridBagConstraints.gridwidth = 3;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(txtTargetFolder, gridBagConstraints);
cmdSetTargetFolder.setText("...");
cmdSetTargetFolder.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdSetTargetFolderActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(cmdSetTargetFolder, gridBagConstraints);
lblUrlBooks.setText("lblUrlBooks");
lblUrlBooks.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblUrlBooks, gridBagConstraints);
txtUrlBooks.setText("txtUrlBooks");
txtUrlBooks.setPreferredSize(new java.awt.Dimension(400, 20));
txtUrlBooks.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
CheckOnlyCatalogAllowed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 4;
gridBagConstraints.gridwidth = 3;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(txtUrlBooks, gridBagConstraints);
lblCatalogFolder.setText("lblCatalogFolder");
lblCatalogFolder.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblCatalogFolder, gridBagConstraints);
txtCatalogFolder.setText("txtCatalogFolder");
txtCatalogFolder.setMinimumSize(new java.awt.Dimension(150, 22));
txtCatalogFolder.setPreferredSize(new java.awt.Dimension(200, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(txtCatalogFolder, gridBagConstraints);
lblCatalogTitle.setText("lblCatalogTitle");
lblCatalogTitle.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblCatalogTitle, gridBagConstraints);
txtCatalogTitle.setText("txtCatalogTitle");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 8;
gridBagConstraints.gridwidth = 3;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(txtCatalogTitle, gridBagConstraints);
lblSplittagson.setText("lblSplittagson");
lblSplittagson.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 9;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblSplittagson, gridBagConstraints);
pnlSplitTagsOn.setLayout(new java.awt.GridBagLayout());
txtSplittagson.setText("txtSplittagson");
txtSplittagson.setMaximumSize(new java.awt.Dimension(60, 22));
txtSplittagson.setMinimumSize(new java.awt.Dimension(40, 22));
txtSplittagson.setPreferredSize(new java.awt.Dimension(40, 20));
txtSplittagson.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtSplittagsonActionPerformed(evt);
}
});
txtSplittagson.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusLost(java.awt.event.FocusEvent evt) {
txtSplittagsonFocusLost(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlSplitTagsOn.add(txtSplittagson, gridBagConstraints);
chkDontsplittags.setText("chkDontsplittags");
chkDontsplittags.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
chkDontsplittagsActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
pnlSplitTagsOn.add(chkDontsplittags, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 9;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
pnlMainOptions.add(pnlSplitTagsOn, gridBagConstraints);
lblCatalogFilter.setText("lblCatalogFilter");
lblCatalogFilter.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblCatalogFilter, gridBagConstraints);
txtCatalogFilter.setText("txtCatalogFilter");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 10;
gridBagConstraints.gridwidth = 3;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(txtCatalogFilter, gridBagConstraints);
lblWikilang.setText("lblWikilang");
lblWikilang.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblWikilang, gridBagConstraints);
txtWikilang.setText("txtWikilang");
txtWikilang.setMaximumSize(new java.awt.Dimension(60, 20));
txtWikilang.setMinimumSize(new java.awt.Dimension(60, 20));
txtWikilang.setName(""); // NOI18N
txtWikilang.setPreferredSize(new java.awt.Dimension(60, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 0;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(txtWikilang, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(chkCopyToDatabaseFolder, gridBagConstraints);
lblCopyToDatabaseFolder.setText("lblCopyToDatabaseFolder");
lblCopyToDatabaseFolder.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(lblCopyToDatabaseFolder, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 6;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(chkReprocessEpubMetadata, gridBagConstraints);
lblReprocessEpubMetadata.setText("lblReprocessEpubMetadata");
lblReprocessEpubMetadata.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(lblReprocessEpubMetadata, gridBagConstraints);
lblZipTrookCatalog.setText("lblZipTrookCatalog");
lblZipTrookCatalog.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 14;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(lblZipTrookCatalog, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 14;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(chkZipTrookCatalog, gridBagConstraints);
lblOnlyCatalogAtTarget.setText("lblOnlyCatalogAtTarget");
lblOnlyCatalogAtTarget.setToolTipText("");
lblOnlyCatalogAtTarget.setAutoscrolls(true);
lblOnlyCatalogAtTarget.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlMainOptions.add(lblOnlyCatalogAtTarget, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(chkOnlyCatalogAtTarget, gridBagConstraints);
lblCryptFilenames.setText("lblCryptFilenames");
lblCryptFilenames.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 13;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(lblCryptFilenames, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 13;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(chkCryptFilenames, gridBagConstraints);
lblFavicon.setText("lblFavicon");
lblFavicon.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlMainOptions.add(lblFavicon, gridBagConstraints);
txtFavicon.setText("txtFavicon");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.gridwidth = 3;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(txtFavicon, gridBagConstraints);
cmdSetFavicon.setText("...");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlMainOptions.add(cmdSetFavicon, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 13;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(chkDisableOptimizer, gridBagConstraints);
lblDisableOptimizer.setText("lblDisableOptimizer");
lblDisableOptimizer.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 13;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlMainOptions.add(lblDisableOptimizer, gridBagConstraints);
tabOptionsTabs.addTab("pnlMainOptions", pnlMainOptions);
pnlMainOptions.getAccessibleContext().setAccessibleName("Main Option");
pnlCatalogStructure.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentShown(java.awt.event.ComponentEvent evt) {
pnlCatalogStructureComponentShown(evt);
}
});
pnlCatalogStructure.setLayout(new java.awt.GridBagLayout());
lblNogeneratehtml.setText("lblNogeneratehtml");
lblNogeneratehtml.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNogeneratehtml, gridBagConstraints);
chkNogeneratehtml.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
checkDownloads(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNogeneratehtml, gridBagConstraints);
lblNoIncludeAboutLink.setText("lblNoIncludeAboutLink");
lblNoIncludeAboutLink.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNoIncludeAboutLink, gridBagConstraints);
lblNoIncludeAboutLink.getAccessibleContext().setAccessibleName("Include the \"About calibre2opds\" link");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNoIncludeAboutLink, gridBagConstraints);
lblNogenerateopdsfiles.setText("lblNogenerateopdsfiles");
lblNogenerateopdsfiles.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNogenerateopdsfiles, gridBagConstraints);
lblNogenerateopdsfiles.getAccessibleContext().setAccessibleName("Do not generate OPDS downloads");
chkNogenerateopdsfiles.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
checkDownloads(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNogenerateopdsfiles, gridBagConstraints);
lblNogenerateratings.setText("lblNogenerateratings");
lblNogenerateratings.setRequestFocusEnabled(false);
lblNogenerateratings.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 9;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNogenerateratings, gridBagConstraints);
lblNogenerateratings.getAccessibleContext().setAccessibleName("Do not generate the \"Ratings\" catalog ");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 9;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNogenerateratings, gridBagConstraints);
lblNogenerateallbooks.setText("lblNogenerateallbooks");
lblNogenerateallbooks.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNogenerateallbooks, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 10;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNogenerateallbooks, gridBagConstraints);
lblSupressRatings.setText("lblSupressRatings");
lblSupressRatings.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlCatalogStructure.add(lblSupressRatings, gridBagConstraints);
lblSupressRatings.getAccessibleContext().setAccessibleName("Suppress ratings in the books titles ");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 9;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkSupressRatings, gridBagConstraints);
chkNogenerateopds.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
checkDownloads(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNogenerateopds, gridBagConstraints);
lblNogenerateopds.setText("lblNogenerateopds");
lblNogenerateopds.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNogenerateopds, gridBagConstraints);
lblNogenerateopds.getAccessibleContext().setAccessibleName("Di Not generate OPDS catalogs");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNoGenerateAuthors, gridBagConstraints);
lblNoGenerateSeries.setText("lblNoGenerateSeries");
lblNoGenerateSeries.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNoGenerateSeries, gridBagConstraints);
lblNogeneraterecent.setText("lblNogeneraterecent");
lblNogeneraterecent.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNogeneraterecent, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNogeneraterecent, gridBagConstraints);
lblNoGenerateTags.setText("lblNoGenerateTags");
lblNoGenerateTags.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNoGenerateTags, gridBagConstraints);
lblNoGenerateAuthors.setText("lblNoGenerateAuthors");
lblNoGenerateAuthors.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNoGenerateAuthors, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNoGenerateTags, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNoGenerateSeries, gridBagConstraints);
lblNoShowSeries.setText("lblNoShowSeries");
lblNoShowSeries.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlCatalogStructure.add(lblNoShowSeries, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 7;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNoShowSeries, gridBagConstraints);
lblOrderAllBooksBySeries.setText("lblOrderAllBooksBySeries");
lblOrderAllBooksBySeries.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlCatalogStructure.add(lblOrderAllBooksBySeries, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 10;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkOrderAllBooksBySeries, gridBagConstraints);
lblSplitByAuthorInitialGoToBooks.setText("lblSplitByAuthorInitialGoToBooks");
lblSplitByAuthorInitialGoToBooks.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlCatalogStructure.add(lblSplitByAuthorInitialGoToBooks, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 8;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkSplitByAuthorInitialGoToBooks, gridBagConstraints);
lblSortUsingAuthor.setText("lblSortUsingAuthor");
lblSortUsingAuthor.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 11;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblSortUsingAuthor, gridBagConstraints);
lblSortUsingTitle.setText("lblSortUsingTitle");
lblSortUsingTitle.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlCatalogStructure.add(lblSortUsingTitle, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 11;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkSortUsingAuthorSort, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 11;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkSortUsingTitleSort, gridBagConstraints);
lblTagsToIgnore.setText("lblTagsToIgnore");
lblTagsToIgnore.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 12;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblTagsToIgnore, gridBagConstraints);
txtTagsToIgnore.setText("txtTagsToIgnore");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 12;
gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(txtTagsToIgnore, gridBagConstraints);
lblCatalogCustomColumns.setText("lblCatalogCustomColumns");
lblCatalogCustomColumns.setToolTipText("");
lblCatalogCustomColumns.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 13;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblCatalogCustomColumns, gridBagConstraints);
txtCatalogCustomColumns.setText("txtCatalogCustomColumns");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 13;
gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(txtCatalogCustomColumns, gridBagConstraints);
lblSortTagsByAuthor.setText("lblSortTagsByAuthor");
lblSortTagsByAuthor.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblSortTagsByAuthor, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkSortTagsByAuthor, gridBagConstraints);
lblTagBooksNoSplit.setText("lblTagBooksNoSplit");
lblTagBooksNoSplit.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlCatalogStructure.add(lblTagBooksNoSplit, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkTagBookNoSplit, gridBagConstraints);
lblNogeneratehtmlfiles.setText("lblNogeneratehtmlfiles");
lblNogeneratehtmlfiles.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(lblNogeneratehtmlfiles, gridBagConstraints);
chkNogeneratehtmlfiles.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
checkDownloads(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkNogeneratehtmlfiles, gridBagConstraints);
lblSortSeriesUsingLibrarySort.setText("lblSortSeriesUsingLibrarySort");
lblSortSeriesUsingLibrarySort.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlCatalogStructure.add(lblSortSeriesUsingLibrarySort, gridBagConstraints);
lblBrowseByCover.setText("lblBrowseByCover");
lblBrowseByCover.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlCatalogStructure.add(lblBrowseByCover, gridBagConstraints);
chkBrowseByCover.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
chkBrowseByCoverActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkBrowseByCover, gridBagConstraints);
lblBrowseByCoverWithoutSplit.setText("lblBrowseByCoverWithoutSplit");
lblBrowseByCoverWithoutSplit.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
pnlCatalogStructure.add(lblBrowseByCoverWithoutSplit, gridBagConstraints);
lblBrowseByCoverWithoutSplit.getAccessibleContext().setAccessibleName("Do not split by letter in \"Browse by Cover\" mode");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 3;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkBrowseByCoverWithoutSplit, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCatalogStructure.add(chkSortSeriesUsingLibrarySort, gridBagConstraints);
tabOptionsTabs.addTab("pnlCatalogStructure", pnlCatalogStructure);
pnlBookDetails.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentShown(java.awt.event.ComponentEvent evt) {
pnlBookDetailsComponentShown(evt);
}
});
pnlBookDetails.setLayout(new java.awt.GridBagLayout());
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeTagsInBookDetails, gridBagConstraints);
lblIncludeTagsInBookDetails.setText("lblIncludeTagsInBookDetails");
lblIncludeTagsInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeTagsInBookDetails, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeSeriesInBookDetails, gridBagConstraints);
lblIncludePublisherInBookDetails.setText("lblIncludePublisherInBookDetails");
lblIncludePublisherInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludePublisherInBookDetails, gridBagConstraints);
lblIncludeSeriesInBookDetails.setText("lblIncludeSeriesInBookDetails");
lblIncludeSeriesInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeSeriesInBookDetails, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludePublisherInBookDetails, gridBagConstraints);
lblIncludePublishedInBookDetails.setText("lblIncludePublishedInBookDetails");
lblIncludePublishedInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludePublishedInBookDetails, gridBagConstraints);
lblIncludeModifiedInBookDetails.setText("lblIncludeModifiedInBookDetails");
lblIncludeModifiedInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlBookDetails.add(lblIncludeModifiedInBookDetails, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeModifiedInBookDetails, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludePublishedInBookDetails, gridBagConstraints);
lblDisplayAuthorSort.setText("lblDisplayAuthorSort");
lblDisplayAuthorSort.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblDisplayAuthorSort, gridBagConstraints);
lblDisplayAuthorSort.getAccessibleContext().setAccessibleName("");
lblDisplayTitleSort.setText("lblDisplayTitleSort");
lblDisplayTitleSort.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblDisplayTitleSort, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkDisplayAuthorSort, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkDisplayTitleSort, gridBagConstraints);
lblNogeneratecrosslinks.setText("lblNogeneratecrosslinks");
lblNogeneratecrosslinks.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblNogeneratecrosslinks, gridBagConstraints);
lblNogeneratecrosslinks.getAccessibleContext().setAccessibleName("Do not generate cross-reference links ");
chkNogeneratecrosslinks.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
chkNogeneratecrosslinksStateChanged(evt);
}
});
chkNogeneratecrosslinks.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
chkNogeneratecrosslinksActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkNogeneratecrosslinks, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 6;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkPublishedDateAsYear, gridBagConstraints);
lblPublishedDateAsYear.setText("lblPublishedDateAsYear");
lblPublishedDateAsYear.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlBookDetails.add(lblPublishedDateAsYear, gridBagConstraints);
lblIncludeAddedInBookDetails.setText("lblIncludeAddedInBookDetails");
lblIncludeAddedInBookDetails.setOpaque(true);
lblIncludeAddedInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeAddedInBookDetails, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeAddedInBookDetails, gridBagConstraints);
lblIncludeRatingInBookDetails.setText("lblIncludeRatingInBookDetails");
lblIncludeRatingInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeRatingInBookDetails, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeRatingInBookDetails, gridBagConstraints);
txtBookDetailsCustomFields.setText("txtBookDetailsCustomFields");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 9;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(txtBookDetailsCustomFields, gridBagConstraints);
lblBookDetailsCustomFields.setText("lblBookDetailsCustomFields");
lblBookDetailsCustomFields.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 9;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblBookDetailsCustomFields, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 9;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkBookDetailsCustomFieldsAlways, gridBagConstraints);
lblSingleBookCrossReferences.setText("lblSingleBookCrossReferences");
lblSingleBookCrossReferences.setToolTipText("");
lblSingleBookCrossReferences.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlBookDetails.add(lblSingleBookCrossReferences, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkSingleBookCrossReferences, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 11;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeAuthorCrossReferences, gridBagConstraints);
lblIncludeAuthorCrossReferences.setText("lblIncludeAuthorCrossReferences");
lblIncludeAuthorCrossReferences.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 11;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeAuthorCrossReferences, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 11;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeTagCrossReferences, gridBagConstraints);
lblIncludeTagCrossReferences.setText("lblIncludeTagCrossReferences");
lblIncludeTagCrossReferences.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlBookDetails.add(lblIncludeTagCrossReferences, gridBagConstraints);
lblIncludeRatingCrossReferences.setText("lblIncludeRatingCrossReferences");
lblIncludeRatingCrossReferences.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 12;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeRatingCrossReferences, gridBagConstraints);
lblIncludeSerieCrossReferences.setText("lblIncludeSerieCrossReferences");
lblIncludeSerieCrossReferences.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 12;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeSerieCrossReferences, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 12;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeSerieCrossReferences, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 12;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeRatingCrossReferences, gridBagConstraints);
lblDisplaySeriesSort.setText("lblDisplaySeriesSort");
lblDisplaySeriesSort.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlBookDetails.add(lblDisplaySeriesSort, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkDisplaySeriesSort, gridBagConstraints);
lblIncludeSizeOfDownloads.setText("lblIncludeSizeOfDownloads");
lblIncludeSizeOfDownloads.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeSizeOfDownloads, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeSizeOfDownloads, gridBagConstraints);
lblIncludeAuthorInBookDetails.setText("lblIncludeAuthorInBookDetails");
lblIncludeAuthorInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeAuthorInBookDetails, gridBagConstraints);
lblIncludeTitleInBookDetails.setText("lblIncludeTitleInBookDetails");
lblIncludeTitleInBookDetails.setToolTipText("");
lblIncludeTitleInBookDetails.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(lblIncludeTitleInBookDetails, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeTitleInBookDetails, gridBagConstraints);
chkIncludeAuthorInBookDetails.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
chkIncludeAuthorInBookDetailsActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBookDetails.add(chkIncludeAuthorInBookDetails, gridBagConstraints);
tabOptionsTabs.addTab("pnlBookDetails", pnlBookDetails);
pnlAdvancedOptions.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentShown(java.awt.event.ComponentEvent evt) {
pnlAdvancedOptionsComponentShown(evt);
}
});
pnlAdvancedOptions.setLayout(new java.awt.GridBagLayout());
lblIncludeformat.setText("lblIncludeformat");
lblIncludeformat.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblIncludeformat, gridBagConstraints);
txtIncludeformat.setText("txtIncludeformat");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtIncludeformat, gridBagConstraints);
lblMaxbeforepaginate.setText("lblMaxbeforepaginate");
lblMaxbeforepaginate.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblMaxbeforepaginate, gridBagConstraints);
txtMaxbeforepaginate.setText("txtMaxbeforepaginate");
txtMaxbeforepaginate.setMaximumSize(new java.awt.Dimension(150, 22));
txtMaxbeforepaginate.setMinimumSize(new java.awt.Dimension(100, 22));
txtMaxbeforepaginate.setPreferredSize(new java.awt.Dimension(50, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtMaxbeforepaginate, gridBagConstraints);
lblMaxbeforesplit.setText("lblMaxbeforesplit");
lblMaxbeforesplit.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlAdvancedOptions.add(lblMaxbeforesplit, gridBagConstraints);
txtMaxbeforesplit.setText("txtMaxbeforesplit");
txtMaxbeforesplit.setMaximumSize(new java.awt.Dimension(150, 100));
txtMaxbeforesplit.setMinimumSize(new java.awt.Dimension(100, 22));
txtMaxbeforesplit.setPreferredSize(new java.awt.Dimension(50, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtMaxbeforesplit, gridBagConstraints);
lblBooksinrecent.setText("lblBooksinrecent");
lblBooksinrecent.setMaximumSize(new java.awt.Dimension(115, 250));
lblBooksinrecent.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblBooksinrecent, gridBagConstraints);
txtBooksinrecent.setText("txtBooksinrecent");
txtBooksinrecent.setMaximumSize(new java.awt.Dimension(150, 22));
txtBooksinrecent.setMinimumSize(new java.awt.Dimension(100, 22));
txtBooksinrecent.setPreferredSize(new java.awt.Dimension(60, 20));
txtBooksinrecent.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusLost(java.awt.event.FocusEvent evt) {
txtBooksinrecentFocusLost(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtBooksinrecent, gridBagConstraints);
lblMaxsummarylength.setText("lblMaxsummarylength");
lblMaxsummarylength.setMaximumSize(new java.awt.Dimension(250, 20));
lblMaxsummarylength.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblMaxsummarylength, gridBagConstraints);
txtMaxsummarylength.setText("txtMaxsummarylength");
txtMaxsummarylength.setMaximumSize(new java.awt.Dimension(150, 22));
txtMaxsummarylength.setMinimumSize(new java.awt.Dimension(100, 22));
txtMaxsummarylength.setPreferredSize(new java.awt.Dimension(60, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtMaxsummarylength, gridBagConstraints);
lblIncludeemptybooks.setText("lblIncludeemptybooks");
lblIncludeemptybooks.setInheritsPopupMenu(false);
lblIncludeemptybooks.setMaximumSize(new java.awt.Dimension(250, 20));
lblIncludeemptybooks.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblIncludeemptybooks, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkIncludeemptybooks, gridBagConstraints);
lblThumbnailheight.setText("lblThumbnailheight");
lblThumbnailheight.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlAdvancedOptions.add(lblThumbnailheight, gridBagConstraints);
txtThumbnailheight.setText("txtThumbnailheight");
txtThumbnailheight.setMaximumSize(new java.awt.Dimension(150, 22));
txtThumbnailheight.setMinimumSize(new java.awt.Dimension(150, 22));
txtThumbnailheight.setPreferredSize(new java.awt.Dimension(80, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtThumbnailheight, gridBagConstraints);
lblMinBooksToMakeDeepLevel.setText("lblMinBooksToMakeDeepLevel");
lblMinBooksToMakeDeepLevel.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblMinBooksToMakeDeepLevel, gridBagConstraints);
txtMinBooksToMakeDeepLevel.setText("txtMaxsummarylength");
txtMinBooksToMakeDeepLevel.setInheritsPopupMenu(true);
txtMinBooksToMakeDeepLevel.setMaximumSize(new java.awt.Dimension(150, 22));
txtMinBooksToMakeDeepLevel.setMinimumSize(new java.awt.Dimension(100, 22));
txtMinBooksToMakeDeepLevel.setPreferredSize(new java.awt.Dimension(50, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 10;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtMinBooksToMakeDeepLevel, gridBagConstraints);
txtCoverHeight.setText("txtCoverHeight");
txtCoverHeight.setMaximumSize(new java.awt.Dimension(150, 22));
txtCoverHeight.setMinimumSize(new java.awt.Dimension(100, 22));
txtCoverHeight.setPreferredSize(new java.awt.Dimension(80, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtCoverHeight, gridBagConstraints);
lblCoverHeight.setText("lblCoverHeight");
lblCoverHeight.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlAdvancedOptions.add(lblCoverHeight, gridBagConstraints);
lblIncludeOnlyOneFile.setText("lblIncludeOnlyOneFile");
lblIncludeOnlyOneFile.setMaximumSize(new java.awt.Dimension(250, 20));
lblIncludeOnlyOneFile.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblIncludeOnlyOneFile, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkIncludeOnlyOneFile, gridBagConstraints);
lblNoCoverResize.setText("lblNoCoverResize");
lblNoCoverResize.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlAdvancedOptions.add(lblNoCoverResize, gridBagConstraints);
lblNoThumbnailGenerate.setText("lblNoThumbnailGenerate");
lblNoThumbnailGenerate.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlAdvancedOptions.add(lblNoThumbnailGenerate, gridBagConstraints);
chkNoCoverResize.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
chkNoCoverResizeActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkNoCoverResize, gridBagConstraints);
chkNoThumbnailGenerate.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
chkNoThumbnailGenerateActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkNoThumbnailGenerate, gridBagConstraints);
lblMaxBookSummaryLength.setText("lblMaxBookSummaryLength");
lblMaxBookSummaryLength.setMaximumSize(new java.awt.Dimension(250, 20));
lblMaxBookSummaryLength.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblMaxBookSummaryLength, gridBagConstraints);
txtMaxBookSummaryLength.setText("txtMaxBookSummaryLength");
txtMaxBookSummaryLength.setMaximumSize(new java.awt.Dimension(150, 22));
txtMaxBookSummaryLength.setMinimumSize(new java.awt.Dimension(100, 22));
txtMaxBookSummaryLength.setPreferredSize(new java.awt.Dimension(60, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtMaxBookSummaryLength, gridBagConstraints);
lblExternalIcons.setText("lblExternalIcons");
lblExternalIcons.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblExternalIcons, gridBagConstraints);
chkExternalIcons.setRequestFocusEnabled(false);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkExternalIcons, gridBagConstraints);
lblMaxSplitLevels.setText("lblMaxSplitlevels");
lblMaxSplitLevels.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlAdvancedOptions.add(lblMaxSplitLevels, gridBagConstraints);
txtMaxSplitLevels.setText("txtMaxSplitLevels");
txtMaxSplitLevels.setMaximumSize(new java.awt.Dimension(150, 22));
txtMaxSplitLevels.setMinimumSize(new java.awt.Dimension(100, 22));
txtMaxSplitLevels.setPreferredSize(new java.awt.Dimension(50, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtMaxSplitLevels, gridBagConstraints);
txtTagsToMakeDeep.setText("txtTagsToMakeDeep");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 11;
gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(txtTagsToMakeDeep, gridBagConstraints);
lblTagsToMakeDeep.setText("lblTagsToMakeDeep");
lblTagsToMakeDeep.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 11;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblTagsToMakeDeep, gridBagConstraints);
lblIncludeCoversInCatalog.setText("lblIncludeCoversInCatalog");
lblIncludeCoversInCatalog.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblIncludeCoversInCatalog, gridBagConstraints);
chkIncludeCoversInCatalog.setRequestFocusEnabled(false);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkIncludeCoversInCatalog, gridBagConstraints);
lblZipCatalog.setText("lblZipCatalog");
lblZipCatalog.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 9;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblZipCatalog, gridBagConstraints);
lblZipOmitXml.setText("lblZipOmitXml");
lblZipOmitXml.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlAdvancedOptions.add(lblZipOmitXml, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 9;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkZipOmitXml, gridBagConstraints);
chkZipCatalog.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
chkZipCatalogActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 9;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkZipCatalog, gridBagConstraints);
lblUseThumbnailAsCover.setText("lblUseThumbnailAsCover");
lblUseThumbnailAsCover.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
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);
pnlAdvancedOptions.add(lblUseThumbnailAsCover, gridBagConstraints);
chkUseThumbnailAsCover.setRequestFocusEnabled(false);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkUseThumbnailAsCover, gridBagConstraints);
lblexternalImages.setText("lblexternalImages");
lblexternalImages.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblexternalImages, gridBagConstraints);
chkExternalImages.setRequestFocusEnabled(false);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkExternalImages, gridBagConstraints);
lblLanguageAsTag.setText("lblLanguageAsTag");
lblLanguageAsTag.setToolTipText("");
lblLanguageAsTag.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 12;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(lblLanguageAsTag, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 12;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlAdvancedOptions.add(chkLanguageAsTag, gridBagConstraints);
tabOptionsTabs.addTab("pnlAdvancedOptions", pnlAdvancedOptions);
pnlExternalUrlsOptions.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentShown(java.awt.event.ComponentEvent evt) {
pnlExternalUrlsOptionsComponentShown(evt);
}
});
pnlExternalUrlsOptions.setLayout(new java.awt.GridBagLayout());
txtWikipediaUrl.setText("txtWikipediaUrl");
txtWikipediaUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.gridwidth = 3;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtWikipediaUrl, gridBagConstraints);
txtAmazonAuthorUrl.setText("txtAmazonAuthorUrl");
txtAmazonAuthorUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 2;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtAmazonAuthorUrl, gridBagConstraints);
txtAmazonIsbnUrl.setText("txtAmazonIsbnUrl");
txtAmazonIsbnUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 3;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtAmazonIsbnUrl, gridBagConstraints);
txtAmazonTitleUrl.setText("txtAmazonTitleUrl");
txtAmazonTitleUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 4;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtAmazonTitleUrl, gridBagConstraints);
txtGoodreadAuthorUrl.setText("txtGoodreadAuthorUrl");
txtGoodreadAuthorUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 5;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtGoodreadAuthorUrl, gridBagConstraints);
txtGoodreadIsbnUrl.setText("txtGoodreadIsbnUrl");
txtGoodreadIsbnUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 6;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtGoodreadIsbnUrl, gridBagConstraints);
txtGoodreadTitleUrl.setText("txtGoodreadTitleUrl");
txtGoodreadTitleUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 7;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtGoodreadTitleUrl, gridBagConstraints);
txtGoodreadReviewIsbnUrl.setText("txtGoodreadReviewIsbnUrl");
txtGoodreadReviewIsbnUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 8;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtGoodreadReviewIsbnUrl, gridBagConstraints);
txtIsfdbAuthorUrl.setText("txtIsfdbAuthorUrl");
txtIsfdbAuthorUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 10;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtIsfdbAuthorUrl, gridBagConstraints);
txtLibrarythingAuthorUrl.setText("txtLibrarythingAuthorUrl");
txtLibrarythingAuthorUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 11;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtLibrarythingAuthorUrl, gridBagConstraints);
txtLibrarythingIsbnUrl.setText("txtLibrarythingIsbnUrl");
txtLibrarythingIsbnUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 12;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtLibrarythingIsbnUrl, gridBagConstraints);
txtLibrarythingTitleUrl.setText("txtLibrarythingTitleUrl");
txtLibrarythingTitleUrl.setPreferredSize(new java.awt.Dimension(600, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 13;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(txtLibrarythingTitleUrl, gridBagConstraints);
cmdWikipediaUrlReset.setText("Reset!");
cmdWikipediaUrlReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdWikipediaUrlResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdWikipediaUrlReset, gridBagConstraints);
cmdAmazonUrlReset.setText("Reset!");
cmdAmazonUrlReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdAmazonUrlResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdAmazonUrlReset, gridBagConstraints);
cmdAmazonTitleReset.setText("Reset!");
cmdAmazonTitleReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdAmazonTitleResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 4;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdAmazonTitleReset, gridBagConstraints);
cmdAmazonIsbnReset.setText("Reset!");
cmdAmazonIsbnReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdAmazonIsbnResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdAmazonIsbnReset, gridBagConstraints);
cmdGoodreadAuthorReset.setText("Reset!");
cmdGoodreadAuthorReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdGoodreadAuthorResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 5;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdGoodreadAuthorReset, gridBagConstraints);
cmdGoodreadIsbnReset.setText("Reset!");
cmdGoodreadIsbnReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdGoodreadIsbnResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdGoodreadIsbnReset, gridBagConstraints);
cmdGoodreadReviewReset.setText("Reset!");
cmdGoodreadReviewReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdGoodreadReviewResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 8;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdGoodreadReviewReset, gridBagConstraints);
cmdGoodreadTitleReset.setText("Reset!");
cmdGoodreadTitleReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdGoodreadTitleResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 7;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdGoodreadTitleReset, gridBagConstraints);
cmdIsfdbAuthorReset.setText("Reset!");
cmdIsfdbAuthorReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdIsfdbAuthorResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 10;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdIsfdbAuthorReset, gridBagConstraints);
cmdLibrarythingAuthorReset.setText("Reset!");
cmdLibrarythingAuthorReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdLibrarythingAuthorResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 11;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdLibrarythingAuthorReset, gridBagConstraints);
cmdLibrarythingIsbnReset.setText("Reset!");
cmdLibrarythingIsbnReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdLibrarythingIsbnResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 12;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdLibrarythingIsbnReset, gridBagConstraints);
cmdLibrarythingTitleReset.setText("Reset!");
cmdLibrarythingTitleReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdLibrarythingTitleResetActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 13;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(cmdLibrarythingTitleReset, gridBagConstraints);
lblWikipediaUrl.setText("lblWikipediaUrl");
lblWikipediaUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblWikipediaUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblWikipediaUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblWikipediaUrl, gridBagConstraints);
lblAmazonAuthorUrl.setText("lblAmazonAuthorUrl");
lblAmazonAuthorUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblAmazonAuthorUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblAmazonAuthorUrl.setPreferredSize(new java.awt.Dimension(200, 22));
lblAmazonAuthorUrl.setRequestFocusEnabled(false);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblAmazonAuthorUrl, gridBagConstraints);
lblAmazonIsbnUrl.setText("lblAmazonIsbnUrl");
lblAmazonIsbnUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblAmazonIsbnUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblAmazonIsbnUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblAmazonIsbnUrl, gridBagConstraints);
lblAmazonTitleUrl.setText("lblAmazonTitleUrl");
lblAmazonTitleUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblAmazonTitleUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblAmazonTitleUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 4;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblAmazonTitleUrl, gridBagConstraints);
lblGoodreadAuthorUrl.setText("lblGoodreadAuthorUrl");
lblGoodreadAuthorUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblGoodreadAuthorUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblGoodreadAuthorUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblGoodreadAuthorUrl, gridBagConstraints);
lblGoodreadIsbnUrl.setText("lblGoodreadIsbnUrl");
lblGoodreadIsbnUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblGoodreadIsbnUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblGoodreadIsbnUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 6;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblGoodreadIsbnUrl, gridBagConstraints);
lblGoodreadTitleUrl.setText("lblGoodreadTitleUrl");
lblGoodreadTitleUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblGoodreadTitleUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblGoodreadTitleUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 7;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblGoodreadTitleUrl, gridBagConstraints);
lblIsfdbAuthorUrl.setText("tlblsfdbAuthorUrl");
lblIsfdbAuthorUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblIsfdbAuthorUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblIsfdbAuthorUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 10;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblIsfdbAuthorUrl, gridBagConstraints);
lblLibrarythingAuthorUrl.setText("lblLibrarythingAuthorUrl");
lblLibrarythingAuthorUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblLibrarythingAuthorUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblLibrarythingAuthorUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 11;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblLibrarythingAuthorUrl, gridBagConstraints);
lblLibrarythingIsbnUrl.setText("lblLibrarythingIsbnUrl");
lblLibrarythingIsbnUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblLibrarythingIsbnUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblLibrarythingIsbnUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 12;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblLibrarythingIsbnUrl, gridBagConstraints);
lblLibrarythingTitleUrl.setText("lblLibrarythingTitleUrl");
lblLibrarythingTitleUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblLibrarythingTitleUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblLibrarythingTitleUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 13;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblLibrarythingTitleUrl, gridBagConstraints);
lblNogenerateExternalReferences.setText("lblNogenerateExternalReferences");
lblNogenerateExternalReferences.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
lblNogenerateExternalReferences.setVerifyInputWhenFocusTarget(false);
lblNogenerateExternalReferences.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
pnlExternalUrlsOptions.add(lblNogenerateExternalReferences, gridBagConstraints);
chkNogenerateExternalReferences.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
chkNogenerateExternalReferencesStateChanged(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(chkNogenerateExternalReferences, gridBagConstraints);
lblGoodreadReviewIsbnUrl.setText("lblGoodreadReviewIsbnUrl");
lblGoodreadReviewIsbnUrl.setMaximumSize(new java.awt.Dimension(250, 2147483647));
lblGoodreadReviewIsbnUrl.setMinimumSize(new java.awt.Dimension(250, 22));
lblGoodreadReviewIsbnUrl.setPreferredSize(new java.awt.Dimension(200, 22));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 8;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlExternalUrlsOptions.add(lblGoodreadReviewIsbnUrl, gridBagConstraints);
lblNewWindowForExternalReferences.setText("lblNewWindowForExternalReferences");
lblNewWindowForExternalReferences.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(lblNewWindowForExternalReferences, gridBagConstraints);
chkNewWindowForExternalReferences.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
chkNewWindowForExternalReferenceschkNogenerateexternallinksStateChanged(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlExternalUrlsOptions.add(chkNewWindowForExternalReferences, gridBagConstraints);
tabOptionsTabs.addTab("pnlExternalUrlsOptions", pnlExternalUrlsOptions);
pnlCustomCatalogs.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentShown(java.awt.event.ComponentEvent evt) {
pnlCustomCatalogsComponentShown(evt);
}
});
pnlCustomCatalogs.setLayout(new java.awt.GridBagLayout());
lblCustomDummy1.setText(" ");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCustomCatalogs.add(lblCustomDummy1, gridBagConstraints);
lblFeaturedCatalogSavedSearchName.setText("lblFeaturedCatalogSavedSearchName");
lblFeaturedCatalogSavedSearchName.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCustomCatalogs.add(lblFeaturedCatalogSavedSearchName, gridBagConstraints);
txtFeaturedCatalogSavedSearchName.setText("txtFeaturedCatalogSavedSearchName");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCustomCatalogs.add(txtFeaturedCatalogSavedSearchName, gridBagConstraints);
lblFeaturedCatalogTitle.setText("lblFeaturedCatalogTitle");
lblFeaturedCatalogTitle.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCustomCatalogs.add(lblFeaturedCatalogTitle, gridBagConstraints);
txtFeaturedCatalogTitle.setText("txtFeaturedCatalogTitle");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 2;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCustomCatalogs.add(txtFeaturedCatalogTitle, gridBagConstraints);
lblCustomDummy2.setText(" ");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCustomCatalogs.add(lblCustomDummy2, gridBagConstraints);
cmdAdd.setText("cmdAdd");
cmdAdd.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdAddCustomCatalogActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlCustomCatalogs.add(cmdAdd, gridBagConstraints);
tblCustomCatalogs.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
tblCustomCatalogs.setModel(getTblCustomCatalogsModel());
tblCustomCatalogs.setColumnSelectionAllowed(true);
tblCustomCatalogs.setRowHeight(30);
tblCustomCatalogs.setRowMargin(3);
addDeleteButtonToCustomCatalogsTable();
scrCustomCatalogs.setViewportView(tblCustomCatalogs);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 5;
gridBagConstraints.gridwidth = 4;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.weighty = 1.0;
pnlCustomCatalogs.add(scrCustomCatalogs, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
pnlCustomCatalogs.add(pnlCustomCatalogsTableButtons, gridBagConstraints);
lblNewWindowForCustomExternalLinks.setText("lblNewWindowForCustomExternalLinks");
lblNewWindowForCustomExternalLinks.setToolTipText("");
lblNewWindowForCustomExternalLinks.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCustomCatalogs.add(lblNewWindowForCustomExternalLinks, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlCustomCatalogs.add(chkNewWindowForCustomExternalLinks, gridBagConstraints);
tabOptionsTabs.addTab("pnlCustomCatalogs", pnlCustomCatalogs);
pnlSearchOptions.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentShown(java.awt.event.ComponentEvent evt) {
pnlSearchComponentShown(evt);
}
});
pnlSearchOptions.setLayout(new java.awt.GridBagLayout());
txtMaxKeywords.setText("txtMaxKeywords");
txtMaxKeywords.setMaximumSize(new java.awt.Dimension(150, 22));
txtMaxKeywords.setMinimumSize(new java.awt.Dimension(100, 22));
txtMaxKeywords.setName(""); // NOI18N
txtMaxKeywords.setPreferredSize(new java.awt.Dimension(80, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
pnlSearchOptions.add(txtMaxKeywords, gridBagConstraints);
lblMaxKeywords.setText("lblMaxKeywords");
lblMaxKeywords.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 6;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlSearchOptions.add(lblMaxKeywords, gridBagConstraints);
lblIndexComments.setText("lblIndexComments");
lblIndexComments.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 7;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlSearchOptions.add(lblIndexComments, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 7;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlSearchOptions.add(chkIndexComments, gridBagConstraints);
lblIndexFilterAlgorithm.setText("lblIndexFilterAlgorithm");
lblIndexFilterAlgorithm.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 9;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 5, 3, 5);
pnlSearchOptions.add(lblIndexFilterAlgorithm, gridBagConstraints);
cboIndexFilterAlgorithm.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
cboIndexFilterAlgorithm.setMinimumSize(new java.awt.Dimension(200, 26));
cboIndexFilterAlgorithm.setPreferredSize(new java.awt.Dimension(150, 20));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 9;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(3, 0, 3, 5);
pnlSearchOptions.add(cboIndexFilterAlgorithm, gridBagConstraints);
lblGenerateIndex.setText("lblGenerateIndex");
lblGenerateIndex.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
pnlSearchOptions.add(lblGenerateIndex, gridBagConstraints);
chkGenerateIndex.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
chkGenerateIndexActionPerformed(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 5;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlSearchOptions.add(chkGenerateIndex, gridBagConstraints);
lblSearchDeprecated.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblSearchDeprecated.setText("lblSearchDeprecated");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.gridwidth = 2;
gridBagConstraints.gridheight = 4;
pnlSearchOptions.add(lblSearchDeprecated, gridBagConstraints);
tabOptionsTabs.addTab("pnlSearchOptions", pnlSearchOptions);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.gridwidth = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
gridBagConstraints.insets = new java.awt.Insets(10, 5, 10, 5);
pnlMain.add(tabOptionsTabs, gridBagConstraints);
tabOptionsTabs.getAccessibleContext().setAccessibleName("Catalog Structure");
pnlBottom.setLayout(new java.awt.GridBagLayout());
lblBottom0.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
lblBottom0.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblBottom0.setText("lblBottom0");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBottom.add(lblBottom0, gridBagConstraints);
cmdCancel.setText("cmdCancel");
cmdCancel.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdCancelActionPerformed(evt);
}
});
pnlButtons.add(cmdCancel);
cmdReset.setText("cmdReset");
cmdReset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdResetActionPerformed(evt);
}
});
pnlButtons.add(cmdReset);
cmdSave.setText("cmdSave");
cmdSave.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdSaveActionPerformed(evt);
}
});
pnlButtons.add(cmdSave);
cmdGenerate.setText("cmdGenerate");
cmdGenerate.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdGenerateActionPerformed(evt);
}
});
pnlButtons.add(cmdGenerate);
cmdHelp.setText("cmdHelp");
cmdHelp.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdHelpActionPerformed(evt);
}
});
pnlButtons.add(cmdHelp);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 3;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(3, 3, 3, 3);
pnlBottom.add(pnlButtons, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 4;
gridBagConstraints.gridwidth = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
pnlMain.add(pnlBottom, gridBagConstraints);
pnlTitle.setLayout(new java.awt.GridBagLayout());
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 3;
gridBagConstraints.gridy = 0;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
pnlMain.add(pnlTitle, gridBagConstraints);
lblProfile.setFont(new java.awt.Font("Tahoma", 1, 13)); // NOI18N
lblProfile.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
lblProfile.setText("lblProfile");
lblProfile.setVerticalAlignment(javax.swing.SwingConstants.TOP);
lblProfile.setRequestFocusEnabled(false);
lblProfile.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
handleMouseClickOnLabel(evt);
}
});
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 4;
gridBagConstraints.gridy = 1;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
gridBagConstraints.insets = new java.awt.Insets(5, 10, 0, 5);
pnlMain.add(lblProfile, gridBagConstraints);
getContentPane().add(pnlMain, java.awt.BorderLayout.CENTER);
mnuFile.setText("mnuFile");
mnuFileSave.setText("mnuFileSave");
mnuFileSave.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuFileSaveActionPerformed(evt);
}
});
mnuFile.add(mnuFileSave);
mnuFileGenerateCatalogs.setText("mnuFileGenerateCatalogs");
mnuFileGenerateCatalogs.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuFileGenerateCatalogsActionPerformed(evt);
}
});
mnuFile.add(mnuFileGenerateCatalogs);
mnuFileExit.setText("mnuFileExit");
mnuFileExit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuFileExitActionPerformed(evt);
}
});
mnuFile.add(mnuFileExit);
jMenuBar1.add(mnuFile);
mnuProfiles.setText("mnuProfiles");
jMenuBar1.add(mnuProfiles);
mnuTools.setText("mnuTools");
mnuToolsprocessEpubMetadataOfAllBooks.setText("mnuToolsprocessEpubMetadataOfAllBooks");
mnuToolsprocessEpubMetadataOfAllBooks.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuToolsprocessEpubMetadataOfAllBooksActionPerformed(evt);
}
});
mnuTools.add(mnuToolsprocessEpubMetadataOfAllBooks);
mnuToolsResetSecurityCache.setText("mnuToolsResetSecurityCache");
mnuToolsResetSecurityCache.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuToolsResetSecurityCacheActionPerformed(evt);
}
});
mnuTools.add(mnuToolsResetSecurityCache);
mnuToolsConfigLog.setText("mnuToolsConfigLog");
mnuToolsConfigLog.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuToolsConfigLogActionPerformed(evt);
}
});
mnuTools.add(mnuToolsConfigLog);
mnuToolsClearLog.setText("mnuToolsClearLog");
mnuToolsClearLog.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuToolsClearLogActionPerformed(evt);
}
});
mnuTools.add(mnuToolsClearLog);
mnuToolsOpenLog.setText("mnuToolsOpenLog");
mnuToolsOpenLog.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuToolsOpenLogActionPerformed(evt);
}
});
mnuTools.add(mnuToolsOpenLog);
mnuToolsOpenOldLog.setText("mnuToolsOpenOldLog");
mnuToolsOpenOldLog.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuToolsOpenOldLogActionPerformed(evt);
}
});
mnuTools.add(mnuToolsOpenOldLog);
mnuToolsOpenSyncLog.setText("mnuToolsOpenSyncLog");
mnuToolsOpenSyncLog.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuToolsOpenSyncLogActionPerformed(evt);
}
});
mnuTools.add(mnuToolsOpenSyncLog);
mnuToolsOpenConfig.setText("mnuToolsOpenConfig");
mnuToolsOpenConfig.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuToolsOpenConfigActionPerformed(evt);
}
});
mnuTools.add(mnuToolsOpenConfig);
jMenuBar1.add(mnuTools);
mnuHelp.setText("mnuHelp");
mnuHelpDonate.setText("mnuHelpDonate");
mnuHelpDonate.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpDonateActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpDonate);
mnuHelpHome.setText("mnuHelpHome");
mnuHelpHome.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpHomeActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpHome);
mnuHelpOpenForum.setText("mnuHelpOpenForum");
mnuHelpOpenForum.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpOpenForumActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpOpenForum);
mnuHelpOpenIssues.setText("mnuHelpOpenIssues");
mnuHelpOpenIssues.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpOpenIssuesActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpOpenIssues);
mnuHelpUserGuide.setText("mnuHelpUserGuide");
mnuHelpUserGuide.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpUserGuideActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpUserGuide);
mnuHelpDevelopersGuide.setText("mnuHelpDevelopersGuide");
mnuHelpDevelopersGuide.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpDevelopersGuideActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpDevelopersGuide);
mnuHelpOpenLocalize.setText("mnuHelpOpenLocalize");
mnuHelpOpenLocalize.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpOpenLocalizeActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpOpenLocalize);
mnuHelpOpenCustomize.setText("mnuHelpOpenCustomize");
mnuHelpOpenCustomize.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpOpenCustomizeActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpOpenCustomize);
mnuHelpAbout.setText("mnuHelpAbout");
mnuHelpAbout.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
mnuHelpAboutActionPerformed(evt);
}
});
mnuHelp.add(mnuHelpAbout);
jMenuBar1.add(mnuHelp);
setJMenuBar(jMenuBar1);
pack();
}// </editor-fold>//GEN-END:initComponents
private void lblDeviceNASMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_lblDeviceNASMouseClicked
setDeviceSpecificMode(DeviceMode.Nas);
}//GEN-LAST:event_lblDeviceNASMouseClicked
private void chkBrowseByCoverActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkBrowseByCoverActionPerformed
computeBrowseByCoverWithoutSplitVisibility();
}//GEN-LAST:event_chkBrowseByCoverActionPerformed
private void txtDatabaseFolderActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtDatabaseFolderActionPerformed
setDatabaseFolder(txtDatabaseFolder.getText());
}//GEN-LAST:event_txtDatabaseFolderActionPerformed
private void txtTargetFolderActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtTargetFolderActionPerformed
setTargetFolder(txtTargetFolder.getText());
}//GEN-LAST:event_txtTargetFolderActionPerformed
private void mnuToolsprocessEpubMetadataOfAllBooksActionPerformed(java.awt.event.ActionEvent evt)
{//GEN-FIRST:event_mnuToolsprocessEpubMetadataOfAllBooksActionPerformed
processEpubMetadataOfAllBooks();
}//GEN-LAST:event_mnuToolsprocessEpubMetadataOfAllBooksActionPerformed
private void chkNoCoverResizeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkNoCoverResizeActionPerformed
// lblCoverHeight.setVisible(!chkNoCoverResize.isSelected());
lblCoverHeight.setVisible(true);
// txtCoverHeight.setVisible(!chkNoCoverResize.isSelected());
txtCoverHeight.setVisible(true);
}//GEN-LAST:event_chkNoCoverResizeActionPerformed
private void chkNoThumbnailGenerateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkNoThumbnailGenerateActionPerformed
// lblThumbnailheight.setVisible(!chkNoThumbnailGenerate.isSelected());
// lblThumbnailheight.setVisible(true);
// txtThumbnailheight.setVisible(!chkNoThumbnailGenerate.isSelected());
// txtThumbnailheight.setVisible(true);
// We cannot use a thumbnail as a cover if they are not being generated!
if (chkNoThumbnailGenerate.isSelected() == true) {
chkUseThumbnailAsCover.setSelected(false);
}
lblUseThumbnailAsCover.setEnabled(! chkNoThumbnailGenerate.isSelected());
chkUseThumbnailAsCover.setEnabled(lblUseThumbnailAsCover.isEnabled());
}//GEN-LAST:event_chkNoThumbnailGenerateActionPerformed
private void cmdAmazonUrlResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdAmazonUrlResetActionPerformed
txtAmazonAuthorUrl.setText((new DefaultConfigurationSettings()).getAmazonAuthorUrl());
}//GEN-LAST:event_cmdAmazonUrlResetActionPerformed
private void cmdAmazonIsbnResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdAmazonIsbnResetActionPerformed
txtAmazonIsbnUrl.setText((new DefaultConfigurationSettings()).getAmazonIsbnUrl());
}//GEN-LAST:event_cmdAmazonIsbnResetActionPerformed
private void cmdAmazonTitleResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdAmazonTitleResetActionPerformed
txtAmazonTitleUrl.setText((new DefaultConfigurationSettings()).getAmazonTitleUrl());
}//GEN-LAST:event_cmdAmazonTitleResetActionPerformed
private void cmdGoodreadAuthorResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdGoodreadAuthorResetActionPerformed
txtGoodreadAuthorUrl.setText((new DefaultConfigurationSettings()).getGoodreadAuthorUrl());
}//GEN-LAST:event_cmdGoodreadAuthorResetActionPerformed
private void cmdGoodreadIsbnResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdGoodreadIsbnResetActionPerformed
txtGoodreadIsbnUrl.setText((new DefaultConfigurationSettings()).getGoodreadIsbnUrl());
}//GEN-LAST:event_cmdGoodreadIsbnResetActionPerformed
private void cmdGoodreadTitleResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdGoodreadTitleResetActionPerformed
txtGoodreadTitleUrl.setText((new DefaultConfigurationSettings()).getGoodreadTitleUrl());
}//GEN-LAST:event_cmdGoodreadTitleResetActionPerformed
private void cmdGoodreadReviewResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdGoodreadReviewResetActionPerformed
txtGoodreadReviewIsbnUrl.setText((new DefaultConfigurationSettings()).getGoodreadReviewIsbnUrl());
}//GEN-LAST:event_cmdGoodreadReviewResetActionPerformed
private void cmdIsfdbAuthorResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdIsfdbAuthorResetActionPerformed
txtIsfdbAuthorUrl.setText((new DefaultConfigurationSettings()).getIsfdbAuthorUrl());
}//GEN-LAST:event_cmdIsfdbAuthorResetActionPerformed
private void cmdLibrarythingAuthorResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdLibrarythingAuthorResetActionPerformed
txtLibrarythingAuthorUrl.setText((new DefaultConfigurationSettings()).getLibrarythingAuthorUrl());
}//GEN-LAST:event_cmdLibrarythingAuthorResetActionPerformed
private void cmdLibrarythingIsbnResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdLibrarythingIsbnResetActionPerformed
txtLibrarythingIsbnUrl.setText((new DefaultConfigurationSettings()).getLibrarythingIsbnUrl());
}//GEN-LAST:event_cmdLibrarythingIsbnResetActionPerformed
private void cmdLibrarythingTitleResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdLibrarythingTitleResetActionPerformed
txtLibrarythingTitleUrl.setText((new DefaultConfigurationSettings()).getLibrarythingTitleUrl());
}//GEN-LAST:event_cmdLibrarythingTitleResetActionPerformed
private void cmdWikipediaUrlResetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdWikipediaUrlResetActionPerformed
txtWikipediaUrl.setText((new DefaultConfigurationSettings()).getWikipediaUrl());
}//GEN-LAST:event_cmdWikipediaUrlResetActionPerformed
private void chkGenerateIndexActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkGenerateIndexActionPerformed
actOnGenerateIndexActionPerformed();
}//GEN-LAST:event_chkGenerateIndexActionPerformed
private void cmdAddCustomCatalogActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdAddCustomCatalogActionPerformed
addCustomCatalog();
}//GEN-LAST:event_cmdAddCustomCatalogActionPerformed
private void chkNogenerateExternalLinksStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_chkNogenerateExternalLinksStateChanged
setExternalLinksEnabledState();
}//GEN-LAST:event_chkNogenerateExternalLinksStateChanged
/**
* Reset the encrypted files cache as long as the user confirms that this is
* really what thery intended (to protect against clicking wrong menu optiob)
* @param evt
*/
private void mnuToolsResetSecurityCacheActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuToolsResetSecurityCacheActionPerformed
if (JOptionPane.YES_OPTION != JOptionPane.showConfirmDialog(this, Localization.Main.getText("gui.confirm.tools.resetEncrypted"), "", JOptionPane.YES_NO_OPTION))
return;
logger.info(Localization.Main.getText("gui.menu.tools.resetEncrypted"));
Random generator = new Random(System.currentTimeMillis());
String securityCode = Integer.toHexString(generator.nextInt());
currentProfile.setSecurityCode(securityCode);
}//GEN-LAST:event_mnuToolsResetSecurityCacheActionPerformed
private void mnuToolsClearLogActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuToolsClearLogActionPerformed
debugClearLogFile();
}//GEN-LAST:event_mnuToolsClearLogActionPerformed
private void mnuToolsConfigLogActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuToolsConfigLogActionPerformed
configLogFile();
}//GEN-LAST:event_mnuToolsConfigLogActionPerformed
private void mnuToolsOpenLogActionPerformed(java.awt.event.ActionEvent evt) {
debugShowLogFile(Constants.LOGFILE_NAME);
}
private void mnuToolsOpenSyncLogActionPerformed(java.awt.event.ActionEvent evt) {
File f = new File(ConfigurationManager.getConfigurationDirectory() + "/" + Constants.LOGFILE_FOLDER + "/" + Constants.SYNCFILE_NAME);
if (f.exists()) {
logger.info(Localization.Main.getText("gui.menu.tools.logFile") + ": " + f.getPath());
debugShowFile(f);
}
}
private void mnuToolsOpenConfigActionPerformed(java.awt.event.ActionEvent evt) {
debugShowSupportFolder();
}
private void mnuHelpOpenForumActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuHelpOpenForumActionPerformed
logger.info(Localization.Main.getText("gui.menu.supportForum") + ": " + Constants.FORUM_URL);
BareBonesBrowserLaunch.openURL(Constants.FORUM_URL);
}//GEN-LAST:event_mnuHelpOpenForumActionPerformed
private void mnuHelpOpenIssuesActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuHelpOpenIssuesActionPerformed
logger.info(Localization.Main.getText("gui.menu.issueRegister") + ": " + Constants.ISSUES_URL);
BareBonesBrowserLaunch.openURL(Constants.ISSUES_URL);
}//GEN-LAST:event_mnuHelpOpenIssuesActionPerformed
private void mnuHelpDevelopersGuideActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuHelpDevelopersGuideActionPerformed
logger.info(Localization.Main.getText("gui.menu.developerGuide") + ": " + Constants.DEVELOPERGUIDE_URL);
BareBonesBrowserLaunch.openURL(Constants.DEVELOPERGUIDE_URL);
}//GEN-LAST:event_mnuHelpDevelopersGuideActionPerformed
private void mnuHelpUserGuideActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuHelpUserGuideActionPerformed
logger.info(Localization.Main.getText("gui.menu.userGuide") + ": " + Constants.USERGUIDE_URL);
BareBonesBrowserLaunch.openURL(Constants.USERGUIDE_URL);
}//GEN-LAST:event_mnuHelpUserGuideActionPerformed
private void mnuHelpHomeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuHelpHomeActionPerformed
logger.info(Localization.Main.getText("gui.menu.help") + ": " + Constants.HOME_URL);
BareBonesBrowserLaunch.openURL(Constants.HOME_URL);
}//GEN-LAST:event_mnuHelpHomeActionPerformed
private void cmdHelpActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmdHelpActionPerforme
logger.info(Localization.Main.getText("gui.menu.help") + ": " + tabHelpUrl);
BareBonesBrowserLaunch.openURL(tabHelpUrl);
}//GEN-LAST:event_cmdHelpActionPerforme
private void pnlMainOptionsComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_pnlMainOptionsComponentShown
tabHelpUrl = Constants.HELP_URL_MAIN_OPTIONS;
}//GEN-LAST:event_pnlMainOptionsComponentShown
private void pnlCatalogStructureComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_pnlCatalogStructureComponentShown
tabHelpUrl = Constants.HELP_URL_CATALOGSTRUCTURE;
}//GEN-LAST:event_pnlCatalogStructureComponentShown
private void pnlBookDetailsComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_pnlBookDetailsComponentShown
tabHelpUrl = Constants.HELP_URL_BOOKDETAILS;
}//GEN-LAST:event_pnlBookDetailsComponentShown
private void pnlAdvancedOptionsComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_pnlAdvancedOptionsComponentShown
tabHelpUrl = Constants.HELP_URL_ADVANCED;
}//GEN-LAST:event_pnlAdvancedOptionsComponentShown
private void pnlExternalUrlsOptionsComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_pnlExternalUrlsOptionsComponentShown
tabHelpUrl = Constants.HELP_URL_EXTERNALLINKS;
}//GEN-LAST:event_pnlExternalUrlsOptionsComponentShown
private void pnlCustomCatalogsComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_pnlCustomCatalogsComponentShown
tabHelpUrl = Constants.HELP_URL_CUSTOMCATALOGS;
}//GEN-LAST:event_pnlCustomCatalogsComponentShown
private void mnuHelpOpenLocalizeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuHelpOpenLocalizeActionPerformed
logger.info(Localization.Main.getText("gui.menu.help.localize") + ": " + Constants.LOCALIZE_URL);
BareBonesBrowserLaunch.openURL(Constants.LOCALIZE_URL);
}//GEN-LAST:event_mnuHelpOpenLocalizeActionPerformed
private void mnuHelpOpenCustomizeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuHelpOpenCustomizeActionPerformed
logger.info(Localization.Main.getText("gui.menu.help.customize") + ": " + Constants.CUSTOMIZE_URL);
BareBonesBrowserLaunch.openURL(Constants.CUSTOMIZE_URL);
}//GEN-LAST:event_mnuHelpOpenCustomizeActionPerformed
private void checkDownloads(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_checkDownloads
checkDownloads();
}//GEN-LAST:event_checkDownloads
private void CheckOnlyCatalogAllowed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_CheckOnlyCatalogAllowed
checkOnlyCatalogAllowed();
}//GEN-LAST:event_CheckOnlyCatalogAllowed
private void chkZipCatalogActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkZipCatalogActionPerformed
boolean genOptions = !chkNogenerateopds.isSelected() && !chkNogeneratehtml.isSelected();
lblZipOmitXml.setEnabled(chkZipCatalog.isSelected() && genOptions);
chkZipOmitXml.setEnabled(lblZipOmitXml.isEnabled() && genOptions);
}//GEN-LAST:event_chkZipCatalogActionPerformed
private void txtBooksinrecentFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_txtBooksinrecentFocusLost
guiField g = getGuiField(lblBooksinrecent);
assert g != null;
int maximum = g.getMaximum();
if (getValue(txtBooksinrecent) > maximum) {
String message = Localization.Main.getText("error.recentTooLarge", maximum);
JOptionPane.showMessageDialog(this, message, "", JOptionPane.ERROR_MESSAGE);
txtBooksinrecent.setText("" + maximum);
}
}//GEN-LAST:event_txtBooksinrecentFocusLost
private void chkNogeneratecrosslinksActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkNogeneratecrosslinksActionPerformed
checkCrossReferencesEnabled();
}//GEN-LAST:event_chkNogeneratecrosslinksActionPerformed
private void chkNogeneratecrosslinksStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_chkNogeneratecrosslinksStateChanged
checkCrossReferencesEnabled();
}//GEN-LAST:event_chkNogeneratecrosslinksStateChanged
private void txtSplittagsonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtSplittagsonActionPerformed
checkSplitTagsOn(true);
}//GEN-LAST:event_txtSplittagsonActionPerformed
private void txtSplittagsonFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_txtSplittagsonFocusLost
checkSplitTagsOn(true);
}//GEN-LAST:event_txtSplittagsonFocusLost
private void pnlSearchComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_pnlSearchComponentShown
tabHelpUrl = Constants.HELP_URL_SEARCH;
}//GEN-LAST:event_pnlSearchComponentShown
private void mnuToolsOpenOldLogActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuToolsOpenOldLogActionPerformed
debugShowLogFolder();
}//GEN-LAST:event_mnuToolsOpenOldLogActionPerformed
private void chkIncludeAuthorInBookDetailsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkIncludeAuthorInBookDetailsActionPerformed
checkAuthorsIncluded();
}//GEN-LAST:event_chkIncludeAuthorInBookDetailsActionPerformed
private void chkNewWindowForExternalReferenceschkNogenerateexternallinksStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_chkNewWindowForExternalReferenceschkNogenerateexternallinksStateChanged
// TODO add your handling code here:
}//GEN-LAST:event_chkNewWindowForExternalReferenceschkNogenerateexternallinksStateChanged
private void chkNogenerateExternalReferencesStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_chkNogenerateExternalReferencesStateChanged
// TODO add your handling code here:
}//GEN-LAST:event_chkNogenerateExternalReferencesStateChanged
private void cmdSetTargetFolderActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_cmdSetTargetFolderActionPerformed
showSetTargetFolderDialog();
}// GEN-LAST:event_cmdSetTargetFolderActionPerformed
private void cboLangVetoableChange(java.beans.PropertyChangeEvent evt) throws java.beans.PropertyVetoException {// GEN-FIRST:event_cboLangVetoableChange
changeLanguage();
}// GEN-LAST:event_cboLangVetoableChange
private void cboLangActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_cboLangActionPerformed
changeLanguage();
}// GEN-LAST:event_cboLangActionPerformed
private void chkDontsplittagsActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_chkDontsplittagsActionPerformed
checkSplitTagsOn(true);
}// GEN-LAST:event_chkDontsplittagsActionPerformed
private void cmdResetActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_cmdResetActionPerformed
resetValuesToProfile();
}// GEN-LAST:event_cmdResetActionPerformed
private void mnuHelpAboutActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_mnuHelpAboutActionPerformed
about();
}// GEN-LAST:event_mnuHelpAboutActionPerformed
private void mnuHelpDonateActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_mnuHelpDonateActionPerformed
donate();
}// GEN-LAST:event_mnuHelpDonateActionPerformed
private void mnuFileSaveActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_mnuFileSaveActionPerformed
saveConfiguration();
}// GEN-LAST:event_mnuFileSaveActionPerformed
private void mnuFileExitActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_mnuFileExitActionPerformed
exitProgram();
}// GEN-LAST:event_mnuFileExitActionPerformed
private void mnuFileGenerateCatalogsActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_mnuFileGenerateCatalogsActionPerformed
generateCatalog();
}// GEN-LAST:event_mnuFileGenerateCatalogsActionPerformed
private void lblDeviceNookMouseClicked(java.awt.event.MouseEvent evt) {// GEN-FIRST:event_lblDeviceNookMouseClicked
setDeviceSpecificMode(DeviceMode.Nook);
}// GEN-LAST:event_lblDeviceNookMouseClicked
private void lblDeviceDropboxMouseClicked(java.awt.event.MouseEvent evt) {// GEN-FIRST:event_lblDeviceIphoneMouseClicked
setDeviceSpecificMode(DeviceMode.Default);
}// GEN-LAST:event_lblDeviceIphoneMouseClicked
private void lblDonateMouseClicked(java.awt.event.MouseEvent evt) {// GEN-FIRST:event_jLabel19MouseClicked
donate();
}// GEN-LAST:event_lblDonateMouseClicked
private void handleMouseClickOnLabel(java.awt.event.MouseEvent evt) {// GEN-FIRST:event_handleMouseClickOnLabel
popupExplanation((JLabel) evt.getSource());
}// GEN-LAST:event_handleMouseClickOnLabel
private void cmdGenerateActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_cmdGenerateActionPerformed
generateCatalog();
}// GEN-LAST:event_cmdGenerateActionPerformed
private void cmdSaveActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_cmdSaveActionPerformed
saveConfiguration();
}// GEN-LAST:event_cmdSaveActionPerformed
private void cmdCancelActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_cmdCancelActionPerformed
exitProgram();
}// GEN-LAST:event_cmdCancelActionPerformed
private void cmdSetDatabaseFolderActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_cmdSetDatabaseFolderActionPerformed
showSetDatabaseFolderDialog();
}// GEN-LAST:event_cmdSetDatabaseFolderActionPerformed
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JComboBox cboIndexFilterAlgorithm;
private javax.swing.JComboBox cboLang;
private javax.swing.JCheckBox chkBookDetailsCustomFieldsAlways;
private javax.swing.JCheckBox chkBrowseByCover;
private javax.swing.JCheckBox chkBrowseByCoverWithoutSplit;
private javax.swing.JCheckBox chkCopyToDatabaseFolder;
private javax.swing.JCheckBox chkCryptFilenames;
private javax.swing.JCheckBox chkDisableOptimizer;
private javax.swing.JCheckBox chkDisplayAuthorSort;
private javax.swing.JCheckBox chkDisplaySeriesSort;
private javax.swing.JCheckBox chkDisplayTitleSort;
private javax.swing.JCheckBox chkDontsplittags;
private javax.swing.JCheckBox chkExternalIcons;
private javax.swing.JCheckBox chkExternalImages;
private javax.swing.JCheckBox chkGenerateIndex;
private javax.swing.JCheckBox chkIncludeAddedInBookDetails;
private javax.swing.JCheckBox chkIncludeAuthorCrossReferences;
private javax.swing.JCheckBox chkIncludeAuthorInBookDetails;
private javax.swing.JCheckBox chkIncludeCoversInCatalog;
private javax.swing.JCheckBox chkIncludeModifiedInBookDetails;
private javax.swing.JCheckBox chkIncludeOnlyOneFile;
private javax.swing.JCheckBox chkIncludePublishedInBookDetails;
private javax.swing.JCheckBox chkIncludePublisherInBookDetails;
private javax.swing.JCheckBox chkIncludeRatingCrossReferences;
private javax.swing.JCheckBox chkIncludeRatingInBookDetails;
private javax.swing.JCheckBox chkIncludeSerieCrossReferences;
private javax.swing.JCheckBox chkIncludeSeriesInBookDetails;
private javax.swing.JCheckBox chkIncludeSizeOfDownloads;
private javax.swing.JCheckBox chkIncludeTagCrossReferences;
private javax.swing.JCheckBox chkIncludeTagsInBookDetails;
private javax.swing.JCheckBox chkIncludeTitleInBookDetails;
private javax.swing.JCheckBox chkIncludeemptybooks;
private javax.swing.JCheckBox chkIndexComments;
private javax.swing.JCheckBox chkLanguageAsTag;
private javax.swing.JCheckBox chkNewWindowForCustomExternalLinks;
private javax.swing.JCheckBox chkNewWindowForExternalReferences;
private javax.swing.JCheckBox chkNoCoverResize;
private javax.swing.JCheckBox chkNoGenerateAuthors;
private javax.swing.JCheckBox chkNoGenerateSeries;
private javax.swing.JCheckBox chkNoGenerateTags;
private javax.swing.JCheckBox chkNoIncludeAboutLink;
private javax.swing.JCheckBox chkNoShowSeries;
private javax.swing.JCheckBox chkNoThumbnailGenerate;
private javax.swing.JCheckBox chkNogenerateExternalReferences;
private javax.swing.JCheckBox chkNogenerateallbooks;
private javax.swing.JCheckBox chkNogeneratecrosslinks;
private javax.swing.JCheckBox chkNogeneratehtml;
private javax.swing.JCheckBox chkNogeneratehtmlfiles;
private javax.swing.JCheckBox chkNogenerateopds;
private javax.swing.JCheckBox chkNogenerateopdsfiles;
private javax.swing.JCheckBox chkNogenerateratings;
private javax.swing.JCheckBox chkNogeneraterecent;
private javax.swing.JCheckBox chkOnlyCatalogAtTarget;
private javax.swing.JCheckBox chkOrderAllBooksBySeries;
private javax.swing.JCheckBox chkPublishedDateAsYear;
private javax.swing.JCheckBox chkReprocessEpubMetadata;
private javax.swing.JCheckBox chkSingleBookCrossReferences;
private javax.swing.JCheckBox chkSortSeriesUsingLibrarySort;
private javax.swing.JCheckBox chkSortTagsByAuthor;
private javax.swing.JCheckBox chkSortUsingAuthorSort;
private javax.swing.JCheckBox chkSortUsingTitleSort;
private javax.swing.JCheckBox chkSplitByAuthorInitialGoToBooks;
private javax.swing.JCheckBox chkSupressRatings;
private javax.swing.JCheckBox chkTagBookNoSplit;
private javax.swing.JCheckBox chkUseThumbnailAsCover;
private javax.swing.JCheckBox chkZipCatalog;
private javax.swing.JCheckBox chkZipOmitXml;
private javax.swing.JCheckBox chkZipTrookCatalog;
private javax.swing.JButton cmdAdd;
private javax.swing.JButton cmdAmazonIsbnReset;
private javax.swing.JButton cmdAmazonTitleReset;
private javax.swing.JButton cmdAmazonUrlReset;
private javax.swing.JButton cmdCancel;
private javax.swing.JButton cmdGenerate;
private javax.swing.JButton cmdGoodreadAuthorReset;
private javax.swing.JButton cmdGoodreadIsbnReset;
private javax.swing.JButton cmdGoodreadReviewReset;
private javax.swing.JButton cmdGoodreadTitleReset;
private javax.swing.JButton cmdHelp;
private javax.swing.JButton cmdIsfdbAuthorReset;
private javax.swing.JButton cmdLibrarythingAuthorReset;
private javax.swing.JButton cmdLibrarythingIsbnReset;
private javax.swing.JButton cmdLibrarythingTitleReset;
private javax.swing.JButton cmdReset;
private javax.swing.JButton cmdSave;
private javax.swing.JButton cmdSetDatabaseFolder;
private javax.swing.JButton cmdSetFavicon;
private javax.swing.JButton cmdSetTargetFolder;
private javax.swing.JButton cmdWikipediaUrlReset;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JTextField lblAmazonAuthorUrl;
private javax.swing.JTextField lblAmazonIsbnUrl;
private javax.swing.JTextField lblAmazonTitleUrl;
private javax.swing.JLabel lblBookDetailsCustomFields;
private javax.swing.JLabel lblBooksinrecent;
private javax.swing.JLabel lblBottom0;
private javax.swing.JLabel lblBrowseByCover;
private javax.swing.JLabel lblBrowseByCoverWithoutSplit;
private javax.swing.JLabel lblCatalogCustomColumns;
private javax.swing.JLabel lblCatalogFilter;
private javax.swing.JLabel lblCatalogFolder;
private javax.swing.JLabel lblCatalogTitle;
private javax.swing.JLabel lblCopyToDatabaseFolder;
private javax.swing.JLabel lblCoverHeight;
private javax.swing.JLabel lblCryptFilenames;
private javax.swing.JLabel lblCustomDummy1;
private javax.swing.JLabel lblCustomDummy2;
private javax.swing.JLabel lblDatabaseFolder;
private javax.swing.JLabel lblDeviceDropbox;
private javax.swing.JLabel lblDeviceMode;
private javax.swing.JLabel lblDeviceNAS;
private javax.swing.JLabel lblDeviceNook;
private javax.swing.JLabel lblDisableOptimizer;
private javax.swing.JLabel lblDisplayAuthorSort;
private javax.swing.JLabel lblDisplaySeriesSort;
private javax.swing.JLabel lblDisplayTitleSort;
private javax.swing.JLabel lblDonate;
private javax.swing.JLabel lblExternalIcons;
private javax.swing.JLabel lblFavicon;
private javax.swing.JLabel lblFeaturedCatalogSavedSearchName;
private javax.swing.JLabel lblFeaturedCatalogTitle;
private javax.swing.JLabel lblGenerateIndex;
private javax.swing.JTextField lblGoodreadAuthorUrl;
private javax.swing.JTextField lblGoodreadIsbnUrl;
private javax.swing.JTextField lblGoodreadReviewIsbnUrl;
private javax.swing.JTextField lblGoodreadTitleUrl;
private javax.swing.JLabel lblIncludeAddedInBookDetails;
private javax.swing.JLabel lblIncludeAuthorCrossReferences;
private javax.swing.JLabel lblIncludeAuthorInBookDetails;
private javax.swing.JLabel lblIncludeCoversInCatalog;
private javax.swing.JLabel lblIncludeModifiedInBookDetails;
private javax.swing.JLabel lblIncludeOnlyOneFile;
private javax.swing.JLabel lblIncludePublishedInBookDetails;
private javax.swing.JLabel lblIncludePublisherInBookDetails;
private javax.swing.JLabel lblIncludeRatingCrossReferences;
private javax.swing.JLabel lblIncludeRatingInBookDetails;
private javax.swing.JLabel lblIncludeSerieCrossReferences;
private javax.swing.JLabel lblIncludeSeriesInBookDetails;
private javax.swing.JLabel lblIncludeSizeOfDownloads;
private javax.swing.JLabel lblIncludeTagCrossReferences;
private javax.swing.JLabel lblIncludeTagsInBookDetails;
private javax.swing.JLabel lblIncludeTitleInBookDetails;
private javax.swing.JLabel lblIncludeemptybooks;
private javax.swing.JLabel lblIncludeformat;
private javax.swing.JLabel lblIndexComments;
private javax.swing.JLabel lblIndexFilterAlgorithm;
private javax.swing.JTextField lblIsfdbAuthorUrl;
private javax.swing.JLabel lblLang;
private javax.swing.JLabel lblLanguageAsTag;
private javax.swing.JTextField lblLibrarythingAuthorUrl;
private javax.swing.JTextField lblLibrarythingIsbnUrl;
private javax.swing.JTextField lblLibrarythingTitleUrl;
private javax.swing.JLabel lblMaxBookSummaryLength;
private javax.swing.JLabel lblMaxKeywords;
private javax.swing.JLabel lblMaxSplitLevels;
private javax.swing.JLabel lblMaxbeforepaginate;
private javax.swing.JLabel lblMaxbeforesplit;
private javax.swing.JLabel lblMaxsummarylength;
private javax.swing.JLabel lblMinBooksToMakeDeepLevel;
private javax.swing.JLabel lblNewWindowForCustomExternalLinks;
private javax.swing.JLabel lblNewWindowForExternalReferences;
private javax.swing.JLabel lblNoCoverResize;
private javax.swing.JLabel lblNoGenerateAuthors;
private javax.swing.JLabel lblNoGenerateSeries;
private javax.swing.JLabel lblNoGenerateTags;
private javax.swing.JLabel lblNoIncludeAboutLink;
private javax.swing.JLabel lblNoShowSeries;
private javax.swing.JLabel lblNoThumbnailGenerate;
private javax.swing.JLabel lblNogenerateExternalReferences;
private javax.swing.JLabel lblNogenerateallbooks;
private javax.swing.JLabel lblNogeneratecrosslinks;
private javax.swing.JLabel lblNogeneratehtml;
private javax.swing.JLabel lblNogeneratehtmlfiles;
private javax.swing.JLabel lblNogenerateopds;
private javax.swing.JLabel lblNogenerateopdsfiles;
private javax.swing.JLabel lblNogenerateratings;
private javax.swing.JLabel lblNogeneraterecent;
private javax.swing.JLabel lblOnlyCatalogAtTarget;
private javax.swing.JLabel lblOrderAllBooksBySeries;
private javax.swing.JLabel lblProfile;
private javax.swing.JLabel lblPublishedDateAsYear;
private javax.swing.JLabel lblReprocessEpubMetadata;
private javax.swing.JLabel lblSearchDeprecated;
private javax.swing.JLabel lblSingleBookCrossReferences;
private javax.swing.JLabel lblSortSeriesUsingLibrarySort;
private javax.swing.JLabel lblSortTagsByAuthor;
private javax.swing.JLabel lblSortUsingAuthor;
private javax.swing.JLabel lblSortUsingTitle;
private javax.swing.JLabel lblSplitByAuthorInitialGoToBooks;
private javax.swing.JLabel lblSplittagson;
private javax.swing.JLabel lblSupressRatings;
private javax.swing.JLabel lblTagBooksNoSplit;
private javax.swing.JLabel lblTagsToIgnore;
private javax.swing.JLabel lblTagsToMakeDeep;
private javax.swing.JLabel lblTargetFolder;
private javax.swing.JLabel lblThumbnailheight;
private javax.swing.JLabel lblUrlBooks;
private javax.swing.JLabel lblUseThumbnailAsCover;
private javax.swing.JLabel lblWikilang;
private javax.swing.JTextField lblWikipediaUrl;
private javax.swing.JLabel lblZipCatalog;
private javax.swing.JLabel lblZipOmitXml;
private javax.swing.JLabel lblZipTrookCatalog;
private javax.swing.JLabel lblexternalImages;
private javax.swing.JMenu mnuFile;
private javax.swing.JMenuItem mnuFileExit;
private javax.swing.JMenuItem mnuFileGenerateCatalogs;
private javax.swing.JMenuItem mnuFileSave;
private javax.swing.JMenu mnuHelp;
private javax.swing.JMenuItem mnuHelpAbout;
private javax.swing.JMenuItem mnuHelpDevelopersGuide;
private javax.swing.JMenuItem mnuHelpDonate;
private javax.swing.JMenuItem mnuHelpHome;
private javax.swing.JMenuItem mnuHelpOpenCustomize;
private javax.swing.JMenuItem mnuHelpOpenForum;
private javax.swing.JMenuItem mnuHelpOpenIssues;
private javax.swing.JMenuItem mnuHelpOpenLocalize;
private javax.swing.JMenuItem mnuHelpUserGuide;
private javax.swing.JMenu mnuProfiles;
private javax.swing.JMenu mnuTools;
private javax.swing.JMenuItem mnuToolsClearLog;
private javax.swing.JMenuItem mnuToolsConfigLog;
private javax.swing.JMenuItem mnuToolsOpenConfig;
private javax.swing.JMenuItem mnuToolsOpenLog;
private javax.swing.JMenuItem mnuToolsOpenOldLog;
private javax.swing.JMenuItem mnuToolsOpenSyncLog;
private javax.swing.JMenuItem mnuToolsResetSecurityCache;
private javax.swing.JMenuItem mnuToolsprocessEpubMetadataOfAllBooks;
private javax.swing.JPanel pnlAdvancedOptions;
private javax.swing.JPanel pnlBottom;
private javax.swing.JPanel pnlButtons;
private javax.swing.JPanel pnlCatalogStructure;
private javax.swing.JPanel pnlCustomCatalogs;
private javax.swing.JPanel pnlCustomCatalogsTableButtons;
private javax.swing.JPanel pnlExternalUrlsOptions;
private javax.swing.JPanel pnlMain;
private javax.swing.JPanel pnlMainOptions;
private javax.swing.JPanel pnlSearchOptions;
private javax.swing.JPanel pnlSplitTagsOn;
private javax.swing.JPanel pnlTitle;
private javax.swing.JScrollPane scrCustomCatalogs;
private javax.swing.JTabbedPane tabOptionsTabs;
private javax.swing.JTable tblCustomCatalogs;
private javax.swing.JTextField txtAmazonAuthorUrl;
private javax.swing.JTextField txtAmazonIsbnUrl;
private javax.swing.JTextField txtAmazonTitleUrl;
private javax.swing.JTextField txtBookDetailsCustomFields;
private javax.swing.JTextField txtBooksinrecent;
private javax.swing.JTextField txtCatalogCustomColumns;
private javax.swing.JTextField txtCatalogFilter;
private javax.swing.JTextField txtCatalogFolder;
private javax.swing.JTextField txtCatalogTitle;
private javax.swing.JTextField txtCoverHeight;
private javax.swing.JTextField txtDatabaseFolder;
private javax.swing.JTextField txtFavicon;
private javax.swing.JTextField txtFeaturedCatalogSavedSearchName;
private javax.swing.JTextField txtFeaturedCatalogTitle;
private javax.swing.JTextField txtGoodreadAuthorUrl;
private javax.swing.JTextField txtGoodreadIsbnUrl;
private javax.swing.JTextField txtGoodreadReviewIsbnUrl;
private javax.swing.JTextField txtGoodreadTitleUrl;
private javax.swing.JTextField txtIncludeformat;
private javax.swing.JTextField txtIsfdbAuthorUrl;
private javax.swing.JTextField txtLibrarythingAuthorUrl;
private javax.swing.JTextField txtLibrarythingIsbnUrl;
private javax.swing.JTextField txtLibrarythingTitleUrl;
private javax.swing.JTextField txtMaxBookSummaryLength;
private javax.swing.JTextField txtMaxKeywords;
private javax.swing.JTextField txtMaxSplitLevels;
private javax.swing.JTextField txtMaxbeforepaginate;
private javax.swing.JTextField txtMaxbeforesplit;
private javax.swing.JTextField txtMaxsummarylength;
private javax.swing.JTextField txtMinBooksToMakeDeepLevel;
private javax.swing.JTextField txtSplittagson;
private javax.swing.JTextField txtTagsToIgnore;
private javax.swing.JTextField txtTagsToMakeDeep;
private javax.swing.JTextField txtTargetFolder;
private javax.swing.JTextField txtThumbnailheight;
private javax.swing.JTextField txtUrlBooks;
private javax.swing.JTextField txtWikilang;
private javax.swing.JTextField txtWikipediaUrl;
// End of variables declaration//GEN-END:variables
}