diff --git a/AndroidManifest.xml b/AndroidManifest.xml
new file mode 100644
index 0000000..ed95013
--- /dev/null
+++ b/AndroidManifest.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Application.mk b/Application.mk
new file mode 100644
index 0000000..4eea869
--- /dev/null
+++ b/Application.mk
@@ -0,0 +1,2 @@
+APP_BUILD_SCRIPT=$PROJECT/Sources/Android.mk
+
diff --git a/data/color_black.xml b/assets/color_black.xml
similarity index 100%
rename from data/color_black.xml
rename to assets/color_black.xml
diff --git a/data/color_white.xml b/assets/color_white.xml
similarity index 100%
rename from data/color_white.xml
rename to assets/color_white.xml
diff --git a/build.xml b/build.xml
new file mode 100644
index 0000000..37b7f71
--- /dev/null
+++ b/build.xml
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jni/Android.mk b/jni/Android.mk
index 69b2c64..fb7f105 100644
--- a/jni/Android.mk
+++ b/jni/Android.mk
@@ -2,19 +2,22 @@ LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
-LOCAL_MODULE := ednpackage
-LOCAL_STATIC_LIBRARIES := ewol
-
-LOCAL_C_INCLUDES := $(LOCAL_PATH)
-
# load the common sources file of the platform
include $(LOCAL_PATH)/file.mk
+LOCAL_MODULE := ednpackage
+LOCAL_STATIC_LIBRARIES := ewol etk tinyxml libzip libpng
+
+LOCAL_C_INCLUDES := $(LOCAL_PATH) $(addprefix $(LOCAL_PATH)/, $(sort $(dir $(FILE_LIST))))
+
LOCAL_SRC_FILES := ewolAndroidAbstraction.cpp \
$(FILE_LIST)
LOCAL_LDLIBS := -llog -landroid
+LOCAL_CFLAGS := -DEWOL_USE_FREE_TYPE \
+ -DEDN_DEBUG_LEVEL=3
+
include $(BUILD_SHARED_LIBRARY)
NDK_MODULE_PATH := $(LOCAL_PATH)/../../
diff --git a/jni/Linux.mk b/jni/Linux.mk
index a2a529c..286d973 100644
--- a/jni/Linux.mk
+++ b/jni/Linux.mk
@@ -6,15 +6,17 @@ include $(CLEAR_VARS)
include $(LOCAL_PATH)/file.mk
LOCAL_MODULE := ednn
-LOCAL_STATIC_LIBRARIES := ewol etk tinyxml libzip libpng
+LOCAL_STATIC_LIBRARIES := ewol etk tinyxml libzip libpng libfreetype
LOCAL_C_INCLUDES := -I$(LOCAL_PATH) $(addprefix -I$(LOCAL_PATH)/, $(sort $(dir $(FILE_LIST))))
LOCAL_SRC_FILES := $(FILE_LIST)
+
+
LOCAL_LDLIBS :=
-LOCAL_CFLAGS := -DEWOL_USE_FREE_TYPE \
- -DEDN_DEBUG_LEVEL=3
+LOCAL_CFLAGS := -DEWOL_USE_FREE_TYPE \
+ -DEDN_DEBUG_LEVEL=3
include $(BUILD_EXECUTABLE)
diff --git a/jni/edn/Buffer/BufferText.cpp b/jni/edn/Buffer/BufferText.cpp
index 47b00be..ecc5263 100644
--- a/jni/edn/Buffer/BufferText.cpp
+++ b/jni/edn/Buffer/BufferText.cpp
@@ -307,7 +307,6 @@ int32_t BufferText::Display(ewol::OObject2DTextColored* OOText, ewol::OObject2DC
int32_t fontId = ewol::GetDefaultFontId();
int32_t letterWidth = ewol::GetWidth(fontId, "A");
- int32_t spaceWidth = ewol::GetWidth(fontId, " ");
int32_t letterHeight = ewol::GetHeight(fontId);
// update the number of element that can be displayed
@@ -345,12 +344,9 @@ int32_t BufferText::Display(ewol::OObject2DTextColored* OOText, ewol::OObject2DC
int mylen = m_EdnBuf.Size();
int32_t x_base=nbColoneForLineNumber*letterWidth + 3;
- uint32_t xx = 0;
int32_t idX = 0;
- color_ts bgColor;
- color_ts & tmpppppp = myColorManager->Get(COLOR_CODE_BASIC_BG);
- OOColored->SetColor(tmpppppp);
+ OOColored->SetColor(myColorManager->Get(COLOR_CODE_BASIC_BG));
OOColored->Rectangle( 0, 0, sizeX, sizeY);
int displayLines = 0;
@@ -433,7 +429,6 @@ int32_t BufferText::Display(ewol::OObject2DTextColored* OOText, ewol::OObject2DC
pixelX += drawSize;
// move to next line ...
if (currentChar=='\n') {
- xx = 0;
idX =0;
pixelX = x_base;
y += letterHeight;
diff --git a/jni/edn/Buffer/BufferText.h b/jni/edn/Buffer/BufferText.h
index 67d940f..620d546 100644
--- a/jni/edn/Buffer/BufferText.h
+++ b/jni/edn/Buffer/BufferText.h
@@ -99,7 +99,6 @@ class BufferText : public Buffer {
// internal function
void BasicInit(void);
void UpdateWindowsPosition(bool centerPage = false);
- void displayLineNumber(DrawerManager &drawer);
void CleanSelectLine(void);
diff --git a/jni/edn/Colorize/ColorizeManager.cpp b/jni/edn/Colorize/ColorizeManager.cpp
index 2ca1dfa..6278161 100644
--- a/jni/edn/Colorize/ColorizeManager.cpp
+++ b/jni/edn/Colorize/ColorizeManager.cpp
@@ -95,7 +95,33 @@ void ColorizeManager::LoadFile(const char * xmlFilename)
// allocate the document in the stack
TiXmlDocument XmlDocument;
// open the curent File
- XmlDocument.LoadFile(xmlFilename);
+ etk::File fileName(xmlFilename, etk::FILE_TYPE_DATA);
+ if (false == fileName.Exist()) {
+ EWOL_ERROR("File Does not exist : " << fileName);
+ return;
+ }
+ int32_t fileSize = fileName.Size();
+ if (0==fileSize) {
+ EWOL_ERROR("This file is empty : " << fileName);
+ return;
+ }
+ if (false == fileName.fOpenRead()) {
+ EWOL_ERROR("Can not open the file : " << fileName);
+ return;
+ }
+ // allocate data
+ char * fileBuffer = new char[fileSize];
+ if (NULL == fileBuffer) {
+ EWOL_ERROR("Error Memory allocation size=" << fileSize);
+ return;
+ }
+ // load data from the file :
+ fileName.fRead(fileBuffer, 1, fileSize);
+ // close the file:
+ fileName.fClose();
+ // load the XML from the memory
+ XmlDocument.Parse((const char*)fileBuffer, 0, TIXML_ENCODING_UTF8);
+
TiXmlElement* root = XmlDocument.FirstChildElement( "EdnColor" );
if (NULL == root ) {
EDN_ERROR(PFX"(l ?) main node not find: \"EdnColor\" in \"" << xmlFilename << "\"");
@@ -234,6 +260,9 @@ void ColorizeManager::LoadFile(const char * xmlFilename)
pNode = pNode->NextSibling();
}
}
+ if (NULL != fileBuffer) {
+ delete[] fileBuffer;
+ }
SendMessage(EDN_MSG__COLOR_HAS_CHANGE);
SendMessage(EDN_MSG__USER_DISPLAY_CHANGE);
}
diff --git a/jni/edn/Highlight/HighlightManager.cpp b/jni/edn/Highlight/HighlightManager.cpp
index 0eff021..de84558 100644
--- a/jni/edn/Highlight/HighlightManager.cpp
+++ b/jni/edn/Highlight/HighlightManager.cpp
@@ -93,7 +93,7 @@ void HighlightManager::loadLanguages(void)
#else
homedir = "./data/";
#endif
-
+/*
etk::String xmlFilename = homedir;
xmlFilename += "lang_c.xml";
Highlight *myHightline = new Highlight(xmlFilename);
@@ -138,7 +138,7 @@ void HighlightManager::loadLanguages(void)
xmlFilename += "lang_java.xml";
myHightline = new Highlight(xmlFilename);
listHighlight.PushBack(myHightline);
-
+*/
//myHightline->Display();
}
diff --git a/jni/edn/init.cpp b/jni/edn/init.cpp
index eb32898..db89ce2 100644
--- a/jni/edn/init.cpp
+++ b/jni/edn/init.cpp
@@ -71,9 +71,9 @@ void APP_Init(int argc, char *argv[])
ewol::SetFontFolder("Font");
#ifdef EWOL_USE_FREE_TYPE
- //ewol::SetDefaultFont("freefont/FreeMono.ttf", 12);
+ ewol::SetDefaultFont("freefont/FreeMono.ttf", 12);
//ewol::SetDefaultFont("freefont/FreeMonoBold.ttf", 12);
- ewol::SetDefaultFont("ACharmingFont.ttf", 45);
+ //ewol::SetDefaultFont("ACharmingFont.ttf", 45);
//ewol::SetDefaultFont("Monospace/Monospace", 40);
//ewol::SetDefaultFont("unispace.ttf", 12);
#else
@@ -84,7 +84,6 @@ void APP_Init(int argc, char *argv[])
// init internal global value
globals::init();
ClipBoard::Init();
- Display::Init();
// init ALL Singleton :
@@ -105,7 +104,7 @@ void APP_Init(int argc, char *argv[])
homedir = "./data/";
#endif
//homedir += "color_black.xml";
- homedir += "color_white.xml";
+ homedir = "color_white.xml";
myColorManager->LoadFile( homedir.c_str() );
myColorManager->DisplayListOfColor();
@@ -138,6 +137,7 @@ void APP_Init(int argc, char *argv[])
}
}
}
+ /*
{
etk::File myfile((char *)"licence.txt", etk::FILE_TYPE_DIRECT);
if (false == myBufferManager->Exist(myfile) ) {
@@ -145,6 +145,7 @@ void APP_Init(int argc, char *argv[])
MsgBroadcastCore::getInstance()->SendMessage(NULL, EDN_MSG__CURRENT_CHANGE_BUFFER_ID, idBuffOpened);
}
}
+ */
if (NULL == basicWindows) {
EDN_ERROR("Can not allocate the basic windows");
ewol::Stop();
@@ -171,8 +172,6 @@ void APP_UnInit(void)
//Search::kill();
EDN_INFO("Stop Accel key");
//AccelKey::kill();
- EDN_INFO("Stop Display");
- Display::UnInit();
if (NULL != basicWindows) {
delete(basicWindows);
}
diff --git a/jni/edn/tools/Display/Display.cpp b/jni/edn/tools/Display/Display.cpp
index 996c620..3f7c137 100644
--- a/jni/edn/tools/Display/Display.cpp
+++ b/jni/edn/tools/Display/Display.cpp
@@ -26,82 +26,10 @@
#include
#include
#include
-#include
-#include
#undef __class__
#define __class__ "Display"
-
-#define FONT_BOLD_NO (0)
-#define FONT_BOLD_YES (1)
-#define FONT_ITALIC_NO (0)
-#define FONT_ITALIC_YES (1)
-
-
-// Variables privé du namespace
-#define POLICE_NAME "Monospace"
-/*
-#ifdef USE_GTK_VERSION_3_0
- #define POLICE_SIZE 15
- static int32_t m_pangoFontWidth = 9;
- static int32_t m_pangoFontHeight = 19;
-#elif USE_GTK_VERSION_2_0
-*/
- #define POLICE_SIZE 12
- static int32_t m_pangoFontWidth = 7;
- static int32_t m_pangoFontHeight = 15;
-//#endif
-/*
- #define POLICE_SIZE 11
- static int32_t m_pangoFontWidth = 7;
- static int32_t m_pangoFontHeight = 11;
-static cairo_font_face_t * m_cairoFont[2][2] = {{NULL, NULL},{ NULL, NULL}};
-*/
-//static cairo_font_face_t * m_cairoFont[2][2] = {{NULL, NULL},{ NULL, NULL}};
-
-
-void Display::Init(void)
-{
-/*
- m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_NO] = cairo_toy_font_face_create(POLICE_NAME, CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);
- m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_NO] = cairo_toy_font_face_create(POLICE_NAME, CAIRO_FONT_SLANT_ITALIC, CAIRO_FONT_WEIGHT_NORMAL);
- m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_YES] = cairo_toy_font_face_create(POLICE_NAME, CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_BOLD);
- m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_YES] = cairo_toy_font_face_create(POLICE_NAME, CAIRO_FONT_SLANT_ITALIC, CAIRO_FONT_WEIGHT_BOLD);
- if ( NULL == m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_NO]) {
- EDN_ASSERT(FALSE, "basic font ERROR");
- }
- if ( NULL == m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_NO]) {
- EDN_ERROR("Italic font error ... link with basic font");
- m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_NO] = m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_NO];
- }
- if ( NULL == m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_YES]) {
- EDN_ERROR("Bold font error ... link with basic font");
- m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_YES] = m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_NO];
- }
- if ( NULL == m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_YES]) {
- EDN_ERROR("Italic & Bold font error ... link with basic font");
- m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_YES] = m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_NO];
- }
-*/
-}
-
-
-
-
-
-void Display::UnInit(void)
-{
-/*
- // clean the builder...
- cairo_font_face_destroy(m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_NO]);
- cairo_font_face_destroy(m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_NO]);
- cairo_font_face_destroy(m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_YES]);
- cairo_font_face_destroy(m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_YES]);
-*/
-}
-
-
int32_t Display::GetFontHeight(void)
{
int32_t fontId = ewol::GetDefaultFontId();
@@ -114,540 +42,3 @@ int32_t Display::GetFontWidth(void)
return ewol::GetWidth(fontId, "A");
}
-
-
-void * Display::GetFont(bool bold, bool italic)
-{
-/*
- if( false == bold
- && false == italic) {
- return m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_NO];
- } else if( true == bold
- && false == italic) {
- return m_cairoFont[FONT_ITALIC_NO][FONT_BOLD_YES];
- } else if ( false == bold
- && true == italic) {
- return m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_NO];
- }
- return m_cairoFont[FONT_ITALIC_YES][FONT_BOLD_YES];
-*/
- return NULL;
-}
-
-
-#undef __class__
-#define __class__ "DrawerManager"
-
-/**
- * @brief DrawerManager constructor : generate a memoryDC where we can draw everything...
- *
- * @param [in] window Current windows where the memoryDC must be paint
- * @param [in] x Current width of the Display
- * @param [in] y Current Height of the Display
- *
- * @note : No exeption
- *
- * @return ---
- *
- */
-DrawerManager::DrawerManager(void * widget, int32_t x, int32_t y)
-{
-
- m_size.x = x;
- m_size.y = y;
- m_haveWork = false;
- m_nbElement = 0;
- // Create the Cairo Element
-/*
-# if USE_GTK_VERSION_3_0
- m_cairo = gdk_cairo_create(gtk_widget_get_window(widget));
-# elif USE_GTK_VERSION_2_0
- m_cairo = gdk_cairo_create(widget->window);
-# endif
- //cairo_translate(m_cairo, 0, 7);
- cairo_set_source_rgb(m_cairo, 0, 0, 0);
- cairo_paint(m_cairo);
- cairo_set_font_size(m_cairo, POLICE_SIZE);
-*/
- m_dataToDisplay[0] = '\0';
-
- //cairo_scale(m_cairo, 1.0, 1.0);
-
-}
-
-
-/**
- * @brief main DrawerManager destructor : Copy data on the curent screen
- *
- * @param ---
- *
- * @note : No exeption
- *
- * @return ---
- *
- */
-DrawerManager::~DrawerManager()
-{
- //cairo_destroy(m_cairo);
-}
-
-
-/**
- * @brief Draw Text with the specify color
- *
- * This function does not display the text directly, it save it while a flush appare or the y position differ, or the color differ.
- * This is for the char by char writing ==> more efficient when we write multiple char.
- *
- * @param [in] SelectColor Color that is used to display data
- * @param [in] x Horizontal position to display data
- * @param [in] y Vertical position to display data
- * @param [in] myText Text to write in UTF8 ...
- * @param [in] displayBG unused
- *
- * @return ---
- *
- */
-void DrawerManager::Text(Colorize *SelectColor, int32_t x, int32_t y,const char *myUTF8Text, int32_t len)
-{
-/*
- EDN_CHECK_INOUT(NULL!=SelectColor);
- // check if flush is needed :
- if (true == m_haveWork) {
- if( m_pos.y != y
- || m_selectColor != SelectColor)
- {
- Flush();
- }
- }
-
- // check change
- if (false == m_haveWork) {
- m_pos.x = x;
- m_pos.y = y;
- m_selectColor = SelectColor;
- }
- //EDN_WARNING("add data : \"" << myText << "\" x=" << x << " y=" << y );
- // process :
- m_haveWork = true;
- strcat(m_dataToDisplay, myUTF8Text);
- if (len != -1 ) {
- m_nbElement+=len;
- } else {
- m_nbElement+=strUtf8Len(myUTF8Text);
- }
-*/
-}
-
-void DrawerManager::Text(color_ts & SelectColorFg, color_ts & SelectColorBg, int32_t x, int32_t y,const char *myText)
-{
-/*
- Flush();
- cairo_set_font_face(m_cairo, Display::GetFont(false, false));
- int32_t letterHeight = Display::GetFontHeight();
- int32_t letterWidth = Display::GetFontWidth();
- DirectRectangle(SelectColorBg, x, y, letterWidth*strlen(myText), letterHeight);
- cairo_fill(m_cairo);
- cairo_move_to(m_cairo, x, y+letterHeight-4);
- cairo_set_source_rgb(m_cairo, SelectColorFg.red, SelectColorFg.green, SelectColorFg.blue);
- cairo_show_text(m_cairo, myText);
- cairo_fill(m_cairo);
-*/
-}
-
-void DrawerManager::Text(color_ts & SelectColorFg, int32_t x, int32_t y,const char *myText)
-{
-/*
- Flush();
- cairo_set_font_face(m_cairo, Display::GetFont(false, false));
- int32_t letterHeight = Display::GetFontHeight();
- cairo_move_to(m_cairo, x, y+letterHeight-4);
- cairo_set_source_rgb(m_cairo, SelectColorFg.red, SelectColorFg.green, SelectColorFg.blue);
- cairo_show_text(m_cairo, myText);
- cairo_fill(m_cairo);
-*/
-}
-
-void DrawerManager::SpaceText(color_ts & SelectColor, int32_t x, int32_t y,int32_t nbChar)
-{
-/*
- Flush();
- int32_t letterHeight = Display::GetFontHeight();
- int32_t letterWidth = Display::GetFontWidth();
- DirectRectangle(SelectColor, x, y, letterWidth*nbChar, letterHeight);
- cairo_fill(m_cairo);
-*/
-}
-
-
-/**
- * @brief Force de display of the curent Text
- *
- * The flush is to be more performent with the Pango display methode...
- *
- * @param ---
- *
- * @return ---
- *
- */
-void DrawerManager::Flush(void)
-{
-/*
- if (true == m_haveWork) {
- //EDN_WARNING("flush : \"" << m_dataToDisplay << "\"" << " bold=" << m_selectColor->GetBold() << " italic=" << m_selectColor->GetItalic());
- m_haveWork = false;
-
- cairo_set_font_face(m_cairo, Display::GetFont(m_selectColor->GetBold(), m_selectColor->GetItalic()));
- int32_t letterHeight = Display::GetFontHeight();
- if (true == m_selectColor->HaveBg() ) {
- int32_t letterWidth = Display::GetFontWidth();
- int32_t stringLen = m_nbElement;
- // generate Clean BG:
- DirectRectangle(m_selectColor, m_pos.x, m_pos.y, letterWidth*stringLen, letterHeight);
- }
- cairo_move_to(m_cairo, m_pos.x, m_pos.y+letterHeight-4);
- m_selectColor->ApplyFG(m_cairo);
- cairo_show_text(m_cairo, m_dataToDisplay);
- cairo_fill(m_cairo);
-
- m_dataToDisplay[0] = '\0';
- m_nbElement = 0;
- }
-*/
-}
-
-
-/**
- * @brief display a rectangle with the curent bgColor and no border
- *
- * This function in the open API to drow the rectangle, it flush the curent Text in the buffer
- *
- * @param [in] SelectColor Color that is used to display rectangle
- * @param [in] x Horizontal position to display rectangle
- * @param [in] y Vertical position to display rectangle
- * @param [in] width Width of the rectangle
- * @param [in] height Height of the rectangle
- *
- * @return ---
- *
- */
-void DrawerManager::Rectangle(Colorize *SelectColor, int32_t x, int32_t y, int32_t width, int32_t height)
-{
- //Flush();
- //DirectRectangle(SelectColor, x, y, width, height);
-}
-
-
-/**
- * @brief Real function to display the rectangle (no flush done (expectially for the Background display)
- *
- * @param [in] SelectColor Color that is used to display rectangle
- * @param [in] x Horizontal position to display rectangle
- * @param [in] y Vertical position to display rectangle
- * @param [in] width Width of the rectangle
- * @param [in] height Height of the rectangle
- *
- * @return ---
- *
- */
-void DrawerManager::DirectRectangle(Colorize *SelectColor, int32_t x, int32_t y, int32_t width, int32_t height)
-{
-/*
- EDN_CHECK_INOUT(NULL!=SelectColor);
- //EDN_INFO("x="<< x <<" y="<< y <<" width="<< width <<" height="<< height);
- //gdk_draw_rectangle( p_pixmap, SelectColor->GetColorBG(), TRUE, x, y, width, height);
- // set color
- SelectColor->ApplyBG(m_cairo);
- // set postion
- cairo_rectangle(m_cairo, x, y, width, height);
- //cairo_stroke(m_cairo);
- // flush
- cairo_fill(m_cairo);
-*/
-}
-void DrawerManager::DirectRectangle(color_ts &SelectColor, int32_t x, int32_t y, int32_t width, int32_t height)
-{
-/*
- cairo_set_source_rgb(m_cairo, SelectColor.red, SelectColor.green, SelectColor.blue);
- // set postion
- cairo_rectangle(m_cairo, x, y, width, height);
- //cairo_stroke(m_cairo);
- // flush
- cairo_fill(m_cairo);
-*/
-}
-
-
-/**
- * @brief Clean the curent Windows with the curent color
- *
- * @param [in] SelectColor Color that is used to display background
- *
- * @return ---
- *
- */
-void DrawerManager::Clean(Colorize *SelectColor)
-{
-/*
- m_haveWork = false;
- DirectRectangle(SelectColor, 0, 0, m_size.x, m_size.y);
-*/
-}
-
-/**
- * @brief Clean the curent Windows with the curent color
- *
- * @param [in] SelectColor Color that is used to display background
- *
- * @return ---
- *
- */
-void DrawerManager::Clean(color_ts & SelectColor)
-{
-/*
- m_haveWork = false;
- DirectRectangle(SelectColor, 0, 0, m_size.x, m_size.y);
-*/
-}
-
-/**
- * @brief Display a cursor with the cortect form.
- *
- * Automatic selection of the XML color "cursorColor"
- *
- * @param [in] x Horizontal position to display cursor
- * @param [in] y Vertical position to display cursor
- *
- * @return ---
- *
- */
-#define CURSOR_WIDTH (4)
-void DrawerManager::Cursor(int32_t x, int32_t y)
-{
-/*
- Flush();
- // get the cursor Color :
- color_ts myColor = ColorizeManager::getInstance()->Get(COLOR_CODE_CURSOR);
- cairo_set_source_rgb(m_cairo, myColor.red, myColor.green, myColor.blue);
-
- // draw cursor
- int32_t letterHeight = Display::GetFontHeight();
- int32_t letterWidth = Display::GetFontWidth();
- // depending on the inserting mode
- if (false == globals::IsSetInsert()) {
- cairo_set_line_width(m_cairo, 2);
- cairo_move_to(m_cairo, x-CURSOR_WIDTH, y - letterHeight+1);
- cairo_rel_line_to(m_cairo, CURSOR_WIDTH*2, 0);
- cairo_rel_move_to(m_cairo, -CURSOR_WIDTH, 0);
- cairo_rel_line_to(m_cairo, 0, letterHeight-2);
- cairo_rel_move_to(m_cairo, -CURSOR_WIDTH, 0);
- cairo_rel_line_to(m_cairo, CURSOR_WIDTH*2, 0);
- } else {
- cairo_set_line_width(m_cairo, 1);
- cairo_move_to(m_cairo, x, y - letterHeight + 1);
- cairo_rel_line_to(m_cairo, letterWidth, 0);
- cairo_rel_line_to(m_cairo, 0, letterHeight);
- cairo_rel_line_to(m_cairo, -letterWidth, 0);
- cairo_rel_line_to(m_cairo, 0, -letterHeight);
- }
- cairo_stroke(m_cairo);
- cairo_fill(m_cairo);
-*/
-}
-
-/**
- * @brief Display a end of the curent line ...
- *
- * Automatic draw the end of line with the curent XML color "cursorColor"
- *
- * @param [in] x Horizontal position to display cursor
- * @param [in] y Vertical position to display cursor
- *
- * @return ---
- *
- */
-void DrawerManager::EndOfLine(int32_t x, int32_t y)
-{
-#if 0
- if (true == globals::IsSetDisplayEndOfLine() ) {
- Flush();
- // get the cursor Color :
- color_ts myColor = ColorizeManager::getInstance()->Get(COLOR_CODE_CURSOR);
- cairo_set_source_rgb(m_cairo, myColor.red, myColor.green, myColor.blue);
- // draw cursor
- int32_t letterHeight = Display::GetFontHeight();
- // depending on the inserting mode
- /*
- x1 x2
- y1 | |-----
- | |-----
- | |
- y2 | |
- */
- cairo_set_line_width(m_cairo, 2);
- cairo_move_to(m_cairo, x, y - letterHeight+1);
- cairo_rel_line_to(m_cairo, 0, letterHeight);
- cairo_move_to(m_cairo, x+2, y - letterHeight+1);
- cairo_rel_line_to(m_cairo, 0, letterHeight);
- cairo_arc(m_cairo, x+3, y - letterHeight/4*3, 3.0, -3.149/2, 3.149/2);
- cairo_stroke(m_cairo);
- cairo_fill(m_cairo);
- }
-#endif
-}
-
-
-
-/**
- * @brief Display a Tabulation with the user form selection.
- *
- * @param [in] SelectColor Color that is used to display Tabulation
- * @param [in] x Horizontal position to display cursor
- * @param [in] y Vertical position to display cursor
- * @param [in] mbColomn Width of the current Tabulation caracter (in number of Char)
- *
- * @return ---
- *
- */
-void DrawerManager::Tabulation(Colorize *SelectColor, int32_t x, int32_t y, int32_t mbColomn)
-{
-/*
- Flush();
- int32_t letterWidth = Display::GetFontWidth();
- int32_t letterHeight = Display::GetFontHeight();
-
- // generate Clean BG:
- DirectRectangle(SelectColor, x, y-letterHeight, letterWidth*mbColomn, letterHeight);
-
- // set the pen for the display
- SelectColor->ApplyFG(m_cairo);
-
- uint32_t yCalc = y - (letterHeight+1)/2;
-
- cairo_move_to(m_cairo, x + 3, yCalc);
- cairo_line_to(m_cairo, x + letterWidth*mbColomn - 2 , yCalc);
- cairo_rel_line_to(m_cairo, -6 , -2);
- cairo_move_to(m_cairo, x + letterWidth*mbColomn - 2 , yCalc);
- cairo_rel_line_to(m_cairo, -6 , +2);
-
- cairo_stroke(m_cairo);
- cairo_fill(m_cairo);
-*/
-}
-
-
-/**
- * @brief Display an unknow UTF8 character (a special rectangle)
- *
- * @param [in] SelectColor Color that is used to display Tabulation
- * @param [in] x Horizontal position to display cursor
- * @param [in] y Vertical position to display cursor
- * @param [in] utf8Size number of char used by the UTF8 character
- * @param [in] ValidUtf8 true if the character UTF8 is well encoded
- *
- * @return ---
- *
- */
-void DrawerManager::UTF8UnknownElement(Colorize *SelectColor, int32_t x, int32_t y, int8_t utf8Size, bool ValidUtf8)
-{
-#if 0
- Flush();
- int32_t letterWidth = Display::GetFontWidth();
- int32_t letterHeight = Display::GetFontHeight();
-
- // generate Clean BG:
- DirectRectangle(SelectColor, x, y-letterHeight, letterWidth*2, letterHeight);
-
- SelectColor->ApplyFG(m_cairo);
-
- /*
- y1 y2
- x1 |-------|
- | |
- | |
- x2 |-------|
- */
- uint32_t x1 = x + 2;
- uint32_t x2 = x + letterWidth*2 - 2;
- uint32_t y1 = y - letterHeight + 2;
- uint32_t y2 = y - 2;
- // Box
- cairo_move_to(m_cairo, x1 , y1);
- cairo_line_to(m_cairo, x2 , y1);
- cairo_line_to(m_cairo, x2 , y2);
- cairo_line_to(m_cairo, x1 , y2);
- cairo_line_to(m_cairo, x1 , y1);
- // croix in the middle
- switch(utf8Size)
- {
- case 1:
- break;
- case 2:
- cairo_line_to(m_cairo, x2 , y2);
- break;
- case 3:
- cairo_move_to(m_cairo, x1 , y2);
- cairo_line_to(m_cairo, x2 , y1);
- break;
- default:
- cairo_line_to(m_cairo, x2 , y2);
- cairo_move_to(m_cairo, x1 , y2);
- cairo_line_to(m_cairo, x2 , y1);
- break;
- }
- if (false == ValidUtf8) {
- cairo_move_to(m_cairo, x1 , y2-2);
- cairo_line_to(m_cairo, x2 , y2-2);
- }
- cairo_stroke(m_cairo);
- cairo_fill(m_cairo);
-#endif
-}
-
-
-
-
-/* Basic axample with cairo and pango...
- cairo_t *cr;
-
- cr = gdk_cairo_create(widget->window);
-
- cairo_translate(cr, 0, 7);
-
- cairo_set_source_rgb(cr, 0, 0, 0);
- cairo_paint(cr);
-
- gint pos = 18;//GTK_CPU(widget)->sel;
- gint rect = pos / 5;
-
- cairo_set_source_rgb(cr, 0.2, 0.4, 0);
-
- gint i;
- for ( i = 1; i <= 20; i++) {
- if (i > 20 - rect) {
- cairo_set_source_rgb(cr, 0.6, 1.0, 0);
- } else {
- cairo_set_source_rgb(cr, 0.2, 0.4, 0);
- }
- cairo_rectangle(cr, 8, i*4, 30, 3);
- cairo_rectangle(cr, 42, i*4, 30, 3);
- cairo_fill(cr);
- }
-//----
- PangoLayout *layout;
- PangoFontDescription *desc;
-
- cairo_translate(cr, 10, 20);
- layout = pango_cairo_create_layout(cr);
- pango_layout_set_text(layout, "Hello World!", -1);
- desc = pango_font_description_from_string("Sans Bold 12");
- pango_layout_set_font_description(layout, desc);
- pango_font_description_free(desc);
-
- cairo_set_source_rgb(cr, 0.0, 0.0, 1.0);
- pango_cairo_update_layout(cr, layout);
- pango_cairo_show_layout(cr, layout);
-
- g_object_unref(layout);
-//-----
- cairo_destroy(cr);
-*/
\ No newline at end of file
diff --git a/jni/edn/tools/Display/Display.h b/jni/edn/tools/Display/Display.h
index 58bf0f2..737e6c1 100644
--- a/jni/edn/tools/Display/Display.h
+++ b/jni/edn/tools/Display/Display.h
@@ -27,8 +27,6 @@
#define __TOOLS_DISPLAY_H__
#include
-#include
-#include
/**
@@ -36,60 +34,10 @@
*/
namespace Display
{
- void Init(void);
- void UnInit(void);
- //cairo_font_face_t * GetFont(bool bold, bool italic);
- void * GetFont(bool bold, bool italic);
int32_t GetFontHeight(void);
int32_t GetFontWidth(void);
};
-#define MAX_CARACTER_CYCLE (512)
-/**
- * class to abstrate the writing on the curent GUI (INTEFACE to be no dependent of the one chosen)
- */
-class DrawerManager;
-
-class DrawerManager {
- public:
- // Constructeur
- //DrawerManager(GtkWidget * widget, int32_t x, int32_t y);
- DrawerManager(void * widget, int32_t x, int32_t y);
- ~DrawerManager();
-
- void Rectangle(Colorize *SelectColor, int32_t x, int32_t y, int32_t width, int32_t height);
- void Rectangle(color_ts & SelectColor, int32_t x, int32_t y, int32_t width, int32_t height) {
- DirectRectangle(SelectColor, x, y, width, height);
- }
- void Clean(Colorize *SelectColor);
- void Clean(color_ts & SelectColor);
- void Text(Colorize *SelectColor, int32_t x, int32_t y,const char *myUTF8Text, int32_t len = -1);
- void Text(color_ts & SelectColorFg, color_ts & SelectColorBg, int32_t x, int32_t y,const char *myText);
- void Text(color_ts & SelectColorFg, int32_t x, int32_t y,const char *myText);
- void SpaceText(color_ts & SelectColor, int32_t x, int32_t y,int32_t nbChar);
- void Cursor(int32_t x, int32_t y);
- void EndOfLine(int32_t x, int32_t y);
- void Tabulation(Colorize *SelectColor, int32_t x, int32_t y, int32_t mbColomn);
- void UTF8UnknownElement(Colorize *SelectColor, int32_t x, int32_t y, int8_t utf8Size, bool ValidUtf8);
- void Flush(void);
- int32_t GetWidth(void) { return m_size.x; };
- int32_t GetHeight(void) { return m_size.y; };
-
- private:
- void DirectRectangle(Colorize *SelectColor, int32_t x, int32_t y, int32_t width, int32_t height);
- void DirectRectangle(color_ts & SelectColor, int32_t x, int32_t y, int32_t width, int32_t height);
-
- bool m_haveWork; //!< if data might be print (true)
- char m_dataToDisplay[MAX_CARACTER_CYCLE]; //!< curent string to display
- uint32_t m_nbElement; //!< nb element in the string
- position_ts m_pos; //!< position where start the string display (X,Y)
- Colorize * m_selectColor; //!< curent color to display
-
- position_ts m_size; //!< Total size
- //cairo_t * m_cairo; //!< Cairo Layout pointer
-
-};
-
#endif
diff --git a/jni/edn/tools/EdnBuf/EdnBuf_Selection.cpp b/jni/edn/tools/EdnBuf/EdnBuf_Selection.cpp
index b0e46c8..f4051ca 100644
--- a/jni/edn/tools/EdnBuf/EdnBuf_Selection.cpp
+++ b/jni/edn/tools/EdnBuf/EdnBuf_Selection.cpp
@@ -58,7 +58,7 @@ bool EdnBuf::SelectHasSelection(selectionType_te select)
*/
void EdnBuf::Select(selectionType_te select, int32_t start, int32_t end)
{
- selection oldSelection = m_selectionList[select];
+ //selection oldSelection = m_selectionList[select];
m_selectionList[select].selected = start != end;
m_selectionList[select].zeroWidth = (start == end) ? true : false;
m_selectionList[select].rectangular = false;
@@ -77,7 +77,7 @@ void EdnBuf::Select(selectionType_te select, int32_t start, int32_t end)
*/
void EdnBuf::Unselect(selectionType_te select)
{
- selection oldSelection = m_selectionList[select];
+ //selection oldSelection = m_selectionList[select];
m_selectionList[select].selected = false;
m_selectionList[select].zeroWidth = false;
}
diff --git a/jni/edn/tools/debug/tools_debug.cpp b/jni/edn/tools/debug/tools_debug.cpp
index 264ed74..3f1d802 100644
--- a/jni/edn/tools/debug/tools_debug.cpp
+++ b/jni/edn/tools/debug/tools_debug.cpp
@@ -24,4 +24,4 @@
*/
-const char * ednLog = "edn ";
+const char * ednLog = "edn ";
diff --git a/local.properties b/local.properties
new file mode 100644
index 0000000..28391d1
--- /dev/null
+++ b/local.properties
@@ -0,0 +1,10 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must *NOT* be checked in Version Control Systems,
+# as it contains information specific to your local configuration.
+
+# location of the SDK. This is only used by Ant
+# For customization when using a Version Control System, please read the
+# header note.
+sdk.dir=/home/heero/dev/perso/android/sdk-r15
diff --git a/proguard.cfg b/proguard.cfg
new file mode 100644
index 0000000..b1cdf17
--- /dev/null
+++ b/proguard.cfg
@@ -0,0 +1,40 @@
+-optimizationpasses 5
+-dontusemixedcaseclassnames
+-dontskipnonpubliclibraryclasses
+-dontpreverify
+-verbose
+-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
+
+-keep public class * extends android.app.Activity
+-keep public class * extends android.app.Application
+-keep public class * extends android.app.Service
+-keep public class * extends android.content.BroadcastReceiver
+-keep public class * extends android.content.ContentProvider
+-keep public class * extends android.app.backup.BackupAgentHelper
+-keep public class * extends android.preference.Preference
+-keep public class com.android.vending.licensing.ILicensingService
+
+-keepclasseswithmembernames class * {
+ native ;
+}
+
+-keepclasseswithmembers class * {
+ public (android.content.Context, android.util.AttributeSet);
+}
+
+-keepclasseswithmembers class * {
+ public (android.content.Context, android.util.AttributeSet, int);
+}
+
+-keepclassmembers class * extends android.app.Activity {
+ public void *(android.view.View);
+}
+
+-keepclassmembers enum * {
+ public static **[] values();
+ public static ** valueOf(java.lang.String);
+}
+
+-keep class * implements android.os.Parcelable {
+ public static final android.os.Parcelable$Creator *;
+}
diff --git a/project.properties b/project.properties
new file mode 100644
index 0000000..5d85d77
--- /dev/null
+++ b/project.properties
@@ -0,0 +1,11 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must be checked in Version Control Systems.
+#
+# To customize properties used by the Ant build system use,
+# "ant.properties", and override values to adapt the script to your
+# project structure.
+
+# Project target.
+target=Google Inc.:Google APIs:13
diff --git a/res/drawable/ic_luncher_edn.png b/res/drawable/ic_luncher_edn.png
new file mode 100644
index 0000000..14b2a40
Binary files /dev/null and b/res/drawable/ic_luncher_edn.png differ