def __init__(self, parent, listeColonnes=[], listeValeurs=[], type=None): wx.Dialog.__init__(self, parent, -1, title=_(u"Sélection d'éléments"), size=(800, 460)) self.parent = parent # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self.type = type self.listeColonnes = listeColonnes self.listeValeurs = listeValeurs self.label_intro = wx.StaticText(self, -1, _(u"Veuillez sélectionner les éléments de votre choix :")) # ListCtrl self.listCtrl = ListCtrl(self, self.listeColonnes, self.listeValeurs) # Hyperlinks self.hyperlink_select = self.Build_Hyperlink_select() self.label_separation = wx.StaticText(self, -1, u"|") self.hyperlink_deselect = self.Build_Hyperlink_deselect() self.bouton_aide = CTRL_Bouton_image.CTRL(self, texte=_(u"Aide"), cheminImage="Images/32x32/Aide.png") self.bouton_ok = CTRL_Bouton_image.CTRL(self, texte=_(u"Ok"), cheminImage="Images/32x32/Valider.png") self.bouton_annuler = CTRL_Bouton_image.CTRL(self, id=wx.ID_CANCEL, texte=_(u"Annuler"), cheminImage="Images/32x32/Annuler.png") self.__set_properties() self.__do_layout() self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok)
def __init__(self, parent, id=wx.ID_ANY, listeTypes=("famille", "individu"), pos=wx.DefaultPosition, size=wx.DefaultSize, style= wx.BK_DEFAULT): wx.Treebook.__init__(self, parent, id, pos, size, style) self.parent = parent self.listeTypes = listeTypes self.dictControles = self.GetDictControles() # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Création de l'ImageList self.dictImages = {} self.il = wx.ImageList(32, 32) for controle in LISTE_CONTROLES : self.dictImages[controle["code"]] = {"ID":self.il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/32x32/%s" % controle["image"]), wx.BITMAP_TYPE_ANY)), "nom":controle["image"]} for code, label, fichier_image in LISTE_CATEGORIES : self.dictImages[code] = {"ID":self.il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/32x32/%s" % fichier_image), wx.BITMAP_TYPE_ANY)), "nom":fichier_image} self.AssignImageList(self.il) # Binds self.Bind(wx.EVT_TREEBOOK_PAGE_CHANGED, self.OnPageChanged) self.MAJ()
def __init__(self, parent, IDfamille=None, IDindividu=None, dictFamillesRattachees={}, size=(-1, -1), largeurColonne=270 ): HTL.HyperTreeList.__init__(self, parent, -1, size=size) self.parent = parent self.IDfamille = IDfamille self.IDindividu = IDindividu self.dictFamillesRattachees = dictFamillesRattachees # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self.listePiecesObligatoires = [] self.dictItems = {} # Création des colonnes self.AddColumn(_(u"Pièces à fournir")) self.SetColumnWidth(0, largeurColonne) self.SetColumnAlignment(0, wx.ALIGN_LEFT) # ImageList il = wx.ImageList(16, 16) self.img_ok = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Ok.png"), wx.BITMAP_TYPE_PNG)) self.img_attention = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Attention.png"), wx.BITMAP_TYPE_PNG)) self.img_pasok = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Interdit.png"), wx.BITMAP_TYPE_PNG)) self.AssignImageList(il) self.SetAGWWindowStyleFlag(wx.TR_HIDE_ROOT | wx.TR_NO_BUTTONS | wx.TR_HAS_VARIABLE_ROW_HEIGHT | HTL.TR_NO_HEADER) self.SetBackgroundColour(wx.WHITE) # Binds self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnSelection) self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.OnDoubleClick)
def __init__(self, parent): HTL.HyperTreeList.__init__(self, parent, -1) self.parent = parent self.listeImpression = [] # Récupère les noms et adresses de tous les titulaires self.dictTitulaires = UTILS_Titulaires.GetTitulaires() # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Création des colonnes listeColonnes = [ (_(u"Famille/Individu/Prestations"), 250, wx.ALIGN_LEFT), (_(u"Détail"), 250, wx.ALIGN_LEFT), (_(u"Montant"), 70, wx.ALIGN_RIGHT), (_(u"Qté"), 60, wx.ALIGN_CENTER), ] numColonne = 0 for label, largeur, alignement in listeColonnes: self.AddColumn(label) self.SetColumnWidth(numColonne, largeur) self.SetColumnAlignment(numColonne, alignement) numColonne += 1 self.SetBackgroundColour(wx.WHITE) self.SetAGWWindowStyleFlag( wx.TR_HIDE_ROOT | wx.TR_COLUMN_LINES | wx.TR_HAS_VARIABLE_ROW_HEIGHT | wx.TR_FULL_ROW_HIGHLIGHT) # HTL.TR_NO_HEADER self.EnableSelectionVista(True) # Binds self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.OnContextMenu)
def __init__(self, parent, listeIDconso=[]): HTL.HyperTreeList.__init__(self, parent, -1) self.parent = parent # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self.listeIDconso = listeIDconso self.listeImpression = [] # Création des colonnes listeColonnes = [ (_(u"Date/Groupe/Individu"), 250, wx.ALIGN_LEFT), (_(u"Consommations réservées"), 240, wx.ALIGN_LEFT), (_(u"Date de la réservation"), 200, wx.ALIGN_LEFT), ] numColonne = 0 for label, largeur, alignement in listeColonnes: self.AddColumn(label) self.SetColumnWidth(numColonne, largeur) self.SetColumnAlignment(numColonne, alignement) numColonne += 1 self.SetBackgroundColour(wx.WHITE) self.SetAGWWindowStyleFlag( wx.TR_HIDE_ROOT | wx.TR_HAS_VARIABLE_ROW_HEIGHT | wx.TR_FULL_ROW_HIGHLIGHT) # HTL.TR_NO_HEADER self.EnableSelectionVista(True) # Binds self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.OnContextMenu) # Init self.MAJ()
def __init__(self, parent): HTL.HyperTreeList.__init__(self, parent, -1) self.parent = parent self.dictImpression = {} self.dictIndexColonnes = {} # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Création de l'ImageList self.dictImages = { "ligne" : {"img" : wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Ligne.png'), wx.BITMAP_TYPE_PNG), "index" : None, "nomFichier":"Ligne"}, "arret" : {"img" : wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Drapeau.png'), wx.BITMAP_TYPE_PNG), "index" : None, "nomFichier":"Drapeau"}, } for code, valeurs in DICT_CATEGORIES.items() : self.dictImages[code] = {"img" : wx.Bitmap(Chemins.GetStaticPath('Images/16x16/%s.png' % valeurs["image"]), wx.BITMAP_TYPE_PNG), "index" : None, "nomFichier":valeurs["image"]} il = wx.ImageList(16, 16) index =0 for code, dictImage in self.dictImages.items() : il.Add(dictImage["img"]) dictImage["index"] = index index += 1 self.AssignImageList(il) # Style self.SetBackgroundColour(wx.WHITE) if 'phoenix' in wx.PlatformInfo: TR_COLUMN_LINES = HTL.TR_COLUMN_LINES else : TR_COLUMN_LINES = wx.TR_COLUMN_LINES self.SetAGWWindowStyleFlag(wx.TR_HIDE_ROOT | TR_COLUMN_LINES |wx.TR_HAS_VARIABLE_ROW_HEIGHT | wx.TR_FULL_ROW_HIGHLIGHT ) # HTL.TR_NO_HEADER self.EnableSelectionVista(True)
def __init__(self, parent, dictIndividus={}, dictActivites={}, dictGroupes={}, listeSelectionIndividus=[]): ULC.UltimateListCtrl.__init__(self, parent, -1, agwStyle=wx.LC_REPORT | wx.LC_VRULES | wx.LC_HRULES | ULC.ULC_HAS_VARIABLE_ROW_HEIGHT) self.parent = parent # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self.dictIndividus = dictIndividus self.dictActivites = dictActivites self.dictGroupes = dictGroupes self.listeSelectionIndividus = listeSelectionIndividus self.listeActivites = [] self.dictControles = {} self.dictInscriptions = {} # Binds self.Bind(ULC.EVT_LIST_ITEM_CHECKED, self.OnCheck)
def __init__(self, parent, IDactivite=None, IDtarif=None): HTL.HyperTreeList.__init__(self, parent, -1) self.parent = parent self.IDactivite = IDactivite self.IDtarif = IDtarif # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Création des colonnes listeColonnes = [ ( _(u"Groupe/Date"), 200, wx.ALIGN_LEFT), ( _(u"Combinaisons d'unités"), 280, wx.ALIGN_LEFT), ] numColonne = 0 for label, largeur, alignement in listeColonnes : self.AddColumn(label) self.SetColumnWidth(numColonne, largeur) self.SetColumnAlignment(numColonne, alignement) numColonne += 1 # wx.TR_COLUMN_LINES | | wx.TR_HAS_BUTTONS self.SetBackgroundColour(wx.WHITE) self.SetAGWWindowStyleFlag(wx.TR_HIDE_ROOT | wx.TR_COLUMN_LINES | wx.TR_HAS_VARIABLE_ROW_HEIGHT | wx.TR_FULL_ROW_HIGHLIGHT ) # HTL.TR_NO_HEADER self.EnableSelectionVista(True) # Init contrôle self.ImportationInitiale() self.MAJ()
def __init__(self, parent, listePrestations=[]): HTL.HyperTreeList.__init__(self, parent, -1) self.SetAGWWindowStyleFlag(wx.TR_COLUMN_LINES | HTL.TR_NO_HEADER | wx.TR_HIDE_ROOT | wx.TR_FULL_ROW_HIGHLIGHT) self.parent = parent self.SetBackgroundColour(wx.WHITE) # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self.Initialisation() # ImageList il = wx.ImageList(16, 16) self.img_vert = il.Add( wx.Bitmap( Chemins.GetStaticPath("Images/16x16/Ventilation_vert.png"), wx.BITMAP_TYPE_PNG)) self.img_orange = il.Add( wx.Bitmap( Chemins.GetStaticPath("Images/16x16/Ventilation_orange.png"), wx.BITMAP_TYPE_PNG)) self.img_rouge = il.Add( wx.Bitmap( Chemins.GetStaticPath("Images/16x16/Ventilation_rouge.png"), wx.BITMAP_TYPE_PNG)) self.AssignImageList(il)
def __init__(self, parent): HTL.HyperTreeList.__init__(self, parent, -1) self.parent = parent # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Création des colonnes listeColonnes = [ ( _(u"Individu/Date"), 230, wx.ALIGN_LEFT), ( _(u"Unité"), 170, wx.ALIGN_LEFT), ( _(u"Activité"), 170, wx.ALIGN_LEFT), ( _(u"Etat"), 90, wx.ALIGN_LEFT), ] numColonne = 0 for label, largeur, alignement in listeColonnes : self.AddColumn(label) self.SetColumnWidth(numColonne, largeur) self.SetColumnAlignment(numColonne, alignement) numColonne += 1 self.SetBackgroundColour(wx.WHITE) if 'phoenix' in wx.PlatformInfo: TR_COLUMN_LINES = HTL.TR_COLUMN_LINES else : TR_COLUMN_LINES = wx.TR_COLUMN_LINES self.SetAGWWindowStyleFlag(wx.TR_HIDE_ROOT | wx.TR_HAS_VARIABLE_ROW_HEIGHT | TR_COLUMN_LINES | wx.TR_FULL_ROW_HIGHLIGHT ) # HTL.TR_NO_HEADER self.EnableSelectionVista(True) # Binds self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.OnContextMenu) self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.OnDoubleClick)
def __init__(self, parent, IDactivite=None, IDindividu=None, listeGroupes=[], IDdefaut=None): """ typeIndividu = "A" ou "E" (adulte ou enfant) """ """ sexeIndividu = "M" ou "F" (masculin ou féminin) """ """ Lien = ID type lien par défaut """ wx.Choice.__init__(self, parent, id=-1, size=(LARGEUR_COLONNE_GROUPE - 2, -1)) self.parent = parent # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self.IDactivite = IDactivite self.IDindividu = IDindividu self.listeGroupes = listeGroupes self.IDdefaut = IDdefaut self.MAJ() self.Bind(wx.EVT_CHOICE, self.OnChoice) self.SetToolTip( wx.ToolTip(u"""Le groupe par défaut est signalé par une *.\n Vous pouvez sélectionner ponctuellement un autre groupe dans la liste. Le groupe par défaut n'en sera pas pour autant modifié."""))
def __init__(self, parent, dictDonnees={}, dictEtatPlaces={}, dictUnitesRemplissage={}, mode="attente"): HTL.HyperTreeList.__init__(self, parent, -1) self.parent = parent self.mode = mode # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self.dictDonnees = dictDonnees self.dictEtatPlaces = dictEtatPlaces # copy.deepcopy(dictEtatPlaces) self.dictUnitesRemplissage = dictUnitesRemplissage self.listeTracks = [] self.listePeriodes = [] self.listeActivites = [] self.listeImpression = [] # Création des colonnes listeColonnes = [ (_(u"Date/Groupe/Individu"), 250, wx.ALIGN_LEFT), (_(u"Consommations réservées"), 240, wx.ALIGN_LEFT), (_(u"Date de la réservation"), 200, wx.ALIGN_LEFT), ] numColonne = 0 for label, largeur, alignement in listeColonnes: self.AddColumn(label) self.SetColumnWidth(numColonne, largeur) self.SetColumnAlignment(numColonne, alignement) numColonne += 1 # Création de l'ImageList il = wx.ImageList(16, 16) self.img_ok = il.Add( wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Ok.png'), wx.BITMAP_TYPE_PNG)) self.img_pasok = il.Add( wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Interdit.png'), wx.BITMAP_TYPE_PNG)) self.AssignImageList(il) # wx.TR_COLUMN_LINES | | wx.TR_HAS_BUTTONS self.SetBackgroundColour(wx.WHITE) self.SetAGWWindowStyleFlag( wx.TR_HIDE_ROOT | wx.TR_HAS_VARIABLE_ROW_HEIGHT | wx.TR_FULL_ROW_HIGHLIGHT) # HTL.TR_NO_HEADER self.EnableSelectionVista(True) # Binds self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.OnContextMenu) if len(dictDonnees) > 0: self.SetDictDonnees(dictDonnees)
def __init__( self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.TR_HIDE_ROOT | wx.TR_HAS_BUTTONS | wx.TR_HAS_VARIABLE_ROW_HEIGHT, modeSelection=False, ): HTL.HyperTreeList.__init__(self, parent, id, pos, size, style) self.parent = parent self.modeSelection = modeSelection self.IDecole = None self.SetBackgroundColour(wx.WHITE) self.dictNiveaux = self.ImportationNiveaux() # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Création de l'ImageList il = wx.ImageList(16, 16) self.img_ecole = il.Add( wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Ecole.png'), wx.BITMAP_TYPE_PNG)) self.img_classe = il.Add( wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Classe.png'), wx.BITMAP_TYPE_PNG)) self.AssignImageList(il) # Creation des colonnes self.AddColumn(_(u"Saison / Classe")) self.SetColumnWidth(0, 370) self.AddColumn(_(u"Niveaux scolaires")) self.SetColumnWidth(1, 120) self.SetMainColumn(0) # Création des branches self.root = self.AddRoot(_(u"Classes")) self.SetPyData(self.root, {"type": "root", "ID": None}) if 'phoenix' in wx.PlatformInfo: TR_COLUMN_LINES = HTL.TR_COLUMN_LINES else: TR_COLUMN_LINES = wx.TR_COLUMN_LINES self.SetAGWWindowStyleFlag(wx.TR_HIDE_ROOT | TR_COLUMN_LINES | wx.TR_HAS_BUTTONS) # Binds if self.modeSelection == False: self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.OnContextMenu) self.GetMainWindow().Bind(wx.EVT_LEFT_DCLICK, self.OnLeftDClick) else: self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnSelectItem)
def __init__(self, parent): CT.CustomTreeCtrl.__init__(self, parent, -1, style=wx.SUNKEN_BORDER) self.parent = parent # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # wx.TR_COLUMN_LINES | | wx.TR_HAS_BUTTONS self.SetBackgroundColour(wx.WHITE) self.SetAGWWindowStyleFlag( wx.TR_HAS_BUTTONS | wx.TR_HAS_VARIABLE_ROW_HEIGHT | wx.TR_FULL_ROW_HIGHLIGHT | CT.TR_AUTO_CHECK_CHILD) # HTL.TR_NO_HEADER self.EnableSelectionVista(True)
def __init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.DefaultSize, style= wx.TR_HIDE_ROOT | wx.TR_HAS_BUTTONS | wx.TR_HAS_VARIABLE_ROW_HEIGHT, IDactivite=None, ): HTL.HyperTreeList.__init__(self, parent, id, pos, size, style) self.parent = parent self.IDactivite = IDactivite self.SetBackgroundColour(wx.WHITE) # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Création de l'ImageList il = wx.ImageList(16, 16) self.img_categorie = il.Add(wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Dossier.png'), wx.BITMAP_TYPE_PNG)) self.img_categorie_gris = il.Add(wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Dossier_gris.png'), wx.BITMAP_TYPE_PNG)) self.img_nom = il.Add(wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Etiquette.png'), wx.BITMAP_TYPE_PNG)) self.img_nom_gris = il.Add(wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Etiquette_gris.png'), wx.BITMAP_TYPE_PNG)) self.img_tarif = il.Add(wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Euro.png'), wx.BITMAP_TYPE_PNG)) self.img_tarif_gris = il.Add(wx.Bitmap(Chemins.GetStaticPath('Images/16x16/Euro_gris.png'), wx.BITMAP_TYPE_PNG)) self.AssignImageList(il) # Creation des colonnes self.AddColumn(_(u"Prestations / Tarifs")) self.SetColumnWidth(0, 250) self.AddColumn(_(u"Description du tarif")) self.SetColumnWidth(1, 230) self.AddColumn(_(u"Catégories de tarifs")) self.SetColumnWidth(2, 180) self.AddColumn(_(u"Méthode de calcul")) self.SetColumnWidth(3, 230) self.SetMainColumn(0) # Création des branches self.root = self.AddRoot(_(u"Tarifs")) self.SetPyData(self.root, {"type" : "root", "ID" : None} ) if 'phoenix' in wx.PlatformInfo: TR_COLUMN_LINES = HTL.TR_COLUMN_LINES else : TR_COLUMN_LINES = wx.TR_COLUMN_LINES self.SetAGWWindowStyleFlag(TR_COLUMN_LINES) # Binds self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.OnContextMenu) self.GetMainWindow().Bind(wx.EVT_LEFT_DCLICK, self.OnLeftDClick)
def __init__(self, parent, grille=None): HTL.HyperTreeList.__init__(self, parent, -1) self.SetAGWWindowStyleFlag(wx.TR_COLUMN_LINES | HTL.TR_NO_HEADER | wx.TR_HIDE_ROOT | wx.TR_FULL_ROW_HIGHLIGHT) self.parent = parent self.grille = grille self.IDfamille = None self.date = None self.dictBranches = {} self.SetBackgroundColour(wx.WHITE) # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self)
def __init__(self, parent): ULC.UltimateListCtrl.__init__(self, parent, -1, agwStyle=wx.LC_REPORT | ULC.ULC_HAS_VARIABLE_ROW_HEIGHT | wx.LC_NO_HEADER) self.parent = parent self.IDindividu = None self.EnableSelectionVista() # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Binds self.Bind(ULC.EVT_LIST_ITEM_CHECKED, self.OnCheck)
def __init__(self, parent, IDactivite=None): HTL.HyperTreeList.__init__(self, parent, -1, style=wx.TR_DEFAULT_STYLE) self.IDactivite = IDactivite # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Création de la colonne principale self.AddColumn(_(u"Périodes / Groupes")) self.SetMainColumn(0) self.SetColumnWidth(0, 190) # wx.TR_COLUMN_LINES | | wx.TR_HAS_BUTTONS self.SetBackgroundColour(wx.WHITE) self.SetAGWWindowStyleFlag( wx.TR_HIDE_ROOT | wx.TR_COLUMN_LINES | wx.TR_HAS_BUTTONS | wx.TR_HAS_VARIABLE_ROW_HEIGHT | wx.TR_FULL_ROW_HIGHLIGHT) # HTL.TR_NO_HEADER
def __init__(self, parent, grille=None, listePrestations=[]): HTL.HyperTreeList.__init__(self, parent, -1) self.SetAGWWindowStyleFlag(HTL.TR_NO_HEADER | wx.TR_HIDE_ROOT | wx.TR_FULL_ROW_HIGHLIGHT) self.parent = parent self.grille = grille self.dictForfaits = {} self.listeSelectionIndividus = [] self.dictActivites = {} self.SetBackgroundColour(wx.WHITE) # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Binds self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.Modifier) self.GetMainWindow().Bind(wx.EVT_RIGHT_UP, self.OnContextMenu)
def __init__(self, parent): wx.TreeCtrl.__init__(self, parent, -1, style=wx.SUNKEN_BORDER | wx.TR_HIDE_ROOT | wx.TR_NO_BUTTONS) self.parent = parent # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Binds self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.OnDoubleClick) # Données self.listeElements = [ {"code" : "elements_speciaux", "label" : _(u"Eléments spéciaux"), "elements" : [ {"code" : "|", "infobulle" : u"<Séparateur>", "image" : "Images/16x16/Barreoutils_separator.png"}, {"code" : "-", "infobulle" : u"<Espace>", "image" : "Images/16x16/Barreoutils_spacer.png"}, ]}, {"code" : "elements_menus", "label" : _(u"Eléments du menu"), "elements" : GetListeItemsMenu() }, ] # Création de l'ImageList il = wx.ImageList(16, 16) self.dictImages = {} # Image catégorie self.dictImages["categorie"] = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Dossier.png"), wx.BITMAP_TYPE_PNG)) # Images des éléments for dictCategorie in self.listeElements : for dictItem in dictCategorie["elements"] : if dictItem.has_key("image") : self.dictImages[dictItem["code"]] = il.Add(wx.Bitmap(Chemins.GetStaticPath(dictItem["image"]), wx.BITMAP_TYPE_PNG)) self.AssignImageList(il) # Création de la racine self.root = self.AddRoot("Racine")
def __init__(self, parent, IDfamille=None, IDindividu=None, dictFamillesRattachees={}, size=(-1, -1) ): wx.TreeCtrl.__init__(self, parent, -1, size=size, style=wx.TR_HIDE_ROOT | wx.TR_NO_BUTTONS) self.parent = parent self.IDfamille = IDfamille self.IDindividu = IDindividu self.dictFamillesRattachees = dictFamillesRattachees # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) couleur_fond = UTILS_Interface.GetValeur("couleur_tres_claire", wx.Colour(240, 251, 237)) self.SetBackgroundColour(couleur_fond) self.listePiecesObligatoires = [] self.dictItems = {} # Création des colonnes ## self.AddColumn(_(u"Informations")) ## self.SetColumnWidth(0, 270) ## self.SetColumnAlignment(0, wx.ALIGN_LEFT) # ImageList il = wx.ImageList(16, 16) self.img_messages = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Mail.png"), wx.BITMAP_TYPE_PNG)) self.img_pieces = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Dupliquer.png"), wx.BITMAP_TYPE_PNG)) self.img_renseignements = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Identite.png"), wx.BITMAP_TYPE_PNG)) self.img_vaccins = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Seringue.png"), wx.BITMAP_TYPE_PNG)) self.img_attention = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Attention.png"), wx.BITMAP_TYPE_PNG)) self.img_pasok = il.Add(wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Interdit.png"), wx.BITMAP_TYPE_PNG)) self.AssignImageList(il) ## self.SetAGWWindowStyleFlag(wx.TR_HIDE_ROOT | wx.TR_NO_BUTTONS | wx.TR_HAS_VARIABLE_ROW_HEIGHT | HTL.TR_NO_HEADER) # Binds self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.OnDoubleClick) self.Bind(wx.EVT_RIGHT_DOWN, self.OnContextMenu)
def __init__(self, parent, IDfamille=None): wx.Dialog.__init__(self, parent, -1, name="DLG_Rattachement", style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX) self.IDfamille = IDfamille self.mode = None # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self.nbreTitulaires = self.GetNbreTitulairesFamille() # Bandeau titre = _(u"Rattachement d'un individu") intro = _( u"Commencez par sélectionner une catégorie de rattachement puis saisissez son nom et son prénom. Si l'individu apparait dans la liste, sélectionnez-le. Sinon créez une nouvelle fiche individuelle." ) self.ctrl_bandeau = CTRL_Bandeau.Bandeau( self, titre=titre, texte=intro, hauteurHtml=30, nomImage="Images/32x32/Famille.png") # Categorie self.staticbox_categorie_staticbox = wx.StaticBox( self, -1, _(u"1. Sélection de la catégorie de rattachement")) self.bouton_categorie_1 = wx.ToggleButton(self, 1, _(u"Représentant")) self.bouton_categorie_2 = wx.ToggleButton(self, 2, _(u"Enfant")) self.bouton_categorie_3 = wx.ToggleButton(self, 3, _(u"Contact")) self.ctrl_titulaire = wx.CheckBox(self, -1, _(u"Titulaire du dossier famille")) self.selection_categorie = None if self.nbreTitulaires == 0: self.bouton_categorie_2.Enable(False) self.bouton_categorie_3.Enable(False) # Sélection individu self.staticbox_selection_staticbox = wx.StaticBox( self, -1, _(u"2. Saisie du nom de l'individu")) self.ctrl_propositions = OL_Individus.ListView( self, id=-1, style=wx.LC_REPORT | wx.SUNKEN_BORDER | wx.LC_SINGLE_SEL | wx.LC_HRULES | wx.LC_VRULES) self.ctrl_propositions.dictParametres["archives"] = True self.label_nom = wx.StaticText(self, -1, _(u"Nom :")) self.ctrl_nom = CtrlRecherche(self, numColonne=1) self.label_prenom = wx.StaticText(self, -1, _(u"Prénom :")) self.ctrl_prenom = wx.TextCtrl(self, -1, "") #CtrlRecherche(self, numColonne=2) # Txt remarque txtRemarque = u""" <IMG SRC="Static/Images/16x16/Attention2.png"> <FONT SIZE=-1> Si l'individu à rattacher n'apparaît pas dans cette liste, vous devez cliquez sur ce bouton <A HREF="Saisie">Saisir un nouvel individu</A> pour créer une nouvelle fiche individuelle. </FONT> """ self.ctrl_html = MyHtml(self, texte=txtRemarque, hauteur=31) # Boutons self.bouton_aide = CTRL_Bouton_image.CTRL( self, texte=_(u"Aide"), cheminImage="Images/32x32/Aide.png") self.bouton_ok = CTRL_Bouton_image.CTRL( self, texte=_(u"Ok"), cheminImage="Images/32x32/Valider.png") self.bouton_annuler = CTRL_Bouton_image.CTRL( self, id=wx.ID_CANCEL, texte=_(u"Annuler"), cheminImage="Images/32x32/Annuler.png") self.__set_properties() self.__do_layout() self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_TOGGLEBUTTON, self.OnToggle, self.bouton_categorie_1) self.Bind(wx.EVT_TOGGLEBUTTON, self.OnToggle, self.bouton_categorie_2) self.Bind(wx.EVT_TOGGLEBUTTON, self.OnToggle, self.bouton_categorie_3) self.ActiveControles(False) self.ctrl_titulaire.Enable(False)
def __init__(self, parent, IDfamille=None, selectionIndividus=[], selectionTous=False): wx.Dialog.__init__(self, parent, -1, name="grille", style=wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX|wx.MINIMIZE_BOX) self.parent = parent self.IDfamille = IDfamille # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) self._mgr = aui.AuiManager() self._mgr.SetManagedWindow(self) self.SetTitle(_(u"Grille des consommations")) # Récupère les perspectives cfg = UTILS_Config.FichierConfig() self.userConfig = cfg.GetDictConfig() if self.userConfig.has_key("grille_perspectives") == True : self.perspectives = self.userConfig["grille_perspectives"] else: self.perspectives = [] if self.userConfig.has_key("grille_perspective_active") == True : self.perspective_active = self.userConfig["grille_perspective_active"] else: self.perspective_active = None # Création du notebook self.panel_grille = PanelGrille(self, "individu", self.IDfamille) self.dictActivites = self.panel_grille.grille.dictActivites self.dictIndividus = self.panel_grille.grille.dictIndividus self.dictGroupes = self.panel_grille.grille.dictGroupes self.listeSelectionIndividus = self.panel_grille.grille.listeSelectionIndividus # Création des panels amovibles self.panel_periode = CTRL_Grille_periode.CTRL(self) dictDonnees = UTILS_Config.GetParametre("dict_selection_periodes_activites") self.panel_periode.SetDictDonnees(dictDonnees) self._mgr.AddPane(self.panel_periode, aui.AuiPaneInfo(). Name("periode").Caption(_(u"Sélection de la période")). Top().Layer(1).BestSize(wx.Size(230,144)).Position(1).CloseButton(False).Fixed().MaximizeButton(False)) self.panel_individus = CTRL_Grille_individus.CTRL(self, self.IDfamille, self.dictIndividus, selectionIndividus, selectionTous) self._mgr.AddPane(self.panel_individus, aui.AuiPaneInfo(). Name("individus").Caption(_(u"Sélection des individus")). Top().Layer(1).BestSize(wx.Size(180,140)).Position(2).CloseButton(False).MaximizeButton(False).MinSize((10, 100))) self.panel_activites = CTRL_Grille_activite2.CTRL(self, self.dictIndividus, self.dictActivites, self.dictGroupes, self.listeSelectionIndividus) self._mgr.AddPane(self.panel_activites, aui.AuiPaneInfo(). Name("activites").Caption(_(u"Sélection des activités")). Top().Layer(1).Position(3).CloseButton(False).MaximizeButton(False).MinSize((160, 100))) self.panel_facturation = CTRL_Grille_facturation.CTRL(self) self._mgr.AddPane(self.panel_facturation, aui.AuiPaneInfo(). Name("facturation").Caption(_(u"Facturation")). Right().Layer(0).BestSize(wx.Size(275,140)).Position(3).CloseButton(False).MaximizeButton(False).MinSize((275, 100))) self.panel_etiquettes = CTRL_Etiquettes.CTRL(self, activeMenu=False, onCheck=self.panel_grille.grille.MAJ_affichage) self._mgr.AddPane(self.panel_etiquettes, aui.AuiPaneInfo(). Name("etiquettes").Caption(_(u"Etiquettes")). Right().Layer(0).Position(3).CloseButton(False).BestSize(wx.Size(275, 100)).MaximizeButton(False).MinSize((275, 100))) self.panel_forfaits = CTRL_Grille_forfaits.CTRL(self, grille=self.panel_grille.grille) self._mgr.AddPane(self.panel_forfaits, aui.AuiPaneInfo(). Name("forfaits").Caption(_(u"Forfaits crédits")). Right().Layer(0).Position(4).BestSize(wx.Size(275,140)).CloseButton(False).MaximizeButton(False).MinSize((275, 100))) self._mgr.GetPane("forfaits").dock_proportion = 50000 self.panel_commandes = Commandes(self) self._mgr.AddPane(self.panel_commandes, aui.AuiPaneInfo(). Name("commandes").Caption(_(u"Commandes")). Bottom().Layer(0).CaptionVisible(False).CloseButton(False).MaximizeButton(False).MinSize((-1, 50))) self.panel_legende = OL_Legende_grille.ListView(self, id=-1, name="OL_legende", style=wx.LC_REPORT|wx.LC_NO_HEADER | wx.SUNKEN_BORDER|wx.LC_SINGLE_SEL) self._mgr.AddPane(self.panel_legende, aui.AuiPaneInfo(). Name("legende").Caption(_(u"Légende")). Left().Layer(0).Position(2).CloseButton(False).BestSize(wx.Size(170, 100)).MaximizeButton(False).MinSize((170, 100))) self._mgr.GetPane("legende").dock_proportion = 60000 self.panel_raccourcis = OL_Raccourcis_grille.ListView(self, id=-1, name="OL_raccourcis", style=wx.LC_REPORT|wx.LC_NO_HEADER | wx.SUNKEN_BORDER|wx.LC_SINGLE_SEL) self._mgr.AddPane(self.panel_raccourcis, aui.AuiPaneInfo(). Name("raccourcis").Caption(_(u"Touches raccourcis")). Left().Layer(0).Position(2).CloseButton(False).BestSize(wx.Size(170, 100)).MaximizeButton(False).MinSize((170, 100))) self._mgr.GetPane("raccourcis").dock_proportion = 30000 # Création du panel central self._mgr.AddPane(self.panel_grille, aui.AuiPaneInfo().Name("grille"). CenterPane()) self._mgr.GetPane("grille").Show() # Sauvegarde de la perspective par défaut self.perspective_defaut = self._mgr.SavePerspective() # Récupération de la perspective chargée if self.perspective_active != None : self._mgr.LoadPerspective(self.perspectives[self.perspective_active]["perspective"]) else: self._mgr.LoadPerspective(self.perspective_defaut) self._mgr.Update() self.Bind(wx.EVT_CLOSE, self.OnClose) # Détermine la taille de la fenêtre self.SetMinSize((600, 670)) taille_fenetre = UTILS_Config.GetParametre("taille_fenetre_grille") if taille_fenetre == None : self.SetSize((900, 670)) if taille_fenetre == (0, 0) : self.Maximize(True) else: self.SetSize(taille_fenetre) self.CenterOnScreen() # Initialisation des contrôles self.panel_periode.SetVisibleSelection() self.SetListesPeriodes(self.panel_periode.GetDatesSelections()) self.SetListeSelectionIndividus(self.panel_individus.GetSelections()) self.SetListeSelectionActivites(self.panel_activites.ctrl_activites.GetIDcoches()) self.MAJ_grille() # Affichage du panneau du panneau Forfait Credits if self.panel_grille.grille.tarifsForfaitsCreditsPresents == True : self._mgr.GetPane("forfaits").Show() else: self._mgr.GetPane("forfaits").Hide() # Affichage du panneau du panneau Etiquettes if self.panel_grille.grille.afficherListeEtiquettes == True : self._mgr.GetPane("etiquettes").Show() else: self._mgr.GetPane("etiquettes").Hide() # Contre le bug de maximize wx.CallAfter(self._mgr.Update) wx.CallAfter(self.panel_grille.grille.SetFocus)
def __init__(self, parent, IDfamille=None, AfficherMessagesOuverture=True): wx.Dialog.__init__(self, parent, id=-1, name="fiche_famille", style=wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX|wx.MINIMIZE_BOX) self.parent = parent self.IDfamille = IDfamille self.nouvelleFiche = False if IDfamille == None : self.CreateIDfamille() self.nouvelleFiche = True # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) # Composition self.sizer_composition_staticbox = wx.StaticBox(self, -1, _(u"Composition de la famille")) self.ctrl_composition = CTRL_Composition.Notebook(self, IDfamille=self.IDfamille) self.bouton_ajouter = wx.BitmapButton(self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Ajouter.png"), wx.BITMAP_TYPE_ANY)) self.bouton_modifier = wx.BitmapButton(self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Modifier.png"), wx.BITMAP_TYPE_ANY)) self.bouton_supprimer = wx.BitmapButton(self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Supprimer.png"), wx.BITMAP_TYPE_ANY)) self.bouton_calendrier = wx.BitmapButton(self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Calendrier.png"), wx.BITMAP_TYPE_ANY)) self.bouton_liens_famille = wx.BitmapButton(self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Composition.png"), wx.BITMAP_TYPE_ANY)) # Notebook self.notebook = Notebook(self, IDfamille=self.IDfamille) # Boutons de commande self.bouton_aide = CTRL_Bouton_image.CTRL(self, texte=_(u"Aide"), cheminImage="Images/32x32/Aide.png") self.bouton_options = CTRL_Bouton_image.CTRL(self, texte=_(u"Options"), cheminImage="Images/32x32/Configuration2.png") self.bouton_outils = CTRL_Bouton_image.CTRL(self, texte=_(u"Outils"), cheminImage="Images/32x32/Configuration.png") self.bouton_consommations = CTRL_Bouton_image.CTRL(self, texte=_(u"Consommations"), cheminImage="Images/32x32/Calendrier.png") self.bouton_saisie_reglement = CTRL_Bouton_image.CTRL(self, texte=_(u"Saisir un règlement"), cheminImage="Images/32x32/Reglement.png") self.bouton_ok = CTRL_Bouton_image.CTRL(self, texte=_(u"Ok"), cheminImage="Images/32x32/Valider.png") self.bouton_annuler = CTRL_Bouton_image.CTRL(self, texte=_(u"Annuler"), cheminImage="Images/32x32/Annuler.png") self.__set_properties() self.__do_layout() self.Bind(wx.EVT_BUTTON, self.OnBoutonAjouterIndividu, self.bouton_ajouter) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonOptions, self.bouton_options) self.Bind(wx.EVT_BUTTON, self.OnBoutonOutils, self.bouton_outils) self.Bind(wx.EVT_BUTTON, self.OnBoutonLiens, self.bouton_liens_famille) self.Bind(wx.EVT_BUTTON, self.OnBoutonCalendrier, self.bouton_calendrier) self.Bind(wx.EVT_BUTTON, self.OnBoutonConsommations, self.bouton_consommations) self.Bind(wx.EVT_BUTTON, self.OnBoutonSaisieReglement, self.bouton_saisie_reglement) self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) self.Bind(wx.EVT_BUTTON, self.OnBoutonAnnuler, self.bouton_annuler) self.Bind(wx.EVT_CLOSE, self.OnClose) self.Bind(wx.EVT_BUTTON, self.OnBoutonAjouter, self.bouton_ajouter) self.Bind(wx.EVT_BUTTON, self.OnBoutonModifier, self.bouton_modifier) self.Bind(wx.EVT_BUTTON, self.OnBoutonSupprimer, self.bouton_supprimer) self.notebook.SetFocus() # Si c'est une nouvelle fiche, on propose immédiatement la création d'un individu if self.nouvelleFiche == True : wx.CallAfter(self.CreerPremierIndividu) # Cache le bouton de saisie d'un règlement si l'onglet Règlements est caché if ("reglements" in self.notebook.dictPages) == False : self.bouton_saisie_reglement.Show(False) # MAJ de l'onglet Informations self.notebook.GetPageAvecCode("informations").MAJ() # MAJ CTRL composition code = UTILS_Config.GetParametre("affichage_composition_famille", defaut="graphique") self.ctrl_composition.AffichePage(code) self.ctrl_composition.MAJ() # Affiche les messages à l'ouverture de la fiche famille if AfficherMessagesOuverture == True : self.AfficheMessagesOuverture()
def __init__(self, parent, IDindividu=None, dictInfosNouveau={}): wx.Dialog.__init__(self, parent, id=-1, name="fiche_individu", style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX) self.IDindividu = IDindividu self.dictInfosNouveau = dictInfosNouveau self.nouvelleFiche = False # Adapte taille Police pour Linux from Utils import UTILS_Linux UTILS_Linux.AdaptePolice(self) if IDindividu == None and len(self.dictInfosNouveau) > 0: self.nouvelleFiche = True # Création de l'IDindividu self.CreateIDindividu() # Création du rattachement à la famille self.RattacherIndividu(self.dictInfosNouveau["IDfamille"], self.dictInfosNouveau["IDcategorie"], self.dictInfosNouveau["titulaire"]) # Recherche des familles rattachées if self.IDindividu != None: self.dictFamillesRattachees = self.GetFamillesRattachees() else: self.dictFamillesRattachees = {} self.ctrl_ID = wx.StaticText( self, -1, _(u"Rattaché à aucune famille | ID : %d") % self.IDindividu) self.ctrl_ligne = wx.StaticLine(self, -1) self.ctrl_nom = wx.StaticText(self, -1, _(u"NOM, Prénom")) self.ctrl_datenaiss = wx.StaticText(self, -1, _(u"Date de naissance inconnue")) self.ctrl_adresse = wx.StaticText(self, -1, _(u"Lieu de résidence inconnu")) couleurFond = self.ctrl_adresse.GetBackgroundColour( ) #wx.SystemSettings.GetColour(30) self.ctrl_liens = CTRL_header_rattachement( self, couleurFond=couleurFond ) #wx.StaticText(self, -1, _(u"Aucun rattachement")) self.ctrl_photo = CTRL_Photo.CTRL_Photo(self, style=wx.SUNKEN_BORDER) self.ctrl_photo.SetPhoto( IDindividu=None, nomFichier=Chemins.GetStaticPath("Images/128x128/Personne.png"), taillePhoto=(128, 128), qualite=100) self.ctrl_notebook = Notebook( self, IDindividu=self.IDindividu, dictFamillesRattachees=self.dictFamillesRattachees) self.bouton_ok = CTRL_Bouton_image.CTRL( self, texte=_(u"Ok"), cheminImage="Images/32x32/Valider.png") self.bouton_annuler = CTRL_Bouton_image.CTRL( self, texte=_(u"Annuler"), cheminImage="Images/32x32/Annuler.png") self.bouton_options = CTRL_Bouton_image.CTRL( self, texte=_(u"Options"), cheminImage="Images/32x32/Configuration2.png") self.bouton_outils = CTRL_Bouton_image.CTRL( self, texte=_(u"Outils"), cheminImage="Images/32x32/Configuration.png") self.bouton_aide = CTRL_Bouton_image.CTRL( self, texte=_(u"Aide"), cheminImage="Images/32x32/Aide.png") self.__set_properties() self.__do_layout() self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonOptions, self.bouton_options) self.Bind(wx.EVT_BUTTON, self.OnBoutonOutils, self.bouton_outils) self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) self.Bind(wx.EVT_BUTTON, self.OnBoutonAnnuler, self.bouton_annuler) self.Bind(wx.EVT_CLOSE, self.OnClose) # Importation des données ## if self.nouvelleFiche == False : ## listePages = ("identite", "coords") ## for codePage in listePages : ## self.ctrl_notebook.GetPage(codePage).MAJ() self.ctrl_notebook.GetPageAvecCode("identite").MAJ() self.ctrl_notebook.GetPageAvecCode("coords").MAJ() # Saisie des infos par défaut pour la nouvelle fiche if self.nouvelleFiche == True: pageIdentite = self.ctrl_notebook.GetPageAvecCode("identite") pageIdentite.SetValeursDefaut( self.dictInfosNouveau["nom"], self.dictInfosNouveau["prenom"], self.dictInfosNouveau["IDcategorie"], ) pageIdentite.majEffectuee = True # Si c'est un nouveau contact, on se met sur adresse manuelle if self.dictInfosNouveau["IDcategorie"] == 3: pageCoords = self.ctrl_notebook.GetPageAvecCode("coords") pageCoords.radio_adresse_manuelle.SetValue(True) pageCoords.OnRadioAdresse(None) # On met à jour les pages spéciales autre que "Identité" ## listePages = ("liens", "coords") ## for codePage in listePages : ## page = self.ctrl_notebook.GetPageAvecCode(codePage) ## page.MAJ() ## page.majEffectuee = True # Mise à jour du header self.MAJtexteRattachementHeader() # MAJ de l'onglet Informations self.ctrl_notebook.GetPageAvecCode("informations").MAJ()
def __init__(self, parent, IDfamille=None): wx.Panel.__init__(self, parent, id=-1, name="panel_informations", style=wx.TAB_TRAVERSAL) self.parent = parent self.IDfamille = IDfamille # Informations self.staticbox_infos = wx.StaticBox(self, -1, _(u"Messages")) self.ctrl_infos = CTRL_Informations.CTRL(self, IDfamille=self.IDfamille) self.bouton_ajouter = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath(u"Images/16x16/Ajouter.png"), wx.BITMAP_TYPE_ANY)) self.bouton_modifier = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath(u"Images/16x16/Modifier.png"), wx.BITMAP_TYPE_ANY)) self.bouton_supprimer = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath(u"Images/16x16/Supprimer.png"), wx.BITMAP_TYPE_ANY)) # Etat de la facturation self.staticbox_facturation = wx.StaticBox(self, -1, _(u"Etat du compte")) self.ctrl_facturation = OL_Etat_compte.ListView( self, id=-1, IDfamille=self.IDfamille, name="OL_Etat_compte", style=wx.LC_REPORT | wx.LC_NO_HEADER | wx.SUNKEN_BORDER | wx.LC_SINGLE_SEL | wx.LC_HRULES | wx.LC_VRULES) self.ctrl_facturation.SetMinSize((220, 20)) if "linux" in sys.platform: UTILS_Linux.AdaptePolice(self.ctrl_facturation) # Solde du compte self.staticbox_solde = wx.StaticBox(self, -1, _(u"Solde du compte")) self.ctrl_solde = CTRL_Solde(self) # Binds self.Bind(wx.EVT_BUTTON, self.OnBoutonAjouter, self.bouton_ajouter) self.Bind(wx.EVT_BUTTON, self.OnBoutonModifier, self.bouton_modifier) self.Bind(wx.EVT_BUTTON, self.OnBoutonSupprimer, self.bouton_supprimer) # Propriétés self.bouton_ajouter.SetToolTip( wx.ToolTip(_(u"Cliquez ici pour saisir un mémo familial"))) self.bouton_modifier.SetToolTip( wx.ToolTip( _(u"Cliquez ici pour modifier le mémo familial sélectionné") )) self.bouton_supprimer.SetToolTip( wx.ToolTip( _(u"Cliquez ici pour supprimer le mémo familial sélectionné" ))) # Layout grid_sizer_base = wx.FlexGridSizer(rows=1, cols=2, vgap=5, hgap=5) # Infos staticbox_infos = wx.StaticBoxSizer(self.staticbox_infos, wx.VERTICAL) grid_sizer_infos = wx.FlexGridSizer(rows=2, cols=2, vgap=5, hgap=5) grid_sizer_infos.Add(self.ctrl_infos, 1, wx.EXPAND, 0) grid_sizer_boutons = wx.FlexGridSizer(rows=6, cols=1, vgap=5, hgap=5) grid_sizer_boutons.Add(self.bouton_ajouter, 0, wx.ALL, 0) grid_sizer_boutons.Add(self.bouton_modifier, 0, wx.ALL, 0) grid_sizer_boutons.Add(self.bouton_supprimer, 0, wx.ALL, 0) grid_sizer_infos.Add(grid_sizer_boutons, 1, wx.ALL, 0) grid_sizer_infos.AddGrowableCol(0) grid_sizer_infos.AddGrowableRow(0) staticbox_infos.Add(grid_sizer_infos, 1, wx.EXPAND | wx.ALL, 5) grid_sizer_base.Add(staticbox_infos, 1, wx.EXPAND | wx.ALL, 5) grid_sizer_compte = wx.FlexGridSizer(rows=2, cols=1, vgap=0, hgap=0) # Facturation staticbox_facturation = wx.StaticBoxSizer(self.staticbox_facturation, wx.VERTICAL) grid_sizer_facturation = wx.FlexGridSizer(rows=2, cols=1, vgap=5, hgap=5) grid_sizer_facturation.Add(self.ctrl_facturation, 1, wx.EXPAND, 0) grid_sizer_facturation.AddGrowableCol(0) grid_sizer_facturation.AddGrowableRow(0) staticbox_facturation.Add(grid_sizer_facturation, 1, wx.EXPAND | wx.ALL, 5) grid_sizer_compte.Add(staticbox_facturation, 1, wx.EXPAND | wx.ALL, 5) # Solde staticbox_solde = wx.StaticBoxSizer(self.staticbox_solde, wx.VERTICAL) grid_sizer_solde = wx.FlexGridSizer(rows=2, cols=1, vgap=5, hgap=5) grid_sizer_solde.Add(self.ctrl_solde, 1, wx.EXPAND, 0) grid_sizer_solde.AddGrowableCol(0) grid_sizer_solde.AddGrowableRow(0) staticbox_solde.Add(grid_sizer_solde, 1, wx.EXPAND | wx.ALL, 5) grid_sizer_compte.Add(staticbox_solde, 1, wx.EXPAND | wx.ALL, 5) grid_sizer_compte.AddGrowableCol(0) grid_sizer_compte.AddGrowableRow(0) grid_sizer_base.Add(grid_sizer_compte, 1, wx.EXPAND, 0) self.SetSizer(grid_sizer_base) grid_sizer_base.Fit(self) grid_sizer_base.AddGrowableCol(0) grid_sizer_base.AddGrowableRow(0)