Post Reply 
Custom Text Formatting (Previously: Getting long results in a program)
04-06-2024, 04:01 PM (This post was last modified: 04-06-2024 04:06 PM by Tyann.)
Post: #43
RE: Getting long results in Program
Hé komame
Je crois que nous touchons au but pour la structure de la fonction.
Voici un 'petit code' qui a l'air de faire le travail, j'ai fais 2 ou 3 tests.
Le marquage de la chaîne dans une chaîne:" \"chaîne\",..." ne semble pas poser de problème à EXPR().
Il y a sûrement matière à améliorer : la fabrication de la fonction peut être extériorisée, je pense.
Bien à vous.

Hey komame
I think we've hit the nail on the head when it comes to the structure of the function.
Here's a 'little code' that seems to do the job, I've done 2 or 3 tests.
Marking the string in a string: "\"string\",..." doesn't seem to be a problem for EXPR().
I'm sure there's room for improvement: the function can be made externally, I think.
Kind regards.

Code:
EXPORT ATEXTOUT_P(...l)
BEGIN
 LOCAL d:=SIZE(l),t:=TYPE(l(2)),i,f;
 CASE
  if 2<d<6  OR (d==6  AND t==8) then
   f:="TEXTOUT_P("+STRING(l);
   f:=SUPPRESS(f,"{}");
   //EXPR(f);
  end;
  if 5<d<8  OR (d==8  AND t==8)then  
   IF t≠8 THEN 
    l:=INSERT(l,2,G0);
   END;
   IF d<8 THEN
    l(0):=GET(TEXTSIZE(l(1),l(5)),1);
   END;
   f:="atextout_p("+STRING(l);
   f:=SUPPRESS(f,"{}"); 
   //EXPR(f);
  end;
  if d>7 then
   IF d==8 THEN
    l:=INSERT(l,2,G0);
   END;
   f:="atextout_p("+STRING(l);
   f:=SUPPRESS(f,"{}");
   //EXPR(f);
  end;
  default
   //RETURN "Erreur de syntaxe";
   f:="Erreur de syntaxe";
 END;
 f;
END;

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-06-2024 04:01 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: 63 Guest(s)