def __init__(self, parent, bordure=0): wx.Panel.__init__(self, parent, id=-1, style=wx.TAB_TRAVERSAL) self.parent = parent self.bordure = bordure self.ctrl_listview = OL_Produits.ListView( self, id=-1, on_double_click="consultation", style=wx.LC_REPORT | wx.SUNKEN_BORDER | wx.LC_SINGLE_SEL | wx.LC_HRULES | wx.LC_VRULES) self.ctrl_listview.SetMinSize((50, 50)) self.ctrl_recherche = OL_Produits.CTRL_Outils( self, listview=self.ctrl_listview) self.ctrl_recherche.SetMinSize((10, -1)) self.bouton_consulter = wx.BitmapButton( self, -1, wx.Bitmap(Chemins.GetStaticPath("Images/16x16/Loupe.png"), wx.BITMAP_TYPE_ANY)) self.__set_properties() self.__do_layout() self.Bind(wx.EVT_BUTTON, self.ctrl_listview.Consulter, self.bouton_consulter)
def __init__(self, parent): wx.Dialog.__init__(self, parent, -1, style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX) self.parent = parent intro = _( u"Vous pouvez ici saisir, modifier ou supprimer des produits.") titre = _(u"Gestion des produits") self.SetTitle(titre) self.ctrl_bandeau = CTRL_Bandeau.Bandeau( self, titre=titre, texte=intro, hauteurHtml=30, nomImage="Images/32x32/Produit.png") self.ctrl_listview = OL_Produits.ListView( self, id=-1, style=wx.LC_REPORT | wx.SUNKEN_BORDER | wx.LC_SINGLE_SEL | wx.LC_HRULES | wx.LC_VRULES) self.ctrl_listview.SetMinSize((50, 50)) self.ctrl_recherche = OL_Produits.CTRL_Outils( self, listview=self.ctrl_listview) 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_aide = CTRL_Bouton_image.CTRL( self, texte=_(u"Aide"), cheminImage="Images/32x32/Aide.png") self.bouton_fermer = CTRL_Bouton_image.CTRL( self, texte=_(u"Fermer"), cheminImage="Images/32x32/Fermer.png") self.__set_properties() self.__do_layout() self.Bind(wx.EVT_BUTTON, self.ctrl_listview.Ajouter, self.bouton_ajouter) self.Bind(wx.EVT_BUTTON, self.ctrl_listview.Modifier, self.bouton_modifier) self.Bind(wx.EVT_BUTTON, self.ctrl_listview.Supprimer, self.bouton_supprimer) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonFermer, self.bouton_fermer) self.Bind(wx.EVT_CLOSE, self.OnBoutonFermer) self.ctrl_listview.MAJ()
def __init__(self, parent, IDproduit=None, liste_produits=[], selection_multiple=False, selection_obligatoire=True, coche_uniquement_disponibles=True): wx.Dialog.__init__(self, parent, -1, style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER | wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX) self.parent = parent self.selection_multiple = selection_multiple self.selection_obligatoire = selection_obligatoire self.ctrl_produits = OL_Produits.ListView( self, id=-1, selection_multiple=selection_multiple, style=wx.LC_REPORT | wx.SUNKEN_BORDER | wx.LC_SINGLE_SEL | wx.LC_HRULES | wx.LC_VRULES) self.ctrl_produits.SetMinSize((750, 500)) self.ctrl_recherche = OL_Produits.CTRL_Outils( self, listview=self.ctrl_produits, afficherCocher=selection_multiple) self.check_disponibles = wx.CheckBox( self, -1, _(u"Afficher uniquement les produits disponibles")) self.check_disponibles.SetFont( wx.Font(8, wx.FONTFAMILY_DEFAULT, wx.NORMAL, wx.NORMAL)) if coche_uniquement_disponibles == True: self.check_disponibles.SetValue(True) 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.ctrl_produits.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnItemActivated) self.Bind(wx.EVT_BUTTON, self.OnBoutonAide, self.bouton_aide) self.Bind(wx.EVT_BUTTON, self.OnBoutonOk, self.bouton_ok) self.Bind(wx.EVT_CHECKBOX, self.OnCheckDisponibles, self.check_disponibles) # Init contrôles self.ctrl_produits.coche_uniquement_disponibles = self.check_disponibles.GetValue( ) self.ctrl_produits.MAJ() if IDproduit == None and len(liste_produits) == 0: wx.CallLater(10, self.ctrl_recherche.SetFocus) else: if self.selection_multiple == False: self.ctrl_produits.SetID(IDproduit) else: self.ctrl_produits.SetListeProduits(liste_produits) wx.CallLater(10, self.ctrl_produits.SetFocus)
def __init__(self, parent): wx.Panel.__init__(self, parent, id=-1, style=wx.TAB_TRAVERSAL) self.parent = parent # Propositions self.label_propositions = wx.StaticText(self, -1, _(u"Produits proposés :")) self.ctrl_propositions = OL_Produits.ListView( self, id=-1, afficher_detail_location=False, on_double_click="consultation", style=wx.LC_REPORT | wx.SUNKEN_BORDER | wx.LC_SINGLE_SEL | wx.LC_HRULES | wx.LC_VRULES) self.ctrl_propositions.SetMinSize((100, 50)) self.ctrl_propositions.afficher_uniquement_disponibles = True # Options self.radio_produits_disponibles = wx.RadioButton( self, -1, _(u"Les produits disponibles"), style=wx.RB_GROUP) self.radio_produits_possibles = wx.RadioButton( self, -1, _(u"Les produits potentiels")) self.radio_produits_disponibles.SetToolTip( wx.ToolTip( _(u"Afficher les produits disponibles répondant aux critères" ))) self.radio_produits_possibles.SetToolTip( wx.ToolTip( _(u"Afficher tous les produits répondant aux critères donnés" ))) # Bouton Attribuer self.bouton_attribuer = CTRL_Bouton_image.CTRL( self, texte=_(u"Attribuer le produit sélectionné"), cheminImage="Images/32x32/Location.png") self.bouton_attribuer.SetToolTip( wx.ToolTip( _(u"Cliquez ici pour attribuer le produit sélectionné dans la liste" ))) # Binds self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioProduits, self.radio_produits_disponibles) self.Bind(wx.EVT_RADIOBUTTON, self.OnRadioProduits, self.radio_produits_possibles) self.Bind(wx.EVT_BUTTON, self.OnBoutonAttribuer, self.bouton_attribuer) # Layout grid_sizer_base = wx.FlexGridSizer(rows=3, cols=1, vgap=5, hgap=5) grid_sizer_base.Add(self.label_propositions, 0, wx.ALIGN_CENTER_VERTICAL | wx.ALL, 0) grid_sizer_base.Add(self.ctrl_propositions, 0, wx.ALIGN_CENTER_VERTICAL | wx.ALL | wx.EXPAND, 0) grid_sizer_commandes = wx.FlexGridSizer(rows=1, cols=4, vgap=5, hgap=5) grid_sizer_commandes.Add(self.radio_produits_disponibles, 0, wx.ALIGN_CENTER_VERTICAL | wx.ALL, 0) grid_sizer_commandes.Add(self.radio_produits_possibles, 0, wx.ALIGN_CENTER_VERTICAL | wx.ALL, 0) grid_sizer_commandes.Add((10, 10), 0, wx.ALIGN_CENTER_VERTICAL | wx.ALL, 0) grid_sizer_commandes.Add(self.bouton_attribuer, 0, wx.ALIGN_CENTER_VERTICAL | wx.ALL, 0) grid_sizer_commandes.AddGrowableCol(2) grid_sizer_base.Add(grid_sizer_commandes, 0, wx.ALIGN_CENTER_VERTICAL | wx.ALL | wx.EXPAND, 0) grid_sizer_base.AddGrowableCol(0) grid_sizer_base.AddGrowableRow(1) self.SetSizer(grid_sizer_base) grid_sizer_base.Fit(self) self.Layout()