Change une icône de menu

Intègre le basculement des modes PBP vers le GLOBAL
Diminue le nombre d'icônes max' du menu
This commit is contained in:
HorlogeSkynet
2017-02-09 02:25:28 +01:00
parent aaa71a5406
commit b3ba261664
8 changed files with 23 additions and 24 deletions

@ -11,19 +11,15 @@ Point** affichageLogs(sfRenderWindow *const window, sfRenderTexture *renderTextu
case MODE_PREVIEW:
return affichageLogsPreview(window, renderTexture, tabPoint, nbElements, nbPointsAffiches, nbPointAgglosMin, tabPointeursCercle, agglos, nbAgglos, route, nbRoutes, tabPointeursArray, tabPointeursCercleAgglos, allPoint, allRoads, carte);
break;
case MODE_PREVIEW_SUGG:
return affichageLogsPreviewSugg(window, renderTexture, tabPoint, nbElements, nbPointsAffiches, nbPointAgglosMin, tabPointeursCercle, agglos, nbAgglos, route, nbRoutes, tabPointeursArray, tabPointeursCercleAgglos, allPoint, allRoads, carte);
break;
case MODE_PBP_AUTOMATIC:
return affichageLogsPBPAuto(window, renderTexture, tabPoint, nbElements, nbPointsAffiches, nbPointAgglosMin, tabPointeursCercle, agglos, nbAgglos, tabPointeursCercleAgglos, nbAgglosAffiches, carte, menu);
break;
case MODE_PBP_MANUAL:
return affichageLogsPBPManual(window, renderTexture, tabPoint, nbElements, nbPointsAffiches, nbPointAgglosMin, tabPointeursCercle, agglos, nbAgglos, tabPointeursCercleAgglos, nbAgglosAffiches, carte, menu);
break;
default:
;
@ -371,7 +367,7 @@ Point** affichageLogsPBPAuto(sfRenderWindow *const window, sfRenderTexture *rend
free(tmpPtsAffiches);
return NULL;
case TOOL_CANCEL:
case TOOL_GLOBAL:
cancelDisplay = true;
break;
@ -463,6 +459,9 @@ Point** affichageLogsPBPAuto(sfRenderWindow *const window, sfRenderTexture *rend
Point **ptsAffiches = copieTabPointeurPt(tmpPtsAffiches, *nbPointsAffiches);
free(tmpPtsAffiches);
resetTextureAndSpriteFromOriginal(renderTexture, &renderSprite, originalTexture);
displayBackgroundSprite(window, renderSprite);
sfTexture_destroy(firstTexture);
sfTexture_destroy(originalTexture);
@ -633,7 +632,7 @@ Point** affichageLogsPBPManual(sfRenderWindow *const window, sfRenderTexture *re
free(tmpPtsAffiches);
return NULL;
case TOOL_CANCEL:
case TOOL_GLOBAL:
cancelDisplay = true;
break;

@ -136,6 +136,19 @@ ErrEnum controlePoints(sfRenderWindow *window, const char *cheminFichier, Mode m
return ALLOCATION_FAILURE;
}
// On tente un truc: Si l'affichage des logs est terminé, on passe en mode global :O
if(mode == MODE_PBP_AUTOMATIC || mode == MODE_PBP_MANUAL)
{
mode = MODE_GLOBAL;
afficherSablier(window, renderTexture, &renderSprite);
libererMemoireElementsAffiches(carte, nbPointsAffiches, tabPointeursCercles, nbAgglosAffiches, tabPointeursCerclesAgglos, nbRoutes, tabPointeursArray);
detruireMenu(&menu);
renderSprite = NULL;
free(ptsAffiches);
ptsAffiches = NULL;
continue;
}
// Si l'utilisateur a (dé)zoomé, on re-centre son curseur au milieu de l'écran juste avant de lui rendre la main !
if(centerCursor)
{
@ -178,8 +191,6 @@ ErrEnum controlePoints(sfRenderWindow *window, const char *cheminFichier, Mode m
break;
case ACTION_REFRESH:
if(mode == MODE_PBP_AUTOMATIC || mode == MODE_PBP_MANUAL)
mode = MODE_GLOBAL;
break;
case ACTION_ZOOM_IN:
@ -228,12 +239,6 @@ ErrEnum controlePoints(sfRenderWindow *window, const char *cheminFichier, Mode m
// Pour ne pas dérouter l'utilisateur pendant son (dé)zoom, on centrera son cuseur au milieu de la carte !
centerCursor = true;
}
// Après le zoom, si on n'est pas en mode PREVISUALISATION, on partira toujours de l'affichage global
if(mode != MODE_PREVIEW && mode != MODE_PREVIEW_SUGG)
{
mode = MODE_GLOBAL;
}
break;
case ACTION_ZOOM_NEXT:
@ -308,11 +313,6 @@ ErrEnum controlePoints(sfRenderWindow *window, const char *cheminFichier, Mode m
case ACTION_TOGGLEAGGLO:
afficherSablier(window, renderTexture, &renderSprite);
allPoint = !allPoint;
// Après le toggle, si on n'est pas en mode PREVISUALISATION, on partira toujours de l'affichage global
if(mode != MODE_PREVIEW && mode != MODE_PREVIEW_SUGG)
{
mode = MODE_GLOBAL;
}
break;
case ACTION_TOGGLEROUTE:
@ -320,7 +320,6 @@ ErrEnum controlePoints(sfRenderWindow *window, const char *cheminFichier, Mode m
allRoads = !allRoads;
break;
default:
errorBox(window, "Erreur fatale.\n");
}

@ -136,8 +136,8 @@ void chargerMenuAffichageLog(Menu *const menu, const Mode mode, const bool displ
else
{
ajouterEntreeMenu(menu, loadButtonMenu(TOOL_CANCEL, "ARRET AFFICHAGE ", "Vue/Ressources/Icones/stop.png"));
ajouterEntreeMenu(menu, loadButtonMenu(TOOL_ERASE, "EFFACE LES POINTS", "Vue/Ressources/Icones/eraser.png"));
ajouterEntreeMenu(menu, loadButtonMenu(TOOL_GLOBAL, "PASSER EN GLOBAL", "Vue/Ressources/Icones/worldwide.png"));
ajouterEntreeMenu(menu, loadButtonMenu(TOOL_ERASE, "EFFACE AFFICHAGE", "Vue/Ressources/Icones/eraser.png"));
if(mode == MODE_PBP_AUTOMATIC)
{

@ -242,6 +242,7 @@ Rectangle waitingOnMapEvent(sfRenderWindow *const window, sfEvent *const event,
case TOOL_TOGGLEROUTE:
*action = ACTION_TOGGLEROUTE;
break;
case NO_TOOL:
default:
needToBreakTheWhile = false;

@ -151,7 +151,7 @@
* @brief Le nombre maximal de boutons qu'il peut y avoir dans le menu à droite.
*
* /!\ Attention, cette valeur détermine directement la dimension de la barre du menu !*/
#define MAXBUTTONSMENU 15
#define MAXBUTTONSMENU 13
/** @def BUTTONGAP
* @brief Un écart à placer entre chaque bouton.*/

@ -20,7 +20,7 @@ typedef enum {NO_ACTION, ACTION_QUIT, ACTION_ZOOM_NEXT, ACTION_ZOOM_PREV, ACTION
typedef enum {FIRSTYPE, ROADMAP, SATELLITE, TERRAIN, HYBRID, LASTYPE} MapType;
typedef enum {NO_TOOL, TOOL_EXIT, TOOL_BACKTOHOME, TOOL_ZOOMZONE, TOOL_SELECTPOINTS, TOOL_DESELECTPOINTS, TOOL_ADDLOGS, TOOL_ACCEPT, TOOL_CANCEL, TOOL_NEXT, TOOL_PREVIOUS, TOOL_MODE_PBP, TOOL_MODE_GLOBAL, TOOL_RESUME, TOOL_PAUSE, TOOL_CONTINUE, TOOL_CENTERPOSITION, TOOL_REPEAT, TOOL_TOGGLEAGGLO, TOOL_TOGGLEROUTE, TOOL_CHANGEMAP, TOOL_ZOOMPREV, TOOL_ZOOMNEXT, TOOL_PREVIEW, TOOL_SAVE, TOOL_ERASE} Tool;
typedef enum {NO_TOOL, TOOL_EXIT, TOOL_BACKTOHOME, TOOL_ZOOMZONE, TOOL_SELECTPOINTS, TOOL_DESELECTPOINTS, TOOL_ADDLOGS, TOOL_ACCEPT, TOOL_GLOBAL, TOOL_NEXT, TOOL_PREVIOUS, TOOL_MODE_PBP, TOOL_MODE_GLOBAL, TOOL_RESUME, TOOL_PAUSE, TOOL_CONTINUE, TOOL_CENTERPOSITION, TOOL_REPEAT, TOOL_TOGGLEAGGLO, TOOL_TOGGLEROUTE, TOOL_CHANGEMAP, TOOL_ZOOMPREV, TOOL_ZOOMNEXT, TOOL_PREVIEW, TOOL_SAVE, TOOL_ERASE} Tool;
typedef struct
{

Binary file not shown.

Before

(image error) Size: 1.3 KiB

Binary file not shown.

After

(image error) Size: 14 KiB