diff --git a/data/ch-s.mse-locale/locale b/data/ch-s.mse-locale/locale index bdbaad4d..f24d2685 100644 --- a/data/ch-s.mse-locale/locale +++ b/data/ch-s.mse-locale/locale @@ -86,6 +86,8 @@ menu: bold: 粗体 Ctrl+B italic: 斜体 Ctrl+I underline: 强调 Ctrl+U + #TODO: Localize + strikethrough: Strikethrough symbols: 符号 Ctrl+M reminder text: 提示文本 Ctrl+R insert symbol: 插入符号 @@ -225,6 +227,8 @@ help: bold: 将所选文字设为粗体 italic: 将所选文字设为斜体 underline: 为选定的文本添加下划线 + #TODO: Localize + strikethrough: Makes the selected text struck through symbols: 将所选文字改成符号 reminder text: 对选择的关键词显示提示文本 @@ -459,6 +463,8 @@ tooltip: bold: 粗体 italic: 斜体 underline: 强调 + #TODO: Localize + strikethrough: Strikethrough symbols: 系列符号 reminder text: 提示文本 @@ -989,9 +995,17 @@ error: #TODO: Localize Section 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' + #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 write image to set: Failed to write image to set: '%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 #TODO: Localize Section @@ -999,7 +1013,7 @@ error: 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 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' 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 diff --git a/data/ch-t.mse-locale/locale b/data/ch-t.mse-locale/locale index 11503d1d..410f7eaf 100644 --- a/data/ch-t.mse-locale/locale +++ b/data/ch-t.mse-locale/locale @@ -86,6 +86,8 @@ menu: bold: 粗體 Ctrl+B italic: 斜體 Ctrl+I underline: 強調 Ctrl+U + #TODO: Localize + strikethrough: Strikethrough symbols: 符號 Ctrl+M reminder text: 提示文本 Ctrl+R insert symbol: 插入符號 @@ -225,6 +227,8 @@ help: bold: 將所選文字設為粗體 italic: 將所選文字設為斜體 underline: 為選定的文字新增底線 + #TODO: Localize + strikethrough: Makes the selected text struck through symbols: 將所選文字改成符號 reminder text: 對選擇的關鍵詞顯示提示文本 @@ -457,6 +461,8 @@ tooltip: bold: 粗體 italic: 斜體 underline: 強調 + #TODO: Localize + strikethrough: Strikethrough symbols: 系列符號 reminder text: 提示文本 @@ -987,9 +993,17 @@ error: #TODO: Localize Section 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' + #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 write image to set: Failed to write image to set: '%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 #TODO: Localize Section @@ -997,7 +1011,7 @@ error: 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 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' 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 diff --git a/data/da.mse-locale/locale b/data/da.mse-locale/locale index fdab988e..4d4cd093 100644 --- a/data/da.mse-locale/locale +++ b/data/da.mse-locale/locale @@ -90,6 +90,8 @@ menu: bold: &Fed Ctrl+B italic: &Kursiv Ctrl+I underline: &Understrege Ctrl+U + #TODO: Localize + strikethrough: Strikethrough symbols: &Symboler Ctrl+M reminder text: &Nøgleordspåmindelser Ctrl+R insert symbol: I&ndsæt Symbol @@ -231,6 +233,8 @@ help: bold: Gør den valgte tekst fed italic: Gør den valgte tekst kursiv underline: Gør den markerede tekst understreget + #TODO: Localize + strikethrough: Makes the selected text struck through symbols: Teksten er som Magic-symboler reminder text: Viser huskeregler i teksten @@ -468,6 +472,8 @@ tooltip: bold: Fed italic: Kursiv underline: Understrege + #TODO: Localize + strikethrough: Strikethrough symbols: Symboler reminder text: Huskeregler @@ -1011,9 +1017,17 @@ error: #TODO: Localize Section 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' + #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 write image to set: Failed to write image to set: '%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 #TODO: Localize Section @@ -1021,7 +1035,7 @@ error: 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 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' 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 diff --git a/data/de.mse-locale/locale b/data/de.mse-locale/locale index 6f5440ab..f9c8b1b5 100644 --- a/data/de.mse-locale/locale +++ b/data/de.mse-locale/locale @@ -81,6 +81,7 @@ menu: bold: &Fett Ctrl+B italic: &Kursiv Ctrl+I underline: Unterstreichen Ctrl+U + strikethrough: Durchgestrichen symbols: &Symbole Ctrl+M reminder text: Reminder-Text Ctrl+R insert symbol: Sy&mbol einfügen @@ -212,9 +213,10 @@ help: remove keyword: Löscht die markierte Fähigkeit # format menu - bold: Formatiert den Text Fett - italic: Formatiert den Text Kursiv - underline: Unterstreicht den ausgewählten Text + bold: Markierten Text fett formatieren + italic: Markierten Text kursiv formatieren + underline: Markierten Text unterstreichen + strikethrough: Markierten Text durchstreichen symbols: Formatiert den Text als Symbol reminder text: Zeige den Reminder-Text für die gewählte Fähigkeit an @@ -443,6 +445,7 @@ tooltip: bold: Fett italic: Krusiv underline: Unterstreichen + strikethrough: Durchstreichen symbols: Symbole reminder text: Reminder-Text @@ -943,16 +946,20 @@ error: # image import 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 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 write image to set: Bild konnte nicht ins Edition geschrieben 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 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 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 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'). 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. diff --git a/data/en.mse-locale/locale b/data/en.mse-locale/locale index 7302d616..0e49efd3 100644 --- a/data/en.mse-locale/locale +++ b/data/en.mse-locale/locale @@ -81,6 +81,7 @@ menu: bold: &Bold Ctrl+B italic: &Italic Ctrl+I underline: &Underline Ctrl+U + strikethrough: Strikethrough symbols: &Symbols Ctrl+M reminder text: &Reminder Text Ctrl+R insert symbol: I&nsert Symbol @@ -215,6 +216,7 @@ help: bold: Makes the selected text bold italic: Makes the selected text italic underline: Makes the selected text underlined + strikethrough: Makes the selected text struck through symbols: Draws the selected text with symbols reminder text: Show reminder text for the selected keyword @@ -444,6 +446,7 @@ tooltip: bold: Bold italic: Italic underline: Underline + strikethrough: Strikethrough symbols: Symbols reminder text: Reminder Text @@ -947,16 +950,20 @@ error: # image import 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 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 write image to set: Failed to write image to set: '%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 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 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 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' 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 diff --git a/data/es.mse-locale/locale b/data/es.mse-locale/locale index 8b04b66f..f389319f 100644 --- a/data/es.mse-locale/locale +++ b/data/es.mse-locale/locale @@ -86,6 +86,8 @@ menu: bold: &Negrita Ctrl+B italic: &Cursiva Ctrl+I underline: &Subrayado Ctrl+U + #TODO: Localize + strikethrough: Strikethrough symbols: &Símbolos Ctrl+M reminder text: &Texto recordatorio Ctrl+R insert symbol: I&nsertar símbolo @@ -225,6 +227,8 @@ help: bold: Pone el texto seleccionado en negrita italic: Pone el texto seleccionado en cursiva underline: Pone el texto seleccionado en subrayado + #TODO: Localize + strikethrough: Makes the selected text struck through symbols: Dibuja el texto seleccionado con símbolos reminder text: Muestra el texto recordatorio de la Palabra Clave seleccionada @@ -459,6 +463,8 @@ tooltip: bold: Negrita italic: Cursiva underline: Subrayado + #TODO: Localize + strikethrough: Strikethrough symbols: Símbolos reminder text: Texto recordatorio @@ -990,9 +996,17 @@ error: #TODO: Localize Section 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' + #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 write image to set: Failed to write image to set: '%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 #TODO: Localize Section @@ -1000,7 +1014,7 @@ error: 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 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' 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 diff --git a/data/fr.mse-locale/locale b/data/fr.mse-locale/locale index 9baee0d8..c20f2100 100644 --- a/data/fr.mse-locale/locale +++ b/data/fr.mse-locale/locale @@ -81,6 +81,7 @@ menu: bold: &Gras Ctrl+B italic: &Italique Ctrl+I underline: Souligné Ctrl+U + strikethrough: Barré symbols: &Symboles Ctrl+M reminder text: &Texte de rappel Ctrl+R insert symbol: I&nsérer un Symbole @@ -215,6 +216,7 @@ help: bold: Mettre le texte sélectionné en gras italic: Mettre le texte sélectionné en italique underline: Souligner le texte sélectionné + strikethrough: Barrer le texte sélectionné symbols: Mettre le texte selectionné en symboles reminder text: Afficher le texte de rappel pour le Mot-clef sélectionné @@ -444,6 +446,7 @@ tooltip: bold: Gras italic: Italique underline: Souligné + strikethrough: Barré symbols: Symboles reminder text: Texte de rappel @@ -944,16 +947,20 @@ error: # image import 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 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 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 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 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 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 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') 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 diff --git a/data/it.mse-locale/locale b/data/it.mse-locale/locale index e7f041c6..3b34506a 100644 --- a/data/it.mse-locale/locale +++ b/data/it.mse-locale/locale @@ -80,7 +80,8 @@ menu: format: F&ormato bold: &Grassetto Ctrl+B italic: &Corsivo Ctrl+I - underline: &Sottolineare Ctrl+U + underline: &Sottolineato Ctrl+U + strikethrough: Barrato symbols: &Simboli Ctrl+M reminder text: &Promemoria Ctrl+R insert symbol: I&nserisci Simbolo @@ -212,9 +213,10 @@ help: remove keyword: Cancella la parola-chiave selezionata # format menu - bold: Applica il grassetto al testo selezionato - italic: Applica il corsivo al testo selezionato - underline: Sottolinea il testo selezionato + bold: Imposta il testo selezionato in grassetto + italic: Imposta il testo selezionato in corsivo + underline: Imposta il testo selezionato sottolineato + strikethrough: Imposta il testo selezionato barrato symbols: Trasforma il testo selezionato in simboli reminder text: Mostra promemoria per la parola-chiave selezionata @@ -443,7 +445,8 @@ tooltip: # format toolbar bold: Grassetto italic: Corsivo - underline: Sottolineare + underline: Sottolineato + strikethrough: Barrato symbols: Simboli reminder text: Promemoria @@ -944,16 +947,20 @@ error: # image import 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 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 write image to set: Impossibile scrivere l'immagine nel set: '%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 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 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 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' 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 diff --git a/data/jp.mse-locale/locale b/data/jp.mse-locale/locale index 99feaa2e..24c66937 100644 --- a/data/jp.mse-locale/locale +++ b/data/jp.mse-locale/locale @@ -86,6 +86,8 @@ menu: bold: &太字 Ctrl+B italic: &斜体 Ctrl+I underline: 下線 Ctrl+U + #TODO: Localize + strikethrough: Strikethrough symbols: &記号 Ctrl+M reminder text: &注釈文 Ctrl+R insert symbol: 記号の挿入 @@ -225,6 +227,8 @@ help: bold: 選択したテキストを太字(ボールド体)にします。 italic: 選択したテキストを斜体(イタリック体)にします。 underline: 選択したテキストに下線を付けます + #TODO: Localize + strikethrough: Makes the selected text struck through symbols: 選択したテキストをマナ・シンボルなどのシンボルにします。 reminder text: 選ばれたキーワード能力のための注釈文を表示させます。 @@ -458,6 +462,8 @@ tooltip: bold: 太字 italic: 斜体 underline: 下線 + #TODO: Localize + strikethrough: Strikethrough symbols: シンボル reminder text: 注釈文 @@ -990,9 +996,17 @@ error: #TODO: Localize Section 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' + #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 write image to set: Failed to write image to set: '%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 #TODO: Localize Section @@ -1000,7 +1014,7 @@ error: 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 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' 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 diff --git a/data/ko.mse-locale/locale b/data/ko.mse-locale/locale index 8c8013f8..38cfcc4b 100644 --- a/data/ko.mse-locale/locale +++ b/data/ko.mse-locale/locale @@ -86,6 +86,8 @@ menu: bold: &굵게 Ctrl+B italic: &기울임꼴 Ctrl+I underline: &밑줄 Ctrl+U + #TODO: Localize + strikethrough: Strikethrough symbols: &기호 Ctrl+M reminder text: 키워드 설명 Ctrl+R insert symbol: 기호 삽입 @@ -225,6 +227,8 @@ help: bold: 선택한 텍스트를 굵게 만듭니다. italic: 선택한 텍스트를 이탤릭체로 만듭니다. underline: 선택한 텍스트에 밑줄을 그어줍니다. + #TODO: Localize + strikethrough: Makes the selected text struck through symbols: 선택한 텍스트를 기호로 변환 reminder text: 선택한 키워드에 대한 알림 텍스트 표시 @@ -464,6 +468,8 @@ tooltip: bold: 용감한 italic: 이탤릭체 underline: 밑줄 + #TODO: Localize + strikethrough: Strikethrough symbols: 기호 reminder text: 알림 텍스트 @@ -996,9 +1002,17 @@ error: #TODO: Localize Section 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' + #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 write image to set: Failed to write image to set: '%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 #TODO: Localize Section @@ -1006,7 +1020,7 @@ error: 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 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' 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 diff --git a/data/pl.mse-locale/locale b/data/pl.mse-locale/locale index 88166590..900c7767 100644 --- a/data/pl.mse-locale/locale +++ b/data/pl.mse-locale/locale @@ -98,6 +98,8 @@ menu: italic: &Kursywa Ctrl+I #TODO: Localize underline: &Underline Ctrl+U + #TODO: Localize + strikethrough: Strikethrough symbols: &Symbole Ctrl+M reminder text: &Tekst przypomnienia Ctrl+R insert symbol: &Wstaw symbol @@ -246,6 +248,8 @@ help: italic: Pochyla zaznaczony tekst #TODO: Localize underline: Makes the selected text underlined + #TODO: Localize + strikethrough: Makes the selected text struck through symbols: Rysuje zaznaczony tekst z symbolami reminder text: Pokazuj tekst przypomnienia dla wybranego słowa kluczowego @@ -494,6 +498,8 @@ tooltip: italic: Kursywa #TODO: Localize underline: Underline + #TODO: Localize + strikethrough: Strikethrough symbols: Symbole reminder text: Przypomnienie @@ -1046,9 +1052,17 @@ error: #TODO: Localize Section 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' + #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 write image to set: Failed to write image to set: '%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 #TODO: Localize Section @@ -1056,7 +1070,7 @@ error: 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 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' 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 diff --git a/data/pt-br.mse-locale/locale b/data/pt-br.mse-locale/locale index a9038f00..d3093955 100644 --- a/data/pt-br.mse-locale/locale +++ b/data/pt-br.mse-locale/locale @@ -80,7 +80,8 @@ menu: format: F&ormatar bold: &Negrito Ctrl+B italic: &Italico Ctrl+I - underline: &Sublinhada Ctrl+U + underline: &Sublinhado Ctrl+U + strikethrough: Riscado symbols: &Simbolos Ctrl+M reminder text: &Texto Explicativo Ctrl+R insert symbol: I&nserir Símbolo @@ -212,9 +213,10 @@ help: remove keyword: Deleta a Palavra-Chave selecionada da lista. # format menu - bold: Faça o texto selecionado transformar-se em Negrito. - italic: Faça o texto selecionado transformar-se em Itálico. - underline: Torna o texto selecionado sublinhado + bold: Colocar o texto selecionado em negrito + italic: Colocar o texto selecionado em itálico + underline: Colocar o texto selecionado em sublinhado + strikethrough: Colocar o texto selecionado riscado symbols: Transforma uma parte do texto selecionada em simbolos. reminder text: Mostra ou oculta o Texto Explicativo de uma Palavra-Chave selecionado. @@ -444,7 +446,8 @@ tooltip: # format toolbar bold: Negrito italic: Itálico - underline: Sublinhada + underline: Sublinhado + strikethrough: Riscado symbols: Simbolo reminder text: Texto Explicativo @@ -944,17 +947,21 @@ error: # image import 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 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 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 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 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 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' 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 diff --git a/data/ru.mse-locale/locale b/data/ru.mse-locale/locale index 943cc330..d2717a24 100644 --- a/data/ru.mse-locale/locale +++ b/data/ru.mse-locale/locale @@ -88,6 +88,8 @@ menu: italic: Курсив Ctrl+I #TODO: Localize underline: &Underline Ctrl+U + #TODO: Localize + strikethrough: Strikethrough symbols: Символ Ctrl+M reminder text: Текст напоминания Ctrl+R insert symbol: Вставить символ @@ -237,6 +239,8 @@ help: italic: Сделать выделенный текст курсивом #TODO: Localize underline: Makes the selected text underlined + #TODO: Localize + strikethrough: Makes the selected text struck through symbols: Отрисовать выделенный текст символами reminder text: Показать текст напоминания для выбранного ключевого слова @@ -482,6 +486,8 @@ tooltip: italic: Курсив #TODO: Localize underline: Underline + #TODO: Localize + strikethrough: Strikethrough symbols: Символ reminder text: Текст напоминания @@ -1039,9 +1045,17 @@ error: #TODO: Localize Section 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' + #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 write image to set: Failed to write image to set: '%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 #TODO: Localize Section @@ -1049,7 +1063,7 @@ error: 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 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' 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 diff --git a/resource/tool/bold.png b/resource/tool/bold.png index 4cbcf7c3..6cadcb11 100644 Binary files a/resource/tool/bold.png and b/resource/tool/bold.png differ diff --git a/resource/tool/dark_bold.png b/resource/tool/dark_bold.png index 5f815bed..83c583c1 100644 Binary files a/resource/tool/dark_bold.png and b/resource/tool/dark_bold.png differ diff --git a/resource/tool/dark_card_link.png b/resource/tool/dark_card_link.png new file mode 100644 index 00000000..0c4a0902 Binary files /dev/null and b/resource/tool/dark_card_link.png differ diff --git a/resource/tool/dark_italic.png b/resource/tool/dark_italic.png index 789c0d02..b1ec46a1 100644 Binary files a/resource/tool/dark_italic.png and b/resource/tool/dark_italic.png differ diff --git a/resource/tool/dark_reminder.png b/resource/tool/dark_reminder.png index 035d5e96..7ad36fdc 100644 Binary files a/resource/tool/dark_reminder.png and b/resource/tool/dark_reminder.png differ diff --git a/resource/tool/dark_strikethrough.png b/resource/tool/dark_strikethrough.png new file mode 100644 index 00000000..449f4c46 Binary files /dev/null and b/resource/tool/dark_strikethrough.png differ diff --git a/resource/tool/dark_symbol.png b/resource/tool/dark_symbol.png index 24ae74ec..4b9a2d15 100644 Binary files a/resource/tool/dark_symbol.png and b/resource/tool/dark_symbol.png differ diff --git a/resource/tool/dark_underline.png b/resource/tool/dark_underline.png index 85cd8fdb..c9b2653a 100644 Binary files a/resource/tool/dark_underline.png and b/resource/tool/dark_underline.png differ diff --git a/resource/tool/italic.png b/resource/tool/italic.png index 017a408e..42cc29c3 100644 Binary files a/resource/tool/italic.png and b/resource/tool/italic.png differ diff --git a/resource/tool/reminder.png b/resource/tool/reminder.png index bf2543f3..c772e137 100644 Binary files a/resource/tool/reminder.png and b/resource/tool/reminder.png differ diff --git a/resource/tool/strikethrough.png b/resource/tool/strikethrough.png new file mode 100644 index 00000000..d853b6da Binary files /dev/null and b/resource/tool/strikethrough.png differ diff --git a/resource/tool/symbol.png b/resource/tool/symbol.png index 2ea3275c..6f5ce846 100644 Binary files a/resource/tool/symbol.png and b/resource/tool/symbol.png differ diff --git a/resource/tool/underline.png b/resource/tool/underline.png index 0622dd72..4784e0c3 100644 Binary files a/resource/tool/underline.png and b/resource/tool/underline.png differ diff --git a/resource/win32_res.rc b/resource/win32_res.rc index 21d8b6bd..fda47d01 100644 --- a/resource/win32_res.rc +++ b/resource/win32_res.rc @@ -47,6 +47,8 @@ tool/italic IMAGE "tool/italic.png" tool/dark_italic IMAGE "tool/dark_italic.png" tool/underline IMAGE "tool/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/dark_symbol IMAGE "tool/dark_symbol.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_del IMAGE "tool/card_del.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_rotate IMAGE "tool/card_rotate.png" tool/card_rotate_0 IMAGE "tool/card_rotate_0.png" diff --git a/src/data/font.cpp b/src/data/font.cpp index 5d0727f6..16caafc4 100644 --- a/src/data/font.cpp +++ b/src/data/font.cpp @@ -18,6 +18,7 @@ Font::Font() : name() , size(1) , underline(false) + , strikethrough(false) , scale_down_to(100000) , max_stretch(1.0) , color(Color(0,0,0)) @@ -83,13 +84,14 @@ void Font::TallyResourceFonts(String fontsDirectoryPath, vector& fontFil bool Font::update(Context& ctx) { bool changes = false; - changes |= name .update(ctx); - changes |= italic_name .update(ctx); - changes |= size .update(ctx); - changes |= weight .update(ctx); - changes |= style .update(ctx); - changes |= underline .update(ctx); - changes |= color .update(ctx); + changes |= name .update(ctx); + changes |= italic_name .update(ctx); + changes |= size .update(ctx); + changes |= weight .update(ctx); + changes |= style .update(ctx); + changes |= underline .update(ctx); + changes |= strikethrough .update(ctx); + changes |= color .update(ctx); changes |= shadow_color .update(ctx); changes |= shadow_displacement_x.update(ctx); changes |= shadow_displacement_y.update(ctx); @@ -100,20 +102,21 @@ bool Font::update(Context& ctx) { return changes; } void Font::initDependencies(Context& ctx, const Dependency& dep) const { - name .initDependencies(ctx, dep); - italic_name .initDependencies(ctx, dep); - size .initDependencies(ctx, dep); - weight .initDependencies(ctx, dep); - style .initDependencies(ctx, dep); - underline .initDependencies(ctx, dep); - color .initDependencies(ctx, dep); + name .initDependencies(ctx, dep); + italic_name .initDependencies(ctx, dep); + size .initDependencies(ctx, dep); + weight .initDependencies(ctx, dep); + style .initDependencies(ctx, dep); + underline .initDependencies(ctx, dep); + strikethrough .initDependencies(ctx, dep); + color .initDependencies(ctx, dep); shadow_color .initDependencies(ctx, dep); shadow_displacement_x.initDependencies(ctx, dep); shadow_displacement_y.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)); f->flags |= add_flags; 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) { f->underline = true; } + if (add_strikethrough) { + f->strikethrough = true; + } if (other_color) { f->color = *other_color; } @@ -156,13 +162,16 @@ wxFont Font::toWxFont(double scale) const { if (flags & FONT_CODE) { 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 { font = wxFont(size_i, wxFONTFAMILY_TELETYPE, wxFONTSTYLE_NORMAL, weight_i, underline(), _("Courier New")); } } else if (name().empty()) { 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; } else if (flags & FONT_ITALIC && !italic_name().empty()) { 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 // TODO: do something more sensible, and more portable font.SetPixelSize(wxSize(0, -(int)(scale*size*96.0/72.0 + 0.5) )); - #endif + #endif + if (strikethrough()) font.MakeStrikethrough(); return font; } @@ -189,6 +199,7 @@ IMPLEMENT_REFLECTION_NO_SCRIPT(Font) { REFLECT(weight); REFLECT(style); REFLECT(underline); + REFLECT(strikethrough); REFLECT(italic_name); REFLECT(color); REFLECT(scale_down_to); diff --git a/src/data/font.hpp b/src/data/font.hpp index 6fa6ddc7..3ac836c9 100644 --- a/src/data/font.hpp +++ b/src/data/font.hpp @@ -38,6 +38,7 @@ public: Scriptable size; ///< Size of the font Scriptable weight, style; ///< Weight and style of the font (bold/italic) Scriptable underline; ///< Underlined? + Scriptable strikethrough; ///< Struck through? double scale_down_to; ///< Smallest size to scale down to double max_stretch; ///< How much should the font be stretched before scaling down? Scriptable color; ///< Color to use @@ -67,7 +68,7 @@ public: } /// 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 wxFont toWxFont(double scale) const; diff --git a/src/gui/control/card_list.cpp b/src/gui/control/card_list.cpp index b9f91e80..b068d6b4 100644 --- a/src/gui/control/card_list.cpp +++ b/src/gui/control/card_list.cpp @@ -650,7 +650,7 @@ void CardListBase::onContextMenu(wxContextMenuEvent&) { m.AppendSeparator(); 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_LINK, "card_link", "link card"); + add_menu_item_tr(&m, ID_CARD_LINK, settings.darkModePrefix() + "card_link", "link card"); PopupMenu(&m); } } diff --git a/src/gui/set/cards_panel.cpp b/src/gui/set/cards_panel.cpp index 6763c4d7..d2d1f684 100644 --- a/src/gui/set/cards_panel.cpp +++ b/src/gui/set/cards_panel.cpp @@ -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_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_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_BULK, "card_modify_multiple", _MENU_("bulk modify") + _(" "), _HELP_("bulk modify")); menuCard->AppendSeparator(); @@ -153,7 +153,8 @@ CardsPanel::CardsPanel(Window* parent, int id) menuFormat = new wxMenu(); 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_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_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", wxITEM_CHECK); menuFormat->AppendSeparator(); @@ -286,14 +287,15 @@ void CardsPanel::initUI(wxToolBar* tb, wxMenuBar* mb) { // Toolbar 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_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_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", false, wxITEM_CHECK); tb->AddSeparator(); toolAddCard = add_tool_tr(tb, ID_CARD_ADD, "card_add", "add_card", false, wxITEM_DROPDOWN); tb->SetDropdownMenu(ID_CARD_ADD, makeAddCardsSubmenu(true)); 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(); add_tool_tr(tb, ID_CARD_ROTATE, "card_rotate", "rotate_card", false, wxITEM_DROPDOWN); auto menuRotate = new wxMenu(); @@ -322,6 +324,7 @@ void CardsPanel::destroyUI(wxToolBar* tb, wxMenuBar* mb) { tb->DeleteTool(ID_FORMAT_BOLD); tb->DeleteTool(ID_FORMAT_ITALIC); tb->DeleteTool(ID_FORMAT_UNDERLINE); + tb->DeleteTool(ID_FORMAT_STRIKETHROUGH); tb->DeleteTool(ID_FORMAT_SYMBOL); tb->DeleteTool(ID_FORMAT_REMINDER); 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_LINK: ev.Enable(card_list->canLink()); 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) { ev.Enable(editor->canFormat(ev.GetId())); ev.Check (editor->hasFormat(ev.GetId())); @@ -472,7 +475,7 @@ void CardsPanel::onCommand(int id) { case ID_SELECT_COLUMNS: { 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) { editor->doFormat(id); } diff --git a/src/gui/set/set_info_panel.cpp b/src/gui/set/set_info_panel.cpp index 87bd6dac..74d550a3 100644 --- a/src/gui/set/set_info_panel.cpp +++ b/src/gui/set/set_info_panel.cpp @@ -36,7 +36,8 @@ void SetInfoPanel::initUI(wxToolBar* tb, wxMenuBar* mb) { // Toolbar 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_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_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", false, wxITEM_CHECK); tb->Realize(); @@ -44,7 +45,8 @@ void SetInfoPanel::initUI(wxToolBar* tb, wxMenuBar* mb) { 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_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_REMINDER, settings.darkModePrefix() + "reminder", "reminder_text", wxITEM_CHECK); 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_ITALIC); tb->DeleteTool(ID_FORMAT_UNDERLINE); + tb->DeleteTool(ID_FORMAT_STRIKETHROUGH); tb->DeleteTool(ID_FORMAT_SYMBOL); tb->DeleteTool(ID_FORMAT_REMINDER); // Menus @@ -65,7 +68,7 @@ void SetInfoPanel::destroyUI(wxToolBar* tb, wxMenuBar* mb) { void SetInfoPanel::onUpdateUI(wxUpdateUIEvent& ev) { 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.Check (editor->hasFormat(ev.GetId())); break; @@ -75,7 +78,7 @@ void SetInfoPanel::onUpdateUI(wxUpdateUIEvent& ev) { void SetInfoPanel::onCommand(int 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); break; } diff --git a/src/gui/value/text.cpp b/src/gui/value/text.cpp index 69638db5..2ca9b3ff 100644 --- a/src/gui/value/text.cpp +++ b/src/gui/value/text.cpp @@ -805,7 +805,7 @@ bool TextValueEditor::doDelete() { bool TextValueEditor::canFormat(int type) const { 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; case ID_FORMAT_SYMBOL: 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(), _(":"), tag_start); if (colon < pos - 1 && text.GetChar(colon) == _(':')) { @@ -303,6 +305,7 @@ private: (code_kw > 0 ? FONT_CODE_KW : FONT_NORMAL) | (code_string > 0 ? FONT_CODE_STRING : FONT_NORMAL), underline > 0, + strikethrough > 0, fonts.empty() ? nullptr : &fonts.back(), param > 0 || param_ref > 0 ? ¶m_colors[(param_id++) % param_colors_count] diff --git a/src/script/functions/export.cpp b/src/script/functions/export.cpp index bd143d3b..acc079ae 100644 --- a/src/script/functions/export.cpp +++ b/src/script/functions/export.cpp @@ -218,6 +218,7 @@ String to_html(const String& str_in, const SymbolFontP& symbol_font, double symb Tag bold (_(""), _("")), italic(_(""), _("")), underline(_(""), _("")), + strikethrough(_(""), _("")), symbol(_(""), _("")); TagStack tags; String symbols; @@ -237,6 +238,10 @@ String to_html(const String& str_in, const SymbolFontP& symbol_font, double symb tags.open(ret, underline); } else if (is_substr(str, i, _("/u"))) { 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"))) { tags.open (ret, symbol); } 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,_("