2013-12-11 03:23:47 +00:00
|
|
|
#include "SystemView.h"
|
|
|
|
#include "../SystemData.h"
|
|
|
|
#include "../Renderer.h"
|
|
|
|
#include "../Log.h"
|
2013-12-24 17:50:26 +00:00
|
|
|
#include "../Window.h"
|
|
|
|
#include "ViewController.h"
|
2013-12-11 03:23:47 +00:00
|
|
|
|
|
|
|
SystemView::SystemView(Window* window, SystemData* system) : GuiComponent(window),
|
|
|
|
mSystem(system),
|
|
|
|
|
|
|
|
mHeaderImage(window),
|
|
|
|
mHeaderText(window),
|
|
|
|
mImage(window)
|
|
|
|
{
|
|
|
|
setSize((float)Renderer::getScreenWidth(), (float)Renderer::getScreenHeight());
|
|
|
|
|
|
|
|
mHeaderImage.setOrigin(0.5f, 0.0f);
|
|
|
|
mHeaderImage.setPosition(mSize.x() / 2, 0);
|
|
|
|
mHeaderImage.setResize(0, mSize.y() * 0.2f, true);
|
|
|
|
|
2013-12-12 19:17:03 +00:00
|
|
|
mHeaderText.setPosition(0, 6);
|
2013-12-11 03:23:47 +00:00
|
|
|
mHeaderText.setSize(mSize.x(), 0);
|
|
|
|
mHeaderText.setCentered(true);
|
|
|
|
|
|
|
|
mImage.setOrigin(0.5f, 0.5f);
|
2013-12-12 19:17:03 +00:00
|
|
|
mImage.setPosition(mSize.x() / 2, mSize.y() * 0.6f);
|
|
|
|
mImage.setResize(0, mSize.y() * 0.8f, false);
|
2013-12-11 03:23:47 +00:00
|
|
|
|
|
|
|
addChild(&mImage);
|
|
|
|
addChild(&mHeaderText);
|
|
|
|
addChild(&mHeaderImage);
|
|
|
|
|
|
|
|
updateData();
|
|
|
|
}
|
|
|
|
|
|
|
|
void SystemView::updateData()
|
|
|
|
{
|
|
|
|
// header
|
|
|
|
if(mSystem->getTheme()->getImage("headerImage").path.empty())
|
|
|
|
{
|
|
|
|
// use text
|
|
|
|
mHeaderImage.setImage("");
|
|
|
|
mHeaderText.setText(mSystem->getFullName());
|
|
|
|
}else{
|
|
|
|
// use image
|
|
|
|
mHeaderText.setText("");
|
|
|
|
mHeaderImage.setImage(mSystem->getTheme()->getImage("headerImage").getTexture());
|
|
|
|
}
|
|
|
|
|
|
|
|
mImage.setImage(mSystem->getTheme()->getImage("systemImage").getTexture());
|
|
|
|
}
|
2013-12-24 17:50:26 +00:00
|
|
|
|
|
|
|
bool SystemView::input(InputConfig* config, Input input)
|
|
|
|
{
|
|
|
|
if(input.value != 0)
|
|
|
|
{
|
|
|
|
if(config->isMappedTo("left", input))
|
|
|
|
{
|
|
|
|
mWindow->getViewController()->goToSystemView(mSystem->getPrev());
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
if(config->isMappedTo("right", input))
|
|
|
|
{
|
|
|
|
mWindow->getViewController()->goToSystemView(mSystem->getNext());
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
if(config->isMappedTo("a", input))
|
|
|
|
{
|
|
|
|
mWindow->getViewController()->goToGameList(mSystem);
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return GuiComponent::input(config, input);
|
|
|
|
}
|