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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//
// copyright : (C) 2008 by Eran Ifrah
// file name : editor_options_general_guides_panel.cpp
//
// -------------------------------------------------------------------------
// A
// _____ _ _ _ _
// / __ \ | | | | (_) |
// | / \/ ___ __| | ___| | _| |_ ___
// | | / _ \ / _ |/ _ \ | | | __/ _ )
// | \__/\ (_) | (_| | __/ |___| | || __/
// \____/\___/ \__,_|\___\_____/_|\__\___|
//
// F i l e
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
#include "globals.h"
#include <wx/stc/stc.h>
#include "editor_options_general_guides_panel.h"
EditorOptionsGeneralGuidesPanel::EditorOptionsGeneralGuidesPanel(wxWindow* parent)
: EditorOptionsGeneralGuidesPanelBase(parent)
, TreeBookNode<EditorOptionsGeneralGuidesPanel>()
{
::wxPGPropertyBooleanUseCheckbox(m_pgMgrGeneral->GetGrid());
OptionsConfigPtr options = EditorConfigST::Get()->GetOptions();
m_pgPropDisplayLineNumbers->SetValue(options->GetDisplayLineNumbers());
m_pgPropHighlightMatchedBrace->SetValue(options->GetHighlightMatchedBraces());
m_pgPropShowIndentGuidelines->SetValue(options->GetShowIndentationGuidelines());
m_pgPropEnableCaretLine->SetValue(options->GetHighlightCaretLine());
wxVariant caretLineColour, debuggerLineColour;
caretLineColour << options->GetCaretLineColour();
m_pgPropCaretLineColour->SetValue(caretLineColour);
m_pgPropDisableSemiColonShift->SetValue(options->GetDisableSemicolonShift());
m_pgPropHideEditMargin->SetValue(options->GetHideChangeMarkerMargin());
m_pgPropHighlightDebuggerMarker->SetValue(options->HasOption(OptionsConfig::Opt_Mark_Debugger_Line));
debuggerLineColour << options->GetDebuggerMarkerLine();
m_pgPropDebuggerLineColour->SetValue(debuggerLineColour);
m_pgPropWhitespaceVisibility->SetChoiceSelection(options->GetShowWhitspaces());
m_pgPropCaretLineAlpha->SetValue(options->GetCaretLineAlpha());
// EOL
// Default;Mac (CR);Windows (CRLF);Unix (LF)
wxArrayString eolOptions;
eolOptions.Add("Default");
eolOptions.Add("Mac (CR)");
eolOptions.Add("Windows (CRLF)");
eolOptions.Add("Unix (LF)");
int eolSel = eolOptions.Index(options->GetEolMode());
if(eolSel != wxNOT_FOUND) {
m_pgPropEOLMode->SetChoiceSelection(eolSel);
}
}
void EditorOptionsGeneralGuidesPanel::Save(OptionsConfigPtr options)
{
options->SetDisplayLineNumbers(m_pgPropDisplayLineNumbers->GetValue().GetBool());
options->SetHighlightMatchedBraces(m_pgPropHighlightMatchedBrace->GetValue().GetBool());
options->SetShowIndentationGuidelines(m_pgPropShowIndentGuidelines->GetValue().GetBool());
options->SetHighlightCaretLine(m_pgPropEnableCaretLine->GetValue().GetBool());
wxColourPropertyValue carteLineColour, debuggerLineColour;
carteLineColour << m_pgPropCaretLineColour->GetValue();
debuggerLineColour << m_pgPropDebuggerLineColour->GetValue();
options->SetCaretLineColour(carteLineColour.m_colour);
wxString eolMode = m_pgPropEOLMode->GetValueAsString();
options->SetEolMode(eolMode);
options->SetHideChangeMarkerMargin(m_pgPropHideEditMargin->GetValue().GetBool());
options->SetDisableSemicolonShift(m_pgPropDisableSemiColonShift->GetValue().GetBool());
options->SetDebuggerMarkerLine(debuggerLineColour.m_colour);
options->EnableOption(OptionsConfig::Opt_Mark_Debugger_Line, m_pgPropHighlightDebuggerMarker->GetValue().GetBool());
options->SetShowWhitspaces(m_pgPropWhitespaceVisibility->GetValue().GetInteger());
options->SetCaretLineAlpha(m_pgPropCaretLineAlpha->GetValue().GetInteger());
}
|