1
0
mirror of https://github.com/mitb-archive/filebot synced 2024-11-11 03:45:06 -05:00
Commit Graph

178 Commits

Author SHA1 Message Date
Reinhard Pointner
332f371636 * auto-detect encoding when list files are dropped into rename panel 2011-09-04 23:50:54 +00:00
Reinhard Pointner
379f0a9cc1 * support manual input of movie/series title (as fallback if auto-detection fails or if forced via SHIFT-clicking the data source)
* fixed movie mode issues (osdb title/year parsing problem, nfo file imdbid parser problem)
2011-08-22 03:43:22 +00:00
Reinhard Pointner
b59ab7e6ee * added lookup by filename/foldername to movie mode
* search order is now like this: lookup moviehash->lookup imdbid from .nfo->search by filename->search by foldername
2011-07-07 02:08:50 +00:00
Reinhard Pointner
ac774306f4 * fixed messed up file<->episode matching when matching an episode that is represented multiple files in different formats/extensions. 2011-07-04 01:14:54 +00:00
Reinhard Pointner
bf7ab1c52d * updated deployment info
* fixed JRE7 startup issue
2011-07-01 10:52:40 +00:00
Reinhard Pointner
f53887c7ea * improved support for airdate
* refactor SxE from String to Integer types
2010-10-24 12:10:30 +00:00
Reinhard Pointner
8364015504 * unfold/flatten folders when dropped in Rename panel and List panel 2010-10-23 03:51:19 +00:00
Reinhard Pointner
d9027b06ad * improved clean-up of path separators in series name and episode title 2010-02-04 23:22:28 +00:00
Reinhard Pointner
94d1e91b22 * clean up path separators in episode names/titles 2010-02-03 22:51:18 +00:00
Reinhard Pointner
d1b111765e * improved handling of multi-part movies
* added OpenSubtitles as movie name source
2010-01-26 19:08:09 +00:00
Reinhard Pointner
5c7f90540a * some refactoring & polishing
* update nekohtml to 1.9.13
* update jna to 3.2.3
* update ehcache to 1.7.0
* update mediainfo native libs to 0.7.24
* remove 32-bit mediainfo.dynlib for Mac because Java 6 is only available in 64-bit anyway
2009-11-02 23:25:04 +00:00
Reinhard Pointner
f61b084769 * improved support for move/rename 2009-10-29 01:22:00 +00:00
Reinhard Pointner
d3331f3053 * maybe fixed visual update issue in VideoHashSubtitleDownloadDialog 2009-10-26 21:24:48 +00:00
Reinhard Pointner
f51b234667 * fixed visual issue 2009-10-26 20:52:14 +00:00
Reinhard Pointner
916f168d98 + added support for subtitle download via video/movie hash
* added video/subtitle file drop target in SubtitlePanel
* added VideoHashSubtitleDownloadDialog
2009-10-21 22:39:02 +00:00
Reinhard Pointner
39dd413eec * improved subtitle api and video hash support 2009-10-20 21:16:34 +00:00
Reinhard Pointner
5bb45541a8 * don't keep unused threads around 2009-10-15 15:18:57 +00:00
Reinhard Pointner
36ad3d826d * minor updates 2009-10-13 00:28:59 +00:00
Reinhard Pointner
dd736fd4af * improved "focus on filter" behaviour in SubtitleViewer 2009-08-21 14:02:21 +00:00
Reinhard Pointner
3ff3a85289 + auto-lookup verification file
+ allow absolute paths in verification files
* lots of refactoring
2009-08-10 11:46:24 +00:00
Reinhard Pointner
b7c1086c4d * added some slight auto-completion to editor in EpisodeFormatDialog
* make all Settings-related members static final
2009-08-03 23:51:31 +00:00
Reinhard Pointner
3b147b325f * added media info button in EpisodeBindingDialog
* improved dialog positioning
* minor bugfixes
* refactoring
2009-08-02 11:48:45 +00:00
Reinhard Pointner
3956b61127 * added selection dialog for format sample in episode format dialog
* make MediaInfo thread-safe
* refactor class Settings and lots of related code changes
2009-07-29 20:31:08 +00:00
Reinhard Pointner
203eedb24e * encapsulate similarity metrics used in RenamePanel properly
* removed some unused code
* some unit tests
2009-07-26 16:54:24 +00:00
Reinhard Pointner
a860a6ab5d * minor refactoring 2009-07-24 20:28:25 +00:00
Reinhard Pointner
78b77034b1 * remember recent formats in EpisodeFormatDialog
* display script exceptions if formatted name is empty
* better handling of empty search results in some page scrapes
* some test cases
* refactoring
2009-07-18 22:06:32 +00:00
Reinhard Pointner
c4ce1aebe7 * improved various hashCode() methods
* removed unnecessary synchronized locks
* refactoring
2009-07-16 12:06:51 +00:00
Reinhard Pointner
c81cd50fc9 * open series selection dialogs one after another 2009-07-15 09:22:40 +00:00
Reinhard Pointner
857d73bdc0 * refactoring 2009-07-09 20:04:47 +00:00
Reinhard Pointner
2fe8bd1306 * improved OpenSubtitles support
* refactoring
2009-07-03 12:58:05 +00:00
Reinhard Pointner
efc7f81824 * some tuning for gtk laf 2009-07-01 16:14:21 +00:00
Reinhard Pointner
e8cf2e7029 * refactoring 2009-06-30 12:57:09 +00:00
Reinhard Pointner
98ddfafe43 * subtitle file view in download component
* added ByteBufferTransferable and use it as superclass of TextFileTransferable
* added ListView
* lots of refactoring
2009-06-19 22:35:39 +00:00
Reinhard Pointner
18456f6864 + subtitle list displays found subtitles and download phase
+ download and extract selected subtitle packages (not displayed yet though)
* SubtitleDescriptor provides download function (Callable)
* updated sublight webservice
* lazy-initialize SubtitlesAPI2Soap (Sublight) because loading all the jax-ws classes will can take more than 1s (while blocking EDT)
* better sublight subtitle display names
* added archive files to media.types
* added icons for subtitle list
* refactoring
2009-06-13 09:53:48 +00:00
Reinhard Pointner
6593bfdbda * trim result after formatting in EpisodeExpressionFormatter
* refactoring / cleanup
2009-06-02 10:27:28 +00:00
Reinhard Pointner
a547c7e7e9 * use String (language name) instead of Locale in all SubtitleProviders
* get languages (name, code) from xml file
* implemented LanguageComboBox (model, renderer, persistence)
* rename language icons
* removed various prototype classes that will never be used
2009-05-31 15:19:56 +00:00
Reinhard Pointner
0dc12ec505 * cleanup: group static imports 2009-05-17 17:22:44 +00:00
Reinhard Pointner
115c617a0c * refactoring 2009-05-17 15:09:09 +00:00
Reinhard Pointner
a8b3e13339 * cleanup 2009-05-16 16:27:11 +00:00
Reinhard Pointner
9aad7deae2 + added replaceTrailingBraces() to ExpressionFormat context
+ added Undo/Redo support in EpisodeListDialog
* refactoring
2009-05-16 11:58:28 +00:00
Reinhard Pointner
92fedf2ad1 * ResourceManager will now cache Icons 2009-05-13 18:20:26 +00:00
Reinhard Pointner
a6c82fc8e5 * refactoring 2009-05-12 08:57:37 +00:00
Reinhard Pointner
a41f80bd9d * added exists() to cached values in FastFile 2009-05-03 17:38:22 +00:00
Reinhard Pointner
1ed4d2b495 + EpressionFormat: format Double objects with integer values as integers
+ Matching: allow partial match with season number OR episode number
+ AutoFetchEpisodeListMatcher: abort if one or more shows cannot be found

