コード例 #1
0
    def _show_inputs(self, inps):
        if self._gui_enable is True:
            self._prepare_main_panel()
            gap = 20
            w = _CONTENT_WIDTH - (2 * gap)
            h = 100

            l = gdi.Label()
            l.set_position(gap, gap)
            l.set_size(w, h)
            l.set_wordwrap(True)
            l.set_text_align(gdi.TEXT_ALIGN_LEFTTOP)
            l.set_text(inps.get_message())
            self._pnlmain.add_component(l)

            lblw = 170
            ar = inps.get_inputs()
            p = 120
            for i in range(len(ar)):
                inp = ar[i]
                #LABEL
                l = gdi.Label()
                l.set_position(gap, p)
                l.set_size(lblw - 1, 30)
                l.set_text(inp['label'])
                self._pnlmain.add_component(l)

                #TEXTBOX
                t = gdi.TextBox()
                t.set_name(inp['key'])
                t.set_position(gap + lblw, p)
                t.set_size(_CONTENT_WIDTH - (4 * gap) - lblw, 30)
                t.set_text(inp['variable'].get())
                if inp['variable'].is_password():
                    t.set_password_mask(True)
                self._pnlmain.add_component(t)
                t.set_validate(inps.on_validate)
                if i == 0:
                    t.focus()
                p += 36
        else:
            print("")
            print(inps.get_message())
            ar = inps.get_inputs()
            for i in range(len(ar)):
                inp = ar[i]
                v = inp['variable'].get()
                if v is None:
                    v = ""
                if v != "" and not inp['variable'].is_password():
                    v = " (" + v + ")"
                rd = self._clmode_read(inp['label'] + v + ":",
                                       inp['variable'].is_password())
                if rd is not None:
                    if rd.strip() != "":
                        inp['variable'].set(rd)
                else:
                    return
            self._clmode_next()
コード例 #2
0
 def _enable_disable_action(self, e):
     if e["action"] == "DIALOG_YES":
         try:
             val = "false"
             mess_ok = 'monitorAgentDisabled'
             if self._cur_status == "DISABLE":
                 val = "true"
                 mess_ok = 'monitorAgentEnabled'
             pwd = ""
             if self.check_auth(pwd):
                 self.set_config(pwd, "enabled", val)
                 dlg = gdi.DialogMessage(gdi.DIALOGMESSAGE_ACTIONS_OK,
                                         gdi.DIALOGMESSAGE_LEVEL_INFO,
                                         self._app)
                 dlg.set_title(self._get_message('monitorTitle'))
                 dlg.set_message(self._get_message(mess_ok))
                 dlg.show()
             else:
                 #RICHIEDE PASSWORD
                 dlg = gdi.Window(gdi.WINDOW_TYPE_DIALOG, self._app)
                 dlg.set_title(self._get_message('monitorTitle'))
                 dlg.set_size(220, 140)
                 dlg.set_show_position(gdi.WINDOW_POSITION_CENTER_SCREEN)
                 lbl = gdi.Label()
                 lbl.set_text(self._get_message('monitorEnterPassword'))
                 lbl.set_position(10, 10)
                 lbl.set_width(200)
                 dlg.add_component(lbl)
                 txt = gdi.TextBox()
                 txt.set_name("txtPassword")
                 txt.set_password_mask(True)
                 txt.set_position(10, 10 + lbl.get_height())
                 txt.set_width(200)
                 dlg.add_component(txt)
                 pnlBottomH = 55
                 pnl = gdi.Panel()
                 pnl.set_position(0, dlg.get_height() - pnlBottomH)
                 pnl.set_size(dlg.get_width(), pnlBottomH)
                 dlg.add_component(pnl)
                 bt = gdi.Button()
                 bt.set_position(
                     int((dlg.get_width() / 2) - (bt.get_width() / 2)), 10)
                 bt.set_text(self._get_message('ok'))
                 bt.set_action(self._enable_disable_action_pwd)
                 pnl.add_component(bt)
                 dlg.show()
         except Exception as e:
             dlg = gdi.DialogMessage(gdi.DIALOGMESSAGE_ACTIONS_OK,
                                     gdi.DIALOGMESSAGE_LEVEL_ERROR,
                                     self._app)
             dlg.set_title(self._get_message('monitorTitle'))
             dlg.set_message(str(e))
             dlg.show()
