File: ThemeImporterDiff.cpp

package info (click to toggle)
codelite 17.0.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • 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 (30 lines) | stat: -rw-r--r-- 1,247 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
#include "ThemeImporterDiff.hpp"

#include <wx/colour.h>

ThemeImporterDiff::ThemeImporterDiff() { SetFileExtensions("*.diff;*.patch;Diff;*.Diff"); }

ThemeImporterDiff::~ThemeImporterDiff() {}

LexerConf::Ptr_t ThemeImporterDiff::Import(const wxFileName& theme_file)
{
    LexerConf::Ptr_t lexer = InitializeImport(theme_file, "diff", wxSTC_LEX_DIFF);
    CHECK_PTR_RET_NULL(lexer);

    AddProperty(lexer, wxSTC_DIFF_DEFAULT, "Default", m_editor);
    AddProperty(lexer, wxSTC_DIFF_COMMENT, "Comment", m_singleLineComment);
    AddProperty(lexer, wxSTC_DIFF_COMMAND, "Command", m_klass);
    AddProperty(lexer, wxSTC_DIFF_HEADER, "Header", m_keyword);
    AddProperty(lexer, wxSTC_DIFF_POSITION, "Position", m_function);

    // Use pink and forest green
    if(IsDarkTheme()) {
        AddProperty(lexer, wxSTC_DIFF_DELETED, "Line Deleted", "#FF8080", m_editor.bg_colour, true);
        AddProperty(lexer, wxSTC_DIFF_ADDED, "Line Added", "#80FF80", m_editor.bg_colour, true);
    } else {
        AddProperty(lexer, wxSTC_DIFF_DELETED, "Line Deleted", "RED", m_editor.bg_colour, true);
        AddProperty(lexer, wxSTC_DIFF_ADDED, "Line Added", "rgb(0, 128, 64)", m_editor.bg_colour, true);
    }
    FinalizeImport(lexer);
    return lexer;
}