diff --git a/data/languages/c/highlight.xml b/data/languages/c/highlight.xml index e033d48..05f923e 100644 --- a/data/languages/c/highlight.xml +++ b/data/languages/c/highlight.xml @@ -1,6 +1,7 @@ - - .*\.(c|cpp|cxx|cc|h|hpp|hxx|m|mm) + + .*\.(c|m) + commentDoxygen @@ -12,7 +13,7 @@ /\*(.|\r|\n)*?(\*/|\0) TODO - + SYNTAX_ERROR /\*(.|\r|\n)* @@ -40,11 +41,11 @@ doubleQuoteText - "(.|\\[\\"])*?" + "(.|\\[\\"])*?" doubleQuoteText - '\\?.' + '\\?.' @@ -54,23 +55,19 @@ systemFunction - \b(new|delete|try|catch|memset|fopen|fread|fwrite|fgets|fclose|printf|(f|s|diag_)printf|calloc|malloc|realloc|(cyg|sup)_([a-z]|[A-Z]|[0-9]|_)+)\b + \b(memset|fopen|fread|fwrite|fgets|fclose|printf|(f|s|diag_)printf|calloc|malloc|realloc)\b type - \b(bool|BOOL|char(16_t|32_t)?|double|float|u?int(8|16|32|64|128)?(_t)?|long|short|signed|size_t|unsigned|void|(I|U)(8|16|32|64|128))\b - - - type - \bstd::[\w:]*\b + \b(bool|char(16_t|32_t)?|double|float|u?int(8|16|32|64|128)?(_t)?|long|short|signed|size_t|unsigned|void|(I|U)(8|16|32|64|128))\b storageKeyword - \b(inline|const|class|namespace|virtual|private|public|protected|friend|const|extern|auto|register|static|unsigned|signed|volatile|char|double|float|int|long|short|void|typedef|struct|union|enum)\b + \b(inline|const|const|extern|register|static|unsigned|signed|volatile|char|double|float|int|long|short|void|typedef|struct|union|enum)\b commonDefine - \b(NULL|MAX|MIN|__LINE__|__DATA__|__FILE__|__func__|__TIME__|__STDC__)\b + \b(NULL|MAX|MIN|__(LINE|DATA|FILE|func|TIME|STDC)__)\b number @@ -78,16 +75,12 @@ boolean - \b(true|TRUE|false|FALSE)\b + \b(TRUE|FALSE)\b macro \b([A-Z_][A-Z_0-9]{3,500})\b - - memberClass - \bm_\w+\b - inputFunction \b_\w+\b @@ -100,10 +93,6 @@ boolean ==|<=|>=|!=|<{1,2}|>{1,2}|&&|\{|\} - - macro - ([A-Z]|_){4,500} - SYNTAX_ERROR '|" diff --git a/data/languages/cpp/highlight.xml b/data/languages/cpp/highlight.xml new file mode 100644 index 0000000..e44026d --- /dev/null +++ b/data/languages/cpp/highlight.xml @@ -0,0 +1,132 @@ + + + .*\.(cpp|cxx|cc|h|hpp|hxx|mm) + + + commentDoxygen + /\*(\*|!)(.|\r|\n)*?\*/ + doxyparse + + + comment + /\*(.|\r|\n)*?(\*/|\0) + TODO + + + SYNTAX_ERROR + /\*(.|\r|\n)* + + + preprocesseur + #[ \t]*if 0(.|\r|\n)*?#(endif|else) + + + SYNTAX_ERROR + #[ \t]*if 0(.|\r|\n)* + + + preprocesseur + #(.|\\[\\\n])* + + + commentDoxygen + //!.* + doxyparse + + + comment + //.* + TODO + + + doubleQuoteText + "(.|\\[\\"])*?" + + + doubleQuoteText + '\\?.' + + + + + keyword + \b(return|goto|if|else|case|default|switch|break|continue|while|do|for|sizeof)\b + + + systemFunction + \b(new|delete|try|catch|memset|fopen|fread|fwrite|fgets|fclose|printf|(f|s|diag_)printf)\b + + + type + \b(bool|char(16_t|32_t)?|double|float|u?int(8|16|32|64|128)?(_t)?|long|short|signed|size_t|unsigned|void|(I|U)(8|16|32|64|128))\b + + + type + \bstd::[\w:]*\b + + + storageKeyword + \b(inline|const|class|namespace|virtual|private|public|protected|friend|const|extern|auto|register|static|unsigned|signed|volatile|char|double|float|int|long|short|void|typedef|struct|union|enum)\b + + + commonDefine + \b(nullptr|__(LINE|DATA|FILE|func|TIME|STDC)__)\b + + + number + \b(((0(x|X)[0-9a-fA-F]*)|(\d+\.?\d*|\.\d+)((e|E)(\+|\-)?\d+)?)(L|l|UL|ul|u|U|F|f)?)\b + + + boolean + \b(true|false)\b + + + macro + \b([A-Z_][A-Z_0-9]{3,500})\b + + + memberClass + \bm_\w+\b + + + inputFunction + \b_\w+\b + + + functionName + \b((\w|_)+[ \t]*\() + + + boolean + ==|<=|>=|!=|<{1,2}|>{1,2}|&&|\{|\} + + + SYNTAX_ERROR + '|" + + + SYNTAX_ERROR + '|"|NULL|MAX|MIN|TRUE|FALSE|calloc|malloc|realloc|free|BOOL + + + + + doxygen-key + (@|\\)[\t ]*\w+ + + + doxygen-in-out + \[(in|in,out|out)\] + + + inputFunction + \b_\w+\b + + + + + SYNTAX_ERROR + TODO[ \t]*:.* + + + diff --git a/sources/appl/BufferManager.cpp b/sources/appl/BufferManager.cpp index 0a71571..561d92d 100644 --- a/sources/appl/BufferManager.cpp +++ b/sources/appl/BufferManager.cpp @@ -88,10 +88,12 @@ void appl::BufferManager::setBufferSelected(std::shared_ptr _buffe m_bufferSelected = _bufferSelected; if (m_bufferSelected == nullptr) { APPL_ERROR("select a NULL buffer ..."); + //parameterSetOnWidgetNamed("appl-widget-display-name", "value", "---"); return; } APPL_INFO("Set buffer selected"); //signalSelectFile.emit(m_bufferSelected->getName()); + //parameterSetOnWidgetNamed("appl-widget-display-name", "value", m_bufferSelected->getName()); APPL_INFO("Set buffer selected (done)"); } @@ -122,6 +124,7 @@ void appl::BufferManager::open(const std::string& _fileName) { if (exist(_fileName) == true) { APPL_WARNING(" the element '" << _fileName << "' already exist ... just reselect it ..."); signalSelectFile.emit(_fileName); + parameterSetOnWidgetNamed("appl-widget-display-name", "value", etk::FSNodeGetRealName(_fileName)); return; } if (get(_fileName, true) == nullptr) { @@ -129,6 +132,7 @@ void appl::BufferManager::open(const std::string& _fileName) { return; } signalSelectFile.emit(_fileName); + parameterSetOnWidgetNamed("appl-widget-display-name", "value", etk::FSNodeGetRealName(_fileName)); } @@ -156,6 +160,7 @@ void appl::BufferManager::requestDestroyFromChild(const std::shared_ptr& if (m_bufferSelected == _child) { APPL_ERROR("is selected"); signalSelectFile.emit(""); + parameterSetOnWidgetNamed("appl-widget-display-name", "value", ""); m_bufferSelected = nullptr; } } diff --git a/sources/appl/Gui/MainWindows.cpp b/sources/appl/Gui/MainWindows.cpp index ad5b293..4257bfa 100644 --- a/sources/appl/Gui/MainWindows.cpp +++ b/sources/appl/Gui/MainWindows.cpp @@ -211,6 +211,7 @@ void MainWindows::init() { myMenu->add(idMenugDisplay, "Reload openGl Shader", "", "menu:reloadShape"); myMenu->signalSelect.bind(shared_from_this(), &MainWindows::onCallbackMenuEvent); m_widgetLabelFileName = ewol::widget::Label::create("FileName"); + m_widgetLabelFileName->setName("appl-widget-display-name"); m_widgetLabelFileName->setExpand(bvec2(true,false)); m_widgetLabelFileName->setFill(bvec2(true,false));; mySizerHori->subWidgetAdd(m_widgetLabelFileName); diff --git a/sources/lutin_edn.py b/sources/lutin_edn.py index 9106f5b..2e20bb2 100755 --- a/sources/lutin_edn.py +++ b/sources/lutin_edn.py @@ -74,6 +74,7 @@ def create(target): myModule.copy_folder('../data/languages/asm/*.xml','languages/asm/') myModule.copy_folder('../data/languages/bash/*.xml','languages/bash/') myModule.copy_folder('../data/languages/boo/*.xml','languages/boo/') + myModule.copy_folder('../data/languages/cpp/*.xml','languages/cpp/') 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/')