Пример #1
0
    def __init__(self, parent, doc_path, page_num, w, h, zoom=1.0):
        self.doc_path = doc_path
        self.page_num = page_num
        self.in_viewport = False

        evas = parent.evas
        super(Page, self).__init__(evas, self.SMART, parent=parent)

        self.page_num_label = Label(parent, text=str(page_num + 1))

        self.bg = Rectangle(evas, color=(255, 255, 255, 255))
        self.member_add(self.bg)
        self.bg.show()

        self.orig_w = float(w)
        self.orig_h = float(h)

        w = float(w) * zoom
        h = float(h) * zoom

        self.pv_img = FilledImage(evas, load_dpi=1, load_size=(w / 2, h / 2))
        self.member_add(self.pv_img)

        self.pv_img.on_image_preloaded_add(self.pv_preloaded)

        self.hq_img = FilledImage(evas, load_dpi=1, load_size=(w * 2, h * 2))
        self.member_add(self.hq_img)

        self.hq_img.on_image_preloaded_add(self.hq_preloaded, self.pv_img)

        self.size_hint_min = w, h

        self.pass_events = True
Пример #2
0
    def __init__(self, parent, doc_path, page_num, w, h, zoom=1.0):
        self.doc_path = doc_path
        self.page_num = page_num
        self.in_viewport = False

        evas = parent.evas
        super(Page, self).__init__(evas, self.SMART, parent=parent)

        self.page_num_label = Label(parent, text=str(page_num + 1))

        self.bg = Rectangle(evas, color=(255, 255, 255, 255))
        self.member_add(self.bg)
        self.bg.show()

        self.orig_w = float(w)
        self.orig_h = float(h)

        w = float(w) * zoom
        h = float(h) * zoom

        self.pv_img = FilledImage(evas, load_dpi=1, load_size=(w/2, h/2))
        self.member_add(self.pv_img)

        self.pv_img.on_image_preloaded_add(self.pv_preloaded)

        self.hq_img = FilledImage(evas, load_dpi=1, load_size=(w*2, h*2))
        self.member_add(self.hq_img)

        self.hq_img.on_image_preloaded_add(self.hq_preloaded, self.pv_img)

        self.size_hint_min = w, h

        self.pass_events = True
Пример #3
0
def cb_btn_restack(btn, popup):
    im = FilledImage(popup.evas)
    im.file = os.path.join(img_path, "mystrale_2.jpg")
    im.move(40, 40)
    im.resize(500, 320)
    im.show()

    popup.data["im"] = im
    popup.raise_()
Пример #4
0
def cb_btn(btn):
    cp = btn.data["ctxpopup"]
    if "img" in cp.data:
        return
    img = FilledImage(btn.evas)
    img.file_set(os.path.join(img_path, "sky_04.jpg"))
    img.move(40, 40)
    img.resize(320, 320)
    img.show()

    cp = btn.data["ctxpopup"]
    cp.data["img"] = img
    cp.raise_()
def cb_btn_restack(btn, popup):
    im = FilledImage(popup.evas);
    im.file = os.path.join(img_path, "mystrale_2.jpg")
    im.move(40, 40)
    im.resize(500, 320)
    im.show()

    popup.data["im"] = im
    popup.raise_()
