Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/timelinelib/time/pytime.py
diff options
context:
space:
mode:
Diffstat (limited to 'timelinelib/time/pytime.py')
-rw-r--r--timelinelib/time/pytime.py51
1 files changed, 37 insertions, 14 deletions
diff --git a/timelinelib/time/pytime.py b/timelinelib/time/pytime.py
index e0f0afc..bd0e335 100644
--- a/timelinelib/time/pytime.py
+++ b/timelinelib/time/pytime.py
@@ -130,7 +130,7 @@ class PyTimeType(TimeType):
collector.append(u"1 %s" % _("minute"))
elif minutes > 1:
collector.append(u"%d %s" % (minutes, _("minutes")))
- delta_string = u" ".join(collector)
+ delta_string = u" ".join(collector)
if delta_string == "":
delta_string = "0"
return delta_string
@@ -194,10 +194,10 @@ class PyTimeType(TimeType):
total_us1 = delta_to_microseconds(delta1)
total_us2 = delta_to_microseconds(delta2)
# Make sure that the result is a floating point number
- return total_us1 / float(total_us2)
+ return total_us1 / float(total_us2)
def get_max_zoom_delta(self):
- return (timedelta(days=1200*365),
+ return (timedelta(days=1200*365),
_("Can't zoom wider than 1200 years"))
def get_min_zoom_delta(self):
@@ -238,11 +238,11 @@ class PyTimeType(TimeType):
return "%02d:%02d" % (time.hour, time.minute)
def eventtimes_equals(self, time1, time2):
- s1 = "%s %s" % (self.event_date_string(time1),
+ s1 = "%s %s" % (self.event_date_string(time1),
self.event_date_string(time1))
- s2 = "%s %s" % (self.event_date_string(time2),
+ s2 = "%s %s" % (self.event_date_string(time2),
self.event_date_string(time2))
- return s1 == s2
+ return s1 == s2
def go_to_today_fn(main_frame, current_period, navigation_fn):
@@ -392,15 +392,35 @@ def backward_one_year_fn(main_frame, current_period, navigation_fn):
def fit_millennium_fn(main_frame, current_period, navigation_fn):
mean = current_period.mean_time()
- start = datetime(int(mean.year/1000)*1000, 1, 1)
- end = datetime(int(mean.year/1000)*1000 + 1000, 1, 1)
+ if mean.year > get_millenium_max_year():
+ year = get_millenium_max_year()
+ else:
+ year = max(get_min_year(), int(mean.year/1000)*1000)
+ start = datetime(year, 1, 1)
+ end = datetime(year + 1000, 1, 1)
navigation_fn(lambda tp: tp.update(start, end))
+def get_min_year():
+ return PyTimeType().get_min_time()[0].year
+
+
+def get_millenium_max_year():
+ return PyTimeType().get_max_time()[0].year - 1000
+
+
+def get_century_max_year():
+ return PyTimeType().get_max_time()[0].year - 100
+
+
def fit_century_fn(main_frame, current_period, navigation_fn):
mean = current_period.mean_time()
- start = datetime(int(mean.year/100)*100, 1, 1)
- end = datetime(int(mean.year/100)*100 + 100, 1, 1)
+ if mean.year > get_century_max_year():
+ year = get_century_max_year()
+ else:
+ year = max(get_min_year(), int(mean.year/100)*100)
+ start = datetime(year, 1, 1)
+ end = datetime(year + 100, 1, 1)
navigation_fn(lambda tp: tp.update(start, end))
@@ -449,13 +469,16 @@ class StripCentury(Strip):
return datetime(max(self._century_start_year(time.year), 10), 1, 1)
def increment(self, time):
- return time.replace(year=time.year+100)
+ return time.replace(year=time.year + 100)
def get_font(self, time_period):
return get_default_font(8)
def _century_start_year(self, year):
- return (int(year) / 100) * 100
+ year = (int(year) / 100) * 100
+ #if year > get_century_max_year():
+ # year = get_century_max_year
+ return year
class StripDecade(Strip):
@@ -643,8 +666,8 @@ def delta_to_microseconds(delta):
def move_period_num_days(period, num):
delta = timedelta(days=1) * num
- start_time = period.start_time + delta
- end_time = period.end_time + delta
+ start_time = period.start_time + delta
+ end_time = period.end_time + delta
return TimePeriod(period.time_type, start_time, end_time)