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