projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed setting text size for clearing input on name selection screen
[rocksndiamonds.git]
/
src
/
screens.c
diff --git
a/src/screens.c
b/src/screens.c
index a94684fb78baa0867b1286868e7671d2fd003e8b..43212e185991dd038c6ee3e8cda27e5c5924b0c0 100644
(file)
--- a/
src/screens.c
+++ b/
src/screens.c
@@
-1531,6
+1531,15
@@
static int getChooseTreeEditYPos(int ypos_raw)
return sy;
}
return sy;
}
+static int getChooseTreeEditXPosReal(int pos)
+{
+ int xpos = getChooseTreeEditXPos(pos);
+ int font_nr = getChooseTreeEditFont(FALSE);
+ int font_xoffset = getFontDrawOffsetX(font_nr);
+
+ return xpos + font_xoffset;
+}
+
static void drawChooseTreeEdit(int ypos_raw, boolean active)
{
int sx = getChooseTreeEditXPos(POS_LEFT);
static void drawChooseTreeEdit(int ypos_raw, boolean active)
{
int sx = getChooseTreeEditXPos(POS_LEFT);
@@
-3998,7
+4007,7
@@
static int getPlayerNameColor(char *name)
}
static void drawTypeNameText(char *name, struct TextPosInfo *pos,
}
static void drawTypeNameText(char *name, struct TextPosInfo *pos,
-
boolean active)
+ boolean active)
{
char text[MAX_PLAYER_NAME_LEN + 2] = { 0 };
boolean multiple_users = (game_status == GAME_MODE_PSEUDO_TYPENAMES);
{
char text[MAX_PLAYER_NAME_LEN + 2] = { 0 };
boolean multiple_users = (game_status == GAME_MODE_PSEUDO_TYPENAMES);
@@
-4006,8
+4015,12
@@
static void drawTypeNameText(char *name, struct TextPosInfo *pos,
int sy = (multiple_users ? amSY + pos->y : mSY + ALIGNED_TEXT_YPOS(pos));
int font_nr = (active ? FONT_ACTIVE(pos->font) : pos->font);
int font_width = getFontWidth(font_nr);
int sy = (multiple_users ? amSY + pos->y : mSY + ALIGNED_TEXT_YPOS(pos));
int font_nr = (active ? FONT_ACTIVE(pos->font) : pos->font);
int font_width = getFontWidth(font_nr);
+ int font_xoffset = getFontDrawOffsetX(font_nr);
+ int font_yoffset = getFontDrawOffsetY(font_nr);
+ int font_sx = sx + font_xoffset;
+ int font_sy = sy + font_yoffset;
- DrawBackgroundForFont(
sx,
sy, pos->width, pos->height, font_nr);
+ DrawBackgroundForFont(
font_sx, font_
sy, pos->width, pos->height, font_nr);
sprintf(text, "%s%c", name, (active ? '_' : '\0'));
sprintf(text, "%s%c", name, (active ? '_' : '\0'));
@@
-4329,6
+4342,9
@@
static void DrawChooseTree(TreeInfo **ti_ptr)
boolean restart_music = (game_status != game_status_last_screen &&
game_status_last_screen != GAME_MODE_SCOREINFO);
boolean restart_music = (game_status != game_status_last_screen &&
game_status_last_screen != GAME_MODE_SCOREINFO);
+ scores.was_just_playing = (game_status == GAME_MODE_SCORES &&
+ game_status_last_screen == GAME_MODE_PLAYING);
+
if (CheckFadeAll())
fade_mask = REDRAW_ALL;
if (CheckFadeAll())
fade_mask = REDRAW_ALL;
@@
-4638,8
+4654,8
@@
static void HandleChooseTree(int mx, int my, int dx, int dy, int button,
boolean has_scrollbar = screen_gadget[SCREEN_CTRL_ID_SCROLL_VERTICAL]->mapped;
int mx_scrollbar = screen_gadget[SCREEN_CTRL_ID_SCROLL_VERTICAL]->x;
int mx_right_border = (has_scrollbar ? mx_scrollbar : SX + SXSIZE);
boolean has_scrollbar = screen_gadget[SCREEN_CTRL_ID_SCROLL_VERTICAL]->mapped;
int mx_scrollbar = screen_gadget[SCREEN_CTRL_ID_SCROLL_VERTICAL]->x;
int mx_right_border = (has_scrollbar ? mx_scrollbar : SX + SXSIZE);
- int sx1_edit_name = getChooseTreeEditXPos(POS_LEFT);
- int sx2_edit_name = getChooseTreeEditXPos(POS_RIGHT);
+ int sx1_edit_name = getChooseTreeEditXPos
Real
(POS_LEFT);
+ int sx2_edit_name = getChooseTreeEditXPos
Real
(POS_RIGHT);
int x = 0;
int y = (ti != NULL ? ti->cl_cursor : 0);
int step = (button == 1 ? 1 : button == 2 ? 5 : 10);
int x = 0;
int y = (ti != NULL ? ti->cl_cursor : 0);
int step = (button == 1 ? 1 : button == 2 ? 5 : 10);
@@
-5149,6
+5165,9
@@
void DrawChoosePlayerName(void)
if (player_name_current == NULL)
player_name_current = player_name;
if (player_name_current == NULL)
player_name_current = player_name;
+ // set text size for main name input (also used on name selection screen)
+ InitializeMainControls();
+
DrawChooseTree(&player_name_current);
}
DrawChooseTree(&player_name_current);
}
@@
-5285,7
+5304,6
@@
static void DrawHallOfFame_setScoreEntries(void)
void DrawHallOfFame(int level_nr)
{
scores.last_level_nr = level_nr;
void DrawHallOfFame(int level_nr)
{
scores.last_level_nr = level_nr;
- scores.was_just_playing = (game_status_last_screen == GAME_MODE_PLAYING);
// (this is needed when called from GameEnd() after winning a game)
KeyboardAutoRepeatOn();
// (this is needed when called from GameEnd() after winning a game)
KeyboardAutoRepeatOn();