def Boutons(self,dlg):
     btnEsc = xboutons.BTN_esc(dlg,label='',size=(35,35))
     btnOK = xboutons.BTN_fermer(dlg,label='',onBtn=dlg.OnFermer,size=(35,35))
     boxBoutons = wx.BoxSizer(wx.HORIZONTAL)
     boxBoutons.Add(btnEsc, 0,  wx.RIGHT,5)
     boxBoutons.Add(btnOK, 0,  wx.RIGHT,5)
     return boxBoutons
Exemple #2
0
    def __init__(self, parent, **kwds):
        self.parent = parent
        wx.Panel.__init__(self, parent, **kwds)
        self.lstBtns = [
            xboutons.BTN_esc(self),
            xboutons.BTN_fermer(self, label='Valider')
        ]
        if self.parent.mode == 'familles':
            self.famNoPub = wx.CheckBox(self,
                                        wx.ID_ANY,
                                        label="No Pub pour famille",
                                        style=wx.CHK_3STATE)
            self.famNoPub.Bind(wx.EVT_CHECKBOX, parent.ONfamNoPub)
            self.famNoPub.SetToolTip(
                "En cliquant vous aller appliquer l'action à l'ensemble des membres de la famille"
            )
            self.famNoMel = wx.CheckBox(self,
                                        label="No Mails pour famille",
                                        style=wx.CHK_3STATE)
            self.famNoMel.Bind(wx.EVT_CHECKBOX, parent.ONfamNoMel)
            self.famNoMel.SetToolTip(
                "En cliquant vous aller appliquer l'action à l'ensemble des membres de la famille"
            )

        self.Sizer()
 def Boutons(self, dlg):
     btnOK = xboutons.BTN_fermer(dlg,
                                 label='',
                                 onBtn=dlg.OnFermer,
                                 size=(35, 35),
                                 image='xpy/images/32x32/Valider.png',
                                 help='Cliquez pour fermer la fenêtre')
     btnTest = xboutons.BTN_tester(
         dlg,
         label='Tester\nla base',
         onBtn=self.OnTester,
         help=
         "Cette option vous permet de vérifier l'accés à la base sus nommée"
     )
     boxBoutons = wx.BoxSizer(wx.HORIZONTAL)
     if self.modeBase == 'creation':
         btnCreate = xboutons.Bouton(
             dlg,
             onBtn=self.OnCreate,
             label='Création\nde la base',
             image='xpy/images/32x32/Action.png',
             help=
             "Cliquez pour lancer la création de la base de donnée sus nommée"
         )
         boxBoutons.Add(btnCreate, 0, wx.RIGHT, 5)
     boxBoutons.Add(btnTest, 0, wx.RIGHT, 5)
     boxBoutons.Add(btnOK, 0, wx.RIGHT, 5)
     return boxBoutons
 def Boutons(self, dlg):
     btnOK = xboutons.BTN_fermer(dlg, label='Fermer', onBtn=dlg.OnFermer)
     btnTest = xboutons.BTN_tester(dlg, onBtn=self.OnTester)
     boxBoutons = wx.BoxSizer(wx.HORIZONTAL)
     boxBoutons.Add(btnTest, 0, wx.RIGHT, 20)
     boxBoutons.Add(btnOK, 0, wx.RIGHT, 20)
     return boxBoutons
