Exemple #1
0
def fit_decade_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    start = BosparanianDateTime.from_ymd(int(mean.year / 10) * 10, 1,
                                         1).to_time()
    end = BosparanianDateTime.from_ymd(int(mean.year / 10) * 10 + 10, 1,
                                       1).to_time()
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #2
0
def fit_month_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    start = BosparanianDateTime.from_ymd(mean.year, mean.month, 1).to_time()
    if mean.month == 13:
        end = BosparanianDateTime.from_ymd(mean.year + 1, 1, 1).to_time()
    else:
        end = BosparanianDateTime.from_ymd(mean.year, mean.month + 1, 1).to_time()
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #3
0
def fit_month_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    start = BosparanianDateTime.from_ymd(mean.year, mean.month, 1).to_time()
    if mean.month == 13:
        end = BosparanianDateTime.from_ymd(mean.year + 1, 1, 1).to_time()
    else:
        end = BosparanianDateTime.from_ymd(mean.year, mean.month + 1,
                                           1).to_time()
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #4
0
def fit_century_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    if mean.year > get_century_max_year():
        year = get_century_max_year()
    else:
        year = max(get_min_year_containing_praios_1(), int(mean.year / 100) * 100)
    start = BosparanianDateTime.from_ymd(year, 1, 1).to_time()
    end = BosparanianDateTime.from_ymd(year + 100, 1, 1).to_time()
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #5
0
def fit_century_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    if mean.year > get_century_max_year():
        year = get_century_max_year()
    else:
        year = max(get_min_year_containing_praios_1(),
                   int(mean.year / 100) * 100)
    start = BosparanianDateTime.from_ymd(year, 1, 1).to_time()
    end = BosparanianDateTime.from_ymd(year + 100, 1, 1).to_time()
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #6
0
    def on_down(self):
        def decrement_year(date):
            year, month, day = date
            if year > BosparanianDateTime.from_time(
                    BosparanianTimeType().get_min_time()).year:
                return self._set_valid_day(year - 1, month, day)
            return date

        def decrement_month(date):
            year, month, day = date
            if month > 1:
                return self._set_valid_day(year, month - 1, day)
            elif year > BosparanianDateTime.from_time(
                    BosparanianTimeType().get_min_time()).year:
                return self._set_valid_day(year - 1, 13, day)
            return date

        def decrement_day(date):
            year, month, day = date
            if day > 1:
                return self._set_valid_day(year, month, day - 1)
            elif month > 1:
                return self._set_valid_day(year, month - 1, 30)
            elif year > BosparanianDateTime.from_time(
                    BosparanianTimeType().get_min_time()).year:
                return self._set_valid_day(year - 1, 13, 5)
            return date

        if not self._current_date_is_valid():
            return
        selection = self.date_picker.GetSelection()
        current_date = self.get_value()
        if self._insertion_point_in_region(self.region_year):
            new_date = decrement_year(current_date)
        elif self._insertion_point_in_region(self.region_month):
            new_date = decrement_month(current_date)
        else:
            year, month, day = current_date
            BosparanianDateTime.from_ymd(year, month, day)
            if BosparanianDateTime.from_ymd(
                    year, month,
                    day).to_time() == BosparanianTimeType().get_min_time():
                return
            new_date = decrement_day(current_date)
            self._save_preferred_day(new_date)
        if current_date != new_date:
            self._set_new_date_and_restore_selection(new_date, selection)
        self._on_change()
Exemple #7
0
 def start(self, time):
     q = self.get_quarter(time)
     if q == 0:
         m = 13
     else:
         m = (q - 1) * 3 + 1
     return BosparanianDateTime.from_ymd(BosparanianDateTime.from_time(time).year, m, 1).to_time()
Exemple #8
0
 def start(self, time):
     q = self.get_quarter(time)
     if q == 0:
         m = 13
     else:
         m = (q - 1) * 3 + 1
     return BosparanianDateTime.from_ymd(
         BosparanianDateTime.from_time(time).year, m, 1).to_time()
Exemple #9
0
 def increment_day(date):
     year, month, day = date
     time = BosparanianDateTime.from_ymd(year, month, day).to_time()
     if time < BosparanianTimeType().get_max_time(
     ) - BosparanianDelta.from_days(1):
         return BosparanianDateTime.from_time(
             time + BosparanianDelta.from_days(1)).to_date_tuple()
     return date
Exemple #10
0
def fit_week_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    start = BosparanianDateTime.from_ymd(mean.year, mean.month, mean.day).to_time()
    weekday = BosparanianTimeType().get_day_of_week(start)
    start = start - BosparanianDelta.from_days(weekday)
    if not main_frame.week_starts_on_monday():
        start = start - BosparanianDelta.from_days(1)
    end = start + BosparanianDelta.from_days(7)
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #11
0
 def _set_valid_day(self, new_year, new_month, new_day):
     done = False
     while not done:
         try:
             date = BosparanianDateTime.from_ymd(new_year, new_month, new_day)
             done = True
         except Exception:
             new_day -= 1
     return date.to_date_tuple()