コード例 #3
0
    def _wait_message_gui(self, msg, progr=None, allowclose=False):
        gap = 20
        if self._wait_ui is None:
            self._btnext.set_enable(False)
            self._btback.set_enable(False)
            self._btclose.set_enable(allowclose)
            self._prepare_main_panel()
            lbl = gdi.Label()
            lbl.set_wordwrap(True)
            lbl.set_position(gap, (_CONTENT_HEIGHT / 2) - 60)
            lbl.set_size(_CONTENT_WIDTH - (2 * gap), 60)
            lbl.set_text_align(gdi.TEXT_ALIGN_LEFTTOP)
            self._pnlmain.add_component(lbl)
            pbar = gdi.ProgressBar()
            pbar.set_position(gap, _CONTENT_HEIGHT / 2)
            pbar.set_size(_CONTENT_WIDTH - (2 * gap), 24)
            self._pnlmain.add_component(pbar)
            self._wait_ui = {'label': lbl, 'progress': pbar}
        else:
            self._btclose.set_enable(allowclose)
            lbl = self._wait_ui['label']
            pbar = self._wait_ui['progress']

        if 'label_value' not in self._wait_ui or self._wait_ui[
                'label_value'] != msg:
            lbl.set_text(msg)
        self._wait_ui['label_value'] = msg
        if progr is None:
            if 'progress_value' not in self._wait_ui or self._wait_ui[
                    'progress_value'] is not None:
                pbar.set_y(-100)
                lbl.set_y(0)
                lbl.set_height(_CONTENT_HEIGHT)
                lbl.set_text_align(gdi.TEXT_ALIGN_LEFTMIDDLE)
            self._wait_ui['progress_value'] = None
        else:
            if 'progress_value' not in self._wait_ui or self._wait_ui[
                    'progress_value'] is None or self._wait_ui[
                        'progress_value'] != progr:
                lbl.set_y((_CONTENT_HEIGHT / 2) - 40)
                lbl.set_height(30)
                lbl.set_text_align(gdi.TEXT_ALIGN_LEFTTOP)
                pbar.set_y(_CONTENT_HEIGHT / 2)
                pbar.set_percent(progr)
            self._wait_ui['progress_value'] = progr
コード例 #4
0
ファイル: ui.py プロジェクト: landv/agent
 def _show_message(self,  msg):
     if self._gui_enable is True:
         self._prepare_main_panel()
         w=_CONTENT_WIDTH-(2*_GAP_TEXT)
         h=_CONTENT_HEIGHT-(2*_GAP_TEXT)
         
         l = gdi.Label()
         l.set_position(_GAP_TEXT,_GAP_TEXT)
         l.set_size(w,h)
         l.set_wordwrap(True)
         l.set_text(msg.get_message())
         self._pnlmain.add_component(l)
     else:
         self._printcl(u"")
         self._printcl(msg.get_message())
         rd = self._clmode_read(messages.get_message('pressEnter'))
         if rd is not None:
             self._clmode_next()
コード例 #5
0
    def _show_message(self, msg):
        if self._gui_enable is True:
            self._prepare_main_panel()
            gap = 20
            w = _CONTENT_WIDTH - (2 * gap)
            h = _CONTENT_HEIGHT - (2 * gap)

            l = gdi.Label()
            l.set_position(gap, gap)
            l.set_size(w, h)
            l.set_wordwrap(True)
            l.set_text(msg.get_message())
            self._pnlmain.add_component(l)
        else:
            print("")
            print(msg.get_message())
            rd = self._clmode_read(resources.get_message('pressEnter'))
            if rd is not None:
                self._clmode_next()