Пример #6
0
class Page(SmartObject):

    SMART = PageSmart()
    SIZE_MIN = 50

    def __init__(self, parent, doc_path, page_num, w, h, zoom=1.0):
        self.doc_path = doc_path
        self.page_num = page_num
        self.in_viewport = False

        evas = parent.evas
        super(Page, self).__init__(evas, self.SMART, parent=parent)

        self.page_num_label = Label(parent, text=str(page_num + 1))

        self.bg = Rectangle(evas, color=(255, 255, 255, 255))
        self.member_add(self.bg)
        self.bg.show()

        self.orig_w = float(w)
        self.orig_h = float(h)

        w = float(w) * zoom
        h = float(h) * zoom

        self.pv_img = FilledImage(evas, load_dpi=1, load_size=(w/2, h/2))
        self.member_add(self.pv_img)

        self.pv_img.on_image_preloaded_add(self.pv_preloaded)

        self.hq_img = FilledImage(evas, load_dpi=1, load_size=(w*2, h*2))
        self.member_add(self.hq_img)

        self.hq_img.on_image_preloaded_add(self.hq_preloaded, self.pv_img)

        self.size_hint_min = w, h

        self.pass_events = True

    def zoom_set(self, value):
        old_size = self.size_hint_min
        new_size = [(i * value) for i in (self.orig_w, self.orig_h)]
        if (
                (old_size[0] >= self.SIZE_MIN or
                 old_size[1] >= self.SIZE_MIN) and
                (new_size[0] < self.SIZE_MIN or
                 new_size[1] < self.SIZE_MIN)):
            return
        self.pv_img.load_size = [
            (i * value / 2) for i in (self.orig_w, self.orig_h)
            ]
        self.hq_img.load_size = [
            (i * value * 2) for i in (self.orig_w, self.orig_h)
            ]
        self.size_hint_min = new_size

    def hq_preloaded(self, hq_img, pv_img):
        log.debug("preloaded hq %d", self.page_num)
        pv_img.hide()
        hq_img.show()

    def pv_preloaded(self, pv_img):
        log.debug("preloaded pv %d", self.page_num)
        pv_img.show()
        for img in (self.hq_img,):
            img.file = (self.doc_path, str(self.page_num))
            img.preload()
        log.debug("preloading hq %d", self.page_num)
Пример #7
0
class Page(SmartObject):

    SMART = PageSmart()
    SIZE_MIN = 50

    def __init__(self, parent, doc_path, page_num, w, h, zoom=1.0):
        self.doc_path = doc_path
        self.page_num = page_num
        self.in_viewport = False

        evas = parent.evas
        super(Page, self).__init__(evas, self.SMART, parent=parent)

        self.page_num_label = Label(parent, text=str(page_num + 1))

        self.bg = Rectangle(evas, color=(255, 255, 255, 255))
        self.member_add(self.bg)
        self.bg.show()

        self.orig_w = float(w)
        self.orig_h = float(h)

        w = float(w) * zoom
        h = float(h) * zoom

        self.pv_img = FilledImage(evas, load_dpi=1, load_size=(w / 2, h / 2))
        self.member_add(self.pv_img)

        self.pv_img.on_image_preloaded_add(self.pv_preloaded)

        self.hq_img = FilledImage(evas, load_dpi=1, load_size=(w * 2, h * 2))
        self.member_add(self.hq_img)

        self.hq_img.on_image_preloaded_add(self.hq_preloaded, self.pv_img)

        self.size_hint_min = w, h

        self.pass_events = True

    def zoom_set(self, value):
        old_size = self.size_hint_min
        new_size = [(i * value) for i in (self.orig_w, self.orig_h)]
        if ((old_size[0] >= self.SIZE_MIN or old_size[1] >= self.SIZE_MIN) and
            (new_size[0] < self.SIZE_MIN or new_size[1] < self.SIZE_MIN)):
            return
        self.pv_img.load_size = [(i * value / 2)
                                 for i in (self.orig_w, self.orig_h)]
        self.hq_img.load_size = [(i * value * 2)
                                 for i in (self.orig_w, self.orig_h)]
        self.size_hint_min = new_size

    def hq_preloaded(self, hq_img, pv_img):
        log.debug("preloaded hq %d", self.page_num)
        pv_img.hide()
        hq_img.show()

    def pv_preloaded(self, pv_img):
        log.debug("preloaded pv %d", self.page_num)
        pv_img.show()
        for img in (self.hq_img, ):
            img.file = (self.doc_path, str(self.page_num))
            img.preload()
        log.debug("preloading hq %d", self.page_num)