Exemple #12
0
 def _set_valid_day(self, new_year, new_month, new_day):
     done = False
     while not done:
         try:
             date = BosparanianDateTime.from_ymd(new_year, new_month,
                                                 new_day)
             done = True
         except Exception:
             new_day -= 1
     return date.to_date_tuple()
Exemple #13
0
def fit_week_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    start = BosparanianDateTime.from_ymd(mean.year, mean.month,
                                         mean.day).to_time()
    weekday = BosparanianTimeType().get_day_of_week(start)
    start = start - BosparanianDelta.from_days(weekday)
    if not main_frame.week_starts_on_monday():
        start = start - BosparanianDelta.from_days(1)
    end = start + BosparanianDelta.from_days(7)
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #14
0
 def on_down(self):
     def decrement_year(date):
         year, month, day = date
         if year > BosparanianDateTime.from_time(BosparanianTimeType().get_min_time()).year:
             return self._set_valid_day(year - 1, month, day)
         return date
     def decrement_month(date):
         year, month, day = date
         if month > 1:
             return self._set_valid_day(year, month - 1, day)
         elif year > BosparanianDateTime.from_time(BosparanianTimeType().get_min_time()).year:
             return self._set_valid_day(year - 1, 13, day)
         return date
     def decrement_day(date):
         year, month, day = date
         if day > 1:
             return self._set_valid_day(year, month, day - 1)
         elif month > 1:
             return self._set_valid_day(year, month - 1, 30)
         elif year > BosparanianDateTime.from_time(BosparanianTimeType().get_min_time()).year:
             return self._set_valid_day(year - 1, 13, 5)
         return date
     if not self._current_date_is_valid():
         return
     selection = self.date_picker.GetSelection()
     current_date = self.get_value()
     if self._insertion_point_in_region(self.region_year):
         new_date = decrement_year(current_date)
     elif self._insertion_point_in_region(self.region_month):
         new_date = decrement_month(current_date)
     else:
         year, month, day = current_date
         BosparanianDateTime.from_ymd(year, month, day)
         if BosparanianDateTime.from_ymd(year, month, day).to_time() == BosparanianTimeType().get_min_time():
             return
         new_date = decrement_day(current_date)
         self._save_preferred_day(new_date)
     if current_date != new_date:
         self._set_new_date_and_restore_selection(new_date, selection)
     self._on_change()
Exemple #15
0
 def start(self, time):
     bosparanian_time = BosparanianDateTime.from_time(time)
     new_bosparanian = BosparanianDateTime.from_ymd(bosparanian_time.year,
                                                    bosparanian_time.month,
                                                    bosparanian_time.day)
     return new_bosparanian.to_time()
Exemple #16
0
 def start(self, time):
     bosparanian_time = BosparanianDateTime.from_time(time)
     new_bosparanian = BosparanianDateTime.from_ymd(bosparanian_time.year, bosparanian_time.month, bosparanian_time.day)
     return new_bosparanian.to_time()
Exemple #17
0
 def start(self, time):
     bosparanian_time = BosparanianDateTime.from_time(time)
     new_bosparanian = BosparanianDateTime.from_ymd(
         self._decade_start_year(bosparanian_time.year), 1, 1)
     return new_bosparanian.to_time()
Exemple #18
0
 def start(self, time):
     time = BosparanianDateTime.from_time(time)
     return BosparanianDateTime.from_ymd(
         self._century_start_year(time.year), 1, 1).to_time()
Exemple #19
0
def fit_day_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    start = BosparanianDateTime.from_ymd(mean.year, mean.month,
                                         mean.day).to_time()
    end = start + BosparanianDelta.from_days(1)
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #20
0
 def start(self, time):
     bosparanian_time = BosparanianDateTime.from_time(time)
     new_bosparanian = BosparanianDateTime.from_ymd(self._decade_start_year(bosparanian_time.year), 1, 1)
     return new_bosparanian.to_time()
Exemple #21
0
 def increment_day(date):
     year, month, day = date
     time = BosparanianDateTime.from_ymd(year, month, day).to_time()
     if time < BosparanianTimeType().get_max_time() - BosparanianDelta.from_days(1):
         return BosparanianDateTime.from_time(time + BosparanianDelta.from_days(1)).to_date_tuple()
     return date
Exemple #22
0
def fit_decade_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    start = BosparanianDateTime.from_ymd(int(mean.year / 10) * 10, 1, 1).to_time()
    end = BosparanianDateTime.from_ymd(int(mean.year / 10) * 10 + 10, 1, 1).to_time()
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #23
0
def fit_day_fn(main_frame, current_period, navigation_fn):
    mean = BosparanianDateTime.from_time(current_period.mean_time())
    start = BosparanianDateTime.from_ymd(mean.year, mean.month, mean.day).to_time()
    end = start + BosparanianDelta.from_days(1)
    navigation_fn(lambda tp: tp.update(start, end))
Exemple #24
0
 def start(self, time):
     time = BosparanianDateTime.from_time(time)
     return BosparanianDateTime.from_ymd(self._century_start_year(time.year), 1, 1).to_time()