add strikethrough

This commit is contained in:
GenevensiS
2025-12-28 16:49:51 +01:00
parent 5c1b7b9dfc
commit 5390a032fc
36 changed files with 275 additions and 87 deletions
+15 -1
View File
@@ -86,6 +86,8 @@ menu:
bold: 粗体 Ctrl+B bold: 粗体 Ctrl+B
italic: 斜体 Ctrl+I italic: 斜体 Ctrl+I
underline: 强调 Ctrl+U underline: 强调 Ctrl+U
#TODO: Localize
strikethrough: Strikethrough
symbols: 符号 Ctrl+M symbols: 符号 Ctrl+M
reminder text: 提示文本 Ctrl+R reminder text: 提示文本 Ctrl+R
insert symbol: 插入符号 insert symbol: 插入符号
@@ -225,6 +227,8 @@ help:
bold: 将所选文字设为粗体 bold: 将所选文字设为粗体
italic: 将所选文字设为斜体 italic: 将所选文字设为斜体
underline: 为选定的文本添加下划线 underline: 为选定的文本添加下划线
#TODO: Localize
strikethrough: Makes the selected text struck through
symbols: 将所选文字改成符号 symbols: 将所选文字改成符号
reminder text: 对选择的关键词显示提示文本 reminder text: 对选择的关键词显示提示文本
@@ -459,6 +463,8 @@ tooltip:
bold: 粗体 bold: 粗体
italic: 斜体 italic: 斜体
underline: 强调 underline: 强调
#TODO: Localize
strikethrough: Strikethrough
symbols: 系列符号 symbols: 系列符号
reminder text: 提示文本 reminder text: 提示文本
@@ -989,9 +995,17 @@ error:
#TODO: Localize Section #TODO: Localize Section
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
#TODO: Localize
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
#TODO: Localize
can't download image: Failed to download image: '%s'
#TODO: Localize
import not image: Filepath does not point to an image: '%s'
#TODO: Localize
download not image: URL does not point to an image: '%s'
# card creation # card creation
#TODO: Localize Section #TODO: Localize Section
@@ -999,7 +1013,7 @@ error:
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
+15 -1
View File
@@ -86,6 +86,8 @@ menu:
bold: 粗體 Ctrl+B bold: 粗體 Ctrl+B
italic: 斜體 Ctrl+I italic: 斜體 Ctrl+I
underline: 強調 Ctrl+U underline: 強調 Ctrl+U
#TODO: Localize
strikethrough: Strikethrough
symbols: 符號 Ctrl+M symbols: 符號 Ctrl+M
reminder text: 提示文本 Ctrl+R reminder text: 提示文本 Ctrl+R
insert symbol: 插入符號 insert symbol: 插入符號
@@ -225,6 +227,8 @@ help:
bold: 將所選文字設為粗體 bold: 將所選文字設為粗體
italic: 將所選文字設為斜體 italic: 將所選文字設為斜體
underline: 為選定的文字新增底線 underline: 為選定的文字新增底線
#TODO: Localize
strikethrough: Makes the selected text struck through
symbols: 將所選文字改成符號 symbols: 將所選文字改成符號
reminder text: 對選擇的關鍵詞顯示提示文本 reminder text: 對選擇的關鍵詞顯示提示文本
@@ -457,6 +461,8 @@ tooltip:
bold: 粗體 bold: 粗體
italic: 斜體 italic: 斜體
underline: 強調 underline: 強調
#TODO: Localize
strikethrough: Strikethrough
symbols: 系列符號 symbols: 系列符號
reminder text: 提示文本 reminder text: 提示文本
@@ -987,9 +993,17 @@ error:
#TODO: Localize Section #TODO: Localize Section
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
#TODO: Localize
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
#TODO: Localize
can't download image: Failed to download image: '%s'
#TODO: Localize
import not image: Filepath does not point to an image: '%s'
#TODO: Localize
download not image: URL does not point to an image: '%s'
# card creation # card creation
#TODO: Localize Section #TODO: Localize Section
@@ -997,7 +1011,7 @@ error:
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
+15 -1
View File
@@ -90,6 +90,8 @@ menu:
bold: &Fed Ctrl+B bold: &Fed Ctrl+B
italic: &Kursiv Ctrl+I italic: &Kursiv Ctrl+I
underline: &Understrege Ctrl+U underline: &Understrege Ctrl+U
#TODO: Localize
strikethrough: Strikethrough
symbols: &Symboler Ctrl+M symbols: &Symboler Ctrl+M
reminder text: &Nøgleordspåmindelser Ctrl+R reminder text: &Nøgleordspåmindelser Ctrl+R
insert symbol: I&ndsæt Symbol insert symbol: I&ndsæt Symbol
@@ -231,6 +233,8 @@ help:
bold: Gør den valgte tekst fed bold: Gør den valgte tekst fed
italic: Gør den valgte tekst kursiv italic: Gør den valgte tekst kursiv
underline: Gør den markerede tekst understreget underline: Gør den markerede tekst understreget
#TODO: Localize
strikethrough: Makes the selected text struck through
symbols: Teksten er som Magic-symboler symbols: Teksten er som Magic-symboler
reminder text: Viser huskeregler i teksten reminder text: Viser huskeregler i teksten
@@ -468,6 +472,8 @@ tooltip:
bold: Fed bold: Fed
italic: Kursiv italic: Kursiv
underline: Understrege underline: Understrege
#TODO: Localize
strikethrough: Strikethrough
symbols: Symboler symbols: Symboler
reminder text: Huskeregler reminder text: Huskeregler
@@ -1011,9 +1017,17 @@ error:
#TODO: Localize Section #TODO: Localize Section
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
#TODO: Localize
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
#TODO: Localize
can't download image: Failed to download image: '%s'
#TODO: Localize
import not image: Filepath does not point to an image: '%s'
#TODO: Localize
download not image: URL does not point to an image: '%s'
# card creation # card creation
#TODO: Localize Section #TODO: Localize Section
@@ -1021,7 +1035,7 @@ error:
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
+11 -4
View File
@@ -81,6 +81,7 @@ menu:
bold: &Fett Ctrl+B bold: &Fett Ctrl+B
italic: &Kursiv Ctrl+I italic: &Kursiv Ctrl+I
underline: Unterstreichen Ctrl+U underline: Unterstreichen Ctrl+U
strikethrough: Durchgestrichen
symbols: &Symbole Ctrl+M symbols: &Symbole Ctrl+M
reminder text: Reminder-Text Ctrl+R reminder text: Reminder-Text Ctrl+R
insert symbol: Sy&mbol einfügen insert symbol: Sy&mbol einfügen
@@ -212,9 +213,10 @@ help:
remove keyword: Löscht die markierte Fähigkeit remove keyword: Löscht die markierte Fähigkeit
# format menu # format menu
bold: Formatiert den Text Fett bold: Markierten Text fett formatieren
italic: Formatiert den Text Kursiv italic: Markierten Text kursiv formatieren
underline: Unterstreicht den ausgewählten Text underline: Markierten Text unterstreichen
strikethrough: Markierten Text durchstreichen
symbols: Formatiert den Text als Symbol symbols: Formatiert den Text als Symbol
reminder text: Zeige den Reminder-Text für die gewählte Fähigkeit an reminder text: Zeige den Reminder-Text für die gewählte Fähigkeit an
@@ -443,6 +445,7 @@ tooltip:
bold: Fett bold: Fett
italic: Krusiv italic: Krusiv
underline: Unterstreichen underline: Unterstreichen
strikethrough: Durchstreichen
symbols: Symbole symbols: Symbole
reminder text: Reminder-Text reminder text: Reminder-Text
@@ -943,16 +946,20 @@ error:
# image import # image import
import not found: Datei nicht gefunden: '%s' import not found: Datei nicht gefunden: '%s'
can't import image without set: Vor dem Importieren muss zuerst eine Edition gespeichert oder geladen werden: '%s' can't import image without set: Vor dem Importieren muss zuerst eine Edition gespeichert oder geladen werden: '%s'
can't download image without set: Vor dem Herunterladen muss zuerst eine Edition gespeichert oder geladen werden: '%s'
can't create file stream: Datei konnte nicht erstellt werden: '%s' can't create file stream: Datei konnte nicht erstellt werden: '%s'
can't write image to set: Bild konnte nicht ins Edition geschrieben werden: '%s' can't write image to set: Bild konnte nicht ins Edition geschrieben werden: '%s'
can't import image: Bild konnte nicht importiert werden: '%s' can't import image: Bild konnte nicht importiert werden: '%s'
can't download image: Bild konnte nicht heruntergeladen werden: '%s'
import not image: Dateipfad verweist nicht auf ein Bild: '%s'
download not image: URL verweist nicht auf ein Bild: '%s'
# card creation # card creation
no field with name: %s-Feld mit dem Namen '%s' konnte nicht gefunden werden. no field with name: %s-Feld mit dem Namen '%s' konnte nicht gefunden werden.
styling data not map: Der angegebene Wert für '%s_data' ist keine Zuordnungstabelle. styling data not map: Der angegebene Wert für '%s_data' ist keine Zuordnungstabelle.
styling data without stylesheet: Ein Wert für '%s_data' wurde angegeben, bevor ein Stil festgelegt wurde. styling data without stylesheet: Ein Wert für '%s_data' wurde angegeben, bevor ein Stil festgelegt wurde.
cant set value: Der Kartenwert '%s' kann nicht festgelegt werden, da er nicht den richtigen Typ hat. cant set value: Der Kartenwert '%s' kann nicht festgelegt werden, da er nicht den richtigen Typ hat.
cant set image value: Bildwert kann nur mit einem relativen Dateinamen aus dem Paket oder mit der Funktion 'import_image' festgelegt werden (im Feld '%s'). cant set image value: Bildwert kann nur mit einem relativen Dateinamen aus dem Paket oder mit die Funktionen 'import_image'/'download_image' festgelegt werden (im Feld '%s').
cant set symbol value: Symbolwert kann nur mit einem relativen Dateinamen aus dem Paket festgelegt werden (im Feld '%s'). cant set symbol value: Symbolwert kann nur mit einem relativen Dateinamen aus dem Paket festgelegt werden (im Feld '%s').
add card csv file not found: Die CSV- oder TSV-Datei konnte nicht gefunden oder geladen werden. add card csv file not found: Die CSV- oder TSV-Datei konnte nicht gefunden oder geladen werden.
add card csv file malformed: Die CSV- oder TSV-Datei ist fehlerhaft. Die Zeile '%s' enthält nicht die gleiche Anzahl von Einträgen wie die erste Zeile. add card csv file malformed: Die CSV- oder TSV-Datei ist fehlerhaft. Die Zeile '%s' enthält nicht die gleiche Anzahl von Einträgen wie die erste Zeile.
+8 -1
View File
@@ -81,6 +81,7 @@ menu:
bold: &Bold Ctrl+B bold: &Bold Ctrl+B
italic: &Italic Ctrl+I italic: &Italic Ctrl+I
underline: &Underline Ctrl+U underline: &Underline Ctrl+U
strikethrough: Strikethrough
symbols: &Symbols Ctrl+M symbols: &Symbols Ctrl+M
reminder text: &Reminder Text Ctrl+R reminder text: &Reminder Text Ctrl+R
insert symbol: I&nsert Symbol insert symbol: I&nsert Symbol
@@ -215,6 +216,7 @@ help:
bold: Makes the selected text bold bold: Makes the selected text bold
italic: Makes the selected text italic italic: Makes the selected text italic
underline: Makes the selected text underlined underline: Makes the selected text underlined
strikethrough: Makes the selected text struck through
symbols: Draws the selected text with symbols symbols: Draws the selected text with symbols
reminder text: Show reminder text for the selected keyword reminder text: Show reminder text for the selected keyword
@@ -444,6 +446,7 @@ tooltip:
bold: Bold bold: Bold
italic: Italic italic: Italic
underline: Underline underline: Underline
strikethrough: Strikethrough
symbols: Symbols symbols: Symbols
reminder text: Reminder Text reminder text: Reminder Text
@@ -947,16 +950,20 @@ error:
# image import # image import
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
can't download image: Failed to download image: '%s'
import not image: Filepath does not point to an image: '%s'
download not image: URL does not point to an image: '%s'
# card creation # card creation
no field with name: Could not find %s field named '%s' no field with name: Could not find %s field named '%s'
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
+15 -1
View File
@@ -86,6 +86,8 @@ menu:
bold: &Negrita Ctrl+B bold: &Negrita Ctrl+B
italic: &Cursiva Ctrl+I italic: &Cursiva Ctrl+I
underline: &Subrayado Ctrl+U underline: &Subrayado Ctrl+U
#TODO: Localize
strikethrough: Strikethrough
symbols: &Símbolos Ctrl+M symbols: &Símbolos Ctrl+M
reminder text: &Texto recordatorio Ctrl+R reminder text: &Texto recordatorio Ctrl+R
insert symbol: I&nsertar símbolo insert symbol: I&nsertar símbolo
@@ -225,6 +227,8 @@ help:
bold: Pone el texto seleccionado en negrita bold: Pone el texto seleccionado en negrita
italic: Pone el texto seleccionado en cursiva italic: Pone el texto seleccionado en cursiva
underline: Pone el texto seleccionado en subrayado underline: Pone el texto seleccionado en subrayado
#TODO: Localize
strikethrough: Makes the selected text struck through
symbols: Dibuja el texto seleccionado con símbolos symbols: Dibuja el texto seleccionado con símbolos
reminder text: Muestra el texto recordatorio de la Palabra Clave seleccionada reminder text: Muestra el texto recordatorio de la Palabra Clave seleccionada
@@ -459,6 +463,8 @@ tooltip:
bold: Negrita bold: Negrita
italic: Cursiva italic: Cursiva
underline: Subrayado underline: Subrayado
#TODO: Localize
strikethrough: Strikethrough
symbols: Símbolos symbols: Símbolos
reminder text: Texto recordatorio reminder text: Texto recordatorio
@@ -990,9 +996,17 @@ error:
#TODO: Localize Section #TODO: Localize Section
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
#TODO: Localize
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
#TODO: Localize
can't download image: Failed to download image: '%s'
#TODO: Localize
import not image: Filepath does not point to an image: '%s'
#TODO: Localize
download not image: URL does not point to an image: '%s'
# card creation # card creation
#TODO: Localize Section #TODO: Localize Section
@@ -1000,7 +1014,7 @@ error:
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
+8 -1
View File
@@ -81,6 +81,7 @@ menu:
bold: &Gras Ctrl+B bold: &Gras Ctrl+B
italic: &Italique Ctrl+I italic: &Italique Ctrl+I
underline: Souligné Ctrl+U underline: Souligné Ctrl+U
strikethrough: Barré
symbols: &Symboles Ctrl+M symbols: &Symboles Ctrl+M
reminder text: &Texte de rappel Ctrl+R reminder text: &Texte de rappel Ctrl+R
insert symbol: I&nsérer un Symbole insert symbol: I&nsérer un Symbole
@@ -215,6 +216,7 @@ help:
bold: Mettre le texte sélectionné en gras bold: Mettre le texte sélectionné en gras
italic: Mettre le texte sélectionné en italique italic: Mettre le texte sélectionné en italique
underline: Souligner le texte sélectionné underline: Souligner le texte sélectionné
strikethrough: Barrer le texte sélectionné
symbols: Mettre le texte selectionné en symboles symbols: Mettre le texte selectionné en symboles
reminder text: Afficher le texte de rappel pour le Mot-clef sélectionné reminder text: Afficher le texte de rappel pour le Mot-clef sélectionné
@@ -444,6 +446,7 @@ tooltip:
bold: Gras bold: Gras
italic: Italique italic: Italique
underline: Souligné underline: Souligné
strikethrough: Barré
symbols: Symboles symbols: Symboles
reminder text: Texte de rappel reminder text: Texte de rappel
@@ -944,16 +947,20 @@ error:
# image import # image import
import not found: Fichier non trouvé: '%s' import not found: Fichier non trouvé: '%s'
can't import image without set: Vous devez d'abord sauver ou ouvrir un Set avant d'importer le fichier: '%s' can't import image without set: Vous devez d'abord sauver ou ouvrir un Set avant d'importer le fichier: '%s'
can't download image without set: Vous devez d'abord sauver ou ouvrir un Set avant de télécharger le fichier: '%s'
can't create file stream: Échec de la création du fichier: '%s' can't create file stream: Échec de la création du fichier: '%s'
can't write image to set: Échec de la sauvegarde de l'image dans le Set: '%s' can't write image to set: Échec de la sauvegarde de l'image dans le Set: '%s'
can't import image: Échec de l'import de l'image: '%s' can't import image: Échec de l'import de l'image: '%s'
can't download image: Échec du téléchargement de l'image: '%s'
import not image: Le chemin ne contient pas une image: '%s'
download not image: L'URL ne contient pas une image: '%s'
# card creation # card creation
no field with name: Impossible de trouver le champ de %s nommé '%s' no field with name: Impossible de trouver le champ de %s nommé '%s'
styling data not map: La valeur donnée pour « %s_data » n'est pas un dictionnaire styling data not map: La valeur donnée pour « %s_data » n'est pas un dictionnaire
styling data without stylesheet: Valeur donnée pour « %s_data » avant la définition d'un Style styling data without stylesheet: Valeur donnée pour « %s_data » avant la définition d'un Style
cant set value: Impossible de définir la valeur de la carte '%s', son type est incorrect cant set value: Impossible de définir la valeur de la carte '%s', son type est incorrect
cant set image value: On ne peut définir la valeur d'une image qu'avec un nom de fichier relatif depuis le package, ou avec la fonction import_image (dans le champ '%s') cant set image value: On ne peut définir la valeur d'une image qu'avec un nom de fichier relatif depuis le package, ou avec les fonctions import_image/download_image (dans le champ '%s')
cant set symbol value: On ne peut définir la valeur d'un symbol qu'avec un nom de fichier relatif depuis le package (dans le champ '%s') cant set symbol value: On ne peut définir la valeur d'un symbol qu'avec un nom de fichier relatif depuis le package (dans le champ '%s')
add card csv file not found: Impossible de trouver ou charger le fichier CSV ou TSV spécifié add card csv file not found: Impossible de trouver ou charger le fichier CSV ou TSV spécifié
add card csv file malformed: Fichier CSV ou TSV malformé, la rangée '%s' n'a pas le même nombre d'entrées que la première rangée add card csv file malformed: Fichier CSV ou TSV malformé, la rangée '%s' n'a pas le même nombre d'entrées que la première rangée
+13 -6
View File
@@ -80,7 +80,8 @@ menu:
format: F&ormato format: F&ormato
bold: &Grassetto Ctrl+B bold: &Grassetto Ctrl+B
italic: &Corsivo Ctrl+I italic: &Corsivo Ctrl+I
underline: &Sottolineare Ctrl+U underline: &Sottolineato Ctrl+U
strikethrough: Barrato
symbols: &Simboli Ctrl+M symbols: &Simboli Ctrl+M
reminder text: &Promemoria Ctrl+R reminder text: &Promemoria Ctrl+R
insert symbol: I&nserisci Simbolo insert symbol: I&nserisci Simbolo
@@ -212,9 +213,10 @@ help:
remove keyword: Cancella la parola-chiave selezionata remove keyword: Cancella la parola-chiave selezionata
# format menu # format menu
bold: Applica il grassetto al testo selezionato bold: Imposta il testo selezionato in grassetto
italic: Applica il corsivo al testo selezionato italic: Imposta il testo selezionato in corsivo
underline: Sottolinea il testo selezionato underline: Imposta il testo selezionato sottolineato
strikethrough: Imposta il testo selezionato barrato
symbols: Trasforma il testo selezionato in simboli symbols: Trasforma il testo selezionato in simboli
reminder text: Mostra promemoria per la parola-chiave selezionata reminder text: Mostra promemoria per la parola-chiave selezionata
@@ -443,7 +445,8 @@ tooltip:
# format toolbar # format toolbar
bold: Grassetto bold: Grassetto
italic: Corsivo italic: Corsivo
underline: Sottolineare underline: Sottolineato
strikethrough: Barrato
symbols: Simboli symbols: Simboli
reminder text: Promemoria reminder text: Promemoria
@@ -944,16 +947,20 @@ error:
# image import # image import
import not found: File non trovato: '%s' import not found: File non trovato: '%s'
can't import image without set: È necessario salvare o caricare un set prima di importare il file: '%s' can't import image without set: È necessario salvare o caricare un set prima di importare il file: '%s'
can't download image without set: È necessario salvare o caricare un set prima di scaricare il file: '%s'
can't create file stream: Impossibile creare il file: '%s' can't create file stream: Impossibile creare il file: '%s'
can't write image to set: Impossibile scrivere l'immagine nel set: '%s' can't write image to set: Impossibile scrivere l'immagine nel set: '%s'
can't import image: Impossibile importare l'immagine: '%s' can't import image: Impossibile importare l'immagine: '%s'
can't download image: Impossibile scaricare l'immagine: '%s'
import not image: Il percorso del file non punta a un'immagine: '%s'
download not image: L'URL non punta a un'immagine: '%s'
# card creation # card creation
no field with name: Impossibile trovare il campo di %s denominato '%s' no field with name: Impossibile trovare il campo di %s denominato '%s'
styling data not map: Il valore specificato per '%s_data' non è un array associativo styling data not map: Il valore specificato per '%s_data' non è un array associativo
styling data without stylesheet: Valore specificato per '%s_data' prima dell'impostazione di un stile styling data without stylesheet: Valore specificato per '%s_data' prima dell'impostazione di un stile
cant set value: Impossibile impostare il valore della carta '%s', non è del tipo corretto cant set value: Impossibile impostare il valore della carta '%s', non è del tipo corretto
cant set image value: È possibile impostare il valore dell'immagine solo con un nome file relativo dall'interno del pacchetto, o con la funzione import_image, nel campo denominato '%s' cant set image value: È possibile impostare il valore dell'immagine solo con un nome file relativo dall'interno del pacchetto, o con le funzioni import_image/download_image, nel campo denominato '%s'
cant set symbol value: È possibile impostare il valore del simbolo solo con un nome file relativo dall'interno del pacchetto, nel campo denominato '%s' cant set symbol value: È possibile impostare il valore del simbolo solo con un nome file relativo dall'interno del pacchetto, nel campo denominato '%s'
add card csv file not found: Impossibile trovare o caricare il file CSV o TSV add card csv file not found: Impossibile trovare o caricare il file CSV o TSV
add card csv file malformed: File CSV o TSV non valido, la riga '%s' non ha lo stesso numero di voci della prima riga add card csv file malformed: File CSV o TSV non valido, la riga '%s' non ha lo stesso numero di voci della prima riga
+15 -1
View File
@@ -86,6 +86,8 @@ menu:
bold: &太字 Ctrl+B bold: &太字 Ctrl+B
italic: &斜体 Ctrl+I italic: &斜体 Ctrl+I
underline: 下線 Ctrl+U underline: 下線 Ctrl+U
#TODO: Localize
strikethrough: Strikethrough
symbols: &記号 Ctrl+M symbols: &記号 Ctrl+M
reminder text: &注釈文 Ctrl+R reminder text: &注釈文 Ctrl+R
insert symbol: 記号の挿入 insert symbol: 記号の挿入
@@ -225,6 +227,8 @@ help:
bold: 選択したテキストを太字(ボールド体)にします。 bold: 選択したテキストを太字(ボールド体)にします。
italic: 選択したテキストを斜体(イタリック体)にします。 italic: 選択したテキストを斜体(イタリック体)にします。
underline: 選択したテキストに下線を付けます underline: 選択したテキストに下線を付けます
#TODO: Localize
strikethrough: Makes the selected text struck through
symbols: 選択したテキストをマナ・シンボルなどのシンボルにします。 symbols: 選択したテキストをマナ・シンボルなどのシンボルにします。
reminder text: 選ばれたキーワード能力のための注釈文を表示させます。 reminder text: 選ばれたキーワード能力のための注釈文を表示させます。
@@ -458,6 +462,8 @@ tooltip:
bold: 太字 bold: 太字
italic: 斜体 italic: 斜体
underline: 下線 underline: 下線
#TODO: Localize
strikethrough: Strikethrough
symbols: シンボル symbols: シンボル
reminder text: 注釈文 reminder text: 注釈文
@@ -990,9 +996,17 @@ error:
#TODO: Localize Section #TODO: Localize Section
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
#TODO: Localize
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
#TODO: Localize
can't download image: Failed to download image: '%s'
#TODO: Localize
import not image: Filepath does not point to an image: '%s'
#TODO: Localize
download not image: URL does not point to an image: '%s'
# card creation # card creation
#TODO: Localize Section #TODO: Localize Section
@@ -1000,7 +1014,7 @@ error:
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
+15 -1
View File
@@ -86,6 +86,8 @@ menu:
bold: &굵게 Ctrl+B bold: &굵게 Ctrl+B
italic: &기울임꼴 Ctrl+I italic: &기울임꼴 Ctrl+I
underline: &밑줄 Ctrl+U underline: &밑줄 Ctrl+U
#TODO: Localize
strikethrough: Strikethrough
symbols: &기호 Ctrl+M symbols: &기호 Ctrl+M
reminder text: 키워드 설명 Ctrl+R reminder text: 키워드 설명 Ctrl+R
insert symbol: 기호 삽입 insert symbol: 기호 삽입
@@ -225,6 +227,8 @@ help:
bold: 선택한 텍스트를 굵게 만듭니다. bold: 선택한 텍스트를 굵게 만듭니다.
italic: 선택한 텍스트를 이탤릭체로 만듭니다. italic: 선택한 텍스트를 이탤릭체로 만듭니다.
underline: 선택한 텍스트에 밑줄을 그어줍니다. underline: 선택한 텍스트에 밑줄을 그어줍니다.
#TODO: Localize
strikethrough: Makes the selected text struck through
symbols: 선택한 텍스트를 기호로 변환 symbols: 선택한 텍스트를 기호로 변환
reminder text: 선택한 키워드에 대한 알림 텍스트 표시 reminder text: 선택한 키워드에 대한 알림 텍스트 표시
@@ -464,6 +468,8 @@ tooltip:
bold: 용감한 bold: 용감한
italic: 이탤릭체 italic: 이탤릭체
underline: 밑줄 underline: 밑줄
#TODO: Localize
strikethrough: Strikethrough
symbols: 기호 symbols: 기호
reminder text: 알림 텍스트 reminder text: 알림 텍스트
@@ -996,9 +1002,17 @@ error:
#TODO: Localize Section #TODO: Localize Section
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
#TODO: Localize
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
#TODO: Localize
can't download image: Failed to download image: '%s'
#TODO: Localize
import not image: Filepath does not point to an image: '%s'
#TODO: Localize
download not image: URL does not point to an image: '%s'
# card creation # card creation
#TODO: Localize Section #TODO: Localize Section
@@ -1006,7 +1020,7 @@ error:
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
+15 -1
View File
@@ -98,6 +98,8 @@ menu:
italic: &Kursywa Ctrl+I italic: &Kursywa Ctrl+I
#TODO: Localize #TODO: Localize
underline: &Underline Ctrl+U underline: &Underline Ctrl+U
#TODO: Localize
strikethrough: Strikethrough
symbols: &Symbole Ctrl+M symbols: &Symbole Ctrl+M
reminder text: &Tekst przypomnienia Ctrl+R reminder text: &Tekst przypomnienia Ctrl+R
insert symbol: &Wstaw symbol insert symbol: &Wstaw symbol
@@ -246,6 +248,8 @@ help:
italic: Pochyla zaznaczony tekst italic: Pochyla zaznaczony tekst
#TODO: Localize #TODO: Localize
underline: Makes the selected text underlined underline: Makes the selected text underlined
#TODO: Localize
strikethrough: Makes the selected text struck through
symbols: Rysuje zaznaczony tekst z symbolami symbols: Rysuje zaznaczony tekst z symbolami
reminder text: Pokazuj tekst przypomnienia dla wybranego słowa kluczowego reminder text: Pokazuj tekst przypomnienia dla wybranego słowa kluczowego
@@ -494,6 +498,8 @@ tooltip:
italic: Kursywa italic: Kursywa
#TODO: Localize #TODO: Localize
underline: Underline underline: Underline
#TODO: Localize
strikethrough: Strikethrough
symbols: Symbole symbols: Symbole
reminder text: Przypomnienie reminder text: Przypomnienie
@@ -1046,9 +1052,17 @@ error:
#TODO: Localize Section #TODO: Localize Section
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
#TODO: Localize
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
#TODO: Localize
can't download image: Failed to download image: '%s'
#TODO: Localize
import not image: Filepath does not point to an image: '%s'
#TODO: Localize
download not image: URL does not point to an image: '%s'
# card creation # card creation
#TODO: Localize Section #TODO: Localize Section
@@ -1056,7 +1070,7 @@ error:
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
+14 -7
View File
@@ -80,7 +80,8 @@ menu:
format: F&ormatar format: F&ormatar
bold: &Negrito Ctrl+B bold: &Negrito Ctrl+B
italic: &Italico Ctrl+I italic: &Italico Ctrl+I
underline: &Sublinhada Ctrl+U underline: &Sublinhado Ctrl+U
strikethrough: Riscado
symbols: &Simbolos Ctrl+M symbols: &Simbolos Ctrl+M
reminder text: &Texto Explicativo Ctrl+R reminder text: &Texto Explicativo Ctrl+R
insert symbol: I&nserir Símbolo insert symbol: I&nserir Símbolo
@@ -212,9 +213,10 @@ help:
remove keyword: Deleta a Palavra-Chave selecionada da lista. remove keyword: Deleta a Palavra-Chave selecionada da lista.
# format menu # format menu
bold: Faça o texto selecionado transformar-se em Negrito. bold: Colocar o texto selecionado em negrito
italic: Faça o texto selecionado transformar-se em Itálico. italic: Colocar o texto selecionado em itálico
underline: Torna o texto selecionado sublinhado underline: Colocar o texto selecionado em sublinhado
strikethrough: Colocar o texto selecionado riscado
symbols: Transforma uma parte do texto selecionada em simbolos. symbols: Transforma uma parte do texto selecionada em simbolos.
reminder text: Mostra ou oculta o Texto Explicativo de uma Palavra-Chave selecionado. reminder text: Mostra ou oculta o Texto Explicativo de uma Palavra-Chave selecionado.
@@ -444,7 +446,8 @@ tooltip:
# format toolbar # format toolbar
bold: Negrito bold: Negrito
italic: Itálico italic: Itálico
underline: Sublinhada underline: Sublinhado
strikethrough: Riscado
symbols: Simbolo symbols: Simbolo
reminder text: Texto Explicativo reminder text: Texto Explicativo
@@ -944,17 +947,21 @@ error:
# image import # image import
import not found: Arquivo não encontrado: '%s' import not found: Arquivo não encontrado: '%s'
can't import image without set: É necessário salvar ou carregar uma Edição antes de importar o arquivo: '%s' can't import image without set: É necessário primeiro salvar ou carregar uma Edição antes de importar o arquivo: '%s'
can't download image without set: É necessário primeiro salvar ou carregar uma Edição antes de baixar o arquivo: '%s'
can't create file stream: Falha ao criar o arquivo: '%s' can't create file stream: Falha ao criar o arquivo: '%s'
can't write image to set: Falha ao gravar a imagem na Edição: '%s' can't write image to set: Falha ao gravar a imagem na Edição: '%s'
can't import image: Falha ao importar a imagem: '%s' can't import image: Falha ao importar a imagem: '%s'
can't download image: Falha ao baixar a imagem: '%s'
import not image: O caminho do arquivo não aponta para uma imagem: '%s'
download not image: A URL não aponta para uma imagem: '%s'
# card creation # card creation
no field with name: Não foi possível encontrar o campo de %s chamado '%s' no field with name: Não foi possível encontrar o campo de %s chamado '%s'
styling data not map: O valor fornecido para '%s_data' não é um vetor associativo styling data not map: O valor fornecido para '%s_data' não é um vetor associativo
styling data without stylesheet: Um valor foi fornecido para '%s_data' antes de um estilo ser definido styling data without stylesheet: Um valor foi fornecido para '%s_data' antes de um estilo ser definido
cant set value: Não é possível definir o valor do cartão '%s', ele não é do tipo correto cant set value: Não é possível definir o valor do cartão '%s', ele não é do tipo correto
cant set image value: É possível definir o valor da imagem apenas com um nome de arquivo relativo de dentro do pacote ou com a função import_image, no campo chamado '%s' cant set image value: É possível definir o valor da imagem apenas com um nome de arquivo relativo de dentro do pacote ou com as funções import_image/download_image, no campo chamado '%s'
cant set symbol value: É possível definir o valor do símbolo apenas com um nome de arquivo relativo de dentro do pacote, no campo chamado '%s' cant set symbol value: É possível definir o valor do símbolo apenas com um nome de arquivo relativo de dentro do pacote, no campo chamado '%s'
add card csv file not found: Não foi possível encontrar ou carregar o arquivo CSV ou TSV add card csv file not found: Não foi possível encontrar ou carregar o arquivo CSV ou TSV
add card csv file malformed: Arquivo CSV ou TSV com formato incorreto, a linha '%s' não possui o mesmo número de entradas que a primeira linha add card csv file malformed: Arquivo CSV ou TSV com formato incorreto, a linha '%s' não possui o mesmo número de entradas que a primeira linha
+15 -1
View File
@@ -88,6 +88,8 @@ menu:
italic: Курсив Ctrl+I italic: Курсив Ctrl+I
#TODO: Localize #TODO: Localize
underline: &Underline Ctrl+U underline: &Underline Ctrl+U
#TODO: Localize
strikethrough: Strikethrough
symbols: Символ Ctrl+M symbols: Символ Ctrl+M
reminder text: Текст напоминания Ctrl+R reminder text: Текст напоминания Ctrl+R
insert symbol: Вставить символ insert symbol: Вставить символ
@@ -237,6 +239,8 @@ help:
italic: Сделать выделенный текст курсивом italic: Сделать выделенный текст курсивом
#TODO: Localize #TODO: Localize
underline: Makes the selected text underlined underline: Makes the selected text underlined
#TODO: Localize
strikethrough: Makes the selected text struck through
symbols: Отрисовать выделенный текст символами symbols: Отрисовать выделенный текст символами
reminder text: Показать текст напоминания для выбранного ключевого слова reminder text: Показать текст напоминания для выбранного ключевого слова
@@ -482,6 +486,8 @@ tooltip:
italic: Курсив italic: Курсив
#TODO: Localize #TODO: Localize
underline: Underline underline: Underline
#TODO: Localize
strikethrough: Strikethrough
symbols: Символ symbols: Символ
reminder text: Текст напоминания reminder text: Текст напоминания
@@ -1039,9 +1045,17 @@ error:
#TODO: Localize Section #TODO: Localize Section
import not found: File not found: '%s' import not found: File not found: '%s'
can't import image without set: Must first save or load a set file before importing file: '%s' can't import image without set: Must first save or load a set file before importing file: '%s'
#TODO: Localize
can't download image without set: Must first save or load a set file before downloading file: '%s'
can't create file stream: Failed to create file stream: '%s' can't create file stream: Failed to create file stream: '%s'
can't write image to set: Failed to write image to set: '%s' can't write image to set: Failed to write image to set: '%s'
can't import image: Failed to import image: '%s' can't import image: Failed to import image: '%s'
#TODO: Localize
can't download image: Failed to download image: '%s'
#TODO: Localize
import not image: Filepath does not point to an image: '%s'
#TODO: Localize
download not image: URL does not point to an image: '%s'
# card creation # card creation
#TODO: Localize Section #TODO: Localize Section
@@ -1049,7 +1063,7 @@ error:
styling data not map: Given value for '%s_data' is not a map styling data not map: Given value for '%s_data' is not a map
styling data without stylesheet: Given value for '%s_data' before a stylesheet was set styling data without stylesheet: Given value for '%s_data' before a stylesheet was set
cant set value: Can not set card value '%s', it is not of the right type cant set value: Can not set card value '%s', it is not of the right type
cant set image value: Can only set image value with a relative filename from within the package, or with the import_image function, in field named '%s' cant set image value: Can only set image value with a relative filename from within the package, or with the import_image/download_image functions, in field named '%s'
cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s' cant set symbol value: Can only set symbol value with a relative filename from within the package, in field named '%s'
add card csv file not found: Could not find or load the CSV or TSV file add card csv file not found: Could not find or load the CSV or TSV file
add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row add card csv file malformed: CSV or TSV file malformed, row '%s' does not have the same number of entries as the first row
Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 B

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 B

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 99 B

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

