コード例 #1
0
    def _guimode_start(self):
        self._app = gdi.Window(gdi.WINDOW_TYPE_NORMAL_NOT_RESIZABLE)
        self._app.set_title(U"DWAgent")
        self._app.set_size(_WIDTH, _HEIGHT)
        self._app.set_show_position(gdi.WINDOW_POSITION_CENTER_SCREEN)
        self._app.set_action(self._guimode_action)

        pnl_left = gdi.Panel()
        pnl_left.set_position(0, 0)
        pnl_left.set_size(_WIDTH_LEFT, _HEIGHT)
        pnl_left.set_background_gradient("83e5ff", "FFFFFF",
                                         gdi.GRADIENT_DIRECTION_LEFTRIGHT)
        self._app.add_component(pnl_left)

        pnl_bottom = gdi.Panel()
        pnl_bottom.set_position(0, _CONTENT_HEIGHT)
        pnl_bottom.set_size(_WIDTH, _HEIGHT_BOTTOM)
        self._app.add_component(pnl_bottom)

        wbtn = 140
        hbtn = 36

        self._btback = gdi.Button()
        self._btback.set_position(10, 10)
        self._btback.set_size(wbtn, hbtn)
        self._btback.set_text(resources.get_message('back'))
        self._btback.set_enable(False)
        self._btback.set_action(self._guimode_back)
        pnl_bottom.add_component(self._btback)

        self._btnext = gdi.Button()
        self._btnext.set_position(10 + wbtn + 5, 10)
        self._btnext.set_size(wbtn, hbtn)
        self._btnext.set_text(resources.get_message('next'))
        self._btnext.set_enable(False)
        self._btnext.set_action(self._guimode_next)
        pnl_bottom.add_component(self._btnext)

        self._btclose = gdi.Button()
        self._btclose.set_position(_WIDTH - wbtn - 10, 10)
        self._btclose.set_size(wbtn, hbtn)
        self._btclose.set_text(resources.get_message('close'))
        self._btclose.set_enable(False)
        self._btclose.set_action(self._guimode_close)
        pnl_bottom.add_component(self._btclose)

        self._pnlmain = None
        self._cur_step_ui = None
        self._step_init_run = False

        gdi.add_scheduler(0.1, self._guimode_step_init_start)

        #self._queue = Queue()
        #gdi.add_scheduler(0.1, self._guimode_update)

        gdi.loop(self._app, True)
コード例 #2
0
    def start(self, mode):
        self._semaphore = threading.Condition()
        self._sharedmemclient = None
        self._mode = mode
        self._monitor_tray_icon = False
        self._monitor_tray_obj = None
        self._monitor_desktop_notification = "visible"
        self._update = False
        if mode == "info":
            self.printInfo()
        else:
            if not self.lock():
                if mode == "window":
                    self.add_show_file()
                return

            while self.check_update() or self.check_stop():
                time.sleep(
                    2
                )  #Attende finché il server non cancella l'update file o lo stop file

            try:
                if 'monitor_desktop_notification' in self._properties:
                    self._monitor_desktop_notification = self._properties[
                        'monitor_desktop_notification']
            except Exception:
                None

            #Carica Maschera
            self.prepare_window()
            if mode == "systray":
                self.prepare_systray()
            else:
                self._app.show()

            #Attiva Eventi
            gdi.add_scheduler(0.5, self.update_status)

            #self._event=None
            gdi.add_scheduler(1, self.check_events)

            gdi.loop()
            self.unlock()
            if self._update:
                self.run_update()
        if self._sharedmemclient is not None:
            self._sharedmemclient.close()
コード例 #3
0
    def start(self, mode):
        #GESTIONE PROVVISORIA MAC
        if mode == "systray" and is_mac():
            while True:
                time.sleep(5)
            return

        self._semaphore = threading.Condition()
        self._sharedmemclient = None
        self._mode = mode
        self._monitor_tray_icon = False
        self._update = False
        if mode == "info":
            self.printInfo()
        else:
            if not self.lock():
                if mode == "window":
                    self.add_show_file()
                return

            while self.check_update() or self.check_stop():
                time.sleep(
                    2
                )  #Attende finché il server non cancella l'update file o lo stop file

            #Carica Maschera
            self.prepare_window()

            #Attiva Eventi
            gdi.add_scheduler(0.5, self.update_status)
            #self._event=None
            gdi.add_scheduler(1, self.check_events)

            bshow = True
            if mode == "systray":
                self.prepare_systray()
                bshow = False

            gdi.loop(self._app, bshow)
            self.unlock()
            if self._update:
                self.run_update()
        if self._sharedmemclient is not None:
            self._sharedmemclient.close()
