def set_position(self, box: Rectangle): log.info("Setting position") x, y = box.x, box.y self.box.x = x self.box.y = y self.element.matrix.translate(x, y)
def main(config): """Console script for folders.""" log.info("Started Folders") log.info("folders.cli.main") try: pass main_function(config) except Exception as e: log.critical(str(e)) return 1 return 0
def interpreter(): log.info("Interpreting folders") index = object_register() files = obtain_values() for i, value in enumerate(files): container = Container( key=value.path, value=value, box=Rectangle(0, 0, 40, 15), element=Text ) container.element.text = value.name index.register(container) organize_elements(index) return index
def organize_elements(index: object_register): log.info("Organizing elements") containers = index.values() count = len(containers) row_width = ceil(sqrt(count)) horizontal_space, vertical_space = 120, 60 offset_x, offset_y = 100, 100 rows_cols = [(x, y) for x in range(row_width) for y in range(row_width)] for position, container in enumerate(index.values()): log.debug(f"Moving element to {rows_cols[position]}") print(rows_cols[position]) row, col = rows_cols[position] box = Rectangle( offset_x + row * horizontal_space, offset_y + col * vertical_space, 40, 15 ) container.set_position(box)
def __init__(self): Gtk.Box.__init__(self, orientation=Gtk.Orientation.HORIZONTAL) log.info("Loading Workbench") canvas = Canvas() view = GtkView() __.canvas = canvas __.view = view view.painter = DefaultPainter() view.canvas = canvas self.pack_start(view, True, True, 20) self.index = interpreter() self.index.add_to_canvas(canvas) # # Draw first gaphas box # b1 = Box(Rectangle(1, 0, 60, 60)) # canvas.add(b1) # tx = Text(text="joo") # tx.matrix.translate(20, 20) # canvas.add(tx) # # Draw second gaphas box # b2 = Box(Rectangle(170, 170, 60, 60)) # canvas.add(b2) # # Draw gaphas line # line = Line() # line.matrix.translate(100, 60) # canvas.add(line) # line.handles()[1].pos = (30, 30) self.view = view self.canvas = canvas self.show_all() log.info("Workbench loaded") view.add_events(Gdk.EventMask.BUTTON_PRESS_MASK) # self.connect('clicked', self.on_field_click) # "set-focus-child" container, widget self.connect("focus", self.on_field_click)
def __init__(self, key: str, value: object, box: Rectangle, element: type): log.info(f"Made element {key}") self.key = key self.value = value self.box = box self.element = build_elements(element, box)