diff --git a/autotagstartwindow.py b/autotagstartwindow.py
index 86cf514..ee77821 100644
--- a/autotagstartwindow.py
+++ b/autotagstartwindow.py
@@ -42,13 +42,48 @@ class AutoTagStartWindow(QtGui.QDialog):
self.cbxAssumeIssueOne.setCheckState( QtCore.Qt.Unchecked )
self.cbxIgnoreLeadingDigitsInFilename.setCheckState( QtCore.Qt.Unchecked )
self.cbxRemoveAfterSuccess.setCheckState( QtCore.Qt.Unchecked )
+ self.cbxSpecifySearchString.setCheckState( QtCore.Qt.Unchecked )
+ self.leNameLengthMatchTolerance.setText( str(self.settings.id_length_delta_thresh) )
+ self.leSearchString.setEnabled( False )
+
+ nlmtTip = (
+ """ The Name Length Match Tolerance is for eliminating automatic
+ search matches that are too long compared to your series name search. The higher
+ it is, the more likely to have a good match, but each search will take longer and
+ use more bandwidth. Too low, and only the very closest lexical matches will be
+ explored.""" )
+
+ self.leNameLengthMatchTolerance.setToolTip(nlmtTip)
+
+ ssTip = (
+ """
+ The series search string specifies the search string to be used for all selected archives.
+ Use this only when trying to match archives with hard-to-parse filenames. All archives selected
+ should be from the same series.
+ """
+ )
+ self.leSearchString.setToolTip(ssTip)
+ self.cbxSpecifySearchString.setToolTip(ssTip)
+
+
+ validator = QtGui.QIntValidator(0, 99, self)
+ self.leNameLengthMatchTolerance.setValidator(validator)
+
+ self.cbxSpecifySearchString.stateChanged.connect(self.searchStringToggle)
self.autoSaveOnLow = False
self.dontUseYear = False
self.assumeIssueOne = False
self.ignoreLeadingDigitsInFilename = False
self.removeAfterSuccess = False
+ self.searchString = None
+ self.nameLengthMatchTolerance = self.settings.id_length_delta_thresh
+ def searchStringToggle(self):
+ enable = self.cbxSpecifySearchString.isChecked()
+ self.leSearchString.setEnabled( enable )
+
+
def accept( self ):
QtGui.QDialog.accept(self)
@@ -57,4 +92,10 @@ class AutoTagStartWindow(QtGui.QDialog):
self.assumeIssueOne = self.cbxAssumeIssueOne.isChecked()
self.ignoreLeadingDigitsInFilename = self.cbxIgnoreLeadingDigitsInFilename.isChecked()
self.removeAfterSuccess = self.cbxRemoveAfterSuccess.isChecked()
-
\ No newline at end of file
+ self.nameLengthMatchTolerance = int(self.leNameLengthMatchTolerance.text())
+
+ if self.cbxSpecifySearchString.isChecked():
+ self.searchString = unicode(self.leSearchString.text())
+ if len(self.searchString) == 0:
+ self.searchString = None
+
diff --git a/autotagstartwindow.ui b/autotagstartwindow.ui
index 1b30937..953a00b 100644
--- a/autotagstartwindow.ui
+++ b/autotagstartwindow.ui
@@ -9,8 +9,8 @@
0
0
- 530
- 299
+ 602
+ 412
@@ -43,14 +43,7 @@
QFormLayout::AllNonFixedFieldsGrow
- -
-
-
- Don't use publication year in indentification process
-
-
-
- -
+
-
@@ -63,27 +56,74 @@
- -
+
-
+
+
+ Don't use publication year in indentification process
+
+
+
+ -
If no issue number, assume "1"
- -
+
-
Ignore leading (sequence) numbers in filename
- -
+
-
Remove archives from list after successful tagging
+ -
+
+
+ Specify series search string for all selected archives
+
+
+
+ -
+
+
+
+ 40
+ 0
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+ 50
+ 16777215
+
+
+
+
+ -
+
+
+ Adjust Name Length Match Tolerance:
+
+
+
-
diff --git a/issueidentifier.py b/issueidentifier.py
index b777d92..8b04388 100644
--- a/issueidentifier.py
+++ b/issueidentifier.py
@@ -74,7 +74,7 @@ class IssueIdentifier:
self.coverUrlCallback = None
self.search_result = self.ResultNoMatches
self.cover_page_index = 0
-
+
def setScoreMinThreshold( self, thresh ):
self.min_score_thresh = thresh
@@ -85,7 +85,7 @@ class IssueIdentifier:
self.additional_metadata = md
def setNameLengthDeltaThreshold( self, delta ):
- self.length_delta_thresh = md
+ self.length_delta_thresh = delta
def setPublisherBlackList( self, blacklist ):
self.publisher_blacklist = blacklist
diff --git a/settingswindow.py b/settingswindow.py
index 2debe83..1a0206f 100644
--- a/settingswindow.py
+++ b/settingswindow.py
@@ -79,7 +79,7 @@ class SettingsWindow(QtGui.QDialog):
nldtTip = (
- """ The Name Length Delta Threshold is for eliminating automatic
+ """ The Default Name Length Match Tolerance is for eliminating automatic
search matches that are too long compared to your series name search. The higher
it is, the more likely to have a good match, but each search will take longer and
use more bandwidth. Too low, and only the very closest lexical matches will be
diff --git a/settingswindow.ui b/settingswindow.ui
index a097de9..8672fd9 100644
--- a/settingswindow.ui
+++ b/settingswindow.ui
@@ -263,7 +263,7 @@
- Name Length Delta Threshold:
+ Default Name Length Match Tolerance:
@@ -275,6 +275,12 @@
0
+
+
+ 50
+ 16777215
+
+