File: prioritize.py

package info (click to toggle)
dupeguru 4.3.1-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,604 kB
  • sloc: python: 16,846; ansic: 424; makefile: 123
file content (41 lines) | stat: -rw-r--r-- 956 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Created On: 2011/09/16
# Copyright 2015 Hardcoded Software (http://www.hardcoded.net)
#
# This software is licensed under the "GPLv3" License as described in the "LICENSE" file,
# which should be included with this package. The terms are also available at
# http://www.gnu.org/licenses/gpl-3.0.html

from hscommon.trans import trget

from core.prioritize import (
    KindCategory,
    FolderCategory,
    FilenameCategory,
    NumericalCategory,
    SizeCategory,
    MtimeCategory,
)

coltr = trget("columns")


class DimensionsCategory(NumericalCategory):
    NAME = coltr("Dimensions")

    def extract_value(self, dupe):
        return dupe.dimensions

    def invert_numerical_value(self, value):
        width, height = value
        return (-width, -height)


def all_categories():
    return [
        KindCategory,
        FolderCategory,
        FilenameCategory,
        SizeCategory,
        DimensionsCategory,
        MtimeCategory,
    ]