diff --git a/project/Build.xml b/project/Build.xml index 1b9a3d520..4acb14c10 100644 --- a/project/Build.xml +++ b/project/Build.xml @@ -35,16 +35,21 @@
+ + +
- + - + + +
- +
@@ -57,12 +62,16 @@
+ +
+ +
@@ -71,6 +80,9 @@ + + +
@@ -81,6 +93,7 @@ + @@ -89,12 +102,9 @@ - + - - - diff --git a/project/src/ExternalInterface.cpp b/project/src/ExternalInterface.cpp index a5f9eb97e..b18ff97c1 100644 --- a/project/src/ExternalInterface.cpp +++ b/project/src/ExternalInterface.cpp @@ -59,17 +59,21 @@ namespace lime { Image image; const char *filePath = val_string (path); + #ifdef LIME_PNG if (PNG::Decode (filePath, &image)) { return image.Value (); } + #endif + #ifdef LIME_JPEG if (JPEG::Decode (filePath, &image)) { return image.Value (); } + #endif return alloc_null (); diff --git a/project/src/backend/console/ConsoleApplication.cpp b/project/src/backend/console/ConsoleApplication.cpp new file mode 100644 index 000000000..a4f695795 --- /dev/null +++ b/project/src/backend/console/ConsoleApplication.cpp @@ -0,0 +1,50 @@ +#include "ConsoleApplication.h" + + +namespace lime { + + + AutoGCRoot* Application::callback = 0; + + + double Application::GetTicks () { + + return 0; + + } + + + ConsoleApplication::ConsoleApplication () { + + KeyEvent keyEvent; + MouseEvent mouseEvent; + RenderEvent renderEvent; + TouchEvent touchEvent; + UpdateEvent updateEvent; + WindowEvent windowEvent; + + } + + + ConsoleApplication::~ConsoleApplication () { + + + + } + + + int ConsoleApplication::Exec () { + + return 0; + + } + + + Application* CreateApplication () { + + return new ConsoleApplication (); + + } + + +} \ No newline at end of file diff --git a/project/src/backend/console/ConsoleApplication.h b/project/src/backend/console/ConsoleApplication.h new file mode 100644 index 000000000..7dae12d02 --- /dev/null +++ b/project/src/backend/console/ConsoleApplication.h @@ -0,0 +1,41 @@ +#ifndef LIME_CONSOLE_APPLICATION_H +#define LIME_CONSOLE_APPLICATION_H + + +#include +#include +#include +#include +#include +#include +#include + + +namespace lime { + + + class ConsoleApplication : public Application { + + public: + + ConsoleApplication (); + ~ConsoleApplication (); + + virtual int Exec (); + + private: + + KeyEvent keyEvent; + MouseEvent mouseEvent; + RenderEvent renderEvent; + TouchEvent touchEvent; + UpdateEvent updateEvent; + WindowEvent windowEvent; + + }; + + +} + + +#endif \ No newline at end of file diff --git a/project/src/backend/console/ConsoleRenderer.cpp b/project/src/backend/console/ConsoleRenderer.cpp new file mode 100644 index 000000000..0ab9d6c18 --- /dev/null +++ b/project/src/backend/console/ConsoleRenderer.cpp @@ -0,0 +1,36 @@ +#include "ConsoleWindow.h" +#include "ConsoleRenderer.h" + + +namespace lime { + + + ConsoleRenderer::ConsoleRenderer (Window* window) { + + currentWindow = window; + + } + + + ConsoleRenderer::~ConsoleRenderer () { + + + + } + + + void ConsoleRenderer::Flip () { + + + + } + + + Renderer* CreateRenderer (Window* window) { + + return new ConsoleRenderer (window); + + } + + +} \ No newline at end of file diff --git a/project/src/backend/console/ConsoleRenderer.h b/project/src/backend/console/ConsoleRenderer.h new file mode 100644 index 000000000..81a567210 --- /dev/null +++ b/project/src/backend/console/ConsoleRenderer.h @@ -0,0 +1,26 @@ +#ifndef LIME_CONSOLE_RENDERER_H +#define LIME_CONSOLE_RENDERER_H + + +#include + + +namespace lime { + + + class ConsoleRenderer : public Renderer { + + public: + + ConsoleRenderer (Window* window); + ~ConsoleRenderer (); + + virtual void Flip (); + + }; + + +} + + +#endif \ No newline at end of file diff --git a/project/src/backend/console/ConsoleWindow.cpp b/project/src/backend/console/ConsoleWindow.cpp new file mode 100644 index 000000000..6cf0d7021 --- /dev/null +++ b/project/src/backend/console/ConsoleWindow.cpp @@ -0,0 +1,43 @@ +#include "ConsoleWindow.h" + + +namespace lime { + + + ConsoleWindow::ConsoleWindow (Application* application, int width, int height, int flags, const char* title) { + + currentApplication = application; + this->flags = flags; + + } + + + ConsoleWindow::~ConsoleWindow () { + + + + } + + + void ConsoleWindow::Move (int x, int y) { + + + + } + + + void ConsoleWindow::Resize (int width, int height) { + + + + } + + + Window* CreateWindow (Application* application, int width, int height, int flags, const char* title) { + + return new ConsoleWindow (application, width, height, flags, title); + + } + + +} \ No newline at end of file diff --git a/project/src/backend/console/ConsoleWindow.h b/project/src/backend/console/ConsoleWindow.h new file mode 100644 index 000000000..55ab88594 --- /dev/null +++ b/project/src/backend/console/ConsoleWindow.h @@ -0,0 +1,27 @@ +#ifndef LIME_CONSOLE_WINDOW_H +#define LIME_CONSOLE_WINDOW_H + + +#include + + +namespace lime { + + + class ConsoleWindow : public Window { + + public: + + ConsoleWindow (Application* application, int width, int height, int flags, const char* title); + ~ConsoleWindow (); + + virtual void Move (int x, int y); + virtual void Resize (int width, int height); + + }; + + +} + + +#endif \ No newline at end of file