From a35c4def77f6fc1fce84d5eddc50627107b45c20 Mon Sep 17 00:00:00 2001 From: Edouard DUPIN Date: Sun, 23 Dec 2012 19:51:06 +0100 Subject: [PATCH] [TREE] remove the test software --- sources/ewol/renderer/os/gui.X11.cpp | 2 +- sources/ewol/widget/Widget.h | 11 + test/Makefile | 3 - test/human/Linux.mk | 26 - test/human/Makefile | 57 -- test/human/appl/Debug.cpp | 10 - test/human/appl/Debug.h | 27 - test/human/appl/MainWindows.cpp | 177 ----- test/human/appl/MainWindows.h | 39 - test/human/appl/TestButton.cpp | 320 --------- test/human/appl/TestButton.h | 34 - test/human/appl/TestButtonColor.cpp | 199 ----- test/human/appl/TestButtonColor.h | 35 - test/human/appl/TestCheckBox.cpp | 0 test/human/appl/TestCheckBox.h | 0 test/human/appl/TestEntry.cpp | 0 test/human/appl/TestEntry.h | 0 test/human/appl/TestImage.cpp | 0 test/human/appl/TestImage.h | 0 test/human/appl/TestLabel.cpp | 257 ------- test/human/appl/TestLabel.h | 41 -- test/human/appl/TestProgressBar.cpp | 0 test/human/appl/TestProgressBar.h | 0 test/human/appl/TestScene.cpp | 301 -------- test/human/appl/TestScene.h | 37 - test/human/appl/TestSlider.cpp | 0 test/human/appl/TestSlider.h | 0 test/human/appl/init.cpp | 107 --- test/human/config/Linux.config | 41 -- test/human/data/cube.obj | 46 -- test/human/data/grass.obj | 18 - test/human/data/grass.png | Bin 532 -> 0 bytes test/human/data/icon.png | Bin 6523 -> 0 bytes test/human/data/sphere.blend | Bin 414616 -> 0 bytes test/human/data/sphere.mtl | 11 - test/human/data/sphere.obj | 1000 -------------------------- test/human/data/stone.png | Bin 8664 -> 0 bytes test/human/data/stone2.png | Bin 7793 -> 0 bytes test/human/file.mk | 19 - 39 files changed, 12 insertions(+), 2806 deletions(-) delete mode 100644 test/Makefile delete mode 100644 test/human/Linux.mk delete mode 100644 test/human/Makefile delete mode 100644 test/human/appl/Debug.cpp delete mode 100644 test/human/appl/Debug.h delete mode 100644 test/human/appl/MainWindows.cpp delete mode 100644 test/human/appl/MainWindows.h delete mode 100644 test/human/appl/TestButton.cpp delete mode 100644 test/human/appl/TestButton.h delete mode 100644 test/human/appl/TestButtonColor.cpp delete mode 100644 test/human/appl/TestButtonColor.h delete mode 100644 test/human/appl/TestCheckBox.cpp delete mode 100644 test/human/appl/TestCheckBox.h delete mode 100644 test/human/appl/TestEntry.cpp delete mode 100644 test/human/appl/TestEntry.h delete mode 100644 test/human/appl/TestImage.cpp delete mode 100644 test/human/appl/TestImage.h delete mode 100644 test/human/appl/TestLabel.cpp delete mode 100644 test/human/appl/TestLabel.h delete mode 100644 test/human/appl/TestProgressBar.cpp delete mode 100644 test/human/appl/TestProgressBar.h delete mode 100644 test/human/appl/TestScene.cpp delete mode 100644 test/human/appl/TestScene.h delete mode 100644 test/human/appl/TestSlider.cpp delete mode 100644 test/human/appl/TestSlider.h delete mode 100644 test/human/appl/init.cpp delete mode 100644 test/human/config/Linux.config delete mode 100644 test/human/data/cube.obj delete mode 100644 test/human/data/grass.obj delete mode 100644 test/human/data/grass.png delete mode 100644 test/human/data/icon.png delete mode 100644 test/human/data/sphere.blend delete mode 100644 test/human/data/sphere.mtl delete mode 100644 test/human/data/sphere.obj delete mode 100644 test/human/data/stone.png delete mode 100644 test/human/data/stone2.png delete mode 100644 test/human/file.mk diff --git a/sources/ewol/renderer/os/gui.X11.cpp b/sources/ewol/renderer/os/gui.X11.cpp index 6b7666cf..064fd2a6 100644 --- a/sources/ewol/renderer/os/gui.X11.cpp +++ b/sources/ewol/renderer/os/gui.X11.cpp @@ -1207,7 +1207,7 @@ int guiInterface::main(int argc, const char *argv[]) etk::UString myIcon = APP_Icon(); SetIcon(myIcon); CursorDisplay(true); - GrabPointerEvents(true); + //GrabPointerEvents(true); // Run ... X11_Run(); // close X11 : diff --git a/sources/ewol/widget/Widget.h b/sources/ewol/widget/Widget.h index 11ee37dc..a67de4ee 100644 --- a/sources/ewol/widget/Widget.h +++ b/sources/ewol/widget/Widget.h @@ -440,6 +440,17 @@ namespace ewol { * @return --- */ virtual void OnRegenerateDisplay(void) { }; + // grab cursor mode + private: + /** + * @brief Grab the cursor (hide it and mouvement is now an offset) + */ + void GrabCursor(void); + /** + * @brief Un-Grab the cursor (default mode cursor ofset) + */ + void UnGrabCursor(void); + }; // end of the class Widget declaration diff --git a/test/Makefile b/test/Makefile deleted file mode 100644 index 0709181a..00000000 --- a/test/Makefile +++ /dev/null @@ -1,3 +0,0 @@ - -all: - cd human ; make diff --git a/test/human/Linux.mk b/test/human/Linux.mk deleted file mode 100644 index a15cc78d..00000000 --- a/test/human/Linux.mk +++ /dev/null @@ -1,26 +0,0 @@ -LOCAL_PATH := $(call my-dir) - -include $(CLEAR_VARS) - -# load the common sources file of the platform -include $(LOCAL_PATH)/file.mk - -LOCAL_CONFIG_FILES := Config.in - -# name of the librairy -LOCAL_MODULE := human - -# name of the dependency -LOCAL_STATIC_LIBRARIES := ewol - -LOCAL_C_INCLUDES := $(LOCAL_PATH) - -LOCAL_SRC_FILES := $(FILE_LIST) - - -LOCAL_LDLIBS := - -LOCAL_CFLAGS := -DPROJECT_NAME="\"$(LOCAL_MODULE)\"" - -include $(BUILD_EXECUTABLE) - diff --git a/test/human/Makefile b/test/human/Makefile deleted file mode 100644 index 3a1b55f9..00000000 --- a/test/human/Makefile +++ /dev/null @@ -1,57 +0,0 @@ -#############################################################################" -# main makefile for a basic application -# this is minimal application main makefile -#############################################################################" - -# Project name ==> generate the application name [a-z] <== make attention at the case this generate error on Android compilation -PROJECT_NAME=human - -#Can be manny things, but limit whith no space no special char and no Maj ... [a-z] -# com : Commercial -# net : Network?? -# org : Organisation -# gov : Governement -# mil : Military -# edu : Education -# pri : Private -# museum : ... -PROJECT_COMPAGNY_TYPE=org - -# Compagny name of the project [a-zA-Z0-9 \-] -PROJECT_COMPAGNY_NAME=Edouard DUPIN - -# List of mainainer that might be contact in problem case : "Mr NAME Surname" "second ..." -PROJECT_MAINTAINER="Mr DUPIN Edouard " - -# the icon of the project is all time needed ... if it is not present the ewol icon might be set (must be a .png file) (and no space in the fileName and filePath) -PROJECT_ICON=$(shell pwd)/data/icon.png - -# project section : (must be separate by coma -# refer to : http://packages.debian.org/sid/ -# admin cli-mono comm database debian-installer -# debug doc editors electronics devel embedded -# fonts games gnome gnu-r gnustep graphics -# hamradio haskell httpd interpreters java -# kde kernel libdevel libs lisp localization -# mail math misc net news ocaml oldlibs otherosfs -# perl php python ruby science shells sound tex -# text utils vcs video virtual web x11 xfce zope ... -PROJECT_SECTION=test - -# project prority -# required : Packages which are necessary for the proper functioning of the system (usually, this means that dpkg functionality depends on these packages). Removing a required package may cause your system to become totally broken and you may not even be able to use dpkg to put things back, so only do so if you know what you are doing. Systems with only the required packages are probably unusable, but they do have enough functionality to allow the sysadmin to boot and install more software. -# important : Important programs, including those which one would expect to find on any Unix-like system. If the expectation is that an experienced Unix person who found it missing would say "What on earth is going on, where is foo?", it must be an important package.[6] Other packages without which the system will not run well or be usable must also have priority important. This does not include Emacs, the X Window System, TeX or any other large applications. The important packages are just a bare minimum of commonly-expected and necessary tools. -# standard : These packages provide a reasonably small but not too limited character-mode system. This is what will be installed by default if the user doesn't select anything else. It doesn't include many large applications. -# optional : (In a sense everything that isn't required is optional, but that's not what is meant here.) This is all the software that you might reasonably want to install if you didn't know what it was and don't have specialized requirements. This is a much larger system and includes the X Window System, a full TeX distribution, and many applications. Note that optional packages should not conflict with each other. -# extra : This contains all packages that conflict with others with required, important, standard or optional priorities, or are only likely to be useful if you already know what they are or have specialized requirements (such as packages containing only detached debugging symbols). -PROJECT_PRIORITY=extra - -# description of the current project inside quote and no \n -PROJECT_DESCRIPTION="Test software" - -# Add package needed : -# current user packages -USER_PACKAGES =$(shell pwd)/ - -# include the basic makefile of ewol : -include $(shell pwd)/../../Makefile.mk diff --git a/test/human/appl/Debug.cpp b/test/human/appl/Debug.cpp deleted file mode 100644 index bcc8ab30..00000000 --- a/test/human/appl/Debug.cpp +++ /dev/null @@ -1,10 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - -// *********** << needed to have a goo display (do not exeed) -const char * applLog = "human "; diff --git a/test/human/appl/Debug.h b/test/human/appl/Debug.h deleted file mode 100644 index 990225a3..00000000 --- a/test/human/appl/Debug.h +++ /dev/null @@ -1,27 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - -#ifndef __DEBUG_H__ -#define __DEBUG_H__ - -#include -#include - -extern const char * applLog; - -#define APPL_CRITICAL(data) ETK_CRITICAL(applLog, data) -#define APPL_WARNING(data) ETK_WARNING(applLog, data) -#define APPL_ERROR(data) ETK_ERROR(applLog, data) -#define APPL_INFO(data) ETK_INFO(applLog, data) -#define APPL_DEBUG(data) ETK_DEBUG(applLog, data) -#define APPL_VERBOSE(data) ETK_VERBOSE(applLog, data) -#define APPL_ASSERT(cond, data) ETK_ASSERT(applLog, cond, data) -#define APPL_CHECK_INOUT(cond) ETK_CHECK_INOUT(applLog, cond) -#define APPL_TODO(cond) ETK_TODO(applLog, cond) - -#endif diff --git a/test/human/appl/MainWindows.cpp b/test/human/appl/MainWindows.cpp deleted file mode 100644 index 4ae5394d..00000000 --- a/test/human/appl/MainWindows.cpp +++ /dev/null @@ -1,177 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -static const char * l_eventChangeTheme = "event-change-theme"; -static const char * l_eventChangeWidgetNext = "event-change-widget-test-next"; -static const char * l_eventChangeWidgetPrevious = "event-change-widget-test-previous"; - - -#undef __class__ -#define __class__ "MainWindows" - -MainWindows::MainWindows(void) : - m_idWidget(0), - m_subWidget(NULL) -{ - APPL_DEBUG("CREATE WINDOWS ... "); - widget::SizerHori* mySizerHori = NULL; - widget::Button* myButton = NULL; - - m_sizerVert = new widget::SizerVert(); - if (NULL == m_sizerVert) { - APPL_DEBUG("Allocation error mySizerVert"); - return; - } - SetSubWidget(m_sizerVert); - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - m_sizerVert->SubWidgetAdd(mySizerHori); - myButton = new widget::Button("default theme (cube)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("rounded theme"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeTheme); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Previous Widget test"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeWidgetPrevious); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Next Widget test"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeWidgetNext); - mySizerHori->SubWidgetAdd(myButton); - } - widget::Spacer* mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(3); - mySpacer->SetColor(0x000000FF); - m_sizerVert->SubWidgetAdd(mySpacer); - } - // add the basic widget with a strange methode ... - OnReceiveMessage(NULL, NULL, ""); -} - - -MainWindows::~MainWindows(void) -{ - -} - - -void MainWindows::OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data) -{ - if( CallerObject != this - && CallerObject != NULL) { - ewol::Windows::OnReceiveMessage(CallerObject, eventId, data); - } - APPL_INFO("Receive Event from the main windows ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - if (eventId == l_eventChangeTheme) { - if (data=="1") { - etk::theme::SetName("GUI", "rounded"); - } else { - etk::theme::SetName("GUI", "default"); - } - // Reload shaders and graphic system ... - ewol::resource::ReLoadResources(); - return; - } else if (eventId == l_eventChangeWidgetPrevious) { - m_idWidget--; - } else if (eventId == l_eventChangeWidgetNext) { - m_idWidget++; - } - - if (m_subWidget != NULL) { - delete (m_subWidget); - // inn theory it must be removed ... - m_subWidget = NULL; - } - // special init forcing ... - if(CallerObject == NULL) { - m_idWidget = 4; - } - switch(m_idWidget) - { - default: - m_idWidget = 0; - case 0: - m_subWidget = (ewol::Widget*)new widget::Label("Test software for EWOL"); - if (NULL != m_subWidget) { - m_subWidget->SetExpendX(true); - m_subWidget->SetExpendY(true); - m_sizerVert->SubWidgetAdd(m_subWidget); - } - break; - case 1: - m_subWidget = (ewol::Widget*)new TestButton(); - if (NULL != m_subWidget) { - m_sizerVert->SubWidgetAdd(m_subWidget); - } - break; - case 2: - m_subWidget = (ewol::Widget*)new TestButtonColor(); - if (NULL != m_subWidget) { - m_sizerVert->SubWidgetAdd(m_subWidget); - } - break; - case 3: - m_subWidget = (ewol::Widget*)new TestLabel(); - if (NULL != m_subWidget) { - m_sizerVert->SubWidgetAdd(m_subWidget); - } - break; - case 4: - m_subWidget = (ewol::Widget*)new TestScene(); - if (NULL != m_subWidget) { - m_sizerVert->SubWidgetAdd(m_subWidget); - } - break; - } -} - -void MainWindows::OnObjectRemove(ewol::EObject * removeObject) -{ - ewol::Windows::OnObjectRemove(removeObject); - if (m_subWidget == removeObject) { - m_subWidget = NULL; - } else if (m_sizerVert == removeObject) { - m_sizerVert = NULL; - } -} diff --git a/test/human/appl/MainWindows.h b/test/human/appl/MainWindows.h deleted file mode 100644 index b8de79d2..00000000 --- a/test/human/appl/MainWindows.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - -#ifndef __MAIN_WINDOWS_H__ -#define __MAIN_WINDOWS_H__ - -#include -#include -#include -#include -#include -#include - -class MainWindows : public ewol::Windows -{ - private: - widget::SizerVert* m_sizerVert; - ewol::Widget* m_subWidget; - int32_t m_idWidget; - public: - // Constructeur - MainWindows(void); - ~MainWindows(void); - // Derived function - const char * const GetObjectType(void) { return "MainWindows"; }; - // Derived function - virtual void OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data); - // Derived function - virtual void OnObjectRemove(ewol::EObject * removeObject); -}; - -#endif - - diff --git a/test/human/appl/TestButton.cpp b/test/human/appl/TestButton.cpp deleted file mode 100644 index daae8453..00000000 --- a/test/human/appl/TestButton.cpp +++ /dev/null @@ -1,320 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -static const char * l_eventChangeExpendX = "event-change-expend-X"; -static const char * l_eventChangeExpendY = "event-change-expend-Y"; -static const char * l_eventChangeFillX = "event-change-fill-X"; -static const char * l_eventChangeFillY = "event-change-fill-Y"; -static const char * l_eventChangeToggle = "event-change-toggle-mode"; -static const char * l_eventChangeText = "event-change-text"; -static const char * l_eventChangeTextToggle = "event-change-text-toggle"; -static const char * l_eventChangeImage = "event-change-image"; -static const char * l_eventChangeImageToggle = "event-change-image-toggle"; - -#undef __class__ -#define __class__ "TestButton" - -TestButton::TestButton(void) -{ - APPL_CRITICAL("Create "__class__" (start)"); - widget::SizerVert* mySizerVert2 = NULL; - widget::SizerHori* mySizerHori = NULL; - widget::Button* myButton = NULL; - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - myButton = new widget::Button("Expend X
(false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Expend X
(true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeExpendX); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Expend Y
(false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Expend Y
(true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeExpendY); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Toggle
(false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Toggle
(true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeToggle); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Text On toggle state
(false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Text On toggle state
(true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeTextToggle); - mySizerHori->SubWidgetAdd(myButton); - } - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - myButton = new widget::Button("Fill X (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Fill X (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeFillX); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Fill Y (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Fill Y (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeFillY); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Image (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Image (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeImage); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Image Toggle (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Image Toggle (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeImageToggle); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Change Text"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeText); - mySizerHori->SubWidgetAdd(myButton); - } - widget::Spacer* mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(10); - mySpacer->SetColor(0xFF000080); - SubWidgetAdd(mySpacer); - } - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(false); - mySpacer->SetFillY(true); - mySpacer->SetSize(10); - mySpacer->SetColor(0x00FF0080); - mySizerHori->SubWidgetAdd(mySpacer); - } - - m_testWidget = new widget::Button("My Button
And Some under line
plop
and an other super long line ..."); - if (NULL != m_testWidget) { - m_testWidget->SetExpendX(false); - m_testWidget->SetExpendY(false); - m_testWidget->SetFillX(false); - m_testWidget->SetFillY(false); - m_testWidget->RegisterOnEvent(this, ewolEventButtonPressed); - m_testWidget->RegisterOnEvent(this, ewolEventButtonDown); - m_testWidget->RegisterOnEvent(this, ewolEventButtonUp); - m_testWidget->RegisterOnEvent(this, ewolEventButtonEnter); - m_testWidget->RegisterOnEvent(this, ewolEventButtonLeave); - m_testWidget->RegisterOnEvent(this, ewolEventButtonValue); - mySizerHori->SubWidgetAdd(m_testWidget); - } - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(false); - mySpacer->SetFillY(true); - mySpacer->SetSize(10); - mySpacer->SetColor(0x0000FF80); - mySizerHori->SubWidgetAdd(mySpacer); - } - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(10); - mySpacer->SetColor(0x00FFFF80); - SubWidgetAdd(mySpacer); - } - APPL_CRITICAL("Create "__class__" (end)"); -} - - -TestButton::~TestButton(void) -{ - APPL_CRITICAL("Remove "__class__" ..."); -} - - -void TestButton::OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data) -{ - widget::SizerVert::OnReceiveMessage(CallerObject, eventId, data); - - //APPL_INFO("Receive Event from the main windows ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - if (m_testWidget == CallerObject) { - APPL_WARNING("Receive Event from tested Button ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - } - if (eventId == l_eventChangeExpendX) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetExpendX(true); - } else { - m_testWidget->SetExpendX(false); - } - } - } else if (eventId == l_eventChangeExpendY) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetExpendY(true); - } else { - m_testWidget->SetExpendY(false); - } - } - } else if (eventId == l_eventChangeFillX) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetFillX(true); - } else { - m_testWidget->SetFillX(false); - } - } - } else if (eventId == l_eventChangeFillY) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetFillY(true); - } else { - m_testWidget->SetFillY(false); - } - } - } else if (eventId == l_eventChangeToggle) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetToggleMode(true); - } else { - m_testWidget->SetToggleMode(false); - } - } - } else if (eventId == l_eventChangeTextToggle) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetLabelToggle("A stupid very long text on toggle

and on multiple lines"); - } else { - m_testWidget->SetLabelToggle(""); - } - } - } else if (eventId == l_eventChangeImage) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetImage("THEME:GUI:icon.png"); - m_testWidget->SetImageSize(50); - } else { - m_testWidget->SetImage(""); - } - } - } else if (eventId == l_eventChangeImageToggle) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetImageToggle("THEME:GUI:icon.png"); - } else { - m_testWidget->SetImageToggle(""); - } - } - } else if (eventId == l_eventChangeText) { - if (NULL!=m_testWidget) { - static int32_t countTextID = 1; - switch (countTextID%10) - { - case 0: - m_testWidget->SetLabel("simple Text"); - break; - case 1: - m_testWidget->SetLabel("Align Left"); - break; - case 2: - m_testWidget->SetLabel("Align right"); - break; - case 3: - m_testWidget->SetLabel("simple Text
With Some Other Lines
and more if you want ...
plop"); - break; - case 4: - m_testWidget->SetLabel("simple Text with bold"); - break; - case 5: - m_testWidget->SetLabel("simple Text with italic"); - break; - case 6: - m_testWidget->SetLabel("simple Text with italic bold"); - break; - case 7: - m_testWidget->SetLabel(""); - break; - case 8: - m_testWidget->SetLabel("simple Text with colored text"); - break; - default: - m_testWidget->SetLabel("My Button
And Some under line
plop
and an other super long line ..."); - break; - } - countTextID++; - } - } - - return; -} - -void TestButton::OnObjectRemove(ewol::EObject * removeObject) -{ - widget::SizerVert::OnObjectRemove(removeObject); - if (m_testWidget == removeObject) { - m_testWidget = NULL; - } -} diff --git a/test/human/appl/TestButton.h b/test/human/appl/TestButton.h deleted file mode 100644 index eaf44597..00000000 --- a/test/human/appl/TestButton.h +++ /dev/null @@ -1,34 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - -#ifndef __TEST_BUTTON_H__ -#define __TEST_BUTTON_H__ - -#include -#include -#include -#include -#include - -class TestButton : public widget::SizerVert -{ - private: - widget::Button* m_testWidget; - public: - // Constructeur - TestButton(void); - virtual ~TestButton(void); - // Derived function - virtual const char * const GetObjectType(void) { return "TestButton"; }; - // Derived function - virtual void OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data); - // Derived function - virtual void OnObjectRemove(ewol::EObject * removeObject); -}; - -#endif diff --git a/test/human/appl/TestButtonColor.cpp b/test/human/appl/TestButtonColor.cpp deleted file mode 100644 index 9e8f1a3a..00000000 --- a/test/human/appl/TestButtonColor.cpp +++ /dev/null @@ -1,199 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -static const char * l_eventChangeExpendX = "event-change-expend-X"; -static const char * l_eventChangeExpendY = "event-change-expend-Y"; -static const char * l_eventChangeFillX = "event-change-fill-X"; -static const char * l_eventChangeFillY = "event-change-fill-Y"; - -#undef __class__ -#define __class__ "TestButton" - -TestButtonColor::TestButtonColor(void) -{ - APPL_DEBUG("CREATE "__class__" ... "); - widget::SizerVert* mySizerVert2 = NULL; - widget::SizerHori* mySizerHori = NULL; - widget::Button* myButton = NULL; - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - myButton = new widget::Button("Expend X (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Expend X (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeExpendX); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Expend Y (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Expend Y (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeExpendY); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Fill X (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Fill X (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeFillX); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Fill Y (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Fill Y (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeFillY); - mySizerHori->SubWidgetAdd(myButton); - } - - widget::Spacer* mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(10); - mySpacer->SetColor(0xFF000080); - SubWidgetAdd(mySpacer); - } - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(false); - mySpacer->SetFillY(true); - mySpacer->SetSize(10); - mySpacer->SetColor(0x00FF0080); - mySizerHori->SubWidgetAdd(mySpacer); - } - - m_testWidget = new widget::ButtonColor(draw::color::olive); - if (NULL != m_testWidget) { - m_testWidget->SetExpendX(false); - m_testWidget->SetExpendY(false); - m_testWidget->SetFillX(false); - m_testWidget->SetFillY(false); - m_testWidget->RegisterOnEvent(this, ewolEventButtonColorChange); - mySizerHori->SubWidgetAdd(m_testWidget); - } - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(false); - mySpacer->SetFillY(true); - mySpacer->SetSize(10); - mySpacer->SetColor(0x0000FF80); - mySizerHori->SubWidgetAdd(mySpacer); - } - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(10); - mySpacer->SetColor(0x00FFFF80); - SubWidgetAdd(mySpacer); - } -} - - -TestButtonColor::~TestButtonColor(void) -{ - -} - - -void TestButtonColor::OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data) -{ - widget::SizerVert::OnReceiveMessage(CallerObject, eventId, data); - - //APPL_INFO("Receive Event from the main windows ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - if (m_testWidget == CallerObject) { - APPL_WARNING("Receive Event from tested Button ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - } - if (eventId == l_eventChangeExpendX) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetExpendX(true); - } else { - m_testWidget->SetExpendX(false); - } - } - } else if (eventId == l_eventChangeExpendY) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetExpendY(true); - } else { - m_testWidget->SetExpendY(false); - } - } - } else if (eventId == l_eventChangeFillX) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetFillX(true); - } else { - m_testWidget->SetFillX(false); - } - } - } else if (eventId == l_eventChangeFillY) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetFillY(true); - } else { - m_testWidget->SetFillY(false); - } - } - } - - return; -} - -void TestButtonColor::OnObjectRemove(ewol::EObject * removeObject) -{ - widget::SizerVert::OnObjectRemove(removeObject); - if (m_testWidget == removeObject) { - m_testWidget = NULL; - } -} diff --git a/test/human/appl/TestButtonColor.h b/test/human/appl/TestButtonColor.h deleted file mode 100644 index e09f7a20..00000000 --- a/test/human/appl/TestButtonColor.h +++ /dev/null @@ -1,35 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - -#ifndef __TEST_BUTTON_COLOR_H__ -#define __TEST_BUTTON_COLOR_H__ - -#include -#include -#include -#include -#include -#include - -class TestButtonColor : public widget::SizerVert -{ - private: - widget::ButtonColor* m_testWidget; - public: - // Constructeur - TestButtonColor(void); - virtual ~TestButtonColor(void); - // Derived function - virtual const char * const GetObjectType(void) { return "TestButton"; }; - // Derived function - virtual void OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data); - // Derived function - virtual void OnObjectRemove(ewol::EObject * removeObject); -}; - -#endif diff --git a/test/human/appl/TestCheckBox.cpp b/test/human/appl/TestCheckBox.cpp deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestCheckBox.h b/test/human/appl/TestCheckBox.h deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestEntry.cpp b/test/human/appl/TestEntry.cpp deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestEntry.h b/test/human/appl/TestEntry.h deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestImage.cpp b/test/human/appl/TestImage.cpp deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestImage.h b/test/human/appl/TestImage.h deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestLabel.cpp b/test/human/appl/TestLabel.cpp deleted file mode 100644 index c59cf576..00000000 --- a/test/human/appl/TestLabel.cpp +++ /dev/null @@ -1,257 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -static const char * l_eventChangeExpendX = "event-change-expend-X"; -static const char * l_eventChangeExpendY = "event-change-expend-Y"; -static const char * l_eventChangeFillX = "event-change-fill-X"; -static const char * l_eventChangeFillY = "event-change-fill-Y"; -static const char * l_eventChangeMaxSize = "event-change-maxSize"; -static const char * l_eventChangeLabel = "event-change-label"; - -#undef __class__ -#define __class__ "TestButton" - -TestLabel::TestLabel(void) : - m_labelId(0) -{ - APPL_DEBUG("CREATE "__class__" ... "); - widget::SizerVert* mySizerVert2 = NULL; - widget::SizerHori* mySizerHori = NULL; - widget::Button* myButton = NULL; - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - myButton = new widget::Button("Expend X (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Expend X (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeExpendX); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Expend Y (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Expend Y (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeExpendY); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Fill X (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Fill X (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeFillX); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Fill Y (false)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("Fill Y (true)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeFillY); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("maxSize (-1,-1)"); - if (NULL != myButton) { - myButton->SetToggleMode(true); - myButton->SetLabelToggle("maxSize (400,-1)"); - myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeMaxSize); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Next Label"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeLabel); - mySizerHori->SubWidgetAdd(myButton); - } - - widget::Spacer* mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(10); - mySpacer->SetColor(0xFF000080); - SubWidgetAdd(mySpacer); - } - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(false); - mySpacer->SetFillY(true); - mySpacer->SetSize(10); - mySpacer->SetColor(0x00FF0080); - mySizerHori->SubWidgetAdd(mySpacer); - } - - m_testWidget = new widget::Label("Basic label"); - if (NULL != m_testWidget) { - m_testWidget->SetExpendX(false); - m_testWidget->SetExpendY(false); - m_testWidget->SetFillX(false); - m_testWidget->SetFillY(false); - //m_testWidget->RegisterOnEvent(this, ewolEventButtonColorChange); - mySizerHori->SubWidgetAdd(m_testWidget); - } - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(false); - mySpacer->SetFillY(true); - mySpacer->SetSize(10); - mySpacer->SetColor(0x0000FF80); - mySizerHori->SubWidgetAdd(mySpacer); - } - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(10); - mySpacer->SetColor(0x00FFFF80); - SubWidgetAdd(mySpacer); - } -} - - -TestLabel::~TestLabel(void) -{ - -} - - -void TestLabel::OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data) -{ - widget::SizerVert::OnReceiveMessage(CallerObject, eventId, data); - - //APPL_INFO("Receive Event from the main windows ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - if (m_testWidget == CallerObject) { - APPL_WARNING("Receive Event from tested Button ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - } - if (eventId == l_eventChangeExpendX) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetExpendX(true); - } else { - m_testWidget->SetExpendX(false); - } - } - } else if (eventId == l_eventChangeExpendY) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetExpendY(true); - } else { - m_testWidget->SetExpendY(false); - } - } - } else if (eventId == l_eventChangeFillX) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetFillX(true); - } else { - m_testWidget->SetFillX(false); - } - } - } else if (eventId == l_eventChangeFillY) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetFillY(true); - } else { - m_testWidget->SetFillY(false); - } - } - } else if (eventId == l_eventChangeMaxSize) { - if (NULL!=m_testWidget) { - if (data=="1") { - m_testWidget->SetMaxSize(vec2(400,-1)); - } else { - m_testWidget->SetMaxSize(vec2(-1,-1)); - } - } - } else if (eventId == l_eventChangeLabel) { - if (NULL!=m_testWidget) { - m_labelId++; - switch(m_labelId) - { - default: - m_labelId=0; - case 0: - m_testWidget->SetLabel("Basic label"); - break; - case 1: - m_testWidget->SetLabel("Basic label"); - break; - case 2: - m_testWidget->SetLabel("
\n" - " Un jour Cosette se regarda par hasard dans son miroir et se dit: Tiens! Il lui semblait presque qu'elle était jolie. Ceci la jeta dans un trouble singulier. Jusqu'à ce moment elle n'avait point songé à sa figure. Elle se voyait dans son miroir, mais elle ne s'y regardait pas. Et puis, on lui avait souvent dit qu'elle était laide;
Jean Valjean seul disait doucement :
Mais non!
mais non!
Quoi qu'il en fut, Cosette s'était toujours crue laide, et avait grandi dans cette idée avec la résignation facile de l'enfance. Voici que tout d'un coup son miroir lui disait comme Jean Valjean : Mais non! Elle ne dormit pas de la nuit. Si j'étais jolie ? pensait-elle, comme cela serait drole que je fusse jolie! Et elle se rappelait celles de ses compagnes dont la beauté faisait effet dans le couvent, et elle se disait : Comment! je serais comme mademoiselle une telle!\n" - "
\n"); - break; - case 3: - m_testWidget->SetLabel("\n" - " Un jour Cosette se regarda par hasard dans son miroir et se dit: Tiens! Il lui semblait presque qu'elle était jolie. Ceci la jeta dans un trouble singulier. Jusqu'à ce moment elle n'avait point songé à sa figure. Elle se voyait dans son miroir, mais elle ne s'y regardait pas. Et puis, on lui avait souvent dit qu'elle était laide;
Jean Valjean seul disait doucement :
Mais non!
mais non!
Quoi qu'il en fut, Cosette s'était toujours crue laide, et avait grandi dans cette idée avec la résignation facile de l'enfance. Voici que tout d'un coup son miroir lui disait comme Jean Valjean : Mais non! Elle ne dormit pas de la nuit. Si j'étais jolie ? pensait-elle, comme cela serait drole que je fusse jolie! Et elle se rappelait celles de ses compagnes dont la beauté faisait effet dans le couvent, et elle se disait : Comment! je serais comme mademoiselle une telle!\n" - "
\n"); - break; - case 4: - m_testWidget->SetLabel("\n" - " Un jour Cosette se regarda par hasard dans son miroir et se dit: Tiens! Il lui semblait presque qu'elle était jolie. Ceci la jeta dans un trouble singulier. Jusqu'à ce moment elle n'avait point songé à sa figure. Elle se voyait dans son miroir, mais elle ne s'y regardait pas. Et puis, on lui avait souvent dit qu'elle était laide;
Jean Valjean seul disait doucement :
Mais non!
mais non!
Quoi qu'il en fut, Cosette s'était toujours crue laide, et avait grandi dans cette idée avec la résignation facile de l'enfance. Voici que tout d'un coup son miroir lui disait comme Jean Valjean : Mais non! Elle ne dormit pas de la nuit. Si j'étais jolie ? pensait-elle, comme cela serait drole que je fusse jolie! Et elle se rappelait celles de ses compagnes dont la beauté faisait effet dans le couvent, et elle se disait : Comment! je serais comme mademoiselle une telle!\n" - "
\n"); - break; - case 5: - m_testWidget->SetLabel("\n" - " Un jour Cosette se regarda par hasard dans son miroir et se dit: Tiens! Il lui semblait presque qu'elle était jolie. Ceci la jeta dans un trouble singulier. Jusqu'à ce moment elle n'avait point songé à sa figure. Elle se voyait dans son miroir, mais elle ne s'y regardait pas. Et puis, on lui avait souvent dit qu'elle était laide;
Jean Valjean seul disait doucement :
Mais non!
mais non!
Quoi qu'il en fut, Cosette s'était toujours crue laide, et avait grandi dans cette idée avec la résignation facile de l'enfance. Voici que tout d'un coup son miroir lui disait comme Jean Valjean : Mais non! Elle ne dormit pas de la nuit. Si j'étais jolie ? pensait-elle, comme cela serait drole que je fusse jolie! Et elle se rappelait celles de ses compagnes dont la beauté faisait effet dans le couvent, et elle se disait : Comment! je serais comme mademoiselle une telle!\n" - "
\n"); - break; - } - } - } - - return; -} - -void TestLabel::OnObjectRemove(ewol::EObject * removeObject) -{ - widget::SizerVert::OnObjectRemove(removeObject); - if (m_testWidget == removeObject) { - m_testWidget = NULL; - } -} diff --git a/test/human/appl/TestLabel.h b/test/human/appl/TestLabel.h deleted file mode 100644 index 68e656a0..00000000 --- a/test/human/appl/TestLabel.h +++ /dev/null @@ -1,41 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - -#ifndef __TEST_LABEL_H__ -#define __TEST_LABEL_H__ - -#include -#include -#include -#include -#include -#include - -class TestLabel : public widget::SizerVert -{ - private: - widget::Label* m_testWidget; - int32_t m_labelId; - public: - /** - * @brief Constructeur - */ - TestLabel(void); - /** - * @brief Destructor - */ - virtual ~TestLabel(void); - // Derived function - virtual const char * const GetObjectType(void) { return "TestButton"; }; - // Derived function - virtual void OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data); - // Derived function - virtual void OnObjectRemove(ewol::EObject * removeObject); -}; - -#endif diff --git a/test/human/appl/TestProgressBar.cpp b/test/human/appl/TestProgressBar.cpp deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestProgressBar.h b/test/human/appl/TestProgressBar.h deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestScene.cpp b/test/human/appl/TestScene.cpp deleted file mode 100644 index 5db4814f..00000000 --- a/test/human/appl/TestScene.cpp +++ /dev/null @@ -1,301 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -static const char * l_eventAddBox = "event-add-box"; -static const char * l_eventAddSphere = "event-add-sphere"; -static const char * l_eventRotationX = "event-rotation-X"; -static const char * l_eventRotationY = "event-rotation-Y"; -static const char * l_eventRotationZ = "event-rotation-Z"; -static const char * l_eventRotation0 = "event-rotation-0"; -static const char * l_eventLunch = "event-lunch"; -static const char * l_eventChangeTimeSpeed2 = "event-speed2"; -static const char * l_eventChangeTimeSpeed0 = "event-speed0.5"; -static const char * l_eventChangeTimeSpeed1 = "event-speed1"; -static const char * l_eventUp = "event-up"; -static const char * l_eventDown = "event-down"; - - -#undef __class__ -#define __class__ "TestScene" - -TestScene::TestScene(void) -{ - m_ground = new game::Element("DATA:grass.obj"); - m_gameEngine.AddElement(m_ground, true); - - APPL_CRITICAL("Create "__class__" (start)"); - widget::SizerVert* mySizerVert2 = NULL; - widget::SizerHori* mySizerHori = NULL; - widget::Button* myButton = NULL; - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - myButton = new widget::Button("Add Box"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventAddBox); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Add Sphere"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventAddSphere); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Rotation X"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventRotationX); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Rotation Y"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventRotationY); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Rotation Z"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventRotationZ); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("Rotation -"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventRotation0); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("UP"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventUp); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("DOWN"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventDown); - mySizerHori->SubWidgetAdd(myButton); - } - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - myButton = new widget::Button("lunch object"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventLunch); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("1x speed"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeTimeSpeed1); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("0.5x speed"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeTimeSpeed0); - mySizerHori->SubWidgetAdd(myButton); - } - myButton = new widget::Button("2x speed"); - if (NULL != myButton) { - myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeTimeSpeed2); - mySizerHori->SubWidgetAdd(myButton); - } - - widget::Spacer* mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(10); - mySpacer->SetColor(0xFF000080); - SubWidgetAdd(mySpacer); - } - - mySizerHori = new widget::SizerHori(); - if (NULL == mySizerHori) { - APPL_DEBUG("Allocation error mySizerHori"); - return; - } - SubWidgetAdd(mySizerHori); - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(false); - mySpacer->SetFillY(true); - mySpacer->SetSize(10); - mySpacer->SetColor(0x00FF0080); - mySizerHori->SubWidgetAdd(mySpacer); - } - - m_testWidget = new widget::Scene(&m_gameEngine); - if (NULL != m_testWidget) { - m_testWidget->SetExpendX(true); - m_testWidget->SetExpendY(true); - m_testWidget->SetFillX(true); - m_testWidget->SetFillY(true); - mySizerHori->SubWidgetAdd(m_testWidget); - } - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(false); - mySpacer->SetFillY(true); - mySpacer->SetSize(10); - mySpacer->SetColor(0x0000FF80); - mySizerHori->SubWidgetAdd(mySpacer); - } - - mySpacer = new widget::Spacer(); - if (NULL != mySpacer) { - mySpacer->SetExpendX(false); - mySpacer->SetExpendY(false); - mySpacer->SetFillX(true); - mySpacer->SetFillY(false); - mySpacer->SetSize(10); - mySpacer->SetColor(0x00FFFF80); - SubWidgetAdd(mySpacer); - } - // et other property on the Engine : - m_gameEngine.AddGravity(game::gravityEarth); - - - - APPL_CRITICAL("Create "__class__" (end)"); -} - - -TestScene::~TestScene(void) -{ - APPL_CRITICAL("Remove "__class__" ..."); -} - - -#include - -vec3 baseRotationVect; -vec3 baseMove; -class stupidCube : public game::Element -{ - public: - stupidCube(float poidKg=0.0f) : game::Element("DATA:cube.obj") - { - m_mass = poidKg; - }; - - // herited methode - virtual bool ArtificialIntelligence(int32_t deltaMicroSecond) - { - if (m_mass == 0.0f) { - if (baseRotationVect != vec3(0,0,0) ) { - Rotate(baseRotationVect, 0.01); - } - if (baseMove != vec3(0,0,0) ) { - Translate(baseMove); - baseMove = vec3(0,0,0); - } - } - return false; - } - -}; - - - - - - - - -void TestScene::OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data) -{ - widget::SizerVert::OnReceiveMessage(CallerObject, eventId, data); - - //APPL_INFO("Receive Event from the main windows ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - if (m_testWidget == CallerObject) { - APPL_WARNING("Receive Event from tested Scene ... : \"" << eventId << "\" ==> data=\"" << data << "\"" ); - } - if (eventId == l_eventAddBox) { - stupidCube * tmpp = new stupidCube(); - static bool firstTime = true; - if (firstTime==false) { - vec3 newPos = vec3(etk::tool::frand(-20,20),etk::tool::frand(-20,20),etk::tool::frand(1,8)); - APPL_DEBUG("add a box at the pos : " << newPos); - tmpp->Translate(newPos); - } - firstTime = false; - m_gameEngine.AddElement(tmpp, true); - } else if (eventId == l_eventAddSphere) { - if (NULL!=m_testWidget) { - - } - } else if (eventId == l_eventUp) { - baseMove = vec3(0.1,0,0); - } else if (eventId == l_eventDown) { - baseMove = vec3(-0.1,0,0); - } else if (eventId == l_eventRotationX) { - baseRotationVect = vec3(1,0,0); - } else if (eventId == l_eventRotationY) { - baseRotationVect = vec3(0,1,0); - } else if (eventId == l_eventRotationZ) { - baseRotationVect = vec3(0,0,1); - } else if (eventId == l_eventRotation0) { - baseRotationVect = vec3(0,0,0); - } else if (eventId == l_eventLunch) { - stupidCube * tmpp = new stupidCube(250); - tmpp->SetSpeed(vec3(10,10,50)); - m_gameEngine.AddElement(tmpp, true); - } else if (eventId == l_eventChangeTimeSpeed1) { - if (NULL!=m_testWidget) { - m_testWidget->SetRatioTime(1); - } - } else if (eventId == l_eventChangeTimeSpeed0) { - if (NULL!=m_testWidget) { - m_testWidget->SetRatioTime(0.5); - } - } else if (eventId == l_eventChangeTimeSpeed2) { - if (NULL!=m_testWidget) { - m_testWidget->SetRatioTime(2); - } - } - - return; -} - -void TestScene::OnObjectRemove(ewol::EObject * removeObject) -{ - widget::SizerVert::OnObjectRemove(removeObject); - if (m_testWidget == removeObject) { - m_testWidget = NULL; - } -} diff --git a/test/human/appl/TestScene.h b/test/human/appl/TestScene.h deleted file mode 100644 index 9573488b..00000000 --- a/test/human/appl/TestScene.h +++ /dev/null @@ -1,37 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - -#ifndef __TEST_SCENE_H__ -#define __TEST_SCENE_H__ - -#include -#include -#include -#include -#include - -class TestScene : public widget::SizerVert -{ - private: - game::Element* m_ground; - //game::Element m_sky; - game::Engine m_gameEngine; - widget::Scene* m_testWidget; - public: - // Constructeur - TestScene(void); - virtual ~TestScene(void); - // Derived function - virtual const char * const GetObjectType(void) { return "TestButton"; }; - // Derived function - virtual void OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, etk::UString data); - // Derived function - virtual void OnObjectRemove(ewol::EObject * removeObject); -}; - -#endif diff --git a/test/human/appl/TestSlider.cpp b/test/human/appl/TestSlider.cpp deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/TestSlider.h b/test/human/appl/TestSlider.h deleted file mode 100644 index e69de29b..00000000 diff --git a/test/human/appl/init.cpp b/test/human/appl/init.cpp deleted file mode 100644 index aed32185..00000000 --- a/test/human/appl/init.cpp +++ /dev/null @@ -1,107 +0,0 @@ -/** - * @author Edouard DUPIN - * - * @copyright 2010, Edouard DUPIN, all right reserved - * - * @license BSD v3 (see license file) - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -MainWindows * basicWindows = NULL; - - -/** - * @brief Main of the program (This can be set in every case, but it is not used in Andoid...). - * @param std IO - * @return std IO - */ -int main(int argc, const char *argv[]) -{ - // only one things to do : - return ewol::Run(argc, argv); -} - - -/** - * @brief main application function Initialisation - */ -void APP_Init(void) -{ - #ifdef __TARGET_OS__Linux - #ifdef MODE_RELEASE - APPL_INFO("==> Init "PROJECT_NAME" (START) (Linux) (Release)"); - #else - APPL_INFO("==> Init "PROJECT_NAME" (START) (Linux) (Debug)"); - #endif - #else - #ifdef MODE_RELEASE - APPL_INFO("==> Init "PROJECT_NAME" (START) (Android) (Release)"); - #else - APPL_INFO("==> Init "PROJECT_NAME" (START) (Android) (Debug)"); - #endif - #endif - etk::InitDefaultFolder(PROJECT_NAME); - ewol::ChangeSize(ivec2(800, 300)); - #ifdef __TARGET_OS__Android - ewol::config::FontSetDefault("FreeSerif", 19); - #else - ewol::config::FontSetDefault("FreeSerif", 14); - #endif - - basicWindows = new MainWindows(); - - if (NULL == basicWindows) { - APPL_ERROR("Can not allocate the basic windows"); - ewol::Stop(); - return; - } - // create the specific windows - ewol::WindowsSet(basicWindows); - - - // add files - APPL_INFO("show list of command line input : "); - for( int32_t iii=0 ; iii Init "PROJECT_NAME" (END)"); -} - - -/** - * @brief the system request the icon file name : - */ -etk::UString APP_Icon(void) -{ - etk::UString bitmapFile("DATA:iconHuman.bmp"); - return bitmapFile; -} - -/** - * @brief main application function Un-Initialisation - */ -void APP_UnInit(void) -{ - APPL_INFO("==> Un-Init "PROJECT_NAME" (START)"); - // Remove windows : - ewol::WindowsSet(NULL); - - if (NULL != basicWindows) { - delete(basicWindows); - basicWindows = NULL; - } - APPL_INFO("==> Un-Init "PROJECT_NAME" (END)"); -} - diff --git a/test/human/config/Linux.config b/test/human/config/Linux.config deleted file mode 100644 index 7299cf4e..00000000 --- a/test/human/config/Linux.config +++ /dev/null @@ -1,41 +0,0 @@ -# -# Automatically generated make config: don't edit -# Linux kernel version: -# - -# -# Modules -# -BUILD_HUMAN=y -# BUILD_AGG is not set -# BUILD_ETK is not set -# BUILD_EWOL is not set -# BUILD_FREETYPE is not set -# BUILD_LUA is not set -# BUILD_OGG is not set -# BUILD_PARSERSVG is not set -# BUILD_LIBPNG is not set -# BUILD_PORTAUDIO is not set -# BUILD_TINYXML is not set -# BUILD_ZLIB is not set -# BUILD_LIBZIP is not set - -# -# edn -# - -# -# General -# -APPL_BUFFER_FONT_NORMAL=y -# APPL_BUFFER_FONT_DISTANCE_FIELD is not set - -# -# ewol -# - -# -# General -# -# __EWOL_INTEGRATED_FONT__ is not set -__EWOL_APPL_BASIC_TITLE__="Edn : Sources Code Editor" diff --git a/test/human/data/cube.obj b/test/human/data/cube.obj deleted file mode 100644 index 47f3dbce..00000000 --- a/test/human/data/cube.obj +++ /dev/null @@ -1,46 +0,0 @@ -# Blender3D v249 OBJ File: untitled.blend -# www.blender3d.org -mtllib cube.mtl -v 1.0 -1.0 -1.0 -v 1.0 -1.0 1.0 -v -1.0 -1.0 1.0 -v -1.0 -1.0 -1.0 -v 1.0 1.0 -1.0 -v 1.0 1.0 1.0 -v -1.0 1.0 1.0 -v -1.0 1.0 -1.0 - -vt 0.0 0.0 -vt 1.0 0.0 -vt 1.0 1.0 -vt 0.0 1.0 - -vn 0.000000 0.000000 -1.000000 -vn -1.000000 -0.000000 -0.000000 -vn -0.000000 -0.000000 1.000000 -vn -0.000001 0.000000 1.000000 -vn 1.000000 -0.000000 0.000000 -vn 1.000000 0.000000 0.000001 -vn 0.000000 1.000000 -0.000000 -vn -0.000000 -1.000000 0.000000 -usemtl stone.png -s off - -f 5/1/1 1/2/1 4/3/1 -f 5/1/1 4/3/1 8/4/1 - -f 3/1/2 7/2/2 8/3/2 -f 3/1/2 8/3/2 4/4/2 - -f 2/1/3 6/2/3 3/3/3 -f 6/1/4 7/3/4 3/4/4 - -f 1/1/5 5/2/5 2/3/5 -f 5/1/6 6/3/6 2/4/6 - -f 5/1/7 8/2/7 6/3/7 -f 8/1/7 7/3/7 6/4/7 - -f 1/1/8 2/2/8 3/3/8 -f 1/1/8 3/3/8 4/4/8 - diff --git a/test/human/data/grass.obj b/test/human/data/grass.obj deleted file mode 100644 index 0da13794..00000000 --- a/test/human/data/grass.obj +++ /dev/null @@ -1,18 +0,0 @@ -# done myself -v 100.0 -100.0 0.0 -v 100.0 100.0 0.0 -v -100.0 100.0 0.0 -v -100.0 -100.0 0.0 - -vt 0.0 0.0 -vt 100.0 0.0 -vt 100.0 100.0 -vt 0.0 100.0 - -vn 0.000000 0.000000 1.000000 - -usemtl grass.png - -f 1/1/1 2/2/1 3/3/1 -f 1/1/1 3/3/1 4/4/1 - diff --git a/test/human/data/grass.png b/test/human/data/grass.png deleted file mode 100644 index fd7ddbea5f28353b6327aa4d1ab4c29013257e0a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 532 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