コード例 #6
0
    def prepare_window(self):
        self._cur_status = "NOSERVICE"
        self._cur_connections = 0
        #msgst=self._get_message('monitorStatusNoService')

        self._app = gdi.Window(gdi.WINDOW_TYPE_NORMAL_NOT_RESIZABLE, None,
                               self._logo)
        self._app.set_title(self._get_message('monitorTitle'))
        self._app.set_size(_WIDTH, _HEIGHT)
        self._app.set_show_position(gdi.WINDOW_POSITION_CENTER_SCREEN)
        self._app.set_action(self._window_action)

        self._img_status_top = gdi.Panel()
        self._img_status_top.set_position(0, 0)
        self._img_status_top.set_size(_CONTENT_WIDTH, _HEIGHT_STATUS)
        self._img_status_top.set_background_gradient(
            "ffffff", "ffffff", gdi.GRADIENT_DIRECTION_TOPBOTTOM)
        self._app.add_component(self._img_status_top)

        self._img_status_bottom = gdi.Panel()
        self._img_status_bottom.set_position(0, _HEIGHT - _HEIGHT_STATUS)
        self._img_status_bottom.set_size(_CONTENT_WIDTH, _HEIGHT_STATUS)
        self._img_status_bottom.set_background_gradient(
            "ffffff", "ffffff", gdi.GRADIENT_DIRECTION_BOTTONTOP)
        self._app.add_component(self._img_status_bottom)

        self._lbl_status = gdi.Label()
        self._lbl_status.set_text_align(gdi.TEXT_ALIGN_CENTERMIDDLE)
        self._lbl_status.set_text(self._get_message('waiting'))
        self._lbl_status.set_position(0, _HEIGHT_STATUS)
        self._lbl_status.set_size(_CONTENT_WIDTH,
                                  _HEIGHT - (2 * _HEIGHT_STATUS))
        self._app.add_component(self._lbl_status)

        self._pnl_bottom = gdi.Panel()
        self._pnl_bottom.set_position(_CONTENT_WIDTH, 0)
        self._pnl_bottom.set_size(_WIDTH_RIGHT, _HEIGHT)
        self._app.add_component(self._pnl_bottom)

        wbtn = _WIDTH_RIGHT - 20
        hbtn = 36
        appy = 10

        self._btends = gdi.Button()
        self._btends.set_position(10, appy)
        self._btends.set_size(wbtn, hbtn)
        self._btends.set_text(self._get_message('monitorDisable'))
        self._btends.set_action(self.enable_disable)
        self._btends.set_enable(False)
        self._pnl_bottom.add_component(self._btends)
        appy += hbtn + 6

        self._btconfig = gdi.Button()
        self._btconfig.set_position(10, appy)
        self._btconfig.set_size(wbtn, hbtn)
        self._btconfig.set_text(self._get_message('monitorConfigure'))
        self._btconfig.set_action(self.configure)
        self._btconfig.set_enable(False)
        self._pnl_bottom.add_component(self._btconfig)
        appy += hbtn + 6

        self._btunistall = gdi.Button()
        self._btunistall.set_position(10, appy)
        self._btunistall.set_size(wbtn, hbtn)
        self._btunistall.set_text(self._get_message('monitorUninstall'))
        self._btunistall.set_action(self.unistall)
        self._pnl_bottom.add_component(self._btunistall)
        appy += hbtn + 6