* support specials in TVRage, TVDotCom and TheTVDB Client
* account for IMDB search-to-info-page redirect
2009-05-03 15:21:04 +00:00
Reinhard Pointner
ca032f3b56 + Script expressions in ExpressionFormat will now be evaluated in a secure sandbox
+ "preserve Extension" can be enabled/disabled in RenameModel

* fixed rename list SelectionModel performance issue 
* create package for ui-independant Hash* stuff
2009-05-02 23:34:04 +00:00
Reinhard Pointner
d5a5b93b3b * introduction of a single unified Rename- and MatchModel
* arbitrary formating using Object (e.g. episode information) and File (e.g. codec information) data
* background formatting (e.g. crc32) and visual indicators in cellrenderer
2009-04-26 13:34:22 +00:00
Reinhard Pointner
2a3f3c7ae8 * added format binding for file extension 2009-04-07 18:33:05 +00:00
Reinhard Pointner
4afc701ff7 * use system laf on Windows and Mac, use Nimbus on all the others (Linux, *BSD, ...)
* visual imrovements under Nimbus LAF
2009-04-05 21:03:40 +00:00
Reinhard Pointner
7e6f485882 * improved episode format and format creation dialog
* differentiate between format errors and format warnings
2009-04-04 19:36:12 +00:00
Reinhard Pointner
90c8af354d * WebRequest: try to use compression
* SubsceneClient: persist languageFilterMap
2009-03-15 17:44:39 +00:00
Reinhard Pointner
daa665c00e * fixed annoying layout bug
* remember search engine in episodelist and subtitle panel
2009-03-14 16:02:27 +00:00
Reinhard Pointner
64d8c3c2b4 * refactoring
* don't use global logger
2009-03-14 10:20:59 +00:00
Reinhard Pointner
9ed970de05 * refactoring ...
* changed cmd line args (single panel frame)
* simplified multi panel frame
* changed window icon
* create panels via PanelBuilder
2009-03-14 00:30:24 +00:00
Reinhard Pointner
10a7fd5b4c * added "Edit Format" action to "Fetch Episode List" action popup in rename panel
* add support for episode array transferable to episode list panel and rename panel
* renamed ScriptFormat to ExpressionFormat
* misc. changes
2009-03-12 20:08:42 +00:00
Reinhard Pointner
deb15a6e15 * install Format/Validate view between namesList and model.names()
* refactored Preferences wrapper and unit tests
2009-03-08 18:41:11 +00:00
Reinhard Pointner
68968d84e6 * better matching behaviour
* remove trailing newline for string transferables in DefaultClipboardHandler
2009-03-01 13:52:43 +00:00
Reinhard Pointner
02c3d4ef2b * forgot to add icon resource 2009-02-28 18:10:28 +00:00
Reinhard Pointner
ab14e07924 * improved auto-completion 2009-02-22 19:52:07 +00:00
Reinhard Pointner
d2f5c8e572 * simplify SubsceneSubtitleClient
* use less xpath to speed things up a little bit
2009-02-21 12:48:52 +00:00
Reinhard Pointner
e643466653 * little bit of refactoring
* fixed unit-test
2009-02-17 18:11:33 +00:00
Reinhard Pointner
051cf3362b * some refactoring 2009-02-15 21:11:03 +00:00
Reinhard Pointner
53c769321e * more visual feed back for checksum errors and warnings 2009-02-15 17:58:32 +00:00
Reinhard Pointner
87e8d830ce * full support for multiple checksum types (SFV, MD5, SHA-1)
notes:
* updated to MigLayout 3.6.3
* better exception handling in *TransferablePolicy
* added checksum toggle button and artwork
* poperly cancel computation tasks on reset
* better "Total Progress" visibility behaviour
* improved checksum table model classes, better update/repaint behaviour
2009-02-15 12:20:43 +00:00
Reinhard Pointner
9d7af8bd96 * dnd move: cancel background threads when calling BackgroundFileTransferablePolicy.clear()
* added FastFile, which minimizes fs calls by remembering the results
* use File directly (and not the holder FileEntry) in RenamePanel
2009-02-12 22:04:17 +00:00
Reinhard Pointner
5733cfbcdc * move SFV transferable policy, export handler and computation service from table class to higher-level panel class 2009-02-11 18:42:29 +00:00
Reinhard Pointner
c3939dcb98 * slightly improved exception handling 2009-02-10 21:51:02 +00:00
Reinhard Pointner
dac55956f6 improvement:
* BackgroundFileTransferablePolicy uses ThreadLocal<Worker> now
* support exception handling in BackgroundFileTransferablePolicy
changes:
* ChecksumComputationTask will only calculate one HashType
* added ChecksumRow.dispose()
fix:
* honor convertValueToString() in SelectDialog
2009-02-10 19:37:32 +00:00
Reinhard Pointner
5674173417 * major refactoring of Checksum* Classes (TableModel, ComputationTask, ComputationService)
* SfvTransferablePolicy create one dedicated ComputationTask executor for each drop
* ComputationTask always computes CRC32, MD5 and SHA-1 

