summaryrefslogtreecommitdiff
path: root/src/interface
diff options
context:
space:
mode:
Diffstat (limited to 'src/interface')
-rw-r--r--src/interface/Engine.cpp8
-rw-r--r--src/interface/SaveButton.h1
-rw-r--r--src/interface/Window.h6
3 files changed, 12 insertions, 3 deletions
diff --git a/src/interface/Engine.cpp b/src/interface/Engine.cpp
index 6f81f56..19da36e 100644
--- a/src/interface/Engine.cpp
+++ b/src/interface/Engine.cpp
@@ -51,6 +51,14 @@ void Engine::Exit()
void Engine::ShowWindow(Window * window)
{
+ if(window->Position.X==-1)
+ {
+ window->Position.X = (width_-window->Size.X)/2;
+ }
+ if(window->Position.Y==-1)
+ {
+ window->Position.Y = (height_-window->Size.Y)/2;
+ }
if(state_)
{
windows.push(state_);
diff --git a/src/interface/SaveButton.h b/src/interface/SaveButton.h
index 8019a3c..65cff52 100644
--- a/src/interface/SaveButton.h
+++ b/src/interface/SaveButton.h
@@ -39,6 +39,7 @@ public:
virtual void Draw(const Point& screenPos);
virtual void Tick(float dt);
+ Save * GetSave() { return save; }
inline bool GetState() { return state; }
virtual void DoAction();
void SetActionCallback(SaveButtonAction * action);
diff --git a/src/interface/Window.h b/src/interface/Window.h
index 581b91f..4fc2b14 100644
--- a/src/interface/Window.h
+++ b/src/interface/Window.h
@@ -23,6 +23,9 @@ enum ChromeStyle
class Window
{
public:
+ Point Position;
+ Point Size;
+
Window(Point _position, Point _size);
virtual ~Window();
@@ -74,9 +77,6 @@ enum ChromeStyle
virtual void OnKeyRelease(int key, bool shift, bool ctrl, bool alt) {}
std::vector<Component*> Components;
Component* focusedComponent_;
-
- Point Position;
- Point Size;
ChromeStyle chrome;
};