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): wx.Dialog.__init__(self, parent, -1, name="DLG_Gestionnaire_conso", style=wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX|wx.MINIMIZE_BOX|wx.THICK_FRAME) self.parent = parent self._mgr = aui.AuiManager() self._mgr.SetManagedWindow(self) # Détermine la taille de la fenêtre self.SetMinSize((700, 600)) taille_fenetre = UTILS_Config.GetParametre("taille_fenetre_tableau_presences") if taille_fenetre == None : self.SetSize((900, 600)) if taille_fenetre == (0, 0) : self.Maximize(True) else: self.SetSize(taille_fenetre) self.CenterOnScreen() # Récupère les perspectives cfg = UTILS_Config.FichierConfig() self.userConfig = cfg.GetDictConfig() if self.userConfig.has_key("gestionnaire_perspectives") == True : self.perspectives = self.userConfig["gestionnaire_perspectives"] else: self.perspectives = [] if self.userConfig.has_key("gestionnaire_perspective_active") == True : self.perspective_active = self.userConfig["gestionnaire_perspective_active"] else: self.perspective_active = None # Création du notebook self.panel_grille = PanelGrille(self) 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_commandes = Commandes(self) self._mgr.AddPane(self.panel_commandes, aui.AuiPaneInfo(). Name("commandes").Caption(_(u"Commandes")). Bottom().Layer(0).Position(1).CaptionVisible(False).CloseButton(False).MaximizeButton(False).MinSize((-1, 50))) self.panel_totaux = CTRL_Grille_totaux.CTRL(self, grille=self.panel_grille.grille) self._mgr.AddPane(self.panel_totaux, aui.AuiPaneInfo(). Name("totaux").Caption(_(u"Totaux")). Bottom().Layer(0).Position(0).Row(1).CloseButton(False).MaximizeButton(False).MinSize((160, 100))) self.panel_calendrier = CTRL_Grille_calendrier.CTRL(self) self._mgr.AddPane(self.panel_calendrier, aui.AuiPaneInfo(). Name("calendrier").Caption(_(u"Sélection de la date")). Left().Layer(1).BestSize(wx.Size(195, 180)).Position(1).CloseButton(False).Fixed().MaximizeButton(False)) self.panel_activites = CTRL_Grille_activite3.CTRL(self) self._mgr.AddPane(self.panel_activites, aui.AuiPaneInfo(). Name("activites").Caption(_(u"Sélection des activités")). Left().Layer(1).Position(1).CloseButton(False).MaximizeButton(False).BestSize(wx.Size(-1,50))) pi = self._mgr.GetPane("activites") pi.dock_proportion = 100000 # Proportion 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.panel_legende.SetSize((50, 50)) self._mgr.AddPane(self.panel_legende, aui.AuiPaneInfo(). Name("legende").Caption(_(u"Légende")). Left().Layer(1).Position(2).CloseButton(False).MaximizeButton(False).MinSize((160, 100)).MaxSize((-1, 120)) ) 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.panel_raccourcis.SetSize((50, 50)) self._mgr.AddPane(self.panel_raccourcis, aui.AuiPaneInfo(). Name("raccourcis").Caption(_(u"Touches raccourcis")). Left().Layer(1).Position(3).CloseButton(False).MaximizeButton(False).MinSize((160, 100)).MaxSize((-1, 120)) ) self._mgr.GetPane("raccourcis").dock_proportion = 60000 self.panel_etiquettes = CTRL_Etiquettes.CTRL(self, activeMenu=False) self._mgr.AddPane(self.panel_etiquettes, aui.AuiPaneInfo(). Name("etiquettes").Caption(_(u"Etiquettes")). Right().Layer(0).Position(0).CloseButton(False).BestSize(wx.Size(275, 100)).MaximizeButton(False).MinSize((275, 100))) self._mgr.GetPane("etiquettes").Hide() 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(1).BestSize(wx.Size(275,140)).Position(4).CloseButton(False).MaximizeButton(False).MinSize((275, 100))) self._mgr.GetPane("forfaits").Hide() # 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) # 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() self._mgr.Update() self.SetTitle(_(u"Gestionnaire des consommations")) self.Bind(wx.EVT_CLOSE, self.OnClose) # Initialisation des contrôles date = self.panel_calendrier.GetDate() ## self.SetDate(date) # Init self.panel_activites.SetCocherParDefaut(UTILS_Config.GetParametre("gestionnaire_conso_cocher_activites", defaut=True)) # 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() ## self._mgr.Update() # Contre le bug de maximize wx.CallAfter(self._mgr.Update)