MACXT_Repertoire = {}
function MACXT_Repertoire:Reinitialiser_Window()
   MACXT_Texte_Window = nil
   MACXT_Draw_Button = nil
   MACXT_Images_Window = nil
   MACXT_Personnal_Texte = nil
   MACXT_Texte_Window = {}
   MACXT_Draw_Button = {}
   MACXT_Images_Window = {}
   MACXT_Personnal_Texte = {}
   MACXT_Texte_Window[0] = {Caption = ""}
   MACXT_Draw_Button[0] = {Caption = ""}
   MACXT_Images_Window[0] = {Images = ""}
   MACXT_Personnal_Texte[0] = {Caption = ""}
   MACXT_Repertoire:Actualise_Images()
   MACXT_Repertoire:Actualise_Draw_Button()
   MACXT_Repertoire:Actualise_Texte_Window()
   MACXT_Repertoire:Actualise_Personnal_Texte()
end
function MACXT_Repertoire:Reinitialiser_Personnal_Texte()
   MACXT_Personnal_Texte = nil
   MACXT_Personnal_Texte = {}
   MACXT_Personnal_Texte[0] = {Caption = "",Action = ""}
end
function MACXT_Repertoire:Repertoire_Menu()
   MACXT_Objets_Menu = {}
   MACXT_Objets_Barre = {}
   MACXT_Objets_Properties = {}
   MACXT_Objets_Barre_Fonction = {}
   MACXT_Texte_Window = {}
   MACXT_Draw_Button = {}
   MACXT_Images_Window = {}
   MACXT_Personnal_Texte = {}
   MACXT_Objets_Menu[0] = {Caption = ""}
   MACXT_Objets_Barre[0] = {Caption = ""}
   MACXT_Objets_Properties[0] = {Caption = "",Action = ""}
   MACXT_Objets_Barre_Fonction[0] = {Caption = ""}
   MACXT_Texte_Window[0] = {Caption = ""}
   MACXT_Draw_Button[0] = {Caption = ""}
   MACXT_Images_Window[0] = {Images = ""}
   MACXT_Personnal_Texte[0] = {Caption = ""}
end
MACXT_Repertoire:Repertoire_Menu()
function MACXT_Repertoire:Actualise_Menu()
   MACXT_Objets_Menu_Nombre = table.getn(MACXT_Objets_Menu)
end
MACXT_Repertoire:Actualise_Menu()
function MACXT_Repertoire:Actualise_Systeme_Barre()
   MACXT_Objets_Barre_Nombre = table.getn(MACXT_Objets_Barre)
end
MACXT_Repertoire:Actualise_Systeme_Barre()
function MACXT_Repertoire:Actualise_Properties()
   MACXT_Objets_Properties_Nombre = table.getn(MACXT_Objets_Properties)
end
MACXT_Repertoire:Actualise_Properties()
function MACXT_Repertoire:Actualise_Fonction()
   MACXT_Objets_Barre_Fonction_Nombre = table.getn(MACXT_Objets_Barre_Fonction)
end
MACXT_Repertoire:Actualise_Fonction()
function MACXT_Repertoire:Actualise_Texte_Window()
   n_Textes = table.getn(MACXT_Texte_Window)
end
MACXT_Repertoire:Actualise_Texte_Window()
function MACXT_Repertoire:Actualise_Draw_Button()
   n_Draw_Button_MACXT = table.getn(MACXT_Draw_Button)
end
MACXT_Repertoire:Actualise_Draw_Button()
function MACXT_Repertoire:Actualise_Images()
   n_Images_Window = table.getn(MACXT_Images_Window)
end
MACXT_Repertoire:Actualise_Images()
function MACXT_Repertoire:Actualise_Personnal_Texte()
   n_Personnal_Texte = table.getn(MACXT_Personnal_Texte)
end
MACXT_Repertoire:Actualise_Personnal_Texte()
function MACXT_Repertoire:Anti_Bug()
   Action_Barre = nil
   Action_Properties = nil
   Action_Menu_MACXT = nil
   Action_Menu_MACXT = nil
   Action_Window = nil
   Action_Button = nil
   Action_Personnal_Texte = nil
end
function MACXT_Repertoire:Afficher_Personnal_Texte()
   if n_Personnal_Texte ~= 0 then
      if Posx_Personnal_Texte and Posy_Personnal_Texte then
         PosY_Personnal_Texte = Posy_Personnal_Texte
         for Personnal_Texte=1,n_Personnal_Texte do
            if Color_Texte ~= nil then
               screen:print(Posx_Personnal_Texte,PosY_Personnal_Texte,MACXT_Personnal_Texte[Personnal_Texte].Caption,Color_Texte)
               PosY_Personnal_Texte = PosY_Personnal_Texte + 20
             else
               screen:print(Posx_Personnal_Texte,PosY_Personnal_Texte,MACXT_Personnal_Texte[Personnal_Texte].Caption)
               PosY_Personnal_Texte = PosY_Personnal_Texte + 20
            end
         end
      end
   end
end
function MACXT_Repertoire:Afficher_Images()
   if n_Images_Window ~= 0 then
      PosY_Image = PosY-Window_Hauteur/2+n_Textes*20+15
      for Image=1,n_Images_Window do
         if Affichage_Images == "Vertical_Screen" then
            screen:blit(PosX-Window_Longueur/2+15,PosY_Image,MACXT_Images_Window[Image].Images)
            PosY_Image = PosY_Image + MACXT_Images_Window[Image].Images:height()+10
         end
         if Affichage_Images == "Horizontal_Screen" then
            PosX_Image = PosX-MACXT_Images_Window[Image].Images:width() / 2
            screen:blit(PosX_Image,PosY-Window_Hauteur/2+n_Textes*20+15,MACXT_Images_Window[Image].Images)
            PosX_Image = PosX_Image - MACXT_Images_Window[Image].Images:width()-10
         end
      end
   end