コード例 #7
0
    def prepare_window(self):
        self._cur_status = "NOSERVICE"
        self._cur_activities = None
        #msgst=self._get_message('monitorStatusNoService')

        self._app = gdi.Window(gdi.WINDOW_TYPE_NORMAL_NOT_RESIZABLE, None,
                               self._logo)
        self._app.set_title(self._get_message('monitorTitle'))
        self._app.set_size(_WIDTH, _HEIGHT)
        self._app.set_show_position(gdi.WINDOW_POSITION_CENTER_SCREEN)
        self._app.set_action(self._window_action)

        self._img_status_top = gdi.Panel()
        self._img_status_top.set_position(0, 0)
        self._img_status_top.set_size(_CONTENT_WIDTH, _HEIGHT_STATUS_BAR)
        self._img_status_top.set_background_gradient(
            "ffffff", "ffffff", gdi.GRADIENT_DIRECTION_TOPBOTTOM)
        self._app.add_component(self._img_status_top)

        self._lbl_status = gdi.Label()
        self._lbl_status.set_background("ffffff")
        self._lbl_status.set_opaque(True)
        self._lbl_status.set_text_align(gdi.TEXT_ALIGN_CENTERMIDDLE)
        self._lbl_status.set_text(self._get_message('waiting'))
        self._lbl_status.set_position(0, _HEIGHT_STATUS_BAR)
        #self._lbl_status.set_size(_CONTENT_WIDTH,int((_HEIGHT-(2*_HEIGHT_STATUS_BAR))/2.8))
        self._lbl_status.set_size(_CONTENT_WIDTH, _HEIGHT_STATUS)
        self._app.add_component(self._lbl_status)

        self._img_status_bottom = gdi.Panel()
        self._img_status_bottom.set_position(
            0,
            self._lbl_status.get_y() + self._lbl_status.get_height())
        self._img_status_bottom.set_size(_CONTENT_WIDTH, _HEIGHT_STATUS_BAR)
        self._img_status_bottom.set_background_gradient(
            "ffffff", "ffffff", gdi.GRADIENT_DIRECTION_BOTTONTOP)
        self._app.add_component(self._img_status_bottom)

        self._lbl_notificationst = gdi.Label()
        self._lbl_notificationst.set_background("d9d9d9")
        self._lbl_notificationst.set_opaque(True)
        self._lbl_notificationst.set_text_align(gdi.TEXT_ALIGN_CENTERMIDDLE)
        self._lbl_notificationst.set_text(
            self._get_message('monitorCurrentActivities'))
        self._lbl_notificationst.set_position(
            0,
            self._img_status_bottom.get_y() +
            self._img_status_bottom.get_height())
        self._lbl_notificationst.set_size(_CONTENT_WIDTH, 25)
        self._app.add_component(self._lbl_notificationst)

        self._lbl_notificationsl = gdi.Label()
        self._lbl_notificationsl.set_background("ffffff")
        self._lbl_notificationsl.set_opaque(True)
        self._lbl_notificationsl.set_text_align(gdi.TEXT_ALIGN_RIGHTMIDDLE)
        self._lbl_notificationsl.set_position(
            0,
            self._lbl_notificationst.get_y() +
            self._lbl_notificationst.get_height())
        self._lbl_notificationsl.set_size(
            int(_CONTENT_WIDTH / 2),
            _HEIGHT - (self._lbl_notificationst.get_y() +
                       self._lbl_notificationst.get_height()))
        self._app.add_component(self._lbl_notificationsl)

        self._lbl_notificationsr = gdi.Label()
        self._lbl_notificationsr.set_background("ffffff")
        self._lbl_notificationsr.set_opaque(True)
        self._lbl_notificationsr.set_text_align(gdi.TEXT_ALIGN_LEFTMIDDLE)
        self._lbl_notificationsr.set_position(int(_CONTENT_WIDTH / 2),
                                              self._lbl_notificationsl.get_y())
        self._lbl_notificationsr.set_size(
            self._lbl_notificationsl.get_width(),
            self._lbl_notificationsl.get_height())
        self._app.add_component(self._lbl_notificationsr)

        self._lbl_notificationsn = gdi.Label()
        self._lbl_notificationsn.set_background("ffffff")
        self._lbl_notificationsn.set_position(
            0,
            self._lbl_notificationsl.get_y() +
            (int(self._lbl_notificationsl.get_height() / 2) - (26 / 2)))
        self._lbl_notificationsn.set_text(
            self._get_message('monitorNoActivities'))
        self._lbl_notificationsn.set_text_align(gdi.TEXT_ALIGN_CENTERMIDDLE)
        self._lbl_notificationsn.set_size(_CONTENT_WIDTH, 26)
        self._lbl_notificationsn.set_opaque(True)
        self._app.add_component(self._lbl_notificationsn)

        self._pnl_bottom = gdi.Panel()
        self._pnl_bottom.set_position(_CONTENT_WIDTH, 0)
        self._pnl_bottom.set_size(_WIDTH_RIGHT, _HEIGHT)
        self._app.add_component(self._pnl_bottom)

        wbtn = _WIDTH_RIGHT - 20
        hbtn = 36
        appy = 10

        self._btends = gdi.Button()
        self._btends.set_position(10, appy)
        self._btends.set_size(wbtn, hbtn)
        self._btends.set_text(self._get_message('monitorDisable'))
        self._btends.set_action(self.enable_disable)
        self._btends.set_enable(False)
        self._pnl_bottom.add_component(self._btends)
        appy += hbtn + 6

        self._btconfig = gdi.Button()
        self._btconfig.set_position(10, appy)
        self._btconfig.set_size(wbtn, hbtn)
        self._btconfig.set_text(self._get_message('monitorConfigure'))
        self._btconfig.set_action(self.configure)
        self._btconfig.set_enable(False)
        self._pnl_bottom.add_component(self._btconfig)
        appy += hbtn + 6

        self._btunistall = gdi.Button()
        self._btunistall.set_position(10, appy)
        self._btunistall.set_size(wbtn, hbtn)
        self._btunistall.set_text(self._get_message('monitorUninstall'))
        self._btunistall.set_action(self.unistall)
        self._pnl_bottom.add_component(self._btunistall)
        appy += hbtn + 6