コード例 #4
0
ファイル: test_gdi.py プロジェクト: fahdely/rectenv
    ww.add_component(imp)
    '''

    pl = gdi.Panel()
    pl.set_position(0, 0)
    pl.set_size(90, ww.get_height())
    pl.set_background_gradient("83e5ff", "FFFFFF",
                               gdi.GRADIENT_DIRECTION_LEFTRIGHT)
    ww.add_component(pl)

    pb = gdi.Panel()
    pb.set_position(0, ww.get_height() - 55)
    pb.set_size(ww.get_width(), 55)
    ww.add_component(pb)

    b1 = gdi.Button()
    b1.set_text("Message")
    b1.set_position(10, 10)
    b1.set_action(_test_other_window)
    pb.add_component(b1)

    b2 = gdi.Button()
    b2.set_text("Close")
    b2.set_position(10 + b1.get_width() + 10, 10)
    b2.set_action(_test_close_window)
    pb.add_component(b2)

    #ww.show_notifyicon(u"logo.ico",u"MSG LOGO")

    gdi.loop(ww, True)
コード例 #5
0
ファイル: test_gdi.py プロジェクト: dwservice/agent
    imp = gdi.ImagePanel()
    imp.set_position(200, 280)
    imp.set_filename(images.get_image("logo32x32.bmp"))
    ww.add_component(imp)

    pb = gdi.Panel()
    pb.set_position(0, ww.get_height() - 55)
    pb.set_size(ww.get_width(), 55)
    ww.add_component(pb)

    b1 = gdi.Button()
    b1.set_text("Message")
    b1.set_position(10, 10)
    b1.set_action(_test_other_window)
    pb.add_component(b1)

    b2 = gdi.Button()
    b2.set_text("Close")
    b2.set_position(10 + b1.get_width() + 10, 10)
    b2.set_action(_test_close_window)
    pb.add_component(b2)

    b3 = gdi.Button()
    b3.set_text("Notify")
    b3.set_position(10 + b1.get_width() + 10 + b2.get_width() + 10, 10)
    b3.set_action(_test_notify)
    pb.add_component(b3)

    ww.show()
    gdi.loop()
コード例 #6
0
ファイル: ui.py プロジェクト: landv/agent
 def _guimode_start(self):
     
     gdi.gdw_lib() #Se non è presente la libreria va in errore quindi in modalita console
             
     self._top_height=0
     if self._topimage is not None:
         self._top_height=gdi.get_image_size(self._topimage)["height"]
     elif self._topinfo is not None:
         self._top_height=(22*len(self._topinfo.split("\n"))) + 10
     
     self._app = gdi.Window(gdi.WINDOW_TYPE_NORMAL_NOT_RESIZABLE, logopath=self._logo)
     #self._app = Window(gdi.WINDOW_TYPE_NORMAL_NOT_RESIZABLE, logopath=self._logo)
     #self._app.setUI(self)
     
     self._app.set_title(self._title)
     self._app.set_size(_WIDTH, _HEIGHT+self._top_height)
     self._app.set_show_position(gdi.WINDOW_POSITION_CENTER_SCREEN)
     self._app.set_action(self._guimode_action)
     
     pnl_left = gdi.Panel();
     pnl_left.set_position(0, self._top_height)
     pnl_left.set_size(_WIDTH_LEFT,_HEIGHT)
     
     if self._leftcolor is not None:
         pnl_left.set_background_gradient(self._leftcolor, "FFFFFF", gdi.GRADIENT_DIRECTION_LEFTRIGHT)
     else:
         pnl_left.set_background_gradient("83e5ff", "FFFFFF", gdi.GRADIENT_DIRECTION_LEFTRIGHT)
     self._app.add_component(pnl_left)
     
     if self._topimage is not None:
         pnl_top = gdi.ImagePanel();
         pnl_top.set_position(0, 0)
         pnl_top.set_filename(self._topimage)
         pnl_top.set_size(_WIDTH,self._top_height)
         self._app.add_component(pnl_top)
     elif self._topinfo is not None:
         pnl_top = gdi.Panel();
         pnl_top.set_position(0, 0)
         pnl_top.set_size(_WIDTH,self._top_height)
         pnl_top.set_background("d9d9d9")
         self._app.add_component(pnl_top)
         
         pnl_top_text = gdi.Label()
         pnl_top_text.set_position(10,0)
         pnl_top_text.set_size(_WIDTH-(2*10),self._top_height)
         pnl_top_text.set_wordwrap(True)
         pnl_top_text.set_foreground("000000")
                     
         pnl_top_text.set_text(self._topinfo)
         pnl_top.add_component(pnl_top_text)
     
     
     pnl_bottom = gdi.Panel();
     pnl_bottom.set_position(0, _CONTENT_HEIGHT+self._top_height)
     pnl_bottom.set_size(_WIDTH,_HEIGHT_BOTTOM)
     self._app.add_component(pnl_bottom)
     
     wbtn=140
     hbtn=36
     
     self._btback = gdi.Button();
     self._btback.set_position(10, 10)
     self._btback.set_size(wbtn, hbtn)
     self._btback.set_text(messages.get_message('back'))
     self._btback.set_enable(False);
     self._btback.set_action(self._guimode_back)
     pnl_bottom.add_component(self._btback)
             
     self._btnext = gdi.Button();
     self._btnext.set_position(10+wbtn+5, 10)
     self._btnext.set_size(wbtn, hbtn)
     self._btnext.set_text(messages.get_message('next'))
     self._btnext.set_enable(False);
     self._btnext.set_action(self._guimode_next)
     pnl_bottom.add_component(self._btnext)
     
     self._btclose = gdi.Button();
     self._btclose.set_position(_WIDTH-wbtn-10, 10)
     self._btclose.set_size(wbtn, hbtn)
     self._btclose.set_text(messages.get_message('close'))
     self._btclose.set_enable(False);
     self._btclose.set_action(self._guimode_close)
     pnl_bottom.add_component(self._btclose)
     
     self._pnlmain=None
     self._cur_step_ui=None
     self._step_init_run=False
     
     self._guimode_step_init_start()
     self._app.show()
     gdi.loop()