Dim 25/08/2013 - Copier-coller

Xavier
Administrateur du site
Messages : 817
Enregistré le : mer. 22 juin 2011 18:25

Dim 25/08/2013 - Copier-coller

Message non lu par Xavier »

Copier-coller


La page principale est prête, après plusieurs reworks sur le design (et ce n'est sans doute pas la version définitive) :
CopyPaste.png
Il restera à ajouter et gérer les options, le menu contextuel et à écrire la méthode d'import des chaînes XT3.


Les premiers essais de cet outil ont levé un problème avec la sauvegarde des textes qui commencent par une tabulation : à la réouverture de l'application, les premières tabulations des textes ont disparu. Après une tentative de correction du module qui créée les fichiers XML, il est apparu comme hors de cause. C'est donc à la lecture que les tabulations commençant les textes sont effacées. Le module utilisé pour la lecture des fichiers XML étant le Parser Windows (MSXML.dll), on ne peut rien faire pour empêcher cela. Et repasser par la sauvegarde des textes en lignes séparées fait perdre les tabulations au début de toutes les lignes, en plus de plomber à nouveau les temps de chargement.

Une solution de contournement a été mise en place : XT4 injecte un caractère spécial (¤) au début du Text lors de l'écriture XML :

Code : Tout sélectionner

	// Text
	if	Self.Text.Count > 0
	then	XSX_AddElement(XML_Data, 'Text', '¤' + Self.Text.Text);
Et l'efface au chargement :

Code : Tout sélectionner

	// Text
	Self.Text.Text := GetSValue(Data_Node, 'Text');
	if	Self.Text.Count > 0
	then	if	System.Copy(Self.Text[0], 1, 1) = '¤'
		then	Self.Text[0] := System.Copy(Self.Text[0], 2, Length(Self.Text[0]) - 1);
Le caractère en début de texte de balise empêche le Parser d'effacer les premières tabulations à la lecture.
TextFix.png
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Répondre