Adjust icon positions

This commit is contained in:
Simon Robertshaw 2012-07-24 15:21:01 +01:00
parent 43ec3af8d7
commit bc2e4ab23f
4 changed files with 48 additions and 37 deletions

View File

@ -92,7 +92,7 @@ GameView::GameView():
v->c->OpenSaveWindow();
}
};
saveSimulationButton = new ui::Button(ui::Point(currentX, Size.Y-16), ui::Point(150, 15));
saveSimulationButton = new ui::Button(ui::Point(currentX, Size.Y-16), ui::Point(150, 15), "[untitled simulation]");
saveSimulationButton->Appearance.HorizontalAlign = ui::Appearance::AlignLeft;
saveSimulationButton->SetIcon(IconSave);
currentX+=151;
@ -141,7 +141,7 @@ GameView::GameView():
v->c->OpenTags();
}
};
tagSimulationButton = new ui::Button(ui::Point(currentX, Size.Y-16), ui::Point(250, 15));
tagSimulationButton = new ui::Button(ui::Point(currentX, Size.Y-16), ui::Point(250, 15), "[no tags set]");
tagSimulationButton->Appearance.HorizontalAlign = ui::Appearance::AlignLeft;
tagSimulationButton->SetIcon(IconTag);
currentX+=251;
@ -173,7 +173,7 @@ GameView::GameView():
v->c->OpenLogin();
}
};
loginButton = new ui::Button(ui::Point(Size.X-141, Size.Y-16), ui::Point(92, 15), "Login");
loginButton = new ui::Button(ui::Point(Size.X-141, Size.Y-16), ui::Point(92, 15), "[sign in]");
loginButton->Appearance.HorizontalAlign = ui::Appearance::AlignLeft;
loginButton->SetIcon(IconLogin);
loginButton->SetActionCallback(new LoginAction(this));
@ -520,7 +520,7 @@ void GameView::NotifyUserChanged(GameModel * sender)
{
if(!sender->GetUser().ID)
{
loginButton->SetText("Login");
loginButton->SetText("[sign in]");
}
else
{
@ -567,25 +567,36 @@ void GameView::NotifySaveChanged(GameModel * sender)
{
std::stringstream tagsStream;
std::vector<string> tags = sender->GetSave()->GetTags();
for(int i = 0; i < tags.size(); i++)
if(tags.size())
{
tagsStream << sender->GetSave()->GetTags()[i];
if(i < tags.size()-1)
tagsStream << " ";
for(int i = 0; i < tags.size(); i++)
{
tagsStream << sender->GetSave()->GetTags()[i];
if(i < tags.size()-1)
tagsStream << " ";
}
tagSimulationButton->SetText(tagsStream.str());
}
tagSimulationButton->SetText(tagsStream.str());
else
{
tagSimulationButton->SetText("[no tags set]");
}
}
else
{
tagSimulationButton->SetText("[no tags set]");
}
}
else
{
saveSimulationButton->SetText("");
saveSimulationButton->SetText("[untitled simulation]");
reloadButton->Enabled = false;
upVoteButton->Enabled = false;
upVoteButton->Appearance.BackgroundInactive = (ui::Colour(0, 0, 0));
downVoteButton->Enabled = false;
upVoteButton->Appearance.BackgroundInactive = (ui::Colour(0, 0, 0));
tagSimulationButton->Enabled = false;
tagSimulationButton->SetText("");
tagSimulationButton->SetText("[no tags set]");
}
}

View File

