#include <MoteurMenu.h>
Fonctions membres publiques | |
| Menu (char *UnTitre="") | |
| ~Menu () | |
| int | AddItem (int UnLabel, char *UnNom) |
| int | SetSelct (int UnLabel) |
| MVirtuel | Affiche () |
| MVirtuel | GetImage () |
| int | Gere () |
Attributs privés | |
| char * | Titre |
| char ** | Items |
| int | NbItem |
| int | Selected |
| MVirtuel | Image |
|
|
Définition à la ligne 14 du fichier MoteurMenu.cpp. 00015 {
00016 Titre = new char[strlen(UnTitre)];
00017 strcpy(Titre, UnTitre);
00018 Items = new char*[1];
00019 Items[0] = NULL;
00020 NbItem = 0;
00021 Selected = 0;
00022 }
|
|
|
Définition à la ligne 24 du fichier MoteurMenu.cpp. 00025 {
00026 /*for(int i=0; i<NbItem; i++)
00027 if(Items[i] != NULL)
00028 delete [] Items[i];*/
00029 delete [] Items;
00030 }
|
|
||||||||||||
|
Définition à la ligne 32 du fichier MoteurMenu.cpp. 00033 {
00034 if(UnLabel>NbItem)
00035 {
00036 char ** Tampon;
00037 Tampon = new char*[UnLabel+1];
00038 for(int i=0; i<=UnLabel; i++)
00039 {
00040 Tampon[i] = NULL;
00041 if(i<=NbItem)
00042 Tampon[i] = Items[i];
00043 }
00044 delete [] Items;
00045 Items = Tampon;
00046 NbItem = UnLabel;
00047 }
00048 else
00049 if(Items[UnLabel] != NULL)
00050 delete [] Items[UnLabel];
00051
00052 Items[UnLabel] = new char[strlen(UnNom)];
00053 strcpy(Items[UnLabel], UnNom);
00054
00055 return UnLabel;
00056 }
|
|
|
Définition à la ligne 64 du fichier MoteurMenu.cpp. 00065 {
00066 //efface la memoire
00067 for(int y = 0; y < NBL; y++)
00068 {
00069 Image.Write(NBC, y, "\0");
00070 for(int x = 0; x < NBC; x++)
00071 Image.Write(x, y, " ");
00072 }
00073
00074 char CAR;
00075 int Lig = (NBL-NbItem-4)/2;
00076 int Lar = strlen(Titre)+1;
00077 int Col = (NBC-Lar)/2;
00078
00079 //partie haute
00080 for(int i=Col+1; i<=Col+Lar-1; i++)
00081 {
00082 Image.Write(i, Lig,Car[8]);
00083 Image.Write(i, Lig+2, Car[8]);
00084 Image.Write(i, Lig+4+NbItem, Car[8]);
00085 }
00086 Image.Write(Col, Lig, Car[0]);
00087 Image.Write(Col+Lar, Lig, Car[1]);
00088 Lig++;
00089 Image.Write(Col, Lig, Car[9]);
00090 Image.Write(Col+1, Lig,Titre);
00091 Image.Write(Col+Lar, Lig, Car[9]);
00092 Lig++;
00093 Image.Write(Col, Lig, Car[4]);
00094 Image.Write(Col+Lar, Lig, Car[5]);
00095 Lig++;
00096 //partie basse
00097 for(i=0; i<=NbItem; i++, Lig++)
00098 {
00099 Image.Write(Col, Lig, Car[9]);
00100 Image.Write(Col+Lar, Lig, Car[9]);
00101
00102 if(Items[i] != NULL)
00103 {
00104 if(Selected == i)
00105 {
00106 Image.Write(Col+1, Lig, "*");
00107 Image.Write(Col+Lar-1, Lig, "*");
00108 }
00109 Image.Write(Col+(Lar-strlen(Items[i]))/2+1, Lig, Items[i]);
00110 }
00111 }
00112 Image.Write(Col, Lig, Car[2]);
00113 Image.Write(Col+Lar, Lig, Car[3]);
00114
00115 Image.Print();
00116 return Image;
00117 }
|
|
|
Définition à la ligne 124 du fichier MoteurMenu.cpp. 00125 {
00126 int i=0;
00127
00128 switch(_getch())
00129 {
00130 case 224 : //premier carractere des touche directionnel
00131 switch(_getch())
00132 {
00133 case 72 : //second carractere -> haut
00134 for(i=Selected-1; i>=0; i--)
00135 if(Items[i] != NULL)
00136 {
00137 Selected = i;
00138 break;
00139 }
00140 break;
00141 case 80 : //second carractere -> bas
00142 for(i=Selected+1; i<=NbItem; i++)
00143 if(Items[i] != NULL)
00144 {
00145 Selected = i;
00146 break;
00147 }
00148 break;
00149 }
00150 break;
00151 case 13 : //touche entrer
00152 return -1;
00153 break;
00154 }
00155 return Selected;
00156 }
|
|
|
Définition à la ligne 119 du fichier MoteurMenu.cpp. 00120 {
00121 return Image;
00122 }
|
|
|
Définition à la ligne 58 du fichier MoteurMenu.cpp. 00059 {
00060 Selected = UnLabel;
00061 return Selected;
00062 }
|
|
|
Définition à la ligne 18 du fichier MoteurMenu.h. |
|
|
Définition à la ligne 15 du fichier MoteurMenu.h. |
|
|
Définition à la ligne 16 du fichier MoteurMenu.h. |
|
|
Définition à la ligne 17 du fichier MoteurMenu.h. |
|
|
Définition à la ligne 14 du fichier MoteurMenu.h. |
1.3.9.1