gsG^C`{qRs8dPDU~DZPt|1t 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 z;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12 zcm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL z9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mlse zDY-{59>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p z1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY z!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKU zFdpf8ta}9G5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77 z;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12 zcm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL z9>I77I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY z5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p z1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY z!FUAY5sXJL9_c=ydj#VVj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4S zj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77 z;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12 zcm(4Sj7KmY!FUAYk?x_pM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8m zM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY z5sXJL9>I77;}MKUFdo5p1mh8mM=&12cm(4Sj7KmY!FUAY5sXJL9>I77;}MKUFdo5p z1mh8mM=&12cm(4Sj7KmY>G>1)2*x8Ak6=84@d(Bv7>{5)g7FB(BN&fhJc98E#v>Sy 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

B4=d)Al3SQvqF4YU`Y_7o< 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 diff --git a/test/human/data/sphere.mtl b/test/human/data/sphere.mtl deleted file mode 100644 index 4c33a0c0..00000000 --- a/test/human/data/sphere.mtl +++ /dev/null @@ -1,11 +0,0 @@ -# Blender MTL File: 'sphere.blend' -# Material Count: 1 -newmtl -Ns 0 -Ka 0.000000 0.000000 0.000000 -Kd 0.8 0.8 0.8 -Ks 0.8 0.8 0.8 -d 1 -illum 2 - - diff --git a/test/human/data/sphere.obj b/test/human/data/sphere.obj deleted file mode 100644 index 0ce65cfc..00000000 --- a/test/human/data/sphere.obj +++ /dev/null @@ -1,1000 +0,0 @@ -# Blender v2.63 (sub 0) OBJ File: 'sphere.blend' -# www.blender.org -mtllib sphere.mtl -o Sphere -v -0.199344 0.974210 0.006823 -v -0.386937 0.917304 0.006823 -v -0.559824 0.824895 0.006823 -v -0.711361 0.700532 0.006823 -v -0.835724 0.548995 0.006823 -v -0.928133 0.376108 0.006823 -v -0.985039 0.188515 0.006823 -v -1.004254 -0.006575 0.006823 -v -0.985039 -0.201665 0.006823 -v -0.928133 -0.389258 0.006823 -v -0.835724 -0.562145 0.006823 -v -0.711361 -0.713682 0.006823 -v -0.559824 -0.838045 0.006823 -v -0.386937 -0.930455 0.006823 -v -0.199344 -0.987360 0.006823 -v -0.004254 -1.006575 0.006823 -v -0.195596 0.974210 -0.031237 -v -0.379584 0.917304 -0.067835 -v -0.549149 0.824894 -0.101563 -v -0.697774 0.700532 -0.131127 -v -0.819747 0.548995 -0.155389 -v -0.910381 0.376108 -0.173417 -v -0.966194 0.188515 -0.184519 -v -0.985039 -0.006575 -0.188267 -v -0.966194 -0.201665 -0.184519 -v -0.910381 -0.389258 -0.173417 -v -0.819747 -0.562145 -0.155389 -v -0.697774 -0.713682 -0.131127 -v -0.549149 -0.838045 -0.101563 -v -0.379584 -0.930455 -0.067835 -v -0.195595 -0.987360 -0.031237 -v -0.184494 0.974210 -0.067835 -v -0.357807 0.917304 -0.139623 -v -0.517534 0.824894 -0.205784 -v -0.657535 0.700532 -0.263775 -v -0.772432 0.548995 -0.311367 -v -0.857807 0.376108 -0.346730 -v -0.910381 0.188515 -0.368507 -v -0.928133 -0.006575 -0.375860 -v -0.910381 -0.201665 -0.368507 -v -0.857807 -0.389258 -0.346730 -v -0.772432 -0.562145 -0.311367 -v -0.657535 -0.713682 -0.263775 -v -0.517534 -0.838045 -0.205784 -v -0.357807 -0.930455 -0.139623 -v -0.184494 -0.987360 -0.067835 -v -0.166466 0.974210 -0.101563 -v -0.322444 0.917304 -0.205784 -v -0.466194 0.824894 -0.301835 -v -0.592192 0.700532 -0.386024 -v -0.695596 0.548995 -0.455117 -v -0.772432 0.376108 -0.506457 -v -0.819747 0.188515 -0.538072 -v -0.835724 -0.006575 -0.548747 -v -0.819747 -0.201665 -0.538072 -v -0.772432 -0.389258 -0.506457 -v -0.695596 -0.562145 -0.455117 -v -0.592192 -0.713682 -0.386024 -v -0.466194 -0.838045 -0.301835 -v -0.322443 -0.930455 -0.205784 -v -0.166465 -0.987360 -0.101563 -v -0.142204 0.974210 -0.131127 -v -0.274852 0.917304 -0.263775 -v -0.397101 0.824894 -0.386024 -v -0.504254 0.700532 -0.493177 -v -0.592192 0.548995 -0.581115 -v -0.657535 0.376108 -0.646458 -v -0.697774 0.188515 -0.686697 -v -0.711361 -0.006575 -0.700284 -v -0.697774 -0.201665 -0.686697 -v -0.657535 -0.389258 -0.646458 -v -0.592192 -0.562145 -0.581115 -v -0.504254 -0.713682 -0.493177 -v -0.397101 -0.838045 -0.386024 -v -0.274852 -0.930455 -0.263775 -v -0.142203 -0.987360 -0.131127 -v -0.112640 0.974210 -0.155389 -v -0.216861 0.917304 -0.311367 -v -0.312912 0.824894 -0.455117 -v -0.397101 0.700532 -0.581115 -v -0.466193 0.548995 -0.684519 -v -0.517534 0.376108 -0.761355 -v -0.549149 0.188515 -0.808670 -v -0.559824 -0.006575 -0.824647 -v -0.549149 -0.201665 -0.808670 -v -0.517534 -0.389258 -0.761355 -v -0.466193 -0.562145 -0.684519 -v -0.397101 -0.713682 -0.581115 -v -0.312912 -0.838045 -0.455117 -v -0.216861 -0.930455 -0.311366 -v -0.112640 -0.987360 -0.155389 -v -0.078912 0.974210 -0.173417 -v -0.150700 0.917304 -0.346730 -v -0.216861 0.824894 -0.506457 -v -0.274852 0.700532 -0.646458 -v -0.322443 0.548995 -0.761355 -v -0.357807 0.376108 -0.846730 -v -0.379584 0.188515 -0.899304 -v -0.386937 -0.006575 -0.917057 -v -0.379584 -0.201665 -0.899304 -v -0.357807 -0.389258 -0.846730 -v -0.322443 -0.562145 -0.761355 -v -0.274852 -0.713682 -0.646458 -v -0.216861 -0.838045 -0.506457 -v -0.150700 -0.930455 -0.346730 -v -0.078911 -0.987360 -0.173417 -v -0.042314 0.974210 -0.184519 -v -0.078911 0.917304 -0.368507 -v -0.112640 0.824894 -0.538072 -v -0.142203 0.700532 -0.686697 -v -0.166465 0.548995 -0.808670 -v -0.184494 0.376108 -0.899304 -v -0.195595 0.188515 -0.955117 -v -0.199344 -0.006575 -0.973962 -v -0.195595 -0.201665 -0.955117 -v -0.184494 -0.389258 -0.899304 -v -0.166465 -0.562145 -0.808670 -v -0.142203 -0.713682 -0.686697 -v -0.112640 -0.838045 -0.538072 -v -0.078911 -0.930455 -0.368507 -v -0.042314 -0.987360 -0.184519 -v -0.004254 0.974210 -0.188267 -v -0.004254 0.917304 -0.375860 -v -0.004254 0.824894 -0.548747 -v -0.004254 0.700532 -0.700284 -v -0.004254 0.548995 -0.824647 -v -0.004254 0.376108 -0.917056 -v -0.004254 0.188515 -0.973962 -v -0.004254 -0.006575 -0.993177 -v -0.004254 -0.201665 -0.973962 -v -0.004254 -0.389258 -0.917056 -v -0.004254 -0.562145 -0.824647 -v -0.004254 -0.713682 -0.700284 -v -0.004254 -0.838045 -0.548747 -v -0.004254 -0.930455 -0.375860 -v -0.004254 -0.987360 -0.188267 -v 0.033807 0.974210 -0.184519 -v 0.070404 0.917304 -0.368507 -v 0.104133 0.824894 -0.538072 -v 0.133696 0.700532 -0.686697 -v 0.157958 0.548995 -0.808670 -v 0.175986 0.376108 -0.899304 -v 0.187088 0.188515 -0.955117 -v 0.190837 -0.006575 -0.973962 -v 0.187088 -0.201665 -0.955117 -v 0.175986 -0.389258 -0.899304 -v 0.157958 -0.562145 -0.808670 -v 0.133696 -0.713682 -0.686697 -v 0.104133 -0.838045 -0.538072 -v 0.070404 -0.930455 -0.368507 -v 0.033807 -0.987360 -0.184519 -v 0.070404 0.974210 -0.173417 -v 0.142193 0.917304 -0.346730 -v 0.208354 0.824894 -0.506457 -v 0.266344 0.700532 -0.646458 -v 0.313936 0.548995 -0.761355 -v 0.349300 0.376108 -0.846730 -v 0.371077 0.188515 -0.899304 -v 0.378430 -0.006575 -0.917056 -v 0.371077 -0.201665 -0.899304 -v 0.349300 -0.389258 -0.846730 -v 0.313936 -0.562145 -0.761355 -v 0.266344 -0.713682 -0.646458 -v 0.208354 -0.838045 -0.506457 -v 0.142193 -0.930455 -0.346730 -v 0.070404 -0.987360 -0.173417 -v 0.104133 0.974210 -0.155389 -v 0.208354 0.917304 -0.311367 -v 0.304405 0.824894 -0.455117 -v 0.388594 0.700532 -0.581115 -v 0.457686 0.548995 -0.684518 -v 0.509026 0.376108 -0.761355 -v 0.540642 0.188515 -0.808670 -v 0.551317 -0.006575 -0.824646 -v 0.540642 -0.201665 -0.808670 -v 0.509026 -0.389258 -0.761355 -v 0.457686 -0.562145 -0.684518 -v 0.388594 -0.713682 -0.581115 -v 0.304405 -0.838045 -0.455117 -v 0.208354 -0.930455 -0.311366 -v 0.104133 -0.987360 -0.155388 -v 0.133696 0.974210 -0.131127 -v 0.266345 0.917304 -0.263775 -v 0.388594 0.824894 -0.386024 -v 0.495746 0.700532 -0.493177 -v 0.583684 0.548995 -0.581114 -v 0.649028 0.376108 -0.646458 -v 0.689266 0.188515 -0.686697 -v 0.702853 -0.006575 -0.700283 -v 0.689266 -0.201665 -0.686697 -v 0.649028 -0.389258 -0.646458 -v 0.583684 -0.562145 -0.581114 -v 0.495746 -0.713682 -0.493177 -v 0.388594 -0.838045 -0.386024 -v 0.266344 -0.930455 -0.263775 -v 0.133696 -0.987360 -0.131126 -v 0.157958 0.974210 -0.101563 -v 0.313936 0.917304 -0.205784 -v 0.457686 0.824894 -0.301835 -v 0.583684 0.700532 -0.386024 -v 0.687088 0.548995 -0.455116 -v 0.763924 0.376108 -0.506457 -v 0.811239 0.188515 -0.538072 -v 0.827216 -0.006575 -0.548747 -v 0.811239 -0.201665 -0.538072 -v 0.763924 -0.389258 -0.506457 -v 0.687088 -0.562145 -0.455116 -v 0.583684 -0.713682 -0.386024 -v 0.457686 -0.838045 -0.301835 -v 0.313936 -0.930455 -0.205784 -v 0.157958 -0.987360 -0.101563 -v 0.175987 0.974210 -0.067835 -v 0.349300 0.917304 -0.139623 -v 0.509026 0.824894 -0.205784 -v 0.649028 0.700532 -0.263775 -v 0.763924 0.548995 -0.311366 -v 0.849300 0.376108 -0.346730 -v 0.901874 0.188515 -0.368507 -v 0.919626 -0.006575 -0.375860 -v 0.901874 -0.201665 -0.368507 -v 0.849300 -0.389258 -0.346730 -v 0.763924 -0.562145 -0.311366 -v 0.649028 -0.713682 -0.263775 -v 0.509026 -0.838045 -0.205784 -v 0.349300 -0.930455 -0.139623 -v 0.175986 -0.987360 -0.067835 -v 0.187088 0.974210 -0.031237 -v 0.371077 0.917304 -0.067835 -v 0.540641 0.824894 -0.101563 -v 0.689266 0.700532 -0.131126 -v 0.811239 0.548995 -0.155388 -v 0.901874 0.376108 -0.173417 -v 0.957686 0.188515 -0.184518 -v 0.976532 -0.006575 -0.188267 -v 0.957686 -0.201665 -0.184518 -v 0.901874 -0.389258 -0.173417 -v 0.811239 -0.562145 -0.155388 -v 0.689266 -0.713682 -0.131126 -v 0.540641 -0.838045 -0.101563 -v 0.371077 -0.930455 -0.067835 -v 0.187088 -0.987360 -0.031237 -v 0.190837 0.974210 0.006823 -v 0.378430 0.917304 0.006823 -v 0.551316 0.824894 0.006823 -v 0.702853 0.700532 0.006823 -v 0.827216 0.548995 0.006823 -v 0.919626 0.376108 0.006823 -v 0.976531 0.188515 0.006823 -v 0.995746 -0.006575 0.006823 -v 0.976532 -0.201665 0.006823 -v 0.919626 -0.389258 0.006823 -v 0.827216 -0.562145 0.006823 -v 0.702853 -0.713682 0.006823 -v 0.551316 -0.838045 0.006823 -v 0.378430 -0.930455 0.006823 -v 0.190837 -0.987360 0.006823 -v 0.187088 0.974210 0.044884 -v 0.371077 0.917304 0.081481 -v 0.540641 0.824894 0.115210 -v 0.689266 0.700532 0.144773 -v 0.811239 0.548995 0.169035 -v 0.901874 0.376108 0.187063 -v 0.957686 0.188515 0.198165 -v 0.976532 -0.006575 0.201914 -v 0.957686 -0.201665 0.198165 -v 0.901874 -0.389258 0.187063 -v 0.811239 -0.562145 0.169035 -v 0.689266 -0.713682 0.144773 -v 0.540641 -0.838045 0.115210 -v 0.371077 -0.930455 0.081481 -v 0.187088 -0.987360 0.044883 -v 0.175987 0.974210 0.081481 -v 0.349300 0.917304 0.153270 -v 0.509026 0.824894 0.219431 -v 0.649028 0.700532 0.277421 -v 0.763924 0.548995 0.325013 -v 0.849300 0.376108 0.360377 -v 0.901873 0.188515 0.382154 -v 0.919626 -0.006575 0.389507 -v 0.901874 -0.201665 0.382154 -v 0.849300 -0.389258 0.360377 -v 0.763924 -0.562145 0.325013 -v 0.649028 -0.713682 0.277421 -v 0.509026 -0.838045 0.219431 -v 0.349300 -0.930455 0.153270 -v 0.175986 -0.987360 0.081481 -v 0.157958 0.974210 0.115210 -v 0.313936 0.917304 0.219431 -v 0.457686 0.824894 0.315482 -v 0.583684 0.700532 0.399671 -v 0.687088 0.548995 0.468763 -v 0.763924 0.376108 0.520103 -v 0.811239 0.188515 0.551718 -v 0.827216 -0.006575 0.562394 -v 0.811239 -0.201665 0.551718 -v 0.763924 -0.389258 0.520103 -v 0.687088 -0.562145 0.468763 -v 0.583684 -0.713682 0.399671 -v 0.457686 -0.838045 0.315482 -v 0.313936 -0.930455 0.219431 -v 0.157958 -0.987360 0.115210 -v 0.133696 0.974210 0.144773 -v 0.266344 0.917304 0.277421 -v 0.388594 0.824894 0.399671 -v 0.495746 0.700532 0.506823 -v 0.583684 0.548995 0.594761 -v 0.649028 0.376108 0.660105 -v 0.689266 0.188515 0.700343 -v 0.702853 -0.006575 0.713930 -v 0.689266 -0.201665 0.700343 -v 0.649028 -0.389258 0.660105 -v 0.583684 -0.562145 0.594761 -v 0.495746 -0.713682 0.506823 -v 0.388594 -0.838045 0.399671 -v 0.266344 -0.930455 0.277421 -v 0.133696 -0.987360 0.144773 -v 0.104133 0.974210 0.169035 -v 0.208354 0.917304 0.325013 -v 0.304404 0.824894 0.468763 -v 0.388594 0.700532 0.594761 -v 0.457686 0.548995 0.698165 -v 0.509026 0.376108 0.775001 -v 0.540641 0.188515 0.822316 -v 0.551316 -0.006575 0.838293 -v 0.540641 -0.201665 0.822316 -v 0.509026 -0.389258 0.775001 -v 0.457686 -0.562145 0.698165 -v 0.388594 -0.713682 0.594761 -v 0.304404 -0.838045 0.468763 -v 0.208354 -0.930455 0.325013 -v 0.104133 -0.987360 0.169035 -v 0.070404 0.974210 0.187063 -v 0.142193 0.917304 0.360377 -v 0.208354 0.824894 0.520103 -v 0.266344 0.700532 0.660105 -v 0.313936 0.548995 0.775001 -v 0.349300 0.376108 0.860376 -v 0.371076 0.188515 0.912950 -v 0.378430 -0.006575 0.930703 -v 0.371076 -0.201665 0.912950 -v 0.349300 -0.389258 0.860376 -v 0.313936 -0.562145 0.775001 -v 0.266344 -0.713682 0.660105 -v 0.208354 -0.838045 0.520103 -v 0.142193 -0.930455 0.360377 -v 0.070404 -0.987360 0.187063 -v 0.033807 0.974210 0.198165 -v 0.070404 0.917304 0.382154 -v 0.104133 0.824894 0.551718 -v 0.133696 0.700532 0.700343 -v 0.157958 0.548995 0.822316 -v 0.175986 0.376108 0.912950 -v 0.187088 0.188515 0.968763 -v 0.190836 -0.006575 0.987608 -v 0.187088 -0.201665 0.968763 -v 0.175986 -0.389258 0.912950 -v 0.157958 -0.562145 0.822316 -v 0.133696 -0.713682 0.700343 -v 0.104133 -0.838045 0.551718 -v 0.070404 -0.930455 0.382153 -v 0.033807 -0.987360 0.198165 -v -0.004254 0.974210 0.201914 -v -0.004254 0.917304 0.389507 -v -0.004254 0.824894 0.562393 -v -0.004254 0.700532 0.713930 -v -0.004254 0.548995 0.838293 -v -0.004254 0.376108 0.930702 -v -0.004254 0.188515 0.987608 -v -0.004254 -0.006575 1.006823 -v -0.004254 -0.201665 0.987608 -v -0.004254 -0.389258 0.930702 -v -0.004254 -0.562145 0.838293 -v -0.004254 -0.713682 0.713930 -v -0.004254 -0.838045 0.562393 -v -0.004254 -0.930455 0.389507 -v -0.004254 -0.987360 0.201914 -v -0.042314 0.974210 0.198165 -v -0.078912 0.917304 0.382154 -v -0.112640 0.824894 0.551718 -v -0.142203 0.700532 0.700343 -v -0.166465 0.548995 0.822316 -v -0.184494 0.376108 0.912950 -v -0.195595 0.188515 0.968763 -v -0.199344 -0.006575 0.987608 -v -0.195596 -0.201665 0.968763 -v -0.184494 -0.389258 0.912950 -v -0.166465 -0.562145 0.822316 -v -0.142203 -0.713682 0.700343 -v -0.112640 -0.838045 0.551718 -v -0.078912 -0.930455 0.382153 -v -0.042314 -0.987360 0.198165 -v -0.078912 0.974210 0.187063 -v -0.150700 0.917304 0.360377 -v -0.216861 0.824894 0.520103 -v -0.274852 0.700532 0.660104 -v -0.322443 0.548995 0.775001 -v -0.357807 0.376108 0.860376 -v -0.379584 0.188515 0.912950 -v -0.386937 -0.006575 0.930702 -v -0.379584 -0.201665 0.912950 -v -0.357807 -0.389258 0.860376 -v -0.322443 -0.562145 0.775001 -v -0.274852 -0.713682 0.660104 -v -0.216861 -0.838045 0.520103 -v -0.150700 -0.930455 0.360376 -v -0.078911 -0.987360 0.187063 -v -0.112640 0.974210 0.169035 -v -0.216861 0.917304 0.325013 -v -0.312912 0.824894 0.468763 -v -0.397101 0.700532 0.594761 -v -0.466193 0.548995 0.698165 -v -0.517534 0.376108 0.775001 -v -0.549149 0.188515 0.822316 -v -0.559824 -0.006575 0.838292 -v -0.549149 -0.201665 0.822316 -v -0.517533 -0.389258 0.775001 -v -0.466193 -0.562145 0.698165 -v -0.397101 -0.713682 0.594761 -v -0.312912 -0.838045 0.468763 -v -0.216861 -0.930455 0.325013 -v -0.112640 -0.987360 0.169035 -v -0.004254 0.993425 0.006823 -v -0.142203 0.974210 0.144773 -v -0.274852 0.917304 0.277421 -v -0.397101 0.824894 0.399670 -v -0.504254 0.700532 0.506823 -v -0.592191 0.548995 0.594761 -v -0.657535 0.376108 0.660104 -v -0.697773 0.188515 0.700343 -v -0.711360 -0.006575 0.713930 -v -0.697773 -0.201665 0.700343 -v -0.657535 -0.389258 0.660104 -v -0.592191 -0.562145 0.594761 -v -0.504254 -0.713682 0.506823 -v -0.397101 -0.838045 0.399670 -v -0.274852 -0.930455 0.277421 -v -0.142203 -0.987360 0.144773 -v -0.166465 0.974210 0.115210 -v -0.322443 0.917304 0.219431 -v -0.466193 0.824894 0.315481 -v -0.592191 0.700532 0.399670 -v -0.695595 0.548995 0.468763 -v -0.772431 0.376108 0.520103 -v -0.819746 0.188515 0.551718 -v -0.835723 -0.006575 0.562393 -v -0.819747 -0.201665 0.551718 -v -0.772431 -0.389258 0.520103 -v -0.695595 -0.562145 0.468763 -v -0.592191 -0.713682 0.399670 -v -0.466193 -0.838045 0.315481 -v -0.322443 -0.930455 0.219431 -v -0.166465 -0.987360 0.115210 -v -0.184494 0.974210 0.081481 -v -0.357807 0.917304 0.153270 -v -0.517533 0.824894 0.219430 -v -0.657535 0.700532 0.277421 -v -0.772431 0.548995 0.325013 -v -0.857807 0.376108 0.360376 -v -0.910381 0.188515 0.382153 -v -0.928133 -0.006575 0.389506 -v -0.910381 -0.201665 0.382153 -v -0.857807 -0.389258 0.360376 -v -0.772431 -0.562145 0.325013 -v -0.657535 -0.713682 0.277421 -v -0.517533 -0.838045 0.219430 -v -0.357807 -0.930455 0.153270 -v -0.184494 -0.987360 0.081481 -v -0.195596 0.974210 0.044883 -v -0.379584 0.917304 0.081481 -v -0.549148 0.824894 0.115209 -v -0.697773 0.700532 0.144773 -v -0.819746 0.548995 0.169035 -v -0.910381 0.376108 0.187063 -v -0.966193 0.188515 0.198165 -v -0.985038 -0.006575 0.201913 -v -0.966193 -0.201665 0.198164 -v -0.910380 -0.389258 0.187063 -v -0.819746 -0.562145 0.169035 -v -0.697773 -0.713682 0.144773 -v -0.549148 -0.838045 0.115209 -v -0.379584 -0.930455 0.081481 -v -0.195595 -0.987360 0.044883 -usemtl -s off -f 28 29 13 12 -f 23 24 8 7 -f 18 19 3 2 -f 29 30 14 13 -f 24 25 9 8 -f 19 20 4 3 -f 30 31 15 14 -f 25 26 10 9 -f 20 21 5 4 -f 26 27 11 10 -f 21 22 6 5 -f 27 28 12 11 -f 22 23 7 6 -f 2 1 17 18 -f 43 44 29 28 -f 38 39 24 23 -f 33 34 19 18 -f 44 45 30 29 -f 39 40 25 24 -f 34 35 20 19 -f 45 46 31 30 -f 40 41 26 25 -f 35 36 21 20 -f 41 42 27 26 -f 36 37 22 21 -f 42 43 28 27 -f 37 38 23 22 -f 32 33 18 17 -f 57 58 43 42 -f 52 53 38 37 -f 47 48 33 32 -f 58 59 44 43 -f 53 54 39 38 -f 48 49 34 33 -f 59 60 45 44 -f 54 55 40 39 -f 49 50 35 34 -f 60 61 46 45 -f 55 56 41 40 -f 50 51 36 35 -f 56 57 42 41 -f 51 52 37 36 -f 65 66 51 50 -f 71 72 57 56 -f 66 67 52 51 -f 72 73 58 57 -f 67 68 53 52 -f 62 63 48 47 -f 73 74 59 58 -f 68 69 54 53 -f 63 64 49 48 -f 74 75 60 59 -f 69 70 55 54 -f 64 65 50 49 -f 75 76 61 60 -f 70 71 56 55 -f 84 85 70 69 -f 79 80 65 64 -f 90 91 76 75 -f 85 86 71 70 -f 80 81 66 65 -f 86 87 72 71 -f 81 82 67 66 -f 87 88 73 72 -f 82 83 68 67 -f 77 78 63 62 -f 88 89 74 73 -f 83 84 69 68 -f 78 79 64 63 -f 89 90 75 74 -f 103 104 89 88 -f 98 99 84 83 -f 93 94 79 78 -f 104 105 90 89 -f 99 100 85 84 -f 94 95 80 79 -f 105 106 91 90 -f 100 101 86 85 -f 95 96 81 80 -f 101 102 87 86 -f 96 97 82 81 -f 102 103 88 87 -f 97 98 83 82 -f 92 93 78 77 -f 117 118 103 102 -f 112 113 98 97 -f 107 108 93 92 -f 118 119 104 103 -f 113 114 99 98 -f 108 109 94 93 -f 119 120 105 104 -f 114 115 100 99 -f 109 110 95 94 -f 120 121 106 105 -f 115 116 101 100 -f 110 111 96 95 -f 116 117 102 101 -f 111 112 97 96 -f 125 126 111 110 -f 131 132 117 116 -f 126 127 112 111 -f 132 133 118 117 -f 127 128 113 112 -f 122 123 108 107 -f 133 134 119 118 -f 128 129 114 113 -f 123 124 109 108 -f 134 135 120 119 -f 129 130 115 114 -f 124 125 110 109 -f 135 136 121 120 -f 130 131 116 115 -f 144 145 130 129 -f 139 140 125 124 -f 150 151 136 135 -f 145 146 131 130 -f 140 141 126 125 -f 146 147 132 131 -f 141 142 127 126 -f 147 148 133 132 -f 142 143 128 127 -f 137 138 123 122 -f 148 149 134 133 -f 143 144 129 128 -f 138 139 124 123 -f 149 150 135 134 -f 163 164 149 148 -f 158 159 144 143 -f 153 154 139 138 -f 164 165 150 149 -f 159 160 145 144 -f 154 155 140 139 -f 165 166 151 150 -f 160 161 146 145 -f 155 156 141 140 -f 161 162 147 146 -f 156 157 142 141 -f 162 163 148 147 -f 157 158 143 142 -f 152 153 138 137 -f 177 178 163 162 -f 172 173 158 157 -f 167 168 153 152 -f 178 179 164 163 -f 173 174 159 158 -f 168 169 154 153 -f 179 180 165 164 -f 174 175 160 159 -f 169 170 155 154 -f 180 181 166 165 -f 175 176 161 160 -f 170 171 156 155 -f 176 177 162 161 -f 171 172 157 156 -f 191 192 177 176 -f 186 187 172 171 -f 192 193 178 177 -f 187 188 173 172 -f 182 183 168 167 -f 193 194 179 178 -f 188 189 174 173 -f 183 184 169 168 -f 194 195 180 179 -f 189 190 175 174 -f 184 185 170 169 -f 195 196 181 180 -f 190 191 176 175 -f 185 186 171 170 -f 199 200 185 184 -f 210 211 196 195 -f 205 206 191 190 -f 200 201 186 185 -f 206 207 192 191 -f 201 202 187 186 -f 207 208 193 192 -f 202 203 188 187 -f 197 198 183 182 -f 208 209 194 193 -f 203 204 189 188 -f 198 199 184 183 -f 209 210 195 194 -f 204 205 190 189 -f 218 219 204 203 -f 213 214 199 198 -f 224 225 210 209 -f 219 220 205 204 -f 214 215 200 199 -f 225 226 211 210 -f 220 221 206 205 -f 215 216 201 200 -f 221 222 207 206 -f 216 217 202 201 -f 222 223 208 207 -f 217 218 203 202 -f 212 213 198 197 -f 223 224 209 208 -f 237 238 223 222 -f 232 233 218 217 -f 227 228 213 212 -f 238 239 224 223 -f 233 234 219 218 -f 228 229 214 213 -f 239 240 225 224 -f 234 235 220 219 -f 229 230 215 214 -f 240 241 226 225 -f 235 236 221 220 -f 230 231 216 215 -f 236 237 222 221 -f 231 232 217 216 -f 251 252 237 236 -f 246 247 232 231 -f 252 253 238 237 -f 247 248 233 232 -f 242 243 228 227 -f 253 254 239 238 -f 248 249 234 233 -f 243 244 229 228 -f 254 255 240 239 -f 249 250 235 234 -f 244 245 230 229 -f 255 256 241 240 -f 250 251 236 235 -f 245 246 231 230 -f 259 260 245 244 -f 270 271 256 255 -f 265 266 251 250 -f 260 261 246 245 -f 266 267 252 251 -f 261 262 247 246 -f 267 268 253 252 -f 262 263 248 247 -f 257 258 243 242 -f 268 269 254 253 -f 263 264 249 248 -f 258 259 244 243 -f 269 270 255 254 -f 264 265 250 249 -f 278 279 264 263 -f 273 274 259 258 -f 284 285 270 269 -f 279 280 265 264 -f 274 275 260 259 -f 285 286 271 270 -f 280 281 266 265 -f 275 276 261 260 -f 281 282 267 266 -f 276 277 262 261 -f 282 283 268 267 -f 277 278 263 262 -f 272 273 258 257 -f 283 284 269 268 -f 297 298 283 282 -f 292 293 278 277 -f 287 288 273 272 -f 298 299 284 283 -f 293 294 279 278 -f 288 289 274 273 -f 299 300 285 284 -f 294 295 280 279 -f 289 290 275 274 -f 300 301 286 285 -f 295 296 281 280 -f 290 291 276 275 -f 296 297 282 281 -f 291 292 277 276 -f 311 312 297 296 -f 306 307 292 291 -f 312 313 298 297 -f 307 308 293 292 -f 302 303 288 287 -f 313 314 299 298 -f 308 309 294 293 -f 303 304 289 288 -f 314 315 300 299 -f 309 310 295 294 -f 304 305 290 289 -f 315 316 301 300 -f 310 311 296 295 -f 305 306 291 290 -f 330 331 316 315 -f 325 326 311 310 -f 320 321 306 305 -f 326 327 312 311 -f 321 322 307 306 -f 327 328 313 312 -f 322 323 308 307 -f 317 318 303 302 -f 328 329 314 313 -f 323 324 309 308 -f 318 319 304 303 -f 329 330 315 314 -f 324 325 310 309 -f 319 320 305 304 -f 333 334 319 318 -f 344 345 330 329 -f 339 340 325 324 -f 334 335 320 319 -f 345 346 331 330 -f 340 341 326 325 -f 335 336 321 320 -f 341 342 327 326 -f 336 337 322 321 -f 342 343 328 327 -f 337 338 323 322 -f 332 333 318 317 -f 343 344 329 328 -f 338 339 324 323 -f 352 353 338 337 -f 347 348 333 332 -f 358 359 344 343 -f 353 354 339 338 -f 348 349 334 333 -f 359 360 345 344 -f 354 355 340 339 -f 349 350 335 334 -f 360 361 346 345 -f 355 356 341 340 -f 350 351 336 335 -f 356 357 342 341 -f 351 352 337 336 -f 357 358 343 342 -f 371 372 357 356 -f 366 367 352 351 -f 372 373 358 357 -f 367 368 353 352 -f 362 363 348 347 -f 373 374 359 358 -f 368 369 354 353 -f 363 364 349 348 -f 374 375 360 359 -f 369 370 355 354 -f 364 365 350 349 -f 375 376 361 360 -f 370 371 356 355 -f 365 366 351 350 -f 390 391 376 375 -f 385 386 371 370 -f 380 381 366 365 -f 386 387 372 371 -f 381 382 367 366 -f 387 388 373 372 -f 382 383 368 367 -f 377 378 363 362 -f 388 389 374 373 -f 383 384 369 368 -f 378 379 364 363 -f 389 390 375 374 -f 384 385 370 369 -f 379 380 365 364 -f 393 394 379 378 -f 404 405 390 389 -f 399 400 385 384 -f 394 395 380 379 -f 405 406 391 390 -f 400 401 386 385 -f 395 396 381 380 -f 401 402 387 386 -f 396 397 382 381 -f 402 403 388 387 -f 397 398 383 382 -f 392 393 378 377 -f 403 404 389 388 -f 398 399 384 383 -f 412 413 398 397 -f 407 408 393 392 -f 418 419 404 403 -f 413 414 399 398 -f 408 409 394 393 -f 419 420 405 404 -f 414 415 400 399 -f 409 410 395 394 -f 420 421 406 405 -f 415 416 401 400 -f 410 411 396 395 -f 416 417 402 401 -f 411 412 397 396 -f 417 418 403 402 -f 432 433 417 416 -f 427 428 412 411 -f 433 434 418 417 -f 428 429 413 412 -f 423 424 408 407 -f 434 435 419 418 -f 429 430 414 413 -f 424 425 409 408 -f 435 436 420 419 -f 430 431 415 414 -f 425 426 410 409 -f 436 437 421 420 -f 431 432 416 415 -f 426 427 411 410 -f 451 452 437 436 -f 446 447 432 431 -f 441 442 427 426 -f 447 448 433 432 -f 442 443 428 427 -f 448 449 434 433 -f 443 444 429 428 -f 438 439 424 423 -f 449 450 435 434 -f 444 445 430 429 -f 439 440 425 424 -f 450 451 436 435 -f 445 446 431 430 -f 440 441 426 425 -f 465 466 451 450 -f 460 461 446 445 -f 455 456 441 440 -f 466 467 452 451 -f 461 462 447 446 -f 456 457 442 441 -f 462 463 448 447 -f 457 458 443 442 -f 463 464 449 448 -f 458 459 444 443 -f 453 454 439 438 -f 464 465 450 449 -f 459 460 445 444 -f 454 455 440 439 -f 468 469 454 453 -f 479 480 465 464 -f 474 475 460 459 -f 469 470 455 454 -f 480 481 466 465 -f 475 476 461 460 -f 470 471 456 455 -f 481 482 467 466 -f 476 477 462 461 -f 471 472 457 456 -f 477 478 463 462 -f 472 473 458 457 -f 478 479 464 463 -f 473 474 459 458 -f 31 16 15 -f 17 1 422 -f 46 16 31 -f 422 32 17 -f 422 47 32 -f 61 16 46 -f 76 16 61 -f 422 62 47 -f 91 16 76 -f 422 77 62 -f 106 16 91 -f 422 92 77 -f 422 107 92 -f 121 16 106 -f 136 16 121 -f 422 122 107 -f 151 16 136 -f 422 137 122 -f 166 16 151 -f 422 152 137 -f 181 16 166 -f 422 167 152 -f 196 16 181 -f 422 182 167 -f 211 16 196 -f 422 197 182 -f 226 16 211 -f 422 212 197 -f 241 16 226 -f 422 227 212 -f 256 16 241 -f 422 242 227 -f 271 16 256 -f 422 257 242 -f 286 16 271 -f 422 272 257 -f 301 16 286 -f 422 287 272 -f 316 16 301 -f 422 302 287 -f 331 16 316 -f 422 317 302 -f 346 16 331 -f 422 332 317 -f 361 16 346 -f 422 347 332 -f 422 362 347 -f 376 16 361 -f 391 16 376 -f 422 377 362 -f 406 16 391 -f 422 392 377 -f 421 16 406 -f 422 407 392 -f 422 423 407 -f 437 16 421 -f 452 16 437 -f 422 438 423 -f 467 16 452 -f 422 453 438 -f 482 16 467 -f 422 468 453 -f 5 6 473 472 -f 422 1 468 -f 11 12 479 478 -f 6 7 474 473 -f 1 2 469 468 -f 12 13 480 479 -f 7 8 475 474 -f 2 3 470 469 -f 13 14 481 480 -f 8 9 476 475 -f 3 4 471 470 -f 14 15 482 481 -f 9 10 477 476 -f 4 5 472 471 -f 15 16 482 -f 10 11 478 477 diff --git a/test/human/data/stone.png b/test/human/data/stone.png deleted file mode 100644 index 94ee2e420ac753285740cafcf3d24e56e95bfff4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8664 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 diff --git a/test/human/data/stone2.png b/test/human/data/stone2.png deleted file mode 100644 index f8803666c72a15ba4df54eeb209a36a30ee7b7df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7793 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 D0Y+2) diff --git a/test/human/file.mk b/test/human/file.mk deleted file mode 100644 index 86d40479..00000000 --- a/test/human/file.mk +++ /dev/null @@ -1,19 +0,0 @@ - - -############################################################################### -### Files Listes ### -############################################################################### - -# Globals debug tool: -FILE_LIST:= appl/Debug.cpp \ - appl/init.cpp \ - appl/MainWindows.cpp \ - appl/TestButton.cpp \ - appl/TestButtonColor.cpp \ - appl/TestLabel.cpp \ - appl/TestScene.cpp - -LOCAL_COPY_FOLDERS := data/icon.*:theme/default \ - data/cube.*: \ - data/grass.*: \ - data/stone*: \