@ -714,73 +714,73 @@ void Graphics::textsize(const char * s, int & width, int & height)
height = cHeight;
}
void Graphics::draw_icon(int x, int y, Icon icon)
void Graphics::draw_icon(int x, int y, Icon icon, unsigned char alpha)
{
y--;
switch(icon)
{
case IconOpen:
drawchar(x, y, 0x81, 255, 255, 255, 255);
drawchar(x, y, 0x81, 255, 255, 255, alpha);
break;
case IconReload:
drawchar(x, y, 0x91, 255, 255, 255, 255);
drawchar(x, y, 0x91, 255, 255, 255, alpha);
break;
case IconSave:
drawchar(x, y, 0x82, 255, 255, 255, 255);
drawchar(x, y, 0x82, 255, 255, 255, alpha);
break;
case IconVoteUp:
drawchar(x, y, 0xCB, 0, 187, 18, 255);
drawchar(x, y, 0xCB, 0, 187, 18, alpha);
break;
case IconVoteDown:
drawchar(x, y, 0xCA, 187, 40, 0, 255);
drawchar(x, y, 0xCA, 187, 40, 0, alpha);
break;
case IconTag:
drawchar(x, y, 0x83, 255, 255, 255, 255);
drawchar(x, y, 0x83, 255, 255, 255, alpha);
break;
case IconNew:
drawchar(x, y, 0x92, 255, 255, 255, 255);
drawchar(x, y, 0x92, 255, 255, 255, alpha);
break;
case IconLogin:
drawchar(x, y, 0x84, 255, 255, 255, 255);
drawchar(x, y, 0x84, 255, 255, 255, alpha);
break;
case IconSimulationSettings:
drawchar(x, y, 0xCF, 255, 255, 255, 255);
drawchar(x, y+1, 0xCF, 255, 255, 255, alpha);
break;
case IconRenderSettings:
addchar(x, y, 0xD8, 255, 0, 0, 255);
addchar(x, y, 0xD9, 0, 255, 0, 255);
addchar(x, y, 0xDA, 0, 0, 255, 255);
addchar(x, y+1, 0xD8, 255, 0, 0, alpha);
addchar(x, y+1, 0xD9, 0, 255, 0, alpha);
addchar(x, y+1, 0xDA, 0, 0, 255, alpha);
break;
case IconPause:
drawchar(x, y, 0x90, 255, 255, 255, 255);
drawchar(x, y, 0x90, 255, 255, 255, alpha);
break;
case IconFavourite:
drawchar(x, y, 0xCC, 192, 160, 64, 255);
drawchar(x, y, 0xCC, 192, 160, 64, alpha);
break;
case IconReport:
drawchar(x, y, 0xE3, 255, 255, 0, 255);
drawchar(x, y, 0xE3, 255, 255, 0, alpha);
break;
case IconUsername:
drawchar(x, y, 0x8B, 32, 64, 128, 255);
drawchar(x, y, 0x8A, 255, 255, 255, 255);
drawchar(x, y, 0x8B, 32, 64, 128, alpha);
drawchar(x, y, 0x8A, 255, 255, 255, alpha);
break;
case IconPassword:
drawchar(x, y, 0x8C, 160, 144, 32, 255);
drawchar(x, y, 0x84, 255, 255, 255, 255);
drawchar(x, y, 0x8C, 160, 144, 32, alpha);
drawchar(x, y, 0x84, 255, 255, 255, alpha);
break;
case IconClose:
drawchar(x, y, 0xAA, 230, 230, 230, 255);
drawchar(x, y, 0xAA, 230, 230, 230, alpha);
break;
case IconVoteSort:
case IconDateSort:
case IconFolder:
case IconSearch:
case IconDelete:
drawchar(x, y, 0x86, 255, 55, 55, 255);
drawchar(x, y, 0x85, 255, 255, 255, 255);
drawchar(x, y, 0x86, 255, 55, 55, alpha);
drawchar(x, y, 0x85, 255, 255, 255, alpha);
break;
default:
drawchar(x, y, 't', 255, 255, 255, 255);
drawchar(x, y, 't', 255, 255, 255, alpha);
break;
}
}

View File

@ -138,7 +138,7 @@ public:
void blendpixel(int x, int y, int r, int g, int b, int a);
void addpixel(int x, int y, int r, int g, int b, int a);
void draw_icon(int x, int y, Icon icon);
void draw_icon(int x, int y, Icon icon, unsigned char alpha = 255);
void Clear();
void Finalise();

View File

@ -103,7 +103,7 @@ void Component::TextPosition(std::string displayText)
}
if(Appearance.icon)
{
iconPosition = textPosition;//-ui::Point(0, 1);
iconPosition = textPosition-ui::Point(0, 1);
textPosition.X += 15;
}
}