96 lines
2.2 KiB
C++
96 lines
2.2 KiB
C++
/**
|
|
* @author Edouard DUPIN
|
|
*
|
|
* @copyright 2010, Edouard DUPIN, all right reserved
|
|
*
|
|
* @license BSD v3 (see license file)
|
|
*/
|
|
|
|
#include <etk/types.h>
|
|
#include <etk/UString.h>
|
|
#include <etk/os/FSNode.h>
|
|
#include <ewol/ewol.h>
|
|
#include <ewol/Dimension.h>
|
|
//#include <ewol/config.h>
|
|
#include <ewol/commandLine.h>
|
|
#include <ewol/renderer/EObject.h>
|
|
#include <ewol/renderer/eContext.h>
|
|
#include <ewol/widget/WidgetManager.h>
|
|
|
|
#include <appl/Debug.h>
|
|
#include <appl/MainWindows.h>
|
|
|
|
|
|
|
|
/**
|
|
* @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
|
|
*/
|
|
bool APP_Init(ewol::eContext& _context)
|
|
{
|
|
APPL_INFO("==> Init "PROJECT_NAME" (START) [" << ewol::GetBoardType() << "] (" << ewol::GetCompilationMode() << ")");
|
|
|
|
etk::InitDefaultFolder(PROJECT_NAME);
|
|
|
|
_context.SetSize(vec2(800, 600));
|
|
|
|
// select internal data for font ...
|
|
_context.GetFontDefault().SetUseExternal(false);
|
|
#ifdef __TARGET_OS__Android
|
|
_context.GetFontDefault().Set("FreeSerif;DejaVuSansMono", 19);
|
|
#else
|
|
_context.GetFontDefault().Set("FreeSerif;DejaVuSansMono", 14);
|
|
#endif
|
|
// set the application icon ...
|
|
_context.SetIcon("DATA:icon.png");
|
|
|
|
MainWindows* basicWindows = new MainWindows();
|
|
if (NULL == basicWindows) {
|
|
APPL_ERROR("Can not allocate the basic windows");
|
|
return false;
|
|
}
|
|
// create the specific windows
|
|
_context.SetWindows(basicWindows);
|
|
|
|
// add files
|
|
APPL_INFO("show list of command line input : ");
|
|
for( int32_t iii=0 ; iii<_context.GetCmd().Size(); iii++) {
|
|
APPL_INFO("parameter [" << iii << "] is \"" << _context.GetCmd().Get(iii) << "\"");
|
|
}
|
|
APPL_INFO("==> Init "PROJECT_NAME" (END)");
|
|
return true;
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
* @brief main application function Un-Initialisation
|
|
*/
|
|
void APP_UnInit(ewol::eContext& _context)
|
|
{
|
|
APPL_INFO("==> Un-Init "PROJECT_NAME" (START)");
|
|
// Get the curent windows
|
|
ewol::Windows* tmpWindows = _context.GetWindows();
|
|
// Remove windows :
|
|
_context.SetWindows(NULL);
|
|
|
|
if (NULL != tmpWindows) {
|
|
delete(tmpWindows);
|
|
tmpWindows = NULL;
|
|
}
|
|
APPL_INFO("==> Un-Init "PROJECT_NAME" (END)");
|
|
}
|
|
|