end
function MACXT_Repertoire:Afficher_Drawing_Button()
   if n_Draw_Button_MACXT ~= 0 then
      PosX_Button = PosX-Window_Longueur/2+10
      PosY_Button = PosY-Window_Hauteur/2+n_Textes*20+15
      for Button=1,n_Draw_Button_MACXT do
         if Affichage_Button == "Vertical_Drawing" then
            if n_Images_Window ~= 0 then
               screen:fillRect(PosX-Window_Longueur/2+10,PosY-Window_Hauteur/2+n_Textes*20+15+MACXT_Images_Window[1].Images:height()+10,string.len(MACXT_Draw_Button[Button].Caption)*8+1,15,Color.new(0,128,192))
               screen:print(PosX-Window_Longueur/2+10,PosY-Window_Hauteur/2+n_Textes*20+15+MACXT_Images_Window[1].Images:height()+10,MACXT_Draw_Button[Button].Caption)
             else
               screen:fillRect(PosX-Window_Longueur/2+10,PosY_Button,string.len(MACXT_Draw_Button[Button].Caption)*8+1,15,Color.new(0,128,192))
               screen:print(PosX-Window_Longueur/2+10,PosY_Button+5,MACXT_Draw_Button[Button].Caption)
            end
            PosY_Button = PosY_Button + 20
         end
         if Affichage_Button == "Horizontal_Drawing" then
            if n_Images_Window ~= 0 then
               screen:fillRect(PosX_Button,PosY-Window_Hauteur/2+n_Textes*20+15+MACXT_Images_Window[1].Images:height()+10,string.len(MACXT_Draw_Button[Button].Caption)*8+2,15,Color.new(0,128,192))
               screen:print(PosX_Button+2,PosY-Window_Hauteur/2+n_Textes*20+19+MACXT_Images_Window[1].Images:height()+10,MACXT_Draw_Button[Button].Caption)
             else
               screen:fillRect(PosX_Button,PosY-Window_Hauteur/2+n_Textes*20+15,string.len(MACXT_Draw_Button[Button].Caption)*8+2,15,Color.new(0,128,192))
               screen:print(PosX_Button+2,PosY-Window_Hauteur/2+n_Textes*20+19,MACXT_Draw_Button[Button].Caption)
            end
            PosX_Button = PosX_Button + string.len(MACXT_Draw_Button[Button].Caption)*8+15
         end
      end
   end
end
function MACXT_Repertoire:Afficher_Texte_Window()
   if n_Textes ~= 0 then
      PosY_Textes = PosY-Window_Hauteur/2+MACXT_Top:height()+5
      for Textes_Window=1,n_Textes do
         screen:print(PosX-Window_Longueur/2+MACXT_Right:width()+5,PosY_Textes,MACXT_Texte_Window[Textes_Window].Caption)
         PosY_Textes = PosY_Textes + 20
      end
   end
end
function MACXT_Repertoire:Afficher__Objets__Menu()
   if MACXT_Objets_Menu_Nombre ~= 0 and MACXT_Menu_Afficher_Menu == 1 then
      posY_Objets_Menu = MACXT_Barre1:height()+8
      for Menu=1,MACXT_Objets_Menu_Nombre do
         screen:print(5,posY_Objets_Menu,MACXT_Objets_Menu[Menu].Caption)
         posY_Objets_Menu = posY_Objets_Menu + 20
      end
   end
end
function MACXT_Repertoire:Afficher__Objets__Barre()
   if MACXT_Objets_Barre_Nombre ~= 0 then
      posX_Objets_Barre = MACXT_Barre1:width()
      for Barre=1,MACXT_Objets_Barre_Nombre do
         screen:print(posX_Objets_Barre,MACXT_Barre1:height()/2.5,MACXT_Objets_Barre[Barre].Caption)
         posX_Objets_Barre = posX_Objets_Barre + string.len(MACXT_Objets_Barre[Barre].Caption)*8.5 + 5
      end
   end
end
function MACXT_Repertoire:Afficher__Objets__Barre__Fonctions()
   if MACXT_Objets_Barre_Fonction_Nombre ~= 0 then
      PosY_Objets_Barre_Fonction = MACXT_Barre1:height() + 8
      for Fonction=1,MACXT_Objets_Barre_Fonction_Nombre do
         screen:print(PosX_Selecteur_MACXT_Barre + 5,PosY_Objets_Barre_Fonction,MACXT_Objets_Barre_Fonction[Fonction].Caption)
         if Fonction__Image ~= nil then
            screen:blit(PosX_Selecteur_MACXT_Barre,PosY_Objets_Barre_Fonction,MACXT_Objets_Barre_Fonction[Fonction].Fonction__Image)
         end
         PosY_Objets_Barre_Fonction = PosY_Objets_Barre_Fonction + 20
      end
   end
end
function MACXT_Repertoire:Afficher__Objets__Properties()
   if MACXT_Objets_Properties ~= 0 then
      PosY_Afficher_Properties = PosY__Properties_MACXT + 5
      for Properties=1,MACXT_Objets_Properties_Nombre do
         screen:print(PosX__Properties_MACXT+5,PosY_Afficher_Properties,MACXT_Objets_Properties[Properties].Caption)
         PosY_Afficher_Properties = PosY_Afficher_Properties + 20
      end
   end
end
