mirror of
https://github.com/arsenetar/dupeguru.git
synced 2025-03-10 05:34:36 +00:00
Moved core*.app_cocoa to cocoa/inter.
--HG-- rename : core_me/app_cocoa.py => cocoa/inter/app_me.py rename : core_pe/app_cocoa.py => cocoa/inter/app_pe.py rename : core_se/app_cocoa.py => cocoa/inter/app_se.py
This commit is contained in:
parent
b44e52689f
commit
43c4dcb267
7
build.py
7
build.py
@ -34,13 +34,16 @@ def parse_args():
|
||||
def build_cocoa(edition, dev):
|
||||
from pluginbuilder import build_plugin
|
||||
print("Building dg_cocoa.plugin")
|
||||
if not dev:
|
||||
if dev:
|
||||
tocopy = ['cocoa/inter']
|
||||
else:
|
||||
specific_packages = {
|
||||
'se': ['core_se'],
|
||||
'me': ['core_me'],
|
||||
'pe': ['core_pe'],
|
||||
}[edition]
|
||||
copy_packages(['core', 'hscommon'] + specific_packages, 'build')
|
||||
tocopy = ['core', 'hscommon', 'cocoa/inter'] + specific_packages
|
||||
copy_packages(tocopy, 'build')
|
||||
cocoa_project_path = 'cocoa/{0}'.format(edition)
|
||||
shutil.copy(op.join(cocoa_project_path, 'dg_cocoa.py'), 'build')
|
||||
os.chdir('build')
|
||||
|
0
cocoa/inter/__init__.py
Normal file
0
cocoa/inter/__init__.py
Normal file
@ -1,32 +1,15 @@
|
||||
# Created By: Virgil Dupras
|
||||
# Created On: 2006/11/11
|
||||
# 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 logging
|
||||
|
||||
from jobprogress import job
|
||||
from hscommon import cocoa
|
||||
from hscommon.cocoa import install_exception_hook, pythonify
|
||||
from hscommon.cocoa.inter import (signature, PyTable, PyOutline, PyGUIObject, PyFairware,
|
||||
PySelectableList)
|
||||
from hscommon.cocoa.inter import signature, PyFairware
|
||||
from hscommon.cocoa.objcmin import (NSNotificationCenter, NSUserDefaults,
|
||||
NSSearchPathForDirectoriesInDomains, NSApplicationSupportDirectory, NSUserDomainMask,
|
||||
NSWorkspace)
|
||||
from hscommon.trans import tr
|
||||
|
||||
from .gui.details_panel import DetailsPanel
|
||||
from .gui.directory_tree import DirectoryTree
|
||||
from .gui.problem_dialog import ProblemDialog
|
||||
from .gui.problem_table import ProblemTable
|
||||
from .gui.result_table import ResultTable
|
||||
from .gui.stats_label import StatsLabel
|
||||
from .gui.extra_fairware_reminder import ExtraFairwareReminder
|
||||
from .gui.prioritize_dialog import PrioritizeDialog
|
||||
from .app import JobType
|
||||
from core.app import JobType
|
||||
|
||||
JOBID2TITLE = {
|
||||
JobType.Scan: tr("Scanning for duplicates"),
|
||||
@ -215,145 +198,3 @@ class PyDupeGuruBase(PyFairware):
|
||||
|
||||
def show_extra_fairware_reminder(self):
|
||||
self.cocoa.showExtraFairwareReminder()
|
||||
|
||||
class PyDetailsPanel(PyGUIObject):
|
||||
py_class = DetailsPanel
|
||||
@signature('i@:')
|
||||
def numberOfRows(self):
|
||||
return self.py.row_count()
|
||||
|
||||
@signature('@@:@i')
|
||||
def valueForColumn_row_(self, column, row):
|
||||
return self.py.row(row)[int(column)]
|
||||
|
||||
|
||||
class PyDirectoryOutline(PyOutline):
|
||||
py_class = DirectoryTree
|
||||
|
||||
def addDirectory_(self, path):
|
||||
self.py.add_directory(path)
|
||||
|
||||
# python --> cocoa
|
||||
def refresh_states(self):
|
||||
# Under cocoa, both refresh() and refresh_states() do the same thing.
|
||||
self.cocoa.refresh()
|
||||
|
||||
|
||||
class PyResultTable(PyTable):
|
||||
py_class = ResultTable
|
||||
|
||||
@signature('c@:')
|
||||
def powerMarkerMode(self):
|
||||
return self.py.power_marker
|
||||
|
||||
@signature('v@:c')
|
||||
def setPowerMarkerMode_(self, value):
|
||||
self.py.power_marker = value
|
||||
|
||||
@signature('c@:')
|
||||
def deltaValuesMode(self):
|
||||
return self.py.delta_values
|
||||
|
||||
@signature('v@:c')
|
||||
def setDeltaValuesMode_(self, value):
|
||||
self.py.delta_values = value
|
||||
|
||||
@signature('@@:ii')
|
||||
def valueForRow_column_(self, row_index, column):
|
||||
return self.py.get_row_value(row_index, column)
|
||||
|
||||
@signature('c@:@')
|
||||
def renameSelected_(self, newname):
|
||||
return self.py.rename_selected(newname)
|
||||
|
||||
@signature('v@:ic')
|
||||
def sortBy_ascending_(self, key, asc):
|
||||
self.py.sort(key, asc)
|
||||
|
||||
def markSelected(self):
|
||||
self.py.app.toggle_selected_mark_state()
|
||||
|
||||
def removeSelected(self):
|
||||
self.py.app.remove_selected()
|
||||
|
||||
@signature('i@:')
|
||||
def selectedDupeCount(self):
|
||||
return self.py.selected_dupe_count
|
||||
|
||||
# python --> cocoa
|
||||
def invalidate_markings(self):
|
||||
self.cocoa.invalidateMarkings()
|
||||
|
||||
|
||||
class PyStatsLabel(PyGUIObject):
|
||||
py_class = StatsLabel
|
||||
|
||||
def display(self):
|
||||
return self.py.display
|
||||
|
||||
|
||||
class PyProblemDialog(PyGUIObject):
|
||||
py_class = ProblemDialog
|
||||
|
||||
def revealSelected(self):
|
||||
self.py.reveal_selected_dupe()
|
||||
|
||||
|
||||
class PyProblemTable(PyTable):
|
||||
py_class = ProblemTable
|
||||
|
||||
class PyExtraFairwareReminder(PyGUIObject):
|
||||
py_class = ExtraFairwareReminder
|
||||
|
||||
def start(self):
|
||||
self.py.start()
|
||||
|
||||
def updateButton(self):
|
||||
self.py.update_button()
|
||||
|
||||
# model --> view
|
||||
def start_timer(self):
|
||||
self.cocoa.startTimer()
|
||||
|
||||
def stop_timer(self):
|
||||
self.cocoa.stopTimer()
|
||||
|
||||
def enable_button(self):
|
||||
self.cocoa.enableButton()
|
||||
|
||||
def set_button_text(self, text):
|
||||
self.cocoa.setButtonText_(text)
|
||||
|
||||
|
||||
class PyPrioritizeDialog(PyGUIObject):
|
||||
py_class = PrioritizeDialog
|
||||
|
||||
def categoryList(self):
|
||||
if not hasattr(self, '_categoryList'):
|
||||
self._categoryList = PySelectableList.alloc().initWithPy_(self.py.category_list)
|
||||
return self._categoryList
|
||||
|
||||
def criteriaList(self):
|
||||
if not hasattr(self, '_criteriaList'):
|
||||
self._criteriaList = PySelectableList.alloc().initWithPy_(self.py.criteria_list)
|
||||
return self._criteriaList
|
||||
|
||||
def prioritizationList(self):
|
||||
if not hasattr(self, '_prioritizationList'):
|
||||
self._prioritizationList = PyPrioritizeList.alloc().initWithPy_(self.py.prioritization_list)
|
||||
return self._prioritizationList
|
||||
|
||||
def addSelected(self):
|
||||
self.py.add_selected()
|
||||
|
||||
def removeSelected(self):
|
||||
self.py.remove_selected()
|
||||
|
||||
def performReprioritization(self):
|
||||
self.py.perform_reprioritization()
|
||||
|
||||
class PyPrioritizeList(PySelectableList):
|
||||
@signature('v@:@i')
|
||||
def moveIndexes_toIndex_(self, indexes, dest_index):
|
||||
self.py.move_indexes(indexes, dest_index)
|
||||
|
@ -15,9 +15,8 @@ from hscommon.cocoa import as_fetch
|
||||
from hscommon.trans import tr
|
||||
|
||||
from core.app import JobType
|
||||
from core.app_cocoa import JOBID2TITLE
|
||||
|
||||
from .app import DupeGuru as DupeGuruBase
|
||||
from core_me.app import DupeGuru as DupeGuruBase
|
||||
from .app import JOBID2TITLE
|
||||
|
||||
JobType.RemoveDeadTracks = 'jobRemoveDeadTracks'
|
||||
JobType.ScanDeadTracks = 'jobScanDeadTracks'
|
@ -20,9 +20,9 @@ from hscommon.cocoa.objcmin import NSUserDefaults, NSURL
|
||||
from hscommon.trans import tr
|
||||
|
||||
from core import directories
|
||||
from . import _block_osx
|
||||
from .photo import Photo as PhotoBase
|
||||
from .app import DupeGuru as DupeGuruBase
|
||||
from core_pe import _block_osx
|
||||
from core_pe.photo import Photo as PhotoBase
|
||||
from core_pe.app import DupeGuru as DupeGuruBase
|
||||
|
||||
IPHOTO_PATH = Path('iPhoto Library')
|
||||
|
@ -15,7 +15,7 @@ from hscommon.cocoa.objcmin import NSWorkspace
|
||||
|
||||
from core import fs
|
||||
from core.directories import Directories as DirectoriesBase, DirectoryState
|
||||
from .app import DupeGuru as DupeGuruBase
|
||||
from core_se.app import DupeGuru as DupeGuruBase
|
||||
|
||||
def is_bundle(str_path):
|
||||
sw = NSWorkspace.sharedWorkspace()
|
13
cocoa/inter/details_panel.py
Normal file
13
cocoa/inter/details_panel.py
Normal file
@ -0,0 +1,13 @@
|
||||
from hscommon.cocoa.inter import signature, PyGUIObject
|
||||
|
||||
from core.gui.details_panel import DetailsPanel
|
||||
|
||||
class PyDetailsPanel(PyGUIObject):
|
||||
py_class = DetailsPanel
|
||||
@signature('i@:')
|
||||
def numberOfRows(self):
|
||||
return self.py.row_count()
|
||||
|
||||
@signature('@@:@i')
|
||||
def valueForColumn_row_(self, column, row):
|
||||
return self.py.row(row)[int(column)]
|
14
cocoa/inter/directory_outline.py
Normal file
14
cocoa/inter/directory_outline.py
Normal file
@ -0,0 +1,14 @@
|
||||
from hscommon.cocoa.inter import PyOutline
|
||||
|
||||
from core.gui.directory_tree import DirectoryTree
|
||||
|
||||
class PyDirectoryOutline(PyOutline):
|
||||
py_class = DirectoryTree
|
||||
|
||||
def addDirectory_(self, path):
|
||||
self.py.add_directory(path)
|
||||
|
||||
# python --> cocoa
|
||||
def refresh_states(self):
|
||||
# Under cocoa, both refresh() and refresh_states() do the same thing.
|
||||
self.cocoa.refresh()
|
25
cocoa/inter/extra_fairware_reminder.py
Normal file
25
cocoa/inter/extra_fairware_reminder.py
Normal file
@ -0,0 +1,25 @@
|
||||
from hscommon.cocoa.inter import PyGUIObject
|
||||
|
||||
from core.gui.extra_fairware_reminder import ExtraFairwareReminder
|
||||
|
||||
class PyExtraFairwareReminder(PyGUIObject):
|
||||
py_class = ExtraFairwareReminder
|
||||
|
||||
def start(self):
|
||||
self.py.start()
|
||||
|
||||
def updateButton(self):
|
||||
self.py.update_button()
|
||||
|
||||
# model --> view
|
||||
def start_timer(self):
|
||||
self.cocoa.startTimer()
|
||||
|
||||
def stop_timer(self):
|
||||
self.cocoa.stopTimer()
|
||||
|
||||
def enable_button(self):
|
||||
self.cocoa.enableButton()
|
||||
|
||||
def set_button_text(self, text):
|
||||
self.cocoa.setButtonText_(text)
|
31
cocoa/inter/prioritize_dialog.py
Normal file
31
cocoa/inter/prioritize_dialog.py
Normal file
@ -0,0 +1,31 @@
|
||||
from hscommon.cocoa.inter import PyGUIObject, PySelectableList
|
||||
|
||||
from core.gui.prioritize_dialog import PrioritizeDialog
|
||||
from .prioritize_list import PyPrioritizeList
|
||||
|
||||
class PyPrioritizeDialog(PyGUIObject):
|
||||
py_class = PrioritizeDialog
|
||||
|
||||
def categoryList(self):
|
||||
if not hasattr(self, '_categoryList'):
|
||||
self._categoryList = PySelectableList.alloc().initWithPy_(self.py.category_list)
|
||||
return self._categoryList
|
||||
|
||||
def criteriaList(self):
|
||||
if not hasattr(self, '_criteriaList'):
|
||||
self._criteriaList = PySelectableList.alloc().initWithPy_(self.py.criteria_list)
|
||||
return self._criteriaList
|
||||
|
||||
def prioritizationList(self):
|
||||
if not hasattr(self, '_prioritizationList'):
|
||||
self._prioritizationList = PyPrioritizeList.alloc().initWithPy_(self.py.prioritization_list)
|
||||
return self._prioritizationList
|
||||
|
||||
def addSelected(self):
|
||||
self.py.add_selected()
|
||||
|
||||
def removeSelected(self):
|
||||
self.py.remove_selected()
|
||||
|
||||
def performReprioritization(self):
|
||||
self.py.perform_reprioritization()
|
7
cocoa/inter/prioritize_list.py
Normal file
7
cocoa/inter/prioritize_list.py
Normal file
@ -0,0 +1,7 @@
|
||||
from hscommon.cocoa.inter import signature, PySelectableList
|
||||
|
||||
class PyPrioritizeList(PySelectableList):
|
||||
@signature('v@:@i')
|
||||
def moveIndexes_toIndex_(self, indexes, dest_index):
|
||||
self.py.move_indexes(indexes, dest_index)
|
||||
|
10
cocoa/inter/problem_dialog.py
Normal file
10
cocoa/inter/problem_dialog.py
Normal file
@ -0,0 +1,10 @@
|
||||
from hscommon.cocoa.inter import PyGUIObject
|
||||
|
||||
from core.gui.problem_dialog import ProblemDialog
|
||||
|
||||
class PyProblemDialog(PyGUIObject):
|
||||
py_class = ProblemDialog
|
||||
|
||||
def revealSelected(self):
|
||||
self.py.reveal_selected_dupe()
|
||||
|
6
cocoa/inter/problem_table.py
Normal file
6
cocoa/inter/problem_table.py
Normal file
@ -0,0 +1,6 @@
|
||||
from hscommon.cocoa.inter import PyTable
|
||||
|
||||
from core.gui.problem_table import ProblemTable
|
||||
|
||||
class PyProblemTable(PyTable):
|
||||
py_class = ProblemTable
|
49
cocoa/inter/result_table.py
Normal file
49
cocoa/inter/result_table.py
Normal file
@ -0,0 +1,49 @@
|
||||
from hscommon.cocoa.inter import signature, PyTable
|
||||
|
||||
from core.gui.result_table import ResultTable
|
||||
|
||||
class PyResultTable(PyTable):
|
||||
py_class = ResultTable
|
||||
|
||||
@signature('c@:')
|
||||
def powerMarkerMode(self):
|
||||
return self.py.power_marker
|
||||
|
||||
@signature('v@:c')
|
||||
def setPowerMarkerMode_(self, value):
|
||||
self.py.power_marker = value
|
||||
|
||||
@signature('c@:')
|
||||
def deltaValuesMode(self):
|
||||
return self.py.delta_values
|
||||
|
||||
@signature('v@:c')
|
||||
def setDeltaValuesMode_(self, value):
|
||||
self.py.delta_values = value
|
||||
|
||||
@signature('@@:ii')
|
||||
def valueForRow_column_(self, row_index, column):
|
||||
return self.py.get_row_value(row_index, column)
|
||||
|
||||
@signature('c@:@')
|
||||
def renameSelected_(self, newname):
|
||||
return self.py.rename_selected(newname)
|
||||
|
||||
@signature('v@:ic')
|
||||
def sortBy_ascending_(self, key, asc):
|
||||
self.py.sort(key, asc)
|
||||
|
||||
def markSelected(self):
|
||||
self.py.app.toggle_selected_mark_state()
|
||||
|
||||
def removeSelected(self):
|
||||
self.py.app.remove_selected()
|
||||
|
||||
@signature('i@:')
|
||||
def selectedDupeCount(self):
|
||||
return self.py.selected_dupe_count
|
||||
|
||||
# python --> cocoa
|
||||
def invalidate_markings(self):
|
||||
self.cocoa.invalidateMarkings()
|
||||
|
9
cocoa/inter/stats_label.py
Normal file
9
cocoa/inter/stats_label.py
Normal file
@ -0,0 +1,9 @@
|
||||
from hscommon.cocoa.inter import PyGUIObject
|
||||
|
||||
from core.gui.stats_label import StatsLabel
|
||||
|
||||
class PyStatsLabel(PyGUIObject):
|
||||
py_class = StatsLabel
|
||||
|
||||
def display(self):
|
||||
return self.py.display
|
@ -9,10 +9,19 @@ install_cocoa_trans()
|
||||
|
||||
from hscommon.cocoa import signature
|
||||
|
||||
from core.app_cocoa import PyDupeGuruBase, PyDetailsPanel
|
||||
from core_me.app_cocoa import DupeGuruME
|
||||
from core.scanner import ScanType
|
||||
|
||||
from inter.app import PyDupeGuruBase
|
||||
from inter.details_panel import PyDetailsPanel
|
||||
from inter.directory_outline import PyDirectoryOutline
|
||||
from inter.extra_fairware_reminder import PyExtraFairwareReminder
|
||||
from inter.prioritize_dialog import PyPrioritizeDialog
|
||||
from inter.problem_dialog import PyProblemDialog
|
||||
from inter.problem_table import PyProblemTable
|
||||
from inter.result_table import PyResultTable
|
||||
from inter.stats_label import PyStatsLabel
|
||||
from inter.app_me import DupeGuruME
|
||||
|
||||
class PyDupeGuru(PyDupeGuruBase):
|
||||
def init(self):
|
||||
self = super(PyDupeGuru,self).init()
|
||||
|
@ -7,14 +7,23 @@
|
||||
from hscommon.trans import install_cocoa_trans
|
||||
install_cocoa_trans()
|
||||
|
||||
from core.app_cocoa import PyDupeGuruBase, PyDetailsPanel
|
||||
from core_pe import app_cocoa as app_pe_cocoa
|
||||
from core.scanner import ScanType
|
||||
|
||||
from inter.app import PyDupeGuruBase
|
||||
from inter.details_panel import PyDetailsPanel
|
||||
from inter.directory_outline import PyDirectoryOutline
|
||||
from inter.extra_fairware_reminder import PyExtraFairwareReminder
|
||||
from inter.prioritize_dialog import PyPrioritizeDialog
|
||||
from inter.problem_dialog import PyProblemDialog
|
||||
from inter.problem_table import PyProblemTable
|
||||
from inter.result_table import PyResultTable
|
||||
from inter.stats_label import PyStatsLabel
|
||||
from inter.app_pe import DupeGuruPE
|
||||
|
||||
class PyDupeGuru(PyDupeGuruBase):
|
||||
def init(self):
|
||||
self = super(PyDupeGuru, self).init()
|
||||
self._init(app_pe_cocoa.DupeGuruPE)
|
||||
self._init(DupeGuruPE)
|
||||
return self
|
||||
|
||||
def clearPictureCache(self):
|
||||
|
@ -23,9 +23,6 @@
|
||||
CE15C8C00ADEB8D40061D4A5 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE15C8A70ADEB8B50061D4A5 /* Sparkle.framework */; };
|
||||
CE1EB5FE12537F9D0034AABB /* HSFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE1EB5FC12537F9D0034AABB /* HSFairwareReminder.m */; };
|
||||
CE1EB60112537FB90034AABB /* FairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE1EB5FF12537FB90034AABB /* FairwareReminder.xib */; };
|
||||
CE21AFB91423EA6E00DE35BF /* DirectoryPanel.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05339312E5DA350029EF25 /* DirectoryPanel.xib */; };
|
||||
CE21AFBA1423EA6E00DE35BF /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05339512E5DA350029EF25 /* MainMenu.xib */; };
|
||||
CE21AFBB1423EA6E00DE35BF /* ProblemDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05339712E5DA350029EF25 /* ProblemDialog.xib */; };
|
||||
CE2A29F413213BE3005899AC /* ExtraFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE2A29F313213BE3005899AC /* ExtraFairwareReminder.m */; };
|
||||
CE2A29F713213BFB005899AC /* ExtraFairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE2A29F513213BFB005899AC /* ExtraFairwareReminder.xib */; };
|
||||
CE381C9609914ACE003581CE /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = CE381C9409914ACE003581CE /* AppDelegate.m */; };
|
||||
@ -33,9 +30,6 @@
|
||||
CE381D0509915304003581CE /* dg_cocoa.plugin in Resources */ = {isa = PBXBuildFile; fileRef = CE381CF509915304003581CE /* dg_cocoa.plugin */; };
|
||||
CE4527AC12E5F6E700005A15 /* core.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE4527AA12E5F6E700005A15 /* core.strings */; };
|
||||
CE54EB8D1423FBA200E3383A /* columns.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE54EB881423FBA200E3383A /* columns.strings */; };
|
||||
CE54EB8E1423FBA200E3383A /* help in Resources */ = {isa = PBXBuildFile; fileRef = CE073F5409CAE1A3005C1D2F /* help */; };
|
||||
CE54EB8F1423FBA200E3383A /* dg_cocoa.plugin in Resources */ = {isa = PBXBuildFile; fileRef = CE381CF509915304003581CE /* dg_cocoa.plugin */; };
|
||||
CE54EB901423FBA200E3383A /* folder32.png in Resources */ = {isa = PBXBuildFile; fileRef = CEFC294509C89E3D00D9F998 /* folder32.png */; };
|
||||
CE60180812DF3EA900236FDC /* HSRecentFiles.m in Sources */ = {isa = PBXBuildFile; fileRef = CE60180712DF3EA900236FDC /* HSRecentFiles.m */; };
|
||||
CE6044EC0FE6796200B71262 /* DetailsPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE6044EB0FE6796200B71262 /* DetailsPanel.m */; };
|
||||
CE68EE6809ABC48000971085 /* DirectoryPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE68EE6609ABC48000971085 /* DirectoryPanel.m */; };
|
||||
@ -586,13 +580,7 @@
|
||||
CECB2AC513D867AD0081E295 /* about.xib in Resources */,
|
||||
CECB2AC613D867AD0081E295 /* ErrorReportWindow.xib in Resources */,
|
||||
CE7D24A91423B123002E2297 /* PrioritizeDialog.xib in Resources */,
|
||||
CE21AFB91423EA6E00DE35BF /* DirectoryPanel.xib in Resources */,
|
||||
CE21AFBA1423EA6E00DE35BF /* MainMenu.xib in Resources */,
|
||||
CE21AFBB1423EA6E00DE35BF /* ProblemDialog.xib in Resources */,
|
||||
CE54EB8D1423FBA200E3383A /* columns.strings in Resources */,
|
||||
CE54EB8E1423FBA200E3383A /* help in Resources */,
|
||||
CE54EB8F1423FBA200E3383A /* dg_cocoa.plugin in Resources */,
|
||||
CE54EB901423FBA200E3383A /* folder32.png in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -10,8 +10,17 @@ install_cocoa_trans()
|
||||
from hscommon.cocoa import signature
|
||||
|
||||
from core.scanner import ScanType
|
||||
from core.app_cocoa import PyDupeGuruBase, PyDetailsPanel
|
||||
from core_se.app_cocoa import DupeGuru
|
||||
|
||||
from inter.app import PyDupeGuruBase
|
||||
from inter.details_panel import PyDetailsPanel
|
||||
from inter.directory_outline import PyDirectoryOutline
|
||||
from inter.extra_fairware_reminder import PyExtraFairwareReminder
|
||||
from inter.prioritize_dialog import PyPrioritizeDialog
|
||||
from inter.problem_dialog import PyProblemDialog
|
||||
from inter.problem_table import PyProblemTable
|
||||
from inter.result_table import PyResultTable
|
||||
from inter.stats_label import PyStatsLabel
|
||||
from inter.app_se import DupeGuru
|
||||
|
||||
class PyDupeGuru(PyDupeGuruBase):
|
||||
def init(self):
|
||||
|
Loading…
x
Reference in New Issue
Block a user