def __init__(self, parent, mode="saisie", IDindividu=None, IDinscription=None, IDfamille=None, cp=None, ville=None, intro=None): wx.Dialog.__init__(self, parent, -1, style=wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX|wx.MINIMIZE_BOX|wx.THICK_FRAME) self.parent = parent self.IDindividu = IDindividu self.IDinscription = IDinscription self.IDfamille = IDfamille self.cp = cp self.ville = ville self.dictActivite = None self.IDgroupe = None self.mode = mode if intro == None : intro = _(u"Pour inscrire un individu à une activité, vous devez sélectionner une activité, un groupe et une catégorie de tarifs.") if self.mode == "saisie" : titre = _(u"Saisie d'une inscription") else : titre = _(u"Modification d'une inscription") self.ctrl_bandeau = CTRL_Bandeau.Bandeau(self, titre=titre, texte=intro, hauteurHtml=30, nomImage="Images/32x32/Activite.png") self.ctrl_famille = Choix_famille(self, IDindividu=self.IDindividu, verrouillage=self.mode!="saisie") self.staticbox_activite_staticbox = wx.StaticBox(self, -1, _(u"Activité")) self.ctrl_activite = CTRL_Activite(self) self.bouton_activites = CTRL_Bouton_image.CTRL(self, texte=_(u"Rechercher"), cheminImage="Images/32x32/Loupe.png") self.ctrl_activite.SetMinSize((-1, self.bouton_activites.GetSize()[1])) self.staticbox_groupe_staticbox = wx.StaticBox(self, -1, _(u"Groupe")) self.ctrl_groupes = ListBox(self, type="groupes") self.ctrl_groupes.SetMinSize((-1, 80)) self.staticbox_categorie_staticbox = wx.StaticBox(self, -1, _(u"Catégorie de tarif")) self.ctrl_categories = ListBox(self, type="categories") self.ctrl_categories.SetMinSize((-1, 80)) self.ctrl_parti = wx.CheckBox(self, -1, _(u"Est parti")) 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.OnBoutonActivites, self.bouton_activites) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) # Init contrôles self.ctrl_famille.SetID(self.IDfamille) if self.mode != "saisie" : self.bouton_activites.Show(False) self.Importation() if self.mode == "saisie" : if cp == None : # Recherche cp et ville dict_coords = UTILS_Titulaires.GetCoordsIndividu(self.IDindividu) if dict_coords != None : self.cp = dict_coords["cp_resid"] self.ville = dict_coords["ville_resid"]
def __init__(self, parent, IDinscription=None): wx.Panel.__init__(self, parent, id=-1, style=wx.TAB_TRAVERSAL) self.parent = parent self.IDinscription = IDinscription self.dictActivite = None self.IDgroupe = None self.date_inscription = datetime.date.today() self.dict_remboursement = None self.action_consommation = None self.ancien_statut = None # Activité self.staticbox_activite_staticbox = wx.StaticBox( self, -1, _(u"Activité")) self.ctrl_activite = CTRL_Activite(self) self.bouton_activites = CTRL_Bouton_image.CTRL( self, texte=_(u"Rechercher"), cheminImage="Images/32x32/Loupe.png") self.ctrl_activite.SetMinSize((-1, self.bouton_activites.GetSize()[1])) # Groupe self.staticbox_groupe_staticbox = wx.StaticBox(self, -1, _(u"Groupe")) self.ctrl_groupes = ListBox(self, type="groupes") self.ctrl_groupes.SetMinSize((-1, 50)) # Catégorie self.staticbox_categorie_staticbox = wx.StaticBox( self, -1, _(u"Catégorie de tarif")) self.ctrl_categories = ListBox(self, type="categories") self.ctrl_categories.SetMinSize((-1, 50)) # Départ self.staticbox_depart_staticbox = wx.StaticBox( self, -1, _(u"Départ de l'activité")) self.ctrl_check_depart = wx.CheckBox( self, -1, _(u"L'individu ne fréquente plus l'activité depuis le")) self.ctrl_date_depart = CTRL_Saisie_date.Date2(self) self.ctrl_date_depart.SetDate(datetime.date.today()) self.bouton_remboursement = wx.Button(self, -1, _(u"Remboursement")) # Properties self.ctrl_activite.SetToolTip( wx.ToolTip(_(u"Activité sélectionnée"))) self.bouton_activites.SetToolTip( wx.ToolTip(_(u"Cliquez ici pour sélectionner une activité"))) self.ctrl_groupes.SetToolTip(wx.ToolTip(_(u"Sélectionnez un groupe"))) self.ctrl_check_depart.SetToolTip( wx.ToolTip( _(u"Cochez cette case si l'individu ne fréquente plus cette activité" ))) self.ctrl_date_depart.SetToolTip( wx.ToolTip( _(u"Saisissez la date de départ de l'activité (le dernier jour)" ))) self.bouton_remboursement.SetToolTip( wx.ToolTip( _(u"Cliquez ici pour générer un remboursement lié au départ de l'activité" ))) self.ctrl_categories.SetToolTip( wx.ToolTip(_(u"Sélectionnez une catégorie de tarif"))) # Bind self.Bind(wx.EVT_BUTTON, self.OnBoutonActivites, self.bouton_activites) self.Bind(wx.EVT_CHECKBOX, self.OnCheckDepart, self.ctrl_check_depart) self.Bind(wx.EVT_BUTTON, self.OnBoutonRemboursement, self.bouton_remboursement) # Layout sizer_base = wx.BoxSizer(wx.VERTICAL) grid_sizer_base = wx.FlexGridSizer(rows=4, cols=1, vgap=5, hgap=5) # Activités staticbox_activite = wx.StaticBoxSizer( self.staticbox_activite_staticbox, wx.VERTICAL) grid_sizer_activite = wx.FlexGridSizer(rows=1, cols=2, vgap=10, hgap=10) grid_sizer_activite.Add(self.ctrl_activite, 1, wx.EXPAND, 0) grid_sizer_activite.Add(self.bouton_activites, 1, wx.EXPAND, 0) grid_sizer_activite.AddGrowableCol(0) staticbox_activite.Add(grid_sizer_activite, 1, wx.ALL | wx.EXPAND, 5) grid_sizer_base.Add(staticbox_activite, 1, wx.LEFT | wx.RIGHT | wx.EXPAND, 0) self.grid_sizer_activite = grid_sizer_activite # Groupes staticbox_groupe = wx.StaticBoxSizer(self.staticbox_groupe_staticbox, wx.VERTICAL) staticbox_groupe.Add(self.ctrl_groupes, 1, wx.ALL | wx.EXPAND, 5) grid_sizer_base.Add(staticbox_groupe, 1, wx.LEFT | wx.RIGHT | wx.EXPAND, 0) # Catégories de tarifs staticbox_categorie = wx.StaticBoxSizer( self.staticbox_categorie_staticbox, wx.VERTICAL) staticbox_categorie.Add(self.ctrl_categories, 1, wx.ALL | wx.EXPAND, 5) grid_sizer_base.Add(staticbox_categorie, 1, wx.LEFT | wx.RIGHT | wx.EXPAND, 0) # Départ staticbox_depart = wx.StaticBoxSizer(self.staticbox_depart_staticbox, wx.VERTICAL) grid_sizer_depart = wx.FlexGridSizer(rows=1, cols=4, vgap=5, hgap=5) grid_sizer_depart.Add(self.ctrl_check_depart, 0, wx.ALIGN_CENTER_VERTICAL, 0) grid_sizer_depart.Add(self.ctrl_date_depart, 0, wx.ALIGN_CENTER_VERTICAL, 0) grid_sizer_depart.Add(self.bouton_remboursement, 0, wx.ALIGN_CENTER_VERTICAL, 0) staticbox_depart.Add(grid_sizer_depart, 1, wx.ALL | wx.EXPAND, 5) grid_sizer_base.Add(staticbox_depart, 1, wx.LEFT | wx.RIGHT | wx.EXPAND, 0) grid_sizer_base.AddGrowableRow(1) grid_sizer_base.AddGrowableRow(2) grid_sizer_base.AddGrowableCol(0) sizer_base.Add(grid_sizer_base, 1, wx.EXPAND | wx.ALL, 10) self.SetSizer(sizer_base) self.Layout() # Init if self.parent.mode != "saisie": self.bouton_activites.Show(False) self.Importation() if self.parent.mode == "saisie": if self.parent.cp == None: # Recherche cp et ville dict_coords = UTILS_Titulaires.GetCoordsIndividu( self.parent.IDindividu) if dict_coords != None: self.cp = dict_coords["cp_resid"] self.ville = dict_coords["ville_resid"] self.OnCheckDepart()