 |
wxMaxima
|
22 #ifndef CONFIGURATION_H
23 #define CONFIGURATION_H
27 #include <wx/config.h>
28 #include <wx/display.h>
29 #include <wx/fontenum.h>
30 #include <wx/hashmap.h>
34 #include <unordered_map>
37 #define MC_LINE_SKIP Scale_Px(2)
38 #define MC_TEXT_PADDING Scale_Px(1)
40 #define PAREN_OPEN_TOP_UNICODE "\u239b"
41 #define PAREN_OPEN_EXTEND_UNICODE "\u239c"
42 #define PAREN_OPEN_BOTTOM_UNICODE "\u239d"
43 #define PAREN_CLOSE_TOP_UNICODE "\u239e"
44 #define PAREN_CLOSE_EXTEND_UNICODE "\u239f"
45 #define PAREN_CLOSE_BOTTOM_UNICODE "\u23a0"
46 #define SUM_SIGN "\u2211"
47 #define PROD_SIGN "\u220F"
51 #define MC_HCARET_WIDTH 25
53 #define MC_EXP_INDENT 2
54 static constexpr
AFontSize MC_MIN_SIZE{ 6.0f };
55 static constexpr
AFontSize MC_MAX_SIZE{ 48.0f };
57 #define LIBERTINE1 "LinLibertine_DRah.ttf"
58 #define LIBERTINE2 "LinLibertine_I.ttf"
59 #define LIBERTINE3 "LinLibertine_Mah.ttf"
60 #define LIBERTINE4 "LinLibertine_Rah.ttf"
61 #define LIBERTINE5 "LinLibertine_RBah.ttf"
62 #define LIBERTINE6 "LinLibertine_RBIah.ttf"
63 #define LIBERTINE7 "LinLibertine_RIah.ttf"
64 #define LIBERTINE8 "LinLibertine_RZah.ttf"
65 #define LIBERTINE9 "LinLibertine_RZIah.ttf"
95 enum showLabels : int8_t
98 labels_prefer_user = 1,
126 WX_DECLARE_STRING_HASH_MAP(
int, StringHash);
131 const wxEnvVariableHashMap& MaximaEnvVars(){
return m_maximaEnvVars;}
132 wxEnvVariableHashMap m_maximaEnvVars;
134 mathDisplayMode DisplayMode(){
return m_displayMode;}
135 void DisplayMode(mathDisplayMode mode ){m_displayMode = mode;}
139 { m_workingdir = dir; }
141 wxString GetWorkingDirectory()
const
142 {
return m_workingdir; }
152 void ResetAllToDefaults(
InitOpt options = {});
158 m_antialiassingDC = NULL;
160 void UnsetContext() {m_dc = NULL;}
162 void SetBackgroundBrush(wxBrush brush);
163 bool FixedFontInTextControls(){
return m_fixedFontTC;}
164 void FixedFontInTextControls(
bool fixed){m_fixedFontTC = fixed;}
165 wxBrush GetBackgroundBrush()
const {
return m_BackgroundBrush;}
166 wxBrush GetTooltipBrush()
const {
return m_tooltipBrush;}
167 void SetAntialiassingDC(wxDC &antialiassingDC)
168 {m_antialiassingDC = &antialiassingDC;}
170 void UnsetAntialiassingDC()
171 {m_antialiassingDC = NULL;}
175 static wxString m_maximaLocation_override;
176 static wxString m_configfileLocation_override;
178 using EscCodeContainer = std::unordered_map<wxString, wxString, wxStringHash>;
179 using EscCodeIterator = EscCodeContainer::const_iterator;
182 static const wxString &
GetEscCode(
const wxString &key);
185 static EscCodeIterator EscCodesEnd();
187 static double GetMinZoomFactor()
190 static double GetMaxZoomFactor()
207 long GetCellBracketWidth()
const
214 {
return m_hideBrackets; }
221 {
return m_printScale; }
231 m_zoomFactor = newzoom;
243 {
return m_zoomFactor; }
252 if ((m_antialiassingDC != NULL) && m_antiAliasLines)
253 return m_antialiassingDC;
264 wxFontWeight IsBold(
long st)
const;
266 wxFontStyle IsItalic(
long st)
const;
268 bool IsUnderlined(
long st)
const {
return m_styles[st].IsUnderlined();}
270 long GetLabelWidth()
const
271 {
return m_labelWidth * 14; }
273 long LabelWidth()
const
274 {
return m_labelWidth; }
275 void LabelWidth(
long labelWidth)
276 { m_labelWidth = labelWidth; }
282 return 3 * GetCellBracketWidth() / 2;
287 void SetPPI(wxSize ppi){m_ppi = ppi;}
294 int AutosaveMinutes(){
return m_autoSaveMinutes;}
295 void AutosaveMinutes(
int minutes){m_autoSaveMinutes = minutes;}
343 m_clientWidth = width;
346 bool IncrementalSearch()
const {
return m_incrementalSearch;}
349 void IncrementalSearch(
bool incrementalSearch) { m_incrementalSearch = incrementalSearch; }
354 CharsExist(
const wxString &chars,
bool exist) : chars(chars), exist(exist) {}
356 std::vector<CharsExist> m_charsInFont;
361 m_charsInFont.clear();
366 { m_clientHeight = height; }
370 {
return m_clientWidth; }
374 {
return m_clientHeight; }
389 return m_lineWidth_em;
394 bool AutoSaveAsTempFile()
const {
return m_autoSaveAsTempFile;}
395 void AutoSaveAsTempFile(
bool asTempFile){m_autoSaveAsTempFile = asTempFile;}
399 { m_lineWidth_em = width; }
406 bool SaveUntitled(){
return m_saveUntitled;}
407 void SaveUntitled(
bool save){m_saveUntitled = save;}
409 bool CursorJump(){
return m_cursorJump;}
410 void CursorJump(
bool save){m_cursorJump = save;}
412 bool NumpadEnterEvaluates(){
return m_numpadEnterEvaluates;}
413 void NumpadEnterEvaluates(
bool eval){m_numpadEnterEvaluates = eval;}
415 bool SaveImgFileName() {
return m_saveImgFileName;}
416 void SaveImgFileName(
bool save) { m_saveImgFileName = save;}
420 {
return m_autoWrap > 0; }
437 {
return m_autoIndent; }
439 void SetAutoIndent(
bool autoIndent){m_autoIndent = autoIndent;}
443 void IndentMaths(
bool indent){m_indentMaths=indent;}
446 if (st == TS_TEXT || st == TS_HEADING5 || st == TS_HEADING6 || st == TS_SUBSUBSECTION || st == TS_SUBSECTION || st == TS_SECTION || st == TS_TITLE)
451 const wxString &GetStyleName(
TextStyle textStyle)
const;
468 void Outdated(
bool outdated)
469 { m_outdated = outdated; }
471 bool CheckTeXFonts()
const
472 {
return m_TeXFonts; }
474 void CheckTeXFonts(
bool check)
475 { m_TeXFonts = check; }
477 bool CheckKeepPercent()
const
478 {
return m_keepPercent; }
480 void SetKeepPercent(
bool keepPercent)
481 { m_keepPercent = keepPercent; }
484 {
return m_fontCMRI; }
487 {
return m_fontCMSY; }
490 {
return m_fontCMEX; }
493 {
return m_fontCMMI; }
496 {
return m_fontCMTI; }
498 bool ShowCodeCells()
const
499 {
return m_showCodeCells; }
501 void ShowCodeCells(
bool show);
518 {
return m_printing; }
532 bool UsePngCairo()
const {
return m_usepngCairo;}
533 void UsePngCairo(
bool usepngCairo) { m_usepngCairo = usepngCairo;}
535 bool GetMatchParens()
const {
return m_matchParens; }
536 void SetMatchParens(
bool matchParens) { m_matchParens = matchParens; }
537 bool ShowMatchingParens()
const {
return m_showMatchingParens; }
538 void ShowMatchingParens(
bool show) { m_showMatchingParens = show; }
540 bool GetChangeAsterisk()
const{
return m_changeAsterisk; }
542 void SetChangeAsterisk(
bool changeAsterisk) {m_changeAsterisk = changeAsterisk;}
544 bool HidemultiplicationSign()
const {
return m_hidemultiplicationsign;}
546 void HidemultiplicationSign(
bool show) {m_hidemultiplicationsign = show;}
548 bool Latin2Greek()
const
549 {
return m_latin2greek;}
551 void Latin2Greek(
bool latin2greek) {m_latin2greek = latin2greek;}
553 bool GreekSidebar_ShowLatinLookalikes()
const {
return m_greekSidebar_ShowLatinLookalikes;}
554 void GreekSidebar_ShowLatinLookalikes(
bool show){m_greekSidebar_ShowLatinLookalikes = show;}
556 bool GreekSidebar_Show_mu()
const {
return m_greekSidebar_Show_mu;}
557 void GreekSidebar_Show_mu(
bool show) {m_greekSidebar_Show_mu = show;}
559 wxString SymbolPaneAdditionalChars()
const
560 {
return m_symbolPaneAdditionalChars;}
561 void SymbolPaneAdditionalChars(wxString symbols) {m_symbolPaneAdditionalChars = symbols;}
565 {
return m_notifyIfIdle; }
567 void NotifyIfIdle(
bool notify) {m_notifyIfIdle = notify;}
574 {
return m_displayedDigits; }
576 void SetDisplayedDigits(
long displayedDigits)
578 wxASSERT_MSG(displayedDigits >= 0, _(
"Bug: Maximum number of digits that is to be displayed is too low!"));
579 m_displayedDigits = displayedDigits;
582 wxRect GetUpdateRegion()
const {
return m_updateRegion;}
583 void SetUpdateRegion(wxRect rect){m_updateRegion = rect;}
589 bool GetInsertAns()
const
590 {
return m_insertAns; }
592 void SetInsertAns(
bool insertAns){ m_insertAns = insertAns; }
594 bool GetOpenHCaret()
const
595 {
return m_openHCaret; }
597 void SetOpenHCaret(
bool openHCaret){ m_openHCaret = openHCaret; }
599 bool RestartOnReEvaluation()
const
600 {
return m_restartOnReEvaluation; }
602 void RestartOnReEvaluation(
bool arg){ m_restartOnReEvaluation = arg; }
606 {
return m_canvasSize; }
610 { m_canvasSize = siz; }
614 {
return m_showBrackets; }
617 {
return m_showBrackets = show; }
621 {
return m_printBrackets; }
623 showLabels GetLabelChoice()
const
624 {
return m_showLabelChoice; }
626 bool InvertBackground(){
return m_invertBackground;}
627 void InvertBackground(
bool invert){ m_invertBackground = invert; }
629 long UndoLimit(){
return wxMax(m_undoLimit, 0);}
630 void UndoLimit(
long limit){ m_undoLimit = limit; }
632 long RecentItems(){
return wxMax(m_recentItems, 0);}
633 void RecentItems(
long items){ m_recentItems = items; }
637 {
return (m_showLabelChoice < labels_useronly); }
641 {
return m_showLabelChoice > labels_automatic; }
645 {
return m_showLabelChoice < labels_none; }
652 m_printBrackets = print;
675 void OnMpBrowse(wxCommandEvent& event);
697 static bool MaximaFound(wxString location = wxEmptyString);
701 {
return m_fixReorderedIndices; }
706 wxString
MathJaXURL()
const {
if(m_mathJaxURL_UseUser)
return m_mathJaxURL;
else return MathJaXURL_Auto();}
707 wxString MathJaXURL_User()
const {
return m_mathJaxURL;}
708 bool MathJaXURL_UseUser()
const {
return m_mathJaxURL_UseUser;}
709 void MathJaXURL_UseUser(
bool useUser){m_mathJaxURL_UseUser = useUser;}
711 bool WxMathML_UseFile()
const {
return m_wxMathML_UseFile;}
712 void WxMathML_UseFile(
bool useFile){m_wxMathML_UseFile = useFile;}
713 wxString WxMathML_Filename()
const {
return m_wxMathML_Filename;}
714 void WxMathML_Filename(wxString name) { m_wxMathML_Filename = name;}
715 bool EnterEvaluates()
const {
return m_enterEvaluates;}
716 void EnterEvaluates(
bool enterEvaluates) {m_enterEvaluates = enterEvaluates;}
717 static wxString MathJaXURL_Auto() {
return wxT(
"https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js");}
720 bool AntiAliasLines()
const {
return m_antiAliasLines;}
721 void AntiAliasLines(
bool antiAlias){ m_antiAliasLines = antiAlias; }
723 bool CopyBitmap()
const {
return m_copyBitmap;}
724 void CopyBitmap(
bool copyBitmap){ m_copyBitmap = copyBitmap; }
726 bool CopyMathML()
const {
return m_copyMathML;}
727 void CopyMathML(
bool copyMathML){ m_copyMathML = copyMathML;}
728 bool CopyMathMLHTML()
const {
return m_copyMathMLHTML;}
729 void CopyMathMLHTML(
bool copyMathMLHTML){ m_copyMathMLHTML = copyMathMLHTML; }
730 bool HideMarkerForThisMessage(wxString message);
731 void HideMarkerForThisMessage(wxString message,
bool hide)
732 {m_hideMarkerForThisMessage[message] = hide;}
733 bool CopyRTF()
const {
return m_copyRTF;}
734 void CopyRTF(
bool copyRTF) { m_copyRTF = copyRTF; }
735 bool CopySVG()
const {
return m_copySVG;}
736 void CopySVG(
bool copySVG) { m_copySVG = copySVG; }
737 bool CopyEMF()
const {
return m_copyEMF;}
738 void CopyEMF(
bool copyEMF) { m_copyEMF = copyEMF; }
739 bool UseSVG(){
return m_useSVG;}
740 void UseSVG(
bool useSVG) { m_useSVG = useSVG ;}
741 void ShowLength(
long length) { m_showLength = length; }
742 long ShowLength()
const {
return m_showLength;}
743 void LispType(wxString type) { m_lispType = type; }
744 wxString LispType()
const {
return m_lispType;}
749 void TocShowsSectionNumbers(
bool showSectionNumbers) { m_TOCshowsSectionNumbers = showSectionNumbers; }
751 bool TocShowsSectionNumbers()
const {
return m_TOCshowsSectionNumbers;}
753 void UseUnicodeMaths(
bool useunicodemaths)
754 { m_useUnicodeMaths = useunicodemaths; }
755 bool UseUnicodeMaths()
const {
return m_useUnicodeMaths;}
759 WX_DECLARE_STRING_HASH_MAP(
bool, StringBoolHash);
760 StringBoolHash m_hideMarkerForThisMessage;
775 long DefaultPort()
const {
return m_defaultPort;}
776 void DefaultPort(
long port){m_defaultPort = port;}
777 bool GetAbortOnError()
const {
return m_abortOnError;}
778 void SetAbortOnError(
bool abortOnError) {m_abortOnError = abortOnError;}
780 long GetLanguage()
const {
return m_language;}
781 void SetLanguage(
long language) {m_language = language;}
786 {m_maxGnuplotMegabytes = megaBytes;}
788 bool OfferKnownAnswers()
const {
return m_offerKnownAnswers;}
789 void OfferKnownAnswers(
bool offerKnownAnswers)
790 {m_offerKnownAnswers = offerKnownAnswers;}
792 wxString Documentclass()
const {
return m_documentclass;}
793 void Documentclass(wxString clss){m_documentclass = clss;}
794 wxString DocumentclassOptions()
const {
return m_documentclassOptions;}
795 void DocumentclassOptions(wxString classOptions){m_documentclassOptions = classOptions;}
800 {m_htmlEquationFormat = HTMLequationFormat;}
807 void SetAutosubscript_Num(
long autosubscriptnum) {m_autoSubscript = autosubscriptnum;}
808 wxString GetAutosubscript_string()
const;
816 void ClipToDrawRegion(
bool clipToDrawRegion){m_clipToDrawRegion = clipToDrawRegion; m_forceUpdate =
true;}
819 { m_adjustWorksheetSizeNeeded = adjust; }
820 bool AdjustWorksheetSize()
const
821 {
return m_adjustWorksheetSizeNeeded; }
822 void SetVisibleRegion(wxRect visibleRegion){m_visibleRegion = visibleRegion;}
823 wxRect GetVisibleRegion()
const {
return m_visibleRegion;}
824 void SetWorksheetPosition(wxPoint worksheetPosition){m_worksheetPosition = worksheetPosition;}
825 wxPoint GetWorksheetPosition()
const {
return m_worksheetPosition;}
826 wxString MaximaShareDir()
const {
return m_maximaShareDir;}
827 void MaximaShareDir(wxString dir){m_maximaShareDir = dir;}
828 void InLispMode(
bool lisp){m_inLispMode = lisp;}
829 bool InLispMode()
const {
return m_inLispMode;}
830 void BitmapScale(
int factor){m_bitmapScale = factor;}
831 int BitmapScale()
const {
return m_bitmapScale;}
832 void DefaultPlotHeight(
int px){m_defaultPlotHeight = px;}
833 int DefaultPlotHeight()
const {
return m_defaultPlotHeight;}
834 void DefaultPlotWidth(
int px){m_defaultPlotWidth = px;}
835 int DefaultPlotWidth()
const {
return m_defaultPlotWidth;}
836 void DefaultFramerate(
int fps){m_defaultFramerate = fps;}
837 int DefaultFramerate()
const {
return m_defaultFramerate;}
838 void TocDepth(
int depth){m_tocDepth = depth;}
839 int TocDepth()
const {
return m_tocDepth;}
840 bool TeXExponentsAfterSubscript()
const {
return m_TeXExponentsAfterSubscript;}
841 void TeXExponentsAfterSubscript(
bool ExponentsAfterSubscript)
842 {m_TeXExponentsAfterSubscript = ExponentsAfterSubscript;}
843 bool UsePartialForDiff()
const {
return m_usePartialForDiff;}
844 void UsePartialForDiff(
bool usePartialForDiff)
845 {m_usePartialForDiff = usePartialForDiff;}
846 void NotifyOfCellRedraw(
const Cell *cell);
847 void ClearAndEnableRedrawTracing();
848 void ReportMultipleRedraws();
850 bool WrapLatexMath()
const {
return m_wrapLatexMath;}
851 void WrapLatexMath(
bool wrapLatexMath){m_wrapLatexMath = wrapLatexMath;}
852 bool ShowAllDigits()
const {
return m_showAllDigits;}
853 void ShowAllDigits(
bool shw){m_showAllDigits = shw;}
854 bool LineBreaksInLongNums()
const {
return m_lineBreaksInLongNums;}
855 void LineBreaksInLongNums(
bool brk){m_lineBreaksInLongNums = brk;}
856 int MaxClipbrdBitmapMegabytes()
const {
return m_maxClipbrd_BitmapMegabytes;}
857 void MaxClipbrdBitmapMegabytes(
int maxClipbrd_BitmapMegabytes)
858 {m_maxClipbrd_BitmapMegabytes = maxClipbrd_BitmapMegabytes;}
860 void ExportContainsWXMX(
bool exportContainsWXMX){m_exportContainsWXMX = exportContainsWXMX;}
861 bool ExportContainsWXMX()
const {
return m_exportContainsWXMX;}
862 wxString TexPreamble()
const {
return m_texPreamble;}
863 void TexPreamble(wxString texPreamble) {m_texPreamble = texPreamble;}
870 wxSize m_ppi = wxSize(-1, -1);
871 mathDisplayMode m_displayMode = display_2d;
872 using CellRedrawTrace = std::vector<const Cell*>;
873 bool m_usePartialForDiff;
875 bool m_autoSaveAsTempFile;
879 bool m_autodetectMaxima;
881 bool m_autodetectHelpBrowser;
883 wxRect m_updateRegion;
885 bool m_incrementalSearch;
887 long m_autoSubscript;
889 wxWindow *m_workSheet = NULL;
902 bool CharsExistInFont(
const wxFont &font,
const wxString& chars);
904 bool m_wrapLatexMath;
905 bool m_exportContainsWXMX;
906 wxString m_texPreamble;
909 wxString m_workingdir;
910 bool m_TeXExponentsAfterSubscript;
911 wxString m_helpBrowserUserLocation;
912 wxString m_maximaUserLocation;
922 bool m_printBrackets;
928 bool m_changeAsterisk;
932 long m_displayedDigits;
938 bool m_showAllDigits;
940 bool m_lineBreaksInLongNums;
951 bool m_antiAliasLines;
954 wxDC *m_antialiassingDC;
955 wxString m_maximaShareDir;
957 bool m_clipToDrawRegion;
959 wxString m_maximaParameters;
962 bool m_restartOnReEvaluation;
963 AFontName m_fontCMRI, m_fontCMSY, m_fontCMEX, m_fontCMMI, m_fontCMTI;
968 showLabels m_showLabelChoice;
969 bool m_fixReorderedIndices;
970 wxString m_mathJaxURL;
971 bool m_mathJaxURL_UseUser;
972 bool m_showCodeCells;
975 bool m_copyMathMLHTML;
980 bool m_enterEvaluates;
986 bool m_TOCshowsSectionNumbers;
987 bool m_useUnicodeMaths;
990 bool m_showMatchingParens;
991 bool m_hidemultiplicationsign;
992 bool m_offerKnownAnswers;
994 long m_maxGnuplotMegabytes;
995 long m_defaultPlotHeight;
996 long m_defaultPlotWidth;
999 bool m_numpadEnterEvaluates;
1000 bool m_saveImgFileName;
1001 std::unique_ptr<CellRedrawTrace> m_cellRedrawTrace;
1002 wxString m_documentclass;
1003 wxString m_documentclassOptions;
1005 bool m_adjustWorksheetSizeNeeded;
1007 wxRect m_visibleRegion;
1009 wxPoint m_worksheetPosition;
1011 wxColour m_defaultBackgroundColor;
1013 wxBrush m_BackgroundBrush;
1014 wxBrush m_tooltipBrush;
1015 bool m_greekSidebar_ShowLatinLookalikes;
1016 bool m_greekSidebar_Show_mu;
1017 wxString m_symbolPaneAdditionalChars;
1018 bool m_invertBackground;
1021 wxString m_lispType;
1023 int m_defaultFramerate;
1025 int m_maxClipbrd_BitmapMegabytes;
1026 int m_autoSaveMinutes;
1027 wxString m_wxMathML_Filename;
1028 bool m_wxMathML_UseFile;
1037 m_configuration = configuration;
1056 m_configuration = configuration;
1067 #endif // CONFIGURATION_H
bool IndentMaths() const
Do we want to indent all maths?
Definition: Configuration.h:442
bool ClipToDrawRegion() const
Do we want to save time by only redrawing the area currently shown on the screen?
Definition: Configuration.h:814
wxString MaximaLocation() const
Returns the location of the maxima binary.
Definition: Configuration.cpp:1029
void SetAutoWrap(long autoWrap)
Definition: Configuration.h:433
void SetZoomFactor_temporarily(double newzoom)
Sets the zoom factor without storing the new value in the config file/registry.
Definition: Configuration.h:230
long GetLineWidth() const
Returns the maximum sensible width for a text line [in characters]:
Definition: Configuration.cpp:865
@ NUMBEROFSTYLES
This is not a style, but its value tells us how many styles are defined.
Definition: TextStyle.h:349
Style GetStyle(TextStyle textStyle, AFontSize fontSize) const
Definition: Configuration.cpp:752
long GetGroupSkip() const
The vertical space between GroupCells.
Definition: Configuration.h:323
Configuration(wxDC *dc={}, InitOpt options={})
Definition: Configuration.cpp:44
wxSize GetCanvasSize() const
Reads the size of the current worksheet's visible window. See SetCanvasSize.
Definition: Configuration.h:605
wxString MaximaParameters() const
Parameters to the maxima binary.
Definition: Configuration.h:662
void FontChanged()
Has a font changed?
Definition: Configuration.h:359
long GetClientWidth() const
Returns the width of the visible portion of the worksheet.
Definition: Configuration.h:369
Sets the configuration's "printing" flag until this class is left.
Definition: Configuration.h:1032
void AdjustWorksheetSize(bool adjust)
Request adjusting the worksheet size?
Definition: Configuration.h:818
bool UseUserLabels() const
Do we want at all to show labels?
Definition: Configuration.h:640
bool HideBrackets() const
Hide brackets that are not under the pointer?
Definition: Configuration.h:213
TextStyle
Definition: TextStyle.h:307
bool InUpdateRegion(wxRect rect) const
Definition: Configuration.cpp:1302
long GetClientHeight() const
Returns the height of the visible portion of the worksheet.
Definition: Configuration.h:373
void MathJaXURL(wxString url)
Returns the URL MathJaX can be found at.
Definition: Configuration.h:719
bool AutodetectMaxima() const
Autodetect maxima's location? (If false the user-specified location is used)
Definition: Configuration.h:657
double PrintScale() const
Hide brackets that are not under the pointer?
Definition: Configuration.h:220
long Scale_Px(double px) const
Definition: Configuration.cpp:1272
long GetAutosubscript_Num() const
Get the worksheet this configuration storage is valid for.
Definition: Configuration.h:806
static bool MaximaFound(wxString location=wxEmptyString)
Definition: Configuration.cpp:477
void MaximaParameters(wxString parameters)
The parameters we pass to the maxima binary.
Definition: Configuration.h:664
bool PrintBrackets() const
Prlong the cell brackets [displayed left to each group cell showing its extend]?
Definition: Configuration.h:620
double GetZoomFactor() const
Determines the zoom factor the worksheet is displayed at.
Definition: Configuration.h:242
Definition: TextStyle.h:54
bool GetAutoIndent() const
Do we want automatic indentation?
Definition: Configuration.h:436
wxDC * GetAntialiassingDC()
Get a drawing context suitable for size calculations.
Definition: Configuration.h:250
wxColor DefaultBackgroundColor()
Determine the default background color of the worksheet.
Definition: Configuration.cpp:787
void SetParenthesisDrawMode(drawMode mode)
Which way do we want to draw parenthesis?
Definition: Configuration.h:747
@ ascii
Use ascii characters only.
Definition: Configuration.h:105
Clears the configuration's "Clip to draw region" flag until this class is left.
Definition: Configuration.h:1051
@ temporary
This configuration is temporary and shouldn't redetect Maxima etc.
Definition: Configuration.h:116
void PrintScale(double scale)
Define if we want to hide brackets that are not under the pointer.
Definition: Configuration.h:224
wxString MaximaUserLocation() const
Returns the location of the maxima binary the user has selected.
Definition: Configuration.h:673
void WriteStyles(const wxString &file={})
Saves the style settings to a file.
Definition: Configuration.cpp:1430
bool FixReorderedIndices() const
Renumber out-of-order cell labels on saving.
Definition: Configuration.h:700
void SetClientHeight(long height)
Set the height of the visible window for GetClientHeight()
Definition: Configuration.h:365
void MaximaUserLocation(wxString maxima)
Sets the location of the maxima binary.
Definition: Configuration.h:678
AFontSize GetFontSize() const
The size of this style's font, asserted to be valid.
Definition: TextStyle.cpp:209
@ handdrawn
A parenthesis sign that was created using draw commands.
Definition: Configuration.h:109
void SetCanvasSize(wxSize siz)
Sets the size of the current worksheet's visible window.
Definition: Configuration.h:609
void SetWorkingDirectory(wxString dir)
Set maxima's working directory.
Definition: Configuration.h:138
long LineWidth_em() const
The minimum sensible line width in widths of a letter.
Definition: Configuration.h:386
long MaxGnuplotMegabytes() const
The maximum number of Megabytes of gnuplot sources we should store.
Definition: Configuration.h:784
Definition: TextStyle.h:130
wxWindow * GetWorkSheet() const
Get the worksheet this configuration storage is valid for.
Definition: Configuration.h:771
void ReadStyles(const wxString &file={})
Definition: Configuration.cpp:1042
bool GetAutoWrap() const
Do we want to have automatic line breaks for text cells?
Definition: Configuration.h:419
wxDC * GetDC()
Get a drawing context suitable for size calculations.
Definition: Configuration.h:246
void SetClientWidth(long width)
Set the width of the visible window for GetClientWidth()
Definition: Configuration.h:341
long GetCursorWidth() const
How much vertical space is to be left between two group cells?
Definition: Configuration.h:298
void InitStyles()
Initialize the text styles on construction.
Definition: Configuration.cpp:367
bool NotifyIfIdle() const
Notify the user if maxima is idle?
Definition: Configuration.h:564
StringHash m_maximaOperators
Definition: Configuration.h:129
bool GetAutoWrapCode() const
Do we want to have automatic line breaks for code cells?
Definition: Configuration.h:424
Definition: Configuration.h:351
@ assembled_unicode
Unicode, current font.
Definition: Configuration.h:107
Definition: FontAttribs.h:97
void SetContext(wxDC &dc)
Set the drawing context that is currently active.
Definition: Configuration.h:155
long GetBaseIndent() const
The y position the worksheet starts at.
Definition: Configuration.h:314
long GetIndent() const
Get the indentation of GroupCells.
Definition: Configuration.h:279
bool GetPrinting() const
Definition: Configuration.h:517
void SetWorkSheet(wxWindow *workSheet)
Set the worksheet this configuration storage is valid for.
Definition: Worksheet.h:1677
htmlExportFormat
The export formats we support for HTML equations.
Definition: Configuration.h:87
Definition: Configuration.h:83
InitOpt
Definition: Configuration.h:113
void SetZoomFactor(double newzoom)
Sets the zoom factor the worksheet is displayed at.
Definition: Configuration.cpp:925
void ClipToDrawRegion(bool clipToDrawRegion)
Do we want to save time by only redrawing the area currently shown on the screen?
Definition: Configuration.h:816
bool ShowAutomaticLabels() const
Do we want to show maxima's automatic labels (o1, t1, i1,...)?
Definition: Configuration.h:636
wxColour InvertColour(wxColour col)
Inverts a color: In 2020 wxColor still lacks this functionality.
Definition: Configuration.cpp:856
wxColor MakeColorDifferFromBackground(wxColor color)
Definition: Configuration.cpp:1284
bool ShowLabels() const
Do we want at all to show labels?
Definition: Configuration.h:644
void LineWidth_em(long width)
Set the minimum sensible line width in widths of a letter.
Definition: Configuration.h:398
@ assembled_unicode_fallbackfont2
Unicode, fallbackfont 2.
Definition: Configuration.h:108
void SetPrinting(bool printing)
Definition: Configuration.cpp:845
bool ShowBrackets() const
Show the cell brackets [displayed left to each group cell showing its extend]?
Definition: Configuration.h:613
wxString HelpBrowserUserLocation() const
Returns the location of the help browser the user has selected.
Definition: Configuration.h:686
double GetDefaultLineWidth() const
Calculates the default line width for the worksheet.
Definition: Configuration.h:377
wxString MathJaXURL() const
Returns the URL MathJaX can be found at.
Definition: Configuration.h:706
void SetLabelChoice(showLabels choice)
Sets the value of the Configuration ChoiceBox that treads displaying labels.
Definition: Configuration.h:648
static const wxString & GetEscCode(const wxString &key)
Retrieve a symbol for the escape code typed after the Escape key.
Definition: Configuration.cpp:437
void AutodetectMaxima(bool autodetectmaxima)
Autodetect maxima's location?
Definition: Configuration.h:659
double GetInterEquationSkip() const
Definition: Configuration.h:199
void HelpBrowserUserLocation(wxString helpBrowser)
Sets the location of the maxima binary.
Definition: Configuration.h:689
@ assembled_unicode_fallbackfont
Unicode, fallbackfont 1.
Definition: Configuration.h:106
void HideBrackets(bool hide)
Define if we want to hide brackets that are not under the pointer.
Definition: Configuration.h:217
drawMode
Definition: Configuration.h:103
wxSize GetPPI() const
Definition: Configuration.cpp:97
wxColour GetColor(TextStyle style)
Gets the color for a text style.
Definition: Configuration.cpp:1259
static EscCodeIterator EscCodesBegin()
Iterators over the escape code list.
Definition: Configuration.cpp:446
void SetIndent(long indent)
Definition: Configuration.h:335
static wxString MaximaDefaultLocation()
The auto-detected maxima location.
Definition: Configuration.cpp:1037
long GetDisplayedDigits() const
Definition: Configuration.h:573
void AutodetectHelpBrowser(bool autodetect)
Autodetect maxima's location?
Definition: Configuration.h:683
bool AutodetectHelpBrowser() const
Autodetect maxima's location? (If false the user-specified location is used)
Definition: Configuration.h:681
void WriteSettings(const wxString &file={})
Saves the style settings to a file.
Definition: Configuration.cpp:1106
wxColor EditorBackgroundColor()
Determine the default background color of editorcells.
Definition: Configuration.cpp:795