+3
View File
@@ -47,6 +47,8 @@ tool/italic IMAGE "tool/italic.png"
tool/dark_italic IMAGE "tool/dark_italic.png" tool/dark_italic IMAGE "tool/dark_italic.png"
tool/underline IMAGE "tool/underline.png" tool/underline IMAGE "tool/underline.png"
tool/dark_underline IMAGE "tool/dark_underline.png" tool/dark_underline IMAGE "tool/dark_underline.png"
tool/strikethrough IMAGE "tool/strikethrough.png"
tool/dark_strikethrough IMAGE "tool/dark_strikethrough.png"
tool/symbol IMAGE "tool/symbol.png" tool/symbol IMAGE "tool/symbol.png"
tool/dark_symbol IMAGE "tool/dark_symbol.png" tool/dark_symbol IMAGE "tool/dark_symbol.png"
tool/reminder IMAGE "tool/reminder.png" tool/reminder IMAGE "tool/reminder.png"
@@ -58,6 +60,7 @@ tool/card_add_multiple IMAGE "tool/card_add_multiple.png"
tool/card_modify_multiple IMAGE "tool/card_modify_multiple.png" tool/card_modify_multiple IMAGE "tool/card_modify_multiple.png"
tool/card_del IMAGE "tool/card_del.png" tool/card_del IMAGE "tool/card_del.png"
tool/card_link IMAGE "tool/card_link.png" tool/card_link IMAGE "tool/card_link.png"
tool/dark_card_link IMAGE "tool/dark_card_link.png"
tool/card_copy IMAGE "tool/card_copy.png" tool/card_copy IMAGE "tool/card_copy.png"
tool/card_rotate IMAGE "tool/card_rotate.png" tool/card_rotate IMAGE "tool/card_rotate.png"
tool/card_rotate_0 IMAGE "tool/card_rotate_0.png" tool/card_rotate_0 IMAGE "tool/card_rotate_0.png"
+29 -18
View File
@@ -18,6 +18,7 @@ Font::Font()
: name() : name()
, size(1) , size(1)
, underline(false) , underline(false)
, strikethrough(false)
, scale_down_to(100000) , scale_down_to(100000)
, max_stretch(1.0) , max_stretch(1.0)
, color(Color(0,0,0)) , color(Color(0,0,0))
@@ -83,13 +84,14 @@ void Font::TallyResourceFonts(String fontsDirectoryPath, vector<String>& fontFil
bool Font::update(Context& ctx) { bool Font::update(Context& ctx) {
bool changes = false; bool changes = false;
changes |= name .update(ctx); changes |= name .update(ctx);
changes |= italic_name .update(ctx); changes |= italic_name .update(ctx);
changes |= size .update(ctx); changes |= size .update(ctx);
changes |= weight .update(ctx); changes |= weight .update(ctx);
changes |= style .update(ctx); changes |= style .update(ctx);
changes |= underline .update(ctx); changes |= underline .update(ctx);
changes |= color .update(ctx); changes |= strikethrough .update(ctx);
changes |= color .update(ctx);
changes |= shadow_color .update(ctx); changes |= shadow_color .update(ctx);
changes |= shadow_displacement_x.update(ctx); changes |= shadow_displacement_x.update(ctx);
changes |= shadow_displacement_y.update(ctx); changes |= shadow_displacement_y.update(ctx);
@@ -100,20 +102,21 @@ bool Font::update(Context& ctx) {
return changes; return changes;
} }
void Font::initDependencies(Context& ctx, const Dependency& dep) const { void Font::initDependencies(Context& ctx, const Dependency& dep) const {
name .initDependencies(ctx, dep); name .initDependencies(ctx, dep);
italic_name .initDependencies(ctx, dep); italic_name .initDependencies(ctx, dep);
size .initDependencies(ctx, dep); size .initDependencies(ctx, dep);
weight .initDependencies(ctx, dep); weight .initDependencies(ctx, dep);
style .initDependencies(ctx, dep); style .initDependencies(ctx, dep);
underline .initDependencies(ctx, dep); underline .initDependencies(ctx, dep);
color .initDependencies(ctx, dep); strikethrough .initDependencies(ctx, dep);
color .initDependencies(ctx, dep);
shadow_color .initDependencies(ctx, dep); shadow_color .initDependencies(ctx, dep);
shadow_displacement_x.initDependencies(ctx, dep); shadow_displacement_x.initDependencies(ctx, dep);
shadow_displacement_y.initDependencies(ctx, dep); shadow_displacement_y.initDependencies(ctx, dep);
shadow_blur .initDependencies(ctx, dep); shadow_blur .initDependencies(ctx, dep);
} }
FontP Font::make(int add_flags, bool add_underline, String const* other_family, Color const* other_color, double const* other_size) const { FontP Font::make(int add_flags, bool add_underline, bool add_strikethrough, String const* other_family, Color const* other_color, double const* other_size) const {
FontP f(new Font(*this)); FontP f(new Font(*this));
f->flags |= add_flags; f->flags |= add_flags;
if (add_flags & FONT_CODE_STRING) { if (add_flags & FONT_CODE_STRING) {
@@ -134,6 +137,9 @@ FontP Font::make(int add_flags, bool add_underline, String const* other_family,
if (add_underline) { if (add_underline) {
f->underline = true; f->underline = true;
} }
if (add_strikethrough) {
f->strikethrough = true;
}
if (other_color) { if (other_color) {
f->color = *other_color; f->color = *other_color;
} }
@@ -156,13 +162,16 @@ wxFont Font::toWxFont(double scale) const {
if (flags & FONT_CODE) { if (flags & FONT_CODE) {
if (size_i < 2) { if (size_i < 2) {
return wxFont(wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_TELETYPE, wxFONTSTYLE_NORMAL, weight_i, underline(), _("Courier New")); font = wxFont(wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_TELETYPE, wxFONTSTYLE_NORMAL, weight_i, underline(), _("Courier New"));
if (strikethrough()) font.MakeStrikethrough();
return font;
} else { } else {
font = wxFont(size_i, wxFONTFAMILY_TELETYPE, wxFONTSTYLE_NORMAL, weight_i, underline(), _("Courier New")); font = wxFont(size_i, wxFONTFAMILY_TELETYPE, wxFONTSTYLE_NORMAL, weight_i, underline(), _("Courier New"));
} }
} else if (name().empty()) { } else if (name().empty()) {
font = *wxNORMAL_FONT; font = *wxNORMAL_FONT;
font.SetPointSize(size > 1 ? size_i : int(scale * font.GetPointSize())); font.SetPointSize(size > 1 ? size_i : int(scale * font.GetPointSize()));
if (strikethrough()) font.MakeStrikethrough();
return font; return font;
} else if (flags & FONT_ITALIC && !italic_name().empty()) { } else if (flags & FONT_ITALIC && !italic_name().empty()) {
font = wxFont(size_i, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, weight_i, underline(), italic_name()); font = wxFont(size_i, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, weight_i, underline(), italic_name());
@@ -179,7 +188,8 @@ wxFont Font::toWxFont(double scale) const {
// make it independent of screen dpi, always use 96 dpi // make it independent of screen dpi, always use 96 dpi
// TODO: do something more sensible, and more portable // TODO: do something more sensible, and more portable
font.SetPixelSize(wxSize(0, -(int)(scale*size*96.0/72.0 + 0.5) )); font.SetPixelSize(wxSize(0, -(int)(scale*size*96.0/72.0 + 0.5) ));
#endif #endif
if (strikethrough()) font.MakeStrikethrough();
return font; return font;
} }
@@ -189,6 +199,7 @@ IMPLEMENT_REFLECTION_NO_SCRIPT(Font) {
REFLECT(weight); REFLECT(weight);
REFLECT(style); REFLECT(style);
REFLECT(underline); REFLECT(underline);
REFLECT(strikethrough);
REFLECT(italic_name); REFLECT(italic_name);
REFLECT(color); REFLECT(color);
REFLECT(scale_down_to); REFLECT(scale_down_to);
+2 -1
View File
@@ -38,6 +38,7 @@ public:
Scriptable<double> size; ///< Size of the font Scriptable<double> size; ///< Size of the font
Scriptable<String> weight, style; ///< Weight and style of the font (bold/italic) Scriptable<String> weight, style; ///< Weight and style of the font (bold/italic)
Scriptable<bool> underline; ///< Underlined? Scriptable<bool> underline; ///< Underlined?
Scriptable<bool> strikethrough; ///< Struck through?
double scale_down_to; ///< Smallest size to scale down to double scale_down_to; ///< Smallest size to scale down to
double max_stretch; ///< How much should the font be stretched before scaling down? double max_stretch; ///< How much should the font be stretched before scaling down?
Scriptable<Color> color; ///< Color to use Scriptable<Color> color; ///< Color to use
@@ -67,7 +68,7 @@ public:
} }
/// Add style to a font, and optionally change the font family, color and size /// Add style to a font, and optionally change the font family, color and size
FontP make(int add_flags, bool add_underline, String const* other_family, Color const* other_color, double const* other_size) const; FontP make(int add_flags, bool add_underline, bool add_strikethrough, String const* other_family, Color const* other_color, double const* other_size) const;
/// Convert this font to a wxFont /// Convert this font to a wxFont
wxFont toWxFont(double scale) const; wxFont toWxFont(double scale) const;
+1 -1
View File
@@ -650,7 +650,7 @@ void CardListBase::onContextMenu(wxContextMenuEvent&) {
m.AppendSeparator(); m.AppendSeparator();
add_menu_item_tr(&m, ID_CARD_ADD, "card_add", "add card"); add_menu_item_tr(&m, ID_CARD_ADD, "card_add", "add card");
add_menu_item_tr(&m, ID_CARD_REMOVE, "card_del", "remove card"); add_menu_item_tr(&m, ID_CARD_REMOVE, "card_del", "remove card");
add_menu_item_tr(&m, ID_CARD_LINK, "card_link", "link card"); add_menu_item_tr(&m, ID_CARD_LINK, settings.darkModePrefix() + "card_link", "link card");
PopupMenu(&m); PopupMenu(&m);
} }
} }
+9 -6
View File
@@ -136,7 +136,7 @@ CardsPanel::CardsPanel(Window* parent, int id)
add_menu_item(menuCard, ID_CARD_ADD_JSON, "card_add_multiple", _MENU_("add card json") + _(" "), _HELP_("add card json")); add_menu_item(menuCard, ID_CARD_ADD_JSON, "card_add_multiple", _MENU_("add card json") + _(" "), _HELP_("add card json"));
add_menu_item_tr(menuCard, ID_CARD_ADD, "card_add", "add_card"); add_menu_item_tr(menuCard, ID_CARD_ADD, "card_add", "add_card");
add_menu_item(menuCard, ID_CARD_REMOVE, "card_del", _MENU_("remove card")+_(" "), _HELP_("remove card")); add_menu_item(menuCard, ID_CARD_REMOVE, "card_del", _MENU_("remove card")+_(" "), _HELP_("remove card"));
add_menu_item(menuCard, ID_CARD_LINK, "card_link", _MENU_("link card") + _(" "), _HELP_("link card")); add_menu_item(menuCard, ID_CARD_LINK, settings.darkModePrefix() + "card_link", _MENU_("link card") + _(" "), _HELP_("link card"));
add_menu_item(menuCard, ID_CARD_AND_LINK_COPY, "card_copy", _MENU_("copy card and links") + _(" "), _HELP_("copy card and links")); add_menu_item(menuCard, ID_CARD_AND_LINK_COPY, "card_copy", _MENU_("copy card and links") + _(" "), _HELP_("copy card and links"));
add_menu_item(menuCard, ID_CARD_BULK, "card_modify_multiple", _MENU_("bulk modify") + _(" "), _HELP_("bulk modify")); add_menu_item(menuCard, ID_CARD_BULK, "card_modify_multiple", _MENU_("bulk modify") + _(" "), _HELP_("bulk modify"));
menuCard->AppendSeparator(); menuCard->AppendSeparator();
@@ -153,7 +153,8 @@ CardsPanel::CardsPanel(Window* parent, int id)
menuFormat = new wxMenu(); menuFormat = new wxMenu();
add_menu_item_tr(menuFormat, ID_FORMAT_BOLD, settings.darkModePrefix() + "bold", "bold", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_BOLD, settings.darkModePrefix() + "bold", "bold", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_ITALIC, settings.darkModePrefix() + "italic", "italic", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_ITALIC, settings.darkModePrefix() + "italic", "italic", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_UNDERLINE, settings.darkModePrefix() + "underline", "underline", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_UNDERLINE, settings.darkModePrefix() + "underline", "underline", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_STRIKETHROUGH, settings.darkModePrefix() + "strikethrough", "strikethrough", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_SYMBOL, settings.darkModePrefix() + "symbol", "symbols", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_SYMBOL, settings.darkModePrefix() + "symbol", "symbols", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", wxITEM_CHECK);
menuFormat->AppendSeparator(); menuFormat->AppendSeparator();
@@ -286,14 +287,15 @@ void CardsPanel::initUI(wxToolBar* tb, wxMenuBar* mb) {
// Toolbar // Toolbar
add_tool_tr(tb, ID_FORMAT_BOLD, settings.darkModePrefix() + "bold", "bold", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_BOLD, settings.darkModePrefix() + "bold", "bold", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_ITALIC, settings.darkModePrefix() + "italic", "italic", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_ITALIC, settings.darkModePrefix() + "italic", "italic", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_UNDERLINE, settings.darkModePrefix() + "underline", "underline", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_UNDERLINE, settings.darkModePrefix() + "underline", "underline", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_STRIKETHROUGH, settings.darkModePrefix() + "strikethrough", "strikethrough", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_SYMBOL, settings.darkModePrefix() + "symbol", "symbols", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_SYMBOL, settings.darkModePrefix() + "symbol", "symbols", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", false, wxITEM_CHECK);
tb->AddSeparator(); tb->AddSeparator();
toolAddCard = add_tool_tr(tb, ID_CARD_ADD, "card_add", "add_card", false, wxITEM_DROPDOWN); toolAddCard = add_tool_tr(tb, ID_CARD_ADD, "card_add", "add_card", false, wxITEM_DROPDOWN);
tb->SetDropdownMenu(ID_CARD_ADD, makeAddCardsSubmenu(true)); tb->SetDropdownMenu(ID_CARD_ADD, makeAddCardsSubmenu(true));
add_tool_tr(tb, ID_CARD_REMOVE, "card_del", "remove_card"); add_tool_tr(tb, ID_CARD_REMOVE, "card_del", "remove_card");
add_tool_tr(tb, ID_CARD_LINK, "card_link", "link_card"); add_tool_tr(tb, ID_CARD_LINK, settings.darkModePrefix() + "card_link", "link_card");
tb->AddSeparator(); tb->AddSeparator();
add_tool_tr(tb, ID_CARD_ROTATE, "card_rotate", "rotate_card", false, wxITEM_DROPDOWN); add_tool_tr(tb, ID_CARD_ROTATE, "card_rotate", "rotate_card", false, wxITEM_DROPDOWN);
auto menuRotate = new wxMenu(); auto menuRotate = new wxMenu();
@@ -322,6 +324,7 @@ void CardsPanel::destroyUI(wxToolBar* tb, wxMenuBar* mb) {
tb->DeleteTool(ID_FORMAT_BOLD); tb->DeleteTool(ID_FORMAT_BOLD);
tb->DeleteTool(ID_FORMAT_ITALIC); tb->DeleteTool(ID_FORMAT_ITALIC);
tb->DeleteTool(ID_FORMAT_UNDERLINE); tb->DeleteTool(ID_FORMAT_UNDERLINE);
tb->DeleteTool(ID_FORMAT_STRIKETHROUGH);
tb->DeleteTool(ID_FORMAT_SYMBOL); tb->DeleteTool(ID_FORMAT_SYMBOL);
tb->DeleteTool(ID_FORMAT_REMINDER); tb->DeleteTool(ID_FORMAT_REMINDER);
tb->DeleteTool(ID_CARD_ADD); tb->DeleteTool(ID_CARD_ADD);
@@ -364,7 +367,7 @@ void CardsPanel::onUpdateUI(wxUpdateUIEvent& ev) {
case ID_CARD_REMOVE: ev.Enable(card_list->canDelete()); break; case ID_CARD_REMOVE: ev.Enable(card_list->canDelete()); break;
case ID_CARD_LINK: ev.Enable(card_list->canLink()); break; case ID_CARD_LINK: ev.Enable(card_list->canLink()); break;
case ID_CARD_AND_LINK_COPY: ev.Enable(card_list->canCopy()); break; case ID_CARD_AND_LINK_COPY: ev.Enable(card_list->canCopy()); break;
case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_SYMBOL: case ID_FORMAT_REMINDER: { case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_STRIKETHROUGH: case ID_FORMAT_SYMBOL: case ID_FORMAT_REMINDER: {
if (focused_control(this) == ID_EDITOR) { if (focused_control(this) == ID_EDITOR) {
ev.Enable(editor->canFormat(ev.GetId())); ev.Enable(editor->canFormat(ev.GetId()));
ev.Check (editor->hasFormat(ev.GetId())); ev.Check (editor->hasFormat(ev.GetId()));
@@ -472,7 +475,7 @@ void CardsPanel::onCommand(int id) {
case ID_SELECT_COLUMNS: { case ID_SELECT_COLUMNS: {
card_list->selectColumns(); card_list->selectColumns();
} }
case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_SYMBOL: case ID_FORMAT_REMINDER: { case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_STRIKETHROUGH: case ID_FORMAT_SYMBOL: case ID_FORMAT_REMINDER: {
if (focused_control(this) == ID_EDITOR) { if (focused_control(this) == ID_EDITOR) {
editor->doFormat(id); editor->doFormat(id);
} }
+7 -4
View File
@@ -36,7 +36,8 @@ void SetInfoPanel::initUI(wxToolBar* tb, wxMenuBar* mb) {
// Toolbar // Toolbar
add_tool_tr(tb, ID_FORMAT_BOLD, settings.darkModePrefix() + "bold", "bold", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_BOLD, settings.darkModePrefix() + "bold", "bold", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_ITALIC, settings.darkModePrefix() + "italic", "italic", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_ITALIC, settings.darkModePrefix() + "italic", "italic", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_UNDERLINE, settings.darkModePrefix() + "underline", "underline", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_UNDERLINE, settings.darkModePrefix() + "underline", "underline", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_STRIKETHROUGH, settings.darkModePrefix() + "strikethrough", "strikethrough", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_SYMBOL, settings.darkModePrefix() + "symbol", "symbols", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_SYMBOL, settings.darkModePrefix() + "symbol", "symbols", false, wxITEM_CHECK);
add_tool_tr(tb, ID_FORMAT_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", false, wxITEM_CHECK); add_tool_tr(tb, ID_FORMAT_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", false, wxITEM_CHECK);
tb->Realize(); tb->Realize();
@@ -44,7 +45,8 @@ void SetInfoPanel::initUI(wxToolBar* tb, wxMenuBar* mb) {
auto menuFormat = new wxMenu(); auto menuFormat = new wxMenu();
add_menu_item_tr(menuFormat, ID_FORMAT_BOLD, settings.darkModePrefix() + "bold", "bold", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_BOLD, settings.darkModePrefix() + "bold", "bold", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_ITALIC, settings.darkModePrefix() + "italic", "italic", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_ITALIC, settings.darkModePrefix() + "italic", "italic", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_UNDERLINE, settings.darkModePrefix() + "underline", "underline", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_UNDERLINE, settings.darkModePrefix() + "underline", "underline", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_STRIKETHROUGH, settings.darkModePrefix() + "strikethrough", "strikethrough", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_SYMBOL, settings.darkModePrefix() + "symbol", "symbols", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_SYMBOL, settings.darkModePrefix() + "symbol", "symbols", wxITEM_CHECK);
add_menu_item_tr(menuFormat, ID_FORMAT_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", wxITEM_CHECK); add_menu_item_tr(menuFormat, ID_FORMAT_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", wxITEM_CHECK);
mb->Insert(2, menuFormat, _MENU_("format")); mb->Insert(2, menuFormat, _MENU_("format"));
@@ -57,6 +59,7 @@ void SetInfoPanel::destroyUI(wxToolBar* tb, wxMenuBar* mb) {
tb->DeleteTool(ID_FORMAT_BOLD); tb->DeleteTool(ID_FORMAT_BOLD);
tb->DeleteTool(ID_FORMAT_ITALIC); tb->DeleteTool(ID_FORMAT_ITALIC);
tb->DeleteTool(ID_FORMAT_UNDERLINE); tb->DeleteTool(ID_FORMAT_UNDERLINE);
tb->DeleteTool(ID_FORMAT_STRIKETHROUGH);
tb->DeleteTool(ID_FORMAT_SYMBOL); tb->DeleteTool(ID_FORMAT_SYMBOL);
tb->DeleteTool(ID_FORMAT_REMINDER); tb->DeleteTool(ID_FORMAT_REMINDER);
// Menus // Menus
@@ -65,7 +68,7 @@ void SetInfoPanel::destroyUI(wxToolBar* tb, wxMenuBar* mb) {
void SetInfoPanel::onUpdateUI(wxUpdateUIEvent& ev) { void SetInfoPanel::onUpdateUI(wxUpdateUIEvent& ev) {
switch (ev.GetId()) { switch (ev.GetId()) {
case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_SYMBOL: case ID_FORMAT_REMINDER: { case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_STRIKETHROUGH: case ID_FORMAT_SYMBOL: case ID_FORMAT_REMINDER: {
ev.Enable(editor->canFormat(ev.GetId())); ev.Enable(editor->canFormat(ev.GetId()));
ev.Check (editor->hasFormat(ev.GetId())); ev.Check (editor->hasFormat(ev.GetId()));
break; break;
@@ -75,7 +78,7 @@ void SetInfoPanel::onUpdateUI(wxUpdateUIEvent& ev) {
void SetInfoPanel::onCommand(int id) { void SetInfoPanel::onCommand(int id) {
switch (id) { switch (id) {
case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_SYMBOL: case ID_FORMAT_REMINDER: { case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_STRIKETHROUGH: case ID_FORMAT_SYMBOL: case ID_FORMAT_REMINDER: {
editor->doFormat(id); editor->doFormat(id);
break; break;
} }
+7 -1
View File
@@ -805,7 +805,7 @@ bool TextValueEditor::doDelete() {
bool TextValueEditor::canFormat(int type) const { bool TextValueEditor::canFormat(int type) const {
switch (type) { switch (type) {
case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_BOLD: case ID_FORMAT_ITALIC: case ID_FORMAT_UNDERLINE: case ID_FORMAT_STRIKETHROUGH:
return !style().always_symbol && style().allow_formating; return !style().always_symbol && style().allow_formating;
case ID_FORMAT_SYMBOL: case ID_FORMAT_SYMBOL:
return !style().always_symbol && style().allow_formating && style().symbol_font.valid(); return !style().always_symbol && style().allow_formating && style().symbol_font.valid();
@@ -825,6 +825,8 @@ bool TextValueEditor::hasFormat(int type) const {
return is_in_tag(value().value(), _("<i"), selection_start_i, selection_end_i); return is_in_tag(value().value(), _("<i"), selection_start_i, selection_end_i);
case ID_FORMAT_UNDERLINE: case ID_FORMAT_UNDERLINE:
return is_in_tag(value().value(), _("<u"), selection_start_i, selection_end_i); return is_in_tag(value().value(), _("<u"), selection_start_i, selection_end_i);
case ID_FORMAT_STRIKETHROUGH:
return is_in_tag(value().value(), _("<strike"), selection_start_i, selection_end_i);
case ID_FORMAT_SYMBOL: case ID_FORMAT_SYMBOL:
return is_in_tag(value().value(), _("<sym"), selection_start_i, selection_end_i); return is_in_tag(value().value(), _("<sym"), selection_start_i, selection_end_i);
case ID_FORMAT_REMINDER: { case ID_FORMAT_REMINDER: {
@@ -855,6 +857,10 @@ void TextValueEditor::doFormat(int type) {
addAction(toggle_format_action(valueP(), _("u"), selection_start_i, selection_end_i, selection_start, selection_end, _("Underline"))); addAction(toggle_format_action(valueP(), _("u"), selection_start_i, selection_end_i, selection_start, selection_end, _("Underline")));
break; break;
} }
case ID_FORMAT_STRIKETHROUGH: {
addAction(toggle_format_action(valueP(), _("strike"), selection_start_i, selection_end_i, selection_start, selection_end, _("Strikethrough")));
break;
}
case ID_FORMAT_SYMBOL: { case ID_FORMAT_SYMBOL: {
addAction(toggle_format_action(valueP(), _("sym"), selection_start_i, selection_end_i, selection_start, selection_end, _("Symbols"))); addAction(toggle_format_action(valueP(), _("sym"), selection_start_i, selection_end_i, selection_start, selection_end, _("Symbols")));
break; break;
+30 -27
View File
@@ -34,7 +34,7 @@ struct Margins {
// Helper class for TextElements::fromString, to allow persistent formating state accross recusive calls // Helper class for TextElements::fromString, to allow persistent formating state accross recusive calls
struct TextElementsFromString { struct TextElementsFromString {
// What formatting is enabled? // What formatting is enabled?
int bold = 0, italic = 0, underline = 0, symbol = 0; int bold = 0, italic = 0, underline = 0, strikethrough = 0, symbol = 0;
int soft = 0, kwpph = 0, param = 0, line = 0, soft_line = 0; int soft = 0, kwpph = 0, param = 0, line = 0, soft_line = 0;
int code = 0, code_kw = 0, code_string = 0, param_ref = 0; int code = 0, code_kw = 0, code_string = 0, param_ref = 0;
int param_id = 0, li = 0; int param_id = 0, li = 0;
@@ -75,32 +75,34 @@ private:
// a (formatting) tag // a (formatting) tag
size_t tag_start = pos; size_t tag_start = pos;
pos = skip_tag(text, tag_start); pos = skip_tag(text, tag_start);
if (is_tag(text, tag_start, _( "<b"))) bold += 1; if (is_tag(text, tag_start, _( "<b"))) bold += 1;
else if (is_tag(text, tag_start, _("</b"))) bold -= 1; else if (is_tag(text, tag_start, _("</b"))) bold -= 1;
else if (is_tag(text, tag_start, _( "<i"))) italic += 1; else if (is_tag(text, tag_start, _( "<i"))) italic += 1;
else if (is_tag(text, tag_start, _("</i"))) italic -= 1; else if (is_tag(text, tag_start, _("</i"))) italic -= 1;
else if (is_tag(text, tag_start, _("<u"))) underline += 1; else if (is_tag(text, tag_start, _( "<u"))) underline += 1;
else if (is_tag(text, tag_start, _("</u"))) underline -= 1; else if (is_tag(text, tag_start, _("</u"))) underline -= 1;
else if (is_tag(text, tag_start, _( "<sym"))) symbol += 1; else if (is_tag(text, tag_start, _( "<strike"))) strikethrough += 1;
else if (is_tag(text, tag_start, _("</sym"))) symbol -= 1; else if (is_tag(text, tag_start, _("</strike"))) strikethrough -= 1;
else if (is_tag(text, tag_start, _( "<line"))) line += 1; else if (is_tag(text, tag_start, _( "<sym"))) symbol += 1;
else if (is_tag(text, tag_start, _("</line"))) line -= 1; else if (is_tag(text, tag_start, _("</sym"))) symbol -= 1;
else if (is_tag(text, tag_start, _( "<soft-line"))) soft_line += 1; else if (is_tag(text, tag_start, _( "<line"))) line += 1;
else if (is_tag(text, tag_start, _("</soft-line"))) soft_line -= 1; else if (is_tag(text, tag_start, _("</line"))) line -= 1;
else if (is_tag(text, tag_start, _( "<sep-soft"))) soft += 1; else if (is_tag(text, tag_start, _( "<soft-line"))) soft_line += 1;
else if (is_tag(text, tag_start, _("</sep-soft"))) soft -= 1; else if (is_tag(text, tag_start, _("</soft-line"))) soft_line -= 1;
else if (is_tag(text, tag_start, _( "<soft"))) soft += 1; // must be after <soft-line else if (is_tag(text, tag_start, _( "<sep-soft"))) soft += 1;
else if (is_tag(text, tag_start, _("</soft"))) soft -= 1; else if (is_tag(text, tag_start, _("</sep-soft"))) soft -= 1;
else if (is_tag(text, tag_start, _( "<li"))) li += 1; else if (is_tag(text, tag_start, _( "<soft"))) soft += 1; // must be after <soft-line
else if (is_tag(text, tag_start, _("</li"))) li -= 1; else if (is_tag(text, tag_start, _("</soft"))) soft -= 1;
else if (is_tag(text, tag_start, _( "<atom-kwpph"))) kwpph += 1; else if (is_tag(text, tag_start, _( "<li"))) li += 1;
else if (is_tag(text, tag_start, _("</atom-kwpph"))) kwpph -= 1; else if (is_tag(text, tag_start, _("</li"))) li -= 1;
else if (is_tag(text, tag_start, _( "<code-kw"))) code_kw += 1; else if (is_tag(text, tag_start, _( "<atom-kwpph"))) kwpph += 1;
else if (is_tag(text, tag_start, _("</code-kw"))) code_kw -= 1; else if (is_tag(text, tag_start, _("</atom-kwpph"))) kwpph -= 1;
else if (is_tag(text, tag_start, _( "<code-str"))) code_string += 1; else if (is_tag(text, tag_start, _( "<code-kw"))) code_kw += 1;
else if (is_tag(text, tag_start, _("</code-str"))) code_string -= 1; else if (is_tag(text, tag_start, _("</code-kw"))) code_kw -= 1;
else if (is_tag(text, tag_start, _( "<code"))) code += 1; else if (is_tag(text, tag_start, _( "<code-str"))) code_string += 1;
else if (is_tag(text, tag_start, _("</code"))) code -= 1; else if (is_tag(text, tag_start, _("</code-str"))) code_string -= 1;
else if (is_tag(text, tag_start, _( "<code"))) code += 1;
else if (is_tag(text, tag_start, _("</code"))) code -= 1;
else if (is_tag(text, tag_start, _( "<color"))) { else if (is_tag(text, tag_start, _( "<color"))) {
size_t colon = text.find_first_of(_(">:"), tag_start); size_t colon = text.find_first_of(_(">:"), tag_start);
if (colon < pos - 1 && text.GetChar(colon) == _(':')) { if (colon < pos - 1 && text.GetChar(colon) == _(':')) {
@@ -303,6 +305,7 @@ private:
(code_kw > 0 ? FONT_CODE_KW : FONT_NORMAL) | (code_kw > 0 ? FONT_CODE_KW : FONT_NORMAL) |
(code_string > 0 ? FONT_CODE_STRING : FONT_NORMAL), (code_string > 0 ? FONT_CODE_STRING : FONT_NORMAL),
underline > 0, underline > 0,
strikethrough > 0,
fonts.empty() ? nullptr : &fonts.back(), fonts.empty() ? nullptr : &fonts.back(),
param > 0 || param_ref > 0 param > 0 || param_ref > 0
? &param_colors[(param_id++) % param_colors_count] ? &param_colors[(param_id++) % param_colors_count]
+12 -2
View File
@@ -218,6 +218,7 @@ String to_html(const String& str_in, const SymbolFontP& symbol_font, double symb
Tag bold (_("<b>"), _("</b>")), Tag bold (_("<b>"), _("</b>")),
italic(_("<i>"), _("</i>")), italic(_("<i>"), _("</i>")),
underline(_("<u>"), _("</u>")), underline(_("<u>"), _("</u>")),
strikethrough(_("<s>"), _("</s>")),
symbol(_("<span class=\"symbol\">"), _("</span>")); symbol(_("<span class=\"symbol\">"), _("</span>"));
TagStack tags; TagStack tags;
String symbols; String symbols;
@@ -237,6 +238,10 @@ String to_html(const String& str_in, const SymbolFontP& symbol_font, double symb
tags.open(ret, underline); tags.open(ret, underline);
} else if (is_substr(str, i, _("/u"))) { } else if (is_substr(str, i, _("/u"))) {
tags.close(ret, underline); tags.close(ret, underline);
} else if (is_substr(str, i, _("strike"))) {
tags.open(ret, strikethrough);
} else if (is_substr(str, i, _("/strike"))) {
tags.close(ret, strikethrough);
} else if (is_substr(str, i, _("sym"))) { } else if (is_substr(str, i, _("sym"))) {
tags.open (ret, symbol); tags.open (ret, symbol);
} else if (is_substr(str, i, _("/sym"))) { } else if (is_substr(str, i, _("/sym"))) {
@@ -312,8 +317,9 @@ String to_bbcode(const String& str_in) {
String str = remove_tag_contents(str_in,_("<sep-soft")); String str = remove_tag_contents(str_in,_("<sep-soft"));
String ret; String ret;
Tag bold (_("[b]"), _("[/b]")), Tag bold (_("[b]"), _("[/b]")),
italic(_("[i]"), _("[/i]")), italic(_("[i]"), _("[/i]")),
underline(_("[u]"), _("[/u]")); underline(_("[u]"), _("[/u]")),
strikethrough(_("[s]"), _("[/s]"));
TagStack tags; TagStack tags;
String symbols; String symbols;
for (size_t i = 0 ; i < str.size() ; ) { for (size_t i = 0 ; i < str.size() ; ) {
@@ -332,6 +338,10 @@ String to_bbcode(const String& str_in) {
tags.open(ret, underline); tags.open(ret, underline);
} else if (is_substr(str, i, _("/u"))) { } else if (is_substr(str, i, _("/u"))) {
tags.close(ret, underline); tags.close(ret, underline);
} else if (is_substr(str, i, _("strike"))) {
tags.open(ret, strikethrough);
} else if (is_substr(str, i, _("/strike"))) {
tags.close(ret, strikethrough);
} }
/*else if (is_substr(str, i, _("sym"))) { /*else if (is_substr(str, i, _("sym"))) {
tags.open (ret, symbol); tags.open (ret, symbol);
+1
View File
@@ -133,6 +133,7 @@ enum ChildMenuID {
ID_FORMAT_BOLD = 6201, ID_FORMAT_BOLD = 6201,
ID_FORMAT_ITALIC, ID_FORMAT_ITALIC,
ID_FORMAT_UNDERLINE, ID_FORMAT_UNDERLINE,
ID_FORMAT_STRIKETHROUGH,
ID_FORMAT_SYMBOL, ID_FORMAT_SYMBOL,
ID_FORMAT_REMINDER, ID_FORMAT_REMINDER,
ID_INSERT_SYMBOL, ID_INSERT_SYMBOL,