Exemple #5
0
    def __init__(self, parent,listview =None,ldFiltres=[]):

        # recherche les liste définissants les colonnes
        if not hasattr(listview,'lstNomsColonnes'):
            lstNoms, lstCodes = [],[]
            for col in listview.columns:
                lstNoms.append(col.title)
                lstCodes.append(col.valueGetter)
            listview.lstNomsColonnes = lstNoms
            listview.lstCodesColonnes = lstCodes
        self.lstNomsColonnes = listview.lstNomsColonnes
        self.lstCodesColonnes = listview.lstCodesColonnes

        # recherche la liste des valeurs par défaut pour déterminer le type de la colonne
        if not hasattr(listview,'lstSetterValues'):
            lstSet = []
            for col in listview.columns:
                lstSet.append(col.valueSetter)
            listview.lstSetterValues = lstSet
        for value in listview.lstSetterValues:
            if value == None:
                ix = listview.lstSetterValues.index(value)
                value = listview.CalcNonNullValue(ix)
                listview.lstSetterValues[ix] = value
        self.lstSetterValues = listview.lstSetterValues

        self.listview = listview

        self.codeBox =[x for (x,y) in MATRICE.keys()][0]
        super().__init__(parent,
                                    dldMatrice=MATRICE,
                                    dlColonnes=COLONNES,
                                    lddDonnees=[],
                                    dlChamps=CHAMPS,
                                    lblList="Liste des filtres",
                                    gestionProperty=False,
                                    boxSize=(350,450),
                                    ctrlSize=(280,30),
                                    txtSize=110)

        # alimentation des valeurs premiere combo
        choixColonnes = [x for x in self.lstNomsColonnes if x != 'null' and len(x)>1]
        self.btn.Destroy()
        self.btn = xboutons.BTN_fermer(self,label="Filtrer")
        self.btn.Bind(wx.EVT_BUTTON, self.OnFermer)

        self.Init()
        # alimentation des valeurs possibles premiere combo
        pnlColonne = self.dlgGest.GetPnlCtrl('nomCol')
        pnlColonne.Set(choixColonnes)
        pnlColonne.SetValue(choixColonnes[0])
        pnlColonne.SetFocus()
        self.lstChoix = []
        self.lstTxtChoix = []
        self.SetFiltres(ldFiltres)
    def __init__(self, parent, **kwds):
        style = kwds.pop('style', wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER)
        size = kwds.pop('size', (400, 430))
        self.typeConfig = kwds.pop('typeConfig', None)
        listArbo = os.path.abspath(__file__).split("\\")
        titre = listArbo[-1:][0] + "/" + self.__class__.__name__
        wx.Dialog.__init__(self,
                           parent,
                           -1,
                           title=titre,
                           style=style,
                           size=size)
        self.parent = parent

        # Récup du code de la description des champs pour une configuration
        lstcode = GetLstCodesMatrice(MATRICE_CONFIGS)
        if not self.typeConfig:
            self.typeConfig = lstcode[0]
        if self.parent and 'TYPE_CONFIG' in self.parent.dictAppli:
            self.typeConfig = self.parent.dictAppli['TYPE_CONFIG']
            if not (self.typeConfig in lstcode):
                wx.MessageBox("L'option '%s' n'est pas dans MATRICECONFIGS " %
                              (self.typeConfig))

        ddDonnees = {}
        valeurs = {}
        ident = None
        # Bouton sortie de pied d'écran
        self.btnTest = xboutons.BTN_tester(self)
        self.btn = xboutons.BTN_fermer(self)

        #  IDENT :  appel de l'identification IDENT partie grisée -----------------------------------------------------
        try:
            utilisateur = self.parent.dictUser['utilisateur']
        except:
            utilisateur = None

        for (code, label), lignes in MATRICE_IDENT.items():
            for ligne in lignes:
                if ligne['name'].lower() in ('username', 'user'):
                    valeurs[ligne['name']] = os.environ['USERNAME']
                    ident = code
                if ligne['name'].lower() in ('userdomain', 'domaine',
                                             'workgroup'):
                    try:
                        valeurs[ligne['name']] = os.environ['USERDOMAIN']
                    except:
                        import platform
                        valeurs[ligne['name']] = platform.node()
                if ligne['name'].lower() in ('utilisateur', ):
                    valeurs[ligne['name']] = utilisateur
                    ident = code

        self.ctrlID = xusp.CTRL_property(self,
                                         matrice=MATRICE_IDENT,
                                         enable=False)
        if ident:
            ddDonnees[ident] = valeurs
            self.ctrlID.SetValues(ddDonnees=ddDonnees)

        # recherche dans profilUser ----------------------------------------------------------------------------------
        cfg = xshelve.ParamUser()
        # lecture des valeurs préalablement utilisées
        choixUser = cfg.GetDict(dictDemande=None, groupe='USER', close=True)
        dictAppli = cfg.GetDict(dictDemande=None, groupe='APPLI')
        if dictAppli == {}:
            dictAppli = self.parent.dictAppli
        self.nomAppli = dictAppli['NOM_APPLICATION']

        # CONFIGS : appel du modèle des configurations ----------------------------------------------------------------
        codeBox, labelBox, lignes = xformat.AppelLignesMatrice(
            None, MATRICE_CHOIX_CONFIG)
        # Composition des choix de configurations selon l'implantation
        self.lstChoixConfigs = []
        if self.parent and 'CHOIX_CONFIGS' in self.parent.dictAppli:
            lstchoix = self.parent.dictAppli['CHOIX_CONFIGS']
            for codeBox, labelBox in lstchoix:
                self.lstChoixConfigs.append(
                    ChoixConfig(self, labelBox, codeBox, lignes, {}))
        else:
            # le nom de la configuration c'est le premier champ décrit dans la matrice
            self.lstChoixConfigs.append(
                ChoixConfig(self, labelBox, codeBox, lignes, {}))

        # choix de la configuration prise dans paramFile
        cfgF = xshelve.ParamFile()
        grpConfigs = cfgF.GetDict(dictDemande=None, groupe='CONFIGS')
        # filtrage des des configs selon type retenu
        self.lstIDconfigsOK, self.lstConfigsOK, self.lstConfigsKO = GetLstConfigs(
            grpConfigs, self.typeConfig)
        ddchoixConfigs = grpConfigs.pop('choixConfigs', {})
        # les choix de config sont stockés par application car Data peut être commun à plusieurs
        if not (self.nomAppli in ddchoixConfigs):
            ddchoixConfigs[self.nomAppli] = {}
        choixConfigs = ddchoixConfigs[self.nomAppli]
        # alimente la liste des choix possibles
        for ctrlConfig in self.lstChoixConfigs:
            ctrlConfig.SetOneSet(ctrlConfig.Name, self.lstIDconfigsOK)
            if ctrlConfig.Name in choixConfigs:
                ctrlConfig.SetOneValue(ctrlConfig.Name,
                                       choixConfigs[ctrlConfig.Name])
        # last config sera affichée en 'Fermer' si pas modifiée
        if 'lastConfig' in choixConfigs:
            self.lastConfig = choixConfigs['lastConfig']
        else:
            self.lastConfig = ''

        # SEPARATEUR : simple texte
        self.titre = wx.StaticText(self, -1, "Eléments de connexion")

        self.Sizer()