예제 #1
0
    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)
예제 #2
0
파일: cli.py 프로젝트: kr1surb4n/copypaster
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
예제 #3
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
예제 #4
0
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)
예제 #5
0
    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)
예제 #6
0
 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)