Post Reply 
Custom Text Formatting (Previously: Getting long results in a program)
04-04-2024, 07:34 PM
Post: #39
RE: Getting long results in Program
Bonjour komame
Oui hier soir, je vous ai répondu rapidement, ce que je voulais dire c'est qu'avec une seule fonction il faut tester combien il y a d'éléments dans la liste et aussi le type du second élément.
Avec plusieurs fonctions les tests ne commencent qu'à partir de 6 éléments et portent seulement sur le type du second. (du moins si mon approche est correcte).
Ceci dit, vôtre méthode avec EXECON ( une instruction que j'utilise rarement) facilite les choses.
Je vous joint le code que j'ai écrit avec plusieurs fonctions pour voir ce vous en pensez.
Concernant la largeur, je suis d'accord avec vous et un 'TEXTSIZE' avec attributs serait effectivement nécessaire
Merci de vôtre patience.

Hello komame
Yes, last night I gave you a quick answer. What I meant was that with a single function you need to test how many elements there are in the list and also the type of the second element.
With several functions, the tests don't start until there are 6 or more elements and only the type of the second element is tested (at least if my approach is correct).
That said, your method with EXECON (an instruction I rarely use) makes things easier.
I've attached the code I wrote with several functions to see what you think.
Regarding the width, I agree with you and a 'TEXTSIZE' with attributes would indeed be necessary.
Thank you for your patience.

Code:
ICON buffer 89504E470D0A1A0A0000000D494844520000014A0000001C01000000002FF2CBF6000000027​4524E5300007693CD3800000018494441547801EDC10109000000C3A0F54FFD1C073580230304B40​001D69772FE0000000049454E44AE426082;
EXPORT TEXT_P(s,x,y)
BEGIN
 TEXTOUT_P(s,x,y);
END;
EXPORT TEXT_P(s,g,x,y)
BEGIN
 TEXTOUT_P(s,g,x,y);
END;
EXPORT TEXT_P(s,g,x,y,p)
BEGIN
 TEXTOUT_P(s,g,x,y,p); 
END;
EXPORT TEXT_P(s,g,x,y,p,c)
BEGIN
 IF TYPE(g)≠8 THEN
  TEXT_P(s,G0,g,x,y,p,c); 
 ELSE
  TEXTOUT_P(s,g,x,y,p,c);
 END;
END;
EXPORT TEXT_P(s,g,x,y,p,c,a)
BEGIN
 LOCAL l;
 IF TYPE(g)≠8 THEN
  TEXT_P(s,G0,g,x,y,p,c,a)
 ELSE
  l:=GET(TEXTSIZE(s,p),1);
  TEXT_P(s,g,x,y,p,c,a,l); 
 END;
END;
EXPORT TEXT_P(s,g,x,y,p,c,a,l)
BEGIN
 IF TYPE(g)≠8 THEN
  TEXT_P(s,G0,g,x,y,p,c,a,l);
 ELSE
 //affichage attributs transparent
 END;

END;
EXPORT TEXT_P(s,g,x,y,p,c,a,l,f)
BEGIN
 //affichage attributs recouvrement 

END;

Vous remarquerez qu'à chaque appel avec G0, les paramètres changent : 'g' devient 'x', 'x' devient 'y' etc...
J'avoue que ce truc m'a fait des noeuds au cerveau.

You'll notice that each time you call G0, the parameters change: 'g' becomes 'x', 'x' becomes 'y' etc...
I have to admit that this thing gave me brain knots.


Translated with DeepL.com (free version)

Sorry for my english
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Getting long results in Program - Tyann - 04-04-2024 07:34 PM
RE: Custom Text Formatting - Tyann - 04-15-2024, 06:55 PM
RE: Custom Text Formatting - komame - 04-15-2024, 07:42 PM
RE: Custom Text Formatting - Tyann - 04-16-2024, 04:38 AM
RE: Custom Text Formatting - komame - 04-16-2024, 06:02 AM



User(s) browsing this thread: 56 Guest(s)