File tree Expand file tree Collapse file tree 2 files changed +33
-0
lines changed Expand file tree Collapse file tree 2 files changed +33
-0
lines changed Original file line number Diff line number Diff line change @@ -38,6 +38,7 @@ from .additions.qgstaskwrapper import QgsTaskWrapper
38
38
from .additions.readwritecontextentercategory import ReadWriteContextEnterCategory
39
39
from .additions.runtimeprofiler import ScopedRuntimeProfileContextManager
40
40
from .additions.validitycheck import check
41
+ from .additions.ranges import datetime_range_repr, date_range_repr
41
42
42
43
# Injections into classes
43
44
QgsFeature.__geo_interface__ = property(mapping_feature)
@@ -53,6 +54,8 @@ QgsSettings.enumValue = _qgssettings_enum_value
53
54
QgsSettings.setEnumValue = _qgssettings_set_enum_value
54
55
QgsSettings.flagValue = _qgssettings_flag_value
55
56
QgsTask.fromFunction = fromFunction
57
+ QgsDateTimeRange.__repr__ = datetime_range_repr
58
+ QgsDateRange.__repr__ = date_range_repr
56
59
57
60
# Classes patched using a derived class
58
61
QgsProviderMetadata = PyProviderMetadata
Original file line number Diff line number Diff line change
1
+ # -*- coding: utf-8 -*-
2
+
3
+ """
4
+ ***************************************************************************
5
+ ranges.py
6
+ ---------------------
7
+ Date : Mar 2021
8
+ Copyright : (C) 2021 by Nyall Dawson
9
+ Email : nyall dot dawson at gmail dot com
10
+ ***************************************************************************
11
+ * *
12
+ * This program is free software; you can redistribute it and/or modify *
13
+ * it under the terms of the GNU General Public License as published by *
14
+ * the Free Software Foundation; either version 2 of the License, or *
15
+ * (at your option) any later version. *
16
+ * *
17
+ ***************************************************************************
18
+ """
19
+ from qgis .PyQt .QtCore import Qt
20
+
21
+
22
+ # add some __repr__ methods to QGIS range classes. We can't do this via sip because they are template based classes
23
+
24
+
25
+ def datetime_range_repr (self ):
26
+ return f"<QgsDateTimeRange:{ '[' if self .includeBeginning () else '(' } { self .begin ().toString (Qt .ISODate )} , { self .end ().toString (Qt .ISODate )} { ']' if self .includeEnd () else ')' } >"
27
+
28
+
29
+ def date_range_repr (self ):
30
+ return f"<QgsDateTimeRange:{ '[' if self .includeBeginning () else '(' } { self .begin ().toString (Qt .ISODate )} , { self .end ().toString (Qt .ISODate )} { ']' if self .includeEnd () else ')' } >"
You can’t perform that action at this time.
0 commit comments