Example #1
0
 def __init__(self, identify_data: Union['Frame', Dict[str, str]]):
     if isinstance(identify_data, Frame):
         for k in Frame.__annotations__:
             setattr(self, k, getattr(identify_data, k))
     else:
         self.gap = max(0, int(identify_data['gap']) * 10)
         sz, pos = identify_data['canvas'].split('+', 1)
         self.canvas_width, self.canvas_height = map(
             positive_int, sz.split('x', 1))
         self.canvas_x, self.canvas_y = map(int, pos.split('+', 1))
         self.width, self.height = map(positive_int,
                                       identify_data['size'].split('x', 1))
         self.xdpi, self.ydpi = map(positive_float,
                                    identify_data['dpi'].split('x', 1))
         self.index = positive_int(identify_data['index'])
         q = identify_data['transparency'].lower()
         self.mode = 'rgba' if q in ('blend', 'true') else 'rgb'
         self.needs_blend = q == 'blend'
         self.dispose = getattr(Dispose, identify_data['dispose'].lower())
         self.dimensions_swapped = identify_data.get('orientation') in ('5',
                                                                        '6',
                                                                        '7',
                                                                        '8')
         if self.dimensions_swapped:
             self.canvas_width, self.canvas_height = self.canvas_height, self.canvas_width
             self.width, self.height = self.height, self.width
Example #2
0
def tab_bar_min_tabs(x: str) -> int:
    return max(1, positive_int(x))
Example #3
0
def window_size(val: str) -> Tuple[int, str]:
    val = val.lower()
    unit = 'cells' if val.endswith('c') else 'px'
    return positive_int(val.rstrip('c')), unit
Example #4
0
 def num_context_lines(self, val: str,
                       ans: typing.Dict[str, typing.Any]) -> None:
     ans['num_context_lines'] = positive_int(val)