* changed TextFileExportHandler to use Formatter instead of PrintWriter
* renamed *Util to *Utilities
* update to GlazedLists 1.8
2009-02-09 20:56:20 +00:00
Reinhard Pointner
684a7512bc * support for SubtitleSource (www.subtitlesource.org)
refactoring:
* renamed XPathUtil
* use ConcurrentMap in LanguageResolver
2009-02-06 17:57:18 +00:00
Reinhard Pointner
7b61757fd7 * improved auto episode list matching 2009-02-03 20:36:57 +00:00
Reinhard Pointner
9fd13dceae * changed static class Factor to proper enum Direction
* some cleanup
2009-01-25 01:27:40 +00:00
Reinhard Pointner
ac9473ff07 * automatic episode list download and matching in RenamePanel
* added SeriesNameMatcher
* added SeasonEpisodeMatcher
* access Preferences via new Settings class
* adapt TVDotComClient to site changes (episodes  no longer ordered in reverse)
* added ActionPopup (inspired by the eclipse quickfix popup)

refactoring:
* renamed *Util classes to *Utilities
* renamed HyperlinkLabel to LinkButton as it extends JButton now
* refactored FileBotUtilities and FileUtilities
2009-01-25 00:08:57 +00:00
Reinhard Pointner
c217d06eeb * ground up rewrite of the maching algorithm (I lovingly call it n:m multi-pass matching)
* added SeasonEpisodeSimilarityMetric which detects similarity based on known patterns
* moved everything similarity/maching related to net.sourceforge.filebot.similarity