コード例 #8
0
ファイル: test_gdi.py プロジェクト: fahdely/rectenv
        pp.show()
    elif e["action"] == u"ONCLOSE":
        #e["source"].hide()
        #e["cancel"]=True
        None


if __name__ == "__main__":
    ww = gdi.Window()
    ww.set_title(u"Title test")
    ww.set_action(_test_window_action)
    #ww.set_position(100, 100)
    ww.set_size(800, 500)
    ww.set_show_position(gdi.WINDOW_POSITION_CENTER_SCREEN)

    l = gdi.Label()
    l.set_position(250, 50)
    l.set_width(100)
    l.set_text("Host")
    ww.add_component(l)

    t = gdi.TextBox()
    t.set_position(350, 50)
    ww.add_component(t)

    l = gdi.Label()
    l.set_position(250, 90)
    l.set_width(100)
    l.set_text("Port")
    ww.add_component(l)
コード例 #9
0
ファイル: ui.py プロジェクト: landv/agent
 def _show_chooser(self,  chs):
     if self._gui_enable is True:
         self._prepare_main_panel()
         h=chs.get_message_height()
         w=_CONTENT_WIDTH-(2*_GAP_TEXT)
         l = gdi.Label() 
         l.set_wordwrap(True)
         l.set_text_align(gdi.TEXT_ALIGN_LEFTTOP)
         l.set_text(chs.get_message())
         l.set_position(_GAP_TEXT, _GAP_TEXT)
         l.set_size(w, h)
         
         self._pnlmain.add_component(l)
     
         ar = chs.get_choices()
         p=h+_GAP_TEXT
         for i in range(len(ar)):
             inp=ar[i]
             rb = gdi.RadioButton()
             rb.set_text(inp['label'])
             rb.set_position(_GAP_TEXT, p)
             rb.set_size(_CONTENT_WIDTH-(2*_GAP_TEXT), 30)
             rb.set_name(inp['key'])
             rb.set_group("RADIOBUTTON")
             if chs.get_variable().get()==inp['key']:
                 rb.set_selected(True);
             rb.set_action(chs.on_selected)
             self._pnlmain.add_component(rb)
             p+=30
         chs.set_main(self)
     else:
         self._printcl(u"")
         self._printcl(chs.get_message())
         self._printcl(u"")
         ar = chs.get_choices()
         df = u""
         ar_idx_accept=[]
         idx_default=None
         for i in range(len(ar)):
             inp=ar[i]
             self._printcl(str(i+1) + u". " + inp['label'])
             if chs.get_variable().get()==inp['key']:
                 idx_default=i+1
                 df = u" (" + str(idx_default) + u")"
             if chs.is_accept_key(inp['key']):
                 ar_idx_accept.append(i+1)
         rd = self._clmode_read(messages.get_message('option') + df + u":")
         if rd is not None:
             if rd=="":
                 rd=str(idx_default)
             try:
                 ird=int(rd)
                 if (ird>len(ar)):
                     raise Exception("")
                 if len(ar_idx_accept) > 0:
                     serr=[]
                     berr=True
                     for idxcur in ar_idx_accept:
                         serr.append(str(idxcur))
                         if ird==idxcur:
                             berr=False
                     if berr:
                         self._show_error(messages.get_message('mustAccept').format((u" " + messages.get_message('or') + u" ").join(serr)))
                         return
                 inp=ar[ird-1]
             except:
                 self._show_error(messages.get_message('optionNotValid'))
                 return
             chs.get_variable().set(inp['key'])
             self._clmode_next()
コード例 #10
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()