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
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
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()