Refactoring:
* refactoring of all the matching-related stuff in rename panel
* remove name2file and file2name maching selection because new maching algorithm works 2-ways from the start and doesn't need that hack
* added console handler to ui logger that will log ui warnings and ui errors to console too
* some refactoring on all SimilarityMetrics
* use Interrupts in analyze tools to abort operation
* refactoring of the rename process, if something goes wrong, we will now revert all already renamed files to their original filenames
* static LINE_SEPARATOR pattern in FileTransferablePolicy
* new maching icon, removed old ones
2009-01-11 21:23:03 +00:00
Reinhard Pointner
54b27e69b7 Changes:
* added TheTVDB support
* added ehcache to libs (now used in TheTVDBClient and TVRageClient)
* Season spinner will remember unlocked value

Refactoring:
* renamed HtmlUtil to WebRequest
* added getDocument() convenience methods to WebRequest
* added lots of static imports (XPathUtil, WebRequest, FileBotUtil, ...)
* TheTVDBClient and TVRageClient will throw SeasonOutOfBoundsException if for illegal season numbers
* XPathUtil will wrap NodeList with NodeListDecorator instead of creating a new ArrayList
* added DOM convenience methods to XPathUtil for performance reasons
* formatting of episode number in EpisodeListClient, EpisodeListRequestProcesser will take care of this
* added initial size to some StringBuilders
2009-01-04 18:28:28 +00:00
Reinhard Pointner
0bed877344 * heavy refactoring of AbstractSearchPanel, EpisodeListPanel and SubtitlePanel and related stuff
* added parameter to method in SubtitleClient interface
* fixed "stutter" issue in ProgressIndicator
* removed loading overlay progress indicator from tabs
* removed animated gifs
2009-01-01 22:27:53 +00:00
Reinhard Pointner
396176c2f6 * visual improvements to FileBotTabComponent
* some refactoring of FileBotUtil and Timer
2008-12-31 11:54:44 +00:00
Reinhard Pointner
d7c08bc4ca * add simple Timer
* refactoring
2008-12-30 16:43:37 +00:00
Reinhard Pointner
1dfa8abcfd * fixed potential EDT deadlock in Tool
* display messages via ui logger
* maybe fix layout bug (component gets very small) for LoadingOverlayPane
2008-12-28 20:04:13 +00:00
Reinhard Pointner
931efbdd06 * misc refactoring / small improvements / stuff i haven't committed for ages 2008-12-27 11:58:39 +00:00
Reinhard Pointner
2fc8bb7195 * heavy refactoring of the analyze panel
* added TreeIterator and FilterIterator
* refactored file transferable policies
* refactored loading overlay
2008-12-27 11:35:53 +00:00
Reinhard Pointner
74b6a8c1a9 * improved DownloadTask and ByteBufferOutputStream
* added unit test for ByteBufferOutputStream
2008-11-22 15:30:33 +00:00
Reinhard Pointner
4bb8ff29d8 * improved DownloadTask
* added ByteBufferOutputStream
2008-11-19 16:22:31 +00:00
Reinhard Pointner
4267899842 * root temporary folder is always lower-case
* filename embedded checksum may be enclosed with () or []
2008-10-29 22:54:16 +00:00
Reinhard Pointner
8cb277252b * renamed method name 2008-10-22 22:35:17 +00:00
Reinhard Pointner
e6df0141c7 * Each application instance will get its own temp folder now
* moved MessageBus registration of each Panels MessageHandler to FileBotWindow
2008-10-22 22:07:02 +00:00
Reinhard Pointner
d0725404ef * use MigLayout in FileTreePanel
* use MigLayout in ValidateNamesDialog
* use MigLayout in SelectDialog
2008-10-21 17:49:08 +00:00
Reinhard Pointner
bc0e354a7a * use MigLayout in SFV Panel
* use MigLayout in List Panel
2008-10-19 18:51:45 +00:00
Reinhard Pointner
792c729d54 * renamed TextFileTransferable to LazyTextFileTransferable
* use MigLayout in AnalyzePanel and ProgressDialog
2008-10-19 12:44:55 +00:00
Reinhard Pointner
a0a43b0e03 * removed Settings singleton, always use Preferences directly
* simplified HistoryPanel by using MigLayout
* added MigLayout jar to libs
* improved decimal format for file count and size in AnalyzePanel
* put application name and version getters into FileBotUtil
2008-10-11 20:42:03 +00:00
Reinhard Pointner
661e079f2b * made all singleton classes final 2008-10-10 19:20:37 +00:00
Reinhard Pointner
e61472c2f4 * moved ResourceManager to net.sourceforge.filebot package
* added "dist" to ignored folders
2008-10-10 18:59:01 +00:00
Reinhard Pointner
aefc84085b * split ExportHandler interface into TransferableExportHandler and FileExportHandler
* added string flavour to all text transfer operations
* text file for dnd transfer will only be created on demand

* removed ImportHandler interface

* moved sfv renderer classes to sfv package
* removed sfv renderer package

* rename-lists now titled "Proposed" and "Current"

* DefaultClipboardHandler will export null values as empty string, not "null"
* refactored OpenSubtitlesHasher

* adapted to the new tvrage episode list xml feed syntax
2008-10-06 19:13:58 +00:00
Reinhard Pointner
0c674849d8 * refactored and simplified transfer api
* use more GlazedLists stuff (EventList, AutoCompleteSupport) and remove obsolete classes (SimpleListModel, TextCompletion)
* don't use SearchResultCache in EpisodeListClient (was only done for better ui interactions)
* removed caching from ResourceManager
* some improvements based on FindBugs warnings
* use args4j for improved argument parsing
* updated ant build script
* more general MessageBus/Handler (use Object as message type instead of string)
* ChecksumComputationService is not a singleton anymore
* TemporaryFolder is always recreated if it is deleted by the user, or another instance shutting down
* Notifications flicker less when one window is removed and the others are layouted
* lots of other refactoring
2008-07-30 22:37:01 +00:00
Reinhard Pointner
a401a51c75 * changed IconProvider to LabelProvider (provides text and icon)
* Changed EpisodeListClient and SubtitleClient from abstract classes to interfaces
* OpenSubtitlesSubtitleClient: remove shutdownhook if not needed anymore
* some refactoring
2008-07-13 17:59:05 +00:00
Reinhard Pointner
c525aa9ea0 * better search->redirect->results handling (subscene, anidb)
* refactoring ...
2008-07-07 23:38:17 +00:00
Reinhard Pointner
ea6a839aa8 * switched back to using List as return value for EpisodeList- and SubtitleClients (lazy XPath evaluation not needed anymore, because we are fast enough anyway) 2008-07-05 11:37:03 +00:00
Reinhard Pointner
d1775cf1b4 * added number-pattern similarity metric
* improved name-matching, normalizing of names
* unit-test for new similarity metrics
* improved PreferencesList
* added EventList->List synchronizer
* included GlazedLists in build
2008-06-29 17:38:57 +00:00
Reinhard Pointner
2b4218ffce * TVRageClient uses the xml feeds now
* some testcases
2008-06-21 23:31:19 +00:00
Reinhard Pointner
adb4d68055 * Lazy XPath evaluation for EpisodeList/Subtitle Clients
* AbstractSearchPanel (used in SubtitlePanel only so far)
* started using GlazedLists
* replaced searchtextfield with customized combobox (will be used for completion in the future)
* renamed FileFormat to FileUtil and move to tuned
* removed ESC shortcut
2008-06-21 19:24:18 +00:00
Reinhard Pointner
21b5dc3fab * added FunctionIterator
* added Preferences Wrapper (Map, List)
2008-06-09 18:36:05 +00:00