mirror of
https://github.com/arsenetar/dupeguru.git
synced 2026-01-25 16:11:39 +00:00
Compare commits
291 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
24c3d7ed00 | ||
|
|
8f7657573d | ||
|
|
c03c7f2be1 | ||
|
|
91a157cb2b | ||
|
|
7ced1e7b9d | ||
|
|
4c0545189e | ||
|
|
21af7b2fcd | ||
|
|
df9af9a796 | ||
|
|
933474400c | ||
|
|
b2c8e779bd | ||
|
|
e570a308bb | ||
|
|
69c01a658b | ||
|
|
0741cbe17b | ||
|
|
ad4ccfe347 | ||
|
|
57375f83f6 | ||
|
|
2d75ffefa7 | ||
|
|
87aa181e4b | ||
|
|
1f359e0391 | ||
|
|
c8af8ccc61 | ||
|
|
2daaaee893 | ||
|
|
03712860b1 | ||
|
|
9e1f79c152 | ||
|
|
edc385cfbc | ||
|
|
0f62917b55 | ||
|
|
515c195780 | ||
|
|
c63df97dd6 | ||
|
|
1f312d8532 | ||
|
|
fa547bb95e | ||
|
|
b500b34ef1 | ||
|
|
23cb71b522 | ||
|
|
720d2fce83 | ||
|
|
97f447fc27 | ||
|
|
6ee56dc55c | ||
|
|
771f22f208 | ||
|
|
80ff5f64f7 | ||
|
|
d0bfa2a6ca | ||
|
|
04a547656e | ||
|
|
657f6743c2 | ||
|
|
42b57431e0 | ||
|
|
3fc83d6245 | ||
|
|
ae16845477 | ||
|
|
49a7043b4d | ||
|
|
878c744c21 | ||
|
|
b4b9393e14 | ||
|
|
bf17eb715a | ||
|
|
cd9f54163b | ||
|
|
ef0a66f794 | ||
|
|
5fb7742cf4 | ||
|
|
22de2d803a | ||
|
|
188aa4bf2e | ||
|
|
05552c160c | ||
|
|
dd70bd6d41 | ||
|
|
70f88ba39c | ||
|
|
496f29b5c3 | ||
|
|
b0818f2bdf | ||
|
|
e0efd660f6 | ||
|
|
4592000464 | ||
|
|
93781a0f35 | ||
|
|
7dfb42fb41 | ||
|
|
a1fc64cd36 | ||
|
|
b12b70b0a1 | ||
|
|
9457a43993 | ||
|
|
ab201bfae0 | ||
|
|
66204ff0b5 | ||
|
|
95f77aef3f | ||
|
|
1e96b6f9c4 | ||
|
|
f813673d6c | ||
|
|
1da325a56b | ||
|
|
d885bf0b18 | ||
|
|
5f7e7fbb13 | ||
|
|
757f8569e6 | ||
|
|
bf86f56371 | ||
|
|
7d0948cd23 | ||
|
|
c4824b0f16 | ||
|
|
ea32af04fb | ||
|
|
e519e41e42 | ||
|
|
c937f2b20f | ||
|
|
fc477ab3b5 | ||
|
|
c53ddcdee1 | ||
|
|
9e668b11b8 | ||
|
|
f53a4c261c | ||
|
|
9a2554d24e | ||
|
|
b9ac135b89 | ||
|
|
235d3ae521 | ||
|
|
a487e83f3c | ||
|
|
4aaff8ffb1 | ||
|
|
302050b2d6 | ||
|
|
1b571f6fd2 | ||
|
|
baa2177439 | ||
|
|
29796e87b7 | ||
|
|
017e483b5a | ||
|
|
7a167208d0 | ||
|
|
475f2c7238 | ||
|
|
9392f818cc | ||
|
|
58347bc36f | ||
|
|
55db21f3e0 | ||
|
|
950cd0c341 | ||
|
|
937ea73c87 | ||
|
|
7bce70c128 | ||
|
|
f9ced08e6d | ||
|
|
4c8ce4b52d | ||
|
|
0d78201548 | ||
|
|
45d4915d88 | ||
|
|
a699a2ef45 | ||
|
|
f6dd1a6a42 | ||
|
|
e6819781f6 | ||
|
|
12467c9493 | ||
|
|
0c7d73854d | ||
|
|
a7eeb7db89 | ||
|
|
989026051c | ||
|
|
56fd94e205 | ||
|
|
c8e00cf0f7 | ||
|
|
0cca745d0d | ||
|
|
80043ccbea | ||
|
|
d62bfac95e | ||
|
|
f636333938 | ||
|
|
01f1e5e46e | ||
|
|
7ce72b1998 | ||
|
|
c4f95a4901 | ||
|
|
5b0d9f311c | ||
|
|
11d8f824e9 | ||
|
|
ceaf2ee4ba | ||
|
|
3b80de869a | ||
|
|
08813ce39c | ||
|
|
478f462ecc | ||
|
|
be53b6de76 | ||
|
|
ca602480d9 | ||
|
|
185cdbb6fa | ||
|
|
2d4903da26 | ||
|
|
98954bd582 | ||
|
|
f862f32fb4 | ||
|
|
804a5a1bbf | ||
|
|
f004535820 | ||
|
|
2abd932709 | ||
|
|
2a78b8ce41 | ||
|
|
2301082307 | ||
|
|
168546608d | ||
|
|
27c1a03496 | ||
|
|
d382cec0fe | ||
|
|
c5b7f6b3d5 | ||
|
|
725f9d51db | ||
|
|
b4815d91c7 | ||
|
|
28e5924633 | ||
|
|
66303a2076 | ||
|
|
d3918724c0 | ||
|
|
fa294ea142 | ||
|
|
565c58b3a9 | ||
|
|
d8970ca6b4 | ||
|
|
1b7068bfe9 | ||
|
|
756190cb8e | ||
|
|
3342b32882 | ||
|
|
561b469e41 | ||
|
|
69fbda5d2c | ||
|
|
63180eaa5b | ||
|
|
25faa458b9 | ||
|
|
760e4085fa | ||
|
|
fbe66d27c9 | ||
|
|
08fd17f208 | ||
|
|
f8af6dbd18 | ||
|
|
54d6fb080c | ||
|
|
8409a01bcc | ||
|
|
1e136d2703 | ||
|
|
25afe54be3 | ||
|
|
d9ae967439 | ||
|
|
9226a4fb7c | ||
|
|
fc5a0d914b | ||
|
|
fca66d5108 | ||
|
|
0571151c5f | ||
|
|
7e95404903 | ||
|
|
eb83b830df | ||
|
|
0b1bf79796 | ||
|
|
6ab074decb | ||
|
|
b7462f1d17 | ||
|
|
a2a8397e78 | ||
|
|
5c0d9411e5 | ||
|
|
cd2afeb32b | ||
|
|
b2fd022d07 | ||
|
|
878046b579 | ||
|
|
428a400848 | ||
|
|
8aa5826080 | ||
|
|
6b5d1e9894 | ||
|
|
07a6a37502 | ||
|
|
dd0af2fe15 | ||
|
|
df6d7141f1 | ||
|
|
81d4cdde33 | ||
|
|
88a613268d | ||
|
|
b7aa4a1ad8 | ||
|
|
6c75d3afdf | ||
|
|
771f26ba0f | ||
|
|
30676fd20b | ||
|
|
607433d918 | ||
|
|
29db39f144 | ||
|
|
49e49d5e1a | ||
|
|
b9b84c9b7d | ||
|
|
d80a56db78 | ||
|
|
036026d64a | ||
|
|
13ef2fae90 | ||
|
|
54731e4ba0 | ||
|
|
aa341bc5ed | ||
|
|
4426f924e2 | ||
|
|
a6deb04049 | ||
|
|
806d6be36c | ||
|
|
152a8772da | ||
|
|
5885ead5ab | ||
|
|
6fc5ce4bad | ||
|
|
a4ae503bd4 | ||
|
|
020746be10 | ||
|
|
436a8e686d | ||
|
|
b6d66f6d0b | ||
|
|
5284decd67 | ||
|
|
73d22de752 | ||
|
|
26e496a051 | ||
|
|
75f0ed14aa | ||
|
|
27cecb0dbc | ||
|
|
094d6702ba | ||
|
|
f8750dd392 | ||
|
|
76b873a504 | ||
|
|
dd031ffa1d | ||
|
|
a0991745e2 | ||
|
|
3553d1a458 | ||
|
|
1b855ad64b | ||
|
|
9a7a20472d | ||
|
|
9fac97c147 | ||
|
|
11aa2c147c | ||
|
|
2c260742f6 | ||
|
|
b8ac192d2a | ||
|
|
ae21ff988a | ||
|
|
8102c89802 | ||
|
|
48e2acf0a2 | ||
|
|
01731a8277 | ||
|
|
abe25d6967 | ||
|
|
669e4b390b | ||
|
|
1fafe04f19 | ||
|
|
43c4dcb267 | ||
|
|
b44e52689f | ||
|
|
f0441db88a | ||
|
|
0da1947902 | ||
|
|
3b4ea50119 | ||
|
|
e21627bbde | ||
|
|
70689ce057 | ||
|
|
60462698ac | ||
|
|
f2164924f7 | ||
|
|
f730f4f55a | ||
|
|
841b249b67 | ||
|
|
0f12103616 | ||
|
|
edac54c5e6 | ||
|
|
818bc908a0 | ||
|
|
26e81a8cbf | ||
|
|
664803c2ca | ||
|
|
5a26f1c2ae | ||
|
|
880f0787ce | ||
|
|
549e3e1f3b | ||
|
|
cf606a494c | ||
|
|
90f9493ccc | ||
|
|
3ec2a3ef81 | ||
|
|
b65c9b8c9a | ||
|
|
2dc588e0fd | ||
|
|
9c30486f14 | ||
|
|
518228a368 | ||
|
|
ff228035a3 | ||
|
|
eeb7f84601 | ||
|
|
ee24234156 | ||
|
|
d462fd44c4 | ||
|
|
22fedc4ee4 | ||
|
|
548bd84a4b | ||
|
|
d66afca753 | ||
|
|
7222ec3f02 | ||
|
|
f2d77bb60b | ||
|
|
4b9cba4d7f | ||
|
|
47c9d39150 | ||
|
|
14aba2b507 | ||
|
|
bb2faa27f9 | ||
|
|
e10e9a6976 | ||
|
|
73ba4954c1 | ||
|
|
2c8c077b82 | ||
|
|
f7a3e78870 | ||
|
|
38638a90f1 | ||
|
|
11cff312f5 | ||
|
|
17656d8e7c | ||
|
|
42cb788d35 | ||
|
|
327fe0b660 | ||
|
|
2cad94941b | ||
|
|
d93b5d65b9 | ||
|
|
9bf9dd330a | ||
|
|
4449831ace | ||
|
|
303cf52d6a | ||
|
|
21b1a63687 | ||
|
|
b1dce31542 | ||
|
|
a64ddcb804 | ||
|
|
905c194cdd | ||
|
|
e61c698b03 |
20
.hgignore
20
.hgignore
@@ -4,10 +4,9 @@ syntax: glob
|
||||
run.py
|
||||
*.pyc
|
||||
*.so
|
||||
*.mode1v3
|
||||
*.pbxuser
|
||||
*.tm_build_errors
|
||||
*.mo
|
||||
*.pyd
|
||||
.tm_*
|
||||
*.xcodeproj/xcuserdata
|
||||
*.xcodeproj/project.xcworkspace/xcuserdata
|
||||
conf.json
|
||||
@@ -15,13 +14,24 @@ build
|
||||
dist
|
||||
install
|
||||
installer_tmp-cache
|
||||
cocoa/autogen
|
||||
cocoa/*/Info.plist
|
||||
cocoa/*/build
|
||||
cocoa/*/*.app
|
||||
cocoa/*/dg_cocoa.plugin
|
||||
cocoa/*/fr.lproj/*.xib
|
||||
cocoa/*/de.lproj/*.xib
|
||||
cocoa/*/zh_CN.lproj/*.xib
|
||||
cocoa/*/cs.lproj/*.xib
|
||||
cocoa/*/it.lproj/*.xib
|
||||
cs.lproj
|
||||
de.lproj
|
||||
fr.lproj
|
||||
it.lproj
|
||||
hy.lproj
|
||||
ru.lproj
|
||||
uk.lproj
|
||||
zh_CN.lproj
|
||||
qt/base/*_rc.py
|
||||
qt/lang/fr.qm
|
||||
qt/lang/en.qm
|
||||
help/*/conf.py
|
||||
help/*/changelog.rst
|
||||
22
.hgtags
22
.hgtags
@@ -50,3 +50,25 @@ d274bcb98f2d02b86470a04cd62e718eff33b74f pe2.1.0
|
||||
97893f37d7d0767b5aedf1b4b40de57ee36d426b se3.1.0
|
||||
e44d5127ed605daa7a17a01eee65d0a157de20c0 pe2.2.0
|
||||
ecf9aaa568340e3d03e8854b7556edd5a3285107 pe2.2.1
|
||||
db1f325c907ffa9808a49cb7bc2886b9fca7aee2 se3.1.1
|
||||
e62183e907d6177cf0bac354e31afa9546c199e6 se3.1.2
|
||||
28ba95706dc54ba32b1c0cf4e1e6350515d19ba3 me6.0.2
|
||||
925847384dcef62a5c3518fc9e5ce42feab2b093 pe2.2.2
|
||||
383b14d6e8555ed2c8d5552259bc7ce600dfb1d0 before-leopard-drop
|
||||
a2f7b7302e178f08725a6404ddc28464409510b1 se3.2.0
|
||||
5a5134a4fa9bb7ca80ae3e32010030f5bd7ba434 me6.1.0
|
||||
0fd77be57ff716d5c93232e829dc02acec036d7c se3.2.1
|
||||
3dd08060135b0b9cef70b6f5a81f191ea339c8d5 me6.1.1
|
||||
4e6cbef6bcdfcc0e56ff9690fbfe1cac1f4b1b09 pe2.3.0
|
||||
9ea9af1b886cd1adc4f42fd2276cc2b38376eab0 se3.3.0
|
||||
6e3379be6821bb36d7f0877a17dd6c07aa037b0a se3.3.1
|
||||
015ba7e2c10d09afb944f387c2a9c97f7eff7571 me6.2.0
|
||||
8178bda48324461a17118c98634241952c074f29 pe2.4.0
|
||||
2a96f2fb3ddb6f1e0ae87951586733fc3e4a28a0 se3.3.2
|
||||
6a08c1205dfe5e537e5c2dc99d05e05d1d3928f6 me6.2.1
|
||||
a619f313712e2923160b8f90d8250ee0e184c7b9 pe2.4.1
|
||||
fad463ae749b7189dce92f1e42a57ac4ee03987d se3.3.3
|
||||
236cf9b690a144392e7e86e7c9749fc834a8b271 me6.3.0
|
||||
90318f1303858d9d01065d92d78d98b888b38ea0 se3.4.0
|
||||
93ed33410df2d2f21229a77ae49c83ece2c50a55 pe2.5.0
|
||||
c153aef25e5c9911f2197d13899591c50cf38ffc se3.4.1
|
||||
|
||||
2
LICENSE
2
LICENSE
@@ -1,4 +1,4 @@
|
||||
Copyright 2011 Hardcoded Software Inc. (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software Inc. (http://www.hardcoded.net)
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
||||
|
||||
32
README
32
README
@@ -26,28 +26,23 @@ Before being able to build dupeGuru, a few dependencies have to be installed:
|
||||
General dependencies
|
||||
--------------------
|
||||
|
||||
- Python 3.1 (3.2 on Mac OS X) (http://www.python.org)
|
||||
- Python 3.2 (http://www.python.org)
|
||||
- Send2Trash3k (http://hg.hardcoded.net/send2trash)
|
||||
- hsaudiotag3k 1.1.0 (for ME) (http://hg.hardcoded.net/hsaudiotag)
|
||||
- jobprogress 1.0.1 (http://hg.hardcoded.net/jobprogress)
|
||||
- Sphinx 1.0.6 (http://sphinx.pocoo.org/)
|
||||
- jobprogress 1.0.3 (http://hg.hardcoded.net/jobprogress)
|
||||
- Sphinx 1.1 (http://sphinx.pocoo.org/)
|
||||
- polib 0.7.0 (http://bitbucket.org/izi/polib)
|
||||
- pytest 2.0.0, to run unit tests. (http://pytest.org/)
|
||||
|
||||
Note: Sphinx doesn't officially support Python 3.x yet, but it doesn't matter because it is invoked
|
||||
by the build system through command line, so you can build dupeGuru even if Sphinx is installed in
|
||||
your Python 2.x install.
|
||||
|
||||
OS X prerequisites
|
||||
------------------
|
||||
|
||||
- XCode 3.1 (http://developer.apple.com/TOOLS/xcode/)
|
||||
- XCode 4.1
|
||||
- Sparkle (http://sparkle.andymatuschak.org/)
|
||||
- PyObjC 2.3 (http://pyobjc.sourceforge.net/)
|
||||
- pluginbuilder 1.0.1 (http://bitbucket.org/hsoft/pluginbuilder)
|
||||
- objp 1.1.0 (http://bitbucket.org/hsoft/objp)
|
||||
- pluginbuilder 1.1.0 (http://bitbucket.org/hsoft/pluginbuilder)
|
||||
- appscript 1.0.0 for ME and PE (http://appscript.sourceforge.net/)
|
||||
|
||||
dupeGuru can be built with XCode 4, but there's gotchas, see below.
|
||||
|
||||
Windows prerequisites
|
||||
---------------------
|
||||
|
||||
@@ -69,8 +64,7 @@ There's an easy way to install the majority of the prerequisites above, and it's
|
||||
pip install -r requirements-[osx|win].txt
|
||||
|
||||
([osx|win] depends, of course, on your platform. On other platforms, just use requirements.txt).
|
||||
Because Sphinx doesn't support Python 3 yet, it's not in the requirements file and you'll have to
|
||||
install it manually. You might have to compile PyObjC manually too (see gotchas below). Sparkle and
|
||||
You might have to compile PyObjC manually (see gotchas below). Sparkle and
|
||||
Advanced Installer, having nothing to do with Python, are also manual installs.
|
||||
|
||||
PyQt isn't in the requirements file either (there's no package uploaded on PyPI) and you also have
|
||||
@@ -95,18 +89,10 @@ PyObjC's website is badly outdated. Also, as far as I can tell, the package inst
|
||||
`easy_install` has good chances of not working. Your best bet is to download the latest tagged
|
||||
version from the repository and compile it from source.
|
||||
|
||||
Also, on OS X, don't try to use the built-in python 2.x to install Sphinx on (the only pre-requisite
|
||||
that doesn't run on python 3 yet). There's some weird error popping up when dupeGuru tries to build
|
||||
its help file. Install your own framework version of python 2.7, and then install Sphinx on that.
|
||||
When Sphinx supports Python 3, things will be easier because you'll be able to install sphinx on the
|
||||
same Python version you build dupeGuru with.
|
||||
|
||||
Another one on OS X: I wouldn't use macports/fink/whatever. Whenever I tried using those, I always
|
||||
ended up with problems.
|
||||
|
||||
dupeGuru can be built with XCode 4 (until support for 10.5 is dropped, xcode 3 and xcode 4 projects
|
||||
have to be maintained in parallel though). You build it through `build.py`, like you'd normally do
|
||||
but for dupeGuru PE, make sure that you installed the latest version of macholib because there was a
|
||||
On OSX Lion, for dupeGuru PE, make sure that you installed the latest version of macholib because there was a
|
||||
10.7 related bug that was fixed recently. Right now, the fix hasn't even been released yet so you
|
||||
have to install directly from the repo ( http://bitbucket.org/ronaldoussoren/macholib ). The fix
|
||||
in question is at http://bitbucket.org/ronaldoussoren/macholib/changeset/4ab0de0f5b60
|
||||
|
||||
209
build.py
209
build.py
@@ -1,23 +1,26 @@
|
||||
# Created By: Virgil Dupras
|
||||
# Created On: 2009-12-30
|
||||
# Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
# Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
#
|
||||
# This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
# which should be included with this package. The terms are also available at
|
||||
# http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
import sys
|
||||
import os
|
||||
import os.path as op
|
||||
from optparse import OptionParser
|
||||
import shutil
|
||||
import json
|
||||
import importlib
|
||||
|
||||
from setuptools import setup
|
||||
from distutils.extension import Extension
|
||||
from setuptools import setup, Extension
|
||||
|
||||
from hscommon import sphinxgen
|
||||
from hscommon.build import (add_to_pythonpath, print_and_do, copy_packages, filereplace,
|
||||
get_module_version, build_all_cocoa_locs, build_all_qt_locs, get_xcode_version)
|
||||
get_module_version, build_all_cocoa_locs, move_all, copy_sysconfig_files_for_embed, copy_all,
|
||||
move)
|
||||
from hscommon import loc
|
||||
|
||||
def parse_args():
|
||||
usage = "usage: %prog [options]"
|
||||
@@ -28,44 +31,48 @@ def parse_args():
|
||||
help="Build only the help file")
|
||||
parser.add_option('--loc', action='store_true', dest='loc',
|
||||
help="Build only localization")
|
||||
parser.add_option('--cocoamod', action='store_true', dest='cocoamod',
|
||||
help="Build only Cocoa modules")
|
||||
parser.add_option('--updatepot', action='store_true', dest='updatepot',
|
||||
help="Generate .pot files from source code.")
|
||||
parser.add_option('--mergepot', action='store_true', dest='mergepot',
|
||||
help="Update all .po files based on .pot files.")
|
||||
(options, args) = parser.parse_args()
|
||||
return options
|
||||
|
||||
def build_cocoa(edition, dev):
|
||||
from pluginbuilder import build_plugin
|
||||
print("Building dg_cocoa.plugin")
|
||||
if not dev:
|
||||
specific_packages = {
|
||||
'se': ['core_se'],
|
||||
'me': ['core_me'],
|
||||
'pe': ['core_pe'],
|
||||
}[edition]
|
||||
copy_packages(['core', 'hscommon'] + specific_packages, 'build')
|
||||
build_cocoa_proxy_module()
|
||||
build_cocoa_bridging_interfaces(edition)
|
||||
print("Building the cocoa layer")
|
||||
from pluginbuilder import copy_embeddable_python_dylib, get_python_header_folder, collect_dependencies
|
||||
copy_embeddable_python_dylib('build')
|
||||
if not op.exists('build/PythonHeaders'):
|
||||
os.symlink(get_python_header_folder(), 'build/PythonHeaders')
|
||||
if not op.exists('build/py'):
|
||||
os.mkdir('build/py')
|
||||
cocoa_project_path = 'cocoa/{0}'.format(edition)
|
||||
shutil.copy(op.join(cocoa_project_path, 'dg_cocoa.py'), 'build')
|
||||
os.chdir('build')
|
||||
# We have to exclude PyQt4 specifically because it's conditionally imported in hscommon.trans
|
||||
build_plugin('dg_cocoa.py', excludes=['PyQt4'], alias=dev)
|
||||
os.chdir('..')
|
||||
pluginpath = op.join(cocoa_project_path, 'dg_cocoa.plugin')
|
||||
if op.exists(pluginpath):
|
||||
shutil.rmtree(pluginpath)
|
||||
shutil.move('build/dist/dg_cocoa.plugin', pluginpath)
|
||||
specific_packages = {
|
||||
'se': ['core_se'],
|
||||
'me': ['core_me'],
|
||||
'pe': ['core_pe'],
|
||||
}[edition]
|
||||
tocopy = ['core', 'hscommon', 'cocoa/inter', 'cocoalib/cocoa'] + specific_packages
|
||||
copy_packages(tocopy, 'build')
|
||||
sys.path.insert(0, 'build')
|
||||
collect_dependencies('build/dg_cocoa.py', 'build/py', excludes=['PyQt4'])
|
||||
del sys.path[0]
|
||||
if dev:
|
||||
# In alias mode, the tweakings we do to the pythonpath aren't counted in. We have to
|
||||
# manually put a .pth in the plugin
|
||||
pthpath = op.join(pluginpath, 'Contents/Resources/dev.pth')
|
||||
open(pthpath, 'w').write(op.abspath('.'))
|
||||
copy_packages(tocopy, 'build/py', create_links=True)
|
||||
# Views are not referenced by python code, so they're not found by the collector.
|
||||
copy_all('build/inter/*.so', 'build/py/inter')
|
||||
copy_sysconfig_files_for_embed('build/py')
|
||||
os.chdir(cocoa_project_path)
|
||||
print('Generating Info.plist')
|
||||
app_version = get_module_version('core_{}'.format(edition))
|
||||
filereplace('InfoTemplate.plist', 'Info.plist', version=app_version)
|
||||
print("Building the XCode project")
|
||||
args = []
|
||||
if get_xcode_version().startswith('4'):
|
||||
args.append('-project dupeguru_xcode4.xcodeproj')
|
||||
else:
|
||||
args.append('-project dupeguru.xcodeproj')
|
||||
args = ['-project dupeguru.xcodeproj']
|
||||
if dev:
|
||||
args.append('-configuration dev')
|
||||
else:
|
||||
@@ -74,12 +81,11 @@ def build_cocoa(edition, dev):
|
||||
os.system('xcodebuild {0}'.format(args))
|
||||
os.chdir('../..')
|
||||
print("Creating the run.py file")
|
||||
subfolder = 'dev' if dev else 'release'
|
||||
app_path = {
|
||||
'se': 'cocoa/se/build/{0}/dupeGuru.app',
|
||||
'me': 'cocoa/me/build/{0}/dupeGuru\\ ME.app',
|
||||
'pe': 'cocoa/pe/build/{0}/dupeGuru\\ PE.app',
|
||||
}[edition].format(subfolder)
|
||||
'se': 'cocoa/se/dupeGuru.app',
|
||||
'me': 'cocoa/me/dupeGuru\\ ME.app',
|
||||
'pe': 'cocoa/pe/dupeGuru\\ PE.app',
|
||||
}[edition]
|
||||
tmpl = open('run_template_cocoa.py', 'rt').read()
|
||||
run_contents = tmpl.replace('{{app_path}}', app_path)
|
||||
open('run.py', 'wt').write(run_contents)
|
||||
@@ -101,28 +107,120 @@ def build_help(edition):
|
||||
tixurl = "https://hardcoded.lighthouseapp.com/projects/31699-dupeguru/tickets/{0}"
|
||||
appname = {'se': 'dupeGuru', 'me': 'dupeGuru Music Edition', 'pe': 'dupeGuru Picture Edition'}[edition]
|
||||
homepage = 'http://www.hardcoded.net/dupeguru{}/'.format('_' + edition if edition != 'se' else '')
|
||||
confrepl = {'edition': edition, 'appname': appname, 'homepage': homepage}
|
||||
sphinxgen.gen(help_basepath, help_destpath, changelog_path, tixurl, confrepl)
|
||||
confrepl = {'edition': edition, 'appname': appname, 'homepage': homepage, 'language': 'en'}
|
||||
changelogtmpl = op.join(current_path, 'help', 'changelog.tmpl')
|
||||
conftmpl = op.join(current_path, 'help', 'conf.tmpl')
|
||||
sphinxgen.gen(help_basepath, help_destpath, changelog_path, tixurl, confrepl, conftmpl, changelogtmpl)
|
||||
|
||||
def build_localizations(ui, edition):
|
||||
print("Building localizations")
|
||||
loc.compile_all_po('locale')
|
||||
loc.compile_all_po(op.join('hscommon', 'locale'))
|
||||
loc.merge_locale_dir(op.join('hscommon', 'locale'), 'locale')
|
||||
if ui == 'cocoa':
|
||||
print("Creating lproj folders based on .po files")
|
||||
for lang in loc.get_langs('locale'):
|
||||
if lang == 'en':
|
||||
continue
|
||||
pofile = op.join('locale', lang, 'LC_MESSAGES', 'ui.po')
|
||||
for edition_folder in ['base', 'se', 'me', 'pe']:
|
||||
enlproj = op.join('cocoa', edition_folder, 'en.lproj')
|
||||
dest_lproj = op.join('cocoa', edition_folder, lang + '.lproj')
|
||||
loc.po2allxibstrings(pofile, enlproj, dest_lproj)
|
||||
if edition_folder == 'base':
|
||||
loc.po2strings(pofile, op.join(enlproj, 'Localizable.strings'), op.join(dest_lproj, 'Localizable.strings'))
|
||||
pofile = op.join('cocoalib', 'locale', lang, 'LC_MESSAGES', 'cocoalib.po')
|
||||
loc.po2allxibstrings(pofile, op.join('cocoalib', 'en.lproj'), op.join('cocoalib', lang + '.lproj'))
|
||||
build_all_cocoa_locs('cocoalib')
|
||||
build_all_cocoa_locs(op.join('cocoa', 'base'))
|
||||
build_all_cocoa_locs(op.join('cocoa', edition))
|
||||
elif ui == 'qt':
|
||||
print("Building .ts files")
|
||||
build_all_qt_locs(op.join('qt', 'lang'), extradirs=[op.join('qtlib', 'lang')])
|
||||
loc.compile_all_po(op.join('qtlib', 'locale'))
|
||||
loc.merge_locale_dir(op.join('qtlib', 'locale'), 'locale')
|
||||
if op.exists(op.join('build', 'locale')):
|
||||
shutil.rmtree(op.join('build', 'locale'))
|
||||
shutil.copytree('locale', op.join('build', 'locale'), ignore=shutil.ignore_patterns('*.po', '*.pot'))
|
||||
|
||||
def build_updatepot():
|
||||
print("Building .pot files from source files")
|
||||
print("Building core.pot")
|
||||
all_cores = ['core', 'core_se', 'core_me', 'core_pe']
|
||||
loc.generate_pot(all_cores, op.join('locale', 'core.pot'), ['tr'])
|
||||
print("Building columns.pot")
|
||||
loc.generate_pot(all_cores, op.join('locale', 'columns.pot'), ['coltr'])
|
||||
print("Building ui.pot")
|
||||
ui_packages = ['qt', op.join('cocoa', 'inter')]
|
||||
loc.generate_pot(ui_packages, op.join('locale', 'ui.pot'), ['tr'])
|
||||
print("Building hscommon.pot")
|
||||
loc.generate_pot(['hscommon'], op.join('hscommon', 'locale', 'hscommon.pot'), ['tr'])
|
||||
print("Building qtlib.pot")
|
||||
loc.generate_pot(['qtlib'], op.join('qtlib', 'locale', 'qtlib.pot'), ['tr'])
|
||||
print("Building cocoalib.pot")
|
||||
loc.allstrings2pot(op.join('cocoalib', 'en.lproj'), op.join('cocoalib', 'locale', 'cocoalib.pot'))
|
||||
print("Enhancing ui.pot with Cocoa's strings files")
|
||||
loc.allstrings2pot(op.join('cocoa', 'base', 'en.lproj'), op.join('locale', 'ui.pot'),
|
||||
excludes={'core', 'message', 'columns'})
|
||||
loc.allstrings2pot(op.join('cocoa', 'se', 'en.lproj'), op.join('locale', 'ui.pot'))
|
||||
loc.allstrings2pot(op.join('cocoa', 'me', 'en.lproj'), op.join('locale', 'ui.pot'))
|
||||
loc.allstrings2pot(op.join('cocoa', 'pe', 'en.lproj'), op.join('locale', 'ui.pot'))
|
||||
|
||||
def build_mergepot():
|
||||
print("Updating .po files using .pot files")
|
||||
loc.merge_pots_into_pos('locale')
|
||||
loc.merge_pots_into_pos(op.join('hscommon', 'locale'))
|
||||
loc.merge_pots_into_pos(op.join('qtlib', 'locale'))
|
||||
loc.merge_pots_into_pos(op.join('cocoalib', 'locale'))
|
||||
|
||||
def build_cocoa_ext(extname, dest, source_files, extra_frameworks=(), extra_includes=()):
|
||||
extra_link_args = ["-framework", "CoreFoundation", "-framework", "Foundation"]
|
||||
for extra in extra_frameworks:
|
||||
extra_link_args += ['-framework', extra]
|
||||
ext = Extension(extname, source_files, extra_link_args=extra_link_args, include_dirs=extra_includes)
|
||||
setup(script_args=['build_ext', '--inplace'], ext_modules=[ext])
|
||||
fn = extname + '.so'
|
||||
assert op.exists(fn)
|
||||
move(fn, op.join(dest, fn))
|
||||
|
||||
def build_cocoa_proxy_module():
|
||||
print("Building Cocoa Proxy")
|
||||
import objp.p2o
|
||||
objp.p2o.generate_python_proxy_code('cocoalib/cocoa/CocoaProxy.h', 'build/CocoaProxy.m')
|
||||
build_cocoa_ext("CocoaProxy", 'cocoalib/cocoa',
|
||||
['cocoalib/cocoa/CocoaProxy.m', 'build/CocoaProxy.m', 'build/ObjP.m', 'cocoalib/HSErrorReportWindow.m'],
|
||||
['AppKit', 'CoreServices'],
|
||||
['cocoalib'])
|
||||
|
||||
def build_cocoa_bridging_interfaces(edition):
|
||||
print("Building Cocoa Bridging Interfaces")
|
||||
import objp.o2p
|
||||
import objp.p2o
|
||||
add_to_pythonpath('cocoa')
|
||||
add_to_pythonpath('cocoalib')
|
||||
from cocoa.inter import (PyGUIObject, GUIObjectView, PyColumns, ColumnsView, PyOutline,
|
||||
OutlineView, PySelectableList, SelectableListView, PyTable, TableView, PyFairware)
|
||||
from inter.details_panel import PyDetailsPanel, DetailsPanelView
|
||||
from inter.directory_outline import PyDirectoryOutline, DirectoryOutlineView
|
||||
from inter.prioritize_dialog import PyPrioritizeDialog, PrioritizeDialogView
|
||||
from inter.prioritize_list import PyPrioritizeList, PrioritizeListView
|
||||
from inter.problem_dialog import PyProblemDialog
|
||||
from inter.ignore_list_dialog import PyIgnoreListDialog, IgnoreListDialogView
|
||||
from inter.result_table import PyResultTable, ResultTableView
|
||||
from inter.stats_label import PyStatsLabel, StatsLabelView
|
||||
from inter.app import PyDupeGuruBase, DupeGuruView
|
||||
appmod = importlib.import_module('inter.app_{}'.format(edition))
|
||||
allclasses = [PyGUIObject, PyColumns, PyOutline, PySelectableList, PyTable, PyFairware,
|
||||
PyDetailsPanel, PyDirectoryOutline, PyPrioritizeDialog, PyPrioritizeList, PyProblemDialog,
|
||||
PyIgnoreListDialog, PyResultTable, PyStatsLabel, PyDupeGuruBase, appmod.PyDupeGuru]
|
||||
for class_ in allclasses:
|
||||
objp.o2p.generate_objc_code(class_, 'cocoa/autogen', inherit=True)
|
||||
allclasses = [GUIObjectView, ColumnsView, OutlineView, SelectableListView, TableView,
|
||||
DetailsPanelView, DirectoryOutlineView, PrioritizeDialogView, PrioritizeListView,
|
||||
IgnoreListDialogView, ResultTableView, StatsLabelView, DupeGuruView]
|
||||
clsspecs = [objp.o2p.spec_from_python_class(class_) for class_ in allclasses]
|
||||
objp.p2o.generate_python_proxy_code_from_clsspec(clsspecs, 'build/CocoaViews.m')
|
||||
build_cocoa_ext('CocoaViews', 'cocoa/inter', ['build/CocoaViews.m', 'build/ObjP.m'])
|
||||
|
||||
def build_pe_modules(ui):
|
||||
def move(src, dst):
|
||||
if not op.exists(src):
|
||||
return
|
||||
if op.exists(dst):
|
||||
os.remove(dst)
|
||||
print('Moving %s --> %s' % (src, dst))
|
||||
os.rename(src, dst)
|
||||
|
||||
print("Building PE Modules")
|
||||
exts = [
|
||||
Extension("_block", [op.join('core_pe', 'modules', 'block.c'), op.join('core_pe', 'modules', 'common.c')]),
|
||||
@@ -142,13 +240,9 @@ def build_pe_modules(ui):
|
||||
script_args = ['build_ext', '--inplace'],
|
||||
ext_modules = exts,
|
||||
)
|
||||
move('_block.so', op.join('core_pe', '_block.so'))
|
||||
move('_block.pyd', op.join('core_pe', '_block.pyd'))
|
||||
move('_block_osx.so', op.join('core_pe', '_block_osx.so'))
|
||||
move('_cache.so', op.join('core_pe', '_cache.so'))
|
||||
move('_cache.pyd', op.join('core_pe', '_cache.pyd'))
|
||||
move('_block_qt.so', op.join('qt', 'pe', '_block_qt.so'))
|
||||
move('_block_qt.pyd', op.join('qt', 'pe', '_block_qt.pyd'))
|
||||
move_all('_block_qt*', op.join('qt', 'pe'))
|
||||
move_all('_block*', 'core_pe')
|
||||
move_all('_cache*', 'core_pe')
|
||||
|
||||
def build_normal(edition, ui, dev):
|
||||
print("Building dupeGuru {0} with UI {1}".format(edition.upper(), ui))
|
||||
@@ -180,6 +274,13 @@ def main():
|
||||
build_help(edition)
|
||||
elif options.loc:
|
||||
build_localizations(ui, edition)
|
||||
elif options.updatepot:
|
||||
build_updatepot()
|
||||
elif options.mergepot:
|
||||
build_mergepot()
|
||||
elif options.cocoamod:
|
||||
build_cocoa_proxy_module()
|
||||
build_cocoa_bridging_interfaces(edition)
|
||||
else:
|
||||
build_normal(edition, ui, dev)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -11,26 +11,28 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "ResultWindow.h"
|
||||
#import "DetailsPanel.h"
|
||||
#import "DirectoryPanel.h"
|
||||
#import "IgnoreListDialog.h"
|
||||
#import "HSAboutBox.h"
|
||||
#import "HSRecentFiles.h"
|
||||
|
||||
@interface AppDelegateBase : NSObject
|
||||
{
|
||||
IBOutlet PyDupeGuruBase *py;
|
||||
IBOutlet NSMenu *recentResultsMenu;
|
||||
IBOutlet NSMenu *actionsMenu;
|
||||
IBOutlet NSMenu *columnsMenu;
|
||||
|
||||
PyDupeGuru *model;
|
||||
ResultWindowBase *_resultWindow;
|
||||
DirectoryPanel *_directoryPanel;
|
||||
DetailsPanel *_detailsPanel;
|
||||
IgnoreListDialog *_ignoreListDialog;
|
||||
NSWindowController *_preferencesPanel;
|
||||
HSAboutBox *_aboutBox;
|
||||
HSRecentFiles *_recentResults;
|
||||
}
|
||||
|
||||
/* Virtual */
|
||||
- (PyDupeGuruBase *)py;
|
||||
- (PyDupeGuru *)model;
|
||||
- (ResultWindowBase *)createResultWindow;
|
||||
- (DirectoryPanel *)createDirectoryPanel;
|
||||
- (DetailsPanel *)createDetailsPanel;
|
||||
@@ -43,6 +45,13 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
- (HSRecentFiles *)recentResults;
|
||||
- (NSMenu *)columnsMenu;
|
||||
|
||||
/* Delegate */
|
||||
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification;
|
||||
- (void)applicationWillBecomeActive:(NSNotification *)aNotification;
|
||||
- (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender;
|
||||
- (void)applicationWillTerminate:(NSNotification *)aNotification;
|
||||
- (void)recentFileClicked:(NSString *)path;
|
||||
|
||||
/* Actions */
|
||||
- (IBAction)loadResults:(id)sender;
|
||||
- (IBAction)openWebsite:(id)sender;
|
||||
@@ -51,5 +60,12 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
- (IBAction)showDirectoryWindow:(id)sender;
|
||||
- (IBAction)showPreferencesPanel:(id)sender;
|
||||
- (IBAction)showResultWindow:(id)sender;
|
||||
- (IBAction)showIgnoreList:(id)sender;
|
||||
- (IBAction)startScanning:(id)sender;
|
||||
|
||||
/* model --> view */
|
||||
- (void)showMessage:(NSString *)msg;
|
||||
- (void)setupAsRegistered;
|
||||
- (void)showFairwareNagWithPrompt:(NSString *)prompt;
|
||||
- (void)showDemoNagWithPrompt:(NSString *)prompt;
|
||||
@end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -9,15 +9,23 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "AppDelegate.h"
|
||||
#import "ProgressController.h"
|
||||
#import "HSFairwareReminder.h"
|
||||
#import "ExtraFairwareReminder.h"
|
||||
#import "Utils.h"
|
||||
#import "Consts.h"
|
||||
#import "Dialogs.h"
|
||||
#import "ValueTransformers.h"
|
||||
#import <Sparkle/SUUpdater.h>
|
||||
|
||||
@implementation AppDelegateBase
|
||||
+ (void)initialize
|
||||
{
|
||||
HSVTAdd *vt = [[[HSVTAdd alloc] initWithValue:4] autorelease];
|
||||
[NSValueTransformer setValueTransformer:vt forName:@"vtRowHeightOffset"];
|
||||
}
|
||||
|
||||
- (void)awakeFromNib
|
||||
{
|
||||
model = [[PyDupeGuru alloc] init];
|
||||
[model bindCallback:createCallback(@"DupeGuruView", self)];
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
/* Because the pref pane is lazily loaded, we have to manually do the update check if the
|
||||
preference is set.
|
||||
@@ -29,17 +37,19 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[_recentResults setDelegate:self];
|
||||
_resultWindow = [self createResultWindow];
|
||||
_directoryPanel = [self createDirectoryPanel];
|
||||
_detailsPanel = nil; // Lazily loaded
|
||||
_detailsPanel = [self createDetailsPanel];
|
||||
_ignoreListDialog = [[IgnoreListDialog alloc] initWithPyRef:[model ignoreListDialog]];
|
||||
_aboutBox = nil; // Lazily loaded
|
||||
_preferencesPanel = nil; // Lazily loaded
|
||||
[[[self directoryPanel] window] makeKeyAndOrderFront:self];
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self
|
||||
selector:@selector(showExtraFairwareReminder:) name:ShowExtraFairwareReminder object:nil];
|
||||
}
|
||||
|
||||
/* Virtual */
|
||||
|
||||
- (PyDupeGuruBase *)py { return py; }
|
||||
- (PyDupeGuru *)model
|
||||
{
|
||||
return model;
|
||||
}
|
||||
|
||||
- (ResultWindowBase *)createResultWindow
|
||||
{
|
||||
@@ -53,7 +63,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
- (DetailsPanel *)createDetailsPanel
|
||||
{
|
||||
return [[DetailsPanel alloc] initWithPy:py];
|
||||
return [[DetailsPanel alloc] initWithPyRef:[model detailsPanel]];
|
||||
}
|
||||
|
||||
- (NSString *)homepageURL
|
||||
@@ -74,8 +84,6 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
- (DetailsPanel *)detailsPanel
|
||||
{
|
||||
if (!_detailsPanel)
|
||||
_detailsPanel = [self createDetailsPanel];
|
||||
return _detailsPanel;
|
||||
}
|
||||
|
||||
@@ -95,10 +103,10 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[op setCanCreateDirectories:NO];
|
||||
[op setAllowsMultipleSelection:NO];
|
||||
[op setAllowedFileTypes:[NSArray arrayWithObject:@"dupeguru"]];
|
||||
[op setTitle:TR(@"SelectResultToLoadMsg")];
|
||||
[op setTitle:TR(@"Select a results file to load")];
|
||||
if ([op runModal] == NSOKButton) {
|
||||
NSString *filename = [[op filenames] objectAtIndex:0];
|
||||
[py loadResultsFrom:filename];
|
||||
[model loadResultsFrom:filename];
|
||||
[[self recentResults] addFile:filename];
|
||||
}
|
||||
}
|
||||
@@ -119,7 +127,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
- (IBAction)showAboutBox:(id)sender
|
||||
{
|
||||
if (_aboutBox == nil) {
|
||||
_aboutBox = [[HSAboutBox alloc] initWithApp:py];
|
||||
_aboutBox = [[HSAboutBox alloc] initWithApp:model];
|
||||
}
|
||||
[[_aboutBox window] makeKeyAndOrderFront:sender];
|
||||
}
|
||||
@@ -142,6 +150,11 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[[[self resultWindow] window] makeKeyAndOrderFront:nil];
|
||||
}
|
||||
|
||||
- (IBAction)showIgnoreList:(id)sender
|
||||
{
|
||||
[model showIgnoreList];
|
||||
}
|
||||
|
||||
- (IBAction)startScanning:(id)sender
|
||||
{
|
||||
[[self resultWindow] startDuplicateScan:sender];
|
||||
@@ -151,17 +164,9 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
/* Delegate */
|
||||
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
|
||||
{
|
||||
[[ProgressController mainProgressController] setWorker:py];
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
//Restore Columns
|
||||
NSArray *columnsOrder = [ud arrayForKey:@"columnsOrder"];
|
||||
NSDictionary *columnsWidth = [ud dictionaryForKey:@"columnsWidth"];
|
||||
if ([columnsOrder count])
|
||||
[[self resultWindow] restoreColumnsPosition:columnsOrder widths:columnsWidth];
|
||||
else
|
||||
[[self resultWindow] resetColumnsToDefault:nil];
|
||||
[HSFairwareReminder showNagWithApp:[self py]];
|
||||
[py loadSession];
|
||||
[[ProgressController mainProgressController] setWorker:model];
|
||||
[model initialRegistrationSetup];
|
||||
[model loadSession];
|
||||
}
|
||||
|
||||
- (void)applicationWillBecomeActive:(NSNotification *)aNotification
|
||||
@@ -173,8 +178,8 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
- (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender
|
||||
{
|
||||
if ([py resultsAreModified]) {
|
||||
NSString *msg = TR(@"ReallyWantToQuitMsg");
|
||||
if ([model resultsAreModified]) {
|
||||
NSString *msg = TR(@"You have unsaved results, do you really want to quit?");
|
||||
if ([Dialogs askYesNo:msg] == NSAlertSecondButtonReturn) { // NO
|
||||
return NSTerminateCancel;
|
||||
}
|
||||
@@ -185,15 +190,13 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
- (void)applicationWillTerminate:(NSNotification *)aNotification
|
||||
{
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[ud setObject: [[self resultWindow] getColumnsOrder] forKey:@"columnsOrder"];
|
||||
[ud setObject: [[self resultWindow] getColumnsWidth] forKey:@"columnsWidth"];
|
||||
NSInteger sc = [ud integerForKey:@"sessionCountSinceLastIgnorePurge"];
|
||||
if (sc >= 10) {
|
||||
sc = -1;
|
||||
[py purgeIgnoreList];
|
||||
[model purgeIgnoreList];
|
||||
}
|
||||
sc++;
|
||||
[py saveSession];
|
||||
[model saveSession];
|
||||
[ud setInteger:sc forKey:@"sessionCountSinceLastIgnorePurge"];
|
||||
// NSApplication does not release nib instances objects, we must do it manually
|
||||
// Well, it isn't needed because the memory is freed anyway (we are quitting the application
|
||||
@@ -204,14 +207,55 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
- (void)recentFileClicked:(NSString *)path
|
||||
{
|
||||
[py loadResultsFrom:path];
|
||||
[model loadResultsFrom:path];
|
||||
}
|
||||
|
||||
- (void)showExtraFairwareReminder:(NSNotification *)aNotification
|
||||
|
||||
/* model --> view */
|
||||
- (void)showMessage:(NSString *)msg
|
||||
{
|
||||
ExtraFairwareReminder *dialog = [[ExtraFairwareReminder alloc] initWithPy:py];
|
||||
[dialog start];
|
||||
[NSApp runModalForWindow:[dialog window]];
|
||||
[dialog release];
|
||||
[Dialogs showMessage:msg];
|
||||
}
|
||||
|
||||
- (BOOL)askYesNoWithPrompt:(NSString *)prompt
|
||||
{
|
||||
return [Dialogs askYesNo:prompt] == NSAlertFirstButtonReturn;
|
||||
}
|
||||
|
||||
- (void)showProblemDialog
|
||||
{
|
||||
[[self resultWindow] showProblemDialog];
|
||||
}
|
||||
|
||||
- (void)setupAsRegistered
|
||||
{
|
||||
// Nothing to do.
|
||||
}
|
||||
|
||||
- (void)showFairwareNagWithPrompt:(NSString *)prompt
|
||||
{
|
||||
[HSFairwareReminder showFairwareNagWithApp:[self model] prompt:prompt];
|
||||
}
|
||||
|
||||
- (void)showDemoNagWithPrompt:(NSString *)prompt
|
||||
{
|
||||
[HSFairwareReminder showDemoNagWithApp:[self model] prompt:prompt];
|
||||
}
|
||||
|
||||
- (NSString *)selectDestFolderWithPrompt:(NSString *)prompt
|
||||
{
|
||||
NSOpenPanel *op = [NSOpenPanel openPanel];
|
||||
[op setCanChooseFiles:NO];
|
||||
[op setCanChooseDirectories:YES];
|
||||
[op setCanCreateDirectories:YES];
|
||||
[op setAllowsMultipleSelection:NO];
|
||||
[op setTitle:prompt];
|
||||
if ([op runModal] == NSOKButton) {
|
||||
return [[op filenames] objectAtIndex:0];
|
||||
}
|
||||
else {
|
||||
return nil;
|
||||
}
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "HSConsts.h"
|
||||
|
||||
#define JobStarted @"JobStarted"
|
||||
#define JobInProgress @"JobInProgress"
|
||||
#define ShowExtraFairwareReminder @"ShowExtraFairwareReminder"
|
||||
#define TableFontSize @"TableFontSize"
|
||||
|
||||
#define jobLoad @"job_load"
|
||||
#define jobScan @"job_scan"
|
||||
@@ -18,4 +18,4 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#define jobMove @"job_move"
|
||||
#define jobDelete @"job_delete"
|
||||
|
||||
#define TR(s) NSLocalizedString(s, @"")
|
||||
#define DGPrioritizeIndexPasteboardType @"DGPrioritizeIndexPasteboardType"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -7,16 +7,17 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "HSWindowController.h"
|
||||
#import "PyApp.h"
|
||||
#import <Python.h>
|
||||
#import "PyDetailsPanel.h"
|
||||
|
||||
@interface DetailsPanel : HSWindowController
|
||||
@interface DetailsPanel : NSWindowController
|
||||
{
|
||||
IBOutlet NSTableView *detailsTable;
|
||||
|
||||
PyDetailsPanel *model;
|
||||
}
|
||||
- (id)initWithPy:(PyApp *)aPy;
|
||||
- (PyDetailsPanel *)py;
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef;
|
||||
- (PyDetailsPanel *)model;
|
||||
|
||||
- (BOOL)isVisible;
|
||||
- (void)toggleVisibility;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -10,23 +10,24 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "Utils.h"
|
||||
|
||||
@implementation DetailsPanel
|
||||
- (id)initWithPy:(PyApp *)aPy
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef
|
||||
{
|
||||
self = [super initWithNibName:@"DetailsPanel" pyClassName:@"PyDetailsPanel" pyParent:aPy];
|
||||
self = [super initWithWindowNibName:@"DetailsPanel"];
|
||||
[self window]; //So the detailsTable is initialized.
|
||||
[self connect];
|
||||
model = [[PyDetailsPanel alloc] initWithModel:aPyRef];
|
||||
[model bindCallback:createCallback(@"DetailsPanelView", self)];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[self disconnect];
|
||||
[model release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (PyDetailsPanel *)py
|
||||
- (PyDetailsPanel *)model
|
||||
{
|
||||
return (PyDetailsPanel *)py;
|
||||
return (PyDetailsPanel *)model;
|
||||
}
|
||||
|
||||
- (void)refreshDetails
|
||||
@@ -53,12 +54,12 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
/* NSTableView Delegate */
|
||||
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
|
||||
{
|
||||
return [[self py] numberOfRows];
|
||||
return [[self model] numberOfRows];
|
||||
}
|
||||
|
||||
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)column row:(NSInteger)row
|
||||
{
|
||||
return [[self py] valueForColumn:[column identifier] row:row];
|
||||
return [[self model] valueForColumn:[column identifier] row:row];
|
||||
}
|
||||
|
||||
/* Python --> Cocoa */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -7,12 +7,13 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import <Python.h>
|
||||
#import "HSOutline.h"
|
||||
#import "PyDirectoryOutline.h"
|
||||
|
||||
#define DGAddedFoldersNotification @"DGAddedFoldersNotification"
|
||||
|
||||
@interface DirectoryOutline : HSOutline {}
|
||||
- (id)initWithPyParent:(id)aPyParent view:(HSOutlineView *)aOutlineView;
|
||||
- (PyDirectoryOutline *)py;
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef outlineView:(HSOutlineView *)aOutlineView;
|
||||
- (PyDirectoryOutline *)model;
|
||||
@end;
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -9,23 +9,17 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "DirectoryOutline.h"
|
||||
|
||||
@implementation DirectoryOutline
|
||||
- (id)initWithPyParent:(id)aPyParent view:(HSOutlineView *)aOutlineView
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef outlineView:(HSOutlineView *)aOutlineView
|
||||
{
|
||||
self = [super initWithPyClassName:@"PyDirectoryOutline" pyParent:aPyParent view:aOutlineView];
|
||||
[outlineView registerForDraggedTypes:[NSArray arrayWithObject:NSFilenamesPboardType]];
|
||||
[self connect];
|
||||
self = [super initWithPyRef:aPyRef wrapperClass:[PyDirectoryOutline class]
|
||||
callbackClassName:@"DirectoryOutlineView" view:aOutlineView];
|
||||
[[self view] registerForDraggedTypes:[NSArray arrayWithObject:NSFilenamesPboardType]];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
- (PyDirectoryOutline *)model
|
||||
{
|
||||
[self disconnect];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (PyDirectoryOutline *)py
|
||||
{
|
||||
return (PyDirectoryOutline *)py;
|
||||
return (PyDirectoryOutline *)model;
|
||||
}
|
||||
|
||||
/* Delegate */
|
||||
@@ -53,7 +47,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
if (!(sourceDragMask & NSDragOperationLink))
|
||||
return NO;
|
||||
for (NSString *foldername in foldernames) {
|
||||
[[self py] addDirectory:foldername];
|
||||
[[self model] addDirectory:foldername];
|
||||
}
|
||||
NSDictionary *userInfo = [NSDictionary dictionaryWithObject:foldernames forKey:@"foldernames"];
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:DGAddedFoldersNotification
|
||||
@@ -67,7 +61,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
if ([cell isKindOfClass:[NSTextFieldCell class]]) {
|
||||
NSTextFieldCell *textCell = cell;
|
||||
NSIndexPath *path = item;
|
||||
BOOL selected = [path isEqualTo:[outlineView selectedPath]];
|
||||
BOOL selected = [path isEqualTo:[[self view] selectedPath]];
|
||||
if (selected) {
|
||||
[textCell setTextColor:[NSColor blackColor]];
|
||||
return;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -14,15 +14,16 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
@class AppDelegateBase;
|
||||
|
||||
@interface DirectoryPanel : NSWindowController
|
||||
@interface DirectoryPanel : NSWindowController <NSOpenSavePanelDelegate>
|
||||
{
|
||||
IBOutlet NSPopUpButton *addButtonPopUp;
|
||||
IBOutlet NSPopUpButton *loadRecentButtonPopUp;
|
||||
IBOutlet HSOutlineView *outlineView;
|
||||
IBOutlet NSButton *removeButton;
|
||||
IBOutlet NSButton *loadResultsButton;
|
||||
|
||||
AppDelegateBase *_app;
|
||||
PyDupeGuruBase *_py;
|
||||
PyDupeGuru *model;
|
||||
HSRecentFiles *_recentDirectories;
|
||||
DirectoryOutline *outline;
|
||||
BOOL _alwaysShowPopUp;
|
||||
@@ -30,6 +31,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
- (id)initWithParentApp:(AppDelegateBase *)aParentApp;
|
||||
|
||||
- (void)fillPopUpMenu; // Virtual
|
||||
- (void)adjustUIToLocalization;
|
||||
|
||||
- (IBAction)askForDirectory:(id)sender;
|
||||
- (IBAction)popupAddDirectoryMenu:(id)sender;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -18,14 +18,16 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
self = [super initWithWindowNibName:@"DirectoryPanel"];
|
||||
[self window];
|
||||
_app = aParentApp;
|
||||
_py = [_app py];
|
||||
[[self window] setTitle:[_py appName]];
|
||||
model = [_app model];
|
||||
[[self window] setTitle:[model appName]];
|
||||
_alwaysShowPopUp = NO;
|
||||
[self fillPopUpMenu];
|
||||
_recentDirectories = [[HSRecentFiles alloc] initWithName:@"recentDirectories" menu:[addButtonPopUp menu]];
|
||||
[_recentDirectories setDelegate:self];
|
||||
outline = [[DirectoryOutline alloc] initWithPyParent:_py view:outlineView];
|
||||
outline = [[DirectoryOutline alloc] initWithPyRef:[model directoryTree] outlineView:outlineView];
|
||||
[self refreshRemoveButtonText];
|
||||
[self adjustUIToLocalization];
|
||||
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(directorySelectionChanged:)
|
||||
name:NSOutlineViewSelectionDidChangeNotification object:outlineView];
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(outlineAddedFolders:)
|
||||
@@ -40,7 +42,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
/* Virtual */
|
||||
/* Private */
|
||||
|
||||
- (void)fillPopUpMenu
|
||||
{
|
||||
@@ -50,6 +52,27 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[m addItem:[NSMenuItem separatorItem]];
|
||||
}
|
||||
|
||||
- (void)adjustUIToLocalization
|
||||
{
|
||||
NSString *lang = [[NSBundle preferredLocalizationsFromArray:[[NSBundle mainBundle] localizations]] objectAtIndex:0];
|
||||
NSInteger loadResultsWidthDelta = 0;
|
||||
if ([lang isEqual:@"ru"]) {
|
||||
loadResultsWidthDelta = 50;
|
||||
}
|
||||
else if ([lang isEqual:@"uk"]) {
|
||||
loadResultsWidthDelta = 70;
|
||||
}
|
||||
else if ([lang isEqual:@"hy"]) {
|
||||
loadResultsWidthDelta = 30;
|
||||
}
|
||||
if (loadResultsWidthDelta) {
|
||||
NSRect r = [loadResultsButton frame];
|
||||
r.size.width += loadResultsWidthDelta;
|
||||
r.origin.x -= loadResultsWidthDelta;
|
||||
[loadResultsButton setFrame:r];
|
||||
}
|
||||
}
|
||||
|
||||
/* Actions */
|
||||
|
||||
- (IBAction)askForDirectory:(id)sender
|
||||
@@ -58,7 +81,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[op setCanChooseFiles:YES];
|
||||
[op setCanChooseDirectories:YES];
|
||||
[op setAllowsMultipleSelection:YES];
|
||||
[op setTitle:TR(@"SelectFolderToAddMsg")];
|
||||
[op setTitle:TR(@"Select a folder to add to the scanning list")];
|
||||
[op setDelegate:self];
|
||||
if ([op runModal] == NSOKButton) {
|
||||
for (NSString *directory in [op filenames]) {
|
||||
@@ -100,32 +123,21 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
- (IBAction)removeSelectedDirectory:(id)sender
|
||||
{
|
||||
[[self window] makeKeyAndOrderFront:nil];
|
||||
if ([outlineView selectedRow] < 0)
|
||||
return;
|
||||
NSIndexPath *path = [outline selectedIndexPath];
|
||||
NSInteger state = [outline intProperty:@"state" valueAtPath:path];
|
||||
if (([path length] == 1) && (state != 2)) {
|
||||
[_py removeDirectory:i2n([path indexAtPosition:0])];
|
||||
}
|
||||
else {
|
||||
NSInteger newState = state == 2 ? 0 : 2; // If excluded, put it back
|
||||
[outline setIntProperty:@"state" value:newState atPath:path];
|
||||
[outlineView display];
|
||||
}
|
||||
[[outline model] removeSelectedDirectory];
|
||||
[self refreshRemoveButtonText];
|
||||
}
|
||||
|
||||
/* Public */
|
||||
- (void)addDirectory:(NSString *)directory
|
||||
{
|
||||
NSInteger r = [[_py addDirectory:directory] intValue];
|
||||
NSInteger r = [model addDirectory:directory];
|
||||
if (r) {
|
||||
NSString *m = @"";
|
||||
if (r == 1) {
|
||||
m = TR(@"FolderAlreadyInListMsg");
|
||||
m = TR(@"'%@' already is in the list.");
|
||||
}
|
||||
else if (r == 2) {
|
||||
m = TR(@"FolderDoesNotExistMsg");
|
||||
m = TR(@"'%@' does not exist.");
|
||||
}
|
||||
[Dialogs showMessage:[NSString stringWithFormat:m,directory]];
|
||||
}
|
||||
@@ -140,9 +152,13 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
return;
|
||||
}
|
||||
[removeButton setEnabled:YES];
|
||||
NSInteger state = [outline intProperty:@"state" valueAtPath:[outline selectedIndexPath]];
|
||||
NSString *imgName = state == 2 ? @"NSGoLeftTemplate" : @"NSRemoveTemplate";
|
||||
[removeButton setImage:[NSImage imageNamed:imgName]];
|
||||
NSIndexPath *path = [outline selectedIndexPath];
|
||||
if (path != nil) {
|
||||
NSInteger state = [outline intProperty:@"state" valueAtPath:path];
|
||||
BOOL shouldDisplayArrow = ([path length] > 1) && (state == 2);
|
||||
NSString *imgName = shouldDisplayArrow ? @"NSGoLeftTemplate" : @"NSRemoveTemplate";
|
||||
[removeButton setImage:[NSImage imageNamed:imgName]];
|
||||
}
|
||||
}
|
||||
|
||||
/* Delegate */
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyExtraFairwareReminder.h"
|
||||
#import "HSWindowController.h"
|
||||
#import "PyApp.h"
|
||||
|
||||
@interface ExtraFairwareReminder : HSWindowController
|
||||
{
|
||||
IBOutlet NSButton *continueButton;
|
||||
|
||||
NSTimer *timer;
|
||||
}
|
||||
- (id)initWithPy:(PyApp *)aPy;
|
||||
- (PyExtraFairwareReminder *)py;
|
||||
|
||||
- (void)start;
|
||||
- (void)updateButton;
|
||||
- (IBAction)continue:(id)sender;
|
||||
- (IBAction)contribute:(id)sender;
|
||||
@end
|
||||
@@ -1,74 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import "ExtraFairwareReminder.h"
|
||||
|
||||
@implementation ExtraFairwareReminder
|
||||
- (id)initWithPy:(PyApp *)aPy
|
||||
{
|
||||
self = [super initWithNibName:@"ExtraFairwareReminder" pyClassName:@"PyExtraFairwareReminder" pyParent:aPy];
|
||||
[self window];
|
||||
[continueButton setEnabled:NO];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[timer release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (PyExtraFairwareReminder *)py
|
||||
{
|
||||
return (PyExtraFairwareReminder *)py;
|
||||
}
|
||||
|
||||
- (void)start
|
||||
{
|
||||
[[self py] start];
|
||||
}
|
||||
|
||||
- (void)updateButton
|
||||
{
|
||||
[[self py] updateButton];
|
||||
}
|
||||
|
||||
- (IBAction)continue:(id)sender
|
||||
{
|
||||
[NSApp stopModal];
|
||||
}
|
||||
|
||||
- (IBAction)contribute:(id)sender
|
||||
{
|
||||
[[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"http://open.hardcoded.net/contribute/"]];
|
||||
}
|
||||
|
||||
/* Model --> View */
|
||||
- (void)startTimer
|
||||
{
|
||||
timer = [[NSTimer timerWithTimeInterval:0.2 target:self selector:@selector(updateButton)
|
||||
userInfo:nil repeats:YES] retain];
|
||||
// Needed for the timer to work in modal mode.
|
||||
[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSModalPanelRunLoopMode];
|
||||
}
|
||||
|
||||
- (void)stopTimer
|
||||
{
|
||||
[timer invalidate];
|
||||
}
|
||||
|
||||
- (void)setButtonText:(NSString *)text
|
||||
{
|
||||
[continueButton setTitle:text];
|
||||
}
|
||||
|
||||
- (void)enableButton
|
||||
{
|
||||
[continueButton setEnabled:YES];
|
||||
}
|
||||
@end
|
||||
25
cocoa/base/IgnoreListDialog.h
Normal file
25
cocoa/base/IgnoreListDialog.h
Normal file
@@ -0,0 +1,25 @@
|
||||
/*
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyIgnoreListDialog.h"
|
||||
#import "HSTable.h"
|
||||
|
||||
@interface IgnoreListDialog : NSWindowController
|
||||
{
|
||||
IBOutlet NSTableView *ignoreListTableView;
|
||||
|
||||
PyIgnoreListDialog *model;
|
||||
HSTable *ignoreListTable;
|
||||
}
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef;
|
||||
|
||||
- (void)initializeColumns;
|
||||
- (IBAction)removeSelected:(id)sender;
|
||||
- (IBAction)clear:(id)sender;
|
||||
@end
|
||||
57
cocoa/base/IgnoreListDialog.m
Normal file
57
cocoa/base/IgnoreListDialog.m
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import "IgnoreListDialog.h"
|
||||
#import "Utils.h"
|
||||
|
||||
@implementation IgnoreListDialog
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef
|
||||
{
|
||||
self = [super initWithWindowNibName:@"IgnoreListDialog"];
|
||||
[self window]; //So the detailsTable is initialized.
|
||||
model = [[PyIgnoreListDialog alloc] initWithModel:aPyRef];
|
||||
[model bindCallback:createCallback(@"IgnoreListDialogView", self)];
|
||||
ignoreListTable = [[HSTable alloc] initWithPyRef:[model ignoreListTable] tableView:ignoreListTableView];
|
||||
[self initializeColumns];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[ignoreListTable release];
|
||||
[model release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (void)initializeColumns
|
||||
{
|
||||
HSColumnDef defs[] = {
|
||||
{@"path1", 240, 40, 0, NO, nil},
|
||||
{@"path2", 240, 40, 0, NO, nil},
|
||||
nil
|
||||
};
|
||||
[[ignoreListTable columns] initializeColumns:defs];
|
||||
[[ignoreListTable columns] setColumnsAsReadOnly];
|
||||
}
|
||||
|
||||
- (IBAction)removeSelected:(id)sender
|
||||
{
|
||||
[model removeSelected];
|
||||
}
|
||||
|
||||
- (IBAction)clear:(id)sender
|
||||
{
|
||||
[model clear];
|
||||
}
|
||||
|
||||
/* model --> view */
|
||||
- (void)show
|
||||
{
|
||||
[self showWindow:self];
|
||||
}
|
||||
@end
|
||||
34
cocoa/base/PrioritizeDialog.h
Normal file
34
cocoa/base/PrioritizeDialog.h
Normal file
@@ -0,0 +1,34 @@
|
||||
/*
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyPrioritizeDialog.h"
|
||||
#import "HSPopUpList.h"
|
||||
#import "HSSelectableList.h"
|
||||
#import "PrioritizeList.h"
|
||||
#import "PyDupeGuru.h"
|
||||
|
||||
@interface PrioritizeDialog : NSWindowController
|
||||
{
|
||||
IBOutlet NSPopUpButton *categoryPopUpView;
|
||||
IBOutlet NSTableView *criteriaTableView;
|
||||
IBOutlet NSTableView *prioritizationTableView;
|
||||
|
||||
PyPrioritizeDialog *model;
|
||||
HSPopUpList *categoryPopUp;
|
||||
HSSelectableList *criteriaList;
|
||||
PrioritizeList *prioritizationList;
|
||||
}
|
||||
- (id)initWithApp:(PyDupeGuru *)aApp;
|
||||
- (PyPrioritizeDialog *)model;
|
||||
|
||||
- (IBAction)addSelected:(id)sender;
|
||||
- (IBAction)removeSelected:(id)sender;
|
||||
- (IBAction)ok:(id)sender;
|
||||
- (IBAction)cancel:(id)sender;
|
||||
@end;
|
||||
60
cocoa/base/PrioritizeDialog.m
Normal file
60
cocoa/base/PrioritizeDialog.m
Normal file
@@ -0,0 +1,60 @@
|
||||
/*
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import "PrioritizeDialog.h"
|
||||
#import "Utils.h"
|
||||
|
||||
@implementation PrioritizeDialog
|
||||
- (id)initWithApp:(PyDupeGuru *)aApp
|
||||
{
|
||||
self = [super initWithWindowNibName:@"PrioritizeDialog"];
|
||||
[self window];
|
||||
model = [[PyPrioritizeDialog alloc] initWithApp:[aApp pyRef]];
|
||||
categoryPopUp = [[HSPopUpList alloc] initWithPyRef:[[self model] categoryList] popupView:categoryPopUpView];
|
||||
criteriaList = [[HSSelectableList alloc] initWithPyRef:[[self model] criteriaList] tableView:criteriaTableView];
|
||||
prioritizationList = [[PrioritizeList alloc] initWithPyRef:[[self model] prioritizationList] tableView:prioritizationTableView];
|
||||
[model bindCallback:createCallback(@"PrioritizeDialogView", self)];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[categoryPopUp release];
|
||||
[criteriaList release];
|
||||
[prioritizationList release];
|
||||
[model release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (PyPrioritizeDialog *)model
|
||||
{
|
||||
return (PyPrioritizeDialog *)model;
|
||||
}
|
||||
|
||||
- (IBAction)addSelected:(id)sender
|
||||
{
|
||||
[[self model] addSelected];
|
||||
}
|
||||
|
||||
- (IBAction)removeSelected:(id)sender
|
||||
{
|
||||
[[self model] removeSelected];
|
||||
}
|
||||
|
||||
- (IBAction)ok:(id)sender
|
||||
{
|
||||
[NSApp stopModal];
|
||||
[self close];
|
||||
}
|
||||
|
||||
- (IBAction)cancel:(id)sender
|
||||
{
|
||||
[NSApp abortModal];
|
||||
[self close];
|
||||
}
|
||||
@end
|
||||
16
cocoa/base/PrioritizeList.h
Normal file
16
cocoa/base/PrioritizeList.h
Normal file
@@ -0,0 +1,16 @@
|
||||
/*
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "HSSelectableList.h"
|
||||
#import "PyPrioritizeList.h"
|
||||
|
||||
@interface PrioritizeList : HSSelectableList {}
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef tableView:(NSTableView *)aTableView;
|
||||
- (PyPrioritizeList *)model;
|
||||
@end
|
||||
58
cocoa/base/PrioritizeList.m
Normal file
58
cocoa/base/PrioritizeList.m
Normal file
@@ -0,0 +1,58 @@
|
||||
/*
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import "PrioritizeList.h"
|
||||
#import "Utils.h"
|
||||
#import "Consts.h"
|
||||
|
||||
@implementation PrioritizeList
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef tableView:(NSTableView *)aTableView
|
||||
{
|
||||
self = [super initWithPyRef:aPyRef wrapperClass:[PyPrioritizeList class]
|
||||
callbackClassName:@"PrioritizeListView" view:aTableView];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (PyPrioritizeList *)model
|
||||
{
|
||||
return (PyPrioritizeList *)model;
|
||||
}
|
||||
|
||||
- (void)setView:(NSTableView *)aTableView
|
||||
{
|
||||
[super setView:aTableView];
|
||||
[[self view] registerForDraggedTypes:[NSArray arrayWithObject:DGPrioritizeIndexPasteboardType]];
|
||||
}
|
||||
|
||||
- (BOOL)tableView:(NSTableView *)tv writeRowsWithIndexes:(NSIndexSet *)rowIndexes toPasteboard:(NSPasteboard*)pboard
|
||||
{
|
||||
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:rowIndexes];
|
||||
[pboard declareTypes:[NSArray arrayWithObject:DGPrioritizeIndexPasteboardType] owner:self];
|
||||
[pboard setData:data forType:DGPrioritizeIndexPasteboardType];
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (NSDragOperation)tableView:(NSTableView*)tv validateDrop:(id <NSDraggingInfo>)info proposedRow:(NSInteger)row
|
||||
proposedDropOperation:(NSTableViewDropOperation)op
|
||||
{
|
||||
if (op == NSTableViewDropAbove) {
|
||||
return NSDragOperationMove;
|
||||
}
|
||||
return NSDragOperationNone;
|
||||
}
|
||||
|
||||
- (BOOL)tableView:(NSTableView *)aTableView acceptDrop:(id <NSDraggingInfo>)info
|
||||
row:(NSInteger)row dropOperation:(NSTableViewDropOperation)operation
|
||||
{
|
||||
NSPasteboard* pboard = [info draggingPasteboard];
|
||||
NSData* rowData = [pboard dataForType:DGPrioritizeIndexPasteboardType];
|
||||
NSIndexSet* rowIndexes = [NSKeyedUnarchiver unarchiveObjectWithData:rowData];
|
||||
[[self model] moveIndexes:[Utils indexSet2Array:rowIndexes] toIndex:row];
|
||||
return YES;
|
||||
}
|
||||
@end
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -7,19 +7,18 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "HSWindowController.h"
|
||||
#import "PyApp.h"
|
||||
#import "PyProblemDialog.h"
|
||||
#import "HSTable.h"
|
||||
|
||||
@interface ProblemDialog : HSWindowController
|
||||
@interface ProblemDialog : NSWindowController
|
||||
{
|
||||
IBOutlet NSTableView *problemTableView;
|
||||
|
||||
PyProblemDialog *model;
|
||||
HSTable *problemTable;
|
||||
}
|
||||
- (id)initWithPy:(PyApp *)aPy;
|
||||
- (PyProblemDialog *)py;
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef;
|
||||
|
||||
- (void)initializeColumns;
|
||||
- (IBAction)revealSelected:(id)sender;
|
||||
@end
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -10,31 +10,35 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "Utils.h"
|
||||
|
||||
@implementation ProblemDialog
|
||||
- (id)initWithPy:(PyApp *)aPy
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef
|
||||
{
|
||||
self = [super initWithNibName:@"ProblemDialog" pyClassName:@"PyProblemDialog" pyParent:aPy];
|
||||
self = [super initWithWindowNibName:@"ProblemDialog"];
|
||||
[self window]; //So the detailsTable is initialized.
|
||||
problemTable = [[HSTable alloc] initWithPyClassName:@"PyProblemTable" pyParent:[self py] view:problemTableView];
|
||||
[self connect];
|
||||
[problemTable connect];
|
||||
model = [[PyProblemDialog alloc] initWithModel:aPyRef];
|
||||
problemTable = [[HSTable alloc] initWithPyRef:[model problemTable] tableView:problemTableView];
|
||||
[self initializeColumns];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[problemTable disconnect];
|
||||
[self disconnect];
|
||||
[problemTable release];
|
||||
[model release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (PyProblemDialog *)py
|
||||
- (void)initializeColumns
|
||||
{
|
||||
return (PyProblemDialog *)py;
|
||||
HSColumnDef defs[] = {
|
||||
{@"path", 202, 40, 0, NO, nil},
|
||||
{@"msg", 228, 40, 0, NO, nil},
|
||||
nil
|
||||
};
|
||||
[[problemTable columns] initializeColumns:defs];
|
||||
}
|
||||
|
||||
- (IBAction)revealSelected:(id)sender
|
||||
{
|
||||
[[self py] revealSelected];
|
||||
[model revealSelected];
|
||||
}
|
||||
@end
|
||||
@@ -1,15 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyGUI.h"
|
||||
|
||||
@interface PyDetailsPanel : PyGUI
|
||||
- (NSInteger)numberOfRows;
|
||||
- (id)valueForColumn:(NSString *)column row:(NSInteger)row;
|
||||
@end
|
||||
@@ -1,14 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyOutline.h"
|
||||
|
||||
@interface PyDirectoryOutline : PyOutline
|
||||
- (void)addDirectory:(NSString *)directoryPath;
|
||||
@end
|
||||
@@ -1,58 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyApp.h"
|
||||
|
||||
@interface PyDupeGuruBase : PyApp
|
||||
//Actions
|
||||
- (NSNumber *)addDirectory:(NSString *)name;
|
||||
- (void)removeDirectory:(NSNumber *)index;
|
||||
- (void)loadResultsFrom:(NSString *)filename;
|
||||
- (void)saveResultsAs:(NSString *)filename;
|
||||
- (void)loadSession;
|
||||
- (void)saveSession;
|
||||
- (void)clearIgnoreList;
|
||||
- (void)purgeIgnoreList;
|
||||
- (NSString *)exportToXHTMLwithColumns:(NSArray *)aColIds;
|
||||
- (void)invokeCommand:(NSString *)cmd;
|
||||
|
||||
- (NSNumber *)doScan;
|
||||
|
||||
- (void)toggleSelectedMark;
|
||||
- (void)markAll;
|
||||
- (void)markInvert;
|
||||
- (void)markNone;
|
||||
|
||||
- (void)addSelectedToIgnoreList;
|
||||
- (void)openSelected;
|
||||
- (void)revealSelected;
|
||||
- (void)makeSelectedReference;
|
||||
- (void)applyFilter:(NSString *)filter;
|
||||
|
||||
- (void)copyOrMove:(NSNumber *)aCopy markedTo:(NSString *)destination recreatePath:(NSNumber *)aRecreateType;
|
||||
- (void)deleteMarked;
|
||||
- (void)hardlinkMarked;
|
||||
- (void)removeMarked;
|
||||
|
||||
//Data
|
||||
- (NSNumber *)getIgnoreListCount;
|
||||
- (NSNumber *)getMarkCount;
|
||||
- (BOOL)scanWasProblematic;
|
||||
- (BOOL)resultsAreModified;
|
||||
- (NSArray *)deltaColumns;
|
||||
|
||||
//Scanning options
|
||||
- (void)setScanType:(NSNumber *)scan_type;
|
||||
- (void)setMinMatchPercentage:(NSNumber *)percentage;
|
||||
- (void)setMixFileKind:(BOOL)mix_file_kind;
|
||||
- (void)setEscapeFilterRegexp:(BOOL)escape_filter_regexp;
|
||||
- (void)setRemoveEmptyFolders:(BOOL)remove_empty_folders;
|
||||
- (void)setIgnoreHardlinkMatches:(BOOL)ignore_hardlink_matches;
|
||||
- (void)setSizeThreshold:(NSInteger)size_threshold;
|
||||
@end
|
||||
@@ -1,15 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyGUI.h"
|
||||
|
||||
@interface PyExtraFairwareReminder : PyGUI
|
||||
- (void)start;
|
||||
- (void)updateButton;
|
||||
@end
|
||||
@@ -1,14 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyGUI.h"
|
||||
|
||||
@interface PyProblemDialog : PyGUI
|
||||
- (void)revealSelected;
|
||||
@end
|
||||
@@ -1,24 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyTable.h"
|
||||
|
||||
@interface PyResultTable : PyTable
|
||||
- (BOOL)powerMarkerMode;
|
||||
- (void)setPowerMarkerMode:(BOOL)aPowerMarkerMode;
|
||||
- (BOOL)deltaValuesMode;
|
||||
- (void)setDeltaValuesMode:(BOOL)aDeltaValuesMode;
|
||||
|
||||
- (NSString *)valueForRow:(NSInteger)rowIndex column:(NSInteger)aColumn;
|
||||
- (BOOL)renameSelected:(NSString *)aNewName;
|
||||
- (void)sortBy:(NSInteger)aIdentifier ascending:(BOOL)aAscending;
|
||||
- (void)markSelected;
|
||||
- (void)removeSelected;
|
||||
- (NSInteger)selectedDupeCount;
|
||||
@end
|
||||
@@ -1,14 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "PyGUI.h"
|
||||
|
||||
@interface PyStatsLabel : PyGUI
|
||||
- (NSString *)display;
|
||||
@end
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -7,20 +7,18 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import <Quartz/Quartz.h>
|
||||
#import "HSTable.h"
|
||||
#import "PyResultTable.h"
|
||||
|
||||
@interface ResultTable : HSTable
|
||||
@interface ResultTable : HSTable <QLPreviewPanelDataSource, QLPreviewPanelDelegate>
|
||||
{
|
||||
NSIndexSet *_deltaColumns;
|
||||
NSSet *_deltaColumns;
|
||||
}
|
||||
- (id)initWithPyParent:(id)aPyParent view:(NSTableView *)aTableView;
|
||||
- (PyResultTable *)py;
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef view:(NSTableView *)aTableView;
|
||||
- (PyResultTable *)model;
|
||||
- (BOOL)powerMarkerMode;
|
||||
- (void)setPowerMarkerMode:(BOOL)aPowerMarkerMode;
|
||||
- (BOOL)deltaValuesMode;
|
||||
- (void)setDeltaValuesMode:(BOOL)aDeltaValuesMode;
|
||||
- (void)setDeltaColumns:(NSIndexSet *)aDeltaColumns;
|
||||
- (NSInteger)selectedDupeCount;
|
||||
- (void)removeSelected;
|
||||
@end;
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -10,69 +10,71 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "Dialogs.h"
|
||||
#import "Utils.h"
|
||||
#import "Consts.h"
|
||||
#import "HSQuicklook.h"
|
||||
|
||||
@interface HSTable (private)
|
||||
- (void)setPySelection;
|
||||
- (void)setViewSelection;
|
||||
@end
|
||||
|
||||
@implementation ResultTable
|
||||
- (id)initWithPyParent:(id)aPyParent view:(NSTableView *)aTableView
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef view:(NSTableView *)aTableView
|
||||
{
|
||||
self = [super initWithPyClassName:@"PyResultTable" pyParent:aPyParent view:aTableView];
|
||||
[self connect];
|
||||
self = [super initWithPyRef:aPyRef wrapperClass:[PyResultTable class] callbackClassName:@"ResultTableView" view:aTableView];
|
||||
_deltaColumns = [[NSSet setWithArray:[[self model] deltaColumns]] retain];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[self disconnect];
|
||||
[_deltaColumns release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (PyResultTable *)py
|
||||
- (PyResultTable *)model
|
||||
{
|
||||
return (PyResultTable *)py;
|
||||
return (PyResultTable *)model;
|
||||
}
|
||||
|
||||
/* Private */
|
||||
- (void)updateQuicklookIfNeeded
|
||||
{
|
||||
if ([[QLPreviewPanel sharedPreviewPanel] dataSource] == self) {
|
||||
[[QLPreviewPanel sharedPreviewPanel] reloadData];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)setPySelection
|
||||
{
|
||||
[super setPySelection];
|
||||
[self updateQuicklookIfNeeded];
|
||||
}
|
||||
|
||||
- (void)setViewSelection
|
||||
{
|
||||
[super setViewSelection];
|
||||
[self updateQuicklookIfNeeded];
|
||||
}
|
||||
|
||||
/* Public */
|
||||
- (BOOL)powerMarkerMode
|
||||
{
|
||||
return [[self py] powerMarkerMode];
|
||||
return [[self model] powerMarkerMode];
|
||||
}
|
||||
|
||||
- (void)setPowerMarkerMode:(BOOL)aPowerMarkerMode
|
||||
{
|
||||
[[self py] setPowerMarkerMode:aPowerMarkerMode];
|
||||
[[self model] setPowerMarkerMode:aPowerMarkerMode];
|
||||
}
|
||||
|
||||
- (BOOL)deltaValuesMode
|
||||
{
|
||||
return [[self py] deltaValuesMode];
|
||||
return [[self model] deltaValuesMode];
|
||||
}
|
||||
|
||||
- (void)setDeltaValuesMode:(BOOL)aDeltaValuesMode
|
||||
{
|
||||
[[self py] setDeltaValuesMode:aDeltaValuesMode];
|
||||
}
|
||||
|
||||
- (void)setDeltaColumns:(NSIndexSet *)aDeltaColumns
|
||||
{
|
||||
[_deltaColumns release];
|
||||
_deltaColumns = [aDeltaColumns retain];
|
||||
}
|
||||
|
||||
- (NSInteger)selectedDupeCount
|
||||
{
|
||||
return [[self py] selectedDupeCount];
|
||||
}
|
||||
|
||||
- (void)removeSelected
|
||||
{
|
||||
NSInteger selectedDupeCount = [self selectedDupeCount];
|
||||
if (!selectedDupeCount)
|
||||
return;
|
||||
NSString *msgFmt = TR(@"FileRemovalConfirmMsg");
|
||||
NSString *msg = [NSString stringWithFormat:msgFmt,selectedDupeCount];
|
||||
if ([Dialogs askYesNo:msg] == NSAlertSecondButtonReturn) // NO
|
||||
return;
|
||||
[[self py] removeSelected];
|
||||
[[self model] setDeltaValuesMode:aDeltaValuesMode];
|
||||
}
|
||||
|
||||
/* Datasource */
|
||||
@@ -80,28 +82,27 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
{
|
||||
NSString *identifier = [column identifier];
|
||||
if ([identifier isEqual:@"marked"]) {
|
||||
return [[self py] valueForColumn:@"marked" row:row];
|
||||
return [[self model] valueForColumn:@"marked" row:row];
|
||||
}
|
||||
NSInteger columnId = [identifier integerValue];
|
||||
return [[self py] valueForRow:row column:columnId];
|
||||
return [[self model] valueForRow:row column:identifier];
|
||||
}
|
||||
|
||||
- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)object forTableColumn:(NSTableColumn *)column row:(NSInteger)row
|
||||
{
|
||||
NSString *identifier = [column identifier];
|
||||
if ([identifier isEqual:@"marked"]) {
|
||||
[[self py] setValue:object forColumn:identifier row:row];
|
||||
[[self model] setValue:object forColumn:identifier row:row];
|
||||
}
|
||||
else if ([identifier isEqual:@"0"]) {
|
||||
NSString *oldName = [[self py] valueForRow:row column:0];
|
||||
else if ([identifier isEqual:@"name"]) {
|
||||
NSString *oldName = [[self model] valueForRow:row column:identifier];
|
||||
NSString *newName = object;
|
||||
if (![newName isEqual:oldName]) {
|
||||
BOOL renamed = [[self py] renameSelected:newName];
|
||||
BOOL renamed = [[self model] renameSelected:newName];
|
||||
if (!renamed) {
|
||||
[Dialogs showMessage:[NSString stringWithFormat:TR(@"FilenameAlreadyExistsMsg"), newName]];
|
||||
[Dialogs showMessage:[NSString stringWithFormat:TR(@"The name '%@' already exists."), newName]];
|
||||
}
|
||||
else {
|
||||
[tableView setNeedsDisplay:YES];
|
||||
[[self view] setNeedsDisplay:YES];
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -110,16 +111,16 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
/* Delegate */
|
||||
- (void)tableView:(NSTableView *)aTableView didClickTableColumn:(NSTableColumn *)tableColumn
|
||||
{
|
||||
if ([[tableView sortDescriptors] count] < 1)
|
||||
if ([[[self view] sortDescriptors] count] < 1)
|
||||
return;
|
||||
NSSortDescriptor *sd = [[tableView sortDescriptors] objectAtIndex:0];
|
||||
[[self py] sortBy:[[sd key] integerValue] ascending:[sd ascending]];
|
||||
NSSortDescriptor *sd = [[[self view] sortDescriptors] objectAtIndex:0];
|
||||
[[self model] sortBy:[sd key] ascending:[sd ascending]];
|
||||
}
|
||||
|
||||
- (void)tableView:(NSTableView *)aTableView willDisplayCell:(id)cell forTableColumn:(NSTableColumn *)column row:(NSInteger)row
|
||||
{
|
||||
BOOL isSelected = [tableView isRowSelected:row];
|
||||
BOOL isMarkable = n2b([[self py] valueForColumn:@"markable" row:row]);
|
||||
BOOL isSelected = [[self view] isRowSelected:row];
|
||||
BOOL isMarkable = n2b([[self model] valueForColumn:@"markable" row:row]);
|
||||
if ([[column identifier] isEqual:@"marked"]) {
|
||||
[cell setEnabled:isMarkable];
|
||||
// Low-tech solution, for indentation, but it works...
|
||||
@@ -133,8 +134,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
}
|
||||
else if (isMarkable) {
|
||||
if ([self deltaValuesMode]) {
|
||||
NSInteger i = [[column identifier] integerValue];
|
||||
if ([_deltaColumns containsIndex:i]) {
|
||||
if ([_deltaColumns containsObject:[column identifier]]) {
|
||||
color = [NSColor orangeColor];
|
||||
}
|
||||
}
|
||||
@@ -148,19 +148,43 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
- (BOOL)tableViewHadDeletePressed:(NSTableView *)tableView
|
||||
{
|
||||
[self removeSelected];
|
||||
[[self model] removeSelected];
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (BOOL)tableViewHadSpacePressed:(NSTableView *)tableView
|
||||
{
|
||||
[[self py] markSelected];
|
||||
[[self model] markSelected];
|
||||
return YES;
|
||||
}
|
||||
|
||||
/* Quicklook */
|
||||
- (NSInteger)numberOfPreviewItemsInPreviewPanel:(QLPreviewPanel *)panel
|
||||
{
|
||||
return [[[self model] selectedRows] count];
|
||||
}
|
||||
|
||||
- (id <QLPreviewItem>)previewPanel:(QLPreviewPanel *)panel previewItemAtIndex:(NSInteger)index
|
||||
{
|
||||
NSArray *selectedRows = [[self model] selectedRows];
|
||||
NSInteger absIndex = n2i([selectedRows objectAtIndex:index]);
|
||||
NSString *path = [[self model] pathAtIndex:absIndex];
|
||||
return [[HSQLPreviewItem alloc] initWithUrl:[NSURL fileURLWithPath:path] title:path];
|
||||
}
|
||||
|
||||
- (BOOL)previewPanel:(QLPreviewPanel *)panel handleEvent:(NSEvent *)event
|
||||
{
|
||||
// redirect all key down events to the table view
|
||||
if ([event type] == NSKeyDown) {
|
||||
[[self view] keyDown:event];
|
||||
return YES;
|
||||
}
|
||||
return NO;
|
||||
}
|
||||
|
||||
/* Python --> Cocoa */
|
||||
- (void)invalidateMarkings
|
||||
{
|
||||
[tableView setNeedsDisplay:YES];
|
||||
[[self view] setNeedsDisplay:YES];
|
||||
}
|
||||
@end
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -7,6 +7,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import <Quartz/Quartz.h>
|
||||
#import "StatsLabel.h"
|
||||
#import "ResultTable.h"
|
||||
#import "ProblemDialog.h"
|
||||
@@ -19,36 +20,33 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
{
|
||||
@protected
|
||||
IBOutlet NSSegmentedControl *optionsSwitch;
|
||||
IBOutlet NSToolbarItem *optionsToolbarItem;
|
||||
IBOutlet HSTableView *matches;
|
||||
IBOutlet NSTextField *stats;
|
||||
IBOutlet NSSearchField *filterField;
|
||||
|
||||
AppDelegateBase *app;
|
||||
PyDupeGuruBase *py;
|
||||
PyDupeGuru *model;
|
||||
NSMenu *columnsMenu;
|
||||
NSMutableArray *_resultColumns;
|
||||
ResultTable *table;
|
||||
StatsLabel *statsLabel;
|
||||
ProblemDialog *problemDialog;
|
||||
QLPreviewPanel* previewPanel;
|
||||
}
|
||||
- (id)initWithParentApp:(AppDelegateBase *)app;
|
||||
|
||||
/* Virtual */
|
||||
- (void)initResultColumns;
|
||||
- (void)setScanOptions;
|
||||
- (NSString *)getScanErrorMessageForCode:(NSInteger)errorCode;
|
||||
|
||||
/* Helpers */
|
||||
- (void)fillColumnsMenu;
|
||||
- (NSTableColumn *)getColumnForIdentifier:(NSInteger)aIdentifier title:(NSString *)aTitle width:(NSInteger)aWidth refCol:(NSTableColumn *)aColumn;
|
||||
- (NSArray *)getColumnsOrder;
|
||||
- (NSDictionary *)getColumnsWidth;
|
||||
- (void)restoreColumnsPosition:(NSArray *)aColumnsOrder widths:(NSDictionary *)aColumnsWidth;
|
||||
- (void)sendMarkedToTrash:(BOOL)hardlinkDeleted;
|
||||
- (void)updateOptionSegments;
|
||||
- (void)showProblemDialog;
|
||||
- (void)adjustUIToLocalization;
|
||||
|
||||
/* Actions */
|
||||
- (IBAction)clearIgnoreList:(id)sender;
|
||||
- (IBAction)changeOptions:(id)sender;
|
||||
- (IBAction)copyMarked:(id)sender;
|
||||
- (IBAction)deleteMarked:(id)sender;
|
||||
@@ -67,6 +65,7 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
- (IBAction)removeMarked:(id)sender;
|
||||
- (IBAction)removeSelected:(id)sender;
|
||||
- (IBAction)renameSelected:(id)sender;
|
||||
- (IBAction)reprioritizeResults:(id)sender;
|
||||
- (IBAction)resetColumnsToDefault:(id)sender;
|
||||
- (IBAction)revealSelected:(id)sender;
|
||||
- (IBAction)saveResults:(id)sender;
|
||||
@@ -76,7 +75,5 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
- (IBAction)toggleDelta:(id)sender;
|
||||
- (IBAction)toggleDetailsPanel:(id)sender;
|
||||
- (IBAction)togglePowerMarker:(id)sender;
|
||||
|
||||
/* Notifications */
|
||||
- (void)jobCompleted:(NSNotification *)aNotification;
|
||||
- (IBAction)toggleQuicklookPanel:(id)sender;
|
||||
@end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -12,27 +12,27 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "Utils.h"
|
||||
#import "AppDelegate.h"
|
||||
#import "Consts.h"
|
||||
#import "PrioritizeDialog.h"
|
||||
|
||||
@implementation ResultWindowBase
|
||||
- (id)initWithParentApp:(AppDelegateBase *)aApp;
|
||||
{
|
||||
self = [super initWithWindowNibName:@"ResultWindow"];
|
||||
app = aApp;
|
||||
py = [app py];
|
||||
[[self window] setTitle:fmt(@"%@ Results", [py appName])];
|
||||
model = [app model];
|
||||
[[self window] setTitle:fmt(@"%@ Results", [model appName])];
|
||||
columnsMenu = [app columnsMenu];
|
||||
/* Put a cute iTunes-like bottom bar */
|
||||
[[self window] setContentBorderThickness:28 forEdge:NSMinYEdge];
|
||||
table = [[ResultTable alloc] initWithPyParent:py view:matches];
|
||||
statsLabel = [[StatsLabel alloc] initWithPyParent:py labelView:stats];
|
||||
problemDialog = [[ProblemDialog alloc] initWithPy:py];
|
||||
table = [[ResultTable alloc] initWithPyRef:[model resultTable] view:matches];
|
||||
statsLabel = [[StatsLabel alloc] initWithPyRef:[model statsLabel] view:stats];
|
||||
problemDialog = [[ProblemDialog alloc] initWithPyRef:[model problemDialog]];
|
||||
[self initResultColumns];
|
||||
[self fillColumnsMenu];
|
||||
[matches setTarget:self];
|
||||
[matches setDoubleAction:@selector(openClicked:)];
|
||||
[table setDeltaColumns:[Utils array2IndexSet:[py deltaColumns]]];
|
||||
[self adjustUIToLocalization];
|
||||
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(jobCompleted:) name:JobCompletedNotification object:nil];
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(jobStarted:) name:JobStarted object:nil];
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(jobInProgress:) name:JobInProgress object:nil];
|
||||
return self;
|
||||
@@ -55,28 +55,18 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
{
|
||||
}
|
||||
|
||||
- (NSString *)getScanErrorMessageForCode:(NSInteger)errorCode
|
||||
{
|
||||
if (errorCode == 0) {
|
||||
return nil;
|
||||
}
|
||||
if (errorCode == 3) {
|
||||
return TR(@"NoScannableFileMsg");
|
||||
}
|
||||
return TR(@"UnknownErrorMsg");
|
||||
}
|
||||
|
||||
/* Helpers */
|
||||
- (void)fillColumnsMenu
|
||||
{
|
||||
// The columns menu is supposed to be empty and initResultColumns must have been called
|
||||
for (NSTableColumn *col in _resultColumns)
|
||||
{
|
||||
NSMenuItem *mi = [columnsMenu addItemWithTitle:[[col headerCell] stringValue] action:@selector(toggleColumn:) keyEquivalent:@""];
|
||||
[mi setTag:[[col identifier] integerValue]];
|
||||
NSArray *menuItems = [[[table columns] model] menuItems];
|
||||
for (NSInteger i=0; i < [menuItems count]; i++) {
|
||||
NSArray *pair = [menuItems objectAtIndex:i];
|
||||
NSString *display = [pair objectAtIndex:0];
|
||||
BOOL marked = n2b([pair objectAtIndex:1]);
|
||||
NSMenuItem *mi = [columnsMenu addItemWithTitle:display action:@selector(toggleColumn:) keyEquivalent:@""];
|
||||
[mi setTarget:self];
|
||||
if ([[matches tableColumns] containsObject:col])
|
||||
[mi setState:NSOnState];
|
||||
[mi setState:marked ? NSOnState : NSOffState];
|
||||
[mi setTag:i];
|
||||
}
|
||||
[columnsMenu addItem:[NSMenuItem separatorItem]];
|
||||
NSMenuItem *mi = [columnsMenu addItemWithTitle:TR(@"Reset to Default")
|
||||
@@ -84,84 +74,15 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[mi setTarget:self];
|
||||
}
|
||||
|
||||
- (NSTableColumn *)getColumnForIdentifier:(NSInteger)aIdentifier title:(NSString *)aTitle width:(NSInteger)aWidth refCol:(NSTableColumn *)aColumn
|
||||
{
|
||||
NSNumber *n = [NSNumber numberWithInteger:aIdentifier];
|
||||
NSTableColumn *col = [[NSTableColumn alloc] initWithIdentifier:[n stringValue]];
|
||||
[col setWidth:aWidth];
|
||||
[col setEditable:NO];
|
||||
[[col dataCell] setFont:[[aColumn dataCell] font]];
|
||||
[[col headerCell] setStringValue:aTitle];
|
||||
[col setResizingMask:NSTableColumnUserResizingMask];
|
||||
[col setSortDescriptorPrototype:[[NSSortDescriptor alloc] initWithKey:[n stringValue] ascending:YES]];
|
||||
return col;
|
||||
}
|
||||
|
||||
//Returns an array of identifiers, in order.
|
||||
- (NSArray *)getColumnsOrder
|
||||
{
|
||||
NSMutableArray *result = [NSMutableArray array];
|
||||
for (NSTableColumn *col in [matches tableColumns]) {
|
||||
NSString *colId = [col identifier];
|
||||
[result addObject:colId];
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
- (NSDictionary *)getColumnsWidth
|
||||
{
|
||||
NSMutableDictionary *result = [NSMutableDictionary dictionary];
|
||||
for (NSTableColumn *col in [matches tableColumns]) {
|
||||
NSString *colId = [col identifier];
|
||||
NSNumber *width = [NSNumber numberWithDouble:[col width]];
|
||||
[result setObject:width forKey:colId];
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
- (void)restoreColumnsPosition:(NSArray *)aColumnsOrder widths:(NSDictionary *)aColumnsWidth
|
||||
{
|
||||
for (NSMenuItem *mi in [columnsMenu itemArray]) {
|
||||
if ([mi state] == NSOnState) {
|
||||
[self toggleColumn:mi];
|
||||
}
|
||||
}
|
||||
//Add columns and set widths
|
||||
for (NSString *colId in aColumnsOrder) {
|
||||
NSInteger colIndex = [colId integerValue];
|
||||
if ((colIndex == 0) && (![colId isEqual:@"0"])) {
|
||||
continue;
|
||||
}
|
||||
NSTableColumn *col = [_resultColumns objectAtIndex:colIndex];
|
||||
NSNumber *width = [aColumnsWidth objectForKey:[col identifier]];
|
||||
NSMenuItem *mi = [columnsMenu itemWithTag:colIndex];
|
||||
if (width) {
|
||||
[col setWidth:[width floatValue]];
|
||||
}
|
||||
[self toggleColumn:mi];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)sendMarkedToTrash:(BOOL)hardlinkDeleted
|
||||
{
|
||||
NSInteger mark_count = [[py getMarkCount] intValue];
|
||||
if (!mark_count) {
|
||||
return;
|
||||
}
|
||||
NSString *msg = TR(@"SendToTrashConfirmMsg");
|
||||
if (hardlinkDeleted) {
|
||||
msg = TR(@"HardlinkConfirmMsg");
|
||||
}
|
||||
if ([Dialogs askYesNo:[NSString stringWithFormat:msg,mark_count]] == NSAlertSecondButtonReturn) { // NO
|
||||
return;
|
||||
}
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[py setRemoveEmptyFolders:n2b([ud objectForKey:@"removeEmptyFolders"])];
|
||||
[model setRemoveEmptyFolders:n2b([ud objectForKey:@"removeEmptyFolders"])];
|
||||
if (hardlinkDeleted) {
|
||||
[py hardlinkMarked];
|
||||
[model hardlinkMarked];
|
||||
}
|
||||
else {
|
||||
[py deleteMarked];
|
||||
[model deleteMarked];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -172,18 +93,36 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[optionsSwitch setSelected:[table deltaValuesMode] forSegment:2];
|
||||
}
|
||||
|
||||
/* Actions */
|
||||
- (IBAction)clearIgnoreList:(id)sender
|
||||
- (void)showProblemDialog
|
||||
{
|
||||
NSInteger i = n2i([py getIgnoreListCount]);
|
||||
if (!i)
|
||||
return;
|
||||
NSString *msg = [NSString stringWithFormat:TR(@"ClearIgnoreListConfirmMsg"),i];
|
||||
if ([Dialogs askYesNo:msg] == NSAlertSecondButtonReturn) // NO
|
||||
return;
|
||||
[py clearIgnoreList];
|
||||
[problemDialog showWindow:self];
|
||||
}
|
||||
|
||||
- (void)adjustUIToLocalization
|
||||
{
|
||||
NSString *lang = [[NSBundle preferredLocalizationsFromArray:[[NSBundle mainBundle] localizations]] objectAtIndex:0];
|
||||
NSInteger seg1delta = 0;
|
||||
NSInteger seg2delta = 0;
|
||||
if ([lang isEqual:@"ru"]) {
|
||||
seg2delta = 20;
|
||||
}
|
||||
else if ([lang isEqual:@"uk"]) {
|
||||
seg2delta = 20;
|
||||
}
|
||||
else if ([lang isEqual:@"hy"]) {
|
||||
seg1delta = 20;
|
||||
}
|
||||
if (seg1delta || seg2delta) {
|
||||
[optionsSwitch setWidth:[optionsSwitch widthForSegment:0]+seg1delta forSegment:0];
|
||||
[optionsSwitch setWidth:[optionsSwitch widthForSegment:1]+seg2delta forSegment:1];
|
||||
NSSize s = [optionsToolbarItem maxSize];
|
||||
s.width += seg1delta + seg2delta;
|
||||
[optionsToolbarItem setMaxSize:s];
|
||||
[optionsToolbarItem setMinSize:s];
|
||||
}
|
||||
}
|
||||
|
||||
/* Actions */
|
||||
- (IBAction)changeOptions:(id)sender
|
||||
{
|
||||
NSInteger seg = [optionsSwitch selectedSegment];
|
||||
@@ -200,20 +139,10 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
- (IBAction)copyMarked:(id)sender
|
||||
{
|
||||
NSInteger mark_count = [[py getMarkCount] intValue];
|
||||
if (!mark_count)
|
||||
return;
|
||||
NSOpenPanel *op = [NSOpenPanel openPanel];
|
||||
[op setCanChooseFiles:NO];
|
||||
[op setCanChooseDirectories:YES];
|
||||
[op setCanCreateDirectories:YES];
|
||||
[op setAllowsMultipleSelection:NO];
|
||||
[op setTitle:TR(@"SelectCopyDestinationMsg")];
|
||||
if ([op runModal] == NSOKButton) {
|
||||
NSString *directory = [[op filenames] objectAtIndex:0];
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[py copyOrMove:b2n(YES) markedTo:directory recreatePath:[ud objectForKey:@"recreatePathType"]];
|
||||
}
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[model setRemoveEmptyFolders:n2b([ud objectForKey:@"removeEmptyFolders"])];
|
||||
[model setCopyMoveDestType:n2i([ud objectForKey:@"recreatePathType"])];
|
||||
[model copyMarked];
|
||||
}
|
||||
|
||||
- (IBAction)deleteMarked:(id)sender
|
||||
@@ -228,77 +157,53 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
- (IBAction)exportToXHTML:(id)sender
|
||||
{
|
||||
NSString *exported = [py exportToXHTMLwithColumns:[self getColumnsOrder]];
|
||||
NSString *exported = [model exportToXHTML];
|
||||
[[NSWorkspace sharedWorkspace] openFile:exported];
|
||||
}
|
||||
|
||||
- (IBAction)filter:(id)sender
|
||||
{
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[py setEscapeFilterRegexp:!n2b([ud objectForKey:@"useRegexpFilter"])];
|
||||
[py applyFilter:[filterField stringValue]];
|
||||
[model setEscapeFilterRegexp:!n2b([ud objectForKey:@"useRegexpFilter"])];
|
||||
[model applyFilter:[filterField stringValue]];
|
||||
}
|
||||
|
||||
- (IBAction)ignoreSelected:(id)sender
|
||||
{
|
||||
NSInteger selectedDupeCount = [table selectedDupeCount];
|
||||
if (!selectedDupeCount)
|
||||
return;
|
||||
NSString *msg = [NSString stringWithFormat:TR(@"IgnoreConfirmMsg"),selectedDupeCount];
|
||||
if ([Dialogs askYesNo:msg] == NSAlertSecondButtonReturn) // NO
|
||||
return;
|
||||
[py addSelectedToIgnoreList];
|
||||
[model addSelectedToIgnoreList];
|
||||
}
|
||||
|
||||
- (IBAction)invokeCustomCommand:(id)sender
|
||||
{
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
NSString *cmd = [ud stringForKey:@"CustomCommand"];
|
||||
if ((cmd != nil) && ([cmd length] > 0)) {
|
||||
[py invokeCommand:cmd];
|
||||
}
|
||||
else {
|
||||
[Dialogs showMessage:TR(@"NoCustomCommandMsg")];
|
||||
}
|
||||
[model invokeCustomCommand];
|
||||
}
|
||||
|
||||
- (IBAction)markAll:(id)sender
|
||||
{
|
||||
[py markAll];
|
||||
[model markAll];
|
||||
}
|
||||
|
||||
- (IBAction)markInvert:(id)sender
|
||||
{
|
||||
[py markInvert];
|
||||
[model markInvert];
|
||||
}
|
||||
|
||||
- (IBAction)markNone:(id)sender
|
||||
{
|
||||
[py markNone];
|
||||
[model markNone];
|
||||
}
|
||||
|
||||
- (IBAction)markSelected:(id)sender
|
||||
{
|
||||
[py toggleSelectedMark];
|
||||
[model toggleSelectedMark];
|
||||
}
|
||||
|
||||
- (IBAction)moveMarked:(id)sender
|
||||
{
|
||||
NSInteger mark_count = [[py getMarkCount] intValue];
|
||||
if (!mark_count)
|
||||
return;
|
||||
NSOpenPanel *op = [NSOpenPanel openPanel];
|
||||
[op setCanChooseFiles:NO];
|
||||
[op setCanChooseDirectories:YES];
|
||||
[op setCanCreateDirectories:YES];
|
||||
[op setAllowsMultipleSelection:NO];
|
||||
[op setTitle:TR(@"SelectMoveDestinationMsg")];
|
||||
if ([op runModal] == NSOKButton) {
|
||||
NSString *directory = [[op filenames] objectAtIndex:0];
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[py setRemoveEmptyFolders:n2b([ud objectForKey:@"removeEmptyFolders"])];
|
||||
[py copyOrMove:b2n(NO) markedTo:directory recreatePath:[ud objectForKey:@"recreatePathType"]];
|
||||
}
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
[model setRemoveEmptyFolders:n2b([ud objectForKey:@"removeEmptyFolders"])];
|
||||
[model setCopyMoveDestType:n2i([ud objectForKey:@"recreatePathType"])];
|
||||
[model moveMarked];
|
||||
}
|
||||
|
||||
- (IBAction)openClicked:(id)sender
|
||||
@@ -307,28 +212,22 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
return;
|
||||
}
|
||||
[matches selectRowIndexes:[NSIndexSet indexSetWithIndex:[matches clickedRow]] byExtendingSelection:NO];
|
||||
[py openSelected];
|
||||
[model openSelected];
|
||||
}
|
||||
|
||||
- (IBAction)openSelected:(id)sender
|
||||
{
|
||||
[py openSelected];
|
||||
[model openSelected];
|
||||
}
|
||||
|
||||
- (IBAction)removeMarked:(id)sender
|
||||
{
|
||||
int mark_count = [[py getMarkCount] intValue];
|
||||
if (!mark_count)
|
||||
return;
|
||||
NSString *msg = [NSString stringWithFormat:@"You are about to remove %d files from results. Continue?",mark_count];
|
||||
if ([Dialogs askYesNo:msg] == NSAlertSecondButtonReturn) // NO
|
||||
return;
|
||||
[py removeMarked];
|
||||
[model removeMarked];
|
||||
}
|
||||
|
||||
- (IBAction)removeSelected:(id)sender
|
||||
{
|
||||
[table removeSelected];
|
||||
[model removeSelected];
|
||||
}
|
||||
|
||||
- (IBAction)renameSelected:(id)sender
|
||||
@@ -338,14 +237,25 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[matches editColumn:col row:row withEvent:[NSApp currentEvent] select:YES];
|
||||
}
|
||||
|
||||
- (IBAction)reprioritizeResults:(id)sender
|
||||
{
|
||||
PrioritizeDialog *dlg = [[PrioritizeDialog alloc] initWithApp:model];
|
||||
NSInteger result = [NSApp runModalForWindow:[dlg window]];
|
||||
if (result == NSRunStoppedResponse) {
|
||||
[[dlg model] performReprioritization];
|
||||
}
|
||||
[dlg release];
|
||||
[[self window] makeKeyAndOrderFront:nil];
|
||||
}
|
||||
|
||||
- (IBAction)resetColumnsToDefault:(id)sender
|
||||
{
|
||||
// Virtual
|
||||
[[[table columns] model] resetToDefaults];
|
||||
}
|
||||
|
||||
- (IBAction)revealSelected:(id)sender
|
||||
{
|
||||
[py revealSelected];
|
||||
[model revealSelected];
|
||||
}
|
||||
|
||||
- (IBAction)saveResults:(id)sender
|
||||
@@ -353,49 +263,33 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
NSSavePanel *sp = [NSSavePanel savePanel];
|
||||
[sp setCanCreateDirectories:YES];
|
||||
[sp setAllowedFileTypes:[NSArray arrayWithObject:@"dupeguru"]];
|
||||
[sp setTitle:TR(@"SelectResultToSaveMsg")];
|
||||
[sp setTitle:TR(@"Select a file to save your results to")];
|
||||
if ([sp runModal] == NSOKButton) {
|
||||
[py saveResultsAs:[sp filename]];
|
||||
[model saveResultsAs:[sp filename]];
|
||||
[[app recentResults] addFile:[sp filename]];
|
||||
}
|
||||
}
|
||||
|
||||
- (IBAction)startDuplicateScan:(id)sender
|
||||
{
|
||||
if ([py resultsAreModified]) {
|
||||
if ([Dialogs askYesNo:TR(@"ReallyWantToContinueMsg")] == NSAlertSecondButtonReturn) // NO
|
||||
if ([model resultsAreModified]) {
|
||||
if ([Dialogs askYesNo:TR(@"You have unsaved results, do you really want to continue?")] == NSAlertSecondButtonReturn) // NO
|
||||
return;
|
||||
}
|
||||
[self setScanOptions];
|
||||
NSInteger r = n2i([py doScan]);
|
||||
NSString *errorMsg = [self getScanErrorMessageForCode:r];
|
||||
if (errorMsg != nil) {
|
||||
[[ProgressController mainProgressController] hide];
|
||||
[Dialogs showMessage:errorMsg];
|
||||
}
|
||||
[model doScan];
|
||||
}
|
||||
|
||||
- (IBAction)switchSelected:(id)sender
|
||||
{
|
||||
[py makeSelectedReference];
|
||||
[model makeSelectedReference];
|
||||
}
|
||||
|
||||
- (IBAction)toggleColumn:(id)sender
|
||||
{
|
||||
NSMenuItem *mi = sender;
|
||||
NSString *colId = [NSString stringWithFormat:@"%d",[mi tag]];
|
||||
NSTableColumn *col = [matches tableColumnWithIdentifier:colId];
|
||||
if (col == nil) {
|
||||
//Add Column
|
||||
col = [_resultColumns objectAtIndex:[mi tag]];
|
||||
[matches addTableColumn:col];
|
||||
[mi setState:NSOnState];
|
||||
}
|
||||
else {
|
||||
//Remove column
|
||||
[matches removeTableColumn:col];
|
||||
[mi setState:NSOffState];
|
||||
}
|
||||
BOOL checked = [[[table columns] model] toggleMenuItem:[mi tag]];
|
||||
[mi setState:checked ? NSOnState : NSOffState];
|
||||
}
|
||||
|
||||
- (IBAction)toggleDetailsPanel:(id)sender
|
||||
@@ -416,45 +310,43 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
[self updateOptionSegments];
|
||||
}
|
||||
|
||||
/* Notifications */
|
||||
- (void)jobCompleted:(NSNotification *)aNotification
|
||||
- (IBAction)toggleQuicklookPanel:(id)sender
|
||||
{
|
||||
id lastAction = [[ProgressController mainProgressController] jobId];
|
||||
if ([lastAction isEqualTo:jobCopy]) {
|
||||
if ([py scanWasProblematic]) {
|
||||
[problemDialog showWindow:self];
|
||||
}
|
||||
else {
|
||||
[Dialogs showMessage:TR(@"CopySuccessMsg")];
|
||||
}
|
||||
}
|
||||
else if ([lastAction isEqualTo:jobMove]) {
|
||||
if ([py scanWasProblematic]) {
|
||||
[problemDialog showWindow:self];
|
||||
}
|
||||
else {
|
||||
[Dialogs showMessage:TR(@"MoveSuccessMsg")];
|
||||
}
|
||||
}
|
||||
else if ([lastAction isEqualTo:jobDelete]) {
|
||||
if ([py scanWasProblematic]) {
|
||||
[problemDialog showWindow:self];
|
||||
}
|
||||
else {
|
||||
[Dialogs showMessage:TR(@"SendToTrashSuccessMsg")];
|
||||
}
|
||||
}
|
||||
else if ([lastAction isEqualTo:jobScan]) {
|
||||
NSInteger rowCount = [[table py] numberOfRows];
|
||||
if (rowCount == 0) {
|
||||
[Dialogs showMessage:TR(@"NoDuplicateFoundMsg")];
|
||||
}
|
||||
if ([QLPreviewPanel sharedPreviewPanelExists] && [[QLPreviewPanel sharedPreviewPanel] isVisible]) {
|
||||
[[QLPreviewPanel sharedPreviewPanel] orderOut:nil];
|
||||
}
|
||||
else {
|
||||
[[QLPreviewPanel sharedPreviewPanel] makeKeyAndOrderFront:nil];
|
||||
}
|
||||
}
|
||||
|
||||
/* Quicklook */
|
||||
- (BOOL)acceptsPreviewPanelControl:(QLPreviewPanel *)panel;
|
||||
{
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (void)beginPreviewPanelControl:(QLPreviewPanel *)panel
|
||||
{
|
||||
// This document is now responsible of the preview panel
|
||||
// It is allowed to set the delegate, data source and refresh panel.
|
||||
previewPanel = [panel retain];
|
||||
panel.delegate = table;
|
||||
panel.dataSource = table;
|
||||
}
|
||||
|
||||
- (void)endPreviewPanelControl:(QLPreviewPanel *)panel
|
||||
{
|
||||
// This document loses its responsisibility on the preview panel
|
||||
// Until the next call to -beginPreviewPanelControl: it must not
|
||||
// change the panel's delegate, data source or refresh it.
|
||||
[previewPanel release];
|
||||
previewPanel = nil;
|
||||
}
|
||||
|
||||
- (void)jobInProgress:(NSNotification *)aNotification
|
||||
{
|
||||
[Dialogs showMessage:TR(@"TaskHangingMsg")];
|
||||
[Dialogs showMessage:TR(@"A previous action is still hanging in there. You can't start a new one yet. Wait a few seconds, then try again.")];
|
||||
}
|
||||
|
||||
- (void)jobStarted:(NSNotification *)aNotification
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -10,10 +10,8 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "HSGUIController.h"
|
||||
#import "PyStatsLabel.h"
|
||||
|
||||
@interface StatsLabel : HSGUIController
|
||||
{
|
||||
NSTextField *labelView;
|
||||
}
|
||||
- (id)initWithPyParent:(id)aPyParent labelView:(NSTextField *)aLabelView;
|
||||
- (PyStatsLabel *)py;
|
||||
@interface StatsLabel : HSGUIController {}
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef view:(NSTextField *)aLabelView;
|
||||
- (PyStatsLabel *)model;
|
||||
- (NSTextField *)labelView;
|
||||
@end
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -10,29 +10,25 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "Utils.h"
|
||||
|
||||
@implementation StatsLabel
|
||||
- (id)initWithPyParent:(id)aPyParent labelView:(NSTextField *)aLabelView
|
||||
- (id)initWithPyRef:(PyObject *)aPyRef view:(NSTextField *)aLabelView
|
||||
{
|
||||
self = [super initWithPyClassName:@"PyStatsLabel" pyParent:aPyParent];
|
||||
labelView = [aLabelView retain];
|
||||
[self connect];
|
||||
return self;
|
||||
return [super initWithPyRef:aPyRef wrapperClass:[PyStatsLabel class]
|
||||
callbackClassName:@"StatsLabelView" view:aLabelView];
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
- (PyStatsLabel *)model
|
||||
{
|
||||
[self disconnect];
|
||||
[labelView release];
|
||||
[super dealloc];
|
||||
return (PyStatsLabel *)model;
|
||||
}
|
||||
|
||||
- (PyStatsLabel *)py
|
||||
- (NSTextField *)labelView
|
||||
{
|
||||
return (PyStatsLabel *)py;
|
||||
return (NSTextField *)view;
|
||||
}
|
||||
|
||||
/* Python --> Cocoa */
|
||||
- (void)refresh
|
||||
{
|
||||
[labelView setStringValue:[[self py] display]];
|
||||
[[self labelView] setStringValue:[[self model] display]];
|
||||
}
|
||||
@end
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
|
||||
/* Class = "NSPanel"; title = "Details of Selected File"; ObjectID = "5"; */
|
||||
"5.title" = "Details of Selected File";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Selected"; ObjectID = "9"; */
|
||||
"9.headerCell.title" = "Ausgewählt";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Reference"; ObjectID = "10"; */
|
||||
"10.headerCell.title" = "Referenz";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Attribute"; ObjectID = "11"; */
|
||||
"11.headerCell.title" = "Attribut";
|
||||
@@ -1,23 +0,0 @@
|
||||
/* Class = "NSTableColumn"; headerCell.title = "State"; ObjectID = "13"; */
|
||||
"13.headerCell.title" = "Zustand";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Name"; ObjectID = "15"; */
|
||||
"15.headerCell.title" = "Name";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Scan"; ObjectID = "48"; */
|
||||
"48.title" = "Scan";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Normal"; ObjectID = "55"; */
|
||||
"55.title" = "Normal";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Reference"; ObjectID = "56"; */
|
||||
"56.title" = "Referenz";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Excluded"; ObjectID = "57"; */
|
||||
"57.title" = "Ausgeschlossen";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Select folders to scan and press \"Scan\"."; ObjectID = "71"; */
|
||||
"71.title" = "Zu scannende Ordner auswählen und \"Scan\" drücken.";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Load Results"; ObjectID = "73"; */
|
||||
"73.title" = "Lade Ergebnisse";
|
||||
@@ -1,11 +0,0 @@
|
||||
/* Class = "NSWindow"; title = "Sorry, I must insist"; ObjectID = "1"; */
|
||||
"1.title" = "Entschuldigung, ich muss darauf beharren";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "This reminder showed up because:
1. You are processing more than 100 duplicates
2. You have not yet contributed to dupeGuru
3. There are unpaid hours in the project"; ObjectID = "4"; */
|
||||
"4.title" = "Diese Erinnerung erschien, weil:\n\n1. Mehr als 100 Duplikate verarbeitet wurden\n2. Sie noch nicht an dupeGuru gespendet haben\n3. Es unbezahlte Arbeitstunden im Projekt gibt";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "It seems that you found a lot of duplicates. Nice! I must insist, however, that contributions are expected when there are unpaid hours on the project.
You might think \"but I'm only going to use this once, I don't have to contribute\". The problem is that most people use dupeGuru only once in a while. If everyone thinks like that, dupeGuru development cannot be funded.
If you can't afford to contribute, you can ignore this reminder or send me an e-mail at hsoft@hardcoded.net so I can give you a key to remove this popup."; ObjectID = "6"; */
|
||||
"6.title" = "Scheinbar haben Sie eine Menge Duplikate gefunden. Schön! Ich muss Sie jedoch daran erinnern das Spenden gewünscht werden, wenn noch nicht alle Arbeitsstunden bezahlt wurden.\n\nSie denken vielleicht \"aber ich nutze dieses Programm doch nur einmal, da brauche ich nicht zu spenden\". Das Problem ist, das die meisten Menschen dupeGuru nur sehr selten nutzen. Wenn jeder so denkt kann die Entwicklung von dupeGuru nicht finanziert werden. Aufgrund dieser, dem Wesen von dupeGuru innenliegenden Eigenschaft, muss ich hier auf Ihre Unterstützung bestehen.\n\nWenn Sie es sich nicht leisten können zu spenden, können Sie diese Erinnerung entweder ignorieren oder mir eine Nachricht an hsoft@hardcoded.net schicken, damit ich ihnen einen Schlüssel gebe um diesen Hinweis zu entfernen.";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Contribute"; ObjectID = "10"; */
|
||||
"10.title" = "Spenden";
|
||||
@@ -1,63 +0,0 @@
|
||||
"Add New Folder..." = "Add New Folder...";
|
||||
"Load from file..." = "Load from file...";
|
||||
"Reset to Default" = "Reset to Default";
|
||||
|
||||
"Add iTunes Directory" = "Add iTunes Directory";
|
||||
"Remove Dead Tracks in iTunes" = "Remove Dead Tracks in iTunes";
|
||||
|
||||
"Add iPhoto Library" = "Add iPhoto Library";
|
||||
"Clear Picture Cache" = "Bildzwischenspeicher leeren";
|
||||
|
||||
/* Columns */
|
||||
"Folder" = "Ordner";
|
||||
"Size (KB)" = "Größe (KB)";
|
||||
"Size (MB)" = "Größe (MB)";
|
||||
"Kind" = "Typ";
|
||||
"Modification" = "Modifikation";
|
||||
"Match %" = "Übereinstimmung %";
|
||||
"Words Used" = "Wörter genutzt";
|
||||
"Dupe Count" = "Anzahl Duplikate";
|
||||
|
||||
"Time" = "Zeit";
|
||||
"Bitrate" = "Bitrate";
|
||||
"Sample Rate" = "Abtastrate";
|
||||
"Title" = "Titel";
|
||||
"Artist" = "Künstler";
|
||||
"Album" = "Album";
|
||||
"Genre" = "Genre";
|
||||
"Year" = "Jahr";
|
||||
"Track Number" = "Stück Nummer";
|
||||
"Comment" = "Kommentar";
|
||||
|
||||
"Dimensions" = "Dimensionen";
|
||||
|
||||
/* Messages */
|
||||
"SelectResultToLoadMsg" = "Wählen Sie eine Ergebnisliste zum Laden aus.";
|
||||
"SelectCopyDestinationMsg" = "Select a directory to copy marked files to";
|
||||
"SelectMoveDestinationMsg" = "Select a directory to move marked files to";
|
||||
"SelectResultToSaveMsg" = "Datei zum Speichern der Ergebnisliste auswählen.";
|
||||
"SelectFolderToAddMsg" = "Wählen Sie einen Ordner aus, um ihn der Scanliste hinzuzufügen.";
|
||||
"ReallyWantToQuitMsg" = "Sie haben ungespeicherte Ergebnisse. Wollen Sie wirklich beenden?";
|
||||
"ReallyWantToContinueMsg" = "Sie haben ungespeicherte Ergebnisse. Möchten Sie wirklich fortfahren?";
|
||||
"FolderAlreadyInListMsg" = "'%@' already is in the list.";
|
||||
"FolderDoesNotExistMsg" = "'%@' does not exist.";
|
||||
"FileRemovalConfirmMsg" = "{} Dateien werden aus der Ergebnisliste entfernt. Fortfahren?";
|
||||
"FilenameAlreadyExistsMsg" = "The name '%@' already exists.";
|
||||
"NoScannableFileMsg" = "Der ausgewählte Ordner enthält keine scannbare Dateien.";
|
||||
"UnknownErrorMsg" = "Unknown Error.";
|
||||
"SendToTrashConfirmMsg" = "{} Dateien werden in den Mülleimer zu verschoben. Fortfahren?";
|
||||
"HardlinkConfirmMsg" = "{} Dateien werden gelöscht und mit physikalischen Verknüpfungen ersetzt. Fortfahren?";
|
||||
"ClearIgnoreListConfirmMsg" = "Möchten Sie wirklich alle {} Einträge aus der Ignorier-Liste löschen?";
|
||||
"IgnoreConfirmMsg" = "%d Dateien werden in zukünftigen Scans ignoriert werden. Fortfahren?";
|
||||
"NoCustomCommandMsg" = "Sie haben keinen eigenen Befehl erstellt. Bitte in den Einstellungen konfigurieren.";
|
||||
"CopySuccessMsg" = "All marked files were copied sucessfully.";
|
||||
"MoveSuccessMsg" = "All marked files were moved sucessfully.";
|
||||
"SendToTrashSuccessMsg" = "All marked files were sucessfully sent to Trash.";
|
||||
"NoDuplicateFoundMsg" = "Keine Duplikate gefunden.";
|
||||
"TaskHangingMsg" = "Eine vorherige Aktion ist noch in der Bearbeitung. Sie können noch keine Neue starten. Warten Sie einige Sekunden und versuchen es erneut.";
|
||||
|
||||
"RemoveDeadTracksConfirmMsg" = "Your iTunes Library contains %d dead tracks ready to be removed. Continue?";
|
||||
"NoDeadTrackMsg" = "You have no dead tracks in your iTunes Library";
|
||||
|
||||
"IPhotoAppNotFoundMsg" = "The iPhoto application couldn't be found.";
|
||||
"ClearPictureCacheConfirmMsg" = "Möchten Sie wirklich alle zwischengespeicherten Bildanalysen entfernen?";
|
||||
@@ -1,174 +0,0 @@
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "5"; */
|
||||
"5.title" = "Alle nach vorne bringen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Window"; ObjectID = "19"; */
|
||||
"19.title" = "Fenster";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "23"; */
|
||||
"23.title" = "Im Dock ablegen";
|
||||
|
||||
/* Class = "NSMenu"; title = "Window"; ObjectID = "24"; */
|
||||
"24.title" = "Fenster";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "About dupeGuru"; ObjectID = "58"; */
|
||||
"58.title" = "Über dupeGuru";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Help"; ObjectID = "103"; */
|
||||
"103.title" = "Hilfe";
|
||||
|
||||
/* Class = "NSMenu"; title = "Help"; ObjectID = "106"; */
|
||||
"106.title" = "Hilfe";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "dupeGuru Help"; ObjectID = "111"; */
|
||||
"111.title" = "dupeGuru Hilfe";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Hide dupeGuru"; ObjectID = "134"; */
|
||||
"134.title" = "dupeGuru ausblenden";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Quit dupeGuru"; ObjectID = "136"; */
|
||||
"136.title" = "dupeGuru beenden";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "145"; */
|
||||
"145.title" = "Andere ausblenden";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "150"; */
|
||||
"150.title" = "Alle einblenden";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "197"; */
|
||||
"197.title" = "Zoomen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Details Panel"; ObjectID = "398"; */
|
||||
"398.title" = "Details Panel";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Preferences..."; ObjectID = "541"; */
|
||||
"541.title" = "Preferences...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Folder Selection Window"; ObjectID = "579"; */
|
||||
"579.title" = "Folder Selection Window";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Actions"; ObjectID = "597"; */
|
||||
"597.title" = "Aktionen";
|
||||
|
||||
/* Class = "NSMenu"; title = "Actions"; ObjectID = "598"; */
|
||||
"598.title" = "Aktionen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Send Marked to Trash"; ObjectID = "599"; */
|
||||
"599.title" = "Send Marked to Trash";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Move Marked to..."; ObjectID = "600"; */
|
||||
"600.title" = "Verschiebe Markierte nach...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Copy Marked to..."; ObjectID = "601"; */
|
||||
"601.title" = "Kopiere Markierte nach...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Make Selected Reference"; ObjectID = "602"; */
|
||||
"602.title" = "Mache Ausgewählte zur Referenz";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Marked from Results"; ObjectID = "603"; */
|
||||
"603.title" = "Entferne Markierte aus den Ergebnissen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Selected from Results"; ObjectID = "605"; */
|
||||
"605.title" = "Entferne Ausgewählte aus den Ergebnissen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Columns"; ObjectID = "618"; */
|
||||
"618.title" = "Spalten";
|
||||
|
||||
/* Class = "NSMenu"; title = "Columns"; ObjectID = "619"; */
|
||||
"619.title" = "Spalten";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Open Selected with Default Application"; ObjectID = "708"; */
|
||||
"708.title" = "Öffne Ausgewählte mit Standardanwendung";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Reveal Selected in Finder"; ObjectID = "710"; */
|
||||
"710.title" = "Reveal Selected in Finder";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Add Selected to Ignore List"; ObjectID = "922"; */
|
||||
"922.title" = "Füge Ausgewählte der Ignorier-Liste hinzu";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Close Window"; ObjectID = "924"; */
|
||||
"924.title" = "Fenster Schließen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Start Duplicate Scan"; ObjectID = "926"; */
|
||||
"926.title" = "Start Duplicate Scan";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Clear Ignore List"; ObjectID = "927"; */
|
||||
"927.title" = "Ignorier-Liste leeren";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Rename Selected"; ObjectID = "933"; */
|
||||
"933.title" = "Ausgewählte umbenennen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Export Results to XHTML"; ObjectID = "947"; */
|
||||
"947.title" = "Export Results to XHTML";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Check for update..."; ObjectID = "950"; */
|
||||
"950.title" = "Check for update...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Mode"; ObjectID = "959"; */
|
||||
"959.title" = "Mode";
|
||||
|
||||
/* Class = "NSMenu"; title = "Mode"; ObjectID = "960"; */
|
||||
"960.title" = "Mode";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Show Dupes Only"; ObjectID = "961"; */
|
||||
"961.title" = "Nur Duplikate anzeigen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Show Delta Values"; ObjectID = "962"; */
|
||||
"962.title" = "Zeige Deltawerte";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "965"; */
|
||||
"965.title" = "Bearbeiten";
|
||||
|
||||
/* Class = "NSMenu"; title = "Edit"; ObjectID = "966"; */
|
||||
"966.title" = "Bearbeiten";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "985"; */
|
||||
"985.title" = "Ausschneiden";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "986"; */
|
||||
"986.title" = "Kopieren";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "991"; */
|
||||
"991.title" = "Einsetzen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Mark All"; ObjectID = "1011"; */
|
||||
"1011.title" = "Alles markieren";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Mark None"; ObjectID = "1012"; */
|
||||
"1012.title" = "Nichts markieren";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Invert Marking"; ObjectID = "1013"; */
|
||||
"1013.title" = "Markierung invertieren";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Mark Selected"; ObjectID = "1014"; */
|
||||
"1014.title" = "Ausgewählte markieren";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "dupeGuru Website"; ObjectID = "1023"; */
|
||||
"1023.title" = "dupeGuru Website";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Invoke Custom Command"; ObjectID = "1177"; */
|
||||
"1177.title" = "Eigenen Befehl ausführen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "File"; ObjectID = "1203"; */
|
||||
"1203.title" = "Ablage";
|
||||
|
||||
/* Class = "NSMenu"; title = "File"; ObjectID = "1204"; */
|
||||
"1204.title" = "Ablage";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Load Results..."; ObjectID = "1205"; */
|
||||
"1205.title" = "Lade Ergebnisse...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Save Results..."; ObjectID = "1206"; */
|
||||
"1206.title" = "Speichere Ergebnisse...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Delete Marked and Replace with Hardlinks"; ObjectID = "1227"; */
|
||||
"1227.title" = "Lösche Markierte und ersetze mit Hardlinks";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Load Recent Results"; ObjectID = "1239"; */
|
||||
"1239.title" = "Lade letzte Ergebnisse";
|
||||
|
||||
/* Class = "NSMenu"; title = "Load Recent Results"; ObjectID = "1240"; */
|
||||
"1240.title" = "Lade letzte Ergebnisse";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Results Window"; ObjectID = "1272"; */
|
||||
"1272.title" = "Ergebnisfenster";
|
||||
@@ -1,18 +0,0 @@
|
||||
|
||||
/* Class = "NSWindow"; title = "Problems!"; ObjectID = "1"; */
|
||||
"1.title" = "Probleme!";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "There were problems processing some (or all) of the files. The cause of these problems are described in the table below. Those files were not removed from your results."; ObjectID = "4"; */
|
||||
"4.title" = "Es gab Probleme bei der Verarbeitung einiger (aller) Dateien. Der Grund der Probleme ist unten in der Tabelle beschrieben.";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "File Path"; ObjectID = "10"; */
|
||||
"10.headerCell.title" = "Dateipfad";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Error Message"; ObjectID = "11"; */
|
||||
"11.headerCell.title" = "Fehlermeldung";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Close"; ObjectID = "19"; */
|
||||
"19.title" = "Schließen";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Reveal Selected"; ObjectID = "21"; */
|
||||
"21.title" = "Zeige Markierte";
|
||||
@@ -1,99 +0,0 @@
|
||||
|
||||
/* Class = "NSWindow"; title = "dupeGuru Results"; ObjectID = "1"; */
|
||||
"1.title" = "dupeGuru Results";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Marked: 0 files, 0 B. Total: 0 files, 0 B."; ObjectID = "6"; */
|
||||
"6.title" = "Marked: 0 files, 0 B. Total: 0 files, 0 B.";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Name"; ObjectID = "11"; */
|
||||
"11.headerCell.title" = "Name";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Options"; ObjectID = "15"; */
|
||||
"15.label" = "Options";
|
||||
|
||||
/* Class = "NSToolbarItem"; paletteLabel = "Options"; ObjectID = "15"; */
|
||||
"15.paletteLabel" = "Options";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Filter"; ObjectID = "16"; */
|
||||
"16.label" = "Filter";
|
||||
|
||||
/* Class = "NSToolbarItem"; paletteLabel = "Filter"; ObjectID = "16"; */
|
||||
"16.paletteLabel" = "Filter";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Action"; ObjectID = "17"; */
|
||||
"17.label" = "Action";
|
||||
|
||||
/* Class = "NSToolbarItem"; paletteLabel = "Action"; ObjectID = "17"; */
|
||||
"17.paletteLabel" = "Action";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Directories"; ObjectID = "19"; */
|
||||
"19.label" = "Directories";
|
||||
|
||||
/* Class = "NSToolbarItem"; paletteLabel = "Directories"; ObjectID = "19"; */
|
||||
"19.paletteLabel" = "Directories";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Delete Marked and Replace with Hardlinks"; ObjectID = "27"; */
|
||||
"27.title" = "Lösche Markierte und ersetze mit Hardlinks";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Send Marked to Trash"; ObjectID = "29"; */
|
||||
"29.title" = "Send Marked to Trash";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Move Marked to..."; ObjectID = "30"; */
|
||||
"30.title" = "Verschiebe Markierte nach...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Copy Marked to..."; ObjectID = "31"; */
|
||||
"31.title" = "Kopiere Markierte nach...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Marked from Results"; ObjectID = "32"; */
|
||||
"32.title" = "Entferne Markierte aus den Ergebnissen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Selected from Results"; ObjectID = "34"; */
|
||||
"34.title" = "Entferne Ausgewählte aus den Ergebnissen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Add Selected to Ignore List"; ObjectID = "35"; */
|
||||
"35.title" = "Füge Ausgewählte der Ignorier-Liste hinzu";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Make Selected Reference"; ObjectID = "36"; */
|
||||
"36.title" = "Mache Ausgewählte zur Referenz";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Open Selected with Default Application"; ObjectID = "38"; */
|
||||
"38.title" = "Öffne Ausgewählte mit Standardanwendung";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Reveal Selected in Finder"; ObjectID = "39"; */
|
||||
"39.title" = "Reveal Selected in Finder";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Rename Selected"; ObjectID = "40"; */
|
||||
"40.title" = "Ausgewählte umbenennen";
|
||||
|
||||
/* Class = "NSSearchFieldCell"; placeholderString = "Filter"; ObjectID = "42"; */
|
||||
"42.placeholderString" = "Filter";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[0] = "Details"; ObjectID = "44"; */
|
||||
"44.labels[0]" = "Details";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[1] = "Dupes Only"; ObjectID = "44"; */
|
||||
"44.labels[1]" = "Dupes Only";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[2] = "Delta"; ObjectID = "44"; */
|
||||
"44.labels[2]" = "Delta";
|
||||
|
||||
/* Class = "NSMenu"; title = "Menu"; ObjectID = "67"; */
|
||||
"67.title" = "Menu";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Add Selected to Ignore List"; ObjectID = "68"; */
|
||||
"68.title" = "Füge Ausgewählte der Ignorier-Liste hinzu";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Rename Selected"; ObjectID = "70"; */
|
||||
"70.title" = "Ausgewählte umbenennen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Selected from Results"; ObjectID = "71"; */
|
||||
"71.title" = "Entferne Ausgewählte aus den Ergebnissen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Make Selected Reference"; ObjectID = "72"; */
|
||||
"72.title" = "Mache Ausgewählte zur Referenz";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Reveal Selected in Finder"; ObjectID = "73"; */
|
||||
"73.title" = "Reveal Selected in Finder";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Open Selected with Default Application"; ObjectID = "74"; */
|
||||
"74.title" = "Öffne Ausgewählte mit Standardanwendung";
|
||||
@@ -1,31 +0,0 @@
|
||||
"Collecting files to scan" = "Sammle Dateien zum Scannen";
|
||||
"%s (%d discarded)" = "%s (%d verworfen)";
|
||||
"Scanning for duplicates" = "Suche nach Duplikaten";
|
||||
"Loading" = "Laden";
|
||||
"Moving" = "Verschieben";
|
||||
"Copying" = "Kopieren";
|
||||
"Sending to Trash" = "Verschiebe in den Mülleimer";
|
||||
"0 matches found" = "0 Paare gefunden";
|
||||
"%d matches found" = "%d Paare gefunden";
|
||||
"Read size of %d/%d files" = "Lese Größe von %d/%d Dateien";
|
||||
"Grouped %d/%d matches" = "%d/%d Paare gruppiert";
|
||||
"%d / %d (%s / %s) duplicates marked." = "%d / %d (%s / %s) Duplikate markiert.";
|
||||
" filter: %s" = " Filter: %s";
|
||||
"Read metadata of %d/%d files" = "Lese Metadaten von %d/%d Dateien";
|
||||
"Removing false matches" = "Entferne Falschpositive.";
|
||||
"Processed %d/%d matches against the ignore list" = "Verarbeitung von %d/%d Paaren gegen die Ignorier-Liste";
|
||||
"Doing group prioritization" = "Gruppenpriorisierung";
|
||||
|
||||
"Continue" = "Fortfahren";
|
||||
"Continue ({})" = "Fortfahren ({})";
|
||||
|
||||
"Analyzed %d/%d pictures" = "Analysiere %d/%d Bilder";
|
||||
"Preparing for matching" = "Vorbereitung auf den Vergleich";
|
||||
"Performed %d/%d chunk matches" = "Performed %d/%d chunk matches";
|
||||
"Verified %d/%d matches" = "%d/%d verifizierte Paare";
|
||||
|
||||
"Removing dead tracks from your iTunes Library" = "Entferne tote Stücke aus Ihrer iTunes Bibliothek.";
|
||||
"Scanning the iTunes Library" = "Scanne die iTunes Bibiliothek";
|
||||
|
||||
"Probing iPhoto. Don't touch it during the operation!" = "Untersuche iPhoto. Während der Operation nicht anfassen!";
|
||||
"Sending dupes to the Trash" = "Verschiebe Duplikate in den Mülleimer";
|
||||
@@ -1,34 +1,31 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10">
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1050</int>
|
||||
<string key="IBDocument.SystemVersion">10F569</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">788</string>
|
||||
<string key="IBDocument.AppKitVersion">1038.29</string>
|
||||
<string key="IBDocument.HIToolboxVersion">461.00</string>
|
||||
<int key="IBDocument.SystemTarget">1060</int>
|
||||
<string key="IBDocument.SystemVersion">11B26</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">1617</string>
|
||||
<string key="IBDocument.AppKitVersion">1138</string>
|
||||
<string key="IBDocument.HIToolboxVersion">566.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="NS.object.0">788</string>
|
||||
<string key="NS.object.0">1617</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<integer value="6"/>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.PluginDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array key="IBDocument.IntegratedClassDependencies">
|
||||
<string>NSView</string>
|
||||
<string>NSCustomObject</string>
|
||||
<string>NSScrollView</string>
|
||||
<string>NSWindowTemplate</string>
|
||||
<string>NSTextFieldCell</string>
|
||||
<string>NSTableHeaderView</string>
|
||||
<string>NSTableColumn</string>
|
||||
<string>NSScroller</string>
|
||||
<string>NSTableView</string>
|
||||
</array>
|
||||
<array key="IBDocument.PluginDependencies">
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.Metadata">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys" id="0">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="IBDocument.RootObjects" id="247693826">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</array>
|
||||
<dictionary class="NSMutableDictionary" key="IBDocument.Metadata"/>
|
||||
<array class="NSMutableArray" key="IBDocument.RootObjects" id="247693826">
|
||||
<object class="NSCustomObject" id="449947658">
|
||||
<string key="NSClassName">DetailsPanel</string>
|
||||
</object>
|
||||
@@ -50,28 +47,26 @@
|
||||
<object class="NSMutableString" key="NSViewClass">
|
||||
<characters key="NS.bytes">View</characters>
|
||||
</object>
|
||||
<string key="NSWindowContentMaxSize">{1.79769e+308, 1.79769e+308}</string>
|
||||
<nil key="NSUserInterfaceItemIdentifier"/>
|
||||
<string key="NSWindowContentMinSize">{451, 146}</string>
|
||||
<object class="NSView" key="NSWindowView" id="1027711962">
|
||||
<reference key="NSNextResponder"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<object class="NSMutableArray" key="NSSubviews">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSScrollView" id="362108788">
|
||||
<reference key="NSNextResponder" ref="1027711962"/>
|
||||
<int key="NSvFlags">274</int>
|
||||
<object class="NSMutableArray" key="NSSubviews">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSClipView" id="488480549">
|
||||
<reference key="NSNextResponder" ref="362108788"/>
|
||||
<int key="NSvFlags">2304</int>
|
||||
<object class="NSMutableArray" key="NSSubviews">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSTableView" id="251969872">
|
||||
<reference key="NSNextResponder" ref="488480549"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<string key="NSFrameSize">{449, 128}</string>
|
||||
<reference key="NSSuperview" ref="488480549"/>
|
||||
<reference key="NSWindow"/>
|
||||
<int key="NSTag">2</int>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTableHeaderView" key="NSHeaderView" id="374654484">
|
||||
@@ -79,6 +74,7 @@
|
||||
<int key="NSvFlags">256</int>
|
||||
<string key="NSFrameSize">{449, 17}</string>
|
||||
<reference key="NSSuperview" ref="110085834"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSTableView" ref="251969872"/>
|
||||
</object>
|
||||
<object class="_NSCornerView" key="NSCornerView" id="717380566">
|
||||
@@ -86,9 +82,9 @@
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{-26, 0}, {16, 17}}</string>
|
||||
<reference key="NSSuperview" ref="362108788"/>
|
||||
<reference key="NSWindow"/>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="NSTableColumns">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="NSTableColumns">
|
||||
<object class="NSTableColumn" id="920315484">
|
||||
<string key="NSIdentifier">0</string>
|
||||
<double key="NSWidth">70</double>
|
||||
@@ -200,7 +196,7 @@
|
||||
<bool key="NSIsResizeable">YES</bool>
|
||||
<reference key="NSTableView" ref="251969872"/>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<double key="NSIntercellSpacingWidth">3</double>
|
||||
<double key="NSIntercellSpacingHeight">2</double>
|
||||
<reference key="NSBackgroundColor" ref="666582600"/>
|
||||
@@ -222,10 +218,12 @@
|
||||
<int key="NSDraggingSourceMaskForNonLocal">0</int>
|
||||
<bool key="NSAllowsTypeSelect">YES</bool>
|
||||
<int key="NSTableViewDraggingDestinationStyle">0</int>
|
||||
<int key="NSTableViewGroupRowStyle">1</int>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{1, 17}, {449, 128}}</string>
|
||||
<reference key="NSSuperview" ref="362108788"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="251969872"/>
|
||||
<reference key="NSDocView" ref="251969872"/>
|
||||
<reference key="NSBGColor" ref="1015576963"/>
|
||||
@@ -236,6 +234,7 @@
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{-30, 17}, {15, 129}}</string>
|
||||
<reference key="NSSuperview" ref="362108788"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSTarget" ref="362108788"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSPercent">0.89375001192092896</double>
|
||||
@@ -245,6 +244,7 @@
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{-100, -100}, {394, 15}}</string>
|
||||
<reference key="NSSuperview" ref="362108788"/>
|
||||
<reference key="NSWindow"/>
|
||||
<int key="NSsFlags">1</int>
|
||||
<reference key="NSTarget" ref="362108788"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
@@ -253,23 +253,24 @@
|
||||
<object class="NSClipView" id="110085834">
|
||||
<reference key="NSNextResponder" ref="362108788"/>
|
||||
<int key="NSvFlags">2304</int>
|
||||
<object class="NSMutableArray" key="NSSubviews">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<reference ref="374654484"/>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{1, 0}, {449, 17}}</string>
|
||||
<reference key="NSSuperview" ref="362108788"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="374654484"/>
|
||||
<reference key="NSDocView" ref="374654484"/>
|
||||
<reference key="NSBGColor" ref="1015576963"/>
|
||||
<int key="NScvFlags">4</int>
|
||||
</object>
|
||||
<reference ref="717380566"/>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{451, 146}</string>
|
||||
<reference key="NSSuperview" ref="1027711962"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="488480549"/>
|
||||
<int key="NSsFlags">530</int>
|
||||
<int key="NSsFlags">133650</int>
|
||||
<reference key="NSVScroller" ref="733942317"/>
|
||||
<reference key="NSHScroller" ref="168632382"/>
|
||||
<reference key="NSContentView" ref="488480549"/>
|
||||
@@ -277,19 +278,20 @@
|
||||
<reference key="NSCornerView" ref="717380566"/>
|
||||
<bytes key="NSScrollAmts">QSAAAEEgAABBgAAAQYAAAA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{451, 146}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
</object>
|
||||
<string key="NSScreenRect">{{0, 0}, {1024, 746}}</string>
|
||||
<string key="NSScreenRect">{{0, 0}, {1920, 1058}}</string>
|
||||
<string key="NSMinSize">{451, 162}</string>
|
||||
<string key="NSMaxSize">{1.79769e+308, 1.79769e+308}</string>
|
||||
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
|
||||
<string key="NSFrameAutosaveName">DetailsPanel</string>
|
||||
<bool key="NSWindowIsRestorable">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBObjectContainer" key="IBDocument.Objects">
|
||||
<object class="NSMutableArray" key="connectionRecords">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="connectionRecords">
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">window</string>
|
||||
@@ -314,13 +316,12 @@
|
||||
</object>
|
||||
<int key="connectionID">22</int>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<object class="NSArray" key="orderedObjects">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array key="orderedObjects">
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">0</int>
|
||||
<reference key="object" ref="0"/>
|
||||
<array key="object" id="0"/>
|
||||
<reference key="children" ref="247693826"/>
|
||||
<nil key="parent"/>
|
||||
</object>
|
||||
@@ -339,70 +340,63 @@
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">5</int>
|
||||
<reference key="object" ref="476890502"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="1027711962"/>
|
||||
</object>
|
||||
</array>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">details</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">6</int>
|
||||
<reference key="object" ref="1027711962"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="362108788"/>
|
||||
</object>
|
||||
</array>
|
||||
<reference key="parent" ref="476890502"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">7</int>
|
||||
<reference key="object" ref="362108788"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="251969872"/>
|
||||
<reference ref="733942317"/>
|
||||
<reference ref="168632382"/>
|
||||
<reference ref="374654484"/>
|
||||
</object>
|
||||
</array>
|
||||
<reference key="parent" ref="1027711962"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">8</int>
|
||||
<reference key="object" ref="251969872"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="683288430"/>
|
||||
<reference ref="694550305"/>
|
||||
<reference ref="920315484"/>
|
||||
</object>
|
||||
</array>
|
||||
<reference key="parent" ref="362108788"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">9</int>
|
||||
<reference key="object" ref="683288430"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="649788063"/>
|
||||
</object>
|
||||
</array>
|
||||
<reference key="parent" ref="251969872"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">10</int>
|
||||
<reference key="object" ref="694550305"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="915876533"/>
|
||||
</object>
|
||||
</array>
|
||||
<reference key="parent" ref="251969872"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">11</int>
|
||||
<reference key="object" ref="920315484"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="402714943"/>
|
||||
</object>
|
||||
</array>
|
||||
<reference key="parent" ref="251969872"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
@@ -441,100 +435,41 @@
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">Application</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="flattenedProperties">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>-3.IBPluginDependency</string>
|
||||
<string>10.IBPluginDependency</string>
|
||||
<string>10.ImportedFromIB2</string>
|
||||
<string>11.IBPluginDependency</string>
|
||||
<string>11.ImportedFromIB2</string>
|
||||
<string>15.IBPluginDependency</string>
|
||||
<string>15.IBShouldRemoveOnLegacySave</string>
|
||||
<string>16.IBPluginDependency</string>
|
||||
<string>16.IBShouldRemoveOnLegacySave</string>
|
||||
<string>17.IBPluginDependency</string>
|
||||
<string>17.IBShouldRemoveOnLegacySave</string>
|
||||
<string>18.IBPluginDependency</string>
|
||||
<string>18.IBShouldRemoveOnLegacySave</string>
|
||||
<string>19.IBPluginDependency</string>
|
||||
<string>19.IBShouldRemoveOnLegacySave</string>
|
||||
<string>20.IBPluginDependency</string>
|
||||
<string>20.IBShouldRemoveOnLegacySave</string>
|
||||
<string>5.IBEditorWindowLastContentRect</string>
|
||||
<string>5.IBPluginDependency</string>
|
||||
<string>5.IBWindowTemplateEditedContentRect</string>
|
||||
<string>5.ImportedFromIB2</string>
|
||||
<string>5.windowTemplate.hasMinSize</string>
|
||||
<string>5.windowTemplate.minSize</string>
|
||||
<string>6.IBPluginDependency</string>
|
||||
<string>6.ImportedFromIB2</string>
|
||||
<string>7.IBPluginDependency</string>
|
||||
<string>7.ImportedFromIB2</string>
|
||||
<string>8.IBPluginDependency</string>
|
||||
<string>8.ImportedFromIB2</string>
|
||||
<string>9.IBPluginDependency</string>
|
||||
<string>9.ImportedFromIB2</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>{{109, 671}, {451, 146}}</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>{{109, 671}, {451, 146}}</string>
|
||||
<boolean value="YES"/>
|
||||
<boolean value="YES"/>
|
||||
<string>{451, 146}</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="unlocalizedProperties">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference key="dict.sortedKeys" ref="0"/>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
||||
<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="10.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="11.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="15.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="15.IBShouldRemoveOnLegacySave"/>
|
||||
<string key="16.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="16.IBShouldRemoveOnLegacySave"/>
|
||||
<string key="17.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="17.IBShouldRemoveOnLegacySave"/>
|
||||
<string key="18.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="18.IBShouldRemoveOnLegacySave"/>
|
||||
<string key="19.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="19.IBShouldRemoveOnLegacySave"/>
|
||||
<string key="20.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES" key="20.IBShouldRemoveOnLegacySave"/>
|
||||
<string key="5.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="5.IBWindowTemplateEditedContentRect">{{109, 671}, {451, 146}}</string>
|
||||
<string key="6.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="7.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="8.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="9.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
|
||||
<nil key="activeLocalization"/>
|
||||
<object class="NSMutableDictionary" key="localizations">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference key="dict.sortedKeys" ref="0"/>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">22</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">DetailsPanel</string>
|
||||
<string key="superclassName">HSWindowController</string>
|
||||
@@ -551,23 +486,7 @@
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../base/DetailsPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">DetailsPanel</string>
|
||||
<string key="superclassName">HSWindowController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">FirstResponder</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
<string key="minorKey">./Classes/DetailsPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
@@ -575,513 +494,16 @@
|
||||
<string key="superclassName">NSWindowController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../controllers/HSWindowController.h</string>
|
||||
<string key="minorKey">./Classes/HSWindowController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../views/HSOutlineView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="111130406">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../views/NSTableViewAdditions.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTableView</string>
|
||||
<reference key="sourceIdentifier" ref="111130406"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSActionCell</string>
|
||||
<string key="superclassName">NSCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="1032908129">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="335759815">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="293307974">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSCell</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSControl</string>
|
||||
<string key="superclassName">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="986876268">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSFormatter</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenu</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="697867603">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="1032908129"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="335759815"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="293307974"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="986876268"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDragging.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="697867603"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="781785525">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTableView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="23218279">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSError.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSPanel</string>
|
||||
<string key="superclassName">NSWindow</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSResponder</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSScrollView</string>
|
||||
<string key="superclassName">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSScroller</string>
|
||||
<string key="superclassName">NSControl</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSScroller.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTableColumn</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTableColumn.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTableHeaderView</string>
|
||||
<string key="superclassName">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTableHeaderView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTableView</string>
|
||||
<string key="superclassName">NSControl</string>
|
||||
<reference key="sourceIdentifier" ref="781785525"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTextFieldCell</string>
|
||||
<string key="superclassName">NSActionCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSClipView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<reference key="sourceIdentifier" ref="23218279"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindowController</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="NSMutableDictionary" key="actions">
|
||||
<string key="NS.key.0">showWindow:</string>
|
||||
<string key="NS.object.0">id</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="actionInfosByName">
|
||||
<string key="NS.key.0">showWindow:</string>
|
||||
<object class="IBActionInfo" key="NS.object.0">
|
||||
<string key="name">showWindow:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindowController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<integer value="1050" key="NS.object.0"/>
|
||||
<real value="1060" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
@@ -1089,10 +511,9 @@
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
|
||||
<integer value="3000" key="NS.object.0"/>
|
||||
<real value="4100" key="NS.object.0"/>
|
||||
</object>
|
||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||
<string key="IBDocument.LastKnownRelativeProjectPath">../dupeguru.xcodeproj</string>
|
||||
<int key="IBDocument.defaultPropertyAccessControl">3</int>
|
||||
</data>
|
||||
</archive>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,11 +0,0 @@
|
||||
/* Class = "NSWindow"; title = "Sorry, I must insist"; ObjectID = "1"; */
|
||||
"1.title" = "Sorry, I must insist";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "This reminder showed up because:
1. You are processing more than 100 duplicates
2. You have not yet contributed to dupeGuru
3. There are unpaid hours in the project"; ObjectID = "4"; */
|
||||
"4.title" = "This reminder showed up because:\n\n1. You are processing more than 100 duplicates\n2. You have not yet contributed to dupeGuru\n3. There are unpaid hours in the project";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "It seems that you found a lot of duplicates. Nice! I must insist, however, that contributions are expected when there are unpaid hours on the project.
You might think \"but I'm only going to use this once, I don't have to contribute\". The problem is that most people use dupeGuru only once in a while. If everyone thinks like that, dupeGuru development cannot be funded.
If you can't afford to contribute, you can ignore this reminder or send me an e-mail at hsoft@hardcoded.net so I can give you a key to remove this popup."; ObjectID = "6"; */
|
||||
"6.title" = "It seems that you found a lot of duplicates. Nice! I must insist, however, that contributions are expected when there are unpaid hours on the project.\n\nYou might think \"but I'm only going to use this once, I don't have to contribute\". The problem is that most people use dupeGuru only once in a while. If everyone thinks like that, dupeGuru development cannot be funded. It's because of this tendency inherent to dupeGuru's nature that I have to insist here.\n\nIf you can't afford to contribute, you can ignore this reminder or send me an e-mail at hsoft@hardcoded.net so I can give you a key to remove this popup.";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Contribute"; ObjectID = "10"; */
|
||||
"10.title" = "Contribute";
|
||||
@@ -1,945 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1050</int>
|
||||
<string key="IBDocument.SystemVersion">10J567</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">823</string>
|
||||
<string key="IBDocument.AppKitVersion">1038.35</string>
|
||||
<string key="IBDocument.HIToolboxVersion">462.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="NS.object.0">823</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<integer value="2"/>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.PluginDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.Metadata">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys" id="0">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSCustomObject" id="1001">
|
||||
<string key="NSClassName">ExtraFairwareReminder</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1003">
|
||||
<string key="NSClassName">FirstResponder</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1004">
|
||||
<string key="NSClassName">NSApplication</string>
|
||||
</object>
|
||||
<object class="NSWindowTemplate" id="1005">
|
||||
<int key="NSWindowStyleMask">1</int>
|
||||
<int key="NSWindowBacking">2</int>
|
||||
<string key="NSWindowRect">{{418, 295}, {480, 390}}</string>
|
||||
<int key="NSWTFlags">1081606144</int>
|
||||
<string key="NSWindowTitle">Sorry, I must insist</string>
|
||||
<string key="NSWindowClass">NSWindow</string>
|
||||
<nil key="NSViewClass"/>
|
||||
<string key="NSWindowContentMaxSize">{1.79769e+308, 1.79769e+308}</string>
|
||||
<object class="NSView" key="NSWindowView" id="1006">
|
||||
<reference key="NSNextResponder"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<object class="NSMutableArray" key="NSSubviews">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSTextField" id="359672030">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{17, 48}, {446, 85}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="855705720">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">272629760</int>
|
||||
<string key="NSContents">This reminder showed up because:
1. You are processing more than 100 duplicates
2. You have not yet contributed to dupeGuru
3. There are unpaid hours in the project</string>
|
||||
<object class="NSFont" key="NSSupport">
|
||||
<string key="NSName">LucidaGrande-Bold</string>
|
||||
<double key="NSSize">12</double>
|
||||
<int key="NSfFlags">16</int>
|
||||
</object>
|
||||
<reference key="NSControlView" ref="359672030"/>
|
||||
<object class="NSColor" key="NSBackgroundColor" id="732565682">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">controlColor</string>
|
||||
<object class="NSColor" key="NSColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSColor" key="NSTextColor" id="873511993">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">controlTextColor</string>
|
||||
<object class="NSColor" key="NSColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MAA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSTextField" id="450147645">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{17, 141}, {446, 229}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="307619415">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">205520896</int>
|
||||
<string key="NSContents">It seems that you found a lot of duplicates. Nice! I must insist, however, that contributions are expected when there are unpaid hours on the project.
You might think "but I'm only going to use this once, I don't have to contribute". The problem is that most people use dupeGuru only once in a while. If everyone thinks like that, dupeGuru development cannot be funded. It's because of this tendency inherent to dupeGuru's nature that I have to insist here.
If you can't afford to contribute, you can ignore this reminder or send me an e-mail at hsoft@hardcoded.net so I can give you a key to remove this popup.</string>
|
||||
<object class="NSFont" key="NSSupport">
|
||||
<string key="NSName">LucidaGrande</string>
|
||||
<double key="NSSize">12</double>
|
||||
<int key="NSfFlags">16</int>
|
||||
</object>
|
||||
<reference key="NSControlView" ref="450147645"/>
|
||||
<reference key="NSBackgroundColor" ref="732565682"/>
|
||||
<reference key="NSTextColor" ref="873511993"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="858267836">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{338, 12}, {128, 32}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="444055328">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents">Continue</string>
|
||||
<object class="NSFont" key="NSSupport" id="534597488">
|
||||
<string key="NSName">LucidaGrande</string>
|
||||
<double key="NSSize">13</double>
|
||||
<int key="NSfFlags">1044</int>
|
||||
</object>
|
||||
<reference key="NSControlView" ref="858267836"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="789504727">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{210, 12}, {128, 32}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="639557916">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents">Contribute</string>
|
||||
<reference key="NSSupport" ref="534597488"/>
|
||||
<reference key="NSControlView" ref="789504727"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string type="base64-UTF8" key="NSKeyEquivalent">DQ</string>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<string key="NSFrameSize">{480, 390}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
</object>
|
||||
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
|
||||
<string key="NSMaxSize">{1.79769e+308, 1.79769e+308}</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBObjectContainer" key="IBDocument.Objects">
|
||||
<object class="NSMutableArray" key="connectionRecords">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">contribute:</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="789504727"/>
|
||||
</object>
|
||||
<int key="connectionID">11</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">continue:</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="858267836"/>
|
||||
</object>
|
||||
<int key="connectionID">12</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">window</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="1005"/>
|
||||
</object>
|
||||
<int key="connectionID">13</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">continueButton</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="858267836"/>
|
||||
</object>
|
||||
<int key="connectionID">14</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<object class="NSArray" key="orderedObjects">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">0</int>
|
||||
<reference key="object" ref="0"/>
|
||||
<reference key="children" ref="1000"/>
|
||||
<nil key="parent"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-2</int>
|
||||
<reference key="object" ref="1001"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">File's Owner</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-1</int>
|
||||
<reference key="object" ref="1003"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">First Responder</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-3</int>
|
||||
<reference key="object" ref="1004"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">Application</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1</int>
|
||||
<reference key="object" ref="1005"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="1006"/>
|
||||
</object>
|
||||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">2</int>
|
||||
<reference key="object" ref="1006"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="450147645"/>
|
||||
<reference ref="359672030"/>
|
||||
<reference ref="858267836"/>
|
||||
<reference ref="789504727"/>
|
||||
</object>
|
||||
<reference key="parent" ref="1005"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">3</int>
|
||||
<reference key="object" ref="359672030"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="855705720"/>
|
||||
</object>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">4</int>
|
||||
<reference key="object" ref="855705720"/>
|
||||
<reference key="parent" ref="359672030"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">5</int>
|
||||
<reference key="object" ref="450147645"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="307619415"/>
|
||||
</object>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">6</int>
|
||||
<reference key="object" ref="307619415"/>
|
||||
<reference key="parent" ref="450147645"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">7</int>
|
||||
<reference key="object" ref="858267836"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="444055328"/>
|
||||
</object>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">8</int>
|
||||
<reference key="object" ref="444055328"/>
|
||||
<reference key="parent" ref="858267836"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">9</int>
|
||||
<reference key="object" ref="789504727"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="639557916"/>
|
||||
</object>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">10</int>
|
||||
<reference key="object" ref="639557916"/>
|
||||
<reference key="parent" ref="789504727"/>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="flattenedProperties">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>-1.IBPluginDependency</string>
|
||||
<string>-2.IBPluginDependency</string>
|
||||
<string>-3.IBPluginDependency</string>
|
||||
<string>1.IBEditorWindowLastContentRect</string>
|
||||
<string>1.IBPluginDependency</string>
|
||||
<string>1.IBWindowTemplateEditedContentRect</string>
|
||||
<string>1.NSWindowTemplate.visibleAtLaunch</string>
|
||||
<string>1.WindowOrigin</string>
|
||||
<string>1.editorWindowContentRectSynchronizationRect</string>
|
||||
<string>10.IBPluginDependency</string>
|
||||
<string>2.IBPluginDependency</string>
|
||||
<string>3.IBPluginDependency</string>
|
||||
<string>3.IBViewBoundsToFrameTransform</string>
|
||||
<string>4.IBPluginDependency</string>
|
||||
<string>5.IBPluginDependency</string>
|
||||
<string>5.IBViewBoundsToFrameTransform</string>
|
||||
<string>6.IBPluginDependency</string>
|
||||
<string>7.IBPluginDependency</string>
|
||||
<string>7.IBViewBoundsToFrameTransform</string>
|
||||
<string>8.IBPluginDependency</string>
|
||||
<string>9.IBPluginDependency</string>
|
||||
<string>9.IBViewBoundsToFrameTransform</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>{{418, 295}, {480, 390}}</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>{{418, 295}, {480, 390}}</string>
|
||||
<boolean value="NO"/>
|
||||
<string>{196, 240}</string>
|
||||
<string>{{357, 418}, {480, 270}}</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<object class="NSAffineTransform">
|
||||
<bytes key="NSTransformStruct">P4AAAL+AAABBiAAAwxwAAA</bytes>
|
||||
</object>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<object class="NSAffineTransform">
|
||||
<bytes key="NSTransformStruct">P4AAAL+AAABAoAAAw3gAAA</bytes>
|
||||
</object>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<object class="NSAffineTransform">
|
||||
<bytes key="NSTransformStruct">P4AAAL+AAABDqQAAwigAAA</bytes>
|
||||
</object>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<object class="NSAffineTransform">
|
||||
<bytes key="NSTransformStruct">P4AAAL+AAABDUgAAwigAAA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="unlocalizedProperties">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference key="dict.sortedKeys" ref="0"/>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<nil key="activeLocalization"/>
|
||||
<object class="NSMutableDictionary" key="localizations">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference key="dict.sortedKeys" ref="0"/>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">14</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">ExtraFairwareReminder</string>
|
||||
<string key="superclassName">HSWindowController</string>
|
||||
<object class="NSMutableDictionary" key="actions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>continue:</string>
|
||||
<string>contribute:</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>id</string>
|
||||
<string>id</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="actionInfosByName">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>continue:</string>
|
||||
<string>contribute:</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBActionInfo">
|
||||
<string key="name">continue:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo">
|
||||
<string key="name">contribute:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<string key="NS.key.0">continueButton</string>
|
||||
<string key="NS.object.0">NSButton</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<string key="NS.key.0">continueButton</string>
|
||||
<object class="IBToOneOutletInfo" key="NS.object.0">
|
||||
<string key="name">continueButton</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../base/ExtraFairwareReminder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">HSWindowController</string>
|
||||
<string key="superclassName">NSWindowController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../controllers/HSWindowController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../views/HSOutlineView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../views/HSTableView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../views/NSTableViewAdditions.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSActionCell</string>
|
||||
<string key="superclassName">NSCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="131375392">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="645066809">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="295119366">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSButton</string>
|
||||
<string key="superclassName">NSControl</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSButton.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSButtonCell</string>
|
||||
<string key="superclassName">NSActionCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSCell</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSControl</string>
|
||||
<string key="superclassName">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="947202395">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSFormatter</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenu</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="754383277">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="131375392"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="645066809"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="295119366"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="947202395"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDragging.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<reference key="sourceIdentifier" ref="754383277"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTableView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="756921129">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSError.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSResponder</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTextField</string>
|
||||
<string key="superclassName">NSControl</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTextField.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSTextFieldCell</string>
|
||||
<string key="superclassName">NSActionCell</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSClipView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<reference key="sourceIdentifier" ref="756921129"/>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindow</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSWindowController</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="NSMutableDictionary" key="actions">
|
||||
<string key="NS.key.0">showWindow:</string>
|
||||
<string key="NS.object.0">id</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="actionInfosByName">
|
||||
<string key="NS.key.0">showWindow:</string>
|
||||
<object class="IBActionInfo" key="NS.object.0">
|
||||
<string key="name">showWindow:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSWindowController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<integer value="1050" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<integer value="1050" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
|
||||
<integer value="3000" key="NS.object.0"/>
|
||||
</object>
|
||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||
<string key="IBDocument.LastKnownRelativeProjectPath">../../pe/dupeguru.xcodeproj</string>
|
||||
<int key="IBDocument.defaultPropertyAccessControl">3</int>
|
||||
</data>
|
||||
</archive>
|
||||
12
cocoa/base/en.lproj/IgnoreListDialog.strings
Normal file
12
cocoa/base/en.lproj/IgnoreListDialog.strings
Normal file
@@ -0,0 +1,12 @@
|
||||
|
||||
/* Class = "NSWindow"; title = "Ignore List"; ObjectID = "1"; */
|
||||
"1.title" = "Ignore List";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Close"; ObjectID = "19"; */
|
||||
"19.title" = "Close";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Remove Selected"; ObjectID = "21"; */
|
||||
"21.title" = "Remove Selected";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Clear"; ObjectID = "28"; */
|
||||
"28.title" = "Clear";
|
||||
504
cocoa/base/en.lproj/IgnoreListDialog.xib
Normal file
504
cocoa/base/en.lproj/IgnoreListDialog.xib
Normal file
@@ -0,0 +1,504 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1060</int>
|
||||
<string key="IBDocument.SystemVersion">11D50</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">2177</string>
|
||||
<string key="IBDocument.AppKitVersion">1138.32</string>
|
||||
<string key="IBDocument.HIToolboxVersion">568.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="NS.object.0">2177</string>
|
||||
</object>
|
||||
<array key="IBDocument.IntegratedClassDependencies">
|
||||
<string>NSView</string>
|
||||
<string>NSTableView</string>
|
||||
<string>NSScrollView</string>
|
||||
<string>NSWindowTemplate</string>
|
||||
<string>NSTableHeaderView</string>
|
||||
<string>NSButtonCell</string>
|
||||
<string>NSButton</string>
|
||||
<string>NSScroller</string>
|
||||
<string>NSCustomObject</string>
|
||||
</array>
|
||||
<array key="IBDocument.PluginDependencies">
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</array>
|
||||
<object class="NSMutableDictionary" key="IBDocument.Metadata">
|
||||
<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
|
||||
<integer value="1" key="NS.object.0"/>
|
||||
</object>
|
||||
<array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
|
||||
<object class="NSCustomObject" id="1001">
|
||||
<string key="NSClassName">IgnoreListDialog</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1003">
|
||||
<string key="NSClassName">FirstResponder</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1004">
|
||||
<string key="NSClassName">NSApplication</string>
|
||||
</object>
|
||||
<object class="NSWindowTemplate" id="359561441">
|
||||
<int key="NSWindowStyleMask">11</int>
|
||||
<int key="NSWindowBacking">2</int>
|
||||
<string key="NSWindowRect">{{477, 306}, {574, 347}}</string>
|
||||
<int key="NSWTFlags">1685585920</int>
|
||||
<string key="NSWindowTitle">Ignore List</string>
|
||||
<string key="NSWindowClass">NSWindow</string>
|
||||
<nil key="NSViewClass"/>
|
||||
<nil key="NSUserInterfaceItemIdentifier"/>
|
||||
<object class="NSView" key="NSWindowView" id="976198330">
|
||||
<reference key="NSNextResponder"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSScrollView" id="458371270">
|
||||
<reference key="NSNextResponder" ref="976198330"/>
|
||||
<int key="NSvFlags">274</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSClipView" id="831830981">
|
||||
<reference key="NSNextResponder" ref="458371270"/>
|
||||
<int key="NSvFlags">2304</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSTableView" id="252791348">
|
||||
<reference key="NSNextResponder" ref="831830981"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<string key="NSFrameSize">{532, 211}</string>
|
||||
<reference key="NSSuperview" ref="831830981"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="777677330"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTableHeaderView" key="NSHeaderView" id="903452051">
|
||||
<reference key="NSNextResponder" ref="777677330"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<string key="NSFrameSize">{532, 17}</string>
|
||||
<reference key="NSSuperview" ref="777677330"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="564034022"/>
|
||||
<reference key="NSTableView" ref="252791348"/>
|
||||
</object>
|
||||
<object class="_NSCornerView" key="NSCornerView" id="564034022">
|
||||
<reference key="NSNextResponder" ref="458371270"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{224, 0}, {16, 17}}</string>
|
||||
<reference key="NSSuperview" ref="458371270"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="831830981"/>
|
||||
</object>
|
||||
<array class="NSMutableArray" key="NSTableColumns"/>
|
||||
<double key="NSIntercellSpacingWidth">3</double>
|
||||
<double key="NSIntercellSpacingHeight">2</double>
|
||||
<object class="NSColor" key="NSBackgroundColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MQA</bytes>
|
||||
</object>
|
||||
<object class="NSColor" key="NSGridColor">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">gridColor</string>
|
||||
<object class="NSColor" key="NSColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC41AA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
<double key="NSRowHeight">17</double>
|
||||
<int key="NSTvFlags">1512046592</int>
|
||||
<reference key="NSDelegate"/>
|
||||
<reference key="NSDataSource"/>
|
||||
<int key="NSColumnAutoresizingStyle">4</int>
|
||||
<int key="NSDraggingSourceMaskForLocal">15</int>
|
||||
<int key="NSDraggingSourceMaskForNonLocal">0</int>
|
||||
<bool key="NSAllowsTypeSelect">NO</bool>
|
||||
<int key="NSTableViewDraggingDestinationStyle">0</int>
|
||||
<int key="NSTableViewGroupRowStyle">1</int>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{1, 17}, {532, 249}}</string>
|
||||
<reference key="NSSuperview" ref="458371270"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="252791348"/>
|
||||
<reference key="NSDocView" ref="252791348"/>
|
||||
<object class="NSColor" key="NSBGColor" id="765209443">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">controlBackgroundColor</string>
|
||||
<object class="NSColor" key="NSColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
<int key="NScvFlags">4</int>
|
||||
</object>
|
||||
<object class="NSScroller" id="99096694">
|
||||
<reference key="NSNextResponder" ref="458371270"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{224, 17}, {15, 102}}</string>
|
||||
<reference key="NSSuperview" ref="458371270"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="47224920"/>
|
||||
<reference key="NSTarget" ref="458371270"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSPercent">0.99052132701421802</double>
|
||||
</object>
|
||||
<object class="NSScroller" id="47224920">
|
||||
<reference key="NSNextResponder" ref="458371270"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{1, 154}, {438, 15}}</string>
|
||||
<reference key="NSSuperview" ref="458371270"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="253286088"/>
|
||||
<int key="NSsFlags">1</int>
|
||||
<reference key="NSTarget" ref="458371270"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSCurValue">1</double>
|
||||
<double key="NSPercent">0.98871331828442433</double>
|
||||
</object>
|
||||
<object class="NSClipView" id="777677330">
|
||||
<reference key="NSNextResponder" ref="458371270"/>
|
||||
<int key="NSvFlags">2304</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<reference ref="903452051"/>
|
||||
</array>
|
||||
<string key="NSFrame">{{1, 0}, {532, 17}}</string>
|
||||
<reference key="NSSuperview" ref="458371270"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="903452051"/>
|
||||
<reference key="NSDocView" ref="903452051"/>
|
||||
<reference key="NSBGColor" ref="765209443"/>
|
||||
<int key="NScvFlags">4</int>
|
||||
</object>
|
||||
<reference ref="564034022"/>
|
||||
</array>
|
||||
<string key="NSFrame">{{20, 60}, {534, 267}}</string>
|
||||
<reference key="NSSuperview" ref="976198330"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="831830981"/>
|
||||
<int key="NSsFlags">133682</int>
|
||||
<reference key="NSVScroller" ref="99096694"/>
|
||||
<reference key="NSHScroller" ref="47224920"/>
|
||||
<reference key="NSContentView" ref="831830981"/>
|
||||
<reference key="NSHeaderClipView" ref="777677330"/>
|
||||
<reference key="NSCornerView" ref="564034022"/>
|
||||
<bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes>
|
||||
</object>
|
||||
<object class="NSButton" id="4380169">
|
||||
<reference key="NSNextResponder" ref="976198330"/>
|
||||
<int key="NSvFlags">289</int>
|
||||
<string key="NSFrame">{{464, 12}, {96, 32}}</string>
|
||||
<reference key="NSSuperview" ref="976198330"/>
|
||||
<reference key="NSWindow"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="373771329">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents">Close</string>
|
||||
<object class="NSFont" key="NSSupport" id="680801460">
|
||||
<string key="NSName">LucidaGrande</string>
|
||||
<double key="NSSize">13</double>
|
||||
<int key="NSfFlags">1044</int>
|
||||
</object>
|
||||
<reference key="NSControlView" ref="4380169"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string type="base64-UTF8" key="NSKeyEquivalent">DQ</string>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="253286088">
|
||||
<reference key="NSNextResponder" ref="976198330"/>
|
||||
<int key="NSvFlags">292</int>
|
||||
<string key="NSFrame">{{14, 12}, {154, 32}}</string>
|
||||
<reference key="NSSuperview" ref="976198330"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="983148229"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="671547957">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents">Remove Selected</string>
|
||||
<reference key="NSSupport" ref="680801460"/>
|
||||
<reference key="NSControlView" ref="253286088"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="983148229">
|
||||
<reference key="NSNextResponder" ref="976198330"/>
|
||||
<int key="NSvFlags">292</int>
|
||||
<string key="NSFrame">{{162, 12}, {154, 32}}</string>
|
||||
<reference key="NSSuperview" ref="976198330"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="4380169"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="409951495">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents">Clear</string>
|
||||
<reference key="NSSupport" ref="680801460"/>
|
||||
<reference key="NSControlView" ref="983148229"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{574, 347}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="458371270"/>
|
||||
</object>
|
||||
<string key="NSScreenRect">{{0, 0}, {1920, 1058}}</string>
|
||||
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
|
||||
<bool key="NSWindowIsRestorable">YES</bool>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBObjectContainer" key="IBDocument.Objects">
|
||||
<array class="NSMutableArray" key="connectionRecords">
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">window</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="359561441"/>
|
||||
</object>
|
||||
<int key="connectionID">22</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">ignoreListTableView</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="252791348"/>
|
||||
</object>
|
||||
<int key="connectionID">30</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">removeSelected:</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="253286088"/>
|
||||
</object>
|
||||
<int key="connectionID">31</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">clear:</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="983148229"/>
|
||||
</object>
|
||||
<int key="connectionID">32</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">performClose:</string>
|
||||
<reference key="source" ref="359561441"/>
|
||||
<reference key="destination" ref="4380169"/>
|
||||
</object>
|
||||
<int key="connectionID">25</int>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<array key="orderedObjects">
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">0</int>
|
||||
<array key="object" id="0"/>
|
||||
<reference key="children" ref="1000"/>
|
||||
<nil key="parent"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-2</int>
|
||||
<reference key="object" ref="1001"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">File's Owner</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-1</int>
|
||||
<reference key="object" ref="1003"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">First Responder</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-3</int>
|
||||
<reference key="object" ref="1004"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">Application</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1</int>
|
||||
<reference key="object" ref="359561441"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="976198330"/>
|
||||
</array>
|
||||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">2</int>
|
||||
<reference key="object" ref="976198330"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="458371270"/>
|
||||
<reference ref="4380169"/>
|
||||
<reference ref="253286088"/>
|
||||
<reference ref="983148229"/>
|
||||
</array>
|
||||
<reference key="parent" ref="359561441"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">5</int>
|
||||
<reference key="object" ref="458371270"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="99096694"/>
|
||||
<reference ref="47224920"/>
|
||||
<reference ref="252791348"/>
|
||||
<reference ref="903452051"/>
|
||||
</array>
|
||||
<reference key="parent" ref="976198330"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">6</int>
|
||||
<reference key="object" ref="99096694"/>
|
||||
<reference key="parent" ref="458371270"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">7</int>
|
||||
<reference key="object" ref="47224920"/>
|
||||
<reference key="parent" ref="458371270"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">8</int>
|
||||
<reference key="object" ref="252791348"/>
|
||||
<array class="NSMutableArray" key="children"/>
|
||||
<reference key="parent" ref="458371270"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">9</int>
|
||||
<reference key="object" ref="903452051"/>
|
||||
<reference key="parent" ref="458371270"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">18</int>
|
||||
<reference key="object" ref="4380169"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="373771329"/>
|
||||
</array>
|
||||
<reference key="parent" ref="976198330"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">19</int>
|
||||
<reference key="object" ref="373771329"/>
|
||||
<reference key="parent" ref="4380169"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">20</int>
|
||||
<reference key="object" ref="253286088"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="671547957"/>
|
||||
</array>
|
||||
<reference key="parent" ref="976198330"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">21</int>
|
||||
<reference key="object" ref="671547957"/>
|
||||
<reference key="parent" ref="253286088"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">27</int>
|
||||
<reference key="object" ref="983148229"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="409951495"/>
|
||||
</array>
|
||||
<reference key="parent" ref="976198330"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">28</int>
|
||||
<reference key="object" ref="409951495"/>
|
||||
<reference key="parent" ref="983148229"/>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
||||
<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1.IBWindowTemplateEditedContentRect">{{477, 306}, {480, 309}}</string>
|
||||
<boolean value="NO" key="1.NSWindowTemplate.visibleAtLaunch"/>
|
||||
<string key="18.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="19.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="20.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="21.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="27.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="28.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="5.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="6.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="7.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="8.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="9.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
|
||||
<nil key="activeLocalization"/>
|
||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">32</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">IgnoreListDialog</string>
|
||||
<string key="superclassName">NSWindowController</string>
|
||||
<dictionary class="NSMutableDictionary" key="actions">
|
||||
<string key="clear:">id</string>
|
||||
<string key="removeSelected:">id</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="actionInfosByName">
|
||||
<object class="IBActionInfo" key="clear:">
|
||||
<string key="name">clear:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="removeSelected:">
|
||||
<string key="name">removeSelected:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<string key="NS.key.0">ignoreListTableView</string>
|
||||
<string key="NS.object.0">NSTableView</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<string key="NS.key.0">ignoreListTableView</string>
|
||||
<object class="IBToOneOutletInfo" key="NS.object.0">
|
||||
<string key="name">ignoreListTableView</string>
|
||||
<string key="candidateClassName">NSTableView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/IgnoreListDialog.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<real value="1060" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<real value="1060" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
|
||||
<real value="4100" key="NS.object.0"/>
|
||||
</object>
|
||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||
<int key="IBDocument.defaultPropertyAccessControl">3</int>
|
||||
</data>
|
||||
</archive>
|
||||
@@ -2,62 +2,26 @@
|
||||
"Load from file..." = "Load from file...";
|
||||
"Reset to Default" = "Reset to Default";
|
||||
|
||||
"Select a results file to load" = "Select a results file to load";
|
||||
"You have unsaved results, do you really want to quit?" = "You have unsaved results, do you really want to quit?";
|
||||
"Select a file to save your results to" = "Select a file to save your results to";
|
||||
"Select a folder to add to the scanning list" = "Select a folder to add to the scanning list";
|
||||
"You have unsaved results, do you really want to continue?" = "You have unsaved results, do you really want to continue?";
|
||||
"'%@' already is in the list." = "'%@' already is in the list.";
|
||||
"'%@' does not exist." = "'%@' does not exist.";
|
||||
"The name '%@' already exists." = "The name '%@' already exists.";
|
||||
"A previous action is still hanging in there. You can't start a new one yet. Wait a few seconds, then try again." = "A previous action is still hanging in there. You can't start a new one yet. Wait a few seconds, then try again.";
|
||||
"Your iTunes Library contains %d dead tracks ready to be removed. Continue?" = "Your iTunes Library contains %d dead tracks ready to be removed. Continue?";
|
||||
"You have no dead tracks in your iTunes Library" = "You have no dead tracks in your iTunes Library";
|
||||
"Do you really want to remove all your cached picture analysis?" = "Do you really want to remove all your cached picture analysis?";
|
||||
|
||||
|
||||
"Add iTunes Directory" = "Add iTunes Directory";
|
||||
"Remove Dead Tracks in iTunes" = "Remove Dead Tracks in iTunes";
|
||||
|
||||
"Add iPhoto Library" = "Add iPhoto Library";
|
||||
"Clear Picture Cache" = "Clear Picture Cache";
|
||||
|
||||
/* Columns */
|
||||
"Folder" = "Folder";
|
||||
"Size (KB)" = "Size (KB)";
|
||||
"Size (MB)" = "Size (MB)";
|
||||
"Kind" = "Kind";
|
||||
"Modification" = "Modification";
|
||||
"Match %" = "Match %";
|
||||
"Words Used" = "Words Used";
|
||||
"Dupe Count" = "Dupe Count";
|
||||
|
||||
"Time" = "Time";
|
||||
"Bitrate" = "Bitrate";
|
||||
"Sample Rate" = "Sample Rate";
|
||||
"Title" = "Title";
|
||||
"Artist" = "Artist";
|
||||
"Album" = "Album";
|
||||
"Genre" = "Genre";
|
||||
"Year" = "Year";
|
||||
"Track Number" = "Track Number";
|
||||
"Comment" = "Comment";
|
||||
|
||||
"Dimensions" = "Dimensions";
|
||||
|
||||
/* Messages */
|
||||
"SelectResultToLoadMsg" = "Select a results file to load";
|
||||
"SelectCopyDestinationMsg" = "Select a directory to copy marked files to";
|
||||
"SelectMoveDestinationMsg" = "Select a directory to move marked files to";
|
||||
"SelectResultToSaveMsg" = "Select a file to save your results to";
|
||||
"SelectFolderToAddMsg" = "Select a folder to add to the scanning list";
|
||||
"ReallyWantToQuitMsg" = "You have unsaved results, do you really want to quit?";
|
||||
"ReallyWantToContinueMsg" = "You have unsaved results, do you really want to continue?";
|
||||
"FolderAlreadyInListMsg" = "'%@' already is in the list.";
|
||||
"FolderDoesNotExistMsg" = "'%@' does not exist.";
|
||||
"FileRemovalConfirmMsg" = "You are about to remove %d files from results. Continue?";
|
||||
"FilenameAlreadyExistsMsg" = "The name '%@' already exists.";
|
||||
"NoScannableFileMsg" = "The selected directories contain no scannable file.";
|
||||
"UnknownErrorMsg" = "Unknown Error.";
|
||||
"SendToTrashConfirmMsg" = "You are about to send %d files to Trash. Continue?";
|
||||
"HardlinkConfirmMsg" = "You are about to send %d files to Trash (and hardlink them afterwards). Continue?";
|
||||
"ClearIgnoreListConfirmMsg" = "Do you really want to remove all %d items from the ignore list?";
|
||||
"IgnoreConfirmMsg" = "All selected %d matches are going to be ignored in all subsequent scans. Continue?";
|
||||
"NoCustomCommandMsg" = "You have no custom command set up. Set it up in your preferences.";
|
||||
"CopySuccessMsg" = "All marked files were copied sucessfully.";
|
||||
"MoveSuccessMsg" = "All marked files were moved sucessfully.";
|
||||
"SendToTrashSuccessMsg" = "All marked files were sucessfully sent to Trash.";
|
||||
"NoDuplicateFoundMsg" = "No duplicates found.";
|
||||
"TaskHangingMsg" = "A previous action is still hanging in there. You can't start a new one yet. Wait a few seconds, then try again.";
|
||||
|
||||
"RemoveDeadTracksConfirmMsg" = "Your iTunes Library contains %d dead tracks ready to be removed. Continue?";
|
||||
"NoDeadTrackMsg" = "You have no dead tracks in your iTunes Library";
|
||||
|
||||
"IPhotoAppNotFoundMsg" = "The iPhoto application couldn't be found.";
|
||||
"ClearPictureCacheConfirmMsg" = "Do you really want to remove all your cached picture analysis?";
|
||||
"Yes" = "Yes";
|
||||
"No" = "No";
|
||||
"OK" = "OK";
|
||||
@@ -92,9 +92,6 @@
|
||||
/* Class = "NSMenuItem"; title = "Start Duplicate Scan"; ObjectID = "926"; */
|
||||
"926.title" = "Start Duplicate Scan";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Clear Ignore List"; ObjectID = "927"; */
|
||||
"927.title" = "Clear Ignore List";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Rename Selected"; ObjectID = "933"; */
|
||||
"933.title" = "Rename Selected";
|
||||
|
||||
@@ -172,3 +169,9 @@
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Results Window"; ObjectID = "1272"; */
|
||||
"1272.title" = "Results Window";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Re-Prioritize Results"; ObjectID = "1276"; */
|
||||
"1276.title" = "Re-Prioritize Results";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Ignore List"; ObjectID = "1283"; */
|
||||
"1283.title" = "Ignore List";
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
12
cocoa/base/en.lproj/PrioritizeDialog.strings
Normal file
12
cocoa/base/en.lproj/PrioritizeDialog.strings
Normal file
@@ -0,0 +1,12 @@
|
||||
|
||||
/* Class = "NSWindow"; title = "Re-Prioritize duplicates"; ObjectID = "1"; */
|
||||
"1.title" = "Re-Prioritize duplicates";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Ok"; ObjectID = "37"; */
|
||||
"37.title" = "Ok";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "39"; */
|
||||
"39.title" = "Cancel";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information."; ObjectID = "41"; */
|
||||
"41.title" = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information.";
|
||||
897
cocoa/base/en.lproj/PrioritizeDialog.xib
Normal file
897
cocoa/base/en.lproj/PrioritizeDialog.xib
Normal file
@@ -0,0 +1,897 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1060</int>
|
||||
<string key="IBDocument.SystemVersion">11D50</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">2182</string>
|
||||
<string key="IBDocument.AppKitVersion">1138.32</string>
|
||||
<string key="IBDocument.HIToolboxVersion">568.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="NS.object.0">2182</string>
|
||||
</object>
|
||||
<array key="IBDocument.IntegratedClassDependencies">
|
||||
<string>NSTextField</string>
|
||||
<string>NSPopUpButton</string>
|
||||
<string>NSScroller</string>
|
||||
<string>NSButton</string>
|
||||
<string>NSMenu</string>
|
||||
<string>NSScrollView</string>
|
||||
<string>NSTextFieldCell</string>
|
||||
<string>NSButtonCell</string>
|
||||
<string>NSTableView</string>
|
||||
<string>NSCustomObject</string>
|
||||
<string>NSView</string>
|
||||
<string>NSWindowTemplate</string>
|
||||
<string>NSPopUpButtonCell</string>
|
||||
<string>NSTableColumn</string>
|
||||
</array>
|
||||
<array key="IBDocument.PluginDependencies">
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</array>
|
||||
<object class="NSMutableDictionary" key="IBDocument.Metadata">
|
||||
<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
|
||||
<integer value="1" key="NS.object.0"/>
|
||||
</object>
|
||||
<array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
|
||||
<object class="NSCustomObject" id="1001">
|
||||
<string key="NSClassName">PrioritizeDialog</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1003">
|
||||
<string key="NSClassName">FirstResponder</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1004">
|
||||
<string key="NSClassName">NSApplication</string>
|
||||
</object>
|
||||
<object class="NSWindowTemplate" id="1005">
|
||||
<int key="NSWindowStyleMask">9</int>
|
||||
<int key="NSWindowBacking">2</int>
|
||||
<string key="NSWindowRect">{{196, 240}, {609, 401}}</string>
|
||||
<int key="NSWTFlags">1618477056</int>
|
||||
<string key="NSWindowTitle">Re-Prioritize duplicates</string>
|
||||
<string key="NSWindowClass">NSWindow</string>
|
||||
<nil key="NSViewClass"/>
|
||||
<nil key="NSUserInterfaceItemIdentifier"/>
|
||||
<object class="NSView" key="NSWindowView" id="1006">
|
||||
<reference key="NSNextResponder"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSPopUpButton" id="357095790">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{17, 298}, {268, 26}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="386461059"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:179</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSPopUpButtonCell" key="NSCell" id="892922362">
|
||||
<int key="NSCellFlags">-2076049856</int>
|
||||
<int key="NSCellFlags2">2048</int>
|
||||
<object class="NSFont" key="NSSupport" id="591283433">
|
||||
<string key="NSName">LucidaGrande</string>
|
||||
<double key="NSSize">13</double>
|
||||
<int key="NSfFlags">1044</int>
|
||||
</object>
|
||||
<string key="NSCellIdentifier">_NS:179</string>
|
||||
<reference key="NSControlView" ref="357095790"/>
|
||||
<int key="NSButtonFlags">109199615</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">400</int>
|
||||
<int key="NSPeriodicInterval">75</int>
|
||||
<nil key="NSMenuItem"/>
|
||||
<bool key="NSMenuItemRespectAlignment">YES</bool>
|
||||
<object class="NSMenu" key="NSMenu" id="309249465">
|
||||
<string key="NSTitle">OtherViews</string>
|
||||
<array class="NSMutableArray" key="NSMenuItems"/>
|
||||
<reference key="NSMenuFont" ref="591283433"/>
|
||||
</object>
|
||||
<int key="NSSelectedIndex">-1</int>
|
||||
<int key="NSPreferredEdge">1</int>
|
||||
<bool key="NSUsesItemFromMenu">YES</bool>
|
||||
<bool key="NSAltersState">YES</bool>
|
||||
<int key="NSArrowPosition">2</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSScrollView" id="386461059">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">276</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSClipView" id="991694656">
|
||||
<reference key="NSNextResponder" ref="386461059"/>
|
||||
<int key="NSvFlags">2304</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSTableView" id="675311684">
|
||||
<reference key="NSNextResponder" ref="991694656"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<string key="NSFrameSize">{260, 233}</string>
|
||||
<reference key="NSSuperview" ref="991694656"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="978953877"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1197</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="_NSCornerView" key="NSCornerView">
|
||||
<nil key="NSNextResponder"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{224, 0}, {16, 17}}</string>
|
||||
<string key="NSReuseIdentifierKey">_NS:1202</string>
|
||||
</object>
|
||||
<array class="NSMutableArray" key="NSTableColumns">
|
||||
<object class="NSTableColumn" id="331887935">
|
||||
<double key="NSWidth">257</double>
|
||||
<double key="NSMinWidth">40</double>
|
||||
<double key="NSMaxWidth">1000</double>
|
||||
<object class="NSTableHeaderCell" key="NSHeaderCell">
|
||||
<int key="NSCellFlags">75628096</int>
|
||||
<int key="NSCellFlags2">2048</int>
|
||||
<string key="NSContents"/>
|
||||
<object class="NSFont" key="NSSupport" id="26">
|
||||
<string key="NSName">LucidaGrande</string>
|
||||
<double key="NSSize">11</double>
|
||||
<int key="NSfFlags">3100</int>
|
||||
</object>
|
||||
<object class="NSColor" key="NSBackgroundColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC4zMzMzMzI5ODU2AA</bytes>
|
||||
</object>
|
||||
<object class="NSColor" key="NSTextColor" id="165509352">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">headerTextColor</string>
|
||||
<object class="NSColor" key="NSColor" id="95789318">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MAA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSTextFieldCell" key="NSDataCell" id="252516817">
|
||||
<int key="NSCellFlags">337772096</int>
|
||||
<int key="NSCellFlags2">2560</int>
|
||||
<string key="NSContents"/>
|
||||
<reference key="NSSupport" ref="591283433"/>
|
||||
<reference key="NSControlView" ref="675311684"/>
|
||||
<object class="NSColor" key="NSBackgroundColor" id="768431893">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">controlBackgroundColor</string>
|
||||
<object class="NSColor" key="NSColor" id="857981892">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSColor" key="NSTextColor" id="983887457">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">controlTextColor</string>
|
||||
<reference key="NSColor" ref="95789318"/>
|
||||
</object>
|
||||
</object>
|
||||
<int key="NSResizingMask">3</int>
|
||||
<bool key="NSIsResizeable">YES</bool>
|
||||
<bool key="NSIsEditable">YES</bool>
|
||||
<reference key="NSTableView" ref="675311684"/>
|
||||
</object>
|
||||
</array>
|
||||
<double key="NSIntercellSpacingWidth">3</double>
|
||||
<double key="NSIntercellSpacingHeight">2</double>
|
||||
<object class="NSColor" key="NSBackgroundColor" id="949356842">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MQA</bytes>
|
||||
</object>
|
||||
<object class="NSColor" key="NSGridColor" id="353256269">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">gridColor</string>
|
||||
<object class="NSColor" key="NSColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC41AA</bytes>
|
||||
</object>
|
||||
</object>
|
||||
<double key="NSRowHeight">17</double>
|
||||
<int key="NSTvFlags">306184192</int>
|
||||
<reference key="NSDelegate"/>
|
||||
<reference key="NSDataSource"/>
|
||||
<int key="NSColumnAutoresizingStyle">4</int>
|
||||
<int key="NSDraggingSourceMaskForLocal">15</int>
|
||||
<int key="NSDraggingSourceMaskForNonLocal">0</int>
|
||||
<bool key="NSAllowsTypeSelect">NO</bool>
|
||||
<int key="NSTableViewDraggingDestinationStyle">0</int>
|
||||
<int key="NSTableViewGroupRowStyle">1</int>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{1, 1}, {260, 233}}</string>
|
||||
<reference key="NSSuperview" ref="386461059"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="675311684"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1195</string>
|
||||
<reference key="NSDocView" ref="675311684"/>
|
||||
<reference key="NSBGColor" ref="768431893"/>
|
||||
<int key="NScvFlags">4</int>
|
||||
</object>
|
||||
<object class="NSScroller" id="978953877">
|
||||
<reference key="NSNextResponder" ref="386461059"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{224, 17}, {15, 102}}</string>
|
||||
<reference key="NSSuperview" ref="386461059"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1055237002"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1214</string>
|
||||
<reference key="NSTarget" ref="386461059"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSPercent">0.9925373134328358</double>
|
||||
</object>
|
||||
<object class="NSScroller" id="1055237002">
|
||||
<reference key="NSNextResponder" ref="386461059"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{1, 119}, {223, 15}}</string>
|
||||
<reference key="NSSuperview" ref="386461059"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="878293971"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1216</string>
|
||||
<int key="NSsFlags">1</int>
|
||||
<reference key="NSTarget" ref="386461059"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSPercent">0.99581589958159</double>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{20, 60}, {262, 235}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="991694656"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1193</string>
|
||||
<int key="NSsFlags">133682</int>
|
||||
<reference key="NSVScroller" ref="978953877"/>
|
||||
<reference key="NSHScroller" ref="1055237002"/>
|
||||
<reference key="NSContentView" ref="991694656"/>
|
||||
<bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes>
|
||||
</object>
|
||||
<object class="NSScrollView" id="687805562">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">274</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSClipView" id="256485327">
|
||||
<reference key="NSNextResponder" ref="687805562"/>
|
||||
<int key="NSvFlags">2304</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSTableView" id="69698213">
|
||||
<reference key="NSNextResponder" ref="256485327"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<string key="NSFrameSize">{248, 260}</string>
|
||||
<reference key="NSSuperview" ref="256485327"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="258173410"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1197</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="_NSCornerView" key="NSCornerView">
|
||||
<nil key="NSNextResponder"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{224, 0}, {16, 17}}</string>
|
||||
<string key="NSReuseIdentifierKey">_NS:1202</string>
|
||||
</object>
|
||||
<array class="NSMutableArray" key="NSTableColumns">
|
||||
<object class="NSTableColumn" id="604129553">
|
||||
<double key="NSWidth">245</double>
|
||||
<double key="NSMinWidth">40</double>
|
||||
<double key="NSMaxWidth">1000</double>
|
||||
<object class="NSTableHeaderCell" key="NSHeaderCell">
|
||||
<int key="NSCellFlags">75628096</int>
|
||||
<int key="NSCellFlags2">2048</int>
|
||||
<string key="NSContents"/>
|
||||
<reference key="NSSupport" ref="26"/>
|
||||
<object class="NSColor" key="NSBackgroundColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC4zMzMzMzI5ODU2AA</bytes>
|
||||
</object>
|
||||
<reference key="NSTextColor" ref="165509352"/>
|
||||
</object>
|
||||
<object class="NSTextFieldCell" key="NSDataCell" id="998326916">
|
||||
<int key="NSCellFlags">337772096</int>
|
||||
<int key="NSCellFlags2">2048</int>
|
||||
<string key="NSContents"/>
|
||||
<reference key="NSSupport" ref="591283433"/>
|
||||
<reference key="NSControlView" ref="69698213"/>
|
||||
<reference key="NSBackgroundColor" ref="768431893"/>
|
||||
<reference key="NSTextColor" ref="983887457"/>
|
||||
</object>
|
||||
<int key="NSResizingMask">3</int>
|
||||
<bool key="NSIsResizeable">YES</bool>
|
||||
<bool key="NSIsEditable">YES</bool>
|
||||
<reference key="NSTableView" ref="69698213"/>
|
||||
</object>
|
||||
</array>
|
||||
<double key="NSIntercellSpacingWidth">3</double>
|
||||
<double key="NSIntercellSpacingHeight">2</double>
|
||||
<reference key="NSBackgroundColor" ref="949356842"/>
|
||||
<reference key="NSGridColor" ref="353256269"/>
|
||||
<double key="NSRowHeight">17</double>
|
||||
<int key="NSTvFlags">306184192</int>
|
||||
<reference key="NSDelegate"/>
|
||||
<reference key="NSDataSource"/>
|
||||
<int key="NSColumnAutoresizingStyle">4</int>
|
||||
<int key="NSDraggingSourceMaskForLocal">15</int>
|
||||
<int key="NSDraggingSourceMaskForNonLocal">0</int>
|
||||
<bool key="NSAllowsTypeSelect">NO</bool>
|
||||
<int key="NSTableViewDraggingDestinationStyle">0</int>
|
||||
<int key="NSTableViewGroupRowStyle">1</int>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{1, 1}, {248, 260}}</string>
|
||||
<reference key="NSSuperview" ref="687805562"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="69698213"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1195</string>
|
||||
<reference key="NSDocView" ref="69698213"/>
|
||||
<reference key="NSBGColor" ref="768431893"/>
|
||||
<int key="NScvFlags">4</int>
|
||||
</object>
|
||||
<object class="NSScroller" id="258173410">
|
||||
<reference key="NSNextResponder" ref="687805562"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{224, 17}, {15, 102}}</string>
|
||||
<reference key="NSSuperview" ref="687805562"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="218354894"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1214</string>
|
||||
<reference key="NSTarget" ref="687805562"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSPercent">0.9925373134328358</double>
|
||||
</object>
|
||||
<object class="NSScroller" id="218354894">
|
||||
<reference key="NSNextResponder" ref="687805562"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{1, 119}, {223, 15}}</string>
|
||||
<reference key="NSSuperview" ref="687805562"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="955319632"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1216</string>
|
||||
<int key="NSsFlags">1</int>
|
||||
<reference key="NSTarget" ref="687805562"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSPercent">0.99581589958159</double>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{339, 60}, {250, 262}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="256485327"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1193</string>
|
||||
<int key="NSsFlags">133682</int>
|
||||
<reference key="NSVScroller" ref="258173410"/>
|
||||
<reference key="NSHScroller" ref="218354894"/>
|
||||
<reference key="NSContentView" ref="256485327"/>
|
||||
<bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes>
|
||||
</object>
|
||||
<object class="NSButton" id="878293971">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{284, 186}, {53, 32}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="596965746"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:161</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="208161580">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents">--></string>
|
||||
<reference key="NSSupport" ref="591283433"/>
|
||||
<string key="NSCellIdentifier">_NS:161</string>
|
||||
<reference key="NSControlView" ref="878293971"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="596965746">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{284, 160}, {53, 32}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="687805562"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:161</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="410417059">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents"><--</string>
|
||||
<reference key="NSSupport" ref="591283433"/>
|
||||
<string key="NSCellIdentifier">_NS:161</string>
|
||||
<reference key="NSControlView" ref="596965746"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string key="NSKeyEquivalent"/>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="620738811">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">289</int>
|
||||
<string key="NSFrame">{{495, 12}, {100, 32}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:161</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="468133349">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents">Ok</string>
|
||||
<reference key="NSSupport" ref="591283433"/>
|
||||
<string key="NSCellIdentifier">_NS:161</string>
|
||||
<reference key="NSControlView" ref="620738811"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string type="base64-UTF8" key="NSKeyEquivalent">DQ</string>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSButton" id="955319632">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">289</int>
|
||||
<string key="NSFrame">{{395, 12}, {100, 32}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="620738811"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:161</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="323479517">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">134217728</int>
|
||||
<string key="NSContents">Cancel</string>
|
||||
<reference key="NSSupport" ref="591283433"/>
|
||||
<string key="NSCellIdentifier">_NS:161</string>
|
||||
<reference key="NSControlView" ref="955319632"/>
|
||||
<int key="NSButtonFlags">-2038284033</int>
|
||||
<int key="NSButtonFlags2">129</int>
|
||||
<string key="NSAlternateContents"/>
|
||||
<string type="base64-UTF8" key="NSKeyEquivalent">Gw</string>
|
||||
<int key="NSPeriodicDelay">200</int>
|
||||
<int key="NSPeriodicInterval">25</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSTextField" id="970734229">
|
||||
<reference key="NSNextResponder" ref="1006"/>
|
||||
<int key="NSvFlags">268</int>
|
||||
<string key="NSFrame">{{17, 330}, {575, 51}}</string>
|
||||
<reference key="NSSuperview" ref="1006"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="357095790"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:3936</string>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="424127272">
|
||||
<int key="NSCellFlags">67239424</int>
|
||||
<int key="NSCellFlags2">4194304</int>
|
||||
<string key="NSContents">Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information.</string>
|
||||
<reference key="NSSupport" ref="591283433"/>
|
||||
<string key="NSCellIdentifier">_NS:3936</string>
|
||||
<reference key="NSControlView" ref="970734229"/>
|
||||
<object class="NSColor" key="NSBackgroundColor">
|
||||
<int key="NSColorSpace">6</int>
|
||||
<string key="NSCatalogName">System</string>
|
||||
<string key="NSColorName">controlColor</string>
|
||||
<reference key="NSColor" ref="857981892"/>
|
||||
</object>
|
||||
<reference key="NSTextColor" ref="983887457"/>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{609, 401}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="970734229"/>
|
||||
</object>
|
||||
<string key="NSScreenRect">{{0, 0}, {1920, 1058}}</string>
|
||||
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
|
||||
<bool key="NSWindowIsRestorable">YES</bool>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBObjectContainer" key="IBDocument.Objects">
|
||||
<array class="NSMutableArray" key="connectionRecords">
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">categoryPopUpView</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="357095790"/>
|
||||
</object>
|
||||
<int key="connectionID">10</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">criteriaTableView</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="675311684"/>
|
||||
</object>
|
||||
<int key="connectionID">20</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">prioritizationTableView</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="69698213"/>
|
||||
</object>
|
||||
<int key="connectionID">33</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">addSelected:</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="878293971"/>
|
||||
</object>
|
||||
<int key="connectionID">34</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">removeSelected:</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="596965746"/>
|
||||
</object>
|
||||
<int key="connectionID">35</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">cancel:</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="955319632"/>
|
||||
</object>
|
||||
<int key="connectionID">42</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">ok:</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="620738811"/>
|
||||
</object>
|
||||
<int key="connectionID">43</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">window</string>
|
||||
<reference key="source" ref="1001"/>
|
||||
<reference key="destination" ref="1005"/>
|
||||
</object>
|
||||
<int key="connectionID">44</int>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<array key="orderedObjects">
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">0</int>
|
||||
<array key="object" id="0"/>
|
||||
<reference key="children" ref="1000"/>
|
||||
<nil key="parent"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-2</int>
|
||||
<reference key="object" ref="1001"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">File's Owner</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-1</int>
|
||||
<reference key="object" ref="1003"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">First Responder</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-3</int>
|
||||
<reference key="object" ref="1004"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">Application</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1</int>
|
||||
<reference key="object" ref="1005"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="1006"/>
|
||||
</array>
|
||||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">2</int>
|
||||
<reference key="object" ref="1006"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="970734229"/>
|
||||
<reference ref="357095790"/>
|
||||
<reference ref="386461059"/>
|
||||
<reference ref="878293971"/>
|
||||
<reference ref="596965746"/>
|
||||
<reference ref="687805562"/>
|
||||
<reference ref="620738811"/>
|
||||
<reference ref="955319632"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1005"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">3</int>
|
||||
<reference key="object" ref="357095790"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="892922362"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">4</int>
|
||||
<reference key="object" ref="892922362"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="309249465"/>
|
||||
</array>
|
||||
<reference key="parent" ref="357095790"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">5</int>
|
||||
<reference key="object" ref="309249465"/>
|
||||
<array class="NSMutableArray" key="children"/>
|
||||
<reference key="parent" ref="892922362"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">11</int>
|
||||
<reference key="object" ref="386461059"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="978953877"/>
|
||||
<reference ref="1055237002"/>
|
||||
<reference ref="675311684"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">12</int>
|
||||
<reference key="object" ref="978953877"/>
|
||||
<reference key="parent" ref="386461059"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">14</int>
|
||||
<reference key="object" ref="1055237002"/>
|
||||
<reference key="parent" ref="386461059"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">15</int>
|
||||
<reference key="object" ref="675311684"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="331887935"/>
|
||||
</array>
|
||||
<reference key="parent" ref="386461059"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">16</int>
|
||||
<reference key="object" ref="331887935"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="252516817"/>
|
||||
</array>
|
||||
<reference key="parent" ref="675311684"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">19</int>
|
||||
<reference key="object" ref="252516817"/>
|
||||
<reference key="parent" ref="331887935"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">21</int>
|
||||
<reference key="object" ref="878293971"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="208161580"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">22</int>
|
||||
<reference key="object" ref="208161580"/>
|
||||
<reference key="parent" ref="878293971"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">23</int>
|
||||
<reference key="object" ref="596965746"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="410417059"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">24</int>
|
||||
<reference key="object" ref="410417059"/>
|
||||
<reference key="parent" ref="596965746"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">25</int>
|
||||
<reference key="object" ref="687805562"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="69698213"/>
|
||||
<reference ref="218354894"/>
|
||||
<reference ref="258173410"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">26</int>
|
||||
<reference key="object" ref="69698213"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="604129553"/>
|
||||
</array>
|
||||
<reference key="parent" ref="687805562"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">27</int>
|
||||
<reference key="object" ref="218354894"/>
|
||||
<reference key="parent" ref="687805562"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">28</int>
|
||||
<reference key="object" ref="258173410"/>
|
||||
<reference key="parent" ref="687805562"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">29</int>
|
||||
<reference key="object" ref="604129553"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="998326916"/>
|
||||
</array>
|
||||
<reference key="parent" ref="69698213"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">30</int>
|
||||
<reference key="object" ref="998326916"/>
|
||||
<reference key="parent" ref="604129553"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">36</int>
|
||||
<reference key="object" ref="620738811"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="468133349"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">37</int>
|
||||
<reference key="object" ref="468133349"/>
|
||||
<reference key="parent" ref="620738811"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">38</int>
|
||||
<reference key="object" ref="955319632"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="323479517"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">39</int>
|
||||
<reference key="object" ref="323479517"/>
|
||||
<reference key="parent" ref="955319632"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">40</int>
|
||||
<reference key="object" ref="970734229"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="424127272"/>
|
||||
</array>
|
||||
<reference key="parent" ref="1006"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">41</int>
|
||||
<reference key="object" ref="424127272"/>
|
||||
<reference key="parent" ref="970734229"/>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
||||
<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="1.IBWindowTemplateEditedContentRect">{{357, 418}, {480, 270}}</string>
|
||||
<boolean value="NO" key="1.NSWindowTemplate.visibleAtLaunch"/>
|
||||
<string key="11.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="12.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="14.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="15.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="16.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="19.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="21.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="22.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="23.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="24.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="25.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="26.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="27.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="28.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="29.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="30.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="36.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="37.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="38.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="39.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="4.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="40.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="41.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="5.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
|
||||
<nil key="activeLocalization"/>
|
||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">44</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">PrioritizeDialog</string>
|
||||
<string key="superclassName">NSWindowController</string>
|
||||
<dictionary class="NSMutableDictionary" key="actions">
|
||||
<string key="addSelected:">id</string>
|
||||
<string key="cancel:">id</string>
|
||||
<string key="ok:">id</string>
|
||||
<string key="removeSelected:">id</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="actionInfosByName">
|
||||
<object class="IBActionInfo" key="addSelected:">
|
||||
<string key="name">addSelected:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="cancel:">
|
||||
<string key="name">cancel:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="ok:">
|
||||
<string key="name">ok:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="removeSelected:">
|
||||
<string key="name">removeSelected:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="outlets">
|
||||
<string key="categoryPopUpView">NSPopUpButton</string>
|
||||
<string key="criteriaTableView">NSTableView</string>
|
||||
<string key="prioritizationTableView">NSTableView</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<object class="IBToOneOutletInfo" key="categoryPopUpView">
|
||||
<string key="name">categoryPopUpView</string>
|
||||
<string key="candidateClassName">NSPopUpButton</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="criteriaTableView">
|
||||
<string key="name">criteriaTableView</string>
|
||||
<string key="candidateClassName">NSTableView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="prioritizationTableView">
|
||||
<string key="name">prioritizationTableView</string>
|
||||
<string key="candidateClassName">NSTableView</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/PrioritizeDialog.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<real value="1060" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<real value="1060" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
|
||||
<real value="4100" key="NS.object.0"/>
|
||||
</object>
|
||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||
<int key="IBDocument.defaultPropertyAccessControl">3</int>
|
||||
</data>
|
||||
</archive>
|
||||
@@ -5,12 +5,6 @@
|
||||
/* Class = "NSTextFieldCell"; title = "There were problems processing some (or all) of the files. The cause of these problems are described in the table below. Those files were not removed from your results."; ObjectID = "4"; */
|
||||
"4.title" = "There were problems processing some (or all) of the files. The cause of these problems are described in the table below. Those files were not removed from your results.";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "File Path"; ObjectID = "10"; */
|
||||
"10.headerCell.title" = "File Path";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Error Message"; ObjectID = "11"; */
|
||||
"11.headerCell.title" = "Error Message";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Close"; ObjectID = "19"; */
|
||||
"19.title" = "Close";
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -5,9 +5,6 @@
|
||||
/* Class = "NSTextFieldCell"; title = "Marked: 0 files, 0 B. Total: 0 files, 0 B."; ObjectID = "6"; */
|
||||
"6.title" = "Marked: 0 files, 0 B. Total: 0 files, 0 B.";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Name"; ObjectID = "11"; */
|
||||
"11.headerCell.title" = "Name";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Options"; ObjectID = "15"; */
|
||||
"15.label" = "Options";
|
||||
|
||||
@@ -68,14 +65,14 @@
|
||||
/* Class = "NSSearchFieldCell"; placeholderString = "Filter"; ObjectID = "42"; */
|
||||
"42.placeholderString" = "Filter";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[0] = "Details"; ObjectID = "44"; */
|
||||
"44.labels[0]" = "Details";
|
||||
/* Class = "NSSegmentedCell"; 44.ibShadowedLabels[0] = "Details"; ObjectID = "44"; */
|
||||
"44.ibShadowedLabels[0]" = "Details";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[1] = "Dupes Only"; ObjectID = "44"; */
|
||||
"44.labels[1]" = "Dupes Only";
|
||||
/* Class = "NSSegmentedCell"; 44.ibShadowedLabels[1] = "Dupes Only"; ObjectID = "44"; */
|
||||
"44.ibShadowedLabels[1]" = "Dupes Only";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[2] = "Delta"; ObjectID = "44"; */
|
||||
"44.labels[2]" = "Delta";
|
||||
/* Class = "NSSegmentedCell"; 44.ibShadowedLabels[2] = "Delta"; ObjectID = "44"; */
|
||||
"44.ibShadowedLabels[2]" = "Delta";
|
||||
|
||||
/* Class = "NSMenu"; title = "Menu"; ObjectID = "67"; */
|
||||
"67.title" = "Menu";
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,31 +0,0 @@
|
||||
"Collecting files to scan" = "Collecting files to scan";
|
||||
"%s (%d discarded)" = "%s (%d discarded)";
|
||||
"Scanning for duplicates" = "Scanning for duplicates";
|
||||
"Loading" = "Loading";
|
||||
"Moving" = "Moving";
|
||||
"Copying" = "Copying";
|
||||
"Sending to Trash" = "Sending to Trash";
|
||||
"0 matches found" = "0 matches found";
|
||||
"%d matches found" = "%d matches found";
|
||||
"Read size of %d/%d files" = "Read size of %d/%d files";
|
||||
"Grouped %d/%d matches" = "Grouped %d/%d matches";
|
||||
"%d / %d (%s / %s) duplicates marked." = "%d / %d (%s / %s) duplicates marked.";
|
||||
" filter: %s" = " filter: %s";
|
||||
"Read metadata of %d/%d files" = "Read metadata of %d/%d files";
|
||||
"Removing false matches" = "Removing false matches";
|
||||
"Processed %d/%d matches against the ignore list" = "Processed %d/%d matches against the ignore list";
|
||||
"Doing group prioritization" = "Doing group prioritization";
|
||||
|
||||
"Continue" = "Continue";
|
||||
"Continue ({})" = "Continue ({})";
|
||||
|
||||
"Analyzed %d/%d pictures" = "Analyzed %d/%d pictures";
|
||||
"Preparing for matching" = "Preparing for matching";
|
||||
"Performed %d/%d chunk matches" = "Performed %d/%d chunk matches";
|
||||
"Verified %d/%d matches" = "Verified %d/%d matches";
|
||||
|
||||
"Removing dead tracks from your iTunes Library" = "Removing dead tracks from your iTunes Library";
|
||||
"Scanning the iTunes Library" = "Scanning the iTunes Library";
|
||||
|
||||
"Probing iPhoto. Don't touch it during the operation!" = "Probing iPhoto. Don't touch it during the operation!";
|
||||
"Sending dupes to the Trash" = "Sending dupes to the Trash";
|
||||
@@ -1,12 +0,0 @@
|
||||
|
||||
/* Class = "NSPanel"; title = "Details of Selected File"; ObjectID = "5"; */
|
||||
"5.title" = "Détails du fichier sélectionné";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Selected"; ObjectID = "9"; */
|
||||
"9.headerCell.title" = "Sélectionné";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Reference"; ObjectID = "10"; */
|
||||
"10.headerCell.title" = "Référence";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Attribute"; ObjectID = "11"; */
|
||||
"11.headerCell.title" = "Attribut";
|
||||
@@ -1,23 +0,0 @@
|
||||
/* Class = "NSTableColumn"; headerCell.title = "State"; ObjectID = "13"; */
|
||||
"13.headerCell.title" = "Type";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Name"; ObjectID = "15"; */
|
||||
"15.headerCell.title" = "Nom";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Scan"; ObjectID = "48"; */
|
||||
"48.title" = "Scan";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Normal"; ObjectID = "55"; */
|
||||
"55.title" = "Normal";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Reference"; ObjectID = "56"; */
|
||||
"56.title" = "Référence";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Excluded"; ObjectID = "57"; */
|
||||
"57.title" = "Exclu";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Select folders to scan and press \"Scan\"."; ObjectID = "71"; */
|
||||
"71.title" = "Sélectionnez les dossiers à scanner et cliquez sur Scan.";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Load Results"; ObjectID = "73"; */
|
||||
"73.title" = "Charger";
|
||||
@@ -1,11 +0,0 @@
|
||||
/* Class = "NSWindow"; title = "Sorry, I must insist"; ObjectID = "1"; */
|
||||
"1.title" = "Désolé, je dois insister";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "This reminder showed up because:
1. You are processing more than 100 duplicates
2. You have not yet contributed to dupeGuru
3. There are unpaid hours in the project"; ObjectID = "4"; */
|
||||
"4.title" = "Ce rappel apparaît parce que:\n\n1. Plus de 100 doublons sont traités\n2. Vous n'avez pas encore contribué à dupeGuru\n3. Il y a des heures non-payées au projet";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "It seems that you found a lot of duplicates. Nice! I must insist, however, that contributions are expected when there are unpaid hours on the project.
You might think \"but I'm only going to use this once, I don't have to contribute\". The problem is that most people use dupeGuru only once in a while. If everyone thinks like that, dupeGuru development cannot be funded.
If you can't afford to contribute, you can ignore this reminder or send me an e-mail at hsoft@hardcoded.net so I can give you a key to remove this popup."; ObjectID = "6"; */
|
||||
"6.title" = "Il semble que vous ayez trouvé beaucoup de doublons. Super! Je dois par contre insister que des contributions sont attendues lorsqu'il y'a des heures non-payées au projet.\n\nVous pensez peut-être \"je n'utiliserai ce programme qu'une fois, pas besoin de contribuer\". Le problème c'est que la plupart des utilisateurs de dupeGuru ne l'utilisent qu'une fois. Si tous suivent ce raisonnement, le développement de dupeGuru ne peut pas continuer. C'est à cause de cette tendance inhérente à la nature de dupeGuru que je me vois contraint d'insister ici.\n\nSi vous n'avez pas les moyens de contribuer, ignorez ce message ou envoyez moi un message à hsoft@hardcoded.net pour que je vous envoie une clé d'enregistrement.";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Contribute"; ObjectID = "10"; */
|
||||
"10.title" = "Contribuer";
|
||||
@@ -1,63 +0,0 @@
|
||||
"Add New Folder..." = "Ajouter dossier...";
|
||||
"Load from file..." = "Charger un fichier...";
|
||||
"Reset to Default" = "Colonnes par défault";
|
||||
|
||||
"Add iTunes Directory" = "Ajouter librairie iTunes";
|
||||
"Remove Dead Tracks in iTunes" = "Retirer les tracks mortes dans iTunes";
|
||||
|
||||
"Add iPhoto Library" = "Ajouter librairie iPhoto";
|
||||
"Clear Picture Cache" = "Vider la cache d'images";
|
||||
|
||||
/* Columns */
|
||||
"Folder" = "Dossier";
|
||||
"Size (KB)" = "Taille (KB)";
|
||||
"Size (MB)" = "Taille (MB)";
|
||||
"Kind" = "Type";
|
||||
"Modification" = "Modification";
|
||||
"Match %" = "Match %";
|
||||
"Words Used" = "Mots";
|
||||
"Dupe Count" = "# Doublons";
|
||||
|
||||
"Time" = "Temps";
|
||||
"Bitrate" = "Bitrate";
|
||||
"Sample Rate" = "Sample Rate";
|
||||
"Title" = "Titre";
|
||||
"Artist" = "Artiste";
|
||||
"Album" = "Album";
|
||||
"Genre" = "Genre";
|
||||
"Year" = "Année";
|
||||
"Track Number" = "Track";
|
||||
"Comment" = "Commentaire";
|
||||
|
||||
"Dimensions" = "Dimensions";
|
||||
|
||||
/* Messages */
|
||||
"SelectResultToLoadMsg" = "Sélectionnez un fichier résultats à charger";
|
||||
"SelectCopyDestinationMsg" = "Sélectionnez un dossier vers lequel copier les fichiers";
|
||||
"SelectMoveDestinationMsg" = "Sélectionnez un dossier vers lequel déplacer les fichiers";
|
||||
"SelectResultToSaveMsg" = "Sélectionnez un fichier résultats dans lequel sauvegarder";
|
||||
"SelectFolderToAddMsg" = "Sélectionnez un dossier à ajouter à la liste";
|
||||
"ReallyWantToQuitMsg" = "Vos résultats ne sont pas sauvegardés. Voulez-vous vraiment quitter?";
|
||||
"ReallyWantToContinueMsg" = "Vos résultats ne sont pas sauvegardés. Voulez-vous vraiment continuer?";
|
||||
"FolderAlreadyInListMsg" = "'%@' est déjà dans la liste.";
|
||||
"FolderDoesNotExistMsg" = "'%@' n'existe pas.";
|
||||
"FileRemovalConfirmMsg" = "%d fichiers seront retirés des résultats. Continuer?";
|
||||
"FilenameAlreadyExistsMsg" = "Le nom '%@' existe déjà.";
|
||||
"NoScannableFileMsg" = "Les dossiers sélectionnés ne continnent pas de fichiers valides.";
|
||||
"UnknownErrorMsg" = "Erreur inconnue.";
|
||||
"SendToTrashConfirmMsg" = "%d fichiers seront envoyés à la corbeille. Continuer?";
|
||||
"HardlinkConfirmMsg" = "%d fichiers seront envoyés à la corbeille (puis 'hardlinkés'). Continuer?";
|
||||
"ClearIgnoreListConfirmMsg" = "Voulez-vous vider la liste de fichiers ignorés des %d items qu'elle contient?";
|
||||
"IgnoreConfirmMsg" = "%d fichiers seront ignorés des prochains scans. Continuer?";
|
||||
"NoCustomCommandMsg" = "Vous n'avez pas de commande personnalisée. Ajoutez-la dans vos préférences.";
|
||||
"CopySuccessMsg" = "Tous les fichiers marqués ont été copiés correctement.";
|
||||
"MoveSuccessMsg" = "Tous les fichiers déplacés ont été copiés correctement.";
|
||||
"SendToTrashSuccessMsg" = "Tous les fichiers marqués ont été correctement envoyés à la corbeille.";
|
||||
"NoDuplicateFoundMsg" = "Aucun doublon trouvé.";
|
||||
"TaskHangingMsg" = "Une action précédente est encore en cours. Attendez quelques secondes avant d'en repartir une nouvelle.";
|
||||
|
||||
"RemoveDeadTracksConfirmMsg" = "Votre librairie iTunes contient %d tracks mortes qui seront retirées. Continuer?";
|
||||
"NoDeadTrackMsg" = "Votre librairie iTunes ne contient aucune track morte.";
|
||||
|
||||
"IPhotoAppNotFoundMsg" = "iPhoto n'a pas pu être trouvée dans vos applications.";
|
||||
"ClearPictureCacheConfirmMsg" = "Voulez-vous vraiment vider la cache de vos analyses précédentes?";
|
||||
@@ -1,174 +0,0 @@
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "5"; */
|
||||
"5.title" = "Tout ramener au premier plan";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Window"; ObjectID = "19"; */
|
||||
"19.title" = "Fenêtre";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "23"; */
|
||||
"23.title" = "Placer dans le Dock";
|
||||
|
||||
/* Class = "NSMenu"; title = "Window"; ObjectID = "24"; */
|
||||
"24.title" = "Fenêtre";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "About dupeGuru"; ObjectID = "58"; */
|
||||
"58.title" = "À propos de dupeGuru";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Help"; ObjectID = "103"; */
|
||||
"103.title" = "Aide";
|
||||
|
||||
/* Class = "NSMenu"; title = "Help"; ObjectID = "106"; */
|
||||
"106.title" = "Aide";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "dupeGuru Help"; ObjectID = "111"; */
|
||||
"111.title" = "Aide dupeGuru";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Hide dupeGuru"; ObjectID = "134"; */
|
||||
"134.title" = "Masquer dupeGuru";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Quit dupeGuru"; ObjectID = "136"; */
|
||||
"136.title" = "Quitter dupeGuru";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "145"; */
|
||||
"145.title" = "Masquer les autres";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "150"; */
|
||||
"150.title" = "Tout afficher";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "197"; */
|
||||
"197.title" = "Réduire/agrandir";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Details Panel"; ObjectID = "398"; */
|
||||
"398.title" = "Fenêtre de détails";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Preferences..."; ObjectID = "541"; */
|
||||
"541.title" = "Préférences...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Folder Selection Window"; ObjectID = "579"; */
|
||||
"579.title" = "Fenêtre de sélection de dossiers";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Actions"; ObjectID = "597"; */
|
||||
"597.title" = "Actions";
|
||||
|
||||
/* Class = "NSMenu"; title = "Actions"; ObjectID = "598"; */
|
||||
"598.title" = "Actions";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Send Marked to Trash"; ObjectID = "599"; */
|
||||
"599.title" = "Envoyer marqués à la corbeille";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Move Marked to..."; ObjectID = "600"; */
|
||||
"600.title" = "Déplacer marqués vers...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Copy Marked to..."; ObjectID = "601"; */
|
||||
"601.title" = "Copier marqués vers...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Make Selected Reference"; ObjectID = "602"; */
|
||||
"602.title" = "Transformer sélectionnés en références";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Marked from Results"; ObjectID = "603"; */
|
||||
"603.title" = "Retirer marqués des résultats";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Selected from Results"; ObjectID = "605"; */
|
||||
"605.title" = "Retirer sélectionnés des résultats";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Columns"; ObjectID = "618"; */
|
||||
"618.title" = "Colonnes";
|
||||
|
||||
/* Class = "NSMenu"; title = "Columns"; ObjectID = "619"; */
|
||||
"619.title" = "Colonnes";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Open Selected with Default Application"; ObjectID = "708"; */
|
||||
"708.title" = "Ouvrir sélectionné avec l'application par défaut";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Reveal Selected in Finder"; ObjectID = "710"; */
|
||||
"710.title" = "Révéler sélectionné dans Finder";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Add Selected to Ignore List"; ObjectID = "922"; */
|
||||
"922.title" = "Ajouter sélectionnés à la liste de fichiers ignorés";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Close Window"; ObjectID = "924"; */
|
||||
"924.title" = "Fermer";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Start Duplicate Scan"; ObjectID = "926"; */
|
||||
"926.title" = "Commencer à scanner";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Clear Ignore List"; ObjectID = "927"; */
|
||||
"927.title" = "Vider la liste de fichiers ignorés";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Rename Selected"; ObjectID = "933"; */
|
||||
"933.title" = "Renommer sélectionné";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Export Results to XHTML"; ObjectID = "947"; */
|
||||
"947.title" = "Exporter les résultats vers HTML";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Check for update..."; ObjectID = "950"; */
|
||||
"950.title" = "Mise à jour...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Mode"; ObjectID = "959"; */
|
||||
"959.title" = "Mode";
|
||||
|
||||
/* Class = "NSMenu"; title = "Mode"; ObjectID = "960"; */
|
||||
"960.title" = "Mode";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Show Dupes Only"; ObjectID = "961"; */
|
||||
"961.title" = "Ne pas montrer les références";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Show Delta Values"; ObjectID = "962"; */
|
||||
"962.title" = "Montrer les valeurs en tant que delta";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "965"; */
|
||||
"965.title" = "Édition";
|
||||
|
||||
/* Class = "NSMenu"; title = "Edit"; ObjectID = "966"; */
|
||||
"966.title" = "Édition";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "985"; */
|
||||
"985.title" = "Couper";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "986"; */
|
||||
"986.title" = "Copier";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "991"; */
|
||||
"991.title" = "Coller";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Mark All"; ObjectID = "1011"; */
|
||||
"1011.title" = "Tout marquer";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Mark None"; ObjectID = "1012"; */
|
||||
"1012.title" = "Tout démarquer";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Invert Marking"; ObjectID = "1013"; */
|
||||
"1013.title" = "Inverser le marquage";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Mark Selected"; ObjectID = "1014"; */
|
||||
"1014.title" = "Marquer sélectionnés";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "dupeGuru Website"; ObjectID = "1023"; */
|
||||
"1023.title" = "Site web de dupeGuru";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Invoke Custom Command"; ObjectID = "1177"; */
|
||||
"1177.title" = "Invoquer commande personnalisée";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "File"; ObjectID = "1203"; */
|
||||
"1203.title" = "Fichier";
|
||||
|
||||
/* Class = "NSMenu"; title = "File"; ObjectID = "1204"; */
|
||||
"1204.title" = "Fichier";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Load Results..."; ObjectID = "1205"; */
|
||||
"1205.title" = "Charger résultats...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Save Results..."; ObjectID = "1206"; */
|
||||
"1206.title" = "Sauvegarder résultats...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Delete Marked and Replace with Hardlinks"; ObjectID = "1227"; */
|
||||
"1227.title" = "Remplacer marqués par des hardlinks";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Load Recent Results"; ObjectID = "1239"; */
|
||||
"1239.title" = "Charger résultats récents";
|
||||
|
||||
/* Class = "NSMenu"; title = "Load Recent Results"; ObjectID = "1240"; */
|
||||
"1240.title" = "Charger résultats récents";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Results Window"; ObjectID = "1272"; */
|
||||
"1272.title" = "Fenêtre de résultats";
|
||||
@@ -1,19 +0,0 @@
|
||||
|
||||
/* Class = "NSWindow"; title = "Problems!"; ObjectID = "1"; */
|
||||
"1.title" = "Problèmes!";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "There were problems processing some (or all) of the files. The cause of these problems are described in the table below. Those files were not removed from your results."; ObjectID = "4"; */
|
||||
"4.title" = "There were problems processing some (or all) of the files. The cause of these problems are described in the table below. Those files were not removed from your results.";
|
||||
"4.title" = "Il y a eu des problèmes lors du traitement de certain (ou tous) fichiers. La cause de ces problèmes est décrite ci-dessous. Ces fichiers n'ont pas été enlevés des résultats.";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "File Path"; ObjectID = "10"; */
|
||||
"10.headerCell.title" = "Chemin du fichier";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Error Message"; ObjectID = "11"; */
|
||||
"11.headerCell.title" = "Message d'erreur";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Close"; ObjectID = "19"; */
|
||||
"19.title" = "Fermer";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Reveal Selected"; ObjectID = "21"; */
|
||||
"21.title" = "Révéler Fichier";
|
||||
@@ -1,96 +0,0 @@
|
||||
|
||||
/* Class = "NSWindow"; title = "dupeGuru Results"; ObjectID = "1"; */
|
||||
"1.title" = "dupeGuru (Résultats)";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Marked: 0 files, 0 B. Total: 0 files, 0 B."; ObjectID = "6"; */
|
||||
"6.title" = "Marqués: 0 fichiers, 0 B. Total: 0 fichiers, 0 B.";
|
||||
|
||||
/* Class = "NSTableColumn"; headerCell.title = "Name"; ObjectID = "11"; */
|
||||
"11.headerCell.title" = "Nom";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Options"; ObjectID = "15"; */
|
||||
"15.label" = "Options";
|
||||
|
||||
/* Class = "NSToolbarItem"; paletteLabel = "Options"; ObjectID = "15"; */
|
||||
"15.paletteLabel" = "Options";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Filter"; ObjectID = "16"; */
|
||||
"16.label" = "Filtre";
|
||||
|
||||
/* Class = "NSToolbarItem"; paletteLabel = "Filter"; ObjectID = "16"; */
|
||||
"16.paletteLabel" = "Filtre";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Action"; ObjectID = "17"; */
|
||||
"17.label" = "Action";
|
||||
|
||||
/* Class = "NSToolbarItem"; paletteLabel = "Action"; ObjectID = "17"; */
|
||||
"17.paletteLabel" = "Action";
|
||||
|
||||
/* Class = "NSToolbarItem"; label = "Directories"; ObjectID = "19"; */
|
||||
"19.label" = "Dossiers";
|
||||
|
||||
/* Class = "NSToolbarItem"; paletteLabel = "Directories"; ObjectID = "19"; */
|
||||
"19.paletteLabel" = "Dossiers";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Delete Marked and Replace with Hardlinks"; ObjectID = "27"; */
|
||||
"27.title" = "Remplacer marqués par des hardlinks";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Send Marked to Trash"; ObjectID = "29"; */
|
||||
"29.title" = "Envoyer marqués à la corbeille";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Move Marked to..."; ObjectID = "30"; */
|
||||
"30.title" = "Déplacer marqués vers...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Copy Marked to..."; ObjectID = "31"; */
|
||||
"31.title" = "Copier marqués vers...";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Marked from Results"; ObjectID = "32"; */
|
||||
"32.title" = "Retirer marqués des résultats";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Selected from Results"; ObjectID = "34"; */
|
||||
"34.title" = "Retirer sélectionnés des résultats";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Add Selected to Ignore List"; ObjectID = "35"; */
|
||||
"35.title" = "Ajouter sélectionnés à la liste de fichiers ignorés";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Make Selected Reference"; ObjectID = "36"; */
|
||||
"36.title" = "Transformer sélectionnés en références";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Open Selected with Default Application"; ObjectID = "38"; */
|
||||
"38.title" = "Ouvrir sélectionné avec l'application par défaut";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Reveal Selected in Finder"; ObjectID = "39"; */
|
||||
"39.title" = "Révéler sélectionné dans Finder";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Rename Selected"; ObjectID = "40"; */
|
||||
"40.title" = "Renommer sélectionné";
|
||||
|
||||
/* Class = "NSSearchFieldCell"; placeholderString = "Filter"; ObjectID = "42"; */
|
||||
"42.placeholderString" = "Filtre";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[0] = "Details"; ObjectID = "44"; */
|
||||
"44.labels[0]" = "Détails";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[1] = "Dupes Only"; ObjectID = "44"; */
|
||||
"44.labels[1]" = "Sans réf.";
|
||||
|
||||
/* Class = "NSSegmentedCell"; 44.labels[2] = "Delta"; ObjectID = "44"; */
|
||||
"44.labels[2]" = "Delta";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Add Selected to Ignore List"; ObjectID = "68"; */
|
||||
"68.title" = "Ajouter sélectionnés à la liste de fichiers ignorés";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Rename Selected"; ObjectID = "70"; */
|
||||
"70.title" = "Renommer sélectionné";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Remove Selected from Results"; ObjectID = "71"; */
|
||||
"71.title" = "Retirer sélectionnés des résultats";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Make Selected Reference"; ObjectID = "72"; */
|
||||
"72.title" = "Transformer sélectionnés en références";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Reveal Selected in Finder"; ObjectID = "73"; */
|
||||
"73.title" = "Révéler sélectionné dans Finder";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Open Selected with Default Application"; ObjectID = "74"; */
|
||||
"74.title" = "Ouvrir sélectionné avec l'application par défaut";
|
||||
@@ -1,31 +0,0 @@
|
||||
"Collecting files to scan" = "Collecte des fichiers à scanner";
|
||||
"%s (%d discarded)" = "%s (%d hors-groupe)";
|
||||
"Scanning for duplicates" = "Scan de doublons en cours";
|
||||
"Loading" = "Chargement en cours";
|
||||
"Moving" = "Déplacement en cours";
|
||||
"Copying" = "Copie en cours";
|
||||
"Sending to Trash" = "Envoi vers corbeille";
|
||||
"0 matches found" = "0 paires trouvées";
|
||||
"%d matches found" = "%d paires trouvées";
|
||||
"Read size of %d/%d files" = "Lu la taille de %d/%d fichiers";
|
||||
"Grouped %d/%d matches" = "%d/%d paires groupées";
|
||||
"%d / %d (%s / %s) duplicates marked." = "%d / %d (%s / %s) doublons marqués.";
|
||||
" filter: %s" = " filtre: %s";
|
||||
"Read metadata of %d/%d files" = "Lu les métadonnées de %d/%d fichiers";
|
||||
"Removing false matches" = "Retrait des paires invalides";
|
||||
"Processed %d/%d matches against the ignore list" = "Vérification de %d/%d paires dans la ignore list";
|
||||
"Doing group prioritization" = "Prioritization des groupes";
|
||||
|
||||
"Continue" = "Continuer";
|
||||
"Continue ({})" = "Continuer ({})";
|
||||
|
||||
"Analyzed %d/%d pictures" = "Analyzé %d/%d images";
|
||||
"Preparing for matching" = "Préparation pour la comparaison";
|
||||
"Performed %d/%d chunk matches" = "%d/%d blocs d'images comparés";
|
||||
"Verified %d/%d matches" = "Vérifié %d/%d paires";
|
||||
|
||||
"Removing dead tracks from your iTunes Library" = "Retrait des tracks mortes de votre librairie iTunes";
|
||||
"Scanning the iTunes Library" = "Scan de la librairie iTunes en cours";
|
||||
|
||||
"Probing iPhoto. Don't touch it during the operation!" = "Communication avec iPhoto en cours. N'y touchez pas!";
|
||||
"Sending dupes to the Trash" = "Envoi de doublons à la corbeille en cours";
|
||||
41
cocoa/base/main.m
Normal file
41
cocoa/base/main.m
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import <Python.h>
|
||||
#import <wchar.h>
|
||||
#import <locale.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
|
||||
/* We have to set the locate to UTF8 for mbstowcs() to correctly convert non-ascii chars in paths */
|
||||
setlocale(LC_ALL, "en_US.UTF-8");
|
||||
NSString *respath = [[NSBundle mainBundle] resourcePath];
|
||||
NSString *mainpy = [respath stringByAppendingPathComponent:@"dg_cocoa.py"];
|
||||
wchar_t wPythonPath[PATH_MAX+1];
|
||||
NSString *pypath = [respath stringByAppendingPathComponent:@"py"];
|
||||
mbstowcs(wPythonPath, [pypath fileSystemRepresentation], PATH_MAX+1);
|
||||
Py_SetPath(wPythonPath);
|
||||
Py_SetPythonHome(wPythonPath);
|
||||
Py_Initialize();
|
||||
PyEval_InitThreads();
|
||||
PyGILState_STATE gilState = PyGILState_Ensure();
|
||||
FILE* fp = fopen([mainpy UTF8String], "r");
|
||||
PyRun_SimpleFile(fp, [mainpy UTF8String]);
|
||||
fclose(fp);
|
||||
PyGILState_Release(gilState);
|
||||
if (gilState == PyGILState_LOCKED) {
|
||||
PyThreadState_Swap(NULL);
|
||||
PyEval_ReleaseLock();
|
||||
}
|
||||
int result = NSApplicationMain(argc, (const char **) argv);
|
||||
Py_Finalize();
|
||||
[pool release];
|
||||
return result;
|
||||
}
|
||||
0
cocoa/inter/__init__.py
Normal file
0
cocoa/inter/__init__.py
Normal file
219
cocoa/inter/app.py
Normal file
219
cocoa/inter/app.py
Normal file
@@ -0,0 +1,219 @@
|
||||
import logging
|
||||
|
||||
from objp.util import pyref, dontwrap
|
||||
from jobprogress import job
|
||||
import cocoa
|
||||
from cocoa import install_exception_hook, proxy
|
||||
from cocoa.inter import PyFairware, FairwareView
|
||||
from hscommon.trans import trget
|
||||
|
||||
from core.app import JobType
|
||||
|
||||
tr = trget('ui')
|
||||
|
||||
JOBID2TITLE = {
|
||||
JobType.Scan: tr("Scanning for duplicates"),
|
||||
JobType.Load: tr("Loading"),
|
||||
JobType.Move: tr("Moving"),
|
||||
JobType.Copy: tr("Copying"),
|
||||
JobType.Delete: tr("Sending to Trash"),
|
||||
}
|
||||
|
||||
class DupeGuruView(FairwareView):
|
||||
def askYesNoWithPrompt_(self, prompt: str) -> bool: pass
|
||||
def showProblemDialog(self): pass
|
||||
def selectDestFolderWithPrompt_(self, prompt: str) -> str: pass
|
||||
|
||||
class PyDupeGuruBase(PyFairware):
|
||||
FOLLOW_PROTOCOLS = ['Worker']
|
||||
|
||||
@dontwrap
|
||||
def _init(self, modelclass):
|
||||
logging.basicConfig(level=logging.WARNING, format='%(levelname)s %(message)s')
|
||||
install_exception_hook()
|
||||
appdata = proxy.getAppdataPath()
|
||||
self.model = modelclass(self, appdata)
|
||||
self.progress = cocoa.ThreadedJobPerformer()
|
||||
|
||||
#---Sub-proxies
|
||||
def detailsPanel(self) -> pyref:
|
||||
return self.model.details_panel
|
||||
|
||||
def directoryTree(self) -> pyref:
|
||||
return self.model.directory_tree
|
||||
|
||||
def problemDialog(self) -> pyref:
|
||||
return self.model.problem_dialog
|
||||
|
||||
def statsLabel(self) -> pyref:
|
||||
return self.model.stats_label
|
||||
|
||||
def resultTable(self) -> pyref:
|
||||
return self.model.result_table
|
||||
|
||||
def ignoreListDialog(self) -> pyref:
|
||||
return self.model.ignore_list_dialog
|
||||
|
||||
#---Directories
|
||||
def addDirectory_(self, directory: str) -> int:
|
||||
return self.model.add_directory(directory)
|
||||
|
||||
#---Results
|
||||
def doScan(self):
|
||||
self.model.start_scanning()
|
||||
|
||||
def exportToXHTML(self) -> str:
|
||||
return self.model.export_to_xhtml()
|
||||
|
||||
def loadSession(self):
|
||||
self.model.load()
|
||||
|
||||
def loadResultsFrom_(self, filename: str):
|
||||
self.model.load_from(filename)
|
||||
|
||||
def markAll(self):
|
||||
self.model.mark_all()
|
||||
|
||||
def markNone(self):
|
||||
self.model.mark_none()
|
||||
|
||||
def markInvert(self):
|
||||
self.model.mark_invert()
|
||||
|
||||
def purgeIgnoreList(self):
|
||||
self.model.purge_ignore_list()
|
||||
|
||||
def toggleSelectedMark(self):
|
||||
self.model.toggle_selected_mark_state()
|
||||
|
||||
def saveSession(self):
|
||||
self.model.save()
|
||||
|
||||
def saveResultsAs_(self, filename: str):
|
||||
self.model.save_as(filename)
|
||||
|
||||
#---Actions
|
||||
def addSelectedToIgnoreList(self):
|
||||
self.model.add_selected_to_ignore_list()
|
||||
|
||||
def deleteMarked(self):
|
||||
self.model.delete_marked()
|
||||
|
||||
def hardlinkMarked(self):
|
||||
self.model.delete_marked(replace_with_hardlinks=True)
|
||||
|
||||
def applyFilter_(self, filter: str):
|
||||
self.model.apply_filter(filter)
|
||||
|
||||
def makeSelectedReference(self):
|
||||
self.model.make_selected_reference()
|
||||
|
||||
def copyMarked(self):
|
||||
self.model.copy_or_move_marked(copy=True)
|
||||
|
||||
def moveMarked(self):
|
||||
self.model.copy_or_move_marked(copy=False)
|
||||
|
||||
def openSelected(self):
|
||||
self.model.open_selected()
|
||||
|
||||
def removeMarked(self):
|
||||
self.model.remove_marked()
|
||||
|
||||
def removeSelected(self):
|
||||
self.model.remove_selected()
|
||||
|
||||
def revealSelected(self):
|
||||
self.model.reveal_selected()
|
||||
|
||||
def invokeCustomCommand(self):
|
||||
self.model.invoke_custom_command()
|
||||
|
||||
def showIgnoreList(self):
|
||||
self.model.ignore_list_dialog.show()
|
||||
|
||||
#---Information
|
||||
def resultsAreModified(self) -> bool:
|
||||
return self.model.results.is_modified
|
||||
|
||||
#---Properties
|
||||
def setMixFileKind_(self, mix_file_kind: bool):
|
||||
self.model.scanner.mix_file_kind = mix_file_kind
|
||||
|
||||
def setEscapeFilterRegexp_(self, escape_filter_regexp: bool):
|
||||
self.model.options['escape_filter_regexp'] = escape_filter_regexp
|
||||
|
||||
def setRemoveEmptyFolders_(self, remove_empty_folders: bool):
|
||||
self.model.options['clean_empty_dirs'] = remove_empty_folders
|
||||
|
||||
def setIgnoreHardlinkMatches_(self, ignore_hardlink_matches: bool):
|
||||
self.model.options['ignore_hardlink_matches'] = ignore_hardlink_matches
|
||||
|
||||
def setCopyMoveDestType_(self, copymove_dest_type: int):
|
||||
self.model.options['copymove_dest_type'] = copymove_dest_type
|
||||
|
||||
#---Worker
|
||||
def getJobProgress(self) -> object: # NSNumber
|
||||
try:
|
||||
return self.progress.last_progress
|
||||
except AttributeError:
|
||||
# I have *no idea* why this can possible happen (last_progress is always set by
|
||||
# create_job() *before* any threaded job notification, which shows the progress panel,
|
||||
# is sent), but it happens anyway, so there we go. ref: #106
|
||||
return -1
|
||||
|
||||
def getJobDesc(self) -> str:
|
||||
try:
|
||||
return self.progress.last_desc
|
||||
except AttributeError:
|
||||
# see getJobProgress
|
||||
return ''
|
||||
|
||||
def cancelJob(self):
|
||||
self.progress.job_cancelled = True
|
||||
|
||||
def jobCompleted_(self, jobid: str):
|
||||
result = self.model._job_completed(jobid, self.progress.last_error)
|
||||
if not result:
|
||||
self.progress.reraise_if_error()
|
||||
|
||||
#--- model --> view
|
||||
@dontwrap
|
||||
def open_path(self, path):
|
||||
proxy.openPath_(str(path))
|
||||
|
||||
@dontwrap
|
||||
def reveal_path(self, path):
|
||||
proxy.revealPath_(str(path))
|
||||
|
||||
@dontwrap
|
||||
def start_job(self, jobid, func, args=()):
|
||||
try:
|
||||
j = self.progress.create_job()
|
||||
args = tuple([j] + list(args))
|
||||
self.progress.run_threaded(func, args=args)
|
||||
except job.JobInProgressError:
|
||||
proxy.postNotification_userInfo_('JobInProgress', None)
|
||||
else:
|
||||
ud = {'desc': JOBID2TITLE[jobid], 'jobid':jobid}
|
||||
proxy.postNotification_userInfo_('JobStarted', ud)
|
||||
|
||||
@dontwrap
|
||||
def ask_yes_no(self, prompt):
|
||||
return self.callback.askYesNoWithPrompt_(prompt)
|
||||
|
||||
@dontwrap
|
||||
def show_results_window(self):
|
||||
# Not needed yet because our progress dialog is shown as a sheet of the results window,
|
||||
# which causes it to be already visible when the scan/load ends.
|
||||
# XXX Make progress sheet be a child of the folder selection window.
|
||||
pass
|
||||
|
||||
@dontwrap
|
||||
def show_problem_dialog(self):
|
||||
self.callback.showProblemDialog()
|
||||
|
||||
@dontwrap
|
||||
def select_dest_folder(self, prompt):
|
||||
return self.callback.selectDestFolderWithPrompt_(prompt)
|
||||
|
||||
283
cocoa/inter/app_me.py
Normal file
283
cocoa/inter/app_me.py
Normal file
@@ -0,0 +1,283 @@
|
||||
# Created By: Virgil Dupras
|
||||
# Created On: 2006/11/16
|
||||
# Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
#
|
||||
# This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
# which should be included with this package. The terms are also available at
|
||||
# http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
import logging
|
||||
from appscript import app, its, k, CommandError, ApplicationNotFoundError
|
||||
import plistlib
|
||||
import time
|
||||
import os.path as op
|
||||
|
||||
from cocoa import as_fetch, proxy
|
||||
from hscommon import io
|
||||
from hscommon.trans import trget
|
||||
from hscommon.path import Path
|
||||
|
||||
from core import directories
|
||||
from core.app import JobType
|
||||
from core.scanner import ScanType
|
||||
from core_me.app import DupeGuru as DupeGuruBase
|
||||
from core_me import fs
|
||||
from .app import JOBID2TITLE, PyDupeGuruBase
|
||||
|
||||
tr = trget('ui')
|
||||
|
||||
JobType.RemoveDeadTracks = 'jobRemoveDeadTracks'
|
||||
JobType.ScanDeadTracks = 'jobScanDeadTracks'
|
||||
|
||||
JOBID2TITLE.update({
|
||||
JobType.RemoveDeadTracks: tr("Removing dead tracks from your iTunes Library"),
|
||||
JobType.ScanDeadTracks: tr("Scanning the iTunes Library"),
|
||||
})
|
||||
|
||||
ITUNES = 'iTunes'
|
||||
ITUNES_PATH = Path('iTunes Library')
|
||||
|
||||
def get_itunes_library(a):
|
||||
try:
|
||||
[source] = [s for s in a.sources(timeout=0) if s.kind(timeout=0) == k.library]
|
||||
[library] = source.library_playlists(timeout=0)
|
||||
return library
|
||||
except ValueError:
|
||||
logging.warning('Some unexpected iTunes configuration encountered')
|
||||
return None
|
||||
|
||||
class ITunesSong(fs.MusicFile):
|
||||
def __init__(self, song_data):
|
||||
path = Path(proxy.url2path_(song_data['Location']))
|
||||
fs.MusicFile.__init__(self, path)
|
||||
self.id = song_data['Track ID']
|
||||
|
||||
def remove_from_library(self):
|
||||
try:
|
||||
a = app(ITUNES)
|
||||
library = get_itunes_library(a)
|
||||
if library is None:
|
||||
return
|
||||
[song] = library.file_tracks[its.database_ID == self.id]()
|
||||
a.delete(song, timeout=0)
|
||||
except ValueError:
|
||||
msg = "Could not find song '{}' (trackid: {}) in iTunes Library".format(str(self.path), self.id)
|
||||
raise EnvironmentError(msg)
|
||||
except (CommandError, RuntimeError) as e:
|
||||
raise EnvironmentError(str(e))
|
||||
|
||||
display_folder_path = ITUNES_PATH
|
||||
|
||||
def get_itunes_database_path():
|
||||
plisturls = proxy.prefValue_inDomain_('iTunesRecentDatabases', 'com.apple.iApps')
|
||||
if not plisturls:
|
||||
raise directories.InvalidPathError()
|
||||
plistpath = proxy.url2path_(plisturls[0])
|
||||
return Path(plistpath)
|
||||
|
||||
def get_itunes_songs(plistpath):
|
||||
if not io.exists(plistpath):
|
||||
return []
|
||||
plist = plistlib.readPlist(str(plistpath))
|
||||
result = []
|
||||
for song_data in plist['Tracks'].values():
|
||||
if song_data['Track Type'] != 'File':
|
||||
continue
|
||||
try:
|
||||
song = ITunesSong(song_data)
|
||||
except KeyError: # No "Location" or "Track ID" key in track
|
||||
continue
|
||||
if io.exists(song.path):
|
||||
result.append(song)
|
||||
return result
|
||||
|
||||
class Directories(directories.Directories):
|
||||
def __init__(self, fileclasses):
|
||||
directories.Directories.__init__(self, fileclasses)
|
||||
try:
|
||||
self.itunes_libpath = get_itunes_database_path()
|
||||
except directories.InvalidPathError:
|
||||
self.itunes_libpath = None
|
||||
|
||||
def _get_files(self, from_path, j):
|
||||
if from_path == ITUNES_PATH:
|
||||
if self.itunes_libpath is None:
|
||||
return []
|
||||
is_ref = self.get_state(from_path) == directories.DirectoryState.Reference
|
||||
songs = get_itunes_songs(self.itunes_libpath)
|
||||
for song in songs:
|
||||
song.is_ref = is_ref
|
||||
return songs
|
||||
else:
|
||||
return directories.Directories._get_files(self, from_path, j)
|
||||
|
||||
@staticmethod
|
||||
def get_subfolders(path):
|
||||
if path == ITUNES_PATH:
|
||||
return []
|
||||
else:
|
||||
return directories.Directories.get_subfolders(path)
|
||||
|
||||
def add_path(self, path):
|
||||
if path == ITUNES_PATH:
|
||||
if path not in self:
|
||||
self._dirs.append(path)
|
||||
else:
|
||||
directories.Directories.add_path(self, path)
|
||||
|
||||
def has_itunes_path(self):
|
||||
return any(path == ITUNES_PATH for path in self._dirs)
|
||||
|
||||
def has_any_file(self):
|
||||
# If we don't do that, it causes a hangup in the GUI when we click Start Scanning because
|
||||
# checking if there's any file to scan involves reading the whole library. If we have the
|
||||
# iTunes library, we assume we have at least one file.
|
||||
if self.has_itunes_path():
|
||||
return True
|
||||
else:
|
||||
return directories.Directories.has_any_file(self)
|
||||
|
||||
|
||||
class DupeGuruME(DupeGuruBase):
|
||||
def __init__(self, view, appdata):
|
||||
appdata = op.join(appdata, 'dupeGuru Music Edition')
|
||||
DupeGuruBase.__init__(self, view, appdata)
|
||||
# Use fileclasses set in DupeGuruBase.__init__()
|
||||
self.directories = Directories(fileclasses=self.directories.fileclasses)
|
||||
self.dead_tracks = []
|
||||
|
||||
def _do_delete(self, j, replace_with_hardlinks):
|
||||
# XXX If I read correctly, Python 3.3 will allow us to go fetch inner function easily, so
|
||||
# we'll be able to replace "op" below with DupeGuruBase._do_delete.op.
|
||||
def op(dupe):
|
||||
j.add_progress()
|
||||
return self._do_delete_dupe(dupe, replace_with_hardlinks)
|
||||
|
||||
marked = [dupe for dupe in self.results.dupes if self.results.is_marked(dupe)]
|
||||
j.start_job(self.results.mark_count, tr("Sending dupes to the Trash"))
|
||||
if any(isinstance(dupe, ITunesSong) for dupe in marked):
|
||||
j.add_progress(0, desc=tr("Talking to iTunes. Don't touch it!"))
|
||||
try:
|
||||
a = app(ITUNES)
|
||||
a.activate(timeout=0)
|
||||
except (CommandError, RuntimeError, ApplicationNotFoundError):
|
||||
pass
|
||||
self.results.perform_on_marked(op, True)
|
||||
|
||||
def _do_delete_dupe(self, dupe, replace_with_hardlinks):
|
||||
if isinstance(dupe, ITunesSong):
|
||||
dupe.remove_from_library()
|
||||
DupeGuruBase._do_delete_dupe(self, dupe, replace_with_hardlinks)
|
||||
|
||||
def _create_file(self, path):
|
||||
if (self.directories.itunes_libpath is not None) and (path in self.directories.itunes_libpath[:-1]):
|
||||
if not hasattr(self, 'itunes_songs'):
|
||||
songs = get_itunes_songs(self.directories.itunes_libpath)
|
||||
self.itunes_songs = {song.path: song for song in songs}
|
||||
if path in self.itunes_songs:
|
||||
return self.itunes_songs[path]
|
||||
else:
|
||||
pass # We'll return the default file type, as per the last line of this method
|
||||
return DupeGuruBase._create_file(self, path)
|
||||
|
||||
def _job_completed(self, jobid, exc):
|
||||
if (jobid in {JobType.RemoveDeadTracks, JobType.ScanDeadTracks}) and (exc is not None):
|
||||
msg = tr("There were communication problems with iTunes. The operation couldn't be completed.")
|
||||
self.view.show_message(msg)
|
||||
return True
|
||||
if jobid == JobType.ScanDeadTracks:
|
||||
dead_tracks_count = len(self.dead_tracks)
|
||||
if dead_tracks_count > 0:
|
||||
msg = tr("Your iTunes Library contains %d dead tracks ready to be removed. Continue?")
|
||||
if self.view.ask_yes_no(msg % dead_tracks_count):
|
||||
self.remove_dead_tracks()
|
||||
else:
|
||||
msg = tr("You have no dead tracks in your iTunes Library")
|
||||
self.view.show_message(msg)
|
||||
if jobid == JobType.Load:
|
||||
if hasattr(self, 'itunes_songs'):
|
||||
# If we load another file, we want a refresh song list
|
||||
del self.itunes_songs
|
||||
DupeGuruBase._job_completed(self, jobid, exc)
|
||||
|
||||
def copy_or_move(self, dupe, copy, destination, dest_type):
|
||||
if isinstance(dupe, ITunesSong):
|
||||
copy = True
|
||||
return DupeGuruBase.copy_or_move(self, dupe, copy, destination, dest_type)
|
||||
|
||||
def start_scanning(self):
|
||||
if self.directories.has_itunes_path():
|
||||
try:
|
||||
app(ITUNES)
|
||||
except ApplicationNotFoundError:
|
||||
self.view.show_message(tr("The iTunes application couldn't be found."))
|
||||
return
|
||||
DupeGuruBase.start_scanning(self)
|
||||
|
||||
def remove_dead_tracks(self):
|
||||
def do(j):
|
||||
a = app(ITUNES)
|
||||
a.activate(timeout=0)
|
||||
for index, track in enumerate(j.iter_with_progress(self.dead_tracks)):
|
||||
if index % 100 == 0:
|
||||
time.sleep(.1)
|
||||
try:
|
||||
track.delete(timeout=0)
|
||||
except CommandError as e:
|
||||
logging.warning('Error while trying to remove a track from iTunes: %s' % str(e))
|
||||
|
||||
self.view.start_job(JobType.RemoveDeadTracks, do)
|
||||
|
||||
def scan_dead_tracks(self):
|
||||
def do(j):
|
||||
a = app(ITUNES)
|
||||
a.activate(timeout=0)
|
||||
library = get_itunes_library(a)
|
||||
if library is None:
|
||||
return
|
||||
self.dead_tracks = []
|
||||
tracks = as_fetch(library.file_tracks, k.file_track)
|
||||
for index, track in enumerate(j.iter_with_progress(tracks)):
|
||||
if index % 100 == 0:
|
||||
time.sleep(.1)
|
||||
if track.location(timeout=0) == k.missing_value:
|
||||
self.dead_tracks.append(track)
|
||||
logging.info('Found %d dead tracks' % len(self.dead_tracks))
|
||||
|
||||
self.view.start_job(JobType.ScanDeadTracks, do)
|
||||
|
||||
class PyDupeGuru(PyDupeGuruBase):
|
||||
def __init__(self):
|
||||
self._init(DupeGuruME)
|
||||
|
||||
def scanDeadTracks(self):
|
||||
self.model.scan_dead_tracks()
|
||||
|
||||
#---Properties
|
||||
def setMinMatchPercentage_(self, percentage: int):
|
||||
self.model.scanner.min_match_percentage = percentage
|
||||
|
||||
def setScanType_(self, scan_type: int):
|
||||
try:
|
||||
self.model.scanner.scan_type = [
|
||||
ScanType.Filename,
|
||||
ScanType.Fields,
|
||||
ScanType.FieldsNoOrder,
|
||||
ScanType.Tag,
|
||||
ScanType.Contents,
|
||||
ScanType.ContentsAudio,
|
||||
][scan_type]
|
||||
except IndexError:
|
||||
pass
|
||||
|
||||
def setWordWeighting_(self, words_are_weighted: bool):
|
||||
self.model.scanner.word_weighting = words_are_weighted
|
||||
|
||||
def setMatchSimilarWords_(self, match_similar_words: bool):
|
||||
self.model.scanner.match_similar_words = match_similar_words
|
||||
|
||||
def enable_scanForTag_(self, enable: bool, scan_tag: str):
|
||||
if enable:
|
||||
self.model.scanner.scanned_tags.add(scan_tag)
|
||||
else:
|
||||
self.model.scanner.scanned_tags.discard(scan_tag)
|
||||
@@ -1,6 +1,6 @@
|
||||
# Created By: Virgil Dupras
|
||||
# Created On: 2006/11/13
|
||||
# Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
# Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
#
|
||||
# This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
# which should be included with this package. The terms are also available at
|
||||
@@ -16,13 +16,17 @@ from appscript import app, its, CommandError, ApplicationNotFoundError
|
||||
from hscommon import io
|
||||
from hscommon.util import remove_invalid_xml
|
||||
from hscommon.path import Path
|
||||
from hscommon.cocoa.objcmin import NSUserDefaults, NSURL
|
||||
from hscommon.trans import tr
|
||||
from hscommon.trans import trget
|
||||
from cocoa import proxy
|
||||
|
||||
from core import app_cocoa, directories
|
||||
from . import data, _block_osx
|
||||
from .photo import Photo as PhotoBase
|
||||
from .scanner import ScannerPE
|
||||
from core.scanner import ScanType
|
||||
from core import directories
|
||||
from core_pe import _block_osx
|
||||
from core_pe.photo import Photo as PhotoBase
|
||||
from core_pe.app import DupeGuru as DupeGuruBase
|
||||
from .app import PyDupeGuruBase
|
||||
|
||||
tr = trget('ui')
|
||||
|
||||
IPHOTO_PATH = Path('iPhoto Library')
|
||||
|
||||
@@ -49,14 +53,11 @@ class IPhoto(Photo):
|
||||
return IPHOTO_PATH
|
||||
|
||||
def get_iphoto_database_path():
|
||||
ud = NSUserDefaults.standardUserDefaults()
|
||||
prefs = ud.persistentDomainForName_('com.apple.iApps')
|
||||
if prefs is None:
|
||||
plisturls = proxy.prefValue_inDomain_('iPhotoRecentDatabases', 'com.apple.iApps')
|
||||
if not plisturls:
|
||||
raise directories.InvalidPathError()
|
||||
if 'iPhotoRecentDatabases' not in prefs:
|
||||
raise directories.InvalidPathError()
|
||||
plisturl = NSURL.URLWithString_(prefs['iPhotoRecentDatabases'][0])
|
||||
return Path(plisturl.path())
|
||||
plistpath = proxy.url2path_(plisturls[0])
|
||||
return Path(plistpath)
|
||||
|
||||
def get_iphoto_pictures(plistpath):
|
||||
if not io.exists(plistpath):
|
||||
@@ -89,7 +90,7 @@ class Directories(directories.Directories):
|
||||
except directories.InvalidPathError:
|
||||
self.iphoto_libpath = None
|
||||
|
||||
def _get_files(self, from_path):
|
||||
def _get_files(self, from_path, j):
|
||||
if from_path == IPHOTO_PATH:
|
||||
if self.iphoto_libpath is None:
|
||||
return []
|
||||
@@ -99,7 +100,7 @@ class Directories(directories.Directories):
|
||||
photo.is_ref = is_ref
|
||||
return photos
|
||||
else:
|
||||
return directories.Directories._get_files(self, from_path)
|
||||
return directories.Directories._get_files(self, from_path, j)
|
||||
|
||||
@staticmethod
|
||||
def get_subfolders(path):
|
||||
@@ -128,12 +129,11 @@ class Directories(directories.Directories):
|
||||
return directories.Directories.has_any_file(self)
|
||||
|
||||
|
||||
class DupeGuruPE(app_cocoa.DupeGuru):
|
||||
def __init__(self):
|
||||
app_cocoa.DupeGuru.__init__(self, data, 'dupeGuru Picture Edition')
|
||||
self.scanner = ScannerPE()
|
||||
class DupeGuruPE(DupeGuruBase):
|
||||
def __init__(self, view, appdata):
|
||||
appdata = op.join(appdata, 'dupeGuru Picture Edition')
|
||||
DupeGuruBase.__init__(self, view, appdata)
|
||||
self.directories = Directories()
|
||||
self.scanner.cache_path = op.join(self.appdata, 'cached_pictures.db')
|
||||
|
||||
def _do_delete(self, j, replace_with_hardlinks):
|
||||
def op(dupe):
|
||||
@@ -156,7 +156,11 @@ class DupeGuruPE(app_cocoa.DupeGuru):
|
||||
if isinstance(dupe, IPhoto):
|
||||
try:
|
||||
a = app('iPhoto')
|
||||
[photo] = a.photo_library_album().photos[its.image_path == str(dupe.path)]()
|
||||
album = a.photo_library_album()
|
||||
if album is None:
|
||||
msg = "There are communication problems with iPhoto. Try opening iPhoto first, it might solve it."
|
||||
raise EnvironmentError(msg)
|
||||
[photo] = album.photos[its.image_path == str(dupe.path)]()
|
||||
a.remove(photo, timeout=0)
|
||||
except ValueError:
|
||||
msg = "Could not find photo '{}' in iPhoto Library".format(str(dupe.path))
|
||||
@@ -164,17 +168,17 @@ class DupeGuruPE(app_cocoa.DupeGuru):
|
||||
except (CommandError, RuntimeError) as e:
|
||||
raise EnvironmentError(str(e))
|
||||
else:
|
||||
app_cocoa.DupeGuru._do_delete_dupe(self, dupe, replace_with_hardlinks)
|
||||
DupeGuruBase._do_delete_dupe(self, dupe, replace_with_hardlinks)
|
||||
|
||||
def _create_file(self, path):
|
||||
if (self.directories.iphoto_libpath is not None) and (path in self.directories.iphoto_libpath[:-1]):
|
||||
return IPhoto(path)
|
||||
return app_cocoa.DupeGuru._create_file(self, path)
|
||||
return DupeGuruBase._create_file(self, path)
|
||||
|
||||
def copy_or_move(self, dupe, copy, destination, dest_type):
|
||||
if isinstance(dupe, IPhoto):
|
||||
copy = True
|
||||
return app_cocoa.DupeGuru.copy_or_move(self, dupe, copy, destination, dest_type)
|
||||
return DupeGuruBase.copy_or_move(self, dupe, copy, destination, dest_type)
|
||||
|
||||
def selected_dupe_path(self):
|
||||
if not self.selected_dupes:
|
||||
@@ -190,11 +194,40 @@ class DupeGuruPE(app_cocoa.DupeGuru):
|
||||
return ref.path
|
||||
|
||||
def start_scanning(self):
|
||||
result = app_cocoa.DupeGuru.start_scanning(self)
|
||||
if self.directories.has_iphoto_path():
|
||||
try:
|
||||
app('iPhoto')
|
||||
except ApplicationNotFoundError:
|
||||
return 4
|
||||
return result
|
||||
self.view.show_message(tr("The iPhoto application couldn't be found."))
|
||||
return
|
||||
DupeGuruBase.start_scanning(self)
|
||||
|
||||
class PyDupeGuru(PyDupeGuruBase):
|
||||
def __init__(self):
|
||||
self._init(DupeGuruPE)
|
||||
|
||||
def clearPictureCache(self):
|
||||
self.model.scanner.clear_picture_cache()
|
||||
|
||||
#---Information
|
||||
def getSelectedDupePath(self) -> str:
|
||||
return str(self.model.selected_dupe_path())
|
||||
|
||||
def getSelectedDupeRefPath(self) -> str:
|
||||
return str(self.model.selected_dupe_ref_path())
|
||||
|
||||
#---Properties
|
||||
def setScanType_(self, scan_type: int):
|
||||
try:
|
||||
self.model.scanner.scan_type = [
|
||||
ScanType.FuzzyBlock,
|
||||
ScanType.ExifTimestamp,
|
||||
][scan_type]
|
||||
except IndexError:
|
||||
pass
|
||||
|
||||
def setMatchScaled_(self, match_scaled: bool):
|
||||
self.model.scanner.match_scaled = match_scaled
|
||||
|
||||
def setMinMatchPercentage_(self, percentage: int):
|
||||
self.model.scanner.threshold = percentage
|
||||
@@ -1,28 +1,29 @@
|
||||
# Created By: Virgil Dupras
|
||||
# Created On: 2009-05-24
|
||||
# Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
# Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
#
|
||||
# This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
# which should be included with this package. The terms are also available at
|
||||
# http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
import logging
|
||||
import os.path as op
|
||||
|
||||
from hscommon import io
|
||||
from hscommon.path import Path
|
||||
from hscommon.cocoa.objcmin import NSWorkspace
|
||||
from cocoa import proxy
|
||||
|
||||
from core.scanner import ScanType
|
||||
from core import fs
|
||||
from core.app_cocoa import DupeGuru as DupeGuruBase
|
||||
from core.directories import Directories as DirectoriesBase, DirectoryState
|
||||
from . import data
|
||||
from core_se.app import DupeGuru as DupeGuruBase
|
||||
from .app import PyDupeGuruBase
|
||||
|
||||
def is_bundle(str_path):
|
||||
sw = NSWorkspace.sharedWorkspace()
|
||||
uti, error = sw.typeOfFile_error_(str_path, None)
|
||||
if error is not None:
|
||||
uti = proxy.getUTI_(str_path)
|
||||
if uti is None:
|
||||
logging.warning('There was an error trying to detect the UTI of %s', str_path)
|
||||
return sw.type_conformsToType_(uti, 'com.apple.bundle') or sw.type_conformsToType_(uti, 'com.apple.package')
|
||||
return proxy.type_conformsToType_(uti, 'com.apple.bundle') or proxy.type_conformsToType_(uti, 'com.apple.package')
|
||||
|
||||
class Bundle(fs.Folder):
|
||||
@classmethod
|
||||
@@ -45,7 +46,7 @@ class Directories(DirectoriesBase):
|
||||
if path[:2] == Path('/Users') and path[3:] in self.HOME_PATH_TO_EXCLUDE:
|
||||
return DirectoryState.Excluded
|
||||
|
||||
def _get_folders(self, from_folder):
|
||||
def _get_folders(self, from_folder, j):
|
||||
# We don't want to scan bundle's subfolder even in Folders mode. Bundle's integrity has to
|
||||
# stay intact.
|
||||
if is_bundle(str(from_folder.path)):
|
||||
@@ -56,7 +57,7 @@ class Directories(DirectoriesBase):
|
||||
yield from_folder
|
||||
return
|
||||
else:
|
||||
for folder in DirectoriesBase._get_folders(self, from_folder):
|
||||
for folder in DirectoriesBase._get_folders(self, from_folder, j):
|
||||
yield folder
|
||||
|
||||
@staticmethod
|
||||
@@ -66,7 +67,36 @@ class Directories(DirectoriesBase):
|
||||
|
||||
|
||||
class DupeGuru(DupeGuruBase):
|
||||
def __init__(self):
|
||||
DupeGuruBase.__init__(self, data, 'dupeGuru')
|
||||
def __init__(self, view, appdata):
|
||||
appdata = op.join(appdata, 'dupeGuru')
|
||||
DupeGuruBase.__init__(self, view, appdata)
|
||||
self.directories = Directories()
|
||||
|
||||
|
||||
class PyDupeGuru(PyDupeGuruBase):
|
||||
def __init__(self):
|
||||
self._init(DupeGuru)
|
||||
|
||||
#---Properties
|
||||
def setMinMatchPercentage_(self, percentage: int):
|
||||
self.model.scanner.min_match_percentage = int(percentage)
|
||||
|
||||
def setScanType_(self, scan_type: int):
|
||||
try:
|
||||
self.model.scanner.scan_type = [
|
||||
ScanType.Filename,
|
||||
ScanType.Contents,
|
||||
ScanType.Folders,
|
||||
][scan_type]
|
||||
except IndexError:
|
||||
pass
|
||||
|
||||
def setWordWeighting_(self, words_are_weighted: bool):
|
||||
self.model.scanner.word_weighting = words_are_weighted
|
||||
|
||||
def setMatchSimilarWords_(self, match_similar_words: bool):
|
||||
self.model.scanner.match_similar_words = match_similar_words
|
||||
|
||||
def setSizeThreshold_(self, size_threshold: int):
|
||||
self.model.scanner.size_threshold = size_threshold
|
||||
|
||||
11
cocoa/inter/details_panel.py
Normal file
11
cocoa/inter/details_panel.py
Normal file
@@ -0,0 +1,11 @@
|
||||
from cocoa.inter import PyGUIObject, GUIObjectView
|
||||
|
||||
class DetailsPanelView(GUIObjectView):
|
||||
pass
|
||||
|
||||
class PyDetailsPanel(PyGUIObject):
|
||||
def numberOfRows(self) -> int:
|
||||
return self.model.row_count()
|
||||
|
||||
def valueForColumn_row_(self, column: str, row: int) -> object:
|
||||
return self.model.row(row)[int(column)]
|
||||
18
cocoa/inter/directory_outline.py
Normal file
18
cocoa/inter/directory_outline.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from objp.util import dontwrap
|
||||
from cocoa.inter import PyOutline, GUIObjectView
|
||||
|
||||
class DirectoryOutlineView(GUIObjectView):
|
||||
pass
|
||||
|
||||
class PyDirectoryOutline(PyOutline):
|
||||
def addDirectory_(self, path: str):
|
||||
self.model.add_directory(path)
|
||||
|
||||
def removeSelectedDirectory(self):
|
||||
self.model.remove_selected()
|
||||
|
||||
# python --> cocoa
|
||||
@dontwrap
|
||||
def refresh_states(self):
|
||||
# Under cocoa, both refresh() and refresh_states() do the same thing.
|
||||
self.callback.refresh()
|
||||
20
cocoa/inter/ignore_list_dialog.py
Normal file
20
cocoa/inter/ignore_list_dialog.py
Normal file
@@ -0,0 +1,20 @@
|
||||
from objp.util import pyref
|
||||
from cocoa.inter import PyGUIObject, GUIObjectView
|
||||
|
||||
class IgnoreListDialogView(GUIObjectView):
|
||||
def show(self): pass
|
||||
|
||||
class PyIgnoreListDialog(PyGUIObject):
|
||||
def ignoreListTable(self) -> pyref:
|
||||
return self.model.ignore_list_table
|
||||
|
||||
def removeSelected(self):
|
||||
self.model.remove_selected()
|
||||
|
||||
def clear(self):
|
||||
self.model.clear()
|
||||
|
||||
#--- model --> view
|
||||
def show(self):
|
||||
self.callback.show()
|
||||
|
||||
29
cocoa/inter/prioritize_dialog.py
Normal file
29
cocoa/inter/prioritize_dialog.py
Normal file
@@ -0,0 +1,29 @@
|
||||
from objp.util import pyref
|
||||
from cocoa.inter import PyGUIObject, GUIObjectView
|
||||
from core.gui.prioritize_dialog import PrioritizeDialog
|
||||
|
||||
class PrioritizeDialogView(GUIObjectView):
|
||||
pass
|
||||
|
||||
class PyPrioritizeDialog(PyGUIObject):
|
||||
def __init__(self, app: pyref):
|
||||
model = PrioritizeDialog(app.model)
|
||||
PyGUIObject.__init__(self, model)
|
||||
|
||||
def categoryList(self) -> pyref:
|
||||
return self.model.category_list
|
||||
|
||||
def criteriaList(self) -> pyref:
|
||||
return self.model.criteria_list
|
||||
|
||||
def prioritizationList(self) -> pyref:
|
||||
return self.model.prioritization_list
|
||||
|
||||
def addSelected(self):
|
||||
self.model.add_selected()
|
||||
|
||||
def removeSelected(self):
|
||||
self.model.remove_selected()
|
||||
|
||||
def performReprioritization(self):
|
||||
self.model.perform_reprioritization()
|
||||
8
cocoa/inter/prioritize_list.py
Normal file
8
cocoa/inter/prioritize_list.py
Normal file
@@ -0,0 +1,8 @@
|
||||
from cocoa.inter import PySelectableList, SelectableListView
|
||||
|
||||
class PrioritizeListView(SelectableListView):
|
||||
pass
|
||||
|
||||
class PyPrioritizeList(PySelectableList):
|
||||
def moveIndexes_toIndex_(self, indexes: list, dest_index: int):
|
||||
self.model.move_indexes(indexes, dest_index)
|
||||
9
cocoa/inter/problem_dialog.py
Normal file
9
cocoa/inter/problem_dialog.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from objp.util import pyref
|
||||
from cocoa.inter import PyGUIObject
|
||||
|
||||
class PyProblemDialog(PyGUIObject):
|
||||
def problemTable(self) -> pyref:
|
||||
return self.model.problem_table
|
||||
|
||||
def revealSelected(self):
|
||||
self.model.reveal_selected_dupe()
|
||||
49
cocoa/inter/result_table.py
Normal file
49
cocoa/inter/result_table.py
Normal file
@@ -0,0 +1,49 @@
|
||||
from objp.util import dontwrap
|
||||
from cocoa.inter import PyTable, TableView
|
||||
|
||||
class ResultTableView(TableView):
|
||||
def invalidateMarkings(self): pass
|
||||
|
||||
class PyResultTable(PyTable):
|
||||
def powerMarkerMode(self) -> bool:
|
||||
return self.model.power_marker
|
||||
|
||||
def setPowerMarkerMode_(self, value: bool):
|
||||
self.model.power_marker = value
|
||||
|
||||
def deltaValuesMode(self) -> bool:
|
||||
return self.model.delta_values
|
||||
|
||||
def setDeltaValuesMode_(self, value: bool):
|
||||
self.model.delta_values = value
|
||||
|
||||
def deltaColumns(self) -> list:
|
||||
return list(self.model.DELTA_COLUMNS)
|
||||
|
||||
def valueForRow_column_(self, row_index: int, column: str) -> object:
|
||||
return self.model.get_row_value(row_index, column)
|
||||
|
||||
def renameSelected_(self, newname: str) -> bool:
|
||||
return self.model.rename_selected(newname)
|
||||
|
||||
def sortBy_ascending_(self, key: str, asc: bool):
|
||||
self.model.sort(key, asc)
|
||||
|
||||
def markSelected(self):
|
||||
self.model.app.toggle_selected_mark_state()
|
||||
|
||||
def removeSelected(self):
|
||||
self.model.app.remove_selected()
|
||||
|
||||
def selectedDupeCount(self) -> int:
|
||||
return self.model.selected_dupe_count
|
||||
|
||||
def pathAtIndex_(self, index: int) -> str:
|
||||
row = self.model[index]
|
||||
return str(row._dupe.path)
|
||||
|
||||
# python --> cocoa
|
||||
@dontwrap
|
||||
def invalidate_markings(self):
|
||||
self.callback.invalidateMarkings()
|
||||
|
||||
9
cocoa/inter/stats_label.py
Normal file
9
cocoa/inter/stats_label.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from cocoa.inter import PyGUIObject, GUIObjectView
|
||||
|
||||
class StatsLabelView(GUIObjectView):
|
||||
pass
|
||||
|
||||
class PyStatsLabel(PyGUIObject):
|
||||
|
||||
def display(self) -> str:
|
||||
return self.model.display
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -12,5 +12,4 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "PyDupeGuru.h"
|
||||
|
||||
@interface AppDelegate : AppDelegateBase {}
|
||||
- (PyDupeGuru *)py;
|
||||
@end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -19,11 +19,13 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
@implementation AppDelegate
|
||||
+ (void)initialize
|
||||
{
|
||||
[super initialize];
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
NSMutableDictionary *d = [NSMutableDictionary dictionaryWithCapacity:10];
|
||||
[d setObject:i2n(3) forKey:@"scanType"];
|
||||
[d setObject:i2n(80) forKey:@"minMatchPercentage"];
|
||||
[d setObject:i2n(1) forKey:@"recreatePathType"];
|
||||
[d setObject:i2n(11) forKey:TableFontSize];
|
||||
[d setObject:b2n(NO) forKey:@"wordWeighting"];
|
||||
[d setObject:b2n(NO) forKey:@"matchSimilarWords"];
|
||||
[d setObject:b2n(YES) forKey:@"mixFileKind"];
|
||||
@@ -72,8 +74,6 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
return [[DirectoryPanelME alloc] initWithParentApp:self];
|
||||
}
|
||||
|
||||
- (PyDupeGuru *)py { return (PyDupeGuru *)py; }
|
||||
|
||||
//Delegate
|
||||
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
|
||||
{
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -21,13 +21,13 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
{
|
||||
[super fillPopUpMenu];
|
||||
NSMenu *m = [addButtonPopUp menu];
|
||||
NSMenuItem *mi = [m insertItemWithTitle:TR(@"Add iTunes Directory") action:@selector(addiTunes:)
|
||||
NSMenuItem *mi = [m insertItemWithTitle:TR(@"Add iTunes Library") action:@selector(addiTunes:)
|
||||
keyEquivalent:@"" atIndex:1];
|
||||
[mi setTarget:self];
|
||||
}
|
||||
|
||||
- (IBAction)addiTunes:(id)sender
|
||||
{
|
||||
[self addDirectory:[@"~/Music/iTunes/iTunes Music" stringByExpandingTildeInPath]];
|
||||
[self addDirectory:@"iTunes Library"];
|
||||
}
|
||||
@end
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>dupeguru</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.hardcoded_software.dupeguru_me</string>
|
||||
<string>com.hardcoded-software.dupeguru-me</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
@@ -22,6 +22,8 @@
|
||||
<string>APPL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>hsft</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>{version}</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>{version}</string>
|
||||
<key>NSMainNibFile</key>
|
||||
@@ -29,7 +31,7 @@
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>© Hardcoded Software, 2011</string>
|
||||
<string>© Hardcoded Software, 2012</string>
|
||||
<key>SUFeedURL</key>
|
||||
<string>http://www.hardcoded.net/updates/dupeguru_me.appcast</string>
|
||||
<key>SUPublicDSAKeyFile</key>
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
http://www.hardcoded.net/licenses/bsd_license
|
||||
*/
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "../base/PyDupeGuru.h"
|
||||
|
||||
@interface PyDupeGuru : PyDupeGuruBase
|
||||
//Scanning options
|
||||
- (void)setMinWordCount:(NSNumber *)word_count;
|
||||
- (void)setMinWordLength:(NSNumber *)word_length;
|
||||
- (void)setWordWeighting:(NSNumber *)words_are_weighted;
|
||||
- (void)setMatchSimilarWords:(NSNumber *)match_similar_words;
|
||||
- (void)enable:(NSNumber *)enable scanForTag:(NSString *)tag;
|
||||
- (void)scanDeadTracks;
|
||||
- (void)removeDeadTracks;
|
||||
- (NSInteger)deadTrackCount;
|
||||
@end
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
|
||||
This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
which should be included with this package. The terms are also available at
|
||||
@@ -11,97 +11,67 @@ http://www.hardcoded.net/licenses/bsd_license
|
||||
#import "Utils.h"
|
||||
#import "PyDupeGuru.h"
|
||||
#import "Consts.h"
|
||||
#import "ProgressController.h"
|
||||
|
||||
@implementation ResultWindow
|
||||
/* Override */
|
||||
- (void)setScanOptions
|
||||
{
|
||||
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
|
||||
PyDupeGuru *_py = (PyDupeGuru *)py;
|
||||
[_py setScanType:[ud objectForKey:@"scanType"]];
|
||||
[_py enable:[ud objectForKey:@"scanTagTrack"] scanForTag:@"track"];
|
||||
[_py enable:[ud objectForKey:@"scanTagArtist"] scanForTag:@"artist"];
|
||||
[_py enable:[ud objectForKey:@"scanTagAlbum"] scanForTag:@"album"];
|
||||
[_py enable:[ud objectForKey:@"scanTagTitle"] scanForTag:@"title"];
|
||||
[_py enable:[ud objectForKey:@"scanTagGenre"] scanForTag:@"genre"];
|
||||
[_py enable:[ud objectForKey:@"scanTagYear"] scanForTag:@"year"];
|
||||
[_py setMinMatchPercentage:[ud objectForKey:@"minMatchPercentage"]];
|
||||
[_py setWordWeighting:[ud objectForKey:@"wordWeighting"]];
|
||||
[_py setMixFileKind:n2b([ud objectForKey:@"mixFileKind"])];
|
||||
[_py setIgnoreHardlinkMatches:n2b([ud objectForKey:@"ignoreHardlinkMatches"])];
|
||||
[_py setMatchSimilarWords:[ud objectForKey:@"matchSimilarWords"]];
|
||||
[model setScanType:n2i([ud objectForKey:@"scanType"])];
|
||||
[model enable:n2b([ud objectForKey:@"scanTagTrack"]) scanForTag:@"track"];
|
||||
[model enable:n2b([ud objectForKey:@"scanTagArtist"]) scanForTag:@"artist"];
|
||||
[model enable:n2b([ud objectForKey:@"scanTagAlbum"]) scanForTag:@"album"];
|
||||
[model enable:n2b([ud objectForKey:@"scanTagTitle"]) scanForTag:@"title"];
|
||||
[model enable:n2b([ud objectForKey:@"scanTagGenre"]) scanForTag:@"genre"];
|
||||
[model enable:n2b([ud objectForKey:@"scanTagYear"]) scanForTag:@"year"];
|
||||
[model setMinMatchPercentage:n2i([ud objectForKey:@"minMatchPercentage"])];
|
||||
[model setWordWeighting:n2b([ud objectForKey:@"wordWeighting"])];
|
||||
[model setMixFileKind:n2b([ud objectForKey:@"mixFileKind"])];
|
||||
[model setIgnoreHardlinkMatches:n2b([ud objectForKey:@"ignoreHardlinkMatches"])];
|
||||
[model setMatchSimilarWords:n2b([ud objectForKey:@"matchSimilarWords"])];
|
||||
}
|
||||
|
||||
- (void)initResultColumns
|
||||
{
|
||||
NSTableColumn *refCol = [matches tableColumnWithIdentifier:@"0"];
|
||||
_resultColumns = [[NSMutableArray alloc] init];
|
||||
[_resultColumns addObject:[matches tableColumnWithIdentifier:@"0"]]; // File Name
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:1 title:TR(@"Folder") width:120 refCol:refCol]];
|
||||
NSTableColumn *sizeCol = [self getColumnForIdentifier:2 title:TR(@"Size (MB)") width:63 refCol:refCol];
|
||||
[[sizeCol dataCell] setAlignment:NSRightTextAlignment];
|
||||
[_resultColumns addObject:sizeCol];
|
||||
NSTableColumn *timeCol = [self getColumnForIdentifier:3 title:TR(@"Time") width:50 refCol:refCol];
|
||||
[[timeCol dataCell] setAlignment:NSRightTextAlignment];
|
||||
[_resultColumns addObject:timeCol];
|
||||
NSTableColumn *brCol = [self getColumnForIdentifier:4 title:TR(@"Bitrate") width:50 refCol:refCol];
|
||||
[[brCol dataCell] setAlignment:NSRightTextAlignment];
|
||||
[_resultColumns addObject:brCol];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:5 title:TR(@"Sample Rate") width:60 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:6 title:TR(@"Kind") width:40 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:7 title:TR(@"Modification") width:120 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:8 title:TR(@"Title") width:120 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:9 title:TR(@"Artist") width:120 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:10 title:TR(@"Album") width:120 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:11 title:TR(@"Genre") width:80 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:12 title:TR(@"Year") width:40 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:13 title:TR(@"Track Number") width:40 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:14 title:TR(@"Comment") width:120 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:15 title:TR(@"Match %") width:57 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:16 title:TR(@"Words Used") width:120 refCol:refCol]];
|
||||
[_resultColumns addObject:[self getColumnForIdentifier:17 title:TR(@"Dupe Count") width:80 refCol:refCol]];
|
||||
HSColumnDef defs[] = {
|
||||
{@"marked", 26, 26, 26, YES, [NSButtonCell class]},
|
||||
{@"name", 235, 16, 0, YES, nil},
|
||||
{@"folder_path", 120, 16, 0, YES, nil},
|
||||
{@"size", 63, 16, 0, YES, nil},
|
||||
{@"duration", 50, 16, 0, YES, nil},
|
||||
{@"bitrate", 50, 16, 0, YES, nil},
|
||||
{@"samplerate", 60, 16, 0, YES, nil},
|
||||
{@"extension", 40, 16, 0, YES, nil},
|
||||
{@"mtime", 120, 16, 0, YES, nil},
|
||||
{@"title", 120, 16, 0, YES, nil},
|
||||
{@"artist", 120, 16, 0, YES, nil},
|
||||
{@"album", 120, 16, 0, YES, nil},
|
||||
{@"genre", 80, 16, 0, YES, nil},
|
||||
{@"year", 40, 16, 0, YES, nil},
|
||||
{@"track", 40, 16, 0, YES, nil},
|
||||
{@"comment", 120, 16, 0, YES, nil},
|
||||
{@"percentage", 57, 16, 0, YES, nil},
|
||||
{@"words", 120, 16, 0, YES, nil},
|
||||
{@"dupe_count", 80, 16, 0, YES, nil},
|
||||
nil
|
||||
};
|
||||
[[table columns] initializeColumns:defs];
|
||||
NSTableColumn *c = [matches tableColumnWithIdentifier:@"marked"];
|
||||
[[c dataCell] setButtonType:NSSwitchButton];
|
||||
[[c dataCell] setControlSize:NSSmallControlSize];
|
||||
c = [matches tableColumnWithIdentifier:@"size"];
|
||||
[[c dataCell] setAlignment:NSRightTextAlignment];
|
||||
c = [matches tableColumnWithIdentifier:@"duration"];
|
||||
[[c dataCell] setAlignment:NSRightTextAlignment];
|
||||
c = [matches tableColumnWithIdentifier:@"bitrate"];
|
||||
[[c dataCell] setAlignment:NSRightTextAlignment];
|
||||
[[table columns] restoreColumns];
|
||||
}
|
||||
|
||||
/* Actions */
|
||||
- (IBAction)removeDeadTracks:(id)sender
|
||||
{
|
||||
[(PyDupeGuru *)py scanDeadTracks];
|
||||
}
|
||||
|
||||
- (IBAction)resetColumnsToDefault:(id)sender
|
||||
{
|
||||
NSMutableArray *columnsOrder = [NSMutableArray array];
|
||||
[columnsOrder addObject:@"0"];
|
||||
[columnsOrder addObject:@"2"];
|
||||
[columnsOrder addObject:@"3"];
|
||||
[columnsOrder addObject:@"4"];
|
||||
[columnsOrder addObject:@"6"];
|
||||
[columnsOrder addObject:@"15"];
|
||||
NSMutableDictionary *columnsWidth = [NSMutableDictionary dictionary];
|
||||
[columnsWidth setObject:i2n(235) forKey:@"0"];
|
||||
[columnsWidth setObject:i2n(63) forKey:@"2"];
|
||||
[columnsWidth setObject:i2n(50) forKey:@"3"];
|
||||
[columnsWidth setObject:i2n(50) forKey:@"4"];
|
||||
[columnsWidth setObject:i2n(40) forKey:@"6"];
|
||||
[columnsWidth setObject:i2n(57) forKey:@"15"];
|
||||
[self restoreColumnsPosition:columnsOrder widths:columnsWidth];
|
||||
}
|
||||
|
||||
/* Notifications */
|
||||
- (void)jobCompleted:(NSNotification *)aNotification
|
||||
{
|
||||
[super jobCompleted:aNotification];
|
||||
id lastAction = [[ProgressController mainProgressController] jobId];
|
||||
if ([lastAction isEqualTo:jobScanDeadTracks]) {
|
||||
NSInteger deadTrackCount = [(PyDupeGuru *)py deadTrackCount];
|
||||
if (deadTrackCount > 0) {
|
||||
NSString *msg = TR(@"RemoveDeadTracksConfirmMsg");
|
||||
if ([Dialogs askYesNo:[NSString stringWithFormat:msg,deadTrackCount]] == NSAlertFirstButtonReturn)
|
||||
[(PyDupeGuru *)py removeDeadTracks];
|
||||
}
|
||||
else {
|
||||
[Dialogs showMessage:TR(@"NoDeadTrackMsg")];
|
||||
}
|
||||
}
|
||||
[model scanDeadTracks];
|
||||
}
|
||||
@end
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
|
||||
/* Class = "NSWindow"; title = "dupeGuru ME Preferences"; ObjectID = "2"; */
|
||||
"2.title" = "dupeGuru ME Preferences";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "More results"; ObjectID = "29"; */
|
||||
"29.title" = "More results";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Fewer results"; ObjectID = "30"; */
|
||||
"30.title" = "Fewer results";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Filter hardness:"; ObjectID = "31"; */
|
||||
"31.title" = "Filter hardness:";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Scan type:"; ObjectID = "32"; */
|
||||
"32.title" = "Scan type:";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Content"; ObjectID = "35"; */
|
||||
"35.title" = "Content";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Filename"; ObjectID = "36"; */
|
||||
"36.title" = "Dateiname";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Filename - Fields"; ObjectID = "37"; */
|
||||
"37.title" = "Dateiname - Felder";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Tags"; ObjectID = "38"; */
|
||||
"38.title" = "Tags";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Audio Content"; ObjectID = "39"; */
|
||||
"39.title" = "Audio Content";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Filename - Fields (No Order)"; ObjectID = "40"; */
|
||||
"40.title" = "Dateiname - Felder (ohne Reihenfolge)";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Word weighting"; ObjectID = "41"; */
|
||||
"41.title" = "Wortgewichtung";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Can mix file kind"; ObjectID = "42"; */
|
||||
"42.title" = "Dateitypen dürfen gemischt werden";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Reset to Defaults"; ObjectID = "45"; */
|
||||
"45.title" = "Voreinstellungen";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Match similar words"; ObjectID = "46"; */
|
||||
"46.title" = "Vergleiche ähnliche Wörter";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Copy and Move:"; ObjectID = "54"; */
|
||||
"54.title" = "Kopieren und Verschieben:";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Recreate relative path"; ObjectID = "57"; */
|
||||
"57.title" = "Relativen Pfad neu erstellen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Recreate absolute path"; ObjectID = "58"; */
|
||||
"58.title" = "Absoluten Pfad neu erstellen";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Right in destination"; ObjectID = "59"; */
|
||||
"59.title" = "Direkt im Ziel";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Automatically check for updates"; ObjectID = "60"; */
|
||||
"60.title" = "Automatisch nach Updates suchen";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Use regular expressions when filtering"; ObjectID = "61"; */
|
||||
"61.title" = "Nutze reguläre Ausdrücke beim Filtern";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Remove empty folders after delete and move"; ObjectID = "62"; */
|
||||
"62.title" = "Remove empty folders after delete and move";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Tags to scan:"; ObjectID = "63"; */
|
||||
"63.title" = "folgende Tags scannen:";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Track"; ObjectID = "64"; */
|
||||
"64.title" = "Stück";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Artist"; ObjectID = "65"; */
|
||||
"65.title" = "Künstler";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Album"; ObjectID = "66"; */
|
||||
"66.title" = "Album";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Title"; ObjectID = "67"; */
|
||||
"67.title" = "Titel";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Genre"; ObjectID = "68"; */
|
||||
"68.title" = "Genre";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Year"; ObjectID = "69"; */
|
||||
"69.title" = "Jahr";
|
||||
|
||||
/* Class = "NSTabViewItem"; label = "Basic"; ObjectID = "116"; */
|
||||
"116.label" = "Basic";
|
||||
|
||||
/* Class = "NSTabViewItem"; label = "Advanced"; ObjectID = "117"; */
|
||||
"117.label" = "Advanced";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Custom Command (arguments: %d for dupe, %r for ref):"; ObjectID = "121"; */
|
||||
"121.title" = "Eigener Befehl (Argumente: %d für Duplikat, %r für Referenz):";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Ignore duplicates hardlinking to the same file"; ObjectID = "126"; */
|
||||
"126.title" = "Ignoriere Duplikate die mit derselben Datei verknüpft sind";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Debug mode (restart required)"; ObjectID = "130"; */
|
||||
"130.title" = "Debug Modus (Neustart nötig)";
|
||||
@@ -1,66 +1,20 @@
|
||||
# Copyright 2011 Hardcoded Software (http://www.hardcoded.net)
|
||||
# Copyright 2012 Hardcoded Software (http://www.hardcoded.net)
|
||||
#
|
||||
# This software is licensed under the "BSD" License as described in the "LICENSE" file,
|
||||
# which should be included with this package. The terms are also available at
|
||||
# http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
from hscommon.trans import install_cocoa_trans
|
||||
install_cocoa_trans()
|
||||
from hscommon.trans import install_gettext_trans_under_cocoa
|
||||
install_gettext_trans_under_cocoa()
|
||||
|
||||
from hscommon.cocoa import signature
|
||||
from cocoa.inter import PySelectableList, PyColumns, PyTable
|
||||
|
||||
from core.app_cocoa_inter import PyDupeGuruBase, PyDetailsPanel
|
||||
from core_me.app_cocoa import DupeGuruME
|
||||
from core_me import __appname__
|
||||
from core.scanner import ScanType
|
||||
|
||||
class PyDupeGuru(PyDupeGuruBase):
|
||||
def init(self):
|
||||
self = super(PyDupeGuru,self).init()
|
||||
self.py = DupeGuruME()
|
||||
return self
|
||||
|
||||
def removeDeadTracks(self):
|
||||
self.py.remove_dead_tracks()
|
||||
|
||||
def scanDeadTracks(self):
|
||||
self.py.scan_dead_tracks()
|
||||
|
||||
#---Information
|
||||
@signature('i@:')
|
||||
def deadTrackCount(self):
|
||||
return len(self.py.dead_tracks)
|
||||
|
||||
#---Properties
|
||||
def setMinMatchPercentage_(self, percentage):
|
||||
self.py.scanner.min_match_percentage = int(percentage)
|
||||
|
||||
def setScanType_(self, scan_type):
|
||||
try:
|
||||
self.py.scanner.scan_type = [
|
||||
ScanType.Filename,
|
||||
ScanType.Fields,
|
||||
ScanType.FieldsNoOrder,
|
||||
ScanType.Tag,
|
||||
ScanType.Contents,
|
||||
ScanType.ContentsAudio,
|
||||
][scan_type]
|
||||
except IndexError:
|
||||
pass
|
||||
|
||||
def setWordWeighting_(self, words_are_weighted):
|
||||
self.py.scanner.word_weighting = words_are_weighted
|
||||
|
||||
def setMatchSimilarWords_(self, match_similar_words):
|
||||
self.py.scanner.match_similar_words = match_similar_words
|
||||
|
||||
def enable_scanForTag_(self, enable, scan_tag):
|
||||
if enable:
|
||||
self.py.scanner.scanned_tags.add(scan_tag)
|
||||
else:
|
||||
self.py.scanner.scanned_tags.discard(scan_tag)
|
||||
|
||||
#---Registration
|
||||
def appName(self):
|
||||
return __appname__
|
||||
|
||||
from inter.details_panel import PyDetailsPanel
|
||||
from inter.directory_outline import PyDirectoryOutline
|
||||
from inter.prioritize_dialog import PyPrioritizeDialog
|
||||
from inter.prioritize_list import PyPrioritizeList
|
||||
from inter.problem_dialog import PyProblemDialog
|
||||
from inter.ignore_list_dialog import PyIgnoreListDialog
|
||||
from inter.result_table import PyResultTable
|
||||
from inter.stats_label import PyStatsLabel
|
||||
from inter.app_me import PyDupeGuru
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 44;
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXAppleScriptBuildPhase section */
|
||||
@@ -19,11 +19,9 @@
|
||||
/* End PBXAppleScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
|
||||
CE003CC611242D00004B0AA7 /* HSGUIController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CB411242D00004B0AA7 /* HSGUIController.m */; };
|
||||
CE003CC711242D00004B0AA7 /* HSOutline.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CB611242D00004B0AA7 /* HSOutline.m */; };
|
||||
CE003CC811242D00004B0AA7 /* HSWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CB811242D00004B0AA7 /* HSWindowController.m */; };
|
||||
CE003CC911242D00004B0AA7 /* NSEventAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CBA11242D00004B0AA7 /* NSEventAdditions.m */; };
|
||||
CE003CCA11242D00004B0AA7 /* HSOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CC111242D00004B0AA7 /* HSOutlineView.m */; };
|
||||
CE003CCB11242D00004B0AA7 /* NSIndexPathAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CC311242D00004B0AA7 /* NSIndexPathAdditions.m */; };
|
||||
@@ -39,20 +37,20 @@
|
||||
CE073F6309CAE1A3005C1D2F /* help in Resources */ = {isa = PBXBuildFile; fileRef = CE073F5409CAE1A3005C1D2F /* help */; };
|
||||
CE0A0C001175A1C000DCA3C6 /* HSTable.m in Sources */ = {isa = PBXBuildFile; fileRef = CE0A0BFF1175A1C000DCA3C6 /* HSTable.m */; };
|
||||
CE0A0C041175A1DE00DCA3C6 /* ProblemDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = CE0A0C021175A1DE00DCA3C6 /* ProblemDialog.m */; };
|
||||
CE11958F1510FF700063C8AF /* PyIgnoreListDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = CE11958E1510FF700063C8AF /* PyIgnoreListDialog.m */; };
|
||||
CE1195931510FF890063C8AF /* IgnoreListDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = CE1195921510FF890063C8AF /* IgnoreListDialog.m */; };
|
||||
CE1195961510FFB20063C8AF /* IgnoreListDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE1195941510FFB20063C8AF /* IgnoreListDialog.xib */; };
|
||||
CE1425890AFB718500BD5167 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE1425880AFB718500BD5167 /* Sparkle.framework */; };
|
||||
CE14259F0AFB719300BD5167 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE1425880AFB718500BD5167 /* Sparkle.framework */; };
|
||||
CE1EAA0A12DF3E81009BA949 /* HSRecentFiles.m in Sources */ = {isa = PBXBuildFile; fileRef = CE1EAA0912DF3E81009BA949 /* HSRecentFiles.m */; };
|
||||
CE2239A2148FFE6600B3DC99 /* HSColumns.m in Sources */ = {isa = PBXBuildFile; fileRef = CE2239A1148FFE6600B3DC99 /* HSColumns.m */; };
|
||||
CE2E87F9142BC90A00519A68 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE2E87F8142BC90A00519A68 /* Quartz.framework */; };
|
||||
CE2E87FD142BC92C00519A68 /* HSQuicklook.m in Sources */ = {isa = PBXBuildFile; fileRef = CE2E87FC142BC92C00519A68 /* HSQuicklook.m */; };
|
||||
CE381C9609914ACE003581CE /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = CE381C9409914ACE003581CE /* AppDelegate.m */; };
|
||||
CE381C9C09914ADF003581CE /* ResultWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = CE381C9A09914ADF003581CE /* ResultWindow.m */; };
|
||||
CE381D0509915304003581CE /* dg_cocoa.plugin in Resources */ = {isa = PBXBuildFile; fileRef = CE381CF509915304003581CE /* dg_cocoa.plugin */; };
|
||||
CE45274F12E5F62D00005A15 /* core.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE45274D12E5F62D00005A15 /* core.strings */; };
|
||||
CE49DEF60FDFEB810098617B /* BRSingleLineFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = CE49DEF30FDFEB810098617B /* BRSingleLineFormatter.m */; };
|
||||
CE4B59C81119919700C06C9E /* ErrorReportWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE4B59C51119919700C06C9E /* ErrorReportWindow.xib */; };
|
||||
CE4B59C91119919700C06C9E /* progress.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE4B59C61119919700C06C9E /* progress.xib */; };
|
||||
CE4F934612CCA9470067A3AE /* about.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE4F934512CCA9470067A3AE /* about.xib */; };
|
||||
CE4F934912CCA96C0067A3AE /* HSAboutBox.m in Sources */ = {isa = PBXBuildFile; fileRef = CE4F934812CCA96C0067A3AE /* HSAboutBox.m */; };
|
||||
CE515DF30FC6C12E00EC695D /* Dialogs.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DE10FC6C12E00EC695D /* Dialogs.m */; };
|
||||
CE515DF40FC6C12E00EC695D /* HSErrorReportWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DE30FC6C12E00EC695D /* HSErrorReportWindow.m */; };
|
||||
CE515DF60FC6C12E00EC695D /* ProgressController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DE70FC6C12E00EC695D /* ProgressController.m */; };
|
||||
CE515DFA0FC6C12E00EC695D /* Utils.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DF00FC6C12E00EC695D /* Utils.m */; };
|
||||
CE515DFB0FC6C12E00EC695D /* ValueTransformers.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DF20FC6C12E00EC695D /* ValueTransformers.m */; };
|
||||
@@ -65,12 +63,38 @@
|
||||
CE6E0E9F1054EB97008D9390 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = CE6E0E9E1054EB97008D9390 /* dsa_pub.pem */; };
|
||||
CE74A12412537F06008A8DF0 /* HSFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE74A12212537F06008A8DF0 /* HSFairwareReminder.m */; };
|
||||
CE74A12712537F2E008A8DF0 /* FairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE74A12512537F2E008A8DF0 /* FairwareReminder.xib */; };
|
||||
CE848A1909DD85810004CB44 /* Consts.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE848A1809DD85810004CB44 /* Consts.h */; };
|
||||
CE84C9B21423ADFB0050A6AD /* PrioritizeDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = CE84C9AD1423ADFB0050A6AD /* PrioritizeDialog.m */; };
|
||||
CE84C9B31423ADFB0050A6AD /* PrioritizeList.m in Sources */ = {isa = PBXBuildFile; fileRef = CE84C9AF1423ADFB0050A6AD /* PrioritizeList.m */; };
|
||||
CE84C9B91423AE410050A6AD /* HSPopUpList.m in Sources */ = {isa = PBXBuildFile; fileRef = CE84C9B61423AE410050A6AD /* HSPopUpList.m */; };
|
||||
CE84C9BA1423AE410050A6AD /* HSSelectableList.m in Sources */ = {isa = PBXBuildFile; fileRef = CE84C9B81423AE410050A6AD /* HSSelectableList.m */; };
|
||||
CE84C9BD1423AF200050A6AD /* PrioritizeDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE84C9BB1423AF200050A6AD /* PrioritizeDialog.xib */; };
|
||||
CE9705E614C46E7D007A28F6 /* ObjP.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705C514C46E7D007A28F6 /* ObjP.m */; };
|
||||
CE9705E714C46E7D007A28F6 /* PyColumns.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705C714C46E7D007A28F6 /* PyColumns.m */; };
|
||||
CE9705E814C46E7D007A28F6 /* PyDetailsPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705C914C46E7D007A28F6 /* PyDetailsPanel.m */; };
|
||||
CE9705E914C46E7D007A28F6 /* PyDirectoryOutline.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705CB14C46E7D007A28F6 /* PyDirectoryOutline.m */; };
|
||||
CE9705EA14C46E7D007A28F6 /* PyDupeGuru.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705CD14C46E7D007A28F6 /* PyDupeGuru.m */; };
|
||||
CE9705EB14C46E7D007A28F6 /* PyDupeGuruBase.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705CF14C46E7D007A28F6 /* PyDupeGuruBase.m */; };
|
||||
CE9705ED14C46E7D007A28F6 /* PyFairware.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705D314C46E7D007A28F6 /* PyFairware.m */; };
|
||||
CE9705EE14C46E7D007A28F6 /* PyGUIObject.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705D514C46E7D007A28F6 /* PyGUIObject.m */; };
|
||||
CE9705EF14C46E7D007A28F6 /* PyOutline.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705D714C46E7D007A28F6 /* PyOutline.m */; };
|
||||
CE9705F014C46E7D007A28F6 /* PyPrioritizeDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705D914C46E7D007A28F6 /* PyPrioritizeDialog.m */; };
|
||||
CE9705F114C46E7D007A28F6 /* PyPrioritizeList.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705DB14C46E7D007A28F6 /* PyPrioritizeList.m */; };
|
||||
CE9705F214C46E7D007A28F6 /* PyProblemDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705DD14C46E7D007A28F6 /* PyProblemDialog.m */; };
|
||||
CE9705F314C46E7D007A28F6 /* PyResultTable.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705DF14C46E7D007A28F6 /* PyResultTable.m */; };
|
||||
CE9705F414C46E7D007A28F6 /* PySelectableList.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705E114C46E7D007A28F6 /* PySelectableList.m */; };
|
||||
CE9705F514C46E7D007A28F6 /* PyStatsLabel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705E314C46E7D007A28F6 /* PyStatsLabel.m */; };
|
||||
CE9705F614C46E7D007A28F6 /* PyTable.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9705E514C46E7D007A28F6 /* PyTable.m */; };
|
||||
CE9705F814C46EA3007A28F6 /* Python in Frameworks */ = {isa = PBXBuildFile; fileRef = CE9705F714C46EA3007A28F6 /* Python */; };
|
||||
CE9705F914C46EC3007A28F6 /* Python in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE9705F714C46EA3007A28F6 /* Python */; };
|
||||
CE9705FF14C46F60007A28F6 /* py in Resources */ = {isa = PBXBuildFile; fileRef = CE9705FE14C46F60007A28F6 /* py */; };
|
||||
CE97060114C46F70007A28F6 /* dg_cocoa.py in Resources */ = {isa = PBXBuildFile; fileRef = CE97060014C46F70007A28F6 /* dg_cocoa.py */; };
|
||||
CE97060314C471F2007A28F6 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = CE97060214C471F2007A28F6 /* main.m */; };
|
||||
CEA14F431461ED63007F01A5 /* locale in Resources */ = {isa = PBXBuildFile; fileRef = CEA14F421461ED63007F01A5 /* locale */; };
|
||||
CEB14D29124DFC2800FA7481 /* ResultTable.m in Sources */ = {isa = PBXBuildFile; fileRef = CEB14D28124DFC2800FA7481 /* ResultTable.m */; };
|
||||
CEB5E07813225C89009F521D /* ExtraFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CEB5E07613225C89009F521D /* ExtraFairwareReminder.m */; };
|
||||
CEB5E07D13225CA2009F521D /* ExtraFairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEB5E07B13225CA2009F521D /* ExtraFairwareReminder.xib */; };
|
||||
CEDF07A3112493B200EE5BC0 /* StatsLabel.m in Sources */ = {isa = PBXBuildFile; fileRef = CEDF07A2112493B200EE5BC0 /* StatsLabel.m */; };
|
||||
CEEB135209C837A2004D2330 /* dupeguru.icns in Resources */ = {isa = PBXBuildFile; fileRef = CEEB135109C837A2004D2330 /* dupeguru.icns */; };
|
||||
CEF3185913D8660000B8CDCA /* about.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185513D8660000B8CDCA /* about.xib */; };
|
||||
CEF3185A13D8660000B8CDCA /* ErrorReportWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185713D8660000B8CDCA /* ErrorReportWindow.xib */; };
|
||||
CEFC294609C89E3D00D9F998 /* folder32.png in Resources */ = {isa = PBXBuildFile; fileRef = CEFC294509C89E3D00D9F998 /* folder32.png */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
@@ -82,7 +106,7 @@
|
||||
dstSubfolderSpec = 10;
|
||||
files = (
|
||||
CE14259F0AFB719300BD5167 /* Sparkle.framework in CopyFiles */,
|
||||
CE848A1909DD85810004CB44 /* Consts.h in CopyFiles */,
|
||||
CE9705F914C46EC3007A28F6 /* Python in CopyFiles */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -91,7 +115,6 @@
|
||||
/* Begin PBXFileReference section */
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
|
||||
29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
|
||||
29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = SOURCE_ROOT; };
|
||||
@@ -100,12 +123,8 @@
|
||||
CE003CB411242D00004B0AA7 /* HSGUIController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSGUIController.m; sourceTree = "<group>"; };
|
||||
CE003CB511242D00004B0AA7 /* HSOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSOutline.h; sourceTree = "<group>"; };
|
||||
CE003CB611242D00004B0AA7 /* HSOutline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSOutline.m; sourceTree = "<group>"; };
|
||||
CE003CB711242D00004B0AA7 /* HSWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSWindowController.h; sourceTree = "<group>"; };
|
||||
CE003CB811242D00004B0AA7 /* HSWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSWindowController.m; sourceTree = "<group>"; };
|
||||
CE003CB911242D00004B0AA7 /* NSEventAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NSEventAdditions.h; path = ../../cocoalib/NSEventAdditions.h; sourceTree = SOURCE_ROOT; };
|
||||
CE003CBA11242D00004B0AA7 /* NSEventAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NSEventAdditions.m; path = ../../cocoalib/NSEventAdditions.m; sourceTree = SOURCE_ROOT; };
|
||||
CE003CBC11242D00004B0AA7 /* PyGUI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyGUI.h; sourceTree = "<group>"; };
|
||||
CE003CBD11242D00004B0AA7 /* PyOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyOutline.h; sourceTree = "<group>"; };
|
||||
CE003CC011242D00004B0AA7 /* HSOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSOutlineView.h; sourceTree = "<group>"; };
|
||||
CE003CC111242D00004B0AA7 /* HSOutlineView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSOutlineView.m; sourceTree = "<group>"; };
|
||||
CE003CC211242D00004B0AA7 /* NSIndexPathAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSIndexPathAdditions.h; sourceTree = "<group>"; };
|
||||
@@ -114,7 +133,6 @@
|
||||
CE003CC511242D00004B0AA7 /* NSTableViewAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSTableViewAdditions.m; sourceTree = "<group>"; };
|
||||
CE003CCD11242D2C004B0AA7 /* DirectoryOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DirectoryOutline.h; path = ../base/DirectoryOutline.h; sourceTree = SOURCE_ROOT; };
|
||||
CE003CCE11242D2C004B0AA7 /* DirectoryOutline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DirectoryOutline.m; path = ../base/DirectoryOutline.m; sourceTree = SOURCE_ROOT; };
|
||||
CE003CCF11242D2C004B0AA7 /* PyDirectoryOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyDirectoryOutline.h; path = ../base/PyDirectoryOutline.h; sourceTree = SOURCE_ROOT; };
|
||||
CE05330E12E5D3ED0029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/DetailsPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331012E5D3ED0029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/DirectoryPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331212E5D3ED0029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/MainMenu.xib; sourceTree = SOURCE_ROOT; };
|
||||
@@ -135,32 +153,61 @@
|
||||
CE0A0BFF1175A1C000DCA3C6 /* HSTable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSTable.m; sourceTree = "<group>"; };
|
||||
CE0A0C011175A1DE00DCA3C6 /* ProblemDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ProblemDialog.h; path = ../base/ProblemDialog.h; sourceTree = SOURCE_ROOT; };
|
||||
CE0A0C021175A1DE00DCA3C6 /* ProblemDialog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ProblemDialog.m; path = ../base/ProblemDialog.m; sourceTree = SOURCE_ROOT; };
|
||||
CE0A0C031175A1DE00DCA3C6 /* PyProblemDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyProblemDialog.h; path = ../base/PyProblemDialog.h; sourceTree = SOURCE_ROOT; };
|
||||
CE0A0C131175A28100DCA3C6 /* PyTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyTable.h; sourceTree = "<group>"; };
|
||||
CE11958D1510FF700063C8AF /* PyIgnoreListDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyIgnoreListDialog.h; sourceTree = "<group>"; };
|
||||
CE11958E1510FF700063C8AF /* PyIgnoreListDialog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyIgnoreListDialog.m; sourceTree = "<group>"; };
|
||||
CE1195911510FF890063C8AF /* IgnoreListDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IgnoreListDialog.h; path = ../base/IgnoreListDialog.h; sourceTree = "<group>"; };
|
||||
CE1195921510FF890063C8AF /* IgnoreListDialog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IgnoreListDialog.m; path = ../base/IgnoreListDialog.m; sourceTree = "<group>"; };
|
||||
CE1195951510FFB20063C8AF /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE119597151100020063C8AF /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../base/cs.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE119598151100020063C8AF /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE119599151100020063C8AF /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE11959A151100020063C8AF /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../base/hy.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE11959B151100020063C8AF /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../base/it.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE11959C151100020063C8AF /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../base/ru.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE11959D151100020063C8AF /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../base/uk.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE11959E151100020063C8AF /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/IgnoreListDialog.xib; sourceTree = "<group>"; };
|
||||
CE1425880AFB718500BD5167 /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Sparkle.framework; path = /Library/Frameworks/Sparkle.framework; sourceTree = "<absolute>"; };
|
||||
CE1EAA0812DF3E81009BA949 /* HSRecentFiles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSRecentFiles.h; path = ../../cocoalib/HSRecentFiles.h; sourceTree = SOURCE_ROOT; };
|
||||
CE1EAA0912DF3E81009BA949 /* HSRecentFiles.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSRecentFiles.m; path = ../../cocoalib/HSRecentFiles.m; sourceTree = SOURCE_ROOT; };
|
||||
CE2239A0148FFE6600B3DC99 /* HSColumns.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSColumns.h; sourceTree = "<group>"; };
|
||||
CE2239A1148FFE6600B3DC99 /* HSColumns.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSColumns.m; sourceTree = "<group>"; };
|
||||
CE2B2B5A1406ABDA0038D15A /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = ../base/de.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
CE2E87F8142BC90A00519A68 /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = System/Library/Frameworks/Quartz.framework; sourceTree = SDKROOT; };
|
||||
CE2E87FB142BC92C00519A68 /* HSQuicklook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSQuicklook.h; path = ../../cocoalib/HSQuicklook.h; sourceTree = "<group>"; };
|
||||
CE2E87FC142BC92C00519A68 /* HSQuicklook.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSQuicklook.m; path = ../../cocoalib/HSQuicklook.m; sourceTree = "<group>"; };
|
||||
CE335AEE14B393C60000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../ru.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CE335AEF14B393C60000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../ru.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CE335AF014B393C60000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../ru.lproj/FairwareReminder.xib; sourceTree = "<group>"; };
|
||||
CE335AF514B393DC0000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ../base/ru.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
CE335AF714B393EE0000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../base/ru.lproj/DetailsPanel.xib; sourceTree = "<group>"; };
|
||||
CE335AF814B393EE0000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../base/ru.lproj/DirectoryPanel.xib; sourceTree = "<group>"; };
|
||||
CE335AFA14B393EE0000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../base/ru.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
CE335AFB14B393EE0000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../base/ru.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CE335AFC14B393EE0000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../base/ru.lproj/ProblemDialog.xib; sourceTree = "<group>"; };
|
||||
CE335AFD14B393EE0000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ../base/ru.lproj/ResultWindow.xib; sourceTree = "<group>"; };
|
||||
CE335B0514B393FB0000AF1A /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ru.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CE35FCEC14C637B8004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../uk.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CE35FCED14C637B8004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../uk.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CE35FCEE14C637B8004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../uk.lproj/FairwareReminder.xib; sourceTree = "<group>"; };
|
||||
CE35FCF314C637C8004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = ../base/uk.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
CE35FCF514C637DD004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../base/uk.lproj/DetailsPanel.xib; sourceTree = "<group>"; };
|
||||
CE35FCF614C637DD004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../base/uk.lproj/DirectoryPanel.xib; sourceTree = "<group>"; };
|
||||
CE35FCF814C637DD004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../base/uk.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
CE35FCF914C637DD004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../base/uk.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CE35FCFA14C637DD004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../base/uk.lproj/ProblemDialog.xib; sourceTree = "<group>"; };
|
||||
CE35FCFB14C637DD004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = ../base/uk.lproj/ResultWindow.xib; sourceTree = "<group>"; };
|
||||
CE35FD0314C637EC004E4864 /* uk */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = uk; path = uk.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CE381C9409914ACE003581CE /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = SOURCE_ROOT; };
|
||||
CE381C9509914ACE003581CE /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = SOURCE_ROOT; };
|
||||
CE381C9A09914ADF003581CE /* ResultWindow.m */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.objc; path = ResultWindow.m; sourceTree = SOURCE_ROOT; };
|
||||
CE381C9B09914ADF003581CE /* ResultWindow.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ResultWindow.h; sourceTree = SOURCE_ROOT; };
|
||||
CE381CF509915304003581CE /* dg_cocoa.plugin */ = {isa = PBXFileReference; lastKnownFileType = folder; path = dg_cocoa.plugin; sourceTree = SOURCE_ROOT; };
|
||||
CE45274E12E5F62D00005A15 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = ../base/en.lproj/core.strings; sourceTree = SOURCE_ROOT; };
|
||||
CE45275012E5F63900005A15 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = ../base/fr.lproj/core.strings; sourceTree = SOURCE_ROOT; };
|
||||
CE49DEF20FDFEB810098617B /* BRSingleLineFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BRSingleLineFormatter.h; path = ../../cocoalib/brsinglelineformatter/BRSingleLineFormatter.h; sourceTree = SOURCE_ROOT; };
|
||||
CE49DEF30FDFEB810098617B /* BRSingleLineFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = BRSingleLineFormatter.m; path = ../../cocoalib/brsinglelineformatter/BRSingleLineFormatter.m; sourceTree = SOURCE_ROOT; };
|
||||
CE4B59C51119919700C06C9E /* ErrorReportWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CE4B59C61119919700C06C9E /* progress.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = progress.xib; sourceTree = "<group>"; };
|
||||
CE4F934512CCA9470067A3AE /* about.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = about.xib; path = ../../cocoalib/xib/about.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE4F934712CCA96C0067A3AE /* HSAboutBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSAboutBox.h; path = ../../cocoalib/HSAboutBox.h; sourceTree = SOURCE_ROOT; };
|
||||
CE4F934812CCA96C0067A3AE /* HSAboutBox.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSAboutBox.m; path = ../../cocoalib/HSAboutBox.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE00FC6C12E00EC695D /* Dialogs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Dialogs.h; path = ../../cocoalib/Dialogs.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE10FC6C12E00EC695D /* Dialogs.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Dialogs.m; path = ../../cocoalib/Dialogs.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE20FC6C12E00EC695D /* HSErrorReportWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSErrorReportWindow.h; path = ../../cocoalib/HSErrorReportWindow.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE30FC6C12E00EC695D /* HSErrorReportWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSErrorReportWindow.m; path = ../../cocoalib/HSErrorReportWindow.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE60FC6C12E00EC695D /* ProgressController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ProgressController.h; path = ../../cocoalib/ProgressController.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE70FC6C12E00EC695D /* ProgressController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ProgressController.m; path = ../../cocoalib/ProgressController.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE80FC6C12E00EC695D /* PyApp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyApp.h; path = ../../cocoalib/PyApp.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DEF0FC6C12E00EC695D /* Utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Utils.h; path = ../../cocoalib/Utils.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DF00FC6C12E00EC695D /* Utils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Utils.m; path = ../../cocoalib/Utils.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DF10FC6C12E00EC695D /* ValueTransformers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ValueTransformers.h; path = ../../cocoalib/ValueTransformers.h; sourceTree = SOURCE_ROOT; };
|
||||
@@ -170,7 +217,6 @@
|
||||
CE515E170FC6C19300EC695D /* Consts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Consts.h; path = ../base/Consts.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E180FC6C19300EC695D /* DirectoryPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DirectoryPanel.h; path = ../base/DirectoryPanel.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E190FC6C19300EC695D /* DirectoryPanel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DirectoryPanel.m; path = ../base/DirectoryPanel.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515E1A0FC6C19300EC695D /* PyDupeGuru.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyDupeGuru.h; path = ../base/PyDupeGuru.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E1B0FC6C19300EC695D /* ResultWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ResultWindow.h; path = ../base/ResultWindow.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E1C0FC6C19300EC695D /* ResultWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ResultWindow.m; path = ../base/ResultWindow.m; sourceTree = SOURCE_ROOT; };
|
||||
CE578301124DFC660004769C /* HSTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSTableView.h; path = ../../cocoalib/views/HSTableView.h; sourceTree = SOURCE_ROOT; };
|
||||
@@ -180,33 +226,121 @@
|
||||
CE68EE6509ABC48000971085 /* DirectoryPanel.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = DirectoryPanel.h; sourceTree = SOURCE_ROOT; };
|
||||
CE68EE6609ABC48000971085 /* DirectoryPanel.m */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.objc; path = DirectoryPanel.m; sourceTree = SOURCE_ROOT; };
|
||||
CE6E0E9E1054EB97008D9390 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = dsa_pub.pem; path = ../base/dsa_pub.pem; sourceTree = "<group>"; };
|
||||
CE74253B14603120002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../cs.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CE74253C14603120002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../cs.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CE74253D14603120002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../cs.lproj/FairwareReminder.xib; sourceTree = "<group>"; };
|
||||
CE74254414603143002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = ../base/cs.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
CE74255114603152002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../base/cs.lproj/DetailsPanel.xib; sourceTree = "<group>"; };
|
||||
CE74255214603152002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../base/cs.lproj/DirectoryPanel.xib; sourceTree = "<group>"; };
|
||||
CE74255414603152002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../base/cs.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
CE74255514603152002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../base/cs.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CE74255614603152002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../base/cs.lproj/ProblemDialog.xib; sourceTree = "<group>"; };
|
||||
CE74255714603152002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = ../base/cs.lproj/ResultWindow.xib; sourceTree = "<group>"; };
|
||||
CE74255F1460318D002F8E3E /* cs */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = cs; path = cs.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CE74A12112537F06008A8DF0 /* HSFairwareReminder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSFairwareReminder.h; path = ../../cocoalib/HSFairwareReminder.h; sourceTree = SOURCE_ROOT; };
|
||||
CE74A12212537F06008A8DF0 /* HSFairwareReminder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSFairwareReminder.m; path = ../../cocoalib/HSFairwareReminder.m; sourceTree = SOURCE_ROOT; };
|
||||
CE74A12312537F06008A8DF0 /* PyFairware.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyFairware.h; path = ../../cocoalib/PyFairware.h; sourceTree = SOURCE_ROOT; };
|
||||
CE74A12612537F2E008A8DF0 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../../cocoalib/en.lproj/FairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE7A6992146442F80007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = ../base/it.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
CE7A6998146443090007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../base/it.lproj/DetailsPanel.xib; sourceTree = "<group>"; };
|
||||
CE7A6999146443090007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../base/it.lproj/DirectoryPanel.xib; sourceTree = "<group>"; };
|
||||
CE7A699B146443090007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../base/it.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
CE7A699C146443090007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../base/it.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CE7A699D146443090007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../base/it.lproj/ProblemDialog.xib; sourceTree = "<group>"; };
|
||||
CE7A699E146443090007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../base/it.lproj/ResultWindow.xib; sourceTree = "<group>"; };
|
||||
CE7A69A6146443170007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = it.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CE7A69A8146443360007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../it.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CE7A69A9146443360007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../it.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CE7A69AA146443360007D927 /* it */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = it; path = ../it.lproj/FairwareReminder.xib; sourceTree = "<group>"; };
|
||||
CE848A1809DD85810004CB44 /* Consts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Consts.h; sourceTree = "<group>"; };
|
||||
CEB14D26124DFC2800FA7481 /* PyResultTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyResultTable.h; path = ../base/PyResultTable.h; sourceTree = SOURCE_ROOT; };
|
||||
CE84C9AC1423ADFB0050A6AD /* PrioritizeDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PrioritizeDialog.h; path = ../base/PrioritizeDialog.h; sourceTree = "<group>"; };
|
||||
CE84C9AD1423ADFB0050A6AD /* PrioritizeDialog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PrioritizeDialog.m; path = ../base/PrioritizeDialog.m; sourceTree = "<group>"; };
|
||||
CE84C9AE1423ADFB0050A6AD /* PrioritizeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PrioritizeList.h; path = ../base/PrioritizeList.h; sourceTree = "<group>"; };
|
||||
CE84C9AF1423ADFB0050A6AD /* PrioritizeList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PrioritizeList.m; path = ../base/PrioritizeList.m; sourceTree = "<group>"; };
|
||||
CE84C9B51423AE410050A6AD /* HSPopUpList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSPopUpList.h; sourceTree = "<group>"; };
|
||||
CE84C9B61423AE410050A6AD /* HSPopUpList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSPopUpList.m; sourceTree = "<group>"; };
|
||||
CE84C9B71423AE410050A6AD /* HSSelectableList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSSelectableList.h; sourceTree = "<group>"; };
|
||||
CE84C9B81423AE410050A6AD /* HSSelectableList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSSelectableList.m; sourceTree = "<group>"; };
|
||||
CE84C9BC1423AF200050A6AD /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CE9705C414C46E7D007A28F6 /* ObjP.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjP.h; sourceTree = "<group>"; };
|
||||
CE9705C514C46E7D007A28F6 /* ObjP.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjP.m; sourceTree = "<group>"; };
|
||||
CE9705C614C46E7D007A28F6 /* PyColumns.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyColumns.h; sourceTree = "<group>"; };
|
||||
CE9705C714C46E7D007A28F6 /* PyColumns.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyColumns.m; sourceTree = "<group>"; };
|
||||
CE9705C814C46E7D007A28F6 /* PyDetailsPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyDetailsPanel.h; sourceTree = "<group>"; };
|
||||
CE9705C914C46E7D007A28F6 /* PyDetailsPanel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyDetailsPanel.m; sourceTree = "<group>"; };
|
||||
CE9705CA14C46E7D007A28F6 /* PyDirectoryOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyDirectoryOutline.h; sourceTree = "<group>"; };
|
||||
CE9705CB14C46E7D007A28F6 /* PyDirectoryOutline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyDirectoryOutline.m; sourceTree = "<group>"; };
|
||||
CE9705CC14C46E7D007A28F6 /* PyDupeGuru.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyDupeGuru.h; sourceTree = "<group>"; };
|
||||
CE9705CD14C46E7D007A28F6 /* PyDupeGuru.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyDupeGuru.m; sourceTree = "<group>"; };
|
||||
CE9705CE14C46E7D007A28F6 /* PyDupeGuruBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyDupeGuruBase.h; sourceTree = "<group>"; };
|
||||
CE9705CF14C46E7D007A28F6 /* PyDupeGuruBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyDupeGuruBase.m; sourceTree = "<group>"; };
|
||||
CE9705D214C46E7D007A28F6 /* PyFairware.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyFairware.h; sourceTree = "<group>"; };
|
||||
CE9705D314C46E7D007A28F6 /* PyFairware.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyFairware.m; sourceTree = "<group>"; };
|
||||
CE9705D414C46E7D007A28F6 /* PyGUIObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyGUIObject.h; sourceTree = "<group>"; };
|
||||
CE9705D514C46E7D007A28F6 /* PyGUIObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyGUIObject.m; sourceTree = "<group>"; };
|
||||
CE9705D614C46E7D007A28F6 /* PyOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyOutline.h; sourceTree = "<group>"; };
|
||||
CE9705D714C46E7D007A28F6 /* PyOutline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyOutline.m; sourceTree = "<group>"; };
|
||||
CE9705D814C46E7D007A28F6 /* PyPrioritizeDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyPrioritizeDialog.h; sourceTree = "<group>"; };
|
||||
CE9705D914C46E7D007A28F6 /* PyPrioritizeDialog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyPrioritizeDialog.m; sourceTree = "<group>"; };
|
||||
CE9705DA14C46E7D007A28F6 /* PyPrioritizeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyPrioritizeList.h; sourceTree = "<group>"; };
|
||||
CE9705DB14C46E7D007A28F6 /* PyPrioritizeList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyPrioritizeList.m; sourceTree = "<group>"; };
|
||||
CE9705DC14C46E7D007A28F6 /* PyProblemDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyProblemDialog.h; sourceTree = "<group>"; };
|
||||
CE9705DD14C46E7D007A28F6 /* PyProblemDialog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyProblemDialog.m; sourceTree = "<group>"; };
|
||||
CE9705DE14C46E7D007A28F6 /* PyResultTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyResultTable.h; sourceTree = "<group>"; };
|
||||
CE9705DF14C46E7D007A28F6 /* PyResultTable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyResultTable.m; sourceTree = "<group>"; };
|
||||
CE9705E014C46E7D007A28F6 /* PySelectableList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PySelectableList.h; sourceTree = "<group>"; };
|
||||
CE9705E114C46E7D007A28F6 /* PySelectableList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PySelectableList.m; sourceTree = "<group>"; };
|
||||
CE9705E214C46E7D007A28F6 /* PyStatsLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyStatsLabel.h; sourceTree = "<group>"; };
|
||||
CE9705E314C46E7D007A28F6 /* PyStatsLabel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyStatsLabel.m; sourceTree = "<group>"; };
|
||||
CE9705E414C46E7D007A28F6 /* PyTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyTable.h; sourceTree = "<group>"; };
|
||||
CE9705E514C46E7D007A28F6 /* PyTable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PyTable.m; sourceTree = "<group>"; };
|
||||
CE9705F714C46EA3007A28F6 /* Python */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = Python; path = ../../build/Python; sourceTree = "<group>"; };
|
||||
CE9705FE14C46F60007A28F6 /* py */ = {isa = PBXFileReference; lastKnownFileType = folder; name = py; path = ../../build/py; sourceTree = "<group>"; };
|
||||
CE97060014C46F70007A28F6 /* dg_cocoa.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; name = dg_cocoa.py; path = ../../build/dg_cocoa.py; sourceTree = "<group>"; };
|
||||
CE97060214C471F2007A28F6 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = ../base/main.m; sourceTree = "<group>"; };
|
||||
CEA14F421461ED63007F01A5 /* locale */ = {isa = PBXFileReference; lastKnownFileType = folder; name = locale; path = ../../build/locale; sourceTree = "<group>"; };
|
||||
CEB14D27124DFC2800FA7481 /* ResultTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ResultTable.h; path = ../base/ResultTable.h; sourceTree = SOURCE_ROOT; };
|
||||
CEB14D28124DFC2800FA7481 /* ResultTable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ResultTable.m; path = ../base/ResultTable.m; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07513225C89009F521D /* ExtraFairwareReminder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ExtraFairwareReminder.h; path = ../base/ExtraFairwareReminder.h; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07613225C89009F521D /* ExtraFairwareReminder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ExtraFairwareReminder.m; path = ../base/ExtraFairwareReminder.m; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07713225C89009F521D /* PyExtraFairwareReminder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyExtraFairwareReminder.h; path = ../base/PyExtraFairwareReminder.h; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07C13225CA2009F521D /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07E13225CB8009F521D /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CED0A591111C9FD10020AD7D /* PyDetailsPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyDetailsPanel.h; path = ../base/PyDetailsPanel.h; sourceTree = SOURCE_ROOT; };
|
||||
CEDF07A0112493B200EE5BC0 /* PyStatsLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyStatsLabel.h; path = ../base/PyStatsLabel.h; sourceTree = SOURCE_ROOT; };
|
||||
CEC3D37C14911253006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../base/hy.lproj/DetailsPanel.xib; sourceTree = "<group>"; };
|
||||
CEC3D37D14911253006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../base/hy.lproj/DirectoryPanel.xib; sourceTree = "<group>"; };
|
||||
CEC3D37F14911253006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../base/hy.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
CEC3D38014911253006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../base/hy.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CEC3D38114911253006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../base/hy.lproj/ProblemDialog.xib; sourceTree = "<group>"; };
|
||||
CEC3D38214911253006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../base/hy.lproj/ResultWindow.xib; sourceTree = "<group>"; };
|
||||
CEC3D38B14911263006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = hy.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CEC3D38D14911274006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hy; path = ../base/hy.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
CEC3D38F14911288006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../hy.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CEC3D39014911288006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../hy.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CEC3D39114911288006B1A91 /* hy */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = hy; path = ../hy.lproj/FairwareReminder.xib; sourceTree = "<group>"; };
|
||||
CEC8F3091416A0D2004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../zh_CN.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CEC8F30A1416A0D2004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../zh_CN.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CEC8F30B1416A0D2004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../zh_CN.lproj/FairwareReminder.xib; sourceTree = "<group>"; };
|
||||
CEC8F3111416A0F0004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = zh_CN; path = ../base/zh_CN.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
CEC8F3141416A0FC004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/DetailsPanel.xib; sourceTree = "<group>"; };
|
||||
CEC8F3151416A0FC004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/DirectoryPanel.xib; sourceTree = "<group>"; };
|
||||
CEC8F3171416A0FC004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
CEC8F3181416A0FC004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/ProblemDialog.xib; sourceTree = "<group>"; };
|
||||
CEC8F3191416A0FC004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/ResultWindow.xib; sourceTree = "<group>"; };
|
||||
CEC8F3201416A109004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = zh_CN.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CECE37A31423EA980005187F /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CECE37A41423EA980005187F /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CECE37A51423EA980005187F /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/PrioritizeDialog.xib; sourceTree = "<group>"; };
|
||||
CEDF07A1112493B200EE5BC0 /* StatsLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = StatsLabel.h; path = ../base/StatsLabel.h; sourceTree = SOURCE_ROOT; };
|
||||
CEDF07A2112493B200EE5BC0 /* StatsLabel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = StatsLabel.m; path = ../base/StatsLabel.m; sourceTree = SOURCE_ROOT; };
|
||||
CEEB135109C837A2004D2330 /* dupeguru.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = dupeguru.icns; sourceTree = "<group>"; };
|
||||
CEF3185613D8660000B8CDCA /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../en.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CEF3185813D8660000B8CDCA /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../en.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CEF3185B13D8660900B8CDCA /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../fr.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CEF3185C13D8660900B8CDCA /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../fr.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CEF3185F13D8661300B8CDCA /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../de.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CEF3186013D8661300B8CDCA /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../de.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CEF3186113D8661300B8CDCA /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../de.lproj/FairwareReminder.xib; sourceTree = "<group>"; };
|
||||
CEF5770713CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/DetailsPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770813CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/DirectoryPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770913CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770A13CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/MainMenu.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770B13CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/ProblemDialog.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770C13CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/ResultWindow.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770D13CDFB310083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = de.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CEFC294509C89E3D00D9F998 /* folder32.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = folder32.png; path = ../../images/folder32.png; sourceTree = SOURCE_ROOT; };
|
||||
CEFF18A009A4D387005E6321 /* PyDupeGuru.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = PyDupeGuru.h; sourceTree = SOURCE_ROOT; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -214,8 +348,10 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
CE2E87F9142BC90A00519A68 /* Quartz.framework in Frameworks */,
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
|
||||
CE1425890AFB718500BD5167 /* Sparkle.framework in Frameworks */,
|
||||
CE9705F814C46EA3007A28F6 /* Python in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -225,13 +361,11 @@
|
||||
080E96DDFE201D6D7F000001 /* DGME */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
29B97316FDCFA39411CA2CEA /* main.m */,
|
||||
CE381C9509914ACE003581CE /* AppDelegate.h */,
|
||||
CE381C9409914ACE003581CE /* AppDelegate.m */,
|
||||
CE848A1809DD85810004CB44 /* Consts.h */,
|
||||
CE68EE6509ABC48000971085 /* DirectoryPanel.h */,
|
||||
CE68EE6609ABC48000971085 /* DirectoryPanel.m */,
|
||||
CEFF18A009A4D387005E6321 /* PyDupeGuru.h */,
|
||||
CE381C9B09914ADF003581CE /* ResultWindow.h */,
|
||||
CE381C9A09914ADF003581CE /* ResultWindow.m */,
|
||||
);
|
||||
@@ -241,8 +375,10 @@
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE9705F714C46EA3007A28F6 /* Python */,
|
||||
CE1425880AFB718500BD5167 /* Sparkle.framework */,
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
|
||||
CE2E87F8142BC90A00519A68 /* Quartz.framework */,
|
||||
);
|
||||
name = "Linked Frameworks";
|
||||
sourceTree = "<group>";
|
||||
@@ -270,6 +406,7 @@
|
||||
children = (
|
||||
080E96DDFE201D6D7F000001 /* DGME */,
|
||||
CE515E140FC6C17900EC695D /* dgbase */,
|
||||
CE9705C314C46E7D007A28F6 /* autogen */,
|
||||
CE515DDD0FC6C09400EC695D /* cocoalib */,
|
||||
29B97317FDCFA39411CA2CEA /* Resources */,
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */,
|
||||
@@ -281,13 +418,14 @@
|
||||
29B97317FDCFA39411CA2CEA /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE97060014C46F70007A28F6 /* dg_cocoa.py */,
|
||||
CE9705FE14C46F60007A28F6 /* py */,
|
||||
CEA14F421461ED63007F01A5 /* locale */,
|
||||
CE073F5409CAE1A3005C1D2F /* help */,
|
||||
CE381CF509915304003581CE /* dg_cocoa.plugin */,
|
||||
CEFC294309C89E0000D9F998 /* images */,
|
||||
CE05330C12E5D3D70029EF25 /* xib */,
|
||||
CEEB135109C837A2004D2330 /* dupeguru.icns */,
|
||||
CE05332D12E5D6100029EF25 /* Localizable.strings */,
|
||||
CE45274D12E5F62D00005A15 /* core.strings */,
|
||||
8D1107310486CEB800E47090 /* Info.plist */,
|
||||
CE6E0E9E1054EB97008D9390 /* dsa_pub.pem */,
|
||||
);
|
||||
@@ -306,30 +444,23 @@
|
||||
CE003CB211242D00004B0AA7 /* controllers */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE2239A0148FFE6600B3DC99 /* HSColumns.h */,
|
||||
CE2239A1148FFE6600B3DC99 /* HSColumns.m */,
|
||||
CE003CB311242D00004B0AA7 /* HSGUIController.h */,
|
||||
CE003CB411242D00004B0AA7 /* HSGUIController.m */,
|
||||
CE003CB511242D00004B0AA7 /* HSOutline.h */,
|
||||
CE003CB611242D00004B0AA7 /* HSOutline.m */,
|
||||
CE0A0BFE1175A1C000DCA3C6 /* HSTable.h */,
|
||||
CE0A0BFF1175A1C000DCA3C6 /* HSTable.m */,
|
||||
CE003CB711242D00004B0AA7 /* HSWindowController.h */,
|
||||
CE003CB811242D00004B0AA7 /* HSWindowController.m */,
|
||||
CE84C9B51423AE410050A6AD /* HSPopUpList.h */,
|
||||
CE84C9B61423AE410050A6AD /* HSPopUpList.m */,
|
||||
CE84C9B71423AE410050A6AD /* HSSelectableList.h */,
|
||||
CE84C9B81423AE410050A6AD /* HSSelectableList.m */,
|
||||
);
|
||||
name = controllers;
|
||||
path = ../../cocoalib/controllers;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE003CBB11242D00004B0AA7 /* proxies */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE003CBC11242D00004B0AA7 /* PyGUI.h */,
|
||||
CE003CBD11242D00004B0AA7 /* PyOutline.h */,
|
||||
CE0A0C131175A28100DCA3C6 /* PyTable.h */,
|
||||
);
|
||||
name = proxies;
|
||||
path = ../../cocoalib/proxies;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE003CBF11242D00004B0AA7 /* views */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -353,29 +484,20 @@
|
||||
CE05330F12E5D3ED0029EF25 /* DirectoryPanel.xib */,
|
||||
CE05331112E5D3ED0029EF25 /* MainMenu.xib */,
|
||||
CE05331312E5D3ED0029EF25 /* ProblemDialog.xib */,
|
||||
CE1195941510FFB20063C8AF /* IgnoreListDialog.xib */,
|
||||
CE05331512E5D3ED0029EF25 /* ResultWindow.xib */,
|
||||
CE05332112E5D4100029EF25 /* Preferences.xib */,
|
||||
CEB5E07B13225CA2009F521D /* ExtraFairwareReminder.xib */,
|
||||
CE84C9BB1423AF200050A6AD /* PrioritizeDialog.xib */,
|
||||
);
|
||||
name = xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CE49DEF10FDFEB810098617B /* brsinglelineformatter */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE49DEF20FDFEB810098617B /* BRSingleLineFormatter.h */,
|
||||
CE49DEF30FDFEB810098617B /* BRSingleLineFormatter.m */,
|
||||
);
|
||||
name = brsinglelineformatter;
|
||||
path = ../../cocoalib/brsinglelineformatter;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE4B59C41119919700C06C9E /* xib */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE4F934512CCA9470067A3AE /* about.xib */,
|
||||
CEF3185513D8660000B8CDCA /* about.xib */,
|
||||
CEF3185713D8660000B8CDCA /* ErrorReportWindow.xib */,
|
||||
CE74A12512537F2E008A8DF0 /* FairwareReminder.xib */,
|
||||
CE4B59C51119919700C06C9E /* ErrorReportWindow.xib */,
|
||||
CE4B59C61119919700C06C9E /* progress.xib */,
|
||||
);
|
||||
name = xib;
|
||||
@@ -386,26 +508,22 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE003CB211242D00004B0AA7 /* controllers */,
|
||||
CE003CBB11242D00004B0AA7 /* proxies */,
|
||||
CE003CBF11242D00004B0AA7 /* views */,
|
||||
CE4B59C41119919700C06C9E /* xib */,
|
||||
CE49DEF10FDFEB810098617B /* brsinglelineformatter */,
|
||||
CE515DE00FC6C12E00EC695D /* Dialogs.h */,
|
||||
CE515DE10FC6C12E00EC695D /* Dialogs.m */,
|
||||
CE515DE20FC6C12E00EC695D /* HSErrorReportWindow.h */,
|
||||
CE515DE30FC6C12E00EC695D /* HSErrorReportWindow.m */,
|
||||
CE74A12112537F06008A8DF0 /* HSFairwareReminder.h */,
|
||||
CE74A12212537F06008A8DF0 /* HSFairwareReminder.m */,
|
||||
CE74A12312537F06008A8DF0 /* PyFairware.h */,
|
||||
CE4F934712CCA96C0067A3AE /* HSAboutBox.h */,
|
||||
CE4F934812CCA96C0067A3AE /* HSAboutBox.m */,
|
||||
CE1EAA0812DF3E81009BA949 /* HSRecentFiles.h */,
|
||||
CE1EAA0912DF3E81009BA949 /* HSRecentFiles.m */,
|
||||
CE2E87FB142BC92C00519A68 /* HSQuicklook.h */,
|
||||
CE2E87FC142BC92C00519A68 /* HSQuicklook.m */,
|
||||
CE003CB911242D00004B0AA7 /* NSEventAdditions.h */,
|
||||
CE003CBA11242D00004B0AA7 /* NSEventAdditions.m */,
|
||||
CE515DE60FC6C12E00EC695D /* ProgressController.h */,
|
||||
CE515DE70FC6C12E00EC695D /* ProgressController.m */,
|
||||
CE515DE80FC6C12E00EC695D /* PyApp.h */,
|
||||
CE515DEF0FC6C12E00EC695D /* Utils.h */,
|
||||
CE515DF00FC6C12E00EC695D /* Utils.m */,
|
||||
CE515DF10FC6C12E00EC695D /* ValueTransformers.h */,
|
||||
@@ -421,7 +539,6 @@
|
||||
CEB14D28124DFC2800FA7481 /* ResultTable.m */,
|
||||
CE003CCD11242D2C004B0AA7 /* DirectoryOutline.h */,
|
||||
CE003CCE11242D2C004B0AA7 /* DirectoryOutline.m */,
|
||||
CE003CCF11242D2C004B0AA7 /* PyDirectoryOutline.h */,
|
||||
CE515E150FC6C19300EC695D /* AppDelegate.h */,
|
||||
CE515E160FC6C19300EC695D /* AppDelegate.m */,
|
||||
CE515E170FC6C19300EC695D /* Consts.h */,
|
||||
@@ -433,20 +550,61 @@
|
||||
CE0A0C021175A1DE00DCA3C6 /* ProblemDialog.m */,
|
||||
CE515E1B0FC6C19300EC695D /* ResultWindow.h */,
|
||||
CE515E1C0FC6C19300EC695D /* ResultWindow.m */,
|
||||
CE1195911510FF890063C8AF /* IgnoreListDialog.h */,
|
||||
CE1195921510FF890063C8AF /* IgnoreListDialog.m */,
|
||||
CEDF07A1112493B200EE5BC0 /* StatsLabel.h */,
|
||||
CEDF07A2112493B200EE5BC0 /* StatsLabel.m */,
|
||||
CEB5E07513225C89009F521D /* ExtraFairwareReminder.h */,
|
||||
CEB5E07613225C89009F521D /* ExtraFairwareReminder.m */,
|
||||
CE515E1A0FC6C19300EC695D /* PyDupeGuru.h */,
|
||||
CED0A591111C9FD10020AD7D /* PyDetailsPanel.h */,
|
||||
CE0A0C031175A1DE00DCA3C6 /* PyProblemDialog.h */,
|
||||
CEDF07A0112493B200EE5BC0 /* PyStatsLabel.h */,
|
||||
CEB14D26124DFC2800FA7481 /* PyResultTable.h */,
|
||||
CEB5E07713225C89009F521D /* PyExtraFairwareReminder.h */,
|
||||
CE84C9AC1423ADFB0050A6AD /* PrioritizeDialog.h */,
|
||||
CE84C9AD1423ADFB0050A6AD /* PrioritizeDialog.m */,
|
||||
CE84C9AE1423ADFB0050A6AD /* PrioritizeList.h */,
|
||||
CE84C9AF1423ADFB0050A6AD /* PrioritizeList.m */,
|
||||
CE97060214C471F2007A28F6 /* main.m */,
|
||||
);
|
||||
name = dgbase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CE9705C314C46E7D007A28F6 /* autogen */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE9705C414C46E7D007A28F6 /* ObjP.h */,
|
||||
CE9705C514C46E7D007A28F6 /* ObjP.m */,
|
||||
CE9705C614C46E7D007A28F6 /* PyColumns.h */,
|
||||
CE9705C714C46E7D007A28F6 /* PyColumns.m */,
|
||||
CE9705C814C46E7D007A28F6 /* PyDetailsPanel.h */,
|
||||
CE9705C914C46E7D007A28F6 /* PyDetailsPanel.m */,
|
||||
CE9705CA14C46E7D007A28F6 /* PyDirectoryOutline.h */,
|
||||
CE9705CB14C46E7D007A28F6 /* PyDirectoryOutline.m */,
|
||||
CE9705CC14C46E7D007A28F6 /* PyDupeGuru.h */,
|
||||
CE9705CD14C46E7D007A28F6 /* PyDupeGuru.m */,
|
||||
CE9705CE14C46E7D007A28F6 /* PyDupeGuruBase.h */,
|
||||
CE9705CF14C46E7D007A28F6 /* PyDupeGuruBase.m */,
|
||||
CE9705D214C46E7D007A28F6 /* PyFairware.h */,
|
||||
CE9705D314C46E7D007A28F6 /* PyFairware.m */,
|
||||
CE9705D414C46E7D007A28F6 /* PyGUIObject.h */,
|
||||
CE9705D514C46E7D007A28F6 /* PyGUIObject.m */,
|
||||
CE9705D614C46E7D007A28F6 /* PyOutline.h */,
|
||||
CE9705D714C46E7D007A28F6 /* PyOutline.m */,
|
||||
CE9705D814C46E7D007A28F6 /* PyPrioritizeDialog.h */,
|
||||
CE9705D914C46E7D007A28F6 /* PyPrioritizeDialog.m */,
|
||||
CE9705DA14C46E7D007A28F6 /* PyPrioritizeList.h */,
|
||||
CE9705DB14C46E7D007A28F6 /* PyPrioritizeList.m */,
|
||||
CE9705DC14C46E7D007A28F6 /* PyProblemDialog.h */,
|
||||
CE9705DD14C46E7D007A28F6 /* PyProblemDialog.m */,
|
||||
CE11958D1510FF700063C8AF /* PyIgnoreListDialog.h */,
|
||||
CE11958E1510FF700063C8AF /* PyIgnoreListDialog.m */,
|
||||
CE9705DE14C46E7D007A28F6 /* PyResultTable.h */,
|
||||
CE9705DF14C46E7D007A28F6 /* PyResultTable.m */,
|
||||
CE9705E014C46E7D007A28F6 /* PySelectableList.h */,
|
||||
CE9705E114C46E7D007A28F6 /* PySelectableList.m */,
|
||||
CE9705E214C46E7D007A28F6 /* PyStatsLabel.h */,
|
||||
CE9705E314C46E7D007A28F6 /* PyStatsLabel.m */,
|
||||
CE9705E414C46E7D007A28F6 /* PyTable.h */,
|
||||
CE9705E514C46E7D007A28F6 /* PyTable.m */,
|
||||
);
|
||||
name = autogen;
|
||||
path = ../autogen;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CEFC294309C89E0000D9F998 /* images */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -483,8 +641,11 @@
|
||||
/* Begin PBXProject section */
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0430;
|
||||
};
|
||||
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "dupeguru" */;
|
||||
compatibilityVersion = "Xcode 3.0";
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
@@ -495,6 +656,12 @@
|
||||
en,
|
||||
fr,
|
||||
de,
|
||||
zh_CN,
|
||||
cs,
|
||||
it,
|
||||
hy,
|
||||
ru,
|
||||
uk,
|
||||
);
|
||||
mainGroup = 29B97314FDCFA39411CA2CEA /* dupeguru */;
|
||||
projectDirPath = "";
|
||||
@@ -510,15 +677,12 @@
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
CE381D0509915304003581CE /* dg_cocoa.plugin in Resources */,
|
||||
CE073F6309CAE1A3005C1D2F /* help in Resources */,
|
||||
CEEB135209C837A2004D2330 /* dupeguru.icns in Resources */,
|
||||
CEFC294609C89E3D00D9F998 /* folder32.png in Resources */,
|
||||
CE6E0E9F1054EB97008D9390 /* dsa_pub.pem in Resources */,
|
||||
CE4B59C81119919700C06C9E /* ErrorReportWindow.xib in Resources */,
|
||||
CE4B59C91119919700C06C9E /* progress.xib in Resources */,
|
||||
CE74A12712537F2E008A8DF0 /* FairwareReminder.xib in Resources */,
|
||||
CE4F934612CCA9470067A3AE /* about.xib in Resources */,
|
||||
CE05331712E5D3ED0029EF25 /* DetailsPanel.xib in Resources */,
|
||||
CE05331812E5D3ED0029EF25 /* DirectoryPanel.xib in Resources */,
|
||||
CE05331912E5D3ED0029EF25 /* MainMenu.xib in Resources */,
|
||||
@@ -526,8 +690,13 @@
|
||||
CE05331B12E5D3ED0029EF25 /* ResultWindow.xib in Resources */,
|
||||
CE05332312E5D4100029EF25 /* Preferences.xib in Resources */,
|
||||
CE05332F12E5D6100029EF25 /* Localizable.strings in Resources */,
|
||||
CE45274F12E5F62D00005A15 /* core.strings in Resources */,
|
||||
CEB5E07D13225CA2009F521D /* ExtraFairwareReminder.xib in Resources */,
|
||||
CEF3185913D8660000B8CDCA /* about.xib in Resources */,
|
||||
CEF3185A13D8660000B8CDCA /* ErrorReportWindow.xib in Resources */,
|
||||
CE84C9BD1423AF200050A6AD /* PrioritizeDialog.xib in Resources */,
|
||||
CEA14F431461ED63007F01A5 /* locale in Resources */,
|
||||
CE9705FF14C46F60007A28F6 /* py in Resources */,
|
||||
CE97060114C46F70007A28F6 /* dg_cocoa.py in Resources */,
|
||||
CE1195961510FFB20063C8AF /* IgnoreListDialog.xib in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -538,23 +707,19 @@
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D11072D0486CEB800E47090 /* main.m in Sources */,
|
||||
CE381C9609914ACE003581CE /* AppDelegate.m in Sources */,
|
||||
CE381C9C09914ADF003581CE /* ResultWindow.m in Sources */,
|
||||
CE68EE6809ABC48000971085 /* DirectoryPanel.m in Sources */,
|
||||
CE515DF30FC6C12E00EC695D /* Dialogs.m in Sources */,
|
||||
CE515DF40FC6C12E00EC695D /* HSErrorReportWindow.m in Sources */,
|
||||
CE515DF60FC6C12E00EC695D /* ProgressController.m in Sources */,
|
||||
CE515DFA0FC6C12E00EC695D /* Utils.m in Sources */,
|
||||
CE515DFB0FC6C12E00EC695D /* ValueTransformers.m in Sources */,
|
||||
CE515E1D0FC6C19300EC695D /* AppDelegate.m in Sources */,
|
||||
CE515E1E0FC6C19300EC695D /* DirectoryPanel.m in Sources */,
|
||||
CE515E1F0FC6C19300EC695D /* ResultWindow.m in Sources */,
|
||||
CE49DEF60FDFEB810098617B /* BRSingleLineFormatter.m in Sources */,
|
||||
CE6032C00FE6784C007E33FF /* DetailsPanel.m in Sources */,
|
||||
CE003CC611242D00004B0AA7 /* HSGUIController.m in Sources */,
|
||||
CE003CC711242D00004B0AA7 /* HSOutline.m in Sources */,
|
||||
CE003CC811242D00004B0AA7 /* HSWindowController.m in Sources */,
|
||||
CE003CC911242D00004B0AA7 /* NSEventAdditions.m in Sources */,
|
||||
CE003CCA11242D00004B0AA7 /* HSOutlineView.m in Sources */,
|
||||
CE003CCB11242D00004B0AA7 /* NSIndexPathAdditions.m in Sources */,
|
||||
@@ -568,7 +733,31 @@
|
||||
CE74A12412537F06008A8DF0 /* HSFairwareReminder.m in Sources */,
|
||||
CE4F934912CCA96C0067A3AE /* HSAboutBox.m in Sources */,
|
||||
CE1EAA0A12DF3E81009BA949 /* HSRecentFiles.m in Sources */,
|
||||
CEB5E07813225C89009F521D /* ExtraFairwareReminder.m in Sources */,
|
||||
CE84C9B21423ADFB0050A6AD /* PrioritizeDialog.m in Sources */,
|
||||
CE84C9B31423ADFB0050A6AD /* PrioritizeList.m in Sources */,
|
||||
CE84C9B91423AE410050A6AD /* HSPopUpList.m in Sources */,
|
||||
CE84C9BA1423AE410050A6AD /* HSSelectableList.m in Sources */,
|
||||
CE2E87FD142BC92C00519A68 /* HSQuicklook.m in Sources */,
|
||||
CE2239A2148FFE6600B3DC99 /* HSColumns.m in Sources */,
|
||||
CE9705E614C46E7D007A28F6 /* ObjP.m in Sources */,
|
||||
CE9705E714C46E7D007A28F6 /* PyColumns.m in Sources */,
|
||||
CE9705E814C46E7D007A28F6 /* PyDetailsPanel.m in Sources */,
|
||||
CE9705E914C46E7D007A28F6 /* PyDirectoryOutline.m in Sources */,
|
||||
CE9705EA14C46E7D007A28F6 /* PyDupeGuru.m in Sources */,
|
||||
CE9705EB14C46E7D007A28F6 /* PyDupeGuruBase.m in Sources */,
|
||||
CE9705ED14C46E7D007A28F6 /* PyFairware.m in Sources */,
|
||||
CE9705EE14C46E7D007A28F6 /* PyGUIObject.m in Sources */,
|
||||
CE9705EF14C46E7D007A28F6 /* PyOutline.m in Sources */,
|
||||
CE9705F014C46E7D007A28F6 /* PyPrioritizeDialog.m in Sources */,
|
||||
CE9705F114C46E7D007A28F6 /* PyPrioritizeList.m in Sources */,
|
||||
CE9705F214C46E7D007A28F6 /* PyProblemDialog.m in Sources */,
|
||||
CE9705F314C46E7D007A28F6 /* PyResultTable.m in Sources */,
|
||||
CE9705F414C46E7D007A28F6 /* PySelectableList.m in Sources */,
|
||||
CE9705F514C46E7D007A28F6 /* PyStatsLabel.m in Sources */,
|
||||
CE9705F614C46E7D007A28F6 /* PyTable.m in Sources */,
|
||||
CE97060314C471F2007A28F6 /* main.m in Sources */,
|
||||
CE11958F1510FF700063C8AF /* PyIgnoreListDialog.m in Sources */,
|
||||
CE1195931510FF890063C8AF /* IgnoreListDialog.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -581,6 +770,12 @@
|
||||
CE05330E12E5D3ED0029EF25 /* en */,
|
||||
CE05331C12E5D4010029EF25 /* fr */,
|
||||
CEF5770713CDFB250083CB30 /* de */,
|
||||
CEC8F3141416A0FC004D28F3 /* zh_CN */,
|
||||
CE74255114603152002F8E3E /* cs */,
|
||||
CE7A6998146443090007D927 /* it */,
|
||||
CEC3D37C14911253006B1A91 /* hy */,
|
||||
CE335AF714B393EE0000AF1A /* ru */,
|
||||
CE35FCF514C637DD004E4864 /* uk */,
|
||||
);
|
||||
name = DetailsPanel.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
@@ -591,6 +786,12 @@
|
||||
CE05331012E5D3ED0029EF25 /* en */,
|
||||
CE05331D12E5D4010029EF25 /* fr */,
|
||||
CEF5770813CDFB250083CB30 /* de */,
|
||||
CEC8F3151416A0FC004D28F3 /* zh_CN */,
|
||||
CE74255214603152002F8E3E /* cs */,
|
||||
CE7A6999146443090007D927 /* it */,
|
||||
CEC3D37D14911253006B1A91 /* hy */,
|
||||
CE335AF814B393EE0000AF1A /* ru */,
|
||||
CE35FCF614C637DD004E4864 /* uk */,
|
||||
);
|
||||
name = DirectoryPanel.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
@@ -601,6 +802,12 @@
|
||||
CE05331212E5D3ED0029EF25 /* en */,
|
||||
CE05331E12E5D4010029EF25 /* fr */,
|
||||
CEF5770A13CDFB250083CB30 /* de */,
|
||||
CEC8F3171416A0FC004D28F3 /* zh_CN */,
|
||||
CE74255414603152002F8E3E /* cs */,
|
||||
CE7A699B146443090007D927 /* it */,
|
||||
CEC3D37F14911253006B1A91 /* hy */,
|
||||
CE335AFA14B393EE0000AF1A /* ru */,
|
||||
CE35FCF814C637DD004E4864 /* uk */,
|
||||
);
|
||||
name = MainMenu.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
@@ -611,6 +818,12 @@
|
||||
CE05331412E5D3ED0029EF25 /* en */,
|
||||
CE05331F12E5D4010029EF25 /* fr */,
|
||||
CEF5770B13CDFB250083CB30 /* de */,
|
||||
CEC8F3181416A0FC004D28F3 /* zh_CN */,
|
||||
CE74255614603152002F8E3E /* cs */,
|
||||
CE7A699D146443090007D927 /* it */,
|
||||
CEC3D38114911253006B1A91 /* hy */,
|
||||
CE335AFC14B393EE0000AF1A /* ru */,
|
||||
CE35FCFA14C637DD004E4864 /* uk */,
|
||||
);
|
||||
name = ProblemDialog.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
@@ -621,6 +834,12 @@
|
||||
CE05331612E5D3ED0029EF25 /* en */,
|
||||
CE05332012E5D4010029EF25 /* fr */,
|
||||
CEF5770C13CDFB250083CB30 /* de */,
|
||||
CEC8F3191416A0FC004D28F3 /* zh_CN */,
|
||||
CE74255714603152002F8E3E /* cs */,
|
||||
CE7A699E146443090007D927 /* it */,
|
||||
CEC3D38214911253006B1A91 /* hy */,
|
||||
CE335AFD14B393EE0000AF1A /* ru */,
|
||||
CE35FCFB14C637DD004E4864 /* uk */,
|
||||
);
|
||||
name = ResultWindow.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
@@ -631,6 +850,12 @@
|
||||
CE05332212E5D4100029EF25 /* en */,
|
||||
CE05332912E5D4460029EF25 /* fr */,
|
||||
CEF5770D13CDFB310083CB30 /* de */,
|
||||
CEC8F3201416A109004D28F3 /* zh_CN */,
|
||||
CE74255F1460318D002F8E3E /* cs */,
|
||||
CE7A69A6146443170007D927 /* it */,
|
||||
CEC3D38B14911263006B1A91 /* hy */,
|
||||
CE335B0514B393FB0000AF1A /* ru */,
|
||||
CE35FD0314C637EC004E4864 /* uk */,
|
||||
);
|
||||
name = Preferences.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
@@ -640,38 +865,97 @@
|
||||
children = (
|
||||
CE05332E12E5D6100029EF25 /* en */,
|
||||
CE05333312E5D6370029EF25 /* fr */,
|
||||
CE2B2B5A1406ABDA0038D15A /* de */,
|
||||
CEC8F3111416A0F0004D28F3 /* zh_CN */,
|
||||
CE74254414603143002F8E3E /* cs */,
|
||||
CE7A6992146442F80007D927 /* it */,
|
||||
CEC3D38D14911274006B1A91 /* hy */,
|
||||
CE335AF514B393DC0000AF1A /* ru */,
|
||||
CE35FCF314C637C8004E4864 /* uk */,
|
||||
);
|
||||
name = Localizable.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CE45274D12E5F62D00005A15 /* core.strings */ = {
|
||||
CE1195941510FFB20063C8AF /* IgnoreListDialog.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE45274E12E5F62D00005A15 /* en */,
|
||||
CE45275012E5F63900005A15 /* fr */,
|
||||
CE1195951510FFB20063C8AF /* en */,
|
||||
CE119597151100020063C8AF /* cs */,
|
||||
CE119598151100020063C8AF /* de */,
|
||||
CE119599151100020063C8AF /* fr */,
|
||||
CE11959A151100020063C8AF /* hy */,
|
||||
CE11959B151100020063C8AF /* it */,
|
||||
CE11959C151100020063C8AF /* ru */,
|
||||
CE11959D151100020063C8AF /* uk */,
|
||||
CE11959E151100020063C8AF /* zh_CN */,
|
||||
);
|
||||
name = core.strings;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
name = IgnoreListDialog.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CE74A12512537F2E008A8DF0 /* FairwareReminder.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE74A12612537F2E008A8DF0 /* en */,
|
||||
CE05347712E5DC420029EF25 /* fr */,
|
||||
CEF3186113D8661300B8CDCA /* de */,
|
||||
CEC8F30B1416A0D2004D28F3 /* zh_CN */,
|
||||
CE74253D14603120002F8E3E /* cs */,
|
||||
CE7A69AA146443360007D927 /* it */,
|
||||
CEC3D39114911288006B1A91 /* hy */,
|
||||
CE335AF014B393C60000AF1A /* ru */,
|
||||
CE35FCEE14C637B8004E4864 /* uk */,
|
||||
);
|
||||
name = FairwareReminder.xib;
|
||||
path = ../../cocoalib/xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CEB5E07B13225CA2009F521D /* ExtraFairwareReminder.xib */ = {
|
||||
CE84C9BB1423AF200050A6AD /* PrioritizeDialog.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CEB5E07C13225CA2009F521D /* en */,
|
||||
CEB5E07E13225CB8009F521D /* fr */,
|
||||
CEF5770913CDFB250083CB30 /* de */,
|
||||
CE84C9BC1423AF200050A6AD /* en */,
|
||||
CECE37A31423EA980005187F /* de */,
|
||||
CECE37A41423EA980005187F /* fr */,
|
||||
CECE37A51423EA980005187F /* zh_CN */,
|
||||
CE74255514603152002F8E3E /* cs */,
|
||||
CE7A699C146443090007D927 /* it */,
|
||||
CEC3D38014911253006B1A91 /* hy */,
|
||||
CE335AFB14B393EE0000AF1A /* ru */,
|
||||
CE35FCF914C637DD004E4864 /* uk */,
|
||||
);
|
||||
name = ExtraFairwareReminder.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
name = PrioritizeDialog.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CEF3185513D8660000B8CDCA /* about.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CEF3185613D8660000B8CDCA /* en */,
|
||||
CEF3185B13D8660900B8CDCA /* fr */,
|
||||
CEF3185F13D8661300B8CDCA /* de */,
|
||||
CEC8F3091416A0D2004D28F3 /* zh_CN */,
|
||||
CE74253B14603120002F8E3E /* cs */,
|
||||
CE7A69A8146443360007D927 /* it */,
|
||||
CEC3D38F14911288006B1A91 /* hy */,
|
||||
CE335AEE14B393C60000AF1A /* ru */,
|
||||
CE35FCEC14C637B8004E4864 /* uk */,
|
||||
);
|
||||
name = about.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CEF3185713D8660000B8CDCA /* ErrorReportWindow.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CEF3185813D8660000B8CDCA /* en */,
|
||||
CEF3185C13D8660900B8CDCA /* fr */,
|
||||
CEF3186013D8661300B8CDCA /* de */,
|
||||
CEC8F30A1416A0D2004D28F3 /* zh_CN */,
|
||||
CE74253C14603120002F8E3E /* cs */,
|
||||
CE7A69A9146443360007D927 /* it */,
|
||||
CEC3D39014911288006B1A91 /* hy */,
|
||||
CE335AEF14B393C60000AF1A /* ru */,
|
||||
CE35FCED14C637B8004E4864 /* uk */,
|
||||
);
|
||||
name = ErrorReportWindow.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
@@ -679,9 +963,16 @@
|
||||
C01FCF4C08A954540054247B /* release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
DEPLOYMENT_LOCATION = YES;
|
||||
DEPLOYMENT_POSTPROCESSING = YES;
|
||||
DSTROOT = /;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
INSTALL_PATH = "$(PROJECT_DIR)";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"$(SRCROOT)/../../build\"",
|
||||
);
|
||||
PRODUCT_NAME = "dupeGuru ME";
|
||||
WRAPPER_EXTENSION = app;
|
||||
};
|
||||
@@ -690,16 +981,12 @@
|
||||
C01FCF5008A954540054247B /* release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = (
|
||||
i386,
|
||||
x86_64,
|
||||
ppc,
|
||||
);
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.5;
|
||||
SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk";
|
||||
HEADER_SEARCH_PATHS = "\"$(SRCROOT)/../../build/PythonHeaders\"";
|
||||
LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
SDKROOT = macosx10.6;
|
||||
};
|
||||
name = release;
|
||||
};
|
||||
@@ -708,18 +995,25 @@
|
||||
buildSettings = {
|
||||
ARCHS = "$(NATIVE_ARCH_ACTUAL)";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.5;
|
||||
SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk";
|
||||
HEADER_SEARCH_PATHS = "\"$(SRCROOT)/../../build/PythonHeaders\"";
|
||||
LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
SDKROOT = macosx10.6;
|
||||
};
|
||||
name = dev;
|
||||
};
|
||||
CED596C6111AF56D00C0CF2B /* dev */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
DEPLOYMENT_LOCATION = YES;
|
||||
DEPLOYMENT_POSTPROCESSING = YES;
|
||||
DSTROOT = /;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
INSTALL_PATH = "$(PROJECT_DIR)";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"$(SRCROOT)/../../build\"",
|
||||
);
|
||||
PRODUCT_NAME = "dupeGuru ME";
|
||||
WRAPPER_EXTENSION = app;
|
||||
};
|
||||
|
||||
@@ -2,6 +2,6 @@
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:dupeguru_xcode4.xcodeproj">
|
||||
location = "self:dupeguru.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
@@ -1,787 +0,0 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXAppleScriptBuildPhase section */
|
||||
CE6B288A0AFB7FC900508D93 /* AppleScript */ = {
|
||||
isa = PBXAppleScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
contextName = "";
|
||||
files = (
|
||||
);
|
||||
isSharedContext = 0;
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXAppleScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
|
||||
CE003CC611242D00004B0AA7 /* HSGUIController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CB411242D00004B0AA7 /* HSGUIController.m */; };
|
||||
CE003CC711242D00004B0AA7 /* HSOutline.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CB611242D00004B0AA7 /* HSOutline.m */; };
|
||||
CE003CC811242D00004B0AA7 /* HSWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CB811242D00004B0AA7 /* HSWindowController.m */; };
|
||||
CE003CC911242D00004B0AA7 /* NSEventAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CBA11242D00004B0AA7 /* NSEventAdditions.m */; };
|
||||
CE003CCA11242D00004B0AA7 /* HSOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CC111242D00004B0AA7 /* HSOutlineView.m */; };
|
||||
CE003CCB11242D00004B0AA7 /* NSIndexPathAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CC311242D00004B0AA7 /* NSIndexPathAdditions.m */; };
|
||||
CE003CCC11242D00004B0AA7 /* NSTableViewAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CC511242D00004B0AA7 /* NSTableViewAdditions.m */; };
|
||||
CE003CD011242D2C004B0AA7 /* DirectoryOutline.m in Sources */ = {isa = PBXBuildFile; fileRef = CE003CCE11242D2C004B0AA7 /* DirectoryOutline.m */; };
|
||||
CE05331712E5D3ED0029EF25 /* DetailsPanel.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05330D12E5D3ED0029EF25 /* DetailsPanel.xib */; };
|
||||
CE05331812E5D3ED0029EF25 /* DirectoryPanel.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05330F12E5D3ED0029EF25 /* DirectoryPanel.xib */; };
|
||||
CE05331912E5D3ED0029EF25 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05331112E5D3ED0029EF25 /* MainMenu.xib */; };
|
||||
CE05331A12E5D3ED0029EF25 /* ProblemDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05331312E5D3ED0029EF25 /* ProblemDialog.xib */; };
|
||||
CE05331B12E5D3ED0029EF25 /* ResultWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05331512E5D3ED0029EF25 /* ResultWindow.xib */; };
|
||||
CE05332312E5D4100029EF25 /* Preferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05332112E5D4100029EF25 /* Preferences.xib */; };
|
||||
CE05332F12E5D6100029EF25 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE05332D12E5D6100029EF25 /* Localizable.strings */; };
|
||||
CE073F6309CAE1A3005C1D2F /* help in Resources */ = {isa = PBXBuildFile; fileRef = CE073F5409CAE1A3005C1D2F /* help */; };
|
||||
CE0A0C001175A1C000DCA3C6 /* HSTable.m in Sources */ = {isa = PBXBuildFile; fileRef = CE0A0BFF1175A1C000DCA3C6 /* HSTable.m */; };
|
||||
CE0A0C041175A1DE00DCA3C6 /* ProblemDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = CE0A0C021175A1DE00DCA3C6 /* ProblemDialog.m */; };
|
||||
CE1425890AFB718500BD5167 /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE1425880AFB718500BD5167 /* Sparkle.framework */; };
|
||||
CE14259F0AFB719300BD5167 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE1425880AFB718500BD5167 /* Sparkle.framework */; };
|
||||
CE1EAA0A12DF3E81009BA949 /* HSRecentFiles.m in Sources */ = {isa = PBXBuildFile; fileRef = CE1EAA0912DF3E81009BA949 /* HSRecentFiles.m */; };
|
||||
CE381C9609914ACE003581CE /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = CE381C9409914ACE003581CE /* AppDelegate.m */; };
|
||||
CE381C9C09914ADF003581CE /* ResultWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = CE381C9A09914ADF003581CE /* ResultWindow.m */; };
|
||||
CE381D0509915304003581CE /* dg_cocoa.plugin in Resources */ = {isa = PBXBuildFile; fileRef = CE381CF509915304003581CE /* dg_cocoa.plugin */; };
|
||||
CE45274F12E5F62D00005A15 /* core.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE45274D12E5F62D00005A15 /* core.strings */; };
|
||||
CE49DEF60FDFEB810098617B /* BRSingleLineFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = CE49DEF30FDFEB810098617B /* BRSingleLineFormatter.m */; };
|
||||
CE4B59C91119919700C06C9E /* progress.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE4B59C61119919700C06C9E /* progress.xib */; };
|
||||
CE4F934912CCA96C0067A3AE /* HSAboutBox.m in Sources */ = {isa = PBXBuildFile; fileRef = CE4F934812CCA96C0067A3AE /* HSAboutBox.m */; };
|
||||
CE515DF30FC6C12E00EC695D /* Dialogs.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DE10FC6C12E00EC695D /* Dialogs.m */; };
|
||||
CE515DF40FC6C12E00EC695D /* HSErrorReportWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DE30FC6C12E00EC695D /* HSErrorReportWindow.m */; };
|
||||
CE515DF60FC6C12E00EC695D /* ProgressController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DE70FC6C12E00EC695D /* ProgressController.m */; };
|
||||
CE515DFA0FC6C12E00EC695D /* Utils.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DF00FC6C12E00EC695D /* Utils.m */; };
|
||||
CE515DFB0FC6C12E00EC695D /* ValueTransformers.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515DF20FC6C12E00EC695D /* ValueTransformers.m */; };
|
||||
CE515E1D0FC6C19300EC695D /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515E160FC6C19300EC695D /* AppDelegate.m */; };
|
||||
CE515E1E0FC6C19300EC695D /* DirectoryPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515E190FC6C19300EC695D /* DirectoryPanel.m */; };
|
||||
CE515E1F0FC6C19300EC695D /* ResultWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = CE515E1C0FC6C19300EC695D /* ResultWindow.m */; };
|
||||
CE578303124DFC660004769C /* HSTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = CE578302124DFC660004769C /* HSTableView.m */; };
|
||||
CE6032C00FE6784C007E33FF /* DetailsPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE6032BF0FE6784C007E33FF /* DetailsPanel.m */; };
|
||||
CE68EE6809ABC48000971085 /* DirectoryPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE68EE6609ABC48000971085 /* DirectoryPanel.m */; };
|
||||
CE6E0E9F1054EB97008D9390 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = CE6E0E9E1054EB97008D9390 /* dsa_pub.pem */; };
|
||||
CE74A12412537F06008A8DF0 /* HSFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE74A12212537F06008A8DF0 /* HSFairwareReminder.m */; };
|
||||
CE74A12712537F2E008A8DF0 /* FairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE74A12512537F2E008A8DF0 /* FairwareReminder.xib */; };
|
||||
CE848A1909DD85810004CB44 /* Consts.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE848A1809DD85810004CB44 /* Consts.h */; };
|
||||
CEB14D29124DFC2800FA7481 /* ResultTable.m in Sources */ = {isa = PBXBuildFile; fileRef = CEB14D28124DFC2800FA7481 /* ResultTable.m */; };
|
||||
CEB5E07813225C89009F521D /* ExtraFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CEB5E07613225C89009F521D /* ExtraFairwareReminder.m */; };
|
||||
CEB5E07D13225CA2009F521D /* ExtraFairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEB5E07B13225CA2009F521D /* ExtraFairwareReminder.xib */; };
|
||||
CEDF07A3112493B200EE5BC0 /* StatsLabel.m in Sources */ = {isa = PBXBuildFile; fileRef = CEDF07A2112493B200EE5BC0 /* StatsLabel.m */; };
|
||||
CEEB135209C837A2004D2330 /* dupeguru.icns in Resources */ = {isa = PBXBuildFile; fileRef = CEEB135109C837A2004D2330 /* dupeguru.icns */; };
|
||||
CEF3185913D8660000B8CDCA /* about.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185513D8660000B8CDCA /* about.xib */; };
|
||||
CEF3185A13D8660000B8CDCA /* ErrorReportWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185713D8660000B8CDCA /* ErrorReportWindow.xib */; };
|
||||
CEF3185D13D8660900B8CDCA /* about.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185513D8660000B8CDCA /* about.xib */; };
|
||||
CEF3185E13D8660900B8CDCA /* ErrorReportWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185713D8660000B8CDCA /* ErrorReportWindow.xib */; };
|
||||
CEF3186213D8661300B8CDCA /* about.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185513D8660000B8CDCA /* about.xib */; };
|
||||
CEF3186313D8661300B8CDCA /* ErrorReportWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185713D8660000B8CDCA /* ErrorReportWindow.xib */; };
|
||||
CEF3186413D8661300B8CDCA /* FairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE74A12512537F2E008A8DF0 /* FairwareReminder.xib */; };
|
||||
CEFC294609C89E3D00D9F998 /* folder32.png in Resources */ = {isa = PBXBuildFile; fileRef = CEFC294509C89E3D00D9F998 /* folder32.png */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
CECC02B709A36E8200CC0A94 /* CopyFiles */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = "";
|
||||
dstSubfolderSpec = 10;
|
||||
files = (
|
||||
CE14259F0AFB719300BD5167 /* Sparkle.framework in CopyFiles */,
|
||||
CE848A1909DD85810004CB44 /* Consts.h in CopyFiles */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
|
||||
29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
|
||||
29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = SOURCE_ROOT; };
|
||||
8D1107320486CEB800E47090 /* dupeGuru ME.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "dupeGuru ME.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
CE003CB311242D00004B0AA7 /* HSGUIController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSGUIController.h; sourceTree = "<group>"; };
|
||||
CE003CB411242D00004B0AA7 /* HSGUIController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSGUIController.m; sourceTree = "<group>"; };
|
||||
CE003CB511242D00004B0AA7 /* HSOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSOutline.h; sourceTree = "<group>"; };
|
||||
CE003CB611242D00004B0AA7 /* HSOutline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSOutline.m; sourceTree = "<group>"; };
|
||||
CE003CB711242D00004B0AA7 /* HSWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSWindowController.h; sourceTree = "<group>"; };
|
||||
CE003CB811242D00004B0AA7 /* HSWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSWindowController.m; sourceTree = "<group>"; };
|
||||
CE003CB911242D00004B0AA7 /* NSEventAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NSEventAdditions.h; path = ../../cocoalib/NSEventAdditions.h; sourceTree = SOURCE_ROOT; };
|
||||
CE003CBA11242D00004B0AA7 /* NSEventAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NSEventAdditions.m; path = ../../cocoalib/NSEventAdditions.m; sourceTree = SOURCE_ROOT; };
|
||||
CE003CBC11242D00004B0AA7 /* PyGUI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyGUI.h; sourceTree = "<group>"; };
|
||||
CE003CBD11242D00004B0AA7 /* PyOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyOutline.h; sourceTree = "<group>"; };
|
||||
CE003CC011242D00004B0AA7 /* HSOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSOutlineView.h; sourceTree = "<group>"; };
|
||||
CE003CC111242D00004B0AA7 /* HSOutlineView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSOutlineView.m; sourceTree = "<group>"; };
|
||||
CE003CC211242D00004B0AA7 /* NSIndexPathAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSIndexPathAdditions.h; sourceTree = "<group>"; };
|
||||
CE003CC311242D00004B0AA7 /* NSIndexPathAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSIndexPathAdditions.m; sourceTree = "<group>"; };
|
||||
CE003CC411242D00004B0AA7 /* NSTableViewAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSTableViewAdditions.h; sourceTree = "<group>"; };
|
||||
CE003CC511242D00004B0AA7 /* NSTableViewAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSTableViewAdditions.m; sourceTree = "<group>"; };
|
||||
CE003CCD11242D2C004B0AA7 /* DirectoryOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DirectoryOutline.h; path = ../base/DirectoryOutline.h; sourceTree = SOURCE_ROOT; };
|
||||
CE003CCE11242D2C004B0AA7 /* DirectoryOutline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DirectoryOutline.m; path = ../base/DirectoryOutline.m; sourceTree = SOURCE_ROOT; };
|
||||
CE003CCF11242D2C004B0AA7 /* PyDirectoryOutline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyDirectoryOutline.h; path = ../base/PyDirectoryOutline.h; sourceTree = SOURCE_ROOT; };
|
||||
CE05330E12E5D3ED0029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/DetailsPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331012E5D3ED0029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/DirectoryPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331212E5D3ED0029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/MainMenu.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331412E5D3ED0029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/ProblemDialog.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331612E5D3ED0029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/ResultWindow.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331C12E5D4010029EF25 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/DetailsPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331D12E5D4010029EF25 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/DirectoryPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331E12E5D4010029EF25 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/MainMenu.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05331F12E5D4010029EF25 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/ProblemDialog.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05332012E5D4010029EF25 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/ResultWindow.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE05332212E5D4100029EF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CE05332912E5D4460029EF25 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CE05332E12E5D6100029EF25 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = ../base/en.lproj/Localizable.strings; sourceTree = SOURCE_ROOT; };
|
||||
CE05333312E5D6370029EF25 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = ../base/fr.lproj/Localizable.strings; sourceTree = SOURCE_ROOT; };
|
||||
CE05347712E5DC420029EF25 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../../cocoalib/fr.lproj/FairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE073F5409CAE1A3005C1D2F /* help */ = {isa = PBXFileReference; lastKnownFileType = folder; name = help; path = ../../build/help; sourceTree = "<group>"; };
|
||||
CE0A0BFE1175A1C000DCA3C6 /* HSTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSTable.h; sourceTree = "<group>"; };
|
||||
CE0A0BFF1175A1C000DCA3C6 /* HSTable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSTable.m; sourceTree = "<group>"; };
|
||||
CE0A0C011175A1DE00DCA3C6 /* ProblemDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ProblemDialog.h; path = ../base/ProblemDialog.h; sourceTree = SOURCE_ROOT; };
|
||||
CE0A0C021175A1DE00DCA3C6 /* ProblemDialog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ProblemDialog.m; path = ../base/ProblemDialog.m; sourceTree = SOURCE_ROOT; };
|
||||
CE0A0C031175A1DE00DCA3C6 /* PyProblemDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyProblemDialog.h; path = ../base/PyProblemDialog.h; sourceTree = SOURCE_ROOT; };
|
||||
CE0A0C131175A28100DCA3C6 /* PyTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PyTable.h; sourceTree = "<group>"; };
|
||||
CE1425880AFB718500BD5167 /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Sparkle.framework; path = /Library/Frameworks/Sparkle.framework; sourceTree = "<absolute>"; };
|
||||
CE1EAA0812DF3E81009BA949 /* HSRecentFiles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSRecentFiles.h; path = ../../cocoalib/HSRecentFiles.h; sourceTree = SOURCE_ROOT; };
|
||||
CE1EAA0912DF3E81009BA949 /* HSRecentFiles.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSRecentFiles.m; path = ../../cocoalib/HSRecentFiles.m; sourceTree = SOURCE_ROOT; };
|
||||
CE381C9409914ACE003581CE /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = SOURCE_ROOT; };
|
||||
CE381C9509914ACE003581CE /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = SOURCE_ROOT; };
|
||||
CE381C9A09914ADF003581CE /* ResultWindow.m */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.objc; path = ResultWindow.m; sourceTree = SOURCE_ROOT; };
|
||||
CE381C9B09914ADF003581CE /* ResultWindow.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ResultWindow.h; sourceTree = SOURCE_ROOT; };
|
||||
CE381CF509915304003581CE /* dg_cocoa.plugin */ = {isa = PBXFileReference; lastKnownFileType = folder; path = dg_cocoa.plugin; sourceTree = SOURCE_ROOT; };
|
||||
CE45274E12E5F62D00005A15 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = ../base/en.lproj/core.strings; sourceTree = SOURCE_ROOT; };
|
||||
CE45275012E5F63900005A15 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = ../base/fr.lproj/core.strings; sourceTree = SOURCE_ROOT; };
|
||||
CE49DEF20FDFEB810098617B /* BRSingleLineFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BRSingleLineFormatter.h; path = ../../cocoalib/brsinglelineformatter/BRSingleLineFormatter.h; sourceTree = SOURCE_ROOT; };
|
||||
CE49DEF30FDFEB810098617B /* BRSingleLineFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = BRSingleLineFormatter.m; path = ../../cocoalib/brsinglelineformatter/BRSingleLineFormatter.m; sourceTree = SOURCE_ROOT; };
|
||||
CE4B59C61119919700C06C9E /* progress.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = progress.xib; sourceTree = "<group>"; };
|
||||
CE4F934712CCA96C0067A3AE /* HSAboutBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSAboutBox.h; path = ../../cocoalib/HSAboutBox.h; sourceTree = SOURCE_ROOT; };
|
||||
CE4F934812CCA96C0067A3AE /* HSAboutBox.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSAboutBox.m; path = ../../cocoalib/HSAboutBox.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE00FC6C12E00EC695D /* Dialogs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Dialogs.h; path = ../../cocoalib/Dialogs.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE10FC6C12E00EC695D /* Dialogs.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Dialogs.m; path = ../../cocoalib/Dialogs.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE20FC6C12E00EC695D /* HSErrorReportWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSErrorReportWindow.h; path = ../../cocoalib/HSErrorReportWindow.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE30FC6C12E00EC695D /* HSErrorReportWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSErrorReportWindow.m; path = ../../cocoalib/HSErrorReportWindow.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE60FC6C12E00EC695D /* ProgressController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ProgressController.h; path = ../../cocoalib/ProgressController.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE70FC6C12E00EC695D /* ProgressController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ProgressController.m; path = ../../cocoalib/ProgressController.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DE80FC6C12E00EC695D /* PyApp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyApp.h; path = ../../cocoalib/PyApp.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DEF0FC6C12E00EC695D /* Utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Utils.h; path = ../../cocoalib/Utils.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DF00FC6C12E00EC695D /* Utils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Utils.m; path = ../../cocoalib/Utils.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515DF10FC6C12E00EC695D /* ValueTransformers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ValueTransformers.h; path = ../../cocoalib/ValueTransformers.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515DF20FC6C12E00EC695D /* ValueTransformers.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ValueTransformers.m; path = ../../cocoalib/ValueTransformers.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515E150FC6C19300EC695D /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = ../base/AppDelegate.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E160FC6C19300EC695D /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = ../base/AppDelegate.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515E170FC6C19300EC695D /* Consts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Consts.h; path = ../base/Consts.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E180FC6C19300EC695D /* DirectoryPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DirectoryPanel.h; path = ../base/DirectoryPanel.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E190FC6C19300EC695D /* DirectoryPanel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DirectoryPanel.m; path = ../base/DirectoryPanel.m; sourceTree = SOURCE_ROOT; };
|
||||
CE515E1A0FC6C19300EC695D /* PyDupeGuru.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyDupeGuru.h; path = ../base/PyDupeGuru.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E1B0FC6C19300EC695D /* ResultWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ResultWindow.h; path = ../base/ResultWindow.h; sourceTree = SOURCE_ROOT; };
|
||||
CE515E1C0FC6C19300EC695D /* ResultWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ResultWindow.m; path = ../base/ResultWindow.m; sourceTree = SOURCE_ROOT; };
|
||||
CE578301124DFC660004769C /* HSTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSTableView.h; path = ../../cocoalib/views/HSTableView.h; sourceTree = SOURCE_ROOT; };
|
||||
CE578302124DFC660004769C /* HSTableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSTableView.m; path = ../../cocoalib/views/HSTableView.m; sourceTree = SOURCE_ROOT; };
|
||||
CE6032BE0FE6784C007E33FF /* DetailsPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DetailsPanel.h; path = ../base/DetailsPanel.h; sourceTree = SOURCE_ROOT; };
|
||||
CE6032BF0FE6784C007E33FF /* DetailsPanel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DetailsPanel.m; path = ../base/DetailsPanel.m; sourceTree = SOURCE_ROOT; };
|
||||
CE68EE6509ABC48000971085 /* DirectoryPanel.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = DirectoryPanel.h; sourceTree = SOURCE_ROOT; };
|
||||
CE68EE6609ABC48000971085 /* DirectoryPanel.m */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.objc; path = DirectoryPanel.m; sourceTree = SOURCE_ROOT; };
|
||||
CE6E0E9E1054EB97008D9390 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = dsa_pub.pem; path = ../base/dsa_pub.pem; sourceTree = "<group>"; };
|
||||
CE74A12112537F06008A8DF0 /* HSFairwareReminder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSFairwareReminder.h; path = ../../cocoalib/HSFairwareReminder.h; sourceTree = SOURCE_ROOT; };
|
||||
CE74A12212537F06008A8DF0 /* HSFairwareReminder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSFairwareReminder.m; path = ../../cocoalib/HSFairwareReminder.m; sourceTree = SOURCE_ROOT; };
|
||||
CE74A12312537F06008A8DF0 /* PyFairware.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyFairware.h; path = ../../cocoalib/PyFairware.h; sourceTree = SOURCE_ROOT; };
|
||||
CE74A12612537F2E008A8DF0 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../../cocoalib/en.lproj/FairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CE848A1809DD85810004CB44 /* Consts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Consts.h; sourceTree = "<group>"; };
|
||||
CEB14D26124DFC2800FA7481 /* PyResultTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyResultTable.h; path = ../base/PyResultTable.h; sourceTree = SOURCE_ROOT; };
|
||||
CEB14D27124DFC2800FA7481 /* ResultTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ResultTable.h; path = ../base/ResultTable.h; sourceTree = SOURCE_ROOT; };
|
||||
CEB14D28124DFC2800FA7481 /* ResultTable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ResultTable.m; path = ../base/ResultTable.m; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07513225C89009F521D /* ExtraFairwareReminder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ExtraFairwareReminder.h; path = ../base/ExtraFairwareReminder.h; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07613225C89009F521D /* ExtraFairwareReminder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ExtraFairwareReminder.m; path = ../base/ExtraFairwareReminder.m; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07713225C89009F521D /* PyExtraFairwareReminder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyExtraFairwareReminder.h; path = ../base/PyExtraFairwareReminder.h; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07C13225CA2009F521D /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEB5E07E13225CB8009F521D /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CED0A591111C9FD10020AD7D /* PyDetailsPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyDetailsPanel.h; path = ../base/PyDetailsPanel.h; sourceTree = SOURCE_ROOT; };
|
||||
CEDF07A0112493B200EE5BC0 /* PyStatsLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyStatsLabel.h; path = ../base/PyStatsLabel.h; sourceTree = SOURCE_ROOT; };
|
||||
CEDF07A1112493B200EE5BC0 /* StatsLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = StatsLabel.h; path = ../base/StatsLabel.h; sourceTree = SOURCE_ROOT; };
|
||||
CEDF07A2112493B200EE5BC0 /* StatsLabel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = StatsLabel.m; path = ../base/StatsLabel.m; sourceTree = SOURCE_ROOT; };
|
||||
CEEB135109C837A2004D2330 /* dupeguru.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = dupeguru.icns; sourceTree = "<group>"; };
|
||||
CEF3185613D8660000B8CDCA /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../en.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CEF3185813D8660000B8CDCA /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../en.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CEF3185B13D8660900B8CDCA /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../fr.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CEF3185C13D8660900B8CDCA /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../fr.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CEF3185F13D8661300B8CDCA /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../de.lproj/about.xib; sourceTree = "<group>"; };
|
||||
CEF3186013D8661300B8CDCA /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../de.lproj/ErrorReportWindow.xib; sourceTree = "<group>"; };
|
||||
CEF3186113D8661300B8CDCA /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../de.lproj/FairwareReminder.xib; sourceTree = "<group>"; };
|
||||
CEF5770713CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/DetailsPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770813CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/DirectoryPanel.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770913CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770A13CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/MainMenu.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770B13CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/ProblemDialog.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770C13CDFB250083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/ResultWindow.xib; sourceTree = SOURCE_ROOT; };
|
||||
CEF5770D13CDFB310083CB30 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = de.lproj/Preferences.xib; sourceTree = "<group>"; };
|
||||
CEFC294509C89E3D00D9F998 /* folder32.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = folder32.png; path = ../../images/folder32.png; sourceTree = SOURCE_ROOT; };
|
||||
CEFF18A009A4D387005E6321 /* PyDupeGuru.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = PyDupeGuru.h; sourceTree = SOURCE_ROOT; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8D11072E0486CEB800E47090 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
|
||||
CE1425890AFB718500BD5167 /* Sparkle.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
080E96DDFE201D6D7F000001 /* DGME */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
29B97316FDCFA39411CA2CEA /* main.m */,
|
||||
CE381C9509914ACE003581CE /* AppDelegate.h */,
|
||||
CE381C9409914ACE003581CE /* AppDelegate.m */,
|
||||
CE848A1809DD85810004CB44 /* Consts.h */,
|
||||
CE68EE6509ABC48000971085 /* DirectoryPanel.h */,
|
||||
CE68EE6609ABC48000971085 /* DirectoryPanel.m */,
|
||||
CEFF18A009A4D387005E6321 /* PyDupeGuru.h */,
|
||||
CE381C9B09914ADF003581CE /* ResultWindow.h */,
|
||||
CE381C9A09914ADF003581CE /* ResultWindow.m */,
|
||||
);
|
||||
name = DGME;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE1425880AFB718500BD5167 /* Sparkle.framework */,
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
|
||||
);
|
||||
name = "Linked Frameworks";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
29B97324FDCFA39411CA2CEA /* AppKit.framework */,
|
||||
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */,
|
||||
29B97325FDCFA39411CA2CEA /* Foundation.framework */,
|
||||
);
|
||||
name = "Other Frameworks";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FACFE9D520D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D1107320486CEB800E47090 /* dupeGuru ME.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97314FDCFA39411CA2CEA /* dupeguru */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
080E96DDFE201D6D7F000001 /* DGME */,
|
||||
CE515E140FC6C17900EC695D /* dgbase */,
|
||||
CE515DDD0FC6C09400EC695D /* cocoalib */,
|
||||
29B97317FDCFA39411CA2CEA /* Resources */,
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */,
|
||||
19C28FACFE9D520D11CA2CBB /* Products */,
|
||||
);
|
||||
name = dupeguru;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97317FDCFA39411CA2CEA /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE073F5409CAE1A3005C1D2F /* help */,
|
||||
CE381CF509915304003581CE /* dg_cocoa.plugin */,
|
||||
CEFC294309C89E0000D9F998 /* images */,
|
||||
CE05330C12E5D3D70029EF25 /* xib */,
|
||||
CEEB135109C837A2004D2330 /* dupeguru.icns */,
|
||||
CE05332D12E5D6100029EF25 /* Localizable.strings */,
|
||||
CE45274D12E5F62D00005A15 /* core.strings */,
|
||||
8D1107310486CEB800E47090 /* Info.plist */,
|
||||
CE6E0E9E1054EB97008D9390 /* dsa_pub.pem */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
|
||||
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CE003CB211242D00004B0AA7 /* controllers */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE003CB311242D00004B0AA7 /* HSGUIController.h */,
|
||||
CE003CB411242D00004B0AA7 /* HSGUIController.m */,
|
||||
CE003CB511242D00004B0AA7 /* HSOutline.h */,
|
||||
CE003CB611242D00004B0AA7 /* HSOutline.m */,
|
||||
CE0A0BFE1175A1C000DCA3C6 /* HSTable.h */,
|
||||
CE0A0BFF1175A1C000DCA3C6 /* HSTable.m */,
|
||||
CE003CB711242D00004B0AA7 /* HSWindowController.h */,
|
||||
CE003CB811242D00004B0AA7 /* HSWindowController.m */,
|
||||
);
|
||||
name = controllers;
|
||||
path = ../../cocoalib/controllers;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE003CBB11242D00004B0AA7 /* proxies */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE003CBC11242D00004B0AA7 /* PyGUI.h */,
|
||||
CE003CBD11242D00004B0AA7 /* PyOutline.h */,
|
||||
CE0A0C131175A28100DCA3C6 /* PyTable.h */,
|
||||
);
|
||||
name = proxies;
|
||||
path = ../../cocoalib/proxies;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE003CBF11242D00004B0AA7 /* views */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE578301124DFC660004769C /* HSTableView.h */,
|
||||
CE578302124DFC660004769C /* HSTableView.m */,
|
||||
CE003CC011242D00004B0AA7 /* HSOutlineView.h */,
|
||||
CE003CC111242D00004B0AA7 /* HSOutlineView.m */,
|
||||
CE003CC211242D00004B0AA7 /* NSIndexPathAdditions.h */,
|
||||
CE003CC311242D00004B0AA7 /* NSIndexPathAdditions.m */,
|
||||
CE003CC411242D00004B0AA7 /* NSTableViewAdditions.h */,
|
||||
CE003CC511242D00004B0AA7 /* NSTableViewAdditions.m */,
|
||||
);
|
||||
name = views;
|
||||
path = ../../cocoalib/views;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE05330C12E5D3D70029EF25 /* xib */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE05330D12E5D3ED0029EF25 /* DetailsPanel.xib */,
|
||||
CE05330F12E5D3ED0029EF25 /* DirectoryPanel.xib */,
|
||||
CE05331112E5D3ED0029EF25 /* MainMenu.xib */,
|
||||
CE05331312E5D3ED0029EF25 /* ProblemDialog.xib */,
|
||||
CE05331512E5D3ED0029EF25 /* ResultWindow.xib */,
|
||||
CE05332112E5D4100029EF25 /* Preferences.xib */,
|
||||
CEB5E07B13225CA2009F521D /* ExtraFairwareReminder.xib */,
|
||||
);
|
||||
name = xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CE49DEF10FDFEB810098617B /* brsinglelineformatter */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE49DEF20FDFEB810098617B /* BRSingleLineFormatter.h */,
|
||||
CE49DEF30FDFEB810098617B /* BRSingleLineFormatter.m */,
|
||||
);
|
||||
name = brsinglelineformatter;
|
||||
path = ../../cocoalib/brsinglelineformatter;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE4B59C41119919700C06C9E /* xib */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CEF3185513D8660000B8CDCA /* about.xib */,
|
||||
CEF3185713D8660000B8CDCA /* ErrorReportWindow.xib */,
|
||||
CE74A12512537F2E008A8DF0 /* FairwareReminder.xib */,
|
||||
CE4B59C61119919700C06C9E /* progress.xib */,
|
||||
);
|
||||
name = xib;
|
||||
path = ../../cocoalib/xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE515DDD0FC6C09400EC695D /* cocoalib */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE003CB211242D00004B0AA7 /* controllers */,
|
||||
CE003CBB11242D00004B0AA7 /* proxies */,
|
||||
CE003CBF11242D00004B0AA7 /* views */,
|
||||
CE4B59C41119919700C06C9E /* xib */,
|
||||
CE49DEF10FDFEB810098617B /* brsinglelineformatter */,
|
||||
CE515DE00FC6C12E00EC695D /* Dialogs.h */,
|
||||
CE515DE10FC6C12E00EC695D /* Dialogs.m */,
|
||||
CE515DE20FC6C12E00EC695D /* HSErrorReportWindow.h */,
|
||||
CE515DE30FC6C12E00EC695D /* HSErrorReportWindow.m */,
|
||||
CE74A12112537F06008A8DF0 /* HSFairwareReminder.h */,
|
||||
CE74A12212537F06008A8DF0 /* HSFairwareReminder.m */,
|
||||
CE74A12312537F06008A8DF0 /* PyFairware.h */,
|
||||
CE4F934712CCA96C0067A3AE /* HSAboutBox.h */,
|
||||
CE4F934812CCA96C0067A3AE /* HSAboutBox.m */,
|
||||
CE1EAA0812DF3E81009BA949 /* HSRecentFiles.h */,
|
||||
CE1EAA0912DF3E81009BA949 /* HSRecentFiles.m */,
|
||||
CE003CB911242D00004B0AA7 /* NSEventAdditions.h */,
|
||||
CE003CBA11242D00004B0AA7 /* NSEventAdditions.m */,
|
||||
CE515DE60FC6C12E00EC695D /* ProgressController.h */,
|
||||
CE515DE70FC6C12E00EC695D /* ProgressController.m */,
|
||||
CE515DE80FC6C12E00EC695D /* PyApp.h */,
|
||||
CE515DEF0FC6C12E00EC695D /* Utils.h */,
|
||||
CE515DF00FC6C12E00EC695D /* Utils.m */,
|
||||
CE515DF10FC6C12E00EC695D /* ValueTransformers.h */,
|
||||
CE515DF20FC6C12E00EC695D /* ValueTransformers.m */,
|
||||
);
|
||||
name = cocoalib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CE515E140FC6C17900EC695D /* dgbase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CEB14D27124DFC2800FA7481 /* ResultTable.h */,
|
||||
CEB14D28124DFC2800FA7481 /* ResultTable.m */,
|
||||
CE003CCD11242D2C004B0AA7 /* DirectoryOutline.h */,
|
||||
CE003CCE11242D2C004B0AA7 /* DirectoryOutline.m */,
|
||||
CE003CCF11242D2C004B0AA7 /* PyDirectoryOutline.h */,
|
||||
CE515E150FC6C19300EC695D /* AppDelegate.h */,
|
||||
CE515E160FC6C19300EC695D /* AppDelegate.m */,
|
||||
CE515E170FC6C19300EC695D /* Consts.h */,
|
||||
CE6032BE0FE6784C007E33FF /* DetailsPanel.h */,
|
||||
CE6032BF0FE6784C007E33FF /* DetailsPanel.m */,
|
||||
CE515E180FC6C19300EC695D /* DirectoryPanel.h */,
|
||||
CE515E190FC6C19300EC695D /* DirectoryPanel.m */,
|
||||
CE0A0C011175A1DE00DCA3C6 /* ProblemDialog.h */,
|
||||
CE0A0C021175A1DE00DCA3C6 /* ProblemDialog.m */,
|
||||
CE515E1B0FC6C19300EC695D /* ResultWindow.h */,
|
||||
CE515E1C0FC6C19300EC695D /* ResultWindow.m */,
|
||||
CEDF07A1112493B200EE5BC0 /* StatsLabel.h */,
|
||||
CEDF07A2112493B200EE5BC0 /* StatsLabel.m */,
|
||||
CEB5E07513225C89009F521D /* ExtraFairwareReminder.h */,
|
||||
CEB5E07613225C89009F521D /* ExtraFairwareReminder.m */,
|
||||
CE515E1A0FC6C19300EC695D /* PyDupeGuru.h */,
|
||||
CED0A591111C9FD10020AD7D /* PyDetailsPanel.h */,
|
||||
CE0A0C031175A1DE00DCA3C6 /* PyProblemDialog.h */,
|
||||
CEDF07A0112493B200EE5BC0 /* PyStatsLabel.h */,
|
||||
CEB14D26124DFC2800FA7481 /* PyResultTable.h */,
|
||||
CEB5E07713225C89009F521D /* PyExtraFairwareReminder.h */,
|
||||
);
|
||||
name = dgbase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CEFC294309C89E0000D9F998 /* images */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CEFC294509C89E3D00D9F998 /* folder32.png */,
|
||||
);
|
||||
name = images;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D1107260486CEB800E47090 /* dupeguru */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "dupeguru" */;
|
||||
buildPhases = (
|
||||
8D1107290486CEB800E47090 /* Resources */,
|
||||
8D11072C0486CEB800E47090 /* Sources */,
|
||||
8D11072E0486CEB800E47090 /* Frameworks */,
|
||||
CECC02B709A36E8200CC0A94 /* CopyFiles */,
|
||||
CE6B288A0AFB7FC900508D93 /* AppleScript */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = dupeguru;
|
||||
productInstallPath = "$(HOME)/Applications";
|
||||
productName = dupeguru;
|
||||
productReference = 8D1107320486CEB800E47090 /* dupeGuru ME.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0410;
|
||||
};
|
||||
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "dupeguru_xcode4" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
English,
|
||||
Japanese,
|
||||
French,
|
||||
German,
|
||||
en,
|
||||
fr,
|
||||
de,
|
||||
);
|
||||
mainGroup = 29B97314FDCFA39411CA2CEA /* dupeguru */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D1107260486CEB800E47090 /* dupeguru */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D1107290486CEB800E47090 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
CE381D0509915304003581CE /* dg_cocoa.plugin in Resources */,
|
||||
CE073F6309CAE1A3005C1D2F /* help in Resources */,
|
||||
CEEB135209C837A2004D2330 /* dupeguru.icns in Resources */,
|
||||
CEFC294609C89E3D00D9F998 /* folder32.png in Resources */,
|
||||
CE6E0E9F1054EB97008D9390 /* dsa_pub.pem in Resources */,
|
||||
CE4B59C91119919700C06C9E /* progress.xib in Resources */,
|
||||
CE74A12712537F2E008A8DF0 /* FairwareReminder.xib in Resources */,
|
||||
CE05331712E5D3ED0029EF25 /* DetailsPanel.xib in Resources */,
|
||||
CE05331812E5D3ED0029EF25 /* DirectoryPanel.xib in Resources */,
|
||||
CE05331912E5D3ED0029EF25 /* MainMenu.xib in Resources */,
|
||||
CE05331A12E5D3ED0029EF25 /* ProblemDialog.xib in Resources */,
|
||||
CE05331B12E5D3ED0029EF25 /* ResultWindow.xib in Resources */,
|
||||
CE05332312E5D4100029EF25 /* Preferences.xib in Resources */,
|
||||
CE05332F12E5D6100029EF25 /* Localizable.strings in Resources */,
|
||||
CE45274F12E5F62D00005A15 /* core.strings in Resources */,
|
||||
CEB5E07D13225CA2009F521D /* ExtraFairwareReminder.xib in Resources */,
|
||||
CEF3185913D8660000B8CDCA /* about.xib in Resources */,
|
||||
CEF3185A13D8660000B8CDCA /* ErrorReportWindow.xib in Resources */,
|
||||
CEF3185D13D8660900B8CDCA /* about.xib in Resources */,
|
||||
CEF3185E13D8660900B8CDCA /* ErrorReportWindow.xib in Resources */,
|
||||
CEF3186213D8661300B8CDCA /* about.xib in Resources */,
|
||||
CEF3186313D8661300B8CDCA /* ErrorReportWindow.xib in Resources */,
|
||||
CEF3186413D8661300B8CDCA /* FairwareReminder.xib in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D11072C0486CEB800E47090 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D11072D0486CEB800E47090 /* main.m in Sources */,
|
||||
CE381C9609914ACE003581CE /* AppDelegate.m in Sources */,
|
||||
CE381C9C09914ADF003581CE /* ResultWindow.m in Sources */,
|
||||
CE68EE6809ABC48000971085 /* DirectoryPanel.m in Sources */,
|
||||
CE515DF30FC6C12E00EC695D /* Dialogs.m in Sources */,
|
||||
CE515DF40FC6C12E00EC695D /* HSErrorReportWindow.m in Sources */,
|
||||
CE515DF60FC6C12E00EC695D /* ProgressController.m in Sources */,
|
||||
CE515DFA0FC6C12E00EC695D /* Utils.m in Sources */,
|
||||
CE515DFB0FC6C12E00EC695D /* ValueTransformers.m in Sources */,
|
||||
CE515E1D0FC6C19300EC695D /* AppDelegate.m in Sources */,
|
||||
CE515E1E0FC6C19300EC695D /* DirectoryPanel.m in Sources */,
|
||||
CE515E1F0FC6C19300EC695D /* ResultWindow.m in Sources */,
|
||||
CE49DEF60FDFEB810098617B /* BRSingleLineFormatter.m in Sources */,
|
||||
CE6032C00FE6784C007E33FF /* DetailsPanel.m in Sources */,
|
||||
CE003CC611242D00004B0AA7 /* HSGUIController.m in Sources */,
|
||||
CE003CC711242D00004B0AA7 /* HSOutline.m in Sources */,
|
||||
CE003CC811242D00004B0AA7 /* HSWindowController.m in Sources */,
|
||||
CE003CC911242D00004B0AA7 /* NSEventAdditions.m in Sources */,
|
||||
CE003CCA11242D00004B0AA7 /* HSOutlineView.m in Sources */,
|
||||
CE003CCB11242D00004B0AA7 /* NSIndexPathAdditions.m in Sources */,
|
||||
CE003CCC11242D00004B0AA7 /* NSTableViewAdditions.m in Sources */,
|
||||
CE003CD011242D2C004B0AA7 /* DirectoryOutline.m in Sources */,
|
||||
CEDF07A3112493B200EE5BC0 /* StatsLabel.m in Sources */,
|
||||
CE0A0C001175A1C000DCA3C6 /* HSTable.m in Sources */,
|
||||
CE0A0C041175A1DE00DCA3C6 /* ProblemDialog.m in Sources */,
|
||||
CEB14D29124DFC2800FA7481 /* ResultTable.m in Sources */,
|
||||
CE578303124DFC660004769C /* HSTableView.m in Sources */,
|
||||
CE74A12412537F06008A8DF0 /* HSFairwareReminder.m in Sources */,
|
||||
CE4F934912CCA96C0067A3AE /* HSAboutBox.m in Sources */,
|
||||
CE1EAA0A12DF3E81009BA949 /* HSRecentFiles.m in Sources */,
|
||||
CEB5E07813225C89009F521D /* ExtraFairwareReminder.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
CE05330D12E5D3ED0029EF25 /* DetailsPanel.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE05330E12E5D3ED0029EF25 /* en */,
|
||||
CE05331C12E5D4010029EF25 /* fr */,
|
||||
CEF5770713CDFB250083CB30 /* de */,
|
||||
);
|
||||
name = DetailsPanel.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE05330F12E5D3ED0029EF25 /* DirectoryPanel.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE05331012E5D3ED0029EF25 /* en */,
|
||||
CE05331D12E5D4010029EF25 /* fr */,
|
||||
CEF5770813CDFB250083CB30 /* de */,
|
||||
);
|
||||
name = DirectoryPanel.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE05331112E5D3ED0029EF25 /* MainMenu.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE05331212E5D3ED0029EF25 /* en */,
|
||||
CE05331E12E5D4010029EF25 /* fr */,
|
||||
CEF5770A13CDFB250083CB30 /* de */,
|
||||
);
|
||||
name = MainMenu.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE05331312E5D3ED0029EF25 /* ProblemDialog.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE05331412E5D3ED0029EF25 /* en */,
|
||||
CE05331F12E5D4010029EF25 /* fr */,
|
||||
CEF5770B13CDFB250083CB30 /* de */,
|
||||
);
|
||||
name = ProblemDialog.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE05331512E5D3ED0029EF25 /* ResultWindow.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE05331612E5D3ED0029EF25 /* en */,
|
||||
CE05332012E5D4010029EF25 /* fr */,
|
||||
CEF5770C13CDFB250083CB30 /* de */,
|
||||
);
|
||||
name = ResultWindow.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE05332112E5D4100029EF25 /* Preferences.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE05332212E5D4100029EF25 /* en */,
|
||||
CE05332912E5D4460029EF25 /* fr */,
|
||||
CEF5770D13CDFB310083CB30 /* de */,
|
||||
);
|
||||
name = Preferences.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE05332D12E5D6100029EF25 /* Localizable.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE05332E12E5D6100029EF25 /* en */,
|
||||
CE05333312E5D6370029EF25 /* fr */,
|
||||
);
|
||||
name = Localizable.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CE45274D12E5F62D00005A15 /* core.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE45274E12E5F62D00005A15 /* en */,
|
||||
CE45275012E5F63900005A15 /* fr */,
|
||||
);
|
||||
name = core.strings;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CE74A12512537F2E008A8DF0 /* FairwareReminder.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CE74A12612537F2E008A8DF0 /* en */,
|
||||
CE05347712E5DC420029EF25 /* fr */,
|
||||
CEF3186113D8661300B8CDCA /* de */,
|
||||
);
|
||||
name = FairwareReminder.xib;
|
||||
path = ../../cocoalib/xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CEB5E07B13225CA2009F521D /* ExtraFairwareReminder.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CEB5E07C13225CA2009F521D /* en */,
|
||||
CEB5E07E13225CB8009F521D /* fr */,
|
||||
CEF5770913CDFB250083CB30 /* de */,
|
||||
);
|
||||
name = ExtraFairwareReminder.xib;
|
||||
sourceTree = SOURCE_ROOT;
|
||||
};
|
||||
CEF3185513D8660000B8CDCA /* about.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CEF3185613D8660000B8CDCA /* en */,
|
||||
CEF3185B13D8660900B8CDCA /* fr */,
|
||||
CEF3185F13D8661300B8CDCA /* de */,
|
||||
);
|
||||
name = about.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
CEF3185713D8660000B8CDCA /* ErrorReportWindow.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
CEF3185813D8660000B8CDCA /* en */,
|
||||
CEF3185C13D8660900B8CDCA /* fr */,
|
||||
CEF3186013D8661300B8CDCA /* de */,
|
||||
);
|
||||
name = ErrorReportWindow.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
C01FCF4C08A954540054247B /* release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
PRODUCT_NAME = "dupeGuru ME";
|
||||
WRAPPER_EXTENSION = app;
|
||||
};
|
||||
name = release;
|
||||
};
|
||||
C01FCF5008A954540054247B /* release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
SDKROOT = macosx10.6;
|
||||
};
|
||||
name = release;
|
||||
};
|
||||
CED596C5111AF56D00C0CF2B /* dev */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(NATIVE_ARCH_ACTUAL)";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
SDKROOT = macosx10.6;
|
||||
};
|
||||
name = dev;
|
||||
};
|
||||
CED596C6111AF56D00C0CF2B /* dev */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
PRODUCT_NAME = "dupeGuru ME";
|
||||
WRAPPER_EXTENSION = app;
|
||||
};
|
||||
name = dev;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "dupeguru" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C01FCF4C08A954540054247B /* release */,
|
||||
CED596C6111AF56D00C0CF2B /* dev */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = release;
|
||||
};
|
||||
C01FCF4E08A954540054247B /* Build configuration list for PBXProject "dupeguru_xcode4" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C01FCF5008A954540054247B /* release */,
|
||||
CED596C5111AF56D00C0CF2B /* dev */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
|
||||
}
|
||||
@@ -100,3 +100,6 @@
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Debug mode (restart required)"; ObjectID = "130"; */
|
||||
"130.title" = "Debug mode (restart required)";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Font size:"; ObjectID = "136"; */
|
||||
"136.title" = "Font size:";
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,102 +0,0 @@
|
||||
|
||||
/* Class = "NSWindow"; title = "dupeGuru ME Preferences"; ObjectID = "2"; */
|
||||
"2.title" = "Préférences de dupeGuru ME";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "More results"; ObjectID = "29"; */
|
||||
"29.title" = "+ de doubles";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Fewer results"; ObjectID = "30"; */
|
||||
"30.title" = "- de doubles";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Filter hardness:"; ObjectID = "31"; */
|
||||
"31.title" = "Seuil du filtre:";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Scan type:"; ObjectID = "32"; */
|
||||
"32.title" = "Type de scan:";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Content"; ObjectID = "35"; */
|
||||
"35.title" = "Contenu";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Filename"; ObjectID = "36"; */
|
||||
"36.title" = "Nom de fichier";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Filename - Fields"; ObjectID = "37"; */
|
||||
"37.title" = "Nom de fichier (Champs)";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Tags"; ObjectID = "38"; */
|
||||
"38.title" = "Tags";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Audio Content"; ObjectID = "39"; */
|
||||
"39.title" = "Contenu Audio";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Filename - Fields (No Order)"; ObjectID = "40"; */
|
||||
"40.title" = "Nom de fichier (Champs sans ordre)";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Word weighting"; ObjectID = "41"; */
|
||||
"41.title" = "Proportionalité des mots";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Can mix file kind"; ObjectID = "42"; */
|
||||
"42.title" = "Comparer les fichiers de différents types";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Reset to Defaults"; ObjectID = "45"; */
|
||||
"45.title" = "Options par défaut";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Match similar words"; ObjectID = "46"; */
|
||||
"46.title" = "Comparer les mots similaires";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Copy and Move:"; ObjectID = "54"; */
|
||||
"54.title" = "Déplacements de fichiers:";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Recreate relative path"; ObjectID = "57"; */
|
||||
"57.title" = "Re-créer chemins relatifs";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Recreate absolute path"; ObjectID = "58"; */
|
||||
"58.title" = "Re-créer chemins absolus";
|
||||
|
||||
/* Class = "NSMenuItem"; title = "Right in destination"; ObjectID = "59"; */
|
||||
"59.title" = "Directement à la destination";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Automatically check for updates"; ObjectID = "60"; */
|
||||
"60.title" = "Vérifier automatiquement les mises à jour";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Use regular expressions when filtering"; ObjectID = "61"; */
|
||||
"61.title" = "Utiliser les expressions régulières pour les filtres";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Remove empty folders after delete and move"; ObjectID = "62"; */
|
||||
"62.title" = "Effacer les dossiers vides après un déplacement";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Tags to scan:"; ObjectID = "63"; */
|
||||
"63.title" = "Tags à scanner:";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Track"; ObjectID = "64"; */
|
||||
"64.title" = "Track";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Artist"; ObjectID = "65"; */
|
||||
"65.title" = "Artiste";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Album"; ObjectID = "66"; */
|
||||
"66.title" = "Album";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Title"; ObjectID = "67"; */
|
||||
"67.title" = "Titre";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Genre"; ObjectID = "68"; */
|
||||
"68.title" = "Genre";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Year"; ObjectID = "69"; */
|
||||
"69.title" = "Année";
|
||||
|
||||
/* Class = "NSTabViewItem"; label = "Basic"; ObjectID = "116"; */
|
||||
"116.label" = "Simple";
|
||||
|
||||
/* Class = "NSTabViewItem"; label = "Advanced"; ObjectID = "117"; */
|
||||
"117.label" = "Avancé";
|
||||
|
||||
/* Class = "NSTextFieldCell"; title = "Custom Command (arguments: %d for dupe, %r for ref):"; ObjectID = "121"; */
|
||||
"121.title" = "Commande perso. (arguments: %d pour doublon, %r pour réf):";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Ignore duplicates hardlinking to the same file"; ObjectID = "126"; */
|
||||
"126.title" = "Ignorer doublons avec hardlink vers le même fichier";
|
||||
|
||||
/* Class = "NSButtonCell"; title = "Debug mode (restart required)"; ObjectID = "130"; */
|
||||
"130.title" = "Mode de déboguage (redémarrage requis)";
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user