Compare commits
No commits in common. "9663c335631ef0fa6eb4599aa3a48c94dc02c0b6" and "40d86c8f823a7cdc69a52941d4bdb55f453cc913" have entirely different histories.
9663c33563
...
40d86c8f82
15 changed files with 1022 additions and 1013 deletions
|
@ -1308,27 +1308,27 @@ Ausdruck analysiert: %3</translation>
|
||||||
<translation type="vanished">Verlauf</translation>
|
<translation type="vanished">Verlauf</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="98"/>
|
<location filename="../../common/src/module/io.mjs" line="92"/>
|
||||||
<source>Saved plot to '%1'.</source>
|
<source>Saved plot to '%1'.</source>
|
||||||
<translation>Gespeicherte Grafik auf '%1'.</translation>
|
<translation>Gespeicherte Grafik auf '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="110"/>
|
<location filename="../../common/src/module/io.mjs" line="104"/>
|
||||||
<source>Loading file '%1'.</source>
|
<source>Loading file '%1'.</source>
|
||||||
<translation>Laden der Datei '%1'.</translation>
|
<translation>Laden der Datei '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="154"/>
|
<location filename="../../common/src/module/io.mjs" line="148"/>
|
||||||
<source>Unknown object type: %1.</source>
|
<source>Unknown object type: %1.</source>
|
||||||
<translation>Unbekannter Objekttyp: %1.</translation>
|
<translation>Unbekannter Objekttyp: %1.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="169"/>
|
<location filename="../../common/src/module/io.mjs" line="163"/>
|
||||||
<source>Invalid file provided.</source>
|
<source>Invalid file provided.</source>
|
||||||
<translation>Ungültige Datei angegeben.</translation>
|
<translation>Ungültige Datei angegeben.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="173"/>
|
<location filename="../../common/src/module/io.mjs" line="167"/>
|
||||||
<source>Could not load file: </source>
|
<source>Could not load file: </source>
|
||||||
<translation>Datei konnte nicht geladen werden: </translation>
|
<translation>Datei konnte nicht geladen werden: </translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1337,7 +1337,7 @@ Ausdruck analysiert: %3</translation>
|
||||||
<translation type="vanished">Die Datei konnte nicht gespeichert werden: </translation>
|
<translation type="vanished">Die Datei konnte nicht gespeichert werden: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="178"/>
|
<location filename="../../common/src/module/io.mjs" line="172"/>
|
||||||
<source>Loaded file '%1'.</source>
|
<source>Loaded file '%1'.</source>
|
||||||
<translation>Geladene Datei '%1'.</translation>
|
<translation>Geladene Datei '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1759,17 +1759,17 @@ Bitte vergewissern Sie sich, dass Ihre LaTeX-Installation korrekt ist, und melde
|
||||||
<context>
|
<context>
|
||||||
<name>settingCategory</name>
|
<name>settingCategory</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="33"/>
|
<location filename="../../common/src/module/preferences.mjs" line="30"/>
|
||||||
<source>default</source>
|
<source>default</source>
|
||||||
<translation>Standardeinstellungen</translation>
|
<translation>Standardeinstellungen</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="31"/>
|
<location filename="../../common/src/module/preferences.mjs" line="28"/>
|
||||||
<source>general</source>
|
<source>general</source>
|
||||||
<translation>Allgemeine</translation>
|
<translation>Allgemeine</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="32"/>
|
<location filename="../../common/src/module/preferences.mjs" line="29"/>
|
||||||
<source>editor</source>
|
<source>editor</source>
|
||||||
<translation>Ausdruckseditor</translation>
|
<translation>Ausdruckseditor</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1827,22 +1827,22 @@ Bitte vergewissern Sie sich, dass Ihre LaTeX-Installation korrekt ist, und melde
|
||||||
<context>
|
<context>
|
||||||
<name>usage</name>
|
<name>usage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="88"/>
|
<location filename="../../common/src/module/expreval.mjs" line="86"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
||||||
<translation>integral(<von: Zahl>, <bis: Zahl>, <f: Funktionsähnliches Objekt>)</translation>
|
<translation>integral(<von: Zahl>, <bis: Zahl>, <f: Funktionsähnliches Objekt>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="65"/>
|
<location filename="../../common/src/module/expreval.mjs" line="63"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="72"/>
|
<location filename="../../common/src/module/expreval.mjs" line="70"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1</source>
|
%1</source>
|
||||||
<translation>Verwendung:
|
<translation>Verwendung:
|
||||||
%1</translation>
|
%1</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="75"/>
|
<location filename="../../common/src/module/expreval.mjs" line="73"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="92"/>
|
<location filename="../../common/src/module/expreval.mjs" line="90"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="105"/>
|
<location filename="../../common/src/module/expreval.mjs" line="103"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1
|
%1
|
||||||
%2</source>
|
%2</source>
|
||||||
|
@ -1851,17 +1851,17 @@ Bitte vergewissern Sie sich, dass Ihre LaTeX-Installation korrekt ist, und melde
|
||||||
%2</translation>
|
%2</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="89"/>
|
<location filename="../../common/src/module/expreval.mjs" line="87"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
||||||
<translation>integral(<von: Zahl>, <bis: Zahl>, <f: String>, <Variablen: String>)</translation>
|
<translation>integral(<von: Zahl>, <bis: Zahl>, <f: String>, <Variablen: String>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="100"/>
|
<location filename="../../common/src/module/expreval.mjs" line="98"/>
|
||||||
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
||||||
<translation>derivative(<f: Funktionsähnliches Objekt>, <x: Zahl>)</translation>
|
<translation>derivative(<f: Funktionsähnliches Objekt>, <x: Zahl>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="101"/>
|
<location filename="../../common/src/module/expreval.mjs" line="99"/>
|
||||||
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
||||||
<translation>derivative(<f: String>, <Variablen: String>, <x: Zahl>)</translation>
|
<translation>derivative(<f: String>, <Variablen: String>, <x: Zahl>)</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -1308,27 +1308,27 @@ Evaluated expression: %3</translation>
|
||||||
<translation type="vanished">History</translation>
|
<translation type="vanished">History</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="98"/>
|
<location filename="../../common/src/module/io.mjs" line="92"/>
|
||||||
<source>Saved plot to '%1'.</source>
|
<source>Saved plot to '%1'.</source>
|
||||||
<translation>Saved plot to '%1'.</translation>
|
<translation>Saved plot to '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="110"/>
|
<location filename="../../common/src/module/io.mjs" line="104"/>
|
||||||
<source>Loading file '%1'.</source>
|
<source>Loading file '%1'.</source>
|
||||||
<translation>Loading file '%1'.</translation>
|
<translation>Loading file '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="154"/>
|
<location filename="../../common/src/module/io.mjs" line="148"/>
|
||||||
<source>Unknown object type: %1.</source>
|
<source>Unknown object type: %1.</source>
|
||||||
<translation>Unknown object type: %1.</translation>
|
<translation>Unknown object type: %1.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="169"/>
|
<location filename="../../common/src/module/io.mjs" line="163"/>
|
||||||
<source>Invalid file provided.</source>
|
<source>Invalid file provided.</source>
|
||||||
<translation>Invalid file provided.</translation>
|
<translation>Invalid file provided.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="173"/>
|
<location filename="../../common/src/module/io.mjs" line="167"/>
|
||||||
<source>Could not load file: </source>
|
<source>Could not load file: </source>
|
||||||
<translation>Could not load file: </translation>
|
<translation>Could not load file: </translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1337,7 +1337,7 @@ Evaluated expression: %3</translation>
|
||||||
<translation type="vanished">Could not save file: </translation>
|
<translation type="vanished">Could not save file: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="178"/>
|
<location filename="../../common/src/module/io.mjs" line="172"/>
|
||||||
<source>Loaded file '%1'.</source>
|
<source>Loaded file '%1'.</source>
|
||||||
<translation>Loaded file '%1'.</translation>
|
<translation>Loaded file '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1759,17 +1759,17 @@ Please make sure your LaTeX installation is correct and report a bug if so.</tra
|
||||||
<context>
|
<context>
|
||||||
<name>settingCategory</name>
|
<name>settingCategory</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="31"/>
|
<location filename="../../common/src/module/preferences.mjs" line="28"/>
|
||||||
<source>general</source>
|
<source>general</source>
|
||||||
<translation>General</translation>
|
<translation>General</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="32"/>
|
<location filename="../../common/src/module/preferences.mjs" line="29"/>
|
||||||
<source>editor</source>
|
<source>editor</source>
|
||||||
<translation>Expression Editor</translation>
|
<translation>Expression Editor</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="33"/>
|
<location filename="../../common/src/module/preferences.mjs" line="30"/>
|
||||||
<source>default</source>
|
<source>default</source>
|
||||||
<translation>Default settings</translation>
|
<translation>Default settings</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1827,22 +1827,22 @@ Please make sure your LaTeX installation is correct and report a bug if so.</tra
|
||||||
<context>
|
<context>
|
||||||
<name>usage</name>
|
<name>usage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="88"/>
|
<location filename="../../common/src/module/expreval.mjs" line="86"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
||||||
<translation>integral(<from: number>, <to: number>, <f: Function-like object>)</translation>
|
<translation>integral(<from: number>, <to: number>, <f: Function-like object>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="65"/>
|
<location filename="../../common/src/module/expreval.mjs" line="63"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="72"/>
|
<location filename="../../common/src/module/expreval.mjs" line="70"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1</source>
|
%1</source>
|
||||||
<translation>Usage:
|
<translation>Usage:
|
||||||
%1</translation>
|
%1</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="75"/>
|
<location filename="../../common/src/module/expreval.mjs" line="73"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="92"/>
|
<location filename="../../common/src/module/expreval.mjs" line="90"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="105"/>
|
<location filename="../../common/src/module/expreval.mjs" line="103"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1
|
%1
|
||||||
%2</source>
|
%2</source>
|
||||||
|
@ -1851,17 +1851,17 @@ Please make sure your LaTeX installation is correct and report a bug if so.</tra
|
||||||
%2</translation>
|
%2</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="89"/>
|
<location filename="../../common/src/module/expreval.mjs" line="87"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
||||||
<translation>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</translation>
|
<translation>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="100"/>
|
<location filename="../../common/src/module/expreval.mjs" line="98"/>
|
||||||
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
||||||
<translation>derivative(<f: Function-like object>, <x: number>)</translation>
|
<translation>derivative(<f: Function-like object>, <x: number>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="101"/>
|
<location filename="../../common/src/module/expreval.mjs" line="99"/>
|
||||||
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
||||||
<translation>derivative(<f: string>, <variable: string>, <x: number>)</translation>
|
<translation>derivative(<f: string>, <variable: string>, <x: number>)</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -1320,27 +1320,27 @@ Expresión evaluada: %3</translation>
|
||||||
<translation type="vanished">Objetos</translation>
|
<translation type="vanished">Objetos</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="98"/>
|
<location filename="../../common/src/module/io.mjs" line="92"/>
|
||||||
<source>Saved plot to '%1'.</source>
|
<source>Saved plot to '%1'.</source>
|
||||||
<translation>Gráfico guardado en '%1'.</translation>
|
<translation>Gráfico guardado en '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="110"/>
|
<location filename="../../common/src/module/io.mjs" line="104"/>
|
||||||
<source>Loading file '%1'.</source>
|
<source>Loading file '%1'.</source>
|
||||||
<translation>Cargando el archivo '%1'.</translation>
|
<translation>Cargando el archivo '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="154"/>
|
<location filename="../../common/src/module/io.mjs" line="148"/>
|
||||||
<source>Unknown object type: %1.</source>
|
<source>Unknown object type: %1.</source>
|
||||||
<translation>Tipo de objeto desconocido: %1 .</translation>
|
<translation>Tipo de objeto desconocido: %1 .</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="169"/>
|
<location filename="../../common/src/module/io.mjs" line="163"/>
|
||||||
<source>Invalid file provided.</source>
|
<source>Invalid file provided.</source>
|
||||||
<translation>Se ha proporcionado un archivo no válido.</translation>
|
<translation>Se ha proporcionado un archivo no válido.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="173"/>
|
<location filename="../../common/src/module/io.mjs" line="167"/>
|
||||||
<source>Could not load file: </source>
|
<source>Could not load file: </source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1349,7 +1349,7 @@ Expresión evaluada: %3</translation>
|
||||||
<translation type="vanished">No se ha podido guardar el archivo: </translation>
|
<translation type="vanished">No se ha podido guardar el archivo: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="178"/>
|
<location filename="../../common/src/module/io.mjs" line="172"/>
|
||||||
<source>Loaded file '%1'.</source>
|
<source>Loaded file '%1'.</source>
|
||||||
<translation>Archivo cargado '%1'.</translation>
|
<translation>Archivo cargado '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1759,17 +1759,17 @@ Por favor, asegúrese de que su instalación de LaTeX es correcta e informe de u
|
||||||
<context>
|
<context>
|
||||||
<name>settingCategory</name>
|
<name>settingCategory</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="31"/>
|
<location filename="../../common/src/module/preferences.mjs" line="28"/>
|
||||||
<source>general</source>
|
<source>general</source>
|
||||||
<translation>General</translation>
|
<translation>General</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="32"/>
|
<location filename="../../common/src/module/preferences.mjs" line="29"/>
|
||||||
<source>editor</source>
|
<source>editor</source>
|
||||||
<translation>Editor de expresiones</translation>
|
<translation>Editor de expresiones</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="33"/>
|
<location filename="../../common/src/module/preferences.mjs" line="30"/>
|
||||||
<source>default</source>
|
<source>default</source>
|
||||||
<translation>Ajustes por defecto</translation>
|
<translation>Ajustes por defecto</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1827,22 +1827,22 @@ Por favor, asegúrese de que su instalación de LaTeX es correcta e informe de u
|
||||||
<context>
|
<context>
|
||||||
<name>usage</name>
|
<name>usage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="88"/>
|
<location filename="../../common/src/module/expreval.mjs" line="86"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
||||||
<translation>integral(<desde: número>, <hasta: número>, <f: Objeto similar a una función>)</translation>
|
<translation>integral(<desde: número>, <hasta: número>, <f: Objeto similar a una función>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="65"/>
|
<location filename="../../common/src/module/expreval.mjs" line="63"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="72"/>
|
<location filename="../../common/src/module/expreval.mjs" line="70"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1</source>
|
%1</source>
|
||||||
<translation>Uso:
|
<translation>Uso:
|
||||||
%1</translation>
|
%1</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="75"/>
|
<location filename="../../common/src/module/expreval.mjs" line="73"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="92"/>
|
<location filename="../../common/src/module/expreval.mjs" line="90"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="105"/>
|
<location filename="../../common/src/module/expreval.mjs" line="103"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1
|
%1
|
||||||
%2</source>
|
%2</source>
|
||||||
|
@ -1851,17 +1851,17 @@ Por favor, asegúrese de que su instalación de LaTeX es correcta e informe de u
|
||||||
%2</translation>
|
%2</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="89"/>
|
<location filename="../../common/src/module/expreval.mjs" line="87"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
||||||
<translation>integral(<desde: número>, <hasta: número>, <f: cadena>, <variable: cadena>)</translation>
|
<translation>integral(<desde: número>, <hasta: número>, <f: cadena>, <variable: cadena>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="100"/>
|
<location filename="../../common/src/module/expreval.mjs" line="98"/>
|
||||||
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
||||||
<translation>derivative(<f: objeto similar a una función>, <x: número>)</translation>
|
<translation>derivative(<f: objeto similar a una función>, <x: número>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="101"/>
|
<location filename="../../common/src/module/expreval.mjs" line="99"/>
|
||||||
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
||||||
<translation>derivative(<f: cadena>, <variable: cadena>, <x: número>)</translation>
|
<translation>derivative(<f: cadena>, <variable: cadena>, <x: número>)</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -1323,27 +1323,27 @@ Formule analysée : %3</translation>
|
||||||
<translation type="vanished">&Mettre à jour LogarithmPlotter</translation>
|
<translation type="vanished">&Mettre à jour LogarithmPlotter</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="98"/>
|
<location filename="../../common/src/module/io.mjs" line="92"/>
|
||||||
<source>Saved plot to '%1'.</source>
|
<source>Saved plot to '%1'.</source>
|
||||||
<translation>Graphe sauvegardé dans '%1'.</translation>
|
<translation>Graphe sauvegardé dans '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="110"/>
|
<location filename="../../common/src/module/io.mjs" line="104"/>
|
||||||
<source>Loading file '%1'.</source>
|
<source>Loading file '%1'.</source>
|
||||||
<translation>Chargement du fichier '%1'.</translation>
|
<translation>Chargement du fichier '%1'.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="154"/>
|
<location filename="../../common/src/module/io.mjs" line="148"/>
|
||||||
<source>Unknown object type: %1.</source>
|
<source>Unknown object type: %1.</source>
|
||||||
<translation>Type d'objet inconnu : %1.</translation>
|
<translation>Type d'objet inconnu : %1.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="169"/>
|
<location filename="../../common/src/module/io.mjs" line="163"/>
|
||||||
<source>Invalid file provided.</source>
|
<source>Invalid file provided.</source>
|
||||||
<translation>Fichier fourni invalide.</translation>
|
<translation>Fichier fourni invalide.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="173"/>
|
<location filename="../../common/src/module/io.mjs" line="167"/>
|
||||||
<source>Could not load file: </source>
|
<source>Could not load file: </source>
|
||||||
<translation>Impossible de charger le fichier : </translation>
|
<translation>Impossible de charger le fichier : </translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1352,7 +1352,7 @@ Formule analysée : %3</translation>
|
||||||
<translation type="vanished">Impossible de sauvegarder le fichier : </translation>
|
<translation type="vanished">Impossible de sauvegarder le fichier : </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="178"/>
|
<location filename="../../common/src/module/io.mjs" line="172"/>
|
||||||
<source>Loaded file '%1'.</source>
|
<source>Loaded file '%1'.</source>
|
||||||
<translation>Fichier '%1' chargé.</translation>
|
<translation>Fichier '%1' chargé.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1762,17 +1762,17 @@ Vérifiez que votre installation de LaTeX est correcte et signalez un bogue si c
|
||||||
<context>
|
<context>
|
||||||
<name>settingCategory</name>
|
<name>settingCategory</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="31"/>
|
<location filename="../../common/src/module/preferences.mjs" line="28"/>
|
||||||
<source>general</source>
|
<source>general</source>
|
||||||
<translation>Général</translation>
|
<translation>Général</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="32"/>
|
<location filename="../../common/src/module/preferences.mjs" line="29"/>
|
||||||
<source>editor</source>
|
<source>editor</source>
|
||||||
<translation>Éditeur de formule</translation>
|
<translation>Éditeur de formule</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="33"/>
|
<location filename="../../common/src/module/preferences.mjs" line="30"/>
|
||||||
<source>default</source>
|
<source>default</source>
|
||||||
<translation>Paramètres par défaut</translation>
|
<translation>Paramètres par défaut</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1830,22 +1830,22 @@ Vérifiez que votre installation de LaTeX est correcte et signalez un bogue si c
|
||||||
<context>
|
<context>
|
||||||
<name>usage</name>
|
<name>usage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="88"/>
|
<location filename="../../common/src/module/expreval.mjs" line="86"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
||||||
<translation>integral(<de : nombre>, <à : nombre>, <f : Objet fonction>)</translation>
|
<translation>integral(<de : nombre>, <à : nombre>, <f : Objet fonction>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="65"/>
|
<location filename="../../common/src/module/expreval.mjs" line="63"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="72"/>
|
<location filename="../../common/src/module/expreval.mjs" line="70"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1</source>
|
%1</source>
|
||||||
<translation>Emploi :
|
<translation>Emploi :
|
||||||
%1</translation>
|
%1</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="75"/>
|
<location filename="../../common/src/module/expreval.mjs" line="73"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="92"/>
|
<location filename="../../common/src/module/expreval.mjs" line="90"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="105"/>
|
<location filename="../../common/src/module/expreval.mjs" line="103"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1
|
%1
|
||||||
%2</source>
|
%2</source>
|
||||||
|
@ -1854,17 +1854,17 @@ Vérifiez que votre installation de LaTeX est correcte et signalez un bogue si c
|
||||||
%2</translation>
|
%2</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="89"/>
|
<location filename="../../common/src/module/expreval.mjs" line="87"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
||||||
<translation>integral(<de : nombre>, <à : nombre>, <f : fonction chaîne>, <variable>)</translation>
|
<translation>integral(<de : nombre>, <à : nombre>, <f : fonction chaîne>, <variable>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="100"/>
|
<location filename="../../common/src/module/expreval.mjs" line="98"/>
|
||||||
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
||||||
<translation>derivative(<f : Objet fonction>, <x : nombre>)</translation>
|
<translation>derivative(<f : Objet fonction>, <x : nombre>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="101"/>
|
<location filename="../../common/src/module/expreval.mjs" line="99"/>
|
||||||
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
||||||
<translation>derivative(<f : fonction chaîne>, <variable>, <x : nombre>)</translation>
|
<translation>derivative(<f : fonction chaîne>, <variable>, <x : nombre>)</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -1304,27 +1304,27 @@ Kiértékelt kifejezés: %3</translation>
|
||||||
<translation type="vanished">Előzmények</translation>
|
<translation type="vanished">Előzmények</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="98"/>
|
<location filename="../../common/src/module/io.mjs" line="92"/>
|
||||||
<source>Saved plot to '%1'.</source>
|
<source>Saved plot to '%1'.</source>
|
||||||
<translation>Ábra mentve ide: „%1”.</translation>
|
<translation>Ábra mentve ide: „%1”.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="110"/>
|
<location filename="../../common/src/module/io.mjs" line="104"/>
|
||||||
<source>Loading file '%1'.</source>
|
<source>Loading file '%1'.</source>
|
||||||
<translation>A(z) „%1” fájl betöltése folyamatban van.</translation>
|
<translation>A(z) „%1” fájl betöltése folyamatban van.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="154"/>
|
<location filename="../../common/src/module/io.mjs" line="148"/>
|
||||||
<source>Unknown object type: %1.</source>
|
<source>Unknown object type: %1.</source>
|
||||||
<translation>Ismeretlen objektumtípus: %1.</translation>
|
<translation>Ismeretlen objektumtípus: %1.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="169"/>
|
<location filename="../../common/src/module/io.mjs" line="163"/>
|
||||||
<source>Invalid file provided.</source>
|
<source>Invalid file provided.</source>
|
||||||
<translation>A megadott fájl érvénytelen.</translation>
|
<translation>A megadott fájl érvénytelen.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="173"/>
|
<location filename="../../common/src/module/io.mjs" line="167"/>
|
||||||
<source>Could not load file: </source>
|
<source>Could not load file: </source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1333,7 +1333,7 @@ Kiértékelt kifejezés: %3</translation>
|
||||||
<translation type="vanished">A fájl mentése nem sikerült: </translation>
|
<translation type="vanished">A fájl mentése nem sikerült: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="178"/>
|
<location filename="../../common/src/module/io.mjs" line="172"/>
|
||||||
<source>Loaded file '%1'.</source>
|
<source>Loaded file '%1'.</source>
|
||||||
<translation>A(z) „%1” fájl betöltve.</translation>
|
<translation>A(z) „%1” fájl betöltve.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1759,17 +1759,17 @@ Kérjük, ellenőrizze, hogy a LaTeX telepítése helyes-e, és ha igen, jelents
|
||||||
<context>
|
<context>
|
||||||
<name>settingCategory</name>
|
<name>settingCategory</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="31"/>
|
<location filename="../../common/src/module/preferences.mjs" line="28"/>
|
||||||
<source>general</source>
|
<source>general</source>
|
||||||
<translation>Általános</translation>
|
<translation>Általános</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="32"/>
|
<location filename="../../common/src/module/preferences.mjs" line="29"/>
|
||||||
<source>editor</source>
|
<source>editor</source>
|
||||||
<translation>Kifejezésszerkesztő</translation>
|
<translation>Kifejezésszerkesztő</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="33"/>
|
<location filename="../../common/src/module/preferences.mjs" line="30"/>
|
||||||
<source>default</source>
|
<source>default</source>
|
||||||
<translation>Alapértelmezett ábra</translation>
|
<translation>Alapértelmezett ábra</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1827,22 +1827,22 @@ Kérjük, ellenőrizze, hogy a LaTeX telepítése helyes-e, és ha igen, jelents
|
||||||
<context>
|
<context>
|
||||||
<name>usage</name>
|
<name>usage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="88"/>
|
<location filename="../../common/src/module/expreval.mjs" line="86"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
||||||
<translation>integral(<alsó korlát: szám>, <felső korlát: szám>, <f: függvényszerű objektum>)</translation>
|
<translation>integral(<alsó korlát: szám>, <felső korlát: szám>, <f: függvényszerű objektum>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="65"/>
|
<location filename="../../common/src/module/expreval.mjs" line="63"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="72"/>
|
<location filename="../../common/src/module/expreval.mjs" line="70"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1</source>
|
%1</source>
|
||||||
<translation>Használat:
|
<translation>Használat:
|
||||||
%1</translation>
|
%1</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="75"/>
|
<location filename="../../common/src/module/expreval.mjs" line="73"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="92"/>
|
<location filename="../../common/src/module/expreval.mjs" line="90"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="105"/>
|
<location filename="../../common/src/module/expreval.mjs" line="103"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1
|
%1
|
||||||
%2</source>
|
%2</source>
|
||||||
|
@ -1851,17 +1851,17 @@ Kérjük, ellenőrizze, hogy a LaTeX telepítése helyes-e, és ha igen, jelents
|
||||||
%2</translation>
|
%2</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="89"/>
|
<location filename="../../common/src/module/expreval.mjs" line="87"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
||||||
<translation>integral(<alsó korlát: szám>, <felső korlát: szám>, <függvény: karakterlánc>, <változó: karakterlánc>)</translation>
|
<translation>integral(<alsó korlát: szám>, <felső korlát: szám>, <függvény: karakterlánc>, <változó: karakterlánc>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="100"/>
|
<location filename="../../common/src/module/expreval.mjs" line="98"/>
|
||||||
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
||||||
<translation>derivative(<f: függvényszerű objektum>, <x: szám>)</translation>
|
<translation>derivative(<f: függvényszerű objektum>, <x: szám>)</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="101"/>
|
<location filename="../../common/src/module/expreval.mjs" line="99"/>
|
||||||
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
||||||
<translation>derivált(<függvény: karakterlánc>, <változó: karakterlánc>, <x: szám>)</translation>
|
<translation>derivált(<függvény: karakterlánc>, <változó: karakterlánc>, <x: szám>)</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -1235,27 +1235,27 @@ Evaluated expression: %3</source>
|
||||||
<translation type="vanished">Historikk</translation>
|
<translation type="vanished">Historikk</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="98"/>
|
<location filename="../../common/src/module/io.mjs" line="92"/>
|
||||||
<source>Saved plot to '%1'.</source>
|
<source>Saved plot to '%1'.</source>
|
||||||
<translation>Lagret plott i «%1».</translation>
|
<translation>Lagret plott i «%1».</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="110"/>
|
<location filename="../../common/src/module/io.mjs" line="104"/>
|
||||||
<source>Loading file '%1'.</source>
|
<source>Loading file '%1'.</source>
|
||||||
<translation>Laster inn «%1»-fil.</translation>
|
<translation>Laster inn «%1»-fil.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="154"/>
|
<location filename="../../common/src/module/io.mjs" line="148"/>
|
||||||
<source>Unknown object type: %1.</source>
|
<source>Unknown object type: %1.</source>
|
||||||
<translation>Ukjent objekttype: %1.</translation>
|
<translation>Ukjent objekttype: %1.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="169"/>
|
<location filename="../../common/src/module/io.mjs" line="163"/>
|
||||||
<source>Invalid file provided.</source>
|
<source>Invalid file provided.</source>
|
||||||
<translation>Ugyldig fil angitt.</translation>
|
<translation>Ugyldig fil angitt.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="173"/>
|
<location filename="../../common/src/module/io.mjs" line="167"/>
|
||||||
<source>Could not load file: </source>
|
<source>Could not load file: </source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1264,7 +1264,7 @@ Evaluated expression: %3</source>
|
||||||
<translation type="vanished">Kunne ikke lagre fil: </translation>
|
<translation type="vanished">Kunne ikke lagre fil: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="178"/>
|
<location filename="../../common/src/module/io.mjs" line="172"/>
|
||||||
<source>Loaded file '%1'.</source>
|
<source>Loaded file '%1'.</source>
|
||||||
<translation>Lastet inn filen «%1».</translation>
|
<translation>Lastet inn filen «%1».</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1669,17 +1669,17 @@ Please make sure your latex installation is correct and report a bug if so.</sou
|
||||||
<context>
|
<context>
|
||||||
<name>settingCategory</name>
|
<name>settingCategory</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="31"/>
|
<location filename="../../common/src/module/preferences.mjs" line="28"/>
|
||||||
<source>general</source>
|
<source>general</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="32"/>
|
<location filename="../../common/src/module/preferences.mjs" line="29"/>
|
||||||
<source>editor</source>
|
<source>editor</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="33"/>
|
<location filename="../../common/src/module/preferences.mjs" line="30"/>
|
||||||
<source>default</source>
|
<source>default</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1737,38 +1737,38 @@ Please make sure your latex installation is correct and report a bug if so.</sou
|
||||||
<context>
|
<context>
|
||||||
<name>usage</name>
|
<name>usage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="88"/>
|
<location filename="../../common/src/module/expreval.mjs" line="86"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="65"/>
|
<location filename="../../common/src/module/expreval.mjs" line="63"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="72"/>
|
<location filename="../../common/src/module/expreval.mjs" line="70"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1</source>
|
%1</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="75"/>
|
<location filename="../../common/src/module/expreval.mjs" line="73"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="92"/>
|
<location filename="../../common/src/module/expreval.mjs" line="90"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="105"/>
|
<location filename="../../common/src/module/expreval.mjs" line="103"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1
|
%1
|
||||||
%2</source>
|
%2</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="89"/>
|
<location filename="../../common/src/module/expreval.mjs" line="87"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="100"/>
|
<location filename="../../common/src/module/expreval.mjs" line="98"/>
|
||||||
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="101"/>
|
<location filename="../../common/src/module/expreval.mjs" line="99"/>
|
||||||
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -1069,32 +1069,32 @@ Evaluated expression: %3</source>
|
||||||
<context>
|
<context>
|
||||||
<name>io</name>
|
<name>io</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="98"/>
|
<location filename="../../common/src/module/io.mjs" line="92"/>
|
||||||
<source>Saved plot to '%1'.</source>
|
<source>Saved plot to '%1'.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="110"/>
|
<location filename="../../common/src/module/io.mjs" line="104"/>
|
||||||
<source>Loading file '%1'.</source>
|
<source>Loading file '%1'.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="154"/>
|
<location filename="../../common/src/module/io.mjs" line="148"/>
|
||||||
<source>Unknown object type: %1.</source>
|
<source>Unknown object type: %1.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="169"/>
|
<location filename="../../common/src/module/io.mjs" line="163"/>
|
||||||
<source>Invalid file provided.</source>
|
<source>Invalid file provided.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="173"/>
|
<location filename="../../common/src/module/io.mjs" line="167"/>
|
||||||
<source>Could not load file: </source>
|
<source>Could not load file: </source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/io.mjs" line="178"/>
|
<location filename="../../common/src/module/io.mjs" line="172"/>
|
||||||
<source>Loaded file '%1'.</source>
|
<source>Loaded file '%1'.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1465,17 +1465,17 @@ Please make sure your latex installation is correct and report a bug if so.</sou
|
||||||
<context>
|
<context>
|
||||||
<name>settingCategory</name>
|
<name>settingCategory</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="31"/>
|
<location filename="../../common/src/module/preferences.mjs" line="28"/>
|
||||||
<source>general</source>
|
<source>general</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="32"/>
|
<location filename="../../common/src/module/preferences.mjs" line="29"/>
|
||||||
<source>editor</source>
|
<source>editor</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/preferences.mjs" line="33"/>
|
<location filename="../../common/src/module/preferences.mjs" line="30"/>
|
||||||
<source>default</source>
|
<source>default</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -1519,38 +1519,38 @@ Please make sure your latex installation is correct and report a bug if so.</sou
|
||||||
<context>
|
<context>
|
||||||
<name>usage</name>
|
<name>usage</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="88"/>
|
<location filename="../../common/src/module/expreval.mjs" line="86"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
<source>integral(<from: number>, <to: number>, <f: ExecutableObject>)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="65"/>
|
<location filename="../../common/src/module/expreval.mjs" line="63"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="72"/>
|
<location filename="../../common/src/module/expreval.mjs" line="70"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1</source>
|
%1</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="75"/>
|
<location filename="../../common/src/module/expreval.mjs" line="73"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="92"/>
|
<location filename="../../common/src/module/expreval.mjs" line="90"/>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="105"/>
|
<location filename="../../common/src/module/expreval.mjs" line="103"/>
|
||||||
<source>Usage:
|
<source>Usage:
|
||||||
%1
|
%1
|
||||||
%2</source>
|
%2</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="89"/>
|
<location filename="../../common/src/module/expreval.mjs" line="87"/>
|
||||||
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
<source>integral(<from: number>, <to: number>, <f: string>, <variable: string>)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="100"/>
|
<location filename="../../common/src/module/expreval.mjs" line="98"/>
|
||||||
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
<source>derivative(<f: ExecutableObject>, <x: number>)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../common/src/module/expreval.mjs" line="101"/>
|
<location filename="../../common/src/module/expreval.mjs" line="99"/>
|
||||||
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
<source>derivative(<f: string>, <variable: string>, <x: number>)</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|
|
@ -33,8 +33,6 @@ for file in $files; do
|
||||||
replace "${file%.*}.js" "^export" "/*export*/"
|
replace "${file%.*}.js" "^export" "/*export*/"
|
||||||
replace "${file%.*}.js" "async " "/*async */"
|
replace "${file%.*}.js" "async " "/*async */"
|
||||||
replace "${file%.*}.js" "await" "/*await */"
|
replace "${file%.*}.js" "await" "/*await */"
|
||||||
replace "${file%.*}.js" " #" "// #"
|
|
||||||
replace "${file%.*}.js" "this.#" "/*this.#*/"
|
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "----------------------------"
|
echo "----------------------------"
|
||||||
|
@ -57,9 +55,7 @@ for file in $files; do
|
||||||
replace "$file" "/*async */" "async "
|
replace "$file" "/*async */" "async "
|
||||||
replace "$file" "^/*export*/" "export"
|
replace "$file" "^/*export*/" "export"
|
||||||
replace "$file" "^/*export default*/" "export default"
|
replace "$file" "^/*export default*/" "export default"
|
||||||
replace "$file" '.mjs"*/' '.mjs"'
|
|
||||||
replace "$file" "^/*import" "import"
|
replace "$file" "^/*import" "import"
|
||||||
replace "$file" "^/*export" "export"
|
replace "$file" "^/*export" "export"
|
||||||
replace "$file" "// #" " #"
|
replace "$file" '.mjs"*/$' '.mjs"'
|
||||||
replace "$file" "/*this.#*/" "this.#"
|
|
||||||
done
|
done
|
||||||
|
|
1503
common/package-lock.json
generated
1503
common/package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -25,20 +25,23 @@ import Objects from "./objects.mjs"
|
||||||
import History from "./history.mjs"
|
import History from "./history.mjs"
|
||||||
|
|
||||||
class CanvasAPI extends Module {
|
class CanvasAPI extends Module {
|
||||||
/** @type {CanvasInterface} */
|
|
||||||
#canvas = null
|
|
||||||
/** @type {CanvasRenderingContext2D} */
|
|
||||||
#ctx = null
|
|
||||||
/** @type {{show(string, string, string)}} */
|
|
||||||
#drawingErrorDialog = null
|
|
||||||
|
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
super("Canvas", {
|
super("Canvas", {
|
||||||
canvas: CanvasInterface,
|
canvas: CanvasInterface,
|
||||||
drawingErrorDialog: DialogInterface
|
drawingErrorDialog: DialogInterface
|
||||||
})
|
})
|
||||||
|
|
||||||
|
/** @type {CanvasInterface} */
|
||||||
|
this._canvas = null
|
||||||
|
|
||||||
|
/** @type {CanvasRenderingContext2D} */
|
||||||
|
this._ctx = null
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @type {{show(string, string, string)}}
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
this._drawingErrorDialog = null
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @type {Object.<string, {expression: Expression, value: number, maxDraw: number}>}
|
* @type {Object.<string, {expression: Expression, value: number, maxDraw: number}>}
|
||||||
|
@ -64,18 +67,18 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
initialize({ canvas, drawingErrorDialog }) {
|
initialize({ canvas, drawingErrorDialog }) {
|
||||||
super.initialize({ canvas, drawingErrorDialog })
|
super.initialize({ canvas, drawingErrorDialog })
|
||||||
this.#canvas = canvas
|
this._canvas = canvas
|
||||||
this.#drawingErrorDialog = drawingErrorDialog
|
this._drawingErrorDialog = drawingErrorDialog
|
||||||
}
|
}
|
||||||
|
|
||||||
get width() {
|
get width() {
|
||||||
if(!this.initialized) throw new Error("Attempting width before initialize!")
|
if(!this.initialized) throw new Error("Attempting width before initialize!")
|
||||||
return this.#canvas.width
|
return this._canvas.width
|
||||||
}
|
}
|
||||||
|
|
||||||
get height() {
|
get height() {
|
||||||
if(!this.initialized) throw new Error("Attempting height before initialize!")
|
if(!this.initialized) throw new Error("Attempting height before initialize!")
|
||||||
return this.#canvas.height
|
return this._canvas.height
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -84,7 +87,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get xmin() {
|
get xmin() {
|
||||||
if(!this.initialized) throw new Error("Attempting xmin before initialize!")
|
if(!this.initialized) throw new Error("Attempting xmin before initialize!")
|
||||||
return this.#canvas.xmin
|
return this._canvas.xmin
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -93,7 +96,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get xzoom() {
|
get xzoom() {
|
||||||
if(!this.initialized) throw new Error("Attempting xzoom before initialize!")
|
if(!this.initialized) throw new Error("Attempting xzoom before initialize!")
|
||||||
return this.#canvas.xzoom
|
return this._canvas.xzoom
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -102,7 +105,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get ymax() {
|
get ymax() {
|
||||||
if(!this.initialized) throw new Error("Attempting ymax before initialize!")
|
if(!this.initialized) throw new Error("Attempting ymax before initialize!")
|
||||||
return this.#canvas.ymax
|
return this._canvas.ymax
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -111,7 +114,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get yzoom() {
|
get yzoom() {
|
||||||
if(!this.initialized) throw new Error("Attempting yzoom before initialize!")
|
if(!this.initialized) throw new Error("Attempting yzoom before initialize!")
|
||||||
return this.#canvas.yzoom
|
return this._canvas.yzoom
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -120,7 +123,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get xlabel() {
|
get xlabel() {
|
||||||
if(!this.initialized) throw new Error("Attempting xlabel before initialize!")
|
if(!this.initialized) throw new Error("Attempting xlabel before initialize!")
|
||||||
return this.#canvas.xlabel
|
return this._canvas.xlabel
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -129,7 +132,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get ylabel() {
|
get ylabel() {
|
||||||
if(!this.initialized) throw new Error("Attempting ylabel before initialize!")
|
if(!this.initialized) throw new Error("Attempting ylabel before initialize!")
|
||||||
return this.#canvas.ylabel
|
return this._canvas.ylabel
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -138,7 +141,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get linewidth() {
|
get linewidth() {
|
||||||
if(!this.initialized) throw new Error("Attempting linewidth before initialize!")
|
if(!this.initialized) throw new Error("Attempting linewidth before initialize!")
|
||||||
return this.#canvas.linewidth
|
return this._canvas.linewidth
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -147,7 +150,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get textsize() {
|
get textsize() {
|
||||||
if(!this.initialized) throw new Error("Attempting textsize before initialize!")
|
if(!this.initialized) throw new Error("Attempting textsize before initialize!")
|
||||||
return this.#canvas.textsize
|
return this._canvas.textsize
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -156,7 +159,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get logscalex() {
|
get logscalex() {
|
||||||
if(!this.initialized) throw new Error("Attempting logscalex before initialize!")
|
if(!this.initialized) throw new Error("Attempting logscalex before initialize!")
|
||||||
return this.#canvas.logscalex
|
return this._canvas.logscalex
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -165,7 +168,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get showxgrad() {
|
get showxgrad() {
|
||||||
if(!this.initialized) throw new Error("Attempting showxgrad before initialize!")
|
if(!this.initialized) throw new Error("Attempting showxgrad before initialize!")
|
||||||
return this.#canvas.showxgrad
|
return this._canvas.showxgrad
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -174,7 +177,7 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
get showygrad() {
|
get showygrad() {
|
||||||
if(!this.initialized) throw new Error("Attempting showygrad before initialize!")
|
if(!this.initialized) throw new Error("Attempting showygrad before initialize!")
|
||||||
return this.#canvas.showygrad
|
return this._canvas.showygrad
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -198,7 +201,7 @@ class CanvasAPI extends Module {
|
||||||
|
|
||||||
requestPaint() {
|
requestPaint() {
|
||||||
if(!this.initialized) throw new Error("Attempting requestPaint before initialize!")
|
if(!this.initialized) throw new Error("Attempting requestPaint before initialize!")
|
||||||
this.#canvas.requestPaint()
|
this._canvas.requestPaint()
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -206,17 +209,17 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
redraw() {
|
redraw() {
|
||||||
if(!this.initialized) throw new Error("Attempting redraw before initialize!")
|
if(!this.initialized) throw new Error("Attempting redraw before initialize!")
|
||||||
this.#ctx = this.#canvas.getContext("2d")
|
this._ctx = this._canvas.getContext("2d")
|
||||||
this._computeAxes()
|
this._computeAxes()
|
||||||
this._reset()
|
this._reset()
|
||||||
this._drawGrid()
|
this._drawGrid()
|
||||||
this._drawAxes()
|
this._drawAxes()
|
||||||
this._drawLabels()
|
this._drawLabels()
|
||||||
this.#ctx.lineWidth = this.linewidth
|
this._ctx.lineWidth = this.linewidth
|
||||||
for(let objType in Objects.currentObjects) {
|
for(let objType in Objects.currentObjects) {
|
||||||
for(let obj of Objects.currentObjects[objType]) {
|
for(let obj of Objects.currentObjects[objType]) {
|
||||||
this.#ctx.strokeStyle = obj.color
|
this._ctx.strokeStyle = obj.color
|
||||||
this.#ctx.fillStyle = obj.color
|
this._ctx.fillStyle = obj.color
|
||||||
if(obj.visible)
|
if(obj.visible)
|
||||||
try {
|
try {
|
||||||
obj.draw(this)
|
obj.draw(this)
|
||||||
|
@ -224,12 +227,12 @@ class CanvasAPI extends Module {
|
||||||
// Drawing throws an error. Generally, it's due to a new modification (or the opening of a file)
|
// Drawing throws an error. Generally, it's due to a new modification (or the opening of a file)
|
||||||
console.error(e)
|
console.error(e)
|
||||||
console.log(e.stack)
|
console.log(e.stack)
|
||||||
this.#drawingErrorDialog.show(objType, obj.name, e.message)
|
this._drawingErrorDialog.show(objType, obj.name, e.message)
|
||||||
History.undo()
|
History.undo()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.#ctx.lineWidth = 1
|
this._ctx.lineWidth = 1
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -237,9 +240,9 @@ class CanvasAPI extends Module {
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
_computeAxes() {
|
_computeAxes() {
|
||||||
let exprY = new Expression(`x*(${this.#canvas.yaxisstep})`)
|
let exprY = new Expression(`x*(${this._canvas.yaxisstep})`)
|
||||||
let y1 = exprY.execute(1)
|
let y1 = exprY.execute(1)
|
||||||
let exprX = new Expression(`x*(${this.#canvas.xaxisstep})`)
|
let exprX = new Expression(`x*(${this._canvas.xaxisstep})`)
|
||||||
let x1 = exprX.execute(1)
|
let x1 = exprX.execute(1)
|
||||||
this.axesSteps = {
|
this.axesSteps = {
|
||||||
x: {
|
x: {
|
||||||
|
@ -261,10 +264,10 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
_reset() {
|
_reset() {
|
||||||
// Reset
|
// Reset
|
||||||
this.#ctx.fillStyle = "#FFFFFF"
|
this._ctx.fillStyle = "#FFFFFF"
|
||||||
this.#ctx.strokeStyle = "#000000"
|
this._ctx.strokeStyle = "#000000"
|
||||||
this.#ctx.font = `${this.textsize}px sans-serif`
|
this._ctx.font = `${this.textsize}px sans-serif`
|
||||||
this.#ctx.fillRect(0, 0, this.width, this.height)
|
this._ctx.fillRect(0, 0, this.width, this.height)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -272,7 +275,7 @@ class CanvasAPI extends Module {
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
_drawGrid() {
|
_drawGrid() {
|
||||||
this.#ctx.strokeStyle = "#C0C0C0"
|
this._ctx.strokeStyle = "#C0C0C0"
|
||||||
if(this.logscalex) {
|
if(this.logscalex) {
|
||||||
for(let xpow = -this.maxgradx; xpow <= this.maxgradx; xpow++) {
|
for(let xpow = -this.maxgradx; xpow <= this.maxgradx; xpow++) {
|
||||||
for(let xmulti = 1; xmulti < 10; xmulti++) {
|
for(let xmulti = 1; xmulti < 10; xmulti++) {
|
||||||
|
@ -296,7 +299,7 @@ class CanvasAPI extends Module {
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
_drawAxes() {
|
_drawAxes() {
|
||||||
this.#ctx.strokeStyle = "#000000"
|
this._ctx.strokeStyle = "#000000"
|
||||||
let axisypos = this.logscalex ? 1 : 0
|
let axisypos = this.logscalex ? 1 : 0
|
||||||
this.drawXLine(axisypos)
|
this.drawXLine(axisypos)
|
||||||
this.drawYLine(0)
|
this.drawYLine(0)
|
||||||
|
@ -317,19 +320,19 @@ class CanvasAPI extends Module {
|
||||||
let axisypx = this.x2px(this.logscalex ? 1 : 0) // X coordinate of Y axis
|
let axisypx = this.x2px(this.logscalex ? 1 : 0) // X coordinate of Y axis
|
||||||
let axisxpx = this.y2px(0) // Y coordinate of X axis
|
let axisxpx = this.y2px(0) // Y coordinate of X axis
|
||||||
// Labels
|
// Labels
|
||||||
this.#ctx.fillStyle = "#000000"
|
this._ctx.fillStyle = "#000000"
|
||||||
this.#ctx.font = `${this.textsize}px sans-serif`
|
this._ctx.font = `${this.textsize}px sans-serif`
|
||||||
this.#ctx.fillText(this.ylabel, axisypx + 10, 24)
|
this._ctx.fillText(this.ylabel, axisypx + 10, 24)
|
||||||
let textWidth = this.#ctx.measureText(this.xlabel).width
|
let textWidth = this._ctx.measureText(this.xlabel).width
|
||||||
this.#ctx.fillText(this.xlabel, this.width - 14 - textWidth, axisxpx - 5)
|
this._ctx.fillText(this.xlabel, this.width - 14 - textWidth, axisxpx - 5)
|
||||||
// Axis graduation labels
|
// Axis graduation labels
|
||||||
this.#ctx.font = `${this.textsize - 4}px sans-serif`
|
this._ctx.font = `${this.textsize - 4}px sans-serif`
|
||||||
|
|
||||||
let txtMinus = this.#ctx.measureText("-").width
|
let txtMinus = this._ctx.measureText("-").width
|
||||||
if(this.showxgrad) {
|
if(this.showxgrad) {
|
||||||
if(this.logscalex) {
|
if(this.logscalex) {
|
||||||
for(let xpow = -this.maxgradx; xpow <= this.maxgradx; xpow += 1) {
|
for(let xpow = -this.maxgradx; xpow <= this.maxgradx; xpow += 1) {
|
||||||
textWidth = this.#ctx.measureText("10" + textsup(xpow)).width
|
textWidth = this._ctx.measureText("10" + textsup(xpow)).width
|
||||||
if(xpow !== 0)
|
if(xpow !== 0)
|
||||||
this.drawVisibleText("10" + textsup(xpow), this.x2px(Math.pow(10, xpow)) - textWidth / 2, axisxpx + 16 + (6 * (xpow === 1)))
|
this.drawVisibleText("10" + textsup(xpow), this.x2px(Math.pow(10, xpow)) - textWidth / 2, axisxpx + 16 + (6 * (xpow === 1)))
|
||||||
}
|
}
|
||||||
|
@ -347,13 +350,13 @@ class CanvasAPI extends Module {
|
||||||
for(let y = 0; y < this.axesSteps.y.maxDraw; y += 1) {
|
for(let y = 0; y < this.axesSteps.y.maxDraw; y += 1) {
|
||||||
let drawY = y * this.axesSteps.y.value
|
let drawY = y * this.axesSteps.y.value
|
||||||
let txtY = this.axesSteps.y.expression.simplify(y).toString().replace(/^\((.+)\)$/, "$1")
|
let txtY = this.axesSteps.y.expression.simplify(y).toString().replace(/^\((.+)\)$/, "$1")
|
||||||
textWidth = this.#ctx.measureText(txtY).width
|
textWidth = this._ctx.measureText(txtY).width
|
||||||
this.drawVisibleText(txtY, axisypx - 6 - textWidth, this.y2px(drawY) + 4 + (10 * (y === 0)))
|
this.drawVisibleText(txtY, axisypx - 6 - textWidth, this.y2px(drawY) + 4 + (10 * (y === 0)))
|
||||||
if(y !== 0)
|
if(y !== 0)
|
||||||
this.drawVisibleText("-" + txtY, axisypx - 6 - textWidth - txtMinus, this.y2px(-drawY) + 4)
|
this.drawVisibleText("-" + txtY, axisypx - 6 - textWidth - txtMinus, this.y2px(-drawY) + 4)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.#ctx.fillStyle = "#FFFFFF"
|
this._ctx.fillStyle = "#FFFFFF"
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
@ -391,7 +394,7 @@ class CanvasAPI extends Module {
|
||||||
drawVisibleText(text, x, y) {
|
drawVisibleText(text, x, y) {
|
||||||
if(x > 0 && x < this.width && y > 0 && y < this.height) {
|
if(x > 0 && x < this.width && y > 0 && y < this.height) {
|
||||||
text.toString().split("\n").forEach((txt, i) => {
|
text.toString().split("\n").forEach((txt, i) => {
|
||||||
this.#ctx.fillText(txt, x, y + (this.textsize * i))
|
this._ctx.fillText(txt, x, y + (this.textsize * i))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -406,8 +409,8 @@ class CanvasAPI extends Module {
|
||||||
* @param {number} height
|
* @param {number} height
|
||||||
*/
|
*/
|
||||||
drawVisibleImage(image, x, y, width, height) {
|
drawVisibleImage(image, x, y, width, height) {
|
||||||
this.#canvas.markDirty(Qt.rect(x, y, width, height))
|
this._canvas.markDirty(Qt.rect(x, y, width, height))
|
||||||
this.#ctx.drawImage(image, x, y, width, height)
|
this._ctx.drawImage(image, x, y, width, height)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -421,7 +424,7 @@ class CanvasAPI extends Module {
|
||||||
let defaultHeight = this.textsize * 1.2 // Approximate but good enough!
|
let defaultHeight = this.textsize * 1.2 // Approximate but good enough!
|
||||||
for(let txt of text.split("\n")) {
|
for(let txt of text.split("\n")) {
|
||||||
theight += defaultHeight
|
theight += defaultHeight
|
||||||
if(this.#ctx.measureText(txt).width > twidth) twidth = this.#ctx.measureText(txt).width
|
if(this._ctx.measureText(txt).width > twidth) twidth = this._ctx.measureText(txt).width
|
||||||
}
|
}
|
||||||
return { "width": twidth, "height": theight }
|
return { "width": twidth, "height": theight }
|
||||||
}
|
}
|
||||||
|
@ -491,10 +494,10 @@ class CanvasAPI extends Module {
|
||||||
* @param {number} y2
|
* @param {number} y2
|
||||||
*/
|
*/
|
||||||
drawLine(x1, y1, x2, y2) {
|
drawLine(x1, y1, x2, y2) {
|
||||||
this.#ctx.beginPath()
|
this._ctx.beginPath()
|
||||||
this.#ctx.moveTo(x1, y1)
|
this._ctx.moveTo(x1, y1)
|
||||||
this.#ctx.lineTo(x2, y2)
|
this._ctx.lineTo(x2, y2)
|
||||||
this.#ctx.stroke()
|
this._ctx.stroke()
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -506,9 +509,9 @@ class CanvasAPI extends Module {
|
||||||
* @param {number} dashPxSize
|
* @param {number} dashPxSize
|
||||||
*/
|
*/
|
||||||
drawDashedLine(x1, y1, x2, y2, dashPxSize = 6) {
|
drawDashedLine(x1, y1, x2, y2, dashPxSize = 6) {
|
||||||
this.#ctx.setLineDash([dashPxSize / 2, dashPxSize])
|
this._ctx.setLineDash([dashPxSize / 2, dashPxSize])
|
||||||
this.drawLine(x1, y1, x2, y2)
|
this.drawLine(x1, y1, x2, y2)
|
||||||
this.#ctx.setLineDash([])
|
this._ctx.setLineDash([])
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -519,10 +522,10 @@ class CanvasAPI extends Module {
|
||||||
*/
|
*/
|
||||||
renderLatexImage(ltxText, color, callback) {
|
renderLatexImage(ltxText, color, callback) {
|
||||||
const onRendered = (imgData) => {
|
const onRendered = (imgData) => {
|
||||||
if(!this.#canvas.isImageLoaded(imgData.source) && !this.#canvas.isImageLoading(imgData.source)) {
|
if(!this._canvas.isImageLoaded(imgData.source) && !this._canvas.isImageLoading(imgData.source)) {
|
||||||
// Wait until the image is loaded to callback.
|
// Wait until the image is loaded to callback.
|
||||||
this.#canvas.loadImage(imgData.source)
|
this._canvas.loadImage(imgData.source)
|
||||||
this.#canvas.imageLoaders[imgData.source] = [callback, imgData]
|
this._canvas.imageLoaders[imgData.source] = [callback, imgData]
|
||||||
} else {
|
} else {
|
||||||
// Callback directly
|
// Callback directly
|
||||||
callback(imgData)
|
callback(imgData)
|
||||||
|
@ -540,11 +543,11 @@ class CanvasAPI extends Module {
|
||||||
//
|
//
|
||||||
|
|
||||||
get font() {
|
get font() {
|
||||||
return this.#ctx.font
|
return this._ctx.font
|
||||||
}
|
}
|
||||||
|
|
||||||
set font(value) {
|
set font(value) {
|
||||||
return this.#ctx.font = value
|
return this._ctx.font = value
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -557,9 +560,9 @@ class CanvasAPI extends Module {
|
||||||
* @param {boolean} counterclockwise
|
* @param {boolean} counterclockwise
|
||||||
*/
|
*/
|
||||||
arc(x, y, radius, startAngle, endAngle, counterclockwise = false) {
|
arc(x, y, radius, startAngle, endAngle, counterclockwise = false) {
|
||||||
this.#ctx.beginPath()
|
this._ctx.beginPath()
|
||||||
this.#ctx.arc(x, y, radius, startAngle, endAngle, counterclockwise)
|
this._ctx.arc(x, y, radius, startAngle, endAngle, counterclockwise)
|
||||||
this.#ctx.stroke()
|
this._ctx.stroke()
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -569,9 +572,9 @@ class CanvasAPI extends Module {
|
||||||
* @param {number} radius
|
* @param {number} radius
|
||||||
*/
|
*/
|
||||||
disc(x, y, radius) {
|
disc(x, y, radius) {
|
||||||
this.#ctx.beginPath()
|
this._ctx.beginPath()
|
||||||
this.#ctx.arc(x, y, radius, 0, 2 * Math.PI)
|
this._ctx.arc(x, y, radius, 0, 2 * Math.PI)
|
||||||
this.#ctx.fill()
|
this._ctx.fill()
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -582,7 +585,7 @@ class CanvasAPI extends Module {
|
||||||
* @param {number} h
|
* @param {number} h
|
||||||
*/
|
*/
|
||||||
fillRect(x, y, w, h) {
|
fillRect(x, y, w, h) {
|
||||||
this.#ctx.fillRect(x, y, w, h)
|
this._ctx.fillRect(x, y, w, h)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -25,10 +25,6 @@ globalThis.Modules = globalThis.Modules || {}
|
||||||
* Base class for global APIs in runtime.
|
* Base class for global APIs in runtime.
|
||||||
*/
|
*/
|
||||||
export class Module {
|
export class Module {
|
||||||
/** @type {string} */
|
|
||||||
#name
|
|
||||||
/** @type {Object.<string, (Interface|string|number|boolean)>} */
|
|
||||||
#initializationParameters
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -37,8 +33,8 @@ export class Module {
|
||||||
*/
|
*/
|
||||||
constructor(name, initializationParameters = {}) {
|
constructor(name, initializationParameters = {}) {
|
||||||
console.log(`Loading module ${name}...`)
|
console.log(`Loading module ${name}...`)
|
||||||
this.#name = name
|
this.__name = name
|
||||||
this.#initializationParameters = initializationParameters
|
this.__initializationParameters = initializationParameters
|
||||||
this.initialized = false
|
this.initialized = false
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -49,15 +45,15 @@ export class Module {
|
||||||
*/
|
*/
|
||||||
initialize(options) {
|
initialize(options) {
|
||||||
if(this.initialized)
|
if(this.initialized)
|
||||||
throw new Error(`Cannot reinitialize module ${this.#name}.`)
|
throw new Error(`Cannot reinitialize module ${this.__name}.`)
|
||||||
console.log(`Initializing ${this.#name}...`)
|
console.log(`Initializing ${this.__name}...`)
|
||||||
for(const [name, value] of Object.entries(this.#initializationParameters)) {
|
for(const [name, value] of Object.entries(this.__initializationParameters)) {
|
||||||
if(!options.hasOwnProperty(name))
|
if(!options.hasOwnProperty(name))
|
||||||
throw new Error(`Option '${name}' of initialize of module ${this.#name} does not exist.`)
|
throw new Error(`Option '${name}' of initialize of module ${this.__name} does not exist.`)
|
||||||
if(typeof value === "function" && value.prototype instanceof Interface)
|
if(typeof value === "function" && value.prototype instanceof Interface)
|
||||||
Interface.check_implementation(value, options[name])
|
Interface.check_implementation(value, options[name])
|
||||||
else if(typeof value !== typeof options[name])
|
else if(typeof value !== typeof options[name])
|
||||||
throw new Error(`Option '${name}' of initialize of module ${this.#name} is not a '${value}' (${typeof options[name]}).`)
|
throw new Error(`Option '${name}' of initialize of module ${this.__name} is not a '${value}' (${typeof options[name]}).`)
|
||||||
}
|
}
|
||||||
this.initialized = true
|
this.initialized = true
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,17 +35,15 @@ const evalVariables = {
|
||||||
}
|
}
|
||||||
|
|
||||||
class ExprParserAPI extends Module {
|
class ExprParserAPI extends Module {
|
||||||
#parser = new Parser()
|
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
super("ExprParser")
|
super("ExprParser")
|
||||||
this.currentVars = {}
|
this.currentVars = {}
|
||||||
this.#parser = new Parser()
|
this._parser = new Parser()
|
||||||
|
|
||||||
this.#parser.consts = Object.assign({}, this.#parser.consts, evalVariables)
|
this._parser.consts = Object.assign({}, this._parser.consts, evalVariables)
|
||||||
|
|
||||||
this.#parser.functions.integral = this.integral.bind(this)
|
this._parser.functions.integral = this.integral.bind(this)
|
||||||
this.#parser.functions.derivative = this.derivative.bind(this)
|
this._parser.functions.derivative = this.derivative.bind(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -70,7 +68,7 @@ class ExprParserAPI extends Module {
|
||||||
[f, variable] = args
|
[f, variable] = args
|
||||||
if(typeof f !== "string" || typeof variable !== "string")
|
if(typeof f !== "string" || typeof variable !== "string")
|
||||||
throw EvalError(qsTranslate("usage", "Usage:\n%1").arg(usage2))
|
throw EvalError(qsTranslate("usage", "Usage:\n%1").arg(usage2))
|
||||||
f = this.#parser.parse(f).toJSFunction(variable, this.currentVars)
|
f = this._parser.parse(f).toJSFunction(variable, this.currentVars)
|
||||||
} else
|
} else
|
||||||
throw EvalError(qsTranslate("usage", "Usage:\n%1\n%2").arg(usage1).arg(usage2))
|
throw EvalError(qsTranslate("usage", "Usage:\n%1\n%2").arg(usage1).arg(usage2))
|
||||||
return f
|
return f
|
||||||
|
@ -81,7 +79,7 @@ class ExprParserAPI extends Module {
|
||||||
* @returns {ExprEvalExpression}
|
* @returns {ExprEvalExpression}
|
||||||
*/
|
*/
|
||||||
parse(expression) {
|
parse(expression) {
|
||||||
return this.#parser.parse(expression)
|
return this._parser.parse(expression)
|
||||||
}
|
}
|
||||||
|
|
||||||
integral(a, b, ...args) {
|
integral(a, b, ...args) {
|
||||||
|
|
|
@ -24,12 +24,6 @@ import { DialogInterface, RootInterface, SettingsInterface } from "./interface.m
|
||||||
|
|
||||||
|
|
||||||
class IOAPI extends Module {
|
class IOAPI extends Module {
|
||||||
/** @type {RootInterface} */
|
|
||||||
#rootElement
|
|
||||||
/** @type {SettingsInterface} */
|
|
||||||
#settings
|
|
||||||
/** @type {{show: function(string)}} */
|
|
||||||
#alert
|
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
super("IO", {
|
super("IO", {
|
||||||
|
@ -52,9 +46,9 @@ class IOAPI extends Module {
|
||||||
*/
|
*/
|
||||||
initialize({ root, settings, alert }) {
|
initialize({ root, settings, alert }) {
|
||||||
super.initialize({ root, settings, alert })
|
super.initialize({ root, settings, alert })
|
||||||
this.#rootElement = root
|
this.rootElement = root
|
||||||
this.#settings = settings
|
this.settings = settings
|
||||||
this.#alert = alert
|
this.alert = alert
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -75,27 +69,27 @@ class IOAPI extends Module {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
let settings = {
|
let settings = {
|
||||||
"xzoom": this.#settings.xzoom,
|
"xzoom": this.settings.xzoom,
|
||||||
"yzoom": this.#settings.yzoom,
|
"yzoom": this.settings.yzoom,
|
||||||
"xmin": this.#settings.xmin,
|
"xmin": this.settings.xmin,
|
||||||
"ymax": this.#settings.ymax,
|
"ymax": this.settings.ymax,
|
||||||
"xaxisstep": this.#settings.xaxisstep,
|
"xaxisstep": this.settings.xaxisstep,
|
||||||
"yaxisstep": this.#settings.yaxisstep,
|
"yaxisstep": this.settings.yaxisstep,
|
||||||
"xaxislabel": this.#settings.xlabel,
|
"xaxislabel": this.settings.xlabel,
|
||||||
"yaxislabel": this.#settings.ylabel,
|
"yaxislabel": this.settings.ylabel,
|
||||||
"logscalex": this.#settings.logscalex,
|
"logscalex": this.settings.logscalex,
|
||||||
"linewidth": this.#settings.linewidth,
|
"linewidth": this.settings.linewidth,
|
||||||
"showxgrad": this.#settings.showxgrad,
|
"showxgrad": this.settings.showxgrad,
|
||||||
"showygrad": this.#settings.showygrad,
|
"showygrad": this.settings.showygrad,
|
||||||
"textsize": this.#settings.textsize,
|
"textsize": this.settings.textsize,
|
||||||
"history": History.serialize(),
|
"history": History.serialize(),
|
||||||
"width": this.#rootElement.width,
|
"width": this.rootElement.width,
|
||||||
"height": this.#rootElement.height,
|
"height": this.rootElement.height,
|
||||||
"objects": objs,
|
"objects": objs,
|
||||||
"type": "logplotv1"
|
"type": "logplotv1"
|
||||||
}
|
}
|
||||||
Helper.write(filename, JSON.stringify(settings))
|
Helper.write(filename, JSON.stringify(settings))
|
||||||
this.#alert.show(qsTranslate("io", "Saved plot to '%1'.").arg(filename.split("/").pop()))
|
this.alert.show(qsTranslate("io", "Saved plot to '%1'.").arg(filename.split("/").pop()))
|
||||||
History.history.saved = true
|
History.history.saved = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -107,32 +101,32 @@ class IOAPI extends Module {
|
||||||
if(!this.initialized) throw new Error("Attempting loadDiagram before initialize!")
|
if(!this.initialized) throw new Error("Attempting loadDiagram before initialize!")
|
||||||
if(!History.initialized) throw new Error("Attempting loadDiagram before history is initialized!")
|
if(!History.initialized) throw new Error("Attempting loadDiagram before history is initialized!")
|
||||||
let basename = filename.split("/").pop()
|
let basename = filename.split("/").pop()
|
||||||
this.#alert.show(qsTranslate("io", "Loading file '%1'.").arg(basename))
|
this.alert.show(qsTranslate("io", "Loading file '%1'.").arg(basename))
|
||||||
let data = JSON.parse(Helper.load(filename))
|
let data = JSON.parse(Helper.load(filename))
|
||||||
let error = ""
|
let error = ""
|
||||||
if(data.hasOwnProperty("type") && data["type"] === "logplotv1") {
|
if(data.hasOwnProperty("type") && data["type"] === "logplotv1") {
|
||||||
History.clear()
|
History.clear()
|
||||||
// Importing settings
|
// Importing settings
|
||||||
this.#settings.saveFilename = filename
|
this.settings.saveFilename = filename
|
||||||
this.#settings.xzoom = parseFloat(data["xzoom"]) || 100
|
this.settings.xzoom = parseFloat(data["xzoom"]) || 100
|
||||||
this.#settings.yzoom = parseFloat(data["yzoom"]) || 10
|
this.settings.yzoom = parseFloat(data["yzoom"]) || 10
|
||||||
this.#settings.xmin = parseFloat(data["xmin"]) || 5 / 10
|
this.settings.xmin = parseFloat(data["xmin"]) || 5 / 10
|
||||||
this.#settings.ymax = parseFloat(data["ymax"]) || 24
|
this.settings.ymax = parseFloat(data["ymax"]) || 24
|
||||||
this.#settings.xaxisstep = data["xaxisstep"] || "4"
|
this.settings.xaxisstep = data["xaxisstep"] || "4"
|
||||||
this.#settings.yaxisstep = data["yaxisstep"] || "4"
|
this.settings.yaxisstep = data["yaxisstep"] || "4"
|
||||||
this.#settings.xlabel = data["xaxislabel"] || ""
|
this.settings.xlabel = data["xaxislabel"] || ""
|
||||||
this.#settings.ylabel = data["yaxislabel"] || ""
|
this.settings.ylabel = data["yaxislabel"] || ""
|
||||||
this.#settings.logscalex = data["logscalex"] === true
|
this.settings.logscalex = data["logscalex"] === true
|
||||||
if("showxgrad" in data)
|
if("showxgrad" in data)
|
||||||
this.#settings.showxgrad = data["showxgrad"]
|
this.settings.showxgrad = data["showxgrad"]
|
||||||
if("showygrad" in data)
|
if("showygrad" in data)
|
||||||
this.#settings.textsize = data["showygrad"]
|
this.settings.textsize = data["showygrad"]
|
||||||
if("linewidth" in data)
|
if("linewidth" in data)
|
||||||
this.#settings.linewidth = data["linewidth"]
|
this.settings.linewidth = data["linewidth"]
|
||||||
if("textsize" in data)
|
if("textsize" in data)
|
||||||
this.#settings.textsize = data["textsize"]
|
this.settings.textsize = data["textsize"]
|
||||||
this.#rootElement.height = parseFloat(data["height"]) || 500
|
this.rootElement.height = parseFloat(data["height"]) || 500
|
||||||
this.#rootElement.width = parseFloat(data["width"]) || 1000
|
this.rootElement.width = parseFloat(data["width"]) || 1000
|
||||||
|
|
||||||
// Importing objects
|
// Importing objects
|
||||||
Objects.currentObjects = {}
|
Objects.currentObjects = {}
|
||||||
|
@ -164,18 +158,18 @@ class IOAPI extends Module {
|
||||||
History.unserialize(...data["history"])
|
History.unserialize(...data["history"])
|
||||||
|
|
||||||
// Refreshing sidebar
|
// Refreshing sidebar
|
||||||
this.#rootElement.updateObjectsLists()
|
this.rootElement.updateObjectsLists()
|
||||||
} else {
|
} else {
|
||||||
error = qsTranslate("io", "Invalid file provided.")
|
error = qsTranslate("io", "Invalid file provided.")
|
||||||
}
|
}
|
||||||
if(error !== "") {
|
if(error !== "") {
|
||||||
console.log(error)
|
console.log(error)
|
||||||
this.#alert.show(qsTranslate("io", "Could not load file: ") + error)
|
this.alert.show(qsTranslate("io", "Could not load file: ") + error)
|
||||||
// TODO: Error handling
|
// TODO: Error handling
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
Canvas.redraw()
|
Canvas.redraw()
|
||||||
this.#alert.show(qsTranslate("io", "Loaded file '%1'.").arg(basename))
|
this.alert.show(qsTranslate("io", "Loaded file '%1'.").arg(basename))
|
||||||
History.history.saved = true
|
History.history.saved = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -60,9 +60,6 @@ class LatexRenderResult {
|
||||||
}
|
}
|
||||||
|
|
||||||
class LatexAPI extends Module {
|
class LatexAPI extends Module {
|
||||||
/** @type {LatexInterface} */
|
|
||||||
#latex = null
|
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
super("Latex", {
|
super("Latex", {
|
||||||
latex: LatexInterface,
|
latex: LatexInterface,
|
||||||
|
@ -80,7 +77,8 @@ class LatexAPI extends Module {
|
||||||
*/
|
*/
|
||||||
initialize({ latex, helper }) {
|
initialize({ latex, helper }) {
|
||||||
super.initialize({ latex, helper })
|
super.initialize({ latex, helper })
|
||||||
this.#latex = latex
|
this.latex = latex
|
||||||
|
this.helper = helper
|
||||||
this.enabled = helper.getSettingBool("enable_latex")
|
this.enabled = helper.getSettingBool("enable_latex")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -95,7 +93,7 @@ class LatexAPI extends Module {
|
||||||
*/
|
*/
|
||||||
findPrerendered(markup, fontSize, color) {
|
findPrerendered(markup, fontSize, color) {
|
||||||
if(!this.initialized) throw new Error("Attempting findPrerendered before initialize!")
|
if(!this.initialized) throw new Error("Attempting findPrerendered before initialize!")
|
||||||
const data = this.#latex.findPrerendered(markup, fontSize, color)
|
const data = this.latex.findPrerendered(markup, fontSize, color)
|
||||||
let ret = null
|
let ret = null
|
||||||
if(data !== "")
|
if(data !== "")
|
||||||
ret = new LatexRenderResult(...data.split(","))
|
ret = new LatexRenderResult(...data.split(","))
|
||||||
|
@ -112,7 +110,7 @@ class LatexAPI extends Module {
|
||||||
*/
|
*/
|
||||||
async requestAsyncRender(markup, fontSize, color) {
|
async requestAsyncRender(markup, fontSize, color) {
|
||||||
if(!this.initialized) throw new Error("Attempting requestAsyncRender before initialize!")
|
if(!this.initialized) throw new Error("Attempting requestAsyncRender before initialize!")
|
||||||
let args = this.#latex.render(markup, fontSize, color).split(",")
|
let args = this.latex.render(markup, fontSize, color).split(",")
|
||||||
return new LatexRenderResult(...args)
|
return new LatexRenderResult(...args)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,9 +20,6 @@ import General from "../preferences/general.mjs"
|
||||||
import Editor from "../preferences/expression.mjs"
|
import Editor from "../preferences/expression.mjs"
|
||||||
import DefaultGraph from "../preferences/default.mjs"
|
import DefaultGraph from "../preferences/default.mjs"
|
||||||
|
|
||||||
/**
|
|
||||||
* Module for application wide settings.
|
|
||||||
*/
|
|
||||||
class PreferencesAPI extends Module {
|
class PreferencesAPI extends Module {
|
||||||
constructor() {
|
constructor() {
|
||||||
super("Preferences")
|
super("Preferences")
|
||||||
|
|
Loading…
Reference in a new issue