Compare commits
15 Commits
Author | SHA1 | Date | |
---|---|---|---|
a01d121036 | |||
2d8c5d588d | |||
f1543f6199 | |||
7acd5127eb | |||
0c6151283b | |||
8854a5a34b | |||
958138ecbb | |||
44bc1dd277 | |||
0821335de6 | |||
8d0fc9023f | |||
4f0839221d | |||
17101a38b0 | |||
def986ab82 | |||
7ebc20e936 | |||
f807faf55a |
4
CMakeLists.txt
Normal file
4
CMakeLists.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
SUBDIRS(${CMAKE_CURRENT_SOURCE_DIR}/../ewol)
|
||||
SUBDIRS(sources)
|
34
README.md
34
README.md
@@ -46,8 +46,8 @@ download the software :
|
||||
http://developer.android.com/tools/sdk/ndk/index.html
|
||||
http://developer.android.com/sdk/index.html
|
||||
==> you need to download sub package of the NDK (refer to the NDK doccumentation) but only supported android version >4.0
|
||||
cd ../edn
|
||||
# generate .so
|
||||
cd ..
|
||||
# Generate package and install on Android device (in debug mode a generic key is set)
|
||||
../ewol/build/lutin.py --color --target=Android --mode=debug edn-install
|
||||
# to show the log :
|
||||
../ewol/build/lutin.py --target=Android edn-log
|
||||
@@ -55,8 +55,11 @@ download the software :
|
||||
|
||||
(Windows) Compile software & install
|
||||
|
||||
cd yourDevFolder/edn
|
||||
../ewol/build/lutin.py --color --target=Windows --mode=debug
|
||||
cd yourDevFolder
|
||||
../ewol/build/lutin.py --color --target=Windows --mode=debug edn
|
||||
|
||||
#we have many problem for windows compilation now...
|
||||
|
||||
|
||||
|
||||
(MAC) All needed and some useful packages
|
||||
@@ -65,8 +68,27 @@ download the software :
|
||||
- Xcode ==> for all developement packages
|
||||
- in Xcode : XCode->Setting->Download and install component: "Command Line Tools"
|
||||
|
||||
cd yourDevFolder/edn
|
||||
../ewol/build/lutin.py --color --mode=debug
|
||||
cd yourDevFolder
|
||||
../ewol/build/lutin.py --color --mode=debug edn
|
||||
|
||||
|
||||
(IOs) All needed and some useful packages
|
||||
|
||||
- Git access (client you want or : http://code.google.com/p/git-osx-installer/ ==>need a ctrl+click to remove the normal installation control)
|
||||
- Xcode ==> for all developement packages
|
||||
- in Xcode : XCode->Setting->Download and install component: "Command Line Tools"
|
||||
|
||||
for porting on IOs you need a developper account
|
||||
|
||||
cd yourDevFolder
|
||||
# compile and install on simulator (no developper account needed)
|
||||
../ewol/build/lutin.py --color --target=IOs --mode=debug --simulation edn-intall
|
||||
# launch IOs simulator in xcode, and your application will appear on the second page (32 bit mode only)
|
||||
|
||||
# compile and install on board
|
||||
../ewol/build/lutin.py --color --target=IOs --mode=debug edn-intall
|
||||
# compile and install on board and debug mode :
|
||||
../ewol/build/lutin.py --color --target=IOs --mode=debug edn-log
|
||||
|
||||
|
||||
On linux you can generate 3 board in one time
|
||||
|
@@ -1,68 +0,0 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux Kernel Configuration
|
||||
#
|
||||
|
||||
#
|
||||
# Modules
|
||||
#
|
||||
# CONFIG_BUILD_AGG is not set
|
||||
# CONFIG_BUILD_LINEARMATH is not set
|
||||
# CONFIG_BUILD_BULLET is not set
|
||||
# CONFIG_BUILD_ETK is not set
|
||||
# CONFIG_BUILD_FREETYPE is not set
|
||||
# CONFIG_BUILD_LUA is not set
|
||||
# CONFIG_BUILD_OGG is not set
|
||||
# CONFIG_BUILD_PARSERSVG is not set
|
||||
# CONFIG_BUILD_LIBPNG is not set
|
||||
# CONFIG_BUILD_TINYXML is not set
|
||||
# CONFIG_BUILD_ZLIB is not set
|
||||
# CONFIG_BUILD_LIBZIP is not set
|
||||
# CONFIG_BUILD_EWOL is not set
|
||||
CONFIG_BUILD_EDN=y
|
||||
|
||||
#
|
||||
# ewol
|
||||
#
|
||||
|
||||
#
|
||||
# General
|
||||
#
|
||||
CONFIG___EWOL_APPL_BASIC_TITLE__="Edn : Sources Code Editor"
|
||||
CONFIG___EWOL_INTEGRATED_FONT__=y
|
||||
|
||||
#
|
||||
# Android
|
||||
#
|
||||
CONFIG___EWOL_ANDROID_MINIMUM_SDK_VERSION__=9
|
||||
# CONFIG___EWOL_ANDROID_SHOW_TITLE__ is not set
|
||||
CONFIG___EWOL_ANDROID_ORIENTATION_AUTO__=y
|
||||
# CONFIG___EWOL_ANDROID_ORIENTATION_LANDSCAPE__ is not set
|
||||
# CONFIG___EWOL_ANDROID_ORIENTATION_PORTRAIT__ is not set
|
||||
|
||||
#
|
||||
# Permissions
|
||||
#
|
||||
CONFIG___ANDROID_PERMISSION__WRITE_EXTERNAL_STORAGE__=y
|
||||
# CONFIG___ANDROID_PERMISSION__CAMERA__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__INTERNET__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__MODIFY_AUDIO_SETTINGS__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__READ_CALENDAR__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__READ_CONTACTS__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__READ_FRAME_BUFFER__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__READ_PROFILE__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__RECORD_AUDIO__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__SET_ORIENTATION__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__VIBRATE__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__ACCESS_COARSE_LOCATION__ is not set
|
||||
# CONFIG___ANDROID_PERMISSION__ACCESS_FINE_LOCATION__ is not set
|
||||
|
||||
#
|
||||
# edn
|
||||
#
|
||||
|
||||
#
|
||||
# General
|
||||
#
|
||||
CONFIG_APPL_BUFFER_FONT_NORMAL=y
|
||||
# CONFIG_APPL_BUFFER_FONT_DISTANCE_FIELD is not set
|
@@ -1,49 +0,0 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux Kernel Configuration
|
||||
#
|
||||
|
||||
#
|
||||
# Modules
|
||||
#
|
||||
# CONFIG_BUILD_AGG is not set
|
||||
# CONFIG_BUILD_LINEARMATH is not set
|
||||
# CONFIG_BUILD_BULLET is not set
|
||||
# CONFIG_BUILD_ETK is not set
|
||||
# CONFIG_BUILD_FREETYPE is not set
|
||||
# CONFIG_BUILD_LUA is not set
|
||||
# CONFIG_BUILD_OGG is not set
|
||||
# CONFIG_BUILD_PARSERSVG is not set
|
||||
# CONFIG_BUILD_LIBPNG is not set
|
||||
# CONFIG_BUILD_PORTAUDIO is not set
|
||||
# CONFIG_BUILD_TINYXML is not set
|
||||
# CONFIG_BUILD_ZLIB is not set
|
||||
# CONFIG_BUILD_LIBZIP is not set
|
||||
# CONFIG_BUILD_EWOL is not set
|
||||
CONFIG_BUILD_EDN=y
|
||||
|
||||
#
|
||||
# ewol
|
||||
#
|
||||
|
||||
#
|
||||
# General
|
||||
#
|
||||
CONFIG___EWOL_APPL_BASIC_TITLE__="Edn : Sources Code Editor"
|
||||
# CONFIG___EWOL_INTEGRATED_FONT__ is not set
|
||||
|
||||
#
|
||||
# Linux
|
||||
#
|
||||
CONFIG___EWOL_LINUX_GUI_MODE_X11__=y
|
||||
# CONFIG___EWOL_LINUX_GUI_MODE_DIRECT_FB__ is not set
|
||||
|
||||
#
|
||||
# edn
|
||||
#
|
||||
|
||||
#
|
||||
# General
|
||||
#
|
||||
CONFIG_APPL_BUFFER_FONT_NORMAL=y
|
||||
# CONFIG_APPL_BUFFER_FONT_DISTANCE_FIELD is not set
|
@@ -1,48 +0,0 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux Kernel Configuration
|
||||
#
|
||||
|
||||
#
|
||||
# Modules
|
||||
#
|
||||
# CONFIG_BUILD_AGG is not set
|
||||
# CONFIG_BUILD_LINEARMATH is not set
|
||||
# CONFIG_BUILD_BULLET is not set
|
||||
# CONFIG_BUILD_ETK is not set
|
||||
# CONFIG_BUILD_FREETYPE is not set
|
||||
# CONFIG_BUILD_LUA is not set
|
||||
# CONFIG_BUILD_OGG is not set
|
||||
# CONFIG_BUILD_PARSERSVG is not set
|
||||
# CONFIG_BUILD_LIBPNG is not set
|
||||
# CONFIG_BUILD_TINYXML is not set
|
||||
# CONFIG_BUILD_ZLIB is not set
|
||||
# CONFIG_BUILD_LIBZIP is not set
|
||||
# CONFIG_BUILD_EWOL is not set
|
||||
CONFIG_BUILD_EDN=y
|
||||
|
||||
#
|
||||
# ewol
|
||||
#
|
||||
|
||||
#
|
||||
# General
|
||||
#
|
||||
CONFIG___EWOL_APPL_BASIC_TITLE__="Edn : Sources Code Editor"
|
||||
CONFIG___EWOL_INTEGRATED_FONT__=y
|
||||
|
||||
#
|
||||
# Linux
|
||||
#
|
||||
CONFIG___EWOL_LINUX_GUI_MODE_X11__=y
|
||||
# CONFIG___EWOL_LINUX_GUI_MODE_DIRECT_FB__ is not set
|
||||
|
||||
#
|
||||
# edn
|
||||
#
|
||||
|
||||
#
|
||||
# General
|
||||
#
|
||||
CONFIG_APPL_BUFFER_FONT_NORMAL=y
|
||||
# CONFIG_APPL_BUFFER_FONT_DISTANCE_FIELD is not set
|
@@ -1,43 +0,0 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux Kernel Configuration
|
||||
#
|
||||
|
||||
#
|
||||
# Modules
|
||||
#
|
||||
# CONFIG_BUILD_AGG is not set
|
||||
# CONFIG_BUILD_LINEARMATH is not set
|
||||
# CONFIG_BUILD_BULLET is not set
|
||||
# CONFIG_BUILD_ETK is not set
|
||||
# CONFIG_BUILD_FREETYPE is not set
|
||||
# CONFIG_BUILD_GLEW is not set
|
||||
# CONFIG_BUILD_LUA is not set
|
||||
# CONFIG_BUILD_OGG is not set
|
||||
# CONFIG_BUILD_PARSERSVG is not set
|
||||
# CONFIG_BUILD_LIBPNG is not set
|
||||
# CONFIG_BUILD_TINYXML is not set
|
||||
# CONFIG_BUILD_ZLIB is not set
|
||||
# CONFIG_BUILD_LIBZIP is not set
|
||||
# CONFIG_BUILD_EWOL is not set
|
||||
CONFIG_BUILD_EDN=y
|
||||
|
||||
#
|
||||
# ewol
|
||||
#
|
||||
|
||||
#
|
||||
# General
|
||||
#
|
||||
CONFIG___EWOL_APPL_BASIC_TITLE__="Ewol Basic Title"
|
||||
CONFIG___EWOL_INTEGRATED_FONT__=y
|
||||
|
||||
#
|
||||
# edn
|
||||
#
|
||||
|
||||
#
|
||||
# General
|
||||
#
|
||||
CONFIG_APPL_BUFFER_FONT_NORMAL=y
|
||||
# CONFIG_APPL_BUFFER_FONT_DISTANCE_FIELD is not set
|
@@ -12,15 +12,15 @@
|
||||
<button name="SEARCH:replace">
|
||||
<image src="THEME:GUI:Replace.edf" fill="true" size="7,7mm" distance-field="true"/>
|
||||
</button>
|
||||
<button name="SEARCH:case">
|
||||
<button name="SEARCH:case" toggle="true">
|
||||
<image src="THEME:GUI:CaseSensitive.edf" fill="true" size="7,7mm" hover="Close search bar" distance-field="true"/>
|
||||
<image src="THEME:GUI:CaseSensitive.edf" fill="true" size="7,7mm" hover="Close search bar" distance-field="true"/>
|
||||
</button>
|
||||
<button name="SEARCH:wrap">
|
||||
<button name="SEARCH:wrap" toggle="true">
|
||||
<image src="THEME:GUI:WrapAround.edf" fill="true" size="7,7mm" hover="Close search bar" distance-field="true"/>
|
||||
<image src="THEME:GUI:WrapAround.edf" fill="true" size="7,7mm" hover="Close search bar" distance-field="true"/>
|
||||
</button>
|
||||
<button name="SEARCH:up-down">
|
||||
<button name="SEARCH:up-down" toggle="true">
|
||||
<image src="THEME:GUI:Up.edf" fill="true" size="7,7mm" hover="Close search bar" distance-field="true"/>
|
||||
<image src="THEME:GUI:Down.edf" fill="true" size="7,7mm" hover="Close search bar" distance-field="true"/>
|
||||
</button>
|
||||
|
58
data/languages/cmake/highlight.xml
Normal file
58
data/languages/cmake/highlight.xml
Normal file
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<EdnLang version="0.1" lang="C/C++">
|
||||
<ext>CMakeLists.txt</ext>
|
||||
<ext>CMakeCache.txt</ext>
|
||||
<pass1>
|
||||
<rule name="my comment doxygen">
|
||||
<color>commentDoxygen</color>
|
||||
<start>##</start>
|
||||
<end>\n</end>
|
||||
</rule>
|
||||
<rule name="my todo comment">
|
||||
<color>SYNTAX_ERROR</color>
|
||||
<start>#[ \t]TODO[ \t]*:</start>
|
||||
<end>\n</end>
|
||||
<EscapeChar>\</EscapeChar>
|
||||
</rule>
|
||||
<rule name="my comment">
|
||||
<color>comment</color>
|
||||
<start>#</start>
|
||||
<end>\n</end>
|
||||
<EscapeChar>\</EscapeChar>
|
||||
</rule>
|
||||
<rule name="doubleQuteText">
|
||||
<color>doubleQuoteText</color>
|
||||
<start>"</start>
|
||||
<end>"</end>
|
||||
<EscapeChar>\</EscapeChar>
|
||||
</rule>
|
||||
</pass1>
|
||||
<pass2> <!-- Parse on display data ==> nor regenerate every display but every time modification apear -->
|
||||
<rule name="my keyword">
|
||||
<color>keyword</color>
|
||||
<start>\@foreach|message|endforeach|if|else|endif|list|file|string\@</start>
|
||||
</rule>
|
||||
<rule name="my function keyword">
|
||||
<color>systemFunction</color>
|
||||
<start>\@set|include_directories|add_definitions|add_library|include_directories|target_link_libraries|project|include|check_include_file|enable_testing|option|cmake_minimum_required|add_definitions|check_include_file|configure_file|include_directories|add_custom_command|add_executable|add_test\@</start>
|
||||
</rule>
|
||||
<rule name="Variable">
|
||||
<color>inputFunction</color>
|
||||
<start>${</start>
|
||||
<end>}</end>
|
||||
</rule>
|
||||
<rule name="numeric constant">
|
||||
<color>number</color>
|
||||
<start>\@((0(x|X)[0-9a-fA-F]*)|(\d+\.?\d*|\.\d+)((e|E)(\+|\-)?\d+)?)(L|l|UL|ul|u|U|F|f)?\@</start>
|
||||
</rule>
|
||||
<rule name="BIG LETTER">
|
||||
<color>macro</color>
|
||||
<start>\@[A-Z_][A-Z_0-9]{3,500}\@</start>
|
||||
</rule>
|
||||
<rule name="Function name">
|
||||
<color>functionName</color>
|
||||
<start>\@(\w|_)+[ \t]*\(</start>
|
||||
</rule>
|
||||
|
||||
</pass2>
|
||||
</EdnLang>
|
110
sources/CMakeLists.txt
Normal file
110
sources/CMakeLists.txt
Normal file
@@ -0,0 +1,110 @@
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
# Declare the project
|
||||
project(edn)
|
||||
|
||||
##
|
||||
## Include C++ X11 dependency ... (check correct flags)
|
||||
##
|
||||
include(CheckCXXCompilerFlag)
|
||||
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
|
||||
if(COMPILER_SUPPORTS_CXX11)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
||||
else()
|
||||
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
|
||||
if(COMPILER_SUPPORTS_CXX0X)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
|
||||
else()
|
||||
message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
# set output path:
|
||||
set(LIBRARY_OUTPUT_PATH lib/${CMAKE_BUILD_TYPE})
|
||||
|
||||
include_directories(.)
|
||||
|
||||
#Create src file list
|
||||
set(src_files
|
||||
appl/ctags/readtags.cpp
|
||||
appl/debug.cpp
|
||||
appl/global.cpp
|
||||
appl/globalMsg.cpp
|
||||
appl/init.cpp
|
||||
appl/Gui/BufferView.cpp
|
||||
appl/Gui/TextViewer.cpp
|
||||
appl/Gui/ViewerManager.cpp
|
||||
appl/Gui/MainWindows.cpp
|
||||
appl/Gui/Search.cpp
|
||||
appl/Gui/TagFileSelection.cpp
|
||||
appl/Gui/TagFileList.cpp
|
||||
appl/Gui/WorkerSaveFile.cpp
|
||||
appl/Gui/WorkerSaveAllFile.cpp
|
||||
appl/Gui/WorkerCloseFile.cpp
|
||||
appl/Gui/WorkerCloseAllFile.cpp
|
||||
appl/Buffer.cpp
|
||||
appl/BufferManager.cpp
|
||||
appl/TextPlugin.cpp
|
||||
appl/TextPluginCopy.cpp
|
||||
appl/TextPluginMultiLineTab.cpp
|
||||
appl/TextPluginAutoIndent.cpp
|
||||
appl/TextPluginHistory.cpp
|
||||
appl/TextPluginRmLine.cpp
|
||||
appl/TextPluginSelectAll.cpp
|
||||
appl/TextPluginCtags.cpp
|
||||
appl/TextPluginManager.cpp
|
||||
appl/GlyphDecoration.cpp
|
||||
appl/GlyphPainting.cpp
|
||||
appl/HighlightPattern.cpp
|
||||
appl/Highlight.cpp
|
||||
appl/HighlightManager.cpp
|
||||
)
|
||||
|
||||
add_definitions( -DDEBUG_LEVEL=3 )
|
||||
add_definitions( -DDEBUG=1 )
|
||||
add_definitions( -DPROJECT_NAME="edn" )
|
||||
if (APPLE)
|
||||
add_definitions( -D__TARGET_OS__MacOs )
|
||||
elseif (UNIX)
|
||||
add_definitions( -D__TARGET_OS__Linux )
|
||||
elseif (WIN32)
|
||||
add_definitions( -D__TARGET_OS__Windows )
|
||||
endif ()
|
||||
# read version :
|
||||
file (STRINGS "tag" BUILD_VERSION)
|
||||
add_definitions( -DAPPL_VERSION="${BUILD_VERSION}" )
|
||||
|
||||
#Create a static Lib:
|
||||
add_executable(edn ${src_files} )
|
||||
|
||||
include_directories(${zlib_SOURCE_DIR}/contrib/)
|
||||
include_directories(${linearmath_SOURCE_DIR}/bullet/src/)
|
||||
include_directories(${etk_SOURCE_DIR})
|
||||
include_directories(${freetype_SOURCE_DIR})
|
||||
include_directories(${exml_SOURCE_DIR})
|
||||
include_directories(${ejson_SOURCE_DIR})
|
||||
include_directories(${egami_SOURCE_DIR})
|
||||
include_directories(${edtaa3_SOURCE_DIR})
|
||||
include_directories(${date_SOURCE_DIR})
|
||||
include_directories(${agg_SOURCE_DIR})
|
||||
include_directories(${ewol_SOURCE_DIR})
|
||||
|
||||
|
||||
#target_link_libraries(edn ewol)
|
||||
target_link_libraries(edn ewol linearmath zlib etk freetype exml ejson egami edtaa3 date esvg png)
|
||||
|
||||
if (APPLE)
|
||||
target_link_libraries(edn
|
||||
"-framework Cocoa"
|
||||
"-framework OpenGL"
|
||||
"-framework QuartzCore"
|
||||
"-framework AppKit"
|
||||
)
|
||||
elseif (UNIX)
|
||||
target_link_libraries(edn -lGL -lX11 -lpthread)
|
||||
elseif (WIN32)
|
||||
|
||||
endif ()
|
||||
|
||||
|
@@ -13,13 +13,15 @@
|
||||
#include <ewol/context/clipBoard.h>
|
||||
#include <appl/HighlightManager.h>
|
||||
|
||||
#undef __class__
|
||||
#define __class__ "Buffer"
|
||||
|
||||
const char* const appl::Buffer::eventIsModify = "edn-is-modify";
|
||||
const char* const appl::Buffer::eventIsSave = "edn-is-save";
|
||||
const char* const appl::Buffer::eventSelectChange = "edn-select-change";
|
||||
const char* const appl::Buffer::eventChangeName = "edn-buffer-name-change";
|
||||
|
||||
appl::Buffer::Iterator& appl::Buffer::Iterator::operator++ (void) {
|
||||
appl::Buffer::Iterator& appl::Buffer::Iterator::operator++ () {
|
||||
m_value = u32char::Null;
|
||||
if (m_current < 0) {
|
||||
m_current = 0;
|
||||
@@ -41,7 +43,7 @@ appl::Buffer::Iterator& appl::Buffer::Iterator::operator++ (void) {
|
||||
return *this;
|
||||
}
|
||||
|
||||
appl::Buffer::Iterator& appl::Buffer::Iterator::operator-- (void) {
|
||||
appl::Buffer::Iterator& appl::Buffer::Iterator::operator-- () {
|
||||
m_value = u32char::Null;
|
||||
if (m_data != NULL) {
|
||||
if (m_current > 0) {
|
||||
@@ -62,7 +64,7 @@ appl::Buffer::Iterator& appl::Buffer::Iterator::operator-- (void) {
|
||||
return *this;
|
||||
}
|
||||
|
||||
char32_t appl::Buffer::Iterator::operator* (void) {
|
||||
char32_t appl::Buffer::Iterator::operator* () {
|
||||
if (m_value != u32char::Null) {
|
||||
return m_value;
|
||||
}
|
||||
@@ -92,32 +94,32 @@ appl::Buffer::Iterator appl::Buffer::position(int64_t _pos) {
|
||||
return appl::Buffer::Iterator(this, _pos);
|
||||
}
|
||||
|
||||
appl::Buffer::Iterator appl::Buffer::begin(void) {
|
||||
appl::Buffer::Iterator appl::Buffer::begin() {
|
||||
return position(0);
|
||||
}
|
||||
|
||||
appl::Buffer::Iterator appl::Buffer::end(void) {
|
||||
appl::Buffer::Iterator appl::Buffer::end() {
|
||||
// TODO : chek the validity of the char ...
|
||||
return position( m_data.size() );
|
||||
}
|
||||
|
||||
appl::Buffer::Iterator appl::Buffer::cursor(void) {
|
||||
appl::Buffer::Iterator appl::Buffer::cursor() {
|
||||
if (m_cursorPos<= 0) {
|
||||
return begin();
|
||||
}
|
||||
return position( m_cursorPos );
|
||||
}
|
||||
|
||||
appl::Buffer::Iterator appl::Buffer::selectStart(void) {
|
||||
appl::Buffer::Iterator appl::Buffer::selectStart() {
|
||||
return position( getStartSelectionPos() );
|
||||
}
|
||||
|
||||
appl::Buffer::Iterator appl::Buffer::selectStop(void) {
|
||||
appl::Buffer::Iterator appl::Buffer::selectStop() {
|
||||
return position( getStopSelectionPos() );
|
||||
}
|
||||
|
||||
|
||||
appl::Buffer::Buffer(void) :
|
||||
appl::Buffer::Buffer() :
|
||||
m_hasFileName(false),
|
||||
m_fileName(""),
|
||||
m_isModify(false),
|
||||
@@ -136,15 +138,18 @@ appl::Buffer::Buffer(void) :
|
||||
addEventId(eventChangeName);
|
||||
}
|
||||
|
||||
appl::Buffer::~Buffer(void) {
|
||||
appl::Buffer::~Buffer() {
|
||||
if (m_highlight == NULL) {
|
||||
appl::Highlight::release(m_highlight);
|
||||
}
|
||||
}
|
||||
|
||||
bool appl::Buffer::loadFile(const std::string& _name) {
|
||||
APPL_DEBUG("Load file : '" << _name << "'");
|
||||
m_fileName = _name;
|
||||
APPL_DEBUG("Convert filename :'" << _name << "'");
|
||||
etk::FSNode file(_name);
|
||||
std::string name = file.getName();
|
||||
APPL_INFO("Load file : '" << name << "'");
|
||||
m_fileName = name;
|
||||
m_hasFileName = true;
|
||||
m_isModify = true;
|
||||
m_cursorPos = 0;
|
||||
@@ -160,16 +165,19 @@ bool appl::Buffer::loadFile(const std::string& _name) {
|
||||
}
|
||||
|
||||
void appl::Buffer::setFileName(const std::string& _name) {
|
||||
if (m_fileName == _name) {
|
||||
APPL_DEBUG("Convert filename :'" << _name << "'");
|
||||
etk::FSNode file(_name);
|
||||
std::string name = file.getName();
|
||||
if (m_fileName == name) {
|
||||
return;
|
||||
}
|
||||
m_fileName = _name;
|
||||
m_fileName = name;
|
||||
m_hasFileName = true;
|
||||
generateEventId(eventChangeName);
|
||||
setModification(true);
|
||||
}
|
||||
|
||||
bool appl::Buffer::storeFile(void) {
|
||||
bool appl::Buffer::storeFile() {
|
||||
if (m_data.dumpIn(m_fileName) == true) {
|
||||
APPL_INFO("saving file : " << m_fileName);
|
||||
setModification(false);
|
||||
@@ -191,7 +199,7 @@ void appl::Buffer::setModification(bool _status) {
|
||||
}
|
||||
|
||||
// TODO : Naming error
|
||||
void appl::Buffer::countNumberofLine(void) {
|
||||
void appl::Buffer::countNumberofLine() {
|
||||
m_nbLines = 1;
|
||||
for (Iterator it = begin();
|
||||
(bool)it == true;
|
||||
@@ -511,7 +519,7 @@ void appl::Buffer::setSelectionPos(const appl::Buffer::Iterator& _pos) {
|
||||
generateEventId(eventSelectChange);
|
||||
}
|
||||
|
||||
void appl::Buffer::unSelect(void) {
|
||||
void appl::Buffer::unSelect() {
|
||||
m_cursorSelectPos = -1;
|
||||
generateEventId(eventSelectChange);
|
||||
}
|
||||
@@ -619,8 +627,6 @@ bool appl::Buffer::copy(std::string& _data) {
|
||||
|
||||
void appl::Buffer::copy(std::string& _data, const appl::Buffer::Iterator& _pos, const appl::Buffer::Iterator& _posEnd) {
|
||||
_data.clear();
|
||||
int64_t startPos = getStartSelectionPos();
|
||||
int64_t endPos = getStopSelectionPos();
|
||||
for (Iterator it = _pos;
|
||||
it != _posEnd &&
|
||||
(bool)it == true;
|
||||
@@ -634,7 +640,7 @@ bool appl::Buffer::write(const std::string& _data, const appl::Buffer::Iterator&
|
||||
if (position < 0){
|
||||
position = 0;
|
||||
}
|
||||
APPL_ERROR("writye at pos: " << (int64_t)_pos << " ==> " << position);
|
||||
APPL_VERBOSE("write at pos: " << (int64_t)_pos << " ==> " << position << " data : " << _data);
|
||||
m_data.insert(position, (int8_t*)(_data.c_str()), _data.size());
|
||||
if (m_cursorPos < 0) {
|
||||
m_cursorPos = 0;
|
||||
@@ -661,7 +667,7 @@ bool appl::Buffer::replace(const std::string& _data, const appl::Buffer::Iterato
|
||||
return true;
|
||||
}
|
||||
|
||||
void appl::Buffer::removeSelection(void) {
|
||||
void appl::Buffer::removeSelection() {
|
||||
if (hasTextSelected() == false) {
|
||||
return;
|
||||
}
|
||||
@@ -675,7 +681,7 @@ void appl::Buffer::removeSelection(void) {
|
||||
setModification(true);
|
||||
}
|
||||
|
||||
void appl::Buffer::tryFindHighlightType(void) {
|
||||
void appl::Buffer::tryFindHighlightType() {
|
||||
etk::FSNode file(m_fileName);
|
||||
std::string type = appl::highlightManager::getTypeExtention(file.fileGetExtention());
|
||||
if (type.size() == 0) {
|
||||
@@ -862,7 +868,7 @@ void appl::Buffer::generateHighLightAt(int64_t _pos, int64_t _endPos, int64_t _a
|
||||
m_highlight->parse(_pos, _endPos, m_HLDataPass1, _addingPos, m_data);
|
||||
}
|
||||
|
||||
void appl::Buffer::cleanHighLight(void) {
|
||||
void appl::Buffer::cleanHighLight() {
|
||||
// remove all element in the list...
|
||||
m_HLDataPass1.clear();
|
||||
}
|
||||
@@ -974,7 +980,7 @@ appl::HighlightInfo* appl::Buffer::getElementColorAtPosition(appl::DisplayHLData
|
||||
return getElementColorAtPosition(_pos, _MData.posHLPass1);
|
||||
}
|
||||
|
||||
uint32_t appl::Buffer::getCursorLinesId(void) {
|
||||
uint32_t appl::Buffer::getCursorLinesId() {
|
||||
if (m_data.size() == 0) {
|
||||
return 0;
|
||||
}
|
||||
|
@@ -38,7 +38,7 @@ namespace appl {
|
||||
/**
|
||||
* @brief Basic itarator constructor with no link.
|
||||
*/
|
||||
Iterator(void):
|
||||
Iterator():
|
||||
m_current(0),
|
||||
m_data(NULL),
|
||||
m_value(u32char::Null) {
|
||||
@@ -68,7 +68,7 @@ namespace appl {
|
||||
/**
|
||||
* @brief Basic destructor
|
||||
*/
|
||||
~Iterator(void) {
|
||||
~Iterator() {
|
||||
m_current = 0;
|
||||
m_data = NULL;
|
||||
m_value = u32char::Null;
|
||||
@@ -77,7 +77,7 @@ namespace appl {
|
||||
* @brief basic boolean cast
|
||||
* @return true if the element is present in buffer
|
||||
*/
|
||||
operator bool (void) const {
|
||||
operator bool () const {
|
||||
if (m_data == NULL) {
|
||||
return false;
|
||||
}
|
||||
@@ -93,7 +93,7 @@ namespace appl {
|
||||
* @brief basic boolean cast
|
||||
* @return true if the element is present in buffer
|
||||
*/
|
||||
operator int64_t (void) const {
|
||||
operator int64_t () const {
|
||||
if (m_data == NULL) {
|
||||
return 0;
|
||||
}
|
||||
@@ -109,12 +109,12 @@ namespace appl {
|
||||
* @brief Incremental operator
|
||||
* @return Reference on the current iterator incremented
|
||||
*/
|
||||
Iterator& operator++ (void);
|
||||
Iterator& operator++ ();
|
||||
/**
|
||||
* @brief Decremental operator
|
||||
* @return Reference on the current iterator decremented
|
||||
*/
|
||||
Iterator& operator-- (void);
|
||||
Iterator& operator-- ();
|
||||
/**
|
||||
* @brief Incremental operator
|
||||
* @return Reference on a new iterator and increment the other one
|
||||
@@ -211,12 +211,12 @@ namespace appl {
|
||||
* @brief Get the value on the current element
|
||||
* @return The request element value
|
||||
*/
|
||||
char32_t operator* (void);
|
||||
char32_t operator* ();
|
||||
/**
|
||||
* @brief Get the position in the buffer
|
||||
* @return The requested position.
|
||||
*/
|
||||
int64_t getPos(void) const {
|
||||
int64_t getPos() const {
|
||||
if (m_data == NULL) {
|
||||
return 0;
|
||||
}
|
||||
@@ -293,8 +293,8 @@ namespace appl {
|
||||
static const char* const eventSelectChange;
|
||||
static const char* const eventChangeName;
|
||||
public:
|
||||
Buffer(void);
|
||||
~Buffer(void);
|
||||
Buffer();
|
||||
~Buffer();
|
||||
private:
|
||||
bool m_hasFileName; //!< when new file, the buffer has no name ==> but it might be reference with a single name ...
|
||||
std::string m_fileName; //!< name of the file (with his path)
|
||||
@@ -302,14 +302,14 @@ namespace appl {
|
||||
/**
|
||||
* @brief get the curent filename of the Buffer
|
||||
*/
|
||||
const std::string& getFileName(void) {
|
||||
const std::string& getFileName() {
|
||||
return m_fileName;
|
||||
}
|
||||
/**
|
||||
* @brief Check if the buffer has a real filename.
|
||||
* @return the status of the existance of a name.
|
||||
*/
|
||||
bool hasFileName(void) {
|
||||
bool hasFileName() {
|
||||
return m_hasFileName;
|
||||
}
|
||||
/**
|
||||
@@ -327,7 +327,7 @@ namespace appl {
|
||||
* @brief save the file in the specify path.
|
||||
* @return true is saving well done
|
||||
*/
|
||||
bool storeFile(void);
|
||||
bool storeFile();
|
||||
protected:
|
||||
bool m_isModify; //!< true if the file is modify
|
||||
public:
|
||||
@@ -335,7 +335,7 @@ namespace appl {
|
||||
* @breif get the status of file modification.
|
||||
* @return true if file is modify.
|
||||
*/
|
||||
bool isModify(void) {
|
||||
bool isModify() {
|
||||
return m_isModify;
|
||||
}
|
||||
/**
|
||||
@@ -346,7 +346,7 @@ namespace appl {
|
||||
protected:
|
||||
etk::Buffer m_data; //!< copy of the file buffer
|
||||
public:
|
||||
etk::Buffer& getData(void) {
|
||||
etk::Buffer& getData() {
|
||||
return m_data;
|
||||
};
|
||||
protected:
|
||||
@@ -364,30 +364,30 @@ namespace appl {
|
||||
/**
|
||||
* @brief Remove Selection of the buffer.
|
||||
*/
|
||||
void unSelect(void);
|
||||
void unSelect();
|
||||
/**
|
||||
* @brief Remove the selection of the buffer. (do nothing if no secection)
|
||||
*/
|
||||
void removeSelection(void);
|
||||
void removeSelection();
|
||||
/**
|
||||
* @brief Get the status of selection.
|
||||
* @return true if we have a curent selection, false otherwise.
|
||||
*/
|
||||
bool hasTextSelected(void) {
|
||||
bool hasTextSelected() {
|
||||
return m_cursorSelectPos >= 0;
|
||||
}
|
||||
/**
|
||||
* @brief Get the Start position of the selection.
|
||||
* @return position of the start selection.
|
||||
*/
|
||||
int64_t getStartSelectionPos(void) {
|
||||
int64_t getStartSelectionPos() {
|
||||
return etk_min(m_cursorPos, m_cursorSelectPos);
|
||||
}
|
||||
/**
|
||||
* @brief Get the Stop position of the selection.
|
||||
* @return position of the stop selection.
|
||||
*/
|
||||
int64_t getStopSelectionPos(void) {
|
||||
int64_t getStopSelectionPos() {
|
||||
return etk_max(m_cursorPos, m_cursorSelectPos);
|
||||
}
|
||||
protected:
|
||||
@@ -404,7 +404,7 @@ namespace appl {
|
||||
* @brief Get the favorite distance from the left screen (For up and down moving).
|
||||
* @return The distance in pixels.
|
||||
*/
|
||||
float getFavoriteUpDownPos(void) {
|
||||
float getFavoriteUpDownPos() {
|
||||
return m_cursorPreferredCol;
|
||||
}
|
||||
protected:
|
||||
@@ -421,7 +421,7 @@ namespace appl {
|
||||
* @brief Get the selection mode (if true, the move event creata a selection)
|
||||
* @return The selecting mode.
|
||||
*/
|
||||
bool getSelectMode(void) {
|
||||
bool getSelectMode() {
|
||||
return m_selectMode;
|
||||
}
|
||||
public:
|
||||
@@ -544,27 +544,27 @@ namespace appl {
|
||||
* @brief Get an Iterator on the start position.
|
||||
* @return The Iterator
|
||||
*/
|
||||
Iterator begin(void);
|
||||
Iterator begin();
|
||||
/**
|
||||
* @brief Get an Iterator on the end position.
|
||||
* @return The Iterator
|
||||
*/
|
||||
Iterator end(void);
|
||||
Iterator end();
|
||||
/**
|
||||
* @brief Get an Iterator on the cursor position.
|
||||
* @return The Iterator
|
||||
*/
|
||||
Iterator cursor(void);
|
||||
Iterator cursor();
|
||||
/**
|
||||
* @brief Get an Iterator on the start selection.
|
||||
* @return The Iterator
|
||||
*/
|
||||
Iterator selectStart(void);
|
||||
Iterator selectStart();
|
||||
/**
|
||||
* @brief Get an Iterator on the stop selection.
|
||||
* @return The Iterator
|
||||
*/
|
||||
Iterator selectStop(void);
|
||||
Iterator selectStop();
|
||||
protected:
|
||||
int32_t m_nbLines; //!< number of line in the buffer
|
||||
public:
|
||||
@@ -572,19 +572,19 @@ namespace appl {
|
||||
* @brief Get the number of line in the buffer.
|
||||
* @return number of line in the Buffer.
|
||||
*/
|
||||
int32_t getNumberOfLines(void) {
|
||||
int32_t getNumberOfLines() {
|
||||
return m_nbLines;
|
||||
}
|
||||
/**
|
||||
* @brief Get the cursor line numberin the buffer.
|
||||
* @return the line id in the Buffer.
|
||||
*/
|
||||
uint32_t getCursorLinesId(void);
|
||||
uint32_t getCursorLinesId();
|
||||
protected:
|
||||
/**
|
||||
* @brief Count the number of line in the buffer
|
||||
*/
|
||||
void countNumberofLine(void);
|
||||
void countNumberofLine();
|
||||
protected:
|
||||
std::string m_highlightType; //!< Name of the highlight type
|
||||
|
||||
@@ -594,7 +594,7 @@ namespace appl {
|
||||
/**
|
||||
* @brief Find the Highligh capability
|
||||
*/
|
||||
void tryFindHighlightType(void);
|
||||
void tryFindHighlightType();
|
||||
/**
|
||||
* @brief Set type of highlight
|
||||
* @param[in] _type type of the highlight
|
||||
@@ -604,7 +604,7 @@ namespace appl {
|
||||
* @brief Get type of highlight
|
||||
* @return Type of the highlight
|
||||
*/
|
||||
const std::string& setHighlightType(void) {
|
||||
const std::string& setHighlightType() {
|
||||
return m_highlightType;
|
||||
};
|
||||
|
||||
@@ -615,7 +615,7 @@ namespace appl {
|
||||
int64_t& _stopId,
|
||||
bool _backPreviousNotEnded);
|
||||
void generateHighLightAt(int64_t _pos, int64_t _endPos, int64_t _addingPos=0);
|
||||
void cleanHighLight(void);
|
||||
void cleanHighLight();
|
||||
appl::HighlightInfo* getElementColorAtPosition(int64_t _pos, int64_t &_starPos);
|
||||
void hightlightGenerateLines(appl::DisplayHLData& _MData, const appl::Buffer::Iterator& _HLStart, int64_t _nbLines);
|
||||
appl::HighlightInfo* getElementColorAtPosition(appl::DisplayHLData& _MData, int64_t _pos);
|
||||
|
@@ -6,10 +6,11 @@
|
||||
* @license GPL v3 (see license file)
|
||||
*/
|
||||
|
||||
#include <etk/types.h>
|
||||
#include <etk/os/FSNode.h>
|
||||
#include <appl/debug.h>
|
||||
#include <appl/global.h>
|
||||
#include <appl/BufferManager.h>
|
||||
#include <etk/types.h>
|
||||
#include <ewol/object/Object.h>
|
||||
#include <ewol/object/Manager.h>
|
||||
#include <ewol/resource/Manager.h>
|
||||
@@ -17,13 +18,13 @@
|
||||
#undef __class__
|
||||
#define __class__ "BufferManager"
|
||||
|
||||
appl::BufferManager::BufferManager(void) :
|
||||
appl::BufferManager::BufferManager() :
|
||||
ewol::Resource("???BufferManager???"),
|
||||
m_bufferSelected(NULL) {
|
||||
addObjectType("appl::BufferManager");
|
||||
}
|
||||
|
||||
appl::BufferManager::~BufferManager(void) {
|
||||
appl::BufferManager::~BufferManager() {
|
||||
int32_t previousCount = m_list.size();
|
||||
for (int32_t iii = m_list.size()-1; iii >= 0 ; --iii) {
|
||||
if (m_list[iii] == NULL) {
|
||||
@@ -39,7 +40,7 @@ appl::BufferManager::~BufferManager(void) {
|
||||
}
|
||||
|
||||
|
||||
appl::Buffer* appl::BufferManager::createNewBuffer(void) {
|
||||
appl::Buffer* appl::BufferManager::createNewBuffer() {
|
||||
appl::Buffer* tmp = new appl::Buffer();
|
||||
if (tmp == NULL) {
|
||||
APPL_ERROR("Can not allocate the Buffer (empty).");
|
||||
@@ -51,6 +52,7 @@ appl::Buffer* appl::BufferManager::createNewBuffer(void) {
|
||||
}
|
||||
|
||||
appl::Buffer* appl::BufferManager::get(const std::string& _fileName, bool _createIfNeeded) {
|
||||
APPL_INFO("get(" << _fileName << "," << _createIfNeeded << ")");
|
||||
for (int32_t iii = 0; iii < m_list.size(); ++iii) {
|
||||
if (m_list[iii] == NULL) {
|
||||
continue;
|
||||
@@ -61,7 +63,8 @@ appl::Buffer* appl::BufferManager::get(const std::string& _fileName, bool _creat
|
||||
}
|
||||
if (_createIfNeeded == true) {
|
||||
if (etk::FSNodeGetType(_fileName) == etk::FSN_FOLDER) {
|
||||
APPL_INFO("try open a folder : " << _fileName);
|
||||
APPL_WARNING("try open a folder : " << _fileName);
|
||||
APPL_CRITICAL("plop");
|
||||
return NULL;
|
||||
}
|
||||
appl::Buffer* tmp = new appl::Buffer();
|
||||
@@ -120,7 +123,7 @@ void appl::BufferManager::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
APPL_DEBUG("receive message !!! " << _msg);
|
||||
}
|
||||
|
||||
appl::BufferManager* appl::BufferManager::keep(void) {
|
||||
appl::BufferManager* appl::BufferManager::keep() {
|
||||
//EWOL_INFO("KEEP : appl::GlyphPainting : file : \"" << _filename << "\"");
|
||||
appl::BufferManager* object = static_cast<appl::BufferManager*>(getManager().localKeep("???BufferManager???"));
|
||||
if (NULL != object) {
|
||||
|
@@ -17,8 +17,8 @@
|
||||
namespace appl {
|
||||
class BufferManager : public ewol::Resource {
|
||||
protected:
|
||||
BufferManager(void);
|
||||
~BufferManager(void);
|
||||
BufferManager();
|
||||
~BufferManager();
|
||||
private:
|
||||
std::vector<appl::Buffer*> m_list; // list of all buffer curently open
|
||||
public:
|
||||
@@ -44,7 +44,7 @@ namespace appl {
|
||||
* @brief Get count of all buffer availlable.
|
||||
* @return Number of buffer
|
||||
*/
|
||||
int32_t size(void) const {
|
||||
int32_t size() const {
|
||||
return m_list.size();
|
||||
}
|
||||
/**
|
||||
@@ -59,7 +59,7 @@ namespace appl {
|
||||
* @brief Create a new buffer empty.
|
||||
* @return Created buffer or NULL.
|
||||
*/
|
||||
appl::Buffer* createNewBuffer(void);
|
||||
appl::Buffer* createNewBuffer();
|
||||
private:
|
||||
appl::Buffer* m_bufferSelected;
|
||||
public:
|
||||
@@ -72,7 +72,7 @@ namespace appl {
|
||||
* @brief Get the current buffer selected
|
||||
* @return Pointer on the buffer selected
|
||||
*/
|
||||
appl::Buffer* getBufferSelected(void) {
|
||||
appl::Buffer* getBufferSelected() {
|
||||
return m_bufferSelected;
|
||||
};
|
||||
public: // herited function
|
||||
@@ -85,7 +85,7 @@ namespace appl {
|
||||
* @param[in] _filename Name of the configuration file.
|
||||
* @return pointer on the resource or NULL if an error occured.
|
||||
*/
|
||||
static appl::BufferManager* keep(void);
|
||||
static appl::BufferManager* keep();
|
||||
/**
|
||||
* @brief release the keeped resources
|
||||
* @param[in,out] reference on the object pointer
|
||||
|
@@ -44,7 +44,7 @@ void appl::GlyphDecoration::setBold(bool _enable)
|
||||
}
|
||||
}
|
||||
|
||||
etk::CCout& appl::operator <<(etk::CCout& _os, const appl::GlyphDecoration& _obj)
|
||||
std::ostream& appl::operator <<(std::ostream& _os, const appl::GlyphDecoration& _obj)
|
||||
{
|
||||
_os << "{fg=" << _obj.getForeground();
|
||||
_os << ",bg=" << _obj.getBackground();
|
||||
|
@@ -17,7 +17,7 @@ namespace appl {
|
||||
public:
|
||||
// Constructeur
|
||||
GlyphDecoration(const std::string& _newColorName = "no_name");
|
||||
~GlyphDecoration(void) {
|
||||
~GlyphDecoration() {
|
||||
// nothing to do ...
|
||||
};
|
||||
private:
|
||||
@@ -34,7 +34,7 @@ namespace appl {
|
||||
* @brief Get the color name.
|
||||
* @return The name of the color.
|
||||
*/
|
||||
const std::string& getName(void) const {
|
||||
const std::string& getName() const {
|
||||
return m_colorName;
|
||||
};
|
||||
private:
|
||||
@@ -51,14 +51,14 @@ namespace appl {
|
||||
* @brief Get the foreground color.
|
||||
* @return The color.
|
||||
*/
|
||||
const etk::Color<>& getForeground(void) const {
|
||||
const etk::Color<>& getForeground() const {
|
||||
return m_colorFG;
|
||||
};
|
||||
/**
|
||||
* @brief Get the foreground color status.
|
||||
* @return true if the color is visible.
|
||||
*/
|
||||
bool haveFg(void) const {
|
||||
bool haveFg() const {
|
||||
return m_colorFG.a() != 0;
|
||||
};
|
||||
private:
|
||||
@@ -75,14 +75,14 @@ namespace appl {
|
||||
* @brief Get the background color.
|
||||
* @return The color.
|
||||
*/
|
||||
const etk::Color<>& getBackground(void) const {
|
||||
const etk::Color<>& getBackground() const {
|
||||
return m_colorBG;
|
||||
};
|
||||
/**
|
||||
* @brief Get the background color status.
|
||||
* @return true if the color is visible.
|
||||
*/
|
||||
bool haveBackground(void) const {
|
||||
bool haveBackground() const {
|
||||
return m_colorBG.a()!=0;
|
||||
};
|
||||
private:
|
||||
@@ -97,7 +97,7 @@ namespace appl {
|
||||
* @brief Get the italic status.
|
||||
* @return true if the glyph might be display in italic.
|
||||
*/
|
||||
bool getItalic(void) const {
|
||||
bool getItalic() const {
|
||||
return m_italic;
|
||||
};
|
||||
private:
|
||||
@@ -112,11 +112,11 @@ namespace appl {
|
||||
* @brief Get the bold status.
|
||||
* @return true if the glyph might be display in bold.
|
||||
*/
|
||||
bool getBold(void) const {
|
||||
bool getBold() const {
|
||||
return m_bold;
|
||||
};
|
||||
};
|
||||
etk::CCout& operator <<(etk::CCout& _os, const appl::GlyphDecoration& _obj);
|
||||
std::ostream& operator <<(std::ostream& _os, const appl::GlyphDecoration& _obj);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@@ -25,11 +25,11 @@ appl::GlyphPainting::GlyphPainting(const std::string& _filename) :
|
||||
reload();
|
||||
}
|
||||
|
||||
appl::GlyphPainting::~GlyphPainting(void) {
|
||||
appl::GlyphPainting::~GlyphPainting() {
|
||||
|
||||
}
|
||||
|
||||
void appl::GlyphPainting::reload(void) {
|
||||
void appl::GlyphPainting::reload() {
|
||||
ejson::Document doc;
|
||||
if (false == doc.load(m_name)) {
|
||||
APPL_ERROR("Can not load file : '" << m_name << "' = " << etk::FSNode(m_name).getFileSystemName());
|
||||
|
@@ -20,12 +20,12 @@ namespace appl {
|
||||
std::vector<appl::GlyphDecoration> m_list;
|
||||
protected:
|
||||
GlyphPainting(const std::string& _filename);
|
||||
virtual ~GlyphPainting(void);
|
||||
virtual ~GlyphPainting();
|
||||
public:
|
||||
/**
|
||||
* @brief Load or reload data from config
|
||||
*/
|
||||
void reload(void);
|
||||
void reload();
|
||||
/**
|
||||
* @brief Register a decoration with his name and get the ref id.
|
||||
* @param[in] _name Name of the deco.
|
||||
|
@@ -39,7 +39,7 @@ static void SortElementList(std::vector<appl::dataBufferStruct*>& _list) {
|
||||
}
|
||||
}
|
||||
|
||||
BufferView::BufferView(void) :
|
||||
BufferView::BufferView() :
|
||||
m_openOrderMode(false) {
|
||||
addObjectType("appl::BufferView");
|
||||
setCanHaveFocus(true);
|
||||
@@ -63,11 +63,11 @@ BufferView::BufferView(void) :
|
||||
m_colorTextModify = m_paintingProperties->request("textModify");
|
||||
}
|
||||
|
||||
BufferView::~BufferView(void) {
|
||||
BufferView::~BufferView() {
|
||||
removeAllElement();
|
||||
}
|
||||
|
||||
void BufferView::removeAllElement(void) {
|
||||
void BufferView::removeAllElement() {
|
||||
for(int32_t iii=0; iii<m_list.size(); iii++) {
|
||||
if (NULL!=m_list[iii]) {
|
||||
delete(m_list[iii]);
|
||||
@@ -237,11 +237,11 @@ void BufferView::onObjectRemove(ewol::Object* _removeObject) {
|
||||
}
|
||||
|
||||
|
||||
etk::Color<> BufferView::getBasicBG(void) {
|
||||
etk::Color<> BufferView::getBasicBG() {
|
||||
return (*m_paintingProperties)[m_colorBackground1].getForeground();
|
||||
}
|
||||
|
||||
uint32_t BufferView::getNuberOfColomn(void) {
|
||||
uint32_t BufferView::getNuberOfColomn() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -250,7 +250,7 @@ bool BufferView::getTitle(int32_t _colomn, std::string &_myTitle, etk::Color<> &
|
||||
return true;
|
||||
}
|
||||
|
||||
uint32_t BufferView::getNuberOfRaw(void) {
|
||||
uint32_t BufferView::getNuberOfRaw() {
|
||||
return m_list.size();
|
||||
}
|
||||
|
||||
|
@@ -27,7 +27,7 @@ namespace appl
|
||||
m_buffer(_buffer) {
|
||||
|
||||
};
|
||||
~dataBufferStruct(void) { };
|
||||
~dataBufferStruct() { };
|
||||
};
|
||||
};
|
||||
|
||||
@@ -53,8 +53,8 @@ class BufferView : public ewol::widget::List
|
||||
void insertAlphabetic(appl::dataBufferStruct* _dataStruct, bool _selectNewPosition = false);
|
||||
public:
|
||||
// Constructeur
|
||||
BufferView(void);
|
||||
~BufferView(void);
|
||||
BufferView();
|
||||
~BufferView();
|
||||
// Derived function
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
@@ -62,12 +62,12 @@ class BufferView : public ewol::widget::List
|
||||
bool m_openOrderMode; //!< true if the order is the opening order mode, otherwise, Alphabetic order
|
||||
protected:
|
||||
// function call to display the list :
|
||||
virtual etk::Color<> getBasicBG(void);
|
||||
void removeAllElement(void);
|
||||
virtual etk::Color<> getBasicBG();
|
||||
void removeAllElement();
|
||||
// Derived function
|
||||
virtual uint32_t getNuberOfColomn(void);
|
||||
virtual uint32_t getNuberOfColomn();
|
||||
virtual bool getTitle(int32_t _colomn, std::string& _myTitle, etk::Color<>& _fg, etk::Color<>& _bg);
|
||||
virtual uint32_t getNuberOfRaw(void);
|
||||
virtual uint32_t getNuberOfRaw();
|
||||
virtual bool getElement(int32_t _colomn, int32_t _raw, std::string& _myTextToWrite, etk::Color<>& _fg, etk::Color<>& _bg);
|
||||
virtual bool onItemEvent(int32_t _IdInput, enum ewol::key::status _typeEvent, int32_t _colomn, int32_t _raw, float _x, float _y);
|
||||
};
|
||||
|
@@ -38,7 +38,7 @@
|
||||
#include <appl/Gui/WorkerCloseAllFile.h>
|
||||
|
||||
namespace appl {
|
||||
std::string getVersion(void) {
|
||||
std::string getVersion() {
|
||||
#define FIRST_YEAR (2010)
|
||||
std::string tmpOutput = std::to_string(date::getYear()-FIRST_YEAR);
|
||||
tmpOutput += ".";
|
||||
@@ -59,7 +59,7 @@ namespace appl {
|
||||
|
||||
class ParameterAboutGui : public ewol::widget::Sizer {
|
||||
public :
|
||||
ParameterAboutGui(void) :
|
||||
ParameterAboutGui() :
|
||||
ewol::widget::Sizer(ewol::widget::Sizer::modeVert) {
|
||||
ewol::widget::Spacer* mySpacer = NULL;
|
||||
|
||||
@@ -102,7 +102,7 @@ class ParameterAboutGui : public ewol::widget::Sizer {
|
||||
}
|
||||
};
|
||||
|
||||
~ParameterAboutGui(void) {
|
||||
~ParameterAboutGui() {
|
||||
|
||||
};
|
||||
};
|
||||
@@ -119,7 +119,7 @@ const char* l_smoothMax = "tmpEvent_maxChange";
|
||||
#undef __class__
|
||||
#define __class__ "MainWindows"
|
||||
|
||||
MainWindows::MainWindows(void) {
|
||||
MainWindows::MainWindows() {
|
||||
addObjectType("appl::MainWindows");
|
||||
APPL_DEBUG("CREATE WINDOWS ... ");
|
||||
ewol::widget::Sizer * mySizerVert = NULL;
|
||||
@@ -152,6 +152,7 @@ MainWindows::MainWindows(void) {
|
||||
#else
|
||||
myTextView = new appl::TextViewer("FreeMono;DejaVuSansMono;FreeSerif", 11);
|
||||
#endif
|
||||
myTextView->setName("appl-text-viewer");
|
||||
myTextView->setExpand(bvec2(true,true));
|
||||
myTextView->setFill(bvec2(true,true));
|
||||
mySizerVert2->subWidgetAdd(myTextView);
|
||||
@@ -164,34 +165,6 @@ MainWindows::MainWindows(void) {
|
||||
// search area :
|
||||
Search * mySearch = new Search();
|
||||
mySizerVert2->subWidgetAdd(mySearch);
|
||||
#ifdef APPL_BUFFER_FONT_DISTANCE_FIELD
|
||||
{
|
||||
ewol::widget::Sizer * mySizerHori2 = new widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
mySizerVert2->subWidgetAdd(mySizerHori2);
|
||||
|
||||
ewol::widget::CheckBox* tmpCheck = new widget::CheckBox("smooth");
|
||||
mySizerHori2->subWidgetAdd(tmpCheck);
|
||||
tmpCheck->registerOnEvent(this, "clicked", l_smoothChick);
|
||||
|
||||
ewol::widget::Slider* tmpSlider = new widget::Slider();
|
||||
mySizerHori2->subWidgetAdd(tmpSlider);
|
||||
tmpSlider->registerOnEvent(this, "change", l_smoothMin);
|
||||
tmpSlider->setExpand(bvec2(true,false));
|
||||
tmpSlider->setMin(0);
|
||||
tmpSlider->setMax(1000);
|
||||
tmpSlider->setValue(0450);
|
||||
tmpSliderMin = tmpSlider;
|
||||
|
||||
tmpSlider = new ewol::widget::Slider();
|
||||
mySizerHori2->subWidgetAdd(tmpSlider);
|
||||
tmpSlider->registerOnEvent(this, "change", l_smoothMax);
|
||||
tmpSlider->setExpand(bvec2(true,false));
|
||||
tmpSlider->setMin(0);
|
||||
tmpSlider->setMax(1000);
|
||||
tmpSlider->setValue(0550);
|
||||
tmpSliderMax = tmpSlider;
|
||||
}
|
||||
#endif
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
mySizerVert->subWidgetAdd(mySizerHori);
|
||||
@@ -199,51 +172,51 @@ MainWindows::MainWindows(void) {
|
||||
myMenu = new ewol::widget::Menu();
|
||||
mySizerHori->subWidgetAdd(myMenu);
|
||||
int32_t idMenuFile = myMenu->addTitle("File");
|
||||
(void)myMenu->add(idMenuFile, "New", "", ednMsgGuiNew);
|
||||
(void)myMenu->addSpacer();
|
||||
(void)myMenu->add(idMenuFile, "Open", "THEME:GUI:Load.edf", ednMsgGuiOpen);
|
||||
(void)myMenu->add(idMenuFile, "Close", "THEME:GUI:Close.edf", ednMsgGuiClose, "current");
|
||||
(void)myMenu->add(idMenuFile, "Close (all)", "", ednMsgGuiClose, "All");
|
||||
(void)myMenu->add(idMenuFile, "Save", "THEME:GUI:Save.edf", ednMsgGuiSave, "current");
|
||||
(void)myMenu->add(idMenuFile, "Save As ...", "", ednMsgGuiSaveAs);
|
||||
(void)myMenu->addSpacer();
|
||||
//(void)myMenu->add(idMenuFile, "Exit", "", ednMsgGuiExit);
|
||||
(void)myMenu->addSpacer();
|
||||
(void)myMenu->add(idMenuFile, "Properties", "THEME:GUI:Parameter.edf", ednMsgProperties);
|
||||
myMenu->add(idMenuFile, "New", "", ednMsgGuiNew);
|
||||
myMenu->addSpacer();
|
||||
myMenu->add(idMenuFile, "Open", "THEME:GUI:Load.edf", ednMsgGuiOpen);
|
||||
myMenu->add(idMenuFile, "Close", "THEME:GUI:Close.edf", ednMsgGuiClose, "current");
|
||||
myMenu->add(idMenuFile, "Close (all)", "", ednMsgGuiClose, "All");
|
||||
myMenu->add(idMenuFile, "Save", "THEME:GUI:Save.edf", ednMsgGuiSave, "current");
|
||||
myMenu->add(idMenuFile, "Save As ...", "", ednMsgGuiSaveAs);
|
||||
myMenu->addSpacer();
|
||||
//myMenu->add(idMenuFile, "Exit", "", ednMsgGuiExit);
|
||||
myMenu->addSpacer();
|
||||
myMenu->add(idMenuFile, "Properties", "THEME:GUI:Parameter.edf", ednMsgProperties);
|
||||
int32_t idMenuEdit = myMenu->addTitle("Edit");
|
||||
(void)myMenu->add(idMenuEdit, "Undo", "THEME:GUI:Undo.edf", ednMsgGuiUndo);
|
||||
(void)myMenu->add(idMenuEdit, "Redo", "THEME:GUI:Redo.edf", ednMsgGuiRedo);
|
||||
(void)myMenu->addSpacer();
|
||||
(void)myMenu->add(idMenuEdit, "Copy", "", ednMsgGuiCopy, "STD");
|
||||
(void)myMenu->add(idMenuEdit, "Cut", "", ednMsgGuiCut, "STD");
|
||||
(void)myMenu->add(idMenuEdit, "Paste", "", ednMsgGuiPaste, "STD");
|
||||
(void)myMenu->add(idMenuEdit, "Remove", "", ednMsgGuiRm);
|
||||
(void)myMenu->addSpacer();
|
||||
(void)myMenu->add(idMenuEdit, "Select All","", ednMsgGuiSelect, "ALL");
|
||||
(void)myMenu->add(idMenuEdit, "Un-Select","", ednMsgGuiSelect, "NONE");
|
||||
(void)myMenu->add(idMenuEdit, "Goto line ...","", ednMsgGuiGotoLine, "???");
|
||||
myMenu->add(idMenuEdit, "Undo", "THEME:GUI:Undo.edf", ednMsgGuiUndo);
|
||||
myMenu->add(idMenuEdit, "Redo", "THEME:GUI:Redo.edf", ednMsgGuiRedo);
|
||||
myMenu->addSpacer();
|
||||
myMenu->add(idMenuEdit, "Copy", "", ednMsgGuiCopy, "STD");
|
||||
myMenu->add(idMenuEdit, "Cut", "", ednMsgGuiCut, "STD");
|
||||
myMenu->add(idMenuEdit, "Paste", "", ednMsgGuiPaste, "STD");
|
||||
myMenu->add(idMenuEdit, "Remove", "", ednMsgGuiRm);
|
||||
myMenu->addSpacer();
|
||||
myMenu->add(idMenuEdit, "Select All","", ednMsgGuiSelect, "ALL");
|
||||
myMenu->add(idMenuEdit, "Un-Select","", ednMsgGuiSelect, "NONE");
|
||||
myMenu->add(idMenuEdit, "Goto line ...","", ednMsgGuiGotoLine, "???");
|
||||
int32_t idMenuSearch = myMenu->addTitle("Search");
|
||||
(void)myMenu->add(idMenuSearch, "Search", "THEME:GUI:Search.edf", ednMsgGuiSearch);
|
||||
(void)myMenu->add(idMenuSearch, "Replace", "THEME:GUI:Replace.edf", ednMsgGuiReplace);
|
||||
(void)myMenu->addSpacer();
|
||||
(void)myMenu->add(idMenuSearch, "Find (previous)","", ednMsgGuiFind, "Previous");
|
||||
(void)myMenu->add(idMenuSearch, "Find (next)", "", ednMsgGuiFind, "Next");
|
||||
(void)myMenu->add(idMenuSearch, "Find (all)", "", ednMsgGuiFind, "All");
|
||||
(void)myMenu->add(idMenuSearch, "Un-Select", "", ednMsgGuiFind, "None");
|
||||
myMenu->add(idMenuSearch, "Search", "THEME:GUI:Search.edf", ednMsgGuiSearch);
|
||||
myMenu->add(idMenuSearch, "Replace", "THEME:GUI:Replace.edf", ednMsgGuiReplace);
|
||||
myMenu->addSpacer();
|
||||
myMenu->add(idMenuSearch, "Find (previous)","", ednMsgGuiFind, "Previous");
|
||||
myMenu->add(idMenuSearch, "Find (next)", "", ednMsgGuiFind, "Next");
|
||||
myMenu->add(idMenuSearch, "Find (all)", "", ednMsgGuiFind, "All");
|
||||
myMenu->add(idMenuSearch, "Un-Select", "", ednMsgGuiFind, "None");
|
||||
/* ==> must be in the pluggin list control ...
|
||||
int32_t idMenuCTags = myMenu->addTitle("C-tags");
|
||||
(void)myMenu->add(idMenuCTags, "Load", "", ednMsgGuiCtags, "Load");
|
||||
(void)myMenu->add(idMenuCTags, "ReLoad", "", ednMsgGuiCtags, "ReLoad");
|
||||
(void)myMenu->add(idMenuCTags, "Jump", "", ednMsgGuiCtags, "Jump");
|
||||
(void)myMenu->add(idMenuCTags, "Back", "", ednMsgGuiCtags, "Back");
|
||||
myMenu->add(idMenuCTags, "Load", "", ednMsgGuiCtags, "Load");
|
||||
myMenu->add(idMenuCTags, "ReLoad", "", ednMsgGuiCtags, "ReLoad");
|
||||
myMenu->add(idMenuCTags, "Jump", "", ednMsgGuiCtags, "Jump");
|
||||
myMenu->add(idMenuCTags, "Back", "", ednMsgGuiCtags, "Back");
|
||||
*/
|
||||
int32_t idMenugDisplay = myMenu->addTitle("Display");
|
||||
(void)myMenu->add(idMenugDisplay, "Color Black", "", appl::MsgNameGuiChangeColor, "color/black/");
|
||||
(void)myMenu->add(idMenugDisplay, "Color White", "", appl::MsgNameGuiChangeColor, "color/white/");
|
||||
(void)myMenu->add(idMenugDisplay, "Shape square", "", l_MsgNameGuiChangeShape, "shape/square/");
|
||||
(void)myMenu->add(idMenugDisplay, "Shape round", "", l_MsgNameGuiChangeShape, "shape/round/");
|
||||
(void)myMenu->addSpacer();
|
||||
(void)myMenu->add(idMenugDisplay, "Reload openGl Shader", "", ednMsgGuiReloadShader);
|
||||
myMenu->add(idMenugDisplay, "Color Black", "", appl::MsgNameGuiChangeColor, "color/black/");
|
||||
myMenu->add(idMenugDisplay, "Color White", "", appl::MsgNameGuiChangeColor, "color/white/");
|
||||
myMenu->add(idMenugDisplay, "Shape square", "", l_MsgNameGuiChangeShape, "shape/square/");
|
||||
myMenu->add(idMenugDisplay, "Shape round", "", l_MsgNameGuiChangeShape, "shape/round/");
|
||||
myMenu->addSpacer();
|
||||
myMenu->add(idMenugDisplay, "Reload openGl Shader", "", ednMsgGuiReloadShader);
|
||||
|
||||
m_widgetLabelFileName = new ewol::widget::Label("FileName");
|
||||
m_widgetLabelFileName->setExpand(bvec2(true,false));
|
||||
@@ -291,7 +264,7 @@ MainWindows::MainWindows(void) {
|
||||
}
|
||||
|
||||
|
||||
MainWindows::~MainWindows(void) {
|
||||
MainWindows::~MainWindows() {
|
||||
appl::BufferManager::release(m_bufferManager);
|
||||
}
|
||||
|
||||
@@ -332,6 +305,37 @@ void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
if (NULL == tmpWidget) {
|
||||
APPL_ERROR("Can not allocate widget == > display might be in error");
|
||||
} else {
|
||||
#ifdef SDGSDFGSDFGSDFGSDFGSTERGDHFGHFDS
|
||||
std::string menuDescription = "<title>Properties</title>\n";
|
||||
menuDescription += "<group>\n";
|
||||
menuDescription += " <title>Editor</title>\n";
|
||||
menuDescription += " <menu>\n";
|
||||
menuDescription += " <title>Editor Interface</title>\n";
|
||||
menuDescription += " <short-title>Editor</short-title>\n";
|
||||
menuDescription += " <widget>appl-text-viewer</widget>\n";
|
||||
menuDescription += " </menu>\n";
|
||||
menuDescription += "</group>\n";
|
||||
menuDescription += "<group>\n";
|
||||
menuDescription += " <title>Gui</title>\n";
|
||||
menuDescription += " <menu>\n";
|
||||
menuDescription += " <title>Font selection</title>\n";
|
||||
menuDescription += " <short-title>Font</short-title>\n";
|
||||
menuDescription += " <widget></widget>\n";
|
||||
menuDescription += " </menu>\n";
|
||||
menuDescription += " <menu>\n";
|
||||
menuDescription += " <title>Color selection</title>\n";
|
||||
menuDescription += " <short-title>Color</short-title>\n";
|
||||
menuDescription += " <widget></widget>\n";
|
||||
menuDescription += " </menu>\n";
|
||||
menuDescription += " <menu>\n";
|
||||
menuDescription += " <title>Theme selection</title>\n";
|
||||
menuDescription += " <short-title>Theme</short-title>\n";
|
||||
menuDescription += " <widget></widget>\n";
|
||||
menuDescription += " </menu>\n";
|
||||
menuDescription += "</group>\n";
|
||||
|
||||
tmpWidget->setMenu(menuDescription);
|
||||
#endif
|
||||
tmpWidget->setTitle("Properties");
|
||||
popUpWidgetPush(tmpWidget);
|
||||
tmpWidget->menuAddGroup("Editor");
|
||||
@@ -380,37 +384,38 @@ void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
tmpp->registerOnEvent(this, appl::Buffer::eventIsSave);
|
||||
tmpp->registerOnEvent(this, appl::Buffer::eventChangeName);
|
||||
}
|
||||
setTitle(std::string("Edn : ") + (tmpp->isModify()==true?" *":"") + tmpp->getFileName());
|
||||
std::string nameFileSystem = etk::FSNode(tmpp->getFileName()).getFileSystemName();
|
||||
setTitle(std::string("Edn : ") + (tmpp->isModify()==true?" *":"") + nameFileSystem);
|
||||
if (m_widgetLabelFileName != NULL) {
|
||||
m_widgetLabelFileName->setLabel(tmpp->getFileName() + (tmpp->isModify()==true?" *":""));
|
||||
m_widgetLabelFileName->setLabel(nameFileSystem + (tmpp->isModify()==true?" *":""));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
} else if (_msg.getMessage() == ednMsgGuiNew) {
|
||||
(void)m_bufferManager->createNewBuffer();
|
||||
m_bufferManager->createNewBuffer();
|
||||
} else if (_msg.getMessage() == ednEventPopUpFileSelected) {
|
||||
APPL_DEBUG("Request opening the file : " << _msg.getData());
|
||||
m_bufferManager->open(_msg.getData());
|
||||
} else if (_msg.getMessage() == ednMsgGuiSave) {
|
||||
APPL_DEBUG("Request saving the file : " << _msg.getData());
|
||||
if (std::tolower(_msg.getData()) == "current") {
|
||||
appl::WorkerSaveFile* tmpWorker = new appl::WorkerSaveFile("", false);
|
||||
new appl::WorkerSaveFile("", false);
|
||||
return;
|
||||
} else if (std::tolower(_msg.getData()) == "all") {
|
||||
appl::WorkerSaveAllFile* tmpWorker = new appl::WorkerSaveAllFile();
|
||||
new appl::WorkerSaveAllFile();
|
||||
return;
|
||||
} else {
|
||||
APPL_ERROR("UNKNOW request : " << _msg);
|
||||
}
|
||||
} else if (_msg.getMessage() == ednMsgGuiSaveAs) {
|
||||
appl::WorkerSaveFile* tmpWorker = new appl::WorkerSaveFile("", true);
|
||||
new appl::WorkerSaveFile("", true);
|
||||
} else if (_msg.getMessage() == ednMsgGuiClose) {
|
||||
// Get a ref on the buffer selected (if null, no buffer was selected ...)
|
||||
if (_msg.getData() == "current") {
|
||||
appl::WorkerCloseFile* tmpWorker = new appl::WorkerCloseFile("");
|
||||
new appl::WorkerCloseFile("");
|
||||
} else {
|
||||
appl::WorkerCloseAllFile* tmpWorker = new appl::WorkerCloseAllFile();
|
||||
new appl::WorkerCloseAllFile();
|
||||
}
|
||||
} else if (_msg.getMessage() == mainWindowsRequestSaveFile) { // return after a choice of close...
|
||||
if (m_bufferManager->exist(_msg.getData()) == false) {
|
||||
|
@@ -19,12 +19,11 @@
|
||||
|
||||
class MainWindows : public ewol::widget::Windows {
|
||||
private:
|
||||
int32_t m_currentSavingAsIdBuffer;
|
||||
ewol::widget::Label* m_widgetLabelFileName;
|
||||
public:
|
||||
// Constructeur
|
||||
MainWindows(void);
|
||||
~MainWindows(void);
|
||||
MainWindows();
|
||||
~MainWindows();
|
||||
private:
|
||||
appl::BufferManager* m_bufferManager; //!< handle on the buffer manager
|
||||
/**
|
||||
|
@@ -28,7 +28,7 @@ const char* const l_eventWrapCb = "appl-wrap-CheckBox";
|
||||
const char* const l_eventForwardCb = "appl-forward-CheckBox";
|
||||
const char* const l_eventHideBt = "appl-hide-button";
|
||||
|
||||
Search::Search(void) :
|
||||
Search::Search() :
|
||||
ewol::widget::Composer(ewol::widget::Composer::file, "DATA:GUI-Search.xml"),
|
||||
m_viewerManager(NULL),
|
||||
m_forward(true),
|
||||
@@ -63,11 +63,11 @@ Search::Search(void) :
|
||||
hide();
|
||||
}
|
||||
|
||||
Search::~Search(void) {
|
||||
Search::~Search() {
|
||||
appl::ViewerManager::release(m_viewerManager);
|
||||
}
|
||||
|
||||
void Search::find(void) {
|
||||
void Search::find() {
|
||||
if (m_viewerManager == NULL) {
|
||||
APPL_WARNING("No viewer manager selected!!!");
|
||||
return;
|
||||
@@ -103,7 +103,7 @@ void Search::find(void) {
|
||||
}
|
||||
}
|
||||
|
||||
void Search::replace(void) {
|
||||
void Search::replace() {
|
||||
if (m_viewerManager == NULL) {
|
||||
APPL_WARNING("No viewer manager selected!!!");
|
||||
return;
|
||||
|
@@ -27,17 +27,17 @@ class Search : public ewol::widget::Composer {
|
||||
std::u32string m_replaceData;
|
||||
public:
|
||||
// Constructeur
|
||||
Search(void);
|
||||
~Search(void);
|
||||
Search();
|
||||
~Search();
|
||||
private:
|
||||
/**
|
||||
* @brief Find the next element that corespond at the search
|
||||
*/
|
||||
void find(void);
|
||||
void find();
|
||||
/**
|
||||
* @brief Replace the current selected text.
|
||||
*/
|
||||
void replace(void);
|
||||
void replace();
|
||||
public: // derived function
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object * _removeObject);
|
||||
|
@@ -16,29 +16,36 @@ extern const char * const applEventCtagsListSelect = "appl-event-ctags-list-
|
||||
extern const char * const applEventCtagsListUnSelect = "appl-event-ctags-list-un-select";
|
||||
extern const char * const applEventCtagsListValidate = "appl-event-ctags-list-validate";
|
||||
|
||||
appl::TagFileList::TagFileList(void) {
|
||||
appl::TagFileList::TagFileList() {
|
||||
addObjectType("appl::TagFileList");
|
||||
m_selectedLine = -1;
|
||||
addEventId(applEventCtagsListSelect);
|
||||
addEventId(applEventCtagsListValidate);
|
||||
setMouseLimit(1);
|
||||
// Load color properties: (use file list to be generic ...)
|
||||
m_colorProperty = ewol::resource::ColorFile::keep("THEME:COLOR:ListFileSystem.json");
|
||||
if (m_colorProperty != NULL) {
|
||||
m_colorIdText = m_colorProperty->request("text");
|
||||
m_colorIdBackground1 = m_colorProperty->request("background1");
|
||||
m_colorIdBackground2 = m_colorProperty->request("background2");
|
||||
m_colorIdBackgroundSelected = m_colorProperty->request("selected");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
appl::TagFileList::~TagFileList(void) {
|
||||
appl::TagFileList::~TagFileList() {
|
||||
for (int32_t iii=0; iii<m_list.size(); iii++) {
|
||||
if (NULL != m_list[iii]) {
|
||||
delete(m_list[iii]);
|
||||
m_list[iii] = NULL;
|
||||
}
|
||||
}
|
||||
ewol::resource::ColorFile::release(m_colorProperty);
|
||||
}
|
||||
|
||||
etk::Color<> appl::TagFileList::getBasicBG(void) {
|
||||
etk::Color<> appl::TagFileList::getBasicBG() {
|
||||
return 0x00000010;
|
||||
}
|
||||
|
||||
uint32_t appl::TagFileList::getNuberOfColomn(void) {
|
||||
uint32_t appl::TagFileList::getNuberOfColomn() {
|
||||
return 2;
|
||||
}
|
||||
|
||||
@@ -47,7 +54,7 @@ bool appl::TagFileList::getTitle(int32_t _colomn, std::string& _myTitle, etk::Co
|
||||
return true;
|
||||
}
|
||||
|
||||
uint32_t appl::TagFileList::getNuberOfRaw(void) {
|
||||
uint32_t appl::TagFileList::getNuberOfRaw() {
|
||||
return m_list.size();
|
||||
}
|
||||
|
||||
@@ -61,26 +68,14 @@ bool appl::TagFileList::getElement(int32_t _colomn, int32_t _raw, std::string& _
|
||||
} else {
|
||||
_myTextToWrite = "ERROR";
|
||||
}
|
||||
_fg = etk::color::black;
|
||||
_fg = m_colorProperty->get(m_colorIdText);
|
||||
if (_raw % 2) {
|
||||
if (_colomn%2 == 0) {
|
||||
_bg = 0xFFFFFF00;
|
||||
_bg = m_colorProperty->get(m_colorIdBackground1);
|
||||
} else {
|
||||
_bg = 0xFFFFFF10;
|
||||
}
|
||||
} else {
|
||||
if (_colomn%2 == 0) {
|
||||
_bg = 0xBFBFBFFF;
|
||||
} else {
|
||||
_bg = 0xCFCFCFFF;
|
||||
}
|
||||
_bg = m_colorProperty->get(m_colorIdBackground2);
|
||||
}
|
||||
if (m_selectedLine == _raw) {
|
||||
if (_colomn%2 == 0) {
|
||||
_bg = 0x8F8FFFFF;
|
||||
} else {
|
||||
_bg = 0x7F7FFFFF;
|
||||
}
|
||||
_bg = m_colorProperty->get(m_colorIdBackgroundSelected);
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
@@ -11,6 +11,7 @@
|
||||
|
||||
#include <appl/debug.h>
|
||||
#include <ewol/widget/List.h>
|
||||
#include <ewol/resource/ColorFile.h>
|
||||
|
||||
|
||||
extern const char * const applEventCtagsListSelect;
|
||||
@@ -27,7 +28,7 @@ namespace appl {
|
||||
fileLine(_line) {
|
||||
|
||||
};
|
||||
~TagListElement(void) {
|
||||
~TagListElement() {
|
||||
|
||||
};
|
||||
};
|
||||
@@ -35,14 +36,20 @@ namespace appl {
|
||||
private:
|
||||
int32_t m_selectedLine;
|
||||
std::vector<appl::TagListElement*> m_list;
|
||||
protected:
|
||||
ewol::resource::ColorFile* m_colorProperty; //!< theme color property.
|
||||
int32_t m_colorIdText; //!< Color of the text.
|
||||
int32_t m_colorIdBackground1; //!< Color of the Background.
|
||||
int32_t m_colorIdBackground2; //!< Color of the Background 2.
|
||||
int32_t m_colorIdBackgroundSelected; //!< Color of line selected.
|
||||
public:
|
||||
TagFileList(void);
|
||||
~TagFileList(void);
|
||||
TagFileList();
|
||||
~TagFileList();
|
||||
// display API :
|
||||
virtual etk::Color<> getBasicBG(void);
|
||||
uint32_t getNuberOfColomn(void);
|
||||
virtual etk::Color<> getBasicBG();
|
||||
uint32_t getNuberOfColomn();
|
||||
bool getTitle(int32_t _colomn, std::string& _myTitle, etk::Color<>& _fg, etk::Color<>& _bg);
|
||||
uint32_t getNuberOfRaw(void);
|
||||
uint32_t getNuberOfRaw();
|
||||
bool getElement(int32_t _colomn, int32_t _raw, std::string& _myTextToWrite, etk::Color<>& _fg, etk::Color<>& _bg);
|
||||
bool onItemEvent(int32_t _IdInput, enum ewol::key::status _typeEvent, int32_t _colomn, int32_t _raw, float _x, float _y);
|
||||
public:
|
||||
|
@@ -30,18 +30,14 @@ extern const char * const applEventctagsSelection = "appl-event-ctags-validate";
|
||||
extern const char * const applEventctagsCancel = "appl-event-ctags-cancel";
|
||||
|
||||
|
||||
appl::TagFileSelection::TagFileSelection(void) {
|
||||
appl::TagFileSelection::TagFileSelection() {
|
||||
addObjectType("appl::TagFileSelection");
|
||||
addEventId(applEventctagsSelection);
|
||||
addEventId(applEventctagsCancel);
|
||||
|
||||
ewol::widget::Label* myWidgetTitle = NULL;
|
||||
ewol::widget::Button* myWidgetValidate = NULL;
|
||||
ewol::widget::Button* myWidgetCancel = NULL;
|
||||
|
||||
ewol::widget::Sizer * mySizerVert = NULL;
|
||||
ewol::widget::Sizer * mySizerHori = NULL;
|
||||
ewol::widget::Spacer * mySpacer = NULL;
|
||||
#if defined(__TARGET_OS__Android)
|
||||
setMinSize(ewol::Dimension(vec2(90,90),ewol::Dimension::Pourcent));
|
||||
#elif defined(__TARGET_OS__Windows)
|
||||
@@ -102,7 +98,7 @@ appl::TagFileSelection::TagFileSelection(void) {
|
||||
}
|
||||
|
||||
|
||||
appl::TagFileSelection::~TagFileSelection(void) {
|
||||
appl::TagFileSelection::~TagFileSelection() {
|
||||
|
||||
}
|
||||
|
||||
|
@@ -22,8 +22,8 @@ namespace appl {
|
||||
appl::TagFileList* m_listTag;
|
||||
std::string m_eventNamed;
|
||||
public:
|
||||
TagFileSelection(void);
|
||||
virtual ~TagFileSelection(void);
|
||||
TagFileSelection();
|
||||
virtual ~TagFileSelection();
|
||||
/**
|
||||
* @brief add a Ctags item on the curent list
|
||||
* @param[in] file Compleate file name
|
||||
|
@@ -41,6 +41,7 @@ appl::TextViewer::TextViewer(const std::string& _fontName, int32_t _fontSize) :
|
||||
registerMultiCast(appl::MsgSelectNewFile);
|
||||
registerMultiCast(appl::MsgSelectGotoLineSelect);
|
||||
setLimitScrolling(0.2);
|
||||
setSingleFinger(false);
|
||||
|
||||
// load buffer manager:
|
||||
m_bufferManager = appl::BufferManager::keep();
|
||||
@@ -62,31 +63,43 @@ appl::TextViewer::TextViewer(const std::string& _fontName, int32_t _fontSize) :
|
||||
setCurrentSelect();
|
||||
}
|
||||
|
||||
appl::TextViewer::~TextViewer(void) {
|
||||
appl::TextViewer::~TextViewer() {
|
||||
appl::textPluginManager::disconnect(*this);
|
||||
appl::GlyphPainting::release(m_paintingProperties);
|
||||
appl::BufferManager::release(m_bufferManager);
|
||||
appl::ViewerManager::release(m_viewerManager);
|
||||
}
|
||||
|
||||
std::string appl::TextViewer::getBufferPath() {
|
||||
if (m_buffer == NULL) {
|
||||
return "";
|
||||
}
|
||||
std::string filename = m_buffer->getFileName();
|
||||
size_t pos = filename.rfind('/');
|
||||
if (pos == std::string::npos) {
|
||||
return "";
|
||||
}
|
||||
return std::string(filename, 0, pos);
|
||||
}
|
||||
|
||||
void appl::TextViewer::changeZoom(float _range) {
|
||||
m_displayText.setFontSize(m_displayText.getSize() + _range);
|
||||
markToRedraw();
|
||||
}
|
||||
|
||||
bool appl::TextViewer::calculateMinSize(void) {
|
||||
bool appl::TextViewer::calculateMinSize() {
|
||||
m_minSize.setValue(50,50);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void appl::TextViewer::onDraw(void) {
|
||||
void appl::TextViewer::onDraw() {
|
||||
m_displayDrawing.draw();
|
||||
m_displayText.draw();
|
||||
WidgetScrolled::onDraw();
|
||||
}
|
||||
|
||||
void appl::TextViewer::onRegenerateDisplay(void) {
|
||||
void appl::TextViewer::onRegenerateDisplay() {
|
||||
if (false == needRedraw()) {
|
||||
return;
|
||||
}
|
||||
@@ -129,14 +142,11 @@ void appl::TextViewer::onRegenerateDisplay(void) {
|
||||
vec3 tmpCursorPosition(0, 0, -1);
|
||||
float tmpCursorLenght = -1.0;
|
||||
// real display ...
|
||||
etk::Buffer& buf = m_buffer->getData();
|
||||
m_displayText.setColor(etk::Color<>(0, 0, 0, 256));
|
||||
float countNbLine = 1;
|
||||
int32_t countColomn = 0;
|
||||
// the siplay string :
|
||||
std::u32string stringToDisplay;
|
||||
int64_t bufferElementSize = 0;
|
||||
bool isSelect = false;
|
||||
appl::Buffer::Iterator selectPosStart = m_buffer->begin();
|
||||
appl::Buffer::Iterator selectPosStop = m_buffer->begin();
|
||||
if (m_buffer->hasTextSelected() == true) {
|
||||
@@ -352,7 +362,8 @@ bool appl::TextViewer::onEventEntry(const ewol::event::Entry& _event) {
|
||||
m_buffer->setSelectMode(false);
|
||||
// normal adding char ...
|
||||
char output[5];
|
||||
int32_t nbElement = u32char::convertUtf8(localValue, output);
|
||||
output[0] = '0';
|
||||
u32char::convertUtf8(localValue, output);
|
||||
if ( m_buffer->hasTextSelected() == false
|
||||
&& _event.getSpecialKey().getInsert() == true) {
|
||||
appl::Buffer::Iterator pos = m_buffer->cursor();
|
||||
@@ -368,7 +379,6 @@ bool appl::TextViewer::onEventEntry(const ewol::event::Entry& _event) {
|
||||
}
|
||||
// move events ...
|
||||
if (_event.getStatus() == ewol::key::statusDown) {
|
||||
bool needUpdatePosition = true;
|
||||
// selection when shift is set:
|
||||
m_buffer->setSelectMode(_event.getSpecialKey().getShift());
|
||||
// check selection event ...
|
||||
@@ -426,15 +436,17 @@ bool appl::TextViewer::onEventInput(const ewol::event::Input& _event) {
|
||||
return false;
|
||||
}
|
||||
// First call the scrolling widget :
|
||||
if (WidgetScrolled::onEventInput(_event) == true) {
|
||||
if (ewol::widget::WidgetScrolled::onEventInput(_event) == true) {
|
||||
markToRedraw();
|
||||
return true;
|
||||
}
|
||||
APPL_VERBOSE("event : " << _event);
|
||||
// Second call plugin
|
||||
if (appl::textPluginManager::onEventInput(*this, _event) == true) {
|
||||
markToRedraw();
|
||||
return true;
|
||||
}
|
||||
APPL_VERBOSE("event2 : " << _event);
|
||||
vec2 relativePos = relativePosition(_event.getPos());
|
||||
// offset for the lineNumber:
|
||||
relativePos -= vec2(m_lastOffsetDisplay, 0);
|
||||
@@ -537,7 +549,7 @@ bool appl::TextViewer::onEventInput(const ewol::event::Input& _event) {
|
||||
}
|
||||
|
||||
|
||||
void appl::TextViewer::mouseEventDouble(void) {
|
||||
void appl::TextViewer::mouseEventDouble() {
|
||||
//m_selectMode = false;
|
||||
appl::Buffer::Iterator beginPos, endPos;
|
||||
if (true == m_buffer->getPosAround(m_buffer->cursor(), beginPos, endPos)) {
|
||||
@@ -546,7 +558,7 @@ void appl::TextViewer::mouseEventDouble(void) {
|
||||
}
|
||||
}
|
||||
|
||||
void appl::TextViewer::mouseEventTriple(void) {
|
||||
void appl::TextViewer::mouseEventTriple() {
|
||||
//m_selectMode = false;
|
||||
moveCursor(m_buffer->getEndLine(m_buffer->cursor()));
|
||||
m_buffer->setSelectionPos(m_buffer->getStartLine(m_buffer->cursor()));
|
||||
@@ -698,14 +710,14 @@ void appl::TextViewer::onObjectRemove(ewol::Object* _removeObject) {
|
||||
}
|
||||
}
|
||||
|
||||
void appl::TextViewer::onGetFocus(void) {
|
||||
void appl::TextViewer::onGetFocus() {
|
||||
showKeyboard();
|
||||
APPL_INFO("Focus - In");
|
||||
setCurrentSelect();
|
||||
markToRedraw();
|
||||
}
|
||||
|
||||
void appl::TextViewer::onLostFocus(void) {
|
||||
void appl::TextViewer::onLostFocus() {
|
||||
hideKeyboard();
|
||||
APPL_INFO("Focus - out");
|
||||
markToRedraw();
|
||||
@@ -721,7 +733,7 @@ void appl::TextViewer::setFontName(const std::string& _fontName) {
|
||||
}
|
||||
|
||||
// TODO : Update process time ==> a little expensive (2->4ms) in end of file
|
||||
void appl::TextViewer::updateScrolling(void) {
|
||||
void appl::TextViewer::updateScrolling() {
|
||||
if (m_buffer == NULL) {
|
||||
return;
|
||||
}
|
||||
@@ -816,7 +828,7 @@ bool appl::TextViewer::replace(const std::string& _data) {
|
||||
return replace(_data, m_buffer->selectStart(), m_buffer->selectStop());
|
||||
}
|
||||
|
||||
void appl::TextViewer::remove(void) {
|
||||
void appl::TextViewer::remove() {
|
||||
if (m_buffer == NULL) {
|
||||
return;
|
||||
}
|
||||
@@ -986,13 +998,13 @@ float appl::TextViewer::getScreenSize(const appl::Buffer::Iterator& _startLinePo
|
||||
return ret;
|
||||
}
|
||||
|
||||
void appl::TextViewer::setCurrentSelect(void) {
|
||||
void appl::TextViewer::setCurrentSelect() {
|
||||
if (m_viewerManager != NULL) {
|
||||
m_viewerManager->setViewerSelected(this, m_buffer);
|
||||
}
|
||||
}
|
||||
|
||||
bool appl::TextViewer::isSelectedLast(void) {
|
||||
bool appl::TextViewer::isSelectedLast() {
|
||||
if (m_viewerManager != NULL) {
|
||||
return m_viewerManager->isLastSelected(this);
|
||||
}
|
||||
|
@@ -37,7 +37,7 @@ namespace appl {
|
||||
appl::ViewerManager* m_viewerManager; //!< handle on the buffer manager
|
||||
public:
|
||||
TextViewer(const std::string& _fontName="", int32_t _fontSize=-1);
|
||||
virtual ~TextViewer(void);
|
||||
virtual ~TextViewer();
|
||||
private:
|
||||
appl::Buffer* m_buffer; //!< pointer on the current buffer to display (can be null if the buffer is remover or in state of changing buffer)
|
||||
public:
|
||||
@@ -45,7 +45,7 @@ namespace appl {
|
||||
* @brief Get the buffer property (only for the class : template <typename TYPE> class TextViewerPluginData)
|
||||
* @return pointer on buffer
|
||||
*/
|
||||
appl::Buffer* internalGetBuffer(void) {
|
||||
appl::Buffer* internalGetBuffer() {
|
||||
return m_buffer;
|
||||
}
|
||||
private:
|
||||
@@ -56,17 +56,17 @@ namespace appl {
|
||||
void setFontSize(int32_t _size);
|
||||
void setFontName(const std::string& _fontName);
|
||||
protected: // derived function
|
||||
virtual void onDraw(void);
|
||||
virtual void onDraw();
|
||||
public: // Derived function
|
||||
virtual bool calculateMinSize(void);
|
||||
virtual void onRegenerateDisplay(void);
|
||||
virtual bool calculateMinSize();
|
||||
virtual void onRegenerateDisplay();
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
virtual bool onEventInput(const ewol::event::Input& _event);
|
||||
virtual bool onEventEntry(const ewol::event::Entry& _event);
|
||||
virtual void onEventClipboard(enum ewol::context::clipBoard::clipboardListe _clipboardID);
|
||||
virtual void onGetFocus(void);
|
||||
virtual void onLostFocus(void);
|
||||
virtual void onGetFocus();
|
||||
virtual void onLostFocus();
|
||||
virtual void changeZoom(float _range);
|
||||
private:
|
||||
float m_lastOffsetDisplay; //!< Line number ofssed in the display
|
||||
@@ -77,7 +77,7 @@ namespace appl {
|
||||
* @brief Update the scrolling position from the cursor position,
|
||||
* it might be be all time in the display screen.
|
||||
*/
|
||||
void updateScrolling(void);
|
||||
void updateScrolling();
|
||||
// TODO : Doc : write data on buffer
|
||||
bool moveCursor(const appl::Buffer::Iterator& _pos);
|
||||
bool write(const std::string& _data);
|
||||
@@ -90,11 +90,11 @@ namespace appl {
|
||||
/**
|
||||
* @brief Remove selected data ...
|
||||
*/
|
||||
void remove(void);
|
||||
void remove();
|
||||
/**
|
||||
* @brief Remove selected data ... (No plugin call)
|
||||
*/
|
||||
void removeDirect(void) {
|
||||
void removeDirect() {
|
||||
if (m_buffer==NULL) {
|
||||
return;
|
||||
}
|
||||
@@ -156,8 +156,8 @@ namespace appl {
|
||||
}
|
||||
|
||||
appl::Buffer::Iterator getMousePosition(const vec2& _relativePos);
|
||||
void mouseEventDouble(void);
|
||||
void mouseEventTriple(void);
|
||||
void mouseEventDouble();
|
||||
void mouseEventTriple();
|
||||
private:
|
||||
enum moveMode {
|
||||
moveLetter,
|
||||
@@ -191,25 +191,30 @@ namespace appl {
|
||||
/**
|
||||
* @brief Set the current buffer selected
|
||||
*/
|
||||
void setCurrentSelect(void);
|
||||
void setCurrentSelect();
|
||||
/**
|
||||
* @brief Check if the current buffer is last selected
|
||||
* @return true if selected last
|
||||
*/
|
||||
bool isSelectedLast(void);
|
||||
bool isSelectedLast();
|
||||
public:
|
||||
/**
|
||||
* @brief get the path of the current buffer
|
||||
* @return Path of the buffer (remove the ended name)
|
||||
*/
|
||||
virtual std::string getBufferPath();
|
||||
/**
|
||||
* @brief Check if the buffer is availlable
|
||||
* @return true if a display buffer is present, false otherwise.
|
||||
*/
|
||||
virtual bool hasBuffer(void) {
|
||||
virtual bool hasBuffer() {
|
||||
return m_buffer != NULL;
|
||||
}
|
||||
/**
|
||||
* @brief Get the status of selection.
|
||||
* @return true if we have a current selection, false otherwise.
|
||||
*/
|
||||
virtual bool hasTextSelected(void) {
|
||||
virtual bool hasTextSelected() {
|
||||
if (m_buffer==NULL) {
|
||||
return false;
|
||||
}
|
||||
@@ -218,7 +223,7 @@ namespace appl {
|
||||
/**
|
||||
* @brief Remove Selection of the buffer.
|
||||
*/
|
||||
virtual void unSelect(void) {
|
||||
virtual void unSelect() {
|
||||
if (m_buffer==NULL) {
|
||||
return;
|
||||
}
|
||||
@@ -312,7 +317,7 @@ namespace appl {
|
||||
* @brief Get the cursor position.
|
||||
* @return The iterator on the cursor position
|
||||
*/
|
||||
appl::Buffer::Iterator cursor(void) {
|
||||
appl::Buffer::Iterator cursor() {
|
||||
if (m_buffer==NULL) {
|
||||
return appl::Buffer::Iterator();
|
||||
}
|
||||
@@ -322,7 +327,7 @@ namespace appl {
|
||||
* @brief Get the begin position.
|
||||
* @return The iterator on the begin position
|
||||
*/
|
||||
appl::Buffer::Iterator begin(void) {
|
||||
appl::Buffer::Iterator begin() {
|
||||
if (m_buffer==NULL) {
|
||||
return appl::Buffer::Iterator();
|
||||
}
|
||||
@@ -332,7 +337,7 @@ namespace appl {
|
||||
* @brief Get the end position.
|
||||
* @return The iterator on the end position
|
||||
*/
|
||||
appl::Buffer::Iterator end(void) {
|
||||
appl::Buffer::Iterator end() {
|
||||
if (m_buffer==NULL) {
|
||||
return appl::Buffer::Iterator();
|
||||
}
|
||||
@@ -342,7 +347,7 @@ namespace appl {
|
||||
* @brief Get an Iterator on the start selection.
|
||||
* @return The Iterator
|
||||
*/
|
||||
appl::Buffer::Iterator selectStart(void) {
|
||||
appl::Buffer::Iterator selectStart() {
|
||||
if (m_buffer==NULL) {
|
||||
return appl::Buffer::Iterator();
|
||||
}
|
||||
@@ -352,7 +357,7 @@ namespace appl {
|
||||
* @brief Get an Iterator on the stop selection.
|
||||
* @return The Iterator
|
||||
*/
|
||||
appl::Buffer::Iterator selectStop(void) {
|
||||
appl::Buffer::Iterator selectStop() {
|
||||
if (m_buffer==NULL) {
|
||||
return appl::Buffer::Iterator();
|
||||
}
|
||||
|
@@ -17,7 +17,7 @@
|
||||
#undef __class__
|
||||
#define __class__ "ViewerManager"
|
||||
|
||||
appl::ViewerManager::ViewerManager(void) :
|
||||
appl::ViewerManager::ViewerManager() :
|
||||
ewol::Resource("???ViewerManager???"),
|
||||
m_viewer(NULL) {
|
||||
addObjectType("appl::ViewerManager");
|
||||
@@ -25,7 +25,7 @@ appl::ViewerManager::ViewerManager(void) :
|
||||
m_bufferManager = appl::BufferManager::keep();
|
||||
}
|
||||
|
||||
appl::ViewerManager::~ViewerManager(void) {
|
||||
appl::ViewerManager::~ViewerManager() {
|
||||
appl::BufferManager::release(m_bufferManager);
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ void appl::ViewerManager::onObjectRemove(ewol::Object* _removeObject) {
|
||||
}
|
||||
}
|
||||
|
||||
appl::ViewerManager* appl::ViewerManager::keep(void) {
|
||||
appl::ViewerManager* appl::ViewerManager::keep() {
|
||||
//EWOL_INFO("KEEP : appl::GlyphPainting : file : \"" << _filename << "\"");
|
||||
appl::ViewerManager* object = static_cast<appl::ViewerManager*>(getManager().localKeep("???ViewerManager???"));
|
||||
if (NULL != object) {
|
||||
|
@@ -19,8 +19,8 @@ namespace appl {
|
||||
class TextViewer;
|
||||
class ViewerManager : public ewol::Resource {
|
||||
protected:
|
||||
ViewerManager(void);
|
||||
~ViewerManager(void);
|
||||
ViewerManager();
|
||||
~ViewerManager();
|
||||
private:
|
||||
appl::BufferManager* m_bufferManager; //!< handle on the buffer manager
|
||||
appl::TextViewer* m_viewer;
|
||||
@@ -34,7 +34,7 @@ namespace appl {
|
||||
* @brief Get the current buffer selected
|
||||
* @return Pointer on the buffer selected
|
||||
*/
|
||||
appl::TextViewer* getViewerSelected(void) {
|
||||
appl::TextViewer* getViewerSelected() {
|
||||
return m_viewer;
|
||||
};
|
||||
/**
|
||||
@@ -55,7 +55,7 @@ namespace appl {
|
||||
* @param[in] _filename Name of the configuration file.
|
||||
* @return pointer on the resource or NULL if an error occured.
|
||||
*/
|
||||
static appl::ViewerManager* keep(void);
|
||||
static appl::ViewerManager* keep();
|
||||
/**
|
||||
* @brief release the keeped resources
|
||||
* @param[in,out] reference on the object pointer
|
||||
|
@@ -15,7 +15,7 @@
|
||||
|
||||
static const char* s_closeDone = "close-done";
|
||||
|
||||
appl::WorkerCloseAllFile::WorkerCloseAllFile(void) :
|
||||
appl::WorkerCloseAllFile::WorkerCloseAllFile() :
|
||||
m_worker(NULL),
|
||||
m_bufferManager(NULL) {
|
||||
addObjectType("appl::WorkerCloseAllFile");
|
||||
@@ -55,7 +55,7 @@ appl::WorkerCloseAllFile::WorkerCloseAllFile(void) :
|
||||
m_worker->registerOnEvent(this, appl::WorkerCloseFile::eventCloseDone, s_closeDone);
|
||||
}
|
||||
|
||||
appl::WorkerCloseAllFile::~WorkerCloseAllFile(void) {
|
||||
appl::WorkerCloseAllFile::~WorkerCloseAllFile() {
|
||||
appl::BufferManager::release(m_bufferManager);
|
||||
}
|
||||
|
||||
|
@@ -15,8 +15,8 @@
|
||||
namespace appl {
|
||||
class WorkerCloseAllFile : public ewol::Object {
|
||||
public:
|
||||
WorkerCloseAllFile(void);
|
||||
virtual ~WorkerCloseAllFile(void);
|
||||
WorkerCloseAllFile();
|
||||
virtual ~WorkerCloseAllFile();
|
||||
private:
|
||||
std::vector<std::string> m_bufferNameList;
|
||||
appl::WorkerCloseFile* m_worker; //! pop-up element that is open...
|
||||
|
@@ -96,7 +96,7 @@ appl::WorkerCloseFile::WorkerCloseFile(const std::string& _bufferName) :
|
||||
tmpWindows->popUpWidgetPush(tmpPopUp);
|
||||
}
|
||||
|
||||
appl::WorkerCloseFile::~WorkerCloseFile(void) {
|
||||
appl::WorkerCloseFile::~WorkerCloseFile() {
|
||||
appl::BufferManager::release(m_bufferManager);
|
||||
}
|
||||
|
||||
|
@@ -20,7 +20,7 @@ namespace appl {
|
||||
public:
|
||||
// note : if == "" ==> current ...
|
||||
WorkerCloseFile(const std::string& _bufferName);
|
||||
virtual ~WorkerCloseFile(void);
|
||||
virtual ~WorkerCloseFile();
|
||||
private:
|
||||
std::string m_bufferName;
|
||||
appl::Buffer* m_buffer; //!< reference on the buffer (when rename, we have no more reference on the buffer
|
||||
|
@@ -15,7 +15,7 @@
|
||||
|
||||
static const char* s_saveAsDone = "save-as-done";
|
||||
|
||||
appl::WorkerSaveAllFile::WorkerSaveAllFile(void) :
|
||||
appl::WorkerSaveAllFile::WorkerSaveAllFile() :
|
||||
m_worker(NULL),
|
||||
m_bufferManager(NULL) {
|
||||
addObjectType("appl::WorkerSaveAllFile");
|
||||
@@ -58,7 +58,7 @@ appl::WorkerSaveAllFile::WorkerSaveAllFile(void) :
|
||||
m_worker->registerOnEvent(this, appl::WorkerSaveFile::eventSaveDone, s_saveAsDone);
|
||||
}
|
||||
|
||||
appl::WorkerSaveAllFile::~WorkerSaveAllFile(void) {
|
||||
appl::WorkerSaveAllFile::~WorkerSaveAllFile() {
|
||||
appl::BufferManager::release(m_bufferManager);
|
||||
}
|
||||
|
||||
|
@@ -15,8 +15,8 @@
|
||||
namespace appl {
|
||||
class WorkerSaveAllFile : public ewol::Object {
|
||||
public:
|
||||
WorkerSaveAllFile(void);
|
||||
virtual ~WorkerSaveAllFile(void);
|
||||
WorkerSaveAllFile();
|
||||
virtual ~WorkerSaveAllFile();
|
||||
private:
|
||||
std::vector<std::string> m_bufferNameList;
|
||||
appl::WorkerSaveFile* m_worker; //! pop-up element that is open...
|
||||
|
@@ -81,7 +81,7 @@ appl::WorkerSaveFile::WorkerSaveFile(const std::string& _bufferName, bool _force
|
||||
m_chooser->registerOnEvent(this, ewol::widget::FileChooser::eventValidate, s_saveAsValidate);
|
||||
}
|
||||
|
||||
appl::WorkerSaveFile::~WorkerSaveFile(void) {
|
||||
appl::WorkerSaveFile::~WorkerSaveFile() {
|
||||
appl::BufferManager::release(m_bufferManager);
|
||||
}
|
||||
|
||||
|
@@ -18,7 +18,7 @@ namespace appl {
|
||||
static const char* eventSaveDone;
|
||||
public:
|
||||
WorkerSaveFile(const std::string& _bufferName, bool _forceSaveAs=true);
|
||||
virtual ~WorkerSaveFile(void);
|
||||
virtual ~WorkerSaveFile();
|
||||
private:
|
||||
std::string m_bufferName;
|
||||
ewol::widget::FileChooser* m_chooser; //! pop-up element that is open...
|
||||
|
@@ -99,8 +99,7 @@ appl::Highlight::Highlight(const std::string& _xmlFilename, const std::string& _
|
||||
}
|
||||
}
|
||||
|
||||
appl::Highlight::~Highlight(void) {
|
||||
int32_t i;
|
||||
appl::Highlight::~Highlight() {
|
||||
// clean all Element
|
||||
for (int32_t iii = 0; iii < m_listHighlightPass1.size(); ++iii) {
|
||||
if (m_listHighlightPass1[iii] != NULL) {
|
||||
@@ -145,7 +144,7 @@ bool appl::Highlight::fileNameCompatible(const std::string& _fileName) {
|
||||
}
|
||||
|
||||
|
||||
void appl::Highlight::display(void) {
|
||||
void appl::Highlight::display() {
|
||||
APPL_INFO("List of ALL Highlight : ");
|
||||
for (int32_t iii=0; iii< m_listExtentions.size(); iii++) {
|
||||
APPL_INFO(" Extention : " << iii << " : " << m_listExtentions[iii] );
|
||||
|
@@ -38,17 +38,17 @@ namespace appl {
|
||||
protected:
|
||||
// Constructeur
|
||||
Highlight(const std::string& _xmlFilename, const std::string& _colorFile);
|
||||
~Highlight(void);
|
||||
~Highlight();
|
||||
private:
|
||||
std::string m_typeName; //!< descriptive string type like "C/C++"
|
||||
public:
|
||||
const std::string& getTypeName(void) {
|
||||
const std::string& getTypeName() {
|
||||
return m_typeName;
|
||||
}
|
||||
public:
|
||||
bool hasExtention(const std::string& _ext);
|
||||
bool fileNameCompatible(const std::string& _fileName);
|
||||
void display(void);
|
||||
void display();
|
||||
void parse(int64_t _start,
|
||||
int64_t _stop,
|
||||
std::vector<appl::HighlightInfo> &_metaData,
|
||||
@@ -80,7 +80,7 @@ namespace appl {
|
||||
*/
|
||||
static void release(appl::Highlight*& _object);
|
||||
public: // herited function :
|
||||
virtual void updateContext(void) {
|
||||
virtual void updateContext() {
|
||||
// no upfate to do ...
|
||||
};
|
||||
};
|
||||
|
@@ -15,13 +15,13 @@
|
||||
#undef __class__
|
||||
#define __class__ "highlightManager"
|
||||
|
||||
static std::vector<appl::Highlight*>& s_list(void) {
|
||||
static std::vector<appl::Highlight*>& s_list() {
|
||||
static std::vector<appl::Highlight*> list;
|
||||
return list;
|
||||
}
|
||||
|
||||
|
||||
void appl::highlightManager::init(void) {
|
||||
void appl::highlightManager::init() {
|
||||
std::vector<appl::Highlight*>& hlList = s_list();
|
||||
if (hlList.size() != 0) {
|
||||
APPL_ERROR("HighlightManager == > already exist, just unlink the previous ...");
|
||||
@@ -58,7 +58,7 @@ void appl::highlightManager::init(void) {
|
||||
*/
|
||||
}
|
||||
|
||||
void appl::highlightManager::unInit(void) {
|
||||
void appl::highlightManager::unInit() {
|
||||
std::vector<Highlight*>& hlList = s_list();
|
||||
if (hlList.size() == 0) {
|
||||
APPL_DEBUG("HighlightManager ==> no highlight");
|
||||
@@ -111,7 +111,7 @@ std::string appl::highlightManager::getFileWithTypeType(const std::string& _type
|
||||
return "";
|
||||
}
|
||||
|
||||
std::vector<std::string> appl::highlightManager::getTypeList(void) {
|
||||
std::vector<std::string> appl::highlightManager::getTypeList() {
|
||||
std::vector<std::string> ret;
|
||||
return ret;
|
||||
}
|
||||
|
@@ -20,11 +20,11 @@ namespace appl {
|
||||
/**
|
||||
* @brief Init the Highlight manager
|
||||
*/
|
||||
void init(void);
|
||||
void init();
|
||||
/**
|
||||
* @brief Un-Init the Highlight manager
|
||||
*/
|
||||
void unInit(void);
|
||||
void unInit();
|
||||
/**
|
||||
* @brief Un-Init the Highlight manager
|
||||
* @param[in] extention of the file
|
||||
@@ -41,7 +41,7 @@ namespace appl {
|
||||
* @brief Get the list of extention type
|
||||
* @return the requested list.
|
||||
*/
|
||||
std::vector<std::string> getTypeList(void);
|
||||
std::vector<std::string> getTypeList();
|
||||
};
|
||||
};
|
||||
|
||||
|
@@ -25,7 +25,7 @@ appl::HighlightPattern::HighlightPattern(appl::GlyphPainting*& _glyphPainting) :
|
||||
m_regExpStart = new etk::RegExp<etk::Buffer>();
|
||||
}
|
||||
|
||||
appl::HighlightPattern::~HighlightPattern(void) {
|
||||
appl::HighlightPattern::~HighlightPattern() {
|
||||
if (m_regExpStart != NULL) {
|
||||
delete(m_regExpStart);
|
||||
m_regExpStart = NULL;
|
||||
@@ -68,7 +68,7 @@ void appl::HighlightPattern::setColorGlyph(std::string& _colorName) {
|
||||
APPL_VERBOSE("Resuest color name '" << m_colorName << "' => id=" << m_colorId);
|
||||
}
|
||||
|
||||
void appl::HighlightPattern::display(void) {
|
||||
void appl::HighlightPattern::display() {
|
||||
APPL_INFO("patern : \"" << m_paternName << "\" level=" << m_level );
|
||||
APPL_INFO(" == > colorName \"" << m_colorName << "\"");
|
||||
APPL_INFO(" == > regExpStart \"" << m_regExpStart->getRegExp() << "\"");
|
||||
|
@@ -33,14 +33,14 @@ namespace appl {
|
||||
public:
|
||||
// Constructeur
|
||||
HighlightPattern(appl::GlyphPainting*& _glyphPainting);
|
||||
~HighlightPattern(void);
|
||||
~HighlightPattern();
|
||||
private:
|
||||
std::string m_paternName; //!< Current style name (like "c++" or "c" or "script Bash")
|
||||
public:
|
||||
void setName(std::string& _name) {
|
||||
m_paternName = _name;
|
||||
};
|
||||
std::string getName(void) {
|
||||
std::string getName() {
|
||||
return m_paternName;
|
||||
};
|
||||
private:
|
||||
@@ -56,7 +56,7 @@ namespace appl {
|
||||
int32_t m_colorId; //!< Id of the the glyph painting
|
||||
public:
|
||||
void setColorGlyph(std::string& _colorName);
|
||||
const appl::GlyphDecoration& getColorGlyph(void) {
|
||||
const appl::GlyphDecoration& getColorGlyph() {
|
||||
return (*m_glyphPainting)[m_colorId];
|
||||
};
|
||||
private:
|
||||
@@ -75,13 +75,13 @@ namespace appl {
|
||||
void setLevel(int32_t _newLevel) {
|
||||
m_level = _newLevel;
|
||||
};
|
||||
int32_t getLevel(void) {
|
||||
int32_t getLevel() {
|
||||
return m_level;
|
||||
};
|
||||
private:
|
||||
|
||||
public:
|
||||
void display(void);
|
||||
void display();
|
||||
/**
|
||||
* @brief find Element only in the specify start characters and find the end with the range done
|
||||
* @param[in] _start First character to search data (if recognise it start here)
|
||||
|
@@ -14,7 +14,7 @@
|
||||
#define __class__ "TextViewerPlugin"
|
||||
|
||||
|
||||
appl::TextViewerPlugin::TextViewerPlugin(void) :
|
||||
appl::TextViewerPlugin::TextViewerPlugin() :
|
||||
m_isEnable(true),
|
||||
m_activateOnEventEntry(false),
|
||||
m_activateOnEventInput(false),
|
||||
@@ -26,7 +26,7 @@ appl::TextViewerPlugin::TextViewerPlugin(void) :
|
||||
|
||||
}
|
||||
|
||||
appl::TextViewerPlugin::~TextViewerPlugin(void) {
|
||||
appl::TextViewerPlugin::~TextViewerPlugin() {
|
||||
if (m_isEnable == false) {
|
||||
return;
|
||||
}
|
||||
|
@@ -18,8 +18,8 @@ namespace appl {
|
||||
class TextViewerPlugin : public ewol::Object {
|
||||
friend class appl::TextViewer;
|
||||
public:
|
||||
TextViewerPlugin(void);
|
||||
virtual ~TextViewerPlugin(void);
|
||||
TextViewerPlugin();
|
||||
virtual ~TextViewerPlugin();
|
||||
private:
|
||||
bool m_isEnable; //!< The plugin is enable or not (for all viewer).
|
||||
public:
|
||||
@@ -32,20 +32,20 @@ namespace appl {
|
||||
* @brief Get the activity status.
|
||||
* @return true if the plugin is active, false otherwise.
|
||||
*/
|
||||
bool isEnable(void) {
|
||||
bool isEnable() {
|
||||
return m_isEnable;
|
||||
};
|
||||
public:
|
||||
/**
|
||||
* @brief On plugin global enable.
|
||||
*/
|
||||
virtual void onPluginEnable(void) {
|
||||
virtual void onPluginEnable() {
|
||||
// nothing to do here ...
|
||||
};
|
||||
/**
|
||||
* @brief On plugin global disable.
|
||||
*/
|
||||
virtual void onPluginDisable(void) {
|
||||
virtual void onPluginDisable() {
|
||||
// nothing to do here ...
|
||||
};
|
||||
/**
|
||||
@@ -69,7 +69,7 @@ namespace appl {
|
||||
* @brief Get the availlability of a callback
|
||||
* @return true if availlable
|
||||
*/
|
||||
bool isAvaillableOnEventEntry(void) {
|
||||
bool isAvaillableOnEventEntry() {
|
||||
return m_activateOnEventEntry;
|
||||
}
|
||||
/**
|
||||
@@ -89,7 +89,7 @@ namespace appl {
|
||||
* @brief Get the availlability of a callback
|
||||
* @return true if availlable
|
||||
*/
|
||||
bool isAvaillableOnEventInput(void) {
|
||||
bool isAvaillableOnEventInput() {
|
||||
return m_activateOnEventInput;
|
||||
}
|
||||
/**
|
||||
@@ -109,7 +109,7 @@ namespace appl {
|
||||
* @brief Get the availlability of a callback
|
||||
* @return true if availlable
|
||||
*/
|
||||
bool isAvaillableOnWrite(void) {
|
||||
bool isAvaillableOnWrite() {
|
||||
return m_activateOnWrite;
|
||||
}
|
||||
/**
|
||||
@@ -131,7 +131,7 @@ namespace appl {
|
||||
* @brief Get the availlability of a callback
|
||||
* @return true if availlable
|
||||
*/
|
||||
bool isAvaillableOnReplace(void) {
|
||||
bool isAvaillableOnReplace() {
|
||||
return m_activateOnReplace;
|
||||
}
|
||||
/**
|
||||
@@ -155,7 +155,7 @@ namespace appl {
|
||||
* @brief Get the availlability of a callback
|
||||
* @return true if availlable
|
||||
*/
|
||||
bool isAvaillableOnRemove(void) {
|
||||
bool isAvaillableOnRemove() {
|
||||
return m_activateOnRemove;
|
||||
}
|
||||
/**
|
||||
@@ -177,7 +177,7 @@ namespace appl {
|
||||
* @brief Get the availlability of a callback
|
||||
* @return true if availlable
|
||||
*/
|
||||
bool isAvaillableOnReceiveMessage(void) {
|
||||
bool isAvaillableOnReceiveMessage() {
|
||||
return m_activateOnReceiveMessage;
|
||||
}
|
||||
/**
|
||||
@@ -197,7 +197,7 @@ namespace appl {
|
||||
* @brief Get the availlability of a callback
|
||||
* @return true if availlable
|
||||
*/
|
||||
bool isAvaillableOnCursorMove(void) {
|
||||
bool isAvaillableOnCursorMove() {
|
||||
return m_activateOnCursorMove;
|
||||
}
|
||||
/**
|
||||
|
@@ -15,7 +15,7 @@
|
||||
#define __class__ "TextPluginAutoIndent"
|
||||
|
||||
|
||||
appl::TextPluginAutoIndent::TextPluginAutoIndent(void) {
|
||||
appl::TextPluginAutoIndent::TextPluginAutoIndent() {
|
||||
m_activateOnEventEntry = true;
|
||||
}
|
||||
|
||||
|
@@ -18,8 +18,8 @@
|
||||
namespace appl {
|
||||
class TextPluginAutoIndent : public appl::TextViewerPlugin {
|
||||
public:
|
||||
TextPluginAutoIndent(void);
|
||||
~TextPluginAutoIndent(void) {
|
||||
TextPluginAutoIndent();
|
||||
~TextPluginAutoIndent() {
|
||||
// nothing to do ...
|
||||
};
|
||||
public:
|
||||
|
@@ -15,7 +15,7 @@
|
||||
#define __class__ "TextPluginCopy"
|
||||
|
||||
|
||||
appl::TextPluginCopy::TextPluginCopy(void) {
|
||||
appl::TextPluginCopy::TextPluginCopy() {
|
||||
m_activateOnReceiveMessage = true;
|
||||
}
|
||||
|
||||
|
@@ -18,8 +18,8 @@
|
||||
namespace appl {
|
||||
class TextPluginCopy : public appl::TextViewerPlugin {
|
||||
public:
|
||||
TextPluginCopy(void);
|
||||
~TextPluginCopy(void) {
|
||||
TextPluginCopy();
|
||||
~TextPluginCopy() {
|
||||
// nothing to do ...
|
||||
};
|
||||
public:
|
||||
|
@@ -18,7 +18,7 @@
|
||||
#define __class__ "TextPluginCtags"
|
||||
|
||||
|
||||
appl::TextPluginCtags::TextPluginCtags(void) :
|
||||
appl::TextPluginCtags::TextPluginCtags() :
|
||||
m_tagFilename(""),
|
||||
m_tagFolderBase(""),
|
||||
m_ctagFile(NULL) {
|
||||
@@ -26,7 +26,7 @@ appl::TextPluginCtags::TextPluginCtags(void) :
|
||||
// load buffer manager:
|
||||
m_bufferManager = appl::BufferManager::keep();
|
||||
}
|
||||
appl::TextPluginCtags::~TextPluginCtags(void) {
|
||||
appl::TextPluginCtags::~TextPluginCtags() {
|
||||
appl::BufferManager::release(m_bufferManager);
|
||||
}
|
||||
|
||||
@@ -82,13 +82,13 @@ void appl::TextPluginCtags::jumpTo(const std::string& _name) {
|
||||
if (NULL == tmpWidget) {
|
||||
APPL_ERROR("Can not allocate widget == > display might be in error");
|
||||
} else {
|
||||
tmpWidget->addCtagsNewItem(myfile.getName(), lineID);
|
||||
tmpWidget->addCtagsNewItem(myfile.getFileSystemName(), lineID);
|
||||
do {
|
||||
tmpFile = m_tagFolderBase + "/" + entry.file;
|
||||
myfile = tmpFile;
|
||||
lineID = entry.address.lineNumber;
|
||||
printTag(&entry);
|
||||
tmpWidget->addCtagsNewItem(myfile.getName(), lineID);
|
||||
tmpWidget->addCtagsNewItem(myfile.getFileSystemName(), lineID);
|
||||
} while (tagsFindNext (m_ctagFile, &entry) == TagSuccess);
|
||||
ewol::getContext().getWindows()->popUpWidgetPush(tmpWidget);
|
||||
tmpWidget->registerOnEvent(this, applEventctagsSelection, eventOpenCtagsSelectReturn);
|
||||
@@ -108,7 +108,7 @@ void appl::TextPluginCtags::jumpFile(const std::string& _filename, int64_t _line
|
||||
sendMultiCast(appl::MsgSelectGotoLineSelect, std::to_string(_lineId));
|
||||
}
|
||||
|
||||
void appl::TextPluginCtags::loadTagFile(void) {
|
||||
void appl::TextPluginCtags::loadTagFile() {
|
||||
tagFileInfo info;
|
||||
// close previous tag file
|
||||
if (NULL != m_ctagFile) {
|
||||
@@ -156,7 +156,7 @@ void appl::TextPluginCtags::onReceiveMessage(const ewol::object::Message& _msg)
|
||||
etk::FSNode tmpFilename = _msg.getData();
|
||||
m_tagFilename = tmpFilename.getNameFile();
|
||||
m_tagFolderBase = tmpFilename.getNameFolder();
|
||||
APPL_DEBUG("Receive load Ctags file : " << m_tagFolderBase << "/" << m_tagFilename << " ");
|
||||
APPL_INFO("Receive load Ctags file : " << m_tagFolderBase << "/" << m_tagFilename << " ");
|
||||
loadTagFile();
|
||||
} else if (_msg.getMessage() == eventOpenCtagsSelectReturn) {
|
||||
// parse the input data
|
||||
@@ -177,12 +177,18 @@ bool appl::TextPluginCtags::onReceiveMessage(appl::TextViewer& _textDrawer,
|
||||
ewol::widget::FileChooser* tmpWidget = new ewol::widget::FileChooser();
|
||||
if (NULL == tmpWidget) {
|
||||
APPL_ERROR("Can not allocate widget == > display might be in error");
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
tmpWidget->setTitle("Open Exuberant Ctags file");
|
||||
tmpWidget->setValidateLabel("Open");
|
||||
// try to get the current folder :
|
||||
std::string path = _textDrawer.getBufferPath();
|
||||
APPL_ERROR("get path : '" << path << "'");
|
||||
if (path != "") {
|
||||
tmpWidget->setFolder(path);
|
||||
}
|
||||
ewol::getContext().getWindows()->popUpWidgetPush(tmpWidget);
|
||||
tmpWidget->registerOnEvent(this, "validate", eventOpenCtagsOpenFileReturn);
|
||||
}
|
||||
return true;
|
||||
} else if (_msg.getMessage() == eventJumpDestination) {
|
||||
if (_textDrawer.hasBuffer() == false) {
|
||||
|
@@ -16,6 +16,9 @@
|
||||
#include <appl/TextPlugin.h>
|
||||
#include <appl/ctags/readtags.h>
|
||||
|
||||
// create ctags file : "ctags-exuberant --fields=n -R"
|
||||
// --fields=n add the line number needed for this software version ..
|
||||
|
||||
namespace appl {
|
||||
class TextPluginCtags : public appl::TextViewerPlugin {
|
||||
private:
|
||||
@@ -26,14 +29,14 @@ namespace appl {
|
||||
std::string m_tagFolderBase;
|
||||
std::string m_tagFilename;
|
||||
tagFile* m_ctagFile;
|
||||
void loadTagFile(void);
|
||||
void loadTagFile();
|
||||
void printTag(const tagEntry *_entry);
|
||||
void jumpTo(const std::string& _name);
|
||||
void jumpFile(const std::string& _filename, int64_t _lineId);
|
||||
appl::BufferManager* m_bufferManager; //!< handle on the buffer manager
|
||||
public:
|
||||
TextPluginCtags(void);
|
||||
~TextPluginCtags(void);
|
||||
TextPluginCtags();
|
||||
~TextPluginCtags();
|
||||
public:
|
||||
virtual void onPluginEnable(appl::TextViewer& _textDrawer);
|
||||
virtual void onPluginDisable(appl::TextViewer& _textDrawer);
|
||||
|
@@ -18,10 +18,10 @@
|
||||
namespace appl {
|
||||
template <typename TYPE> class TextViewerPluginData : public appl::TextViewerPlugin {
|
||||
public:
|
||||
TextViewerPluginData(void) {
|
||||
TextViewerPluginData() {
|
||||
// nothing to do ...
|
||||
}
|
||||
virtual ~TextViewerPluginData(void) {
|
||||
virtual ~TextViewerPluginData() {
|
||||
for (size_t iii = 0; iii < m_specificData.size() ; ++iii) {
|
||||
if (m_specificData[iii].second != NULL) {
|
||||
remove(*m_specificData[iii].second);
|
||||
|
@@ -15,7 +15,7 @@
|
||||
#undef __class__
|
||||
#define __class__ "TextPluginHistory"
|
||||
|
||||
appl::TextPluginHistory::TextPluginHistory(void) {
|
||||
appl::TextPluginHistory::TextPluginHistory() {
|
||||
m_activateOnReceiveMessage = true;
|
||||
m_activateOnWrite = true;
|
||||
m_activateOnReplace = true;
|
||||
|
@@ -18,7 +18,7 @@
|
||||
namespace appl {
|
||||
class History {
|
||||
public:
|
||||
History(void) :
|
||||
History() :
|
||||
m_posAdded(0),
|
||||
m_endPosAdded(0),
|
||||
m_endPosRemoved(0) {
|
||||
@@ -37,8 +37,8 @@ namespace appl {
|
||||
};
|
||||
class TextPluginHistory : public appl::TextViewerPluginData<appl::PluginHistoryData> {
|
||||
public:
|
||||
TextPluginHistory(void);
|
||||
virtual ~TextPluginHistory(void) { };
|
||||
TextPluginHistory();
|
||||
virtual ~TextPluginHistory() { };
|
||||
private:
|
||||
public:
|
||||
virtual void onPluginEnable(appl::TextViewer& _textDrawer);
|
||||
|
@@ -19,44 +19,44 @@
|
||||
#undef __class__
|
||||
#define __class__ "textPluginManager"
|
||||
|
||||
static std::vector<appl::TextViewerPlugin *>& getList(void) {
|
||||
static std::vector<appl::TextViewerPlugin *>& getList() {
|
||||
static std::vector<appl::TextViewerPlugin *> s_list;
|
||||
return s_list;
|
||||
}
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnEventEntry(void) {
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnEventEntry() {
|
||||
static std::vector<appl::TextViewerPlugin *> s_list;
|
||||
return s_list;
|
||||
}
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnEventInput(void) {
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnEventInput() {
|
||||
static std::vector<appl::TextViewerPlugin *> s_list;
|
||||
return s_list;
|
||||
}
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnWrite(void) {
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnWrite() {
|
||||
static std::vector<appl::TextViewerPlugin *> s_list;
|
||||
return s_list;
|
||||
}
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnReplace(void) {
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnReplace() {
|
||||
static std::vector<appl::TextViewerPlugin *> s_list;
|
||||
return s_list;
|
||||
}
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnRemove(void) {
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnRemove() {
|
||||
static std::vector<appl::TextViewerPlugin *> s_list;
|
||||
return s_list;
|
||||
}
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnReceiveMessage(void) {
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnReceiveMessage() {
|
||||
static std::vector<appl::TextViewerPlugin *> s_list;
|
||||
return s_list;
|
||||
}
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnCursorMove(void) {
|
||||
static std::vector<appl::TextViewerPlugin *>& getListOnCursorMove() {
|
||||
static std::vector<appl::TextViewerPlugin *> s_list;
|
||||
return s_list;
|
||||
}
|
||||
|
||||
void appl::textPluginManager::init(void) {
|
||||
void appl::textPluginManager::init() {
|
||||
|
||||
}
|
||||
|
||||
void appl::textPluginManager::unInit(void) {
|
||||
void appl::textPluginManager::unInit() {
|
||||
// remove all sub plugin class:
|
||||
getListOnEventEntry().clear();
|
||||
getListOnEventInput().clear();
|
||||
@@ -76,7 +76,7 @@ void appl::textPluginManager::unInit(void) {
|
||||
getList().clear();
|
||||
}
|
||||
|
||||
void appl::textPluginManager::addDefaultPlugin(void) {
|
||||
void appl::textPluginManager::addDefaultPlugin() {
|
||||
appl::textPluginManager::addPlugin(new appl::TextPluginCopy());
|
||||
appl::textPluginManager::addPlugin(new appl::TextPluginMultiLineTab());
|
||||
appl::textPluginManager::addPlugin(new appl::TextPluginAutoIndent());
|
||||
|
@@ -20,15 +20,15 @@ namespace appl {
|
||||
/**
|
||||
* @brief Init the plugin manager for writer.
|
||||
*/
|
||||
void init(void);
|
||||
void init();
|
||||
/**
|
||||
* @brief UnInit the plugin manager for writer.
|
||||
*/
|
||||
void unInit(void);
|
||||
void unInit();
|
||||
/**
|
||||
* @brief Add default plugin list
|
||||
*/
|
||||
void addDefaultPlugin(void);
|
||||
void addDefaultPlugin();
|
||||
/**
|
||||
* @brief Add a plugin.
|
||||
* @param[in] _plugin Plugin pointer to add.
|
||||
|
@@ -14,7 +14,7 @@
|
||||
#undef __class__
|
||||
#define __class__ "TextPluginMultiLineTab"
|
||||
|
||||
appl::TextPluginMultiLineTab::TextPluginMultiLineTab(void) {
|
||||
appl::TextPluginMultiLineTab::TextPluginMultiLineTab() {
|
||||
m_activateOnEventEntry = true;
|
||||
}
|
||||
|
||||
|
@@ -18,8 +18,8 @@
|
||||
namespace appl {
|
||||
class TextPluginMultiLineTab : public appl::TextViewerPlugin {
|
||||
public:
|
||||
TextPluginMultiLineTab(void);
|
||||
~TextPluginMultiLineTab(void) {
|
||||
TextPluginMultiLineTab();
|
||||
~TextPluginMultiLineTab() {
|
||||
// nothing to do ...
|
||||
};
|
||||
public:
|
||||
|
@@ -15,7 +15,7 @@
|
||||
#define __class__ "TextPluginRmLine"
|
||||
|
||||
|
||||
appl::TextPluginRmLine::TextPluginRmLine(void) {
|
||||
appl::TextPluginRmLine::TextPluginRmLine() {
|
||||
m_activateOnReceiveMessage = true;
|
||||
}
|
||||
|
||||
|
@@ -18,8 +18,8 @@
|
||||
namespace appl {
|
||||
class TextPluginRmLine : public appl::TextViewerPlugin {
|
||||
public:
|
||||
TextPluginRmLine(void);
|
||||
~TextPluginRmLine(void) {
|
||||
TextPluginRmLine();
|
||||
~TextPluginRmLine() {
|
||||
// nothing to do ...
|
||||
};
|
||||
public:
|
||||
|
@@ -15,7 +15,7 @@
|
||||
#define __class__ "TextPluginSelectAll"
|
||||
|
||||
|
||||
appl::TextPluginSelectAll::TextPluginSelectAll(void) {
|
||||
appl::TextPluginSelectAll::TextPluginSelectAll() {
|
||||
m_activateOnReceiveMessage = true;
|
||||
}
|
||||
|
||||
|
@@ -18,8 +18,8 @@
|
||||
namespace appl {
|
||||
class TextPluginSelectAll : public appl::TextViewerPlugin {
|
||||
public:
|
||||
TextPluginSelectAll(void);
|
||||
~TextPluginSelectAll(void) {
|
||||
TextPluginSelectAll();
|
||||
~TextPluginSelectAll() {
|
||||
// nothing to do ...
|
||||
};
|
||||
public:
|
||||
|
@@ -846,7 +846,7 @@ static void findTag (const char *const name, const int options)
|
||||
}
|
||||
}
|
||||
|
||||
static void listTags (void)
|
||||
static void listTags ()
|
||||
{
|
||||
tagFileInfo info;
|
||||
tagEntry entry;
|
||||
|
@@ -8,4 +8,8 @@
|
||||
|
||||
#include <appl/debug.h>
|
||||
|
||||
const char * applLog = "edn ";
|
||||
int32_t appl::getLogId() {
|
||||
static int32_t g_val = etk::log::registerInstance("edn");
|
||||
return g_val;
|
||||
}
|
||||
|
||||
|
@@ -9,19 +9,43 @@
|
||||
#ifndef __APPL_DEBUG_H__
|
||||
#define __APPL_DEBUG_H__
|
||||
|
||||
#include <etk/types.h>
|
||||
#include <etk/debugGeneric.h>
|
||||
#include <etk/log.h>
|
||||
|
||||
extern const char * applLog;
|
||||
namespace appl {
|
||||
int32_t getLogId();
|
||||
};
|
||||
// TODO : Review this problem of multiple intanciation of "std::stringbuf sb"
|
||||
#define APPL_BASE(info,data) \
|
||||
do { \
|
||||
if (info <= etk::log::getLevel(appl::getLogId())) { \
|
||||
std::stringbuf sb; \
|
||||
std::ostream tmpStream(&sb); \
|
||||
tmpStream << data; \
|
||||
etk::log::logStream(appl::getLogId(), info, __LINE__, __class__, __func__, tmpStream); \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
#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)
|
||||
#define APPL_CRITICAL(data) APPL_BASE(1, data)
|
||||
#define APPL_ERROR(data) APPL_BASE(2, data)
|
||||
#define APPL_WARNING(data) APPL_BASE(3, data)
|
||||
#ifdef DEBUG
|
||||
#define APPL_INFO(data) APPL_BASE(4, data)
|
||||
#define APPL_DEBUG(data) APPL_BASE(5, data)
|
||||
#define APPL_VERBOSE(data) APPL_BASE(6, data)
|
||||
#define APPL_TODO(data) APPL_BASE(4, "TODO : " << data)
|
||||
#else
|
||||
#define APPL_INFO(data) do { } while(false)
|
||||
#define APPL_DEBUG(data) do { } while(false)
|
||||
#define APPL_VERBOSE(data) do { } while(false)
|
||||
#define APPL_TODO(data) do { } while(false)
|
||||
#endif
|
||||
|
||||
#define APPL_ASSERT(cond,data) \
|
||||
do { \
|
||||
if (!(cond)) { \
|
||||
APPL_CRITICAL(data); \
|
||||
assert(!#cond); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#endif
|
||||
|
@@ -28,7 +28,7 @@ class myParamGlobal : public ewol::Object {
|
||||
bool m_displayTabChar;
|
||||
bool m_displaySpaceChar;
|
||||
public :
|
||||
myParamGlobal(void) {
|
||||
myParamGlobal() {
|
||||
m_static = true; // Note : set the object static notification( Must be set or assert at the end of process)
|
||||
setName("edn_global_param");
|
||||
m_displayEOL=false;
|
||||
@@ -104,22 +104,22 @@ const char * const myParamGlobal::configAutoIndent = "auto-indent";
|
||||
const char * const myParamGlobal::configShowTabChar = "display-tab";
|
||||
const char * const myParamGlobal::configShowSpaceChar = "display-space";
|
||||
|
||||
static myParamGlobal& l_obj(void) {
|
||||
static myParamGlobal& l_obj() {
|
||||
static myParamGlobal s_obj;
|
||||
return s_obj;
|
||||
}
|
||||
|
||||
void globals::init(void) {
|
||||
void globals::init() {
|
||||
//ewol::userConfig::addUserConfig(&l_obj());
|
||||
}
|
||||
|
||||
void globals::UnInit(void) {
|
||||
void globals::UnInit() {
|
||||
// nothing to do ...
|
||||
//ewol::userConfig::RmUserConfig(&l_obj());
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------
|
||||
bool globals::isSetDisplayEndOfLine(void) {
|
||||
bool globals::isSetDisplayEndOfLine() {
|
||||
return l_obj().m_displayEOL;
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ void globals::setDisplayEndOfLine(bool newVal) {
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------
|
||||
bool globals::isSetDisplaySpaceChar(void) {
|
||||
bool globals::isSetDisplaySpaceChar() {
|
||||
return l_obj().m_displaySpaceChar;
|
||||
}
|
||||
|
||||
@@ -138,7 +138,7 @@ void globals::setDisplaySpaceChar(bool _newVal) {
|
||||
//ewol::widgetMessageMultiCast::Send(-1, ednMsgUserDisplayChange);
|
||||
}
|
||||
// -----------------------------------------------------------
|
||||
bool globals::isSetDisplayTabChar(void) {
|
||||
bool globals::isSetDisplayTabChar() {
|
||||
return l_obj().m_displayTabChar;
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ void globals::setDisplayTabChar(bool _newVal) {
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------
|
||||
bool globals::isSetAutoIndent(void) {
|
||||
bool globals::isSetAutoIndent() {
|
||||
return l_obj().m_AutoIndent;
|
||||
}
|
||||
|
||||
@@ -157,16 +157,16 @@ void globals::setAutoIndent(bool _newVal) {
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------
|
||||
bool globals::OrderTheBufferList(void) {
|
||||
bool globals::OrderTheBufferList() {
|
||||
return true;
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------
|
||||
int32_t globals::getNbColoneBorder(void) {
|
||||
int32_t globals::getNbColoneBorder() {
|
||||
return 6;
|
||||
}
|
||||
|
||||
int32_t globals::getNbLineBorder(void) {
|
||||
int32_t globals::getNbLineBorder() {
|
||||
return 3;
|
||||
}
|
||||
|
||||
@@ -179,7 +179,7 @@ static const char * const l_changeTabulation = "edn-event-change-tabulation";
|
||||
static const char * const l_changeEndOfLine = "edn-event-change-endOfLine";
|
||||
static const char * const l_changeRounded = "edn-event-change-rounded";
|
||||
|
||||
globals::ParameterGlobalsGui::ParameterGlobalsGui(void) :
|
||||
globals::ParameterGlobalsGui::ParameterGlobalsGui() :
|
||||
ewol::widget::Sizer(ewol::widget::Sizer::modeVert) {
|
||||
ewol::widget::CheckBox* myCheckbox = NULL;
|
||||
ewol::widget::Spacer* mySpacer = NULL;
|
||||
@@ -238,7 +238,7 @@ globals::ParameterGlobalsGui::ParameterGlobalsGui(void) :
|
||||
}
|
||||
}
|
||||
|
||||
globals::ParameterGlobalsGui::~ParameterGlobalsGui(void) {
|
||||
globals::ParameterGlobalsGui::~ParameterGlobalsGui() {
|
||||
|
||||
}
|
||||
|
||||
|
@@ -15,31 +15,31 @@
|
||||
|
||||
namespace globals
|
||||
{
|
||||
void init(void);
|
||||
void UnInit(void);
|
||||
int32_t getNbColoneBorder(void);
|
||||
int32_t getNbLineBorder(void);
|
||||
void init();
|
||||
void UnInit();
|
||||
int32_t getNbColoneBorder();
|
||||
int32_t getNbLineBorder();
|
||||
|
||||
bool isSetDisplayEndOfLine(void);
|
||||
bool isSetDisplayEndOfLine();
|
||||
void setDisplayEndOfLine(bool _newVal);
|
||||
|
||||
bool isSetDisplaySpaceChar(void);
|
||||
bool isSetDisplaySpaceChar();
|
||||
void setDisplaySpaceChar(bool _newVal);
|
||||
|
||||
bool isSetDisplayTabChar(void);
|
||||
bool isSetDisplayTabChar();
|
||||
void setDisplayTabChar(bool _newVal);
|
||||
|
||||
bool isSetAutoIndent(void);
|
||||
bool isSetAutoIndent();
|
||||
void setAutoIndent(bool _newVal);
|
||||
|
||||
void init2(void);
|
||||
void init2();
|
||||
|
||||
bool OrderTheBufferList(void);
|
||||
bool OrderTheBufferList();
|
||||
|
||||
class ParameterGlobalsGui : public ewol::widget::Sizer {
|
||||
public :
|
||||
ParameterGlobalsGui(void);
|
||||
~ParameterGlobalsGui(void);
|
||||
ParameterGlobalsGui();
|
||||
~ParameterGlobalsGui();
|
||||
// herited function
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
};
|
||||
|
@@ -42,7 +42,8 @@ appl::BufferManager* bufferManager = NULL;
|
||||
/**
|
||||
* @brief main application function initialisation
|
||||
*/
|
||||
bool APP_Init(ewol::Context& _context) {
|
||||
bool APP_Init(ewol::Context& _context, size_t _initId, size_t& _nbInitStep) {
|
||||
_nbInitStep = 1;
|
||||
APPL_INFO(" == > init APPL v" << APPL_VERSION << " (START) [" << ewol::getBoardType() << "] (" << ewol::getCompilationMode() << ")");
|
||||
|
||||
etk::theme::setName("COLOR", "color/black/");
|
||||
@@ -65,7 +66,7 @@ bool APP_Init(ewol::Context& _context) {
|
||||
globals::init();
|
||||
|
||||
// init ALL Singleton :
|
||||
//(void)CTagsManager::getInstance();
|
||||
//()CTagsManager::getInstance();
|
||||
bufferManager = appl::BufferManager::keep();
|
||||
|
||||
appl::highlightManager::init();
|
||||
@@ -102,12 +103,16 @@ bool APP_Init(ewol::Context& _context) {
|
||||
if (tmpppp == "-t") {
|
||||
ctagDetected = true;
|
||||
} else if (true == ctagDetected) {
|
||||
APPL_INFO("Load ctag file : \"" << tmpppp << "\"" );
|
||||
etk::FSNode file(tmpppp);
|
||||
std::string name = file.getName();
|
||||
APPL_INFO("Load ctag file : \"" << name << "\"" );
|
||||
ctagDetected = false;
|
||||
_context.getEObjectManager().multiCast().anonymousSend(ednMsgCtagsLoadFile, tmpppp);
|
||||
_context.getEObjectManager().multiCast().anonymousSend(ednMsgCtagsLoadFile, name);
|
||||
} else {
|
||||
APPL_INFO("need load file : \"" << tmpppp << "\"" );
|
||||
bufferManager->open(tmpppp);
|
||||
etk::FSNode file(tmpppp);
|
||||
std::string name = file.getName();
|
||||
APPL_INFO("need load file : \"" << name << "\"" );
|
||||
bufferManager->open(name);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -74,6 +74,7 @@ def create(target):
|
||||
myModule.copy_folder('../data/languages/bash/*.xml','languages/bash/')
|
||||
myModule.copy_folder('../data/languages/boo/*.xml','languages/boo/')
|
||||
myModule.copy_folder('../data/languages/c/*.xml','languages/c/')
|
||||
myModule.copy_folder('../data/languages/cmake/*.xml','languages/cmake/')
|
||||
myModule.copy_folder('../data/languages/glsl/*.xml','languages/glsl/')
|
||||
myModule.copy_folder('../data/languages/in/*.xml','languages/in/')
|
||||
myModule.copy_folder('../data/languages/java/*.xml','languages/java/')
|
||||
|
@@ -1 +1 @@
|
||||
1.1.1
|
||||
1.1.2
|
Reference in New Issue
Block a user