def __init__(self, parent, IDtype_piece=None): wx.Dialog.__init__(self, parent, -1, style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX) self.parent = parent self.SetTitle(_(u"Saisie d'un type de pièce")) self.IDtype_piece = IDtype_piece self.sizer_nom_staticbox = wx.StaticBox(self, -1, _(u"Caractéristiques")) self.label_nom = wx.StaticText(self, -1, _(u"Nom :")) self.ctrl_nom = wx.TextCtrl(self, -1, "") self.label_public = wx.StaticText(self, -1, _(u"Public :")) self.ctrl_public = wx.Choice(self, -1, (100, -1), choices=("Individu", "Famille")) self.ctrl_rattachement = wx.CheckBox(self, -1, u"") self.label_rattachement = wx.StaticText( self, -1, _(u"Cochez cette case si, lorsqu'un individu est rattaché à plusieurs \nfamilles, cette pièce est valable pour toutes les familles rattachées." )) self.sizer_duree_staticbox = wx.StaticBox(self, -1, _(u"Validité par défaut")) self.radio_duree_1 = wx.RadioButton(self, -1, _(u"Validité illimitée"), style=wx.RB_GROUP) self.radio_duree_2 = wx.RadioButton(self, -1, _(u"La durée suivante : ")) self.label_jours = wx.StaticText(self, -1, _(u"Jours :")) self.spin_jours = wx.SpinCtrl(self, -1, "", min=0, max=100) self.label_mois = wx.StaticText(self, -1, _(u"Mois :")) self.spin_mois = wx.SpinCtrl(self, -1, "", min=0, max=100) self.label_annees = wx.StaticText(self, -1, _(u"Années :")) self.spin_annees = wx.SpinCtrl(self, -1, "", min=0, max=100) self.radio_duree_3 = wx.RadioButton(self, -1, _(u"La date suivante : ")) self.ctrl_date = CTRL_Saisie_date.Date2(self) # Pages capturées self.sizer_pages_staticbox = wx.StaticBox(self, -1, _(u"Documents associés")) self.ctrl_pages = CTRL_Vignettes_documents.CTRL( self, type_donnee="type_piece", IDtype_piece=self.IDtype_piece, style=wx.BORDER_SUNKEN) self.ctrl_pages.SetMinSize((160, 280)) self.bouton_ajouter_page = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Ajouter.png"), wx.BITMAP_TYPE_ANY)) self.bouton_supprimer_page = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Supprimer.png"), wx.BITMAP_TYPE_ANY)) self.bouton_visualiser_page = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Loupe.png"), wx.BITMAP_TYPE_ANY)) self.bouton_zoom_plus = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/zoom_plus.png"), wx.BITMAP_TYPE_ANY)) self.bouton_zoom_moins = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/zoom_moins.png"), wx.BITMAP_TYPE_ANY)) 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_CHOICE, self.OnChoice_public, self.ctrl_public) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioDuree, self.radio_duree_1) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioDuree, self.radio_duree_2) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioDuree, self.radio_duree_3) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.AjouterPage, self.bouton_ajouter_page) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.SupprimerPage, self.bouton_supprimer_page) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.VisualiserPage, self.bouton_visualiser_page) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.ZoomPlus, self.bouton_zoom_plus) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.ZoomMoins, self.bouton_zoom_moins) self.OnChoice_public(None) self.OnRadioDuree(None) # Importation if self.IDtype_piece != None: self.Importation()
def __init__(self, parent, title=_(u"Saisie des pièces"), IDpiece=0, IDpersonne=0, IDtypePiece=None): wx.Dialog.__init__(self, parent, -1, style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX) self.parent = parent self.IDpersonne = IDpersonne self.IDpiece = IDpiece self.selection1 = ( "NoSelect", ) # Pour mémoriser la sélection dans la liste des pièces à fournir self.selection2 = ( "NoSelect", ) # Pour mémoriser la sélection dans la liste des autres pièces self.panel_base = wx.Panel(self, -1) self.sizer_date_debut_staticbox = wx.StaticBox( self.panel_base, -1, _(u"2. Saisissez la date de début")) self.sizer_date_fin_staticbox = wx.StaticBox( self.panel_base, -1, "3. Saisissez la date de fin") self.sizer_type_staticbox = wx.StaticBox( self.panel_base, -1, _(u"1. Sélectionnez un type de pièce")) self.radio_pieces_1 = wx.RadioButton( self.panel_base, -1, _(u"Dans la liste de pièces que la personne doit fournir :"), style=wx.RB_GROUP) self.list_ctrl_pieces = ListCtrl_Pieces(self.panel_base, -1) self.radio_pieces_2 = wx.RadioButton( self.panel_base, -1, _(u"Dans la liste des autres types de pièces :")) # Importe les durées de validité des types de pièces self.RemplissageAutresTypes() self.combo_box_autres = wx.ComboBox(self.panel_base, -1, choices=self.ListeAutresPourCombo, style=wx.CB_DROPDOWN | wx.CB_READONLY) self.label_date_debut = wx.StaticText(self.panel_base, -1, "Date :") self.text_date_debut = masked.TextCtrl(self.panel_base, -1, "", style=wx.TE_CENTRE, mask="##/##/####") self.radio_date_fin_1 = wx.RadioButton(self.panel_base, -1, "Date :", style=wx.RB_GROUP) self.text_date_fin = masked.TextCtrl(self.panel_base, -1, "", style=wx.TE_CENTRE, mask="##/##/####") self.radio_date_fin_2 = wx.RadioButton(self.panel_base, -1, _(u"Validité illimitée")) # Pages capturées self.sizer_pages_staticbox = wx.StaticBox(self.panel_base, -1, _(u"Documents associés")) self.ctrl_pages = CTRL_Vignettes_documents.CTRL(self.panel_base, IDpiece=self.IDpiece, style=wx.BORDER_SUNKEN) self.bouton_ajouter_page = wx.BitmapButton( self.panel_base, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Ajouter.png"), wx.BITMAP_TYPE_ANY)) self.bouton_supprimer_page = wx.BitmapButton( self.panel_base, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Supprimer.png"), wx.BITMAP_TYPE_ANY)) self.bouton_visualiser_page = wx.BitmapButton( self.panel_base, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Loupe.png"), wx.BITMAP_TYPE_ANY)) self.bouton_zoom_plus = wx.BitmapButton( self.panel_base, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/zoom_plus.png"), wx.BITMAP_TYPE_ANY)) self.bouton_zoom_moins = wx.BitmapButton( self.panel_base, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/zoom_moins.png"), wx.BITMAP_TYPE_ANY)) self.bouton_aide = CTRL_Bouton_image.CTRL( self.panel_base, texte=_(u"Aide"), cheminImage=Chemins.GetStaticPath("Images/32x32/Aide.png")) self.bouton_ok = CTRL_Bouton_image.CTRL( self.panel_base, texte=_(u"Ok"), cheminImage=Chemins.GetStaticPath("Images/32x32/Valider.png")) self.bouton_annuler = CTRL_Bouton_image.CTRL( self.panel_base, texte=_(u"Annuler"), cheminImage=Chemins.GetStaticPath("Images/32x32/Annuler.png")) self.__set_properties() self.__do_layout() # Désactive le combobox à l'ouverture de la frame self.combo_box_autres.Enable(False) # Si Modification -> importation des données if IDpiece == 0: self.SetTitle(_(u"Saisie d'une pièce")) else: self.SetTitle(_(u"Modification d'une pièce")) self.Importation() # Binds self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioPieces, self.radio_pieces_1) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioPieces, self.radio_pieces_2) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioDateFin, self.radio_date_fin_1) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioDateFin, self.radio_date_fin_2) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) self.Bind(wx.EVT_BUTTON, self.OnBoutonAnnuler, self.bouton_annuler) self.Bind(wx.EVT_TEXT, self.OnDateDebut, self.text_date_debut) self.Bind(wx.EVT_COMBOBOX, self.OnComboBoxAutres, self.combo_box_autres) self.Bind(wx.EVT_BUTTON, self.AjouterPage, self.bouton_ajouter_page) self.Bind(wx.EVT_BUTTON, self.SupprimerPage, self.bouton_supprimer_page) self.Bind(wx.EVT_BUTTON, self.VisualiserPage, self.bouton_visualiser_page) self.Bind(wx.EVT_BUTTON, self.ZoomPlus, self.bouton_zoom_plus) self.Bind(wx.EVT_BUTTON, self.ZoomMoins, self.bouton_zoom_moins) # Si c'est une saisie de pièce à partir du listeCtrl des pièces à fournir de la fiche individuelle if IDtypePiece != None: self.list_ctrl_pieces.SetIDtypePieceDefaut(IDtypePiece)
def __init__(self, parent, IDpiece=None, IDfamille=None, IDindividu=None, dictFamillesRattachees={}): wx.Dialog.__init__(self, parent, -1, name="DLG_Saisie_piece", style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX | wx.THICK_FRAME) self.parent = parent self.IDpiece = IDpiece self.IDfamille = IDfamille self.IDindividu = IDindividu self.dictFamillesRattachees = dictFamillesRattachees # Récupère les types de pièces existants self.dictTypesPieces = self.Importation_types_pieces() # Liste des pièces self.sizer_type_staticbox = wx.StaticBox(self, -1, _(u"Type de pièce")) if IDfamille != None: texte = _(u"la famille") else: texte = _(u"l'individu") self.radio_pieces_1 = wx.RadioButton( self, -1, _(u"Dans la liste des pièces que %s doit fournir :") % texte, style=wx.RB_GROUP) self.ctrl_pieces_obligatoires = CTRL_Pieces_obligatoires.CTRL( self, IDfamille=IDfamille, IDindividu=IDindividu, dictFamillesRattachees=dictFamillesRattachees, size=(-1, 200)) self.ctrl_pieces_obligatoires.SetMinSize((-1, 90)) self.ctrl_pieces_obligatoires.MAJ() self.listePiecesObligatoires = self.ctrl_pieces_obligatoires.GetlistePiecesObligatoires( ) # Types de pièces autres self.radio_pieces_2 = wx.RadioButton( self, -1, _(u"Dans la liste des autres types de pièces :")) self.ctrl_pieces_autres = Choix_Piece_autre( self, self.listePiecesObligatoires, self.dictTypesPieces) # Date de début self.sizer_date_debut_staticbox = wx.StaticBox(self, -1, _(u"Date de début")) self.label_date_debut = wx.StaticText(self, -1, "Date :") self.ctrl_date_debut = CTRL_Saisie_date.Date(self) # Date de fin self.sizer_date_fin_staticbox = wx.StaticBox(self, -1, _(u"Date de fin")) self.radio_date_fin_1 = wx.RadioButton(self, -1, _(u"Date :"), style=wx.RB_GROUP) self.radio_date_fin_2 = wx.RadioButton(self, -1, _(u"Validité illimitée")) self.ctrl_date_fin = CTRL_Saisie_date.Date(self) # Pages capturées self.sizer_pages_staticbox = wx.StaticBox(self, -1, _(u"Documents associés")) self.ctrl_pages = CTRL_Vignettes_documents.CTRL(self, type_donnee="piece", IDpiece=self.IDpiece, style=wx.BORDER_SUNKEN) self.bouton_ajouter_page = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Ajouter.png"), wx.BITMAP_TYPE_ANY)) self.bouton_supprimer_page = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Supprimer.png"), wx.BITMAP_TYPE_ANY)) self.bouton_visualiser_page = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Loupe.png"), wx.BITMAP_TYPE_ANY)) self.bouton_zoom_plus = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/zoom_plus.png"), wx.BITMAP_TYPE_ANY)) self.bouton_zoom_moins = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/zoom_moins.png"), wx.BITMAP_TYPE_ANY)) # Commandes 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() # Init contrôles self.ctrl_pieces_autres.Enable(False) # Si Modification -> importation des données if IDpiece == None: self.SetTitle(_(u"Saisie d'une pièce")) self.ctrl_date_debut.SetDate(datetime.date.today()) else: self.SetTitle(_(u"Modification d'une pièce")) self.Importation() # Binds self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioPieces, self.radio_pieces_1) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioPieces, self.radio_pieces_2) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioDateFin, self.radio_date_fin_1) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioDateFin, self.radio_date_fin_2) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) self.Bind(wx.EVT_TEXT, self.OnDateDebut, self.ctrl_date_debut) self.Bind(wx.EVT_CHOICE, self.OnChoixAutres, self.ctrl_pieces_autres) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.AjouterPage, self.bouton_ajouter_page) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.SupprimerPage, self.bouton_supprimer_page) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.VisualiserPage, self.bouton_visualiser_page) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.ZoomPlus, self.bouton_zoom_plus) self.Bind(wx.EVT_BUTTON, self.ctrl_pages.ZoomMoins, self.bouton_zoom_moins)