File: ThemeImporterJSON.cpp

package info (click to toggle)
codelite 17.0.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 136,204 kB
  • sloc: cpp: 491,547; ansic: 280,393; php: 10,259; sh: 8,930; lisp: 7,664; vhdl: 6,518; python: 6,020; lex: 4,920; yacc: 3,123; perl: 2,385; javascript: 1,715; cs: 1,193; xml: 1,110; makefile: 804; cobol: 741; sql: 709; ruby: 620; f90: 566; ada: 534; asm: 464; fortran: 350; objc: 289; tcl: 258; java: 157; erlang: 61; pascal: 51; ml: 49; awk: 44; haskell: 36
file content (40 lines) | stat: -rw-r--r-- 1,568 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include "ThemeImporterJSON.hpp"

#include <wx/stc/stc.h>

#if wxCHECK_VERSION(3, 1, 0)
ThemeImporterJson::ThemeImporterJson()
{
    // normal keywords
    SetKeywords0("true false null");

    // LD JSON
    SetKeywords1("type context id name");

    SetFileExtensions("*.wxcp;*.json");
    m_langName = "json";
}

ThemeImporterJson::~ThemeImporterJson() {}

LexerConf::Ptr_t ThemeImporterJson::Import(const wxFileName& theme_file)
{
    LexerConf::Ptr_t lexer = InitializeImport(theme_file, GetLangName(), wxSTC_LEX_JSON);
    AddProperty(lexer, wxSTC_JSON_DEFAULT, "Default", m_editor);
    AddProperty(lexer, wxSTC_JSON_NUMBER, "Number", m_number);
    AddProperty(lexer, wxSTC_JSON_STRING, "String", m_string);
    AddProperty(lexer, wxSTC_JSON_STRINGEOL, "String EOL", m_string);
    AddProperty(lexer, wxSTC_JSON_PROPERTYNAME, "Property Name", m_variable);
    AddProperty(lexer, wxSTC_JSON_ESCAPESEQUENCE, "Escape Sequence", m_string);
    AddProperty(lexer, wxSTC_JSON_LINECOMMENT, "Line Comment", m_singleLineComment);
    AddProperty(lexer, wxSTC_JSON_BLOCKCOMMENT, "Block Comment", m_multiLineComment);
    AddProperty(lexer, wxSTC_JSON_OPERATOR, "Operator", m_oper);
    AddProperty(lexer, wxSTC_JSON_URI, "URI", m_klass);
    AddProperty(lexer, wxSTC_JSON_COMPACTIRI, "URI", m_function);
    AddProperty(lexer, wxSTC_JSON_KEYWORD, "Keyword", m_keyword);
    AddProperty(lexer, wxSTC_JSON_LDKEYWORD, "LD Keyword", m_keyword);
    AddProperty(lexer, wxSTC_JSON_ERROR, "Error", m_editor);
    FinalizeImport(lexer);
    return lexer;
}
#endif // wx > 3.1.0