FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» SineCube
Coloration syntaxique avec RE ( début ) Emptypar Marc Hier à 12:38

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Coloration syntaxique avec RE ( début ) Emptypar Marc Hier à 12:22

» Philharmusique
Coloration syntaxique avec RE ( début ) Emptypar jjn4 Ven 10 Mai 2024 - 13:58

» PANORAMIC V 1
Coloration syntaxique avec RE ( début ) Emptypar papydall Jeu 9 Mai 2024 - 3:22

» select intégrés [résolu]
Coloration syntaxique avec RE ( début ) Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
Coloration syntaxique avec RE ( début ) Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
Coloration syntaxique avec RE ( début ) Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
Coloration syntaxique avec RE ( début ) Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
Coloration syntaxique avec RE ( début ) Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0
Coloration syntaxique avec RE ( début ) Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
Coloration syntaxique avec RE ( début ) Emptypar Klaus Lun 6 Mai 2024 - 11:41

» Gestion d'un système client-serveur.
Coloration syntaxique avec RE ( début ) Emptypar Klaus Lun 6 Mai 2024 - 10:23

» @Jack
Coloration syntaxique avec RE ( début ) Emptypar Jack Mar 30 Avr 2024 - 20:40

» Une calculatrice en une ligne de programme
Coloration syntaxique avec RE ( début ) Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
Coloration syntaxique avec RE ( début ) Emptypar leclode Sam 27 Avr 2024 - 17:59

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le Deal du moment :
Cartes Pokémon 151 : où trouver le ...
Voir le deal

 

 Coloration syntaxique avec RE ( début )

Aller en bas 
2 participants
AuteurMessage
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Coloration syntaxique avec RE ( début ) Empty
MessageSujet: Coloration syntaxique avec RE ( début )   Coloration syntaxique avec RE ( début ) EmptySam 1 Mar 2014 - 20:58

Un petit début de la coloration syntaxique dans un RE (RichEdit)

Code:
dim RE%,Change%,res%,pos%,code% ,mot$,x%,base$,in_liste%,item$,sep%,sep$,temp%
dim mot2$,dep%,coul%,police$
police$="arial"
sep$=","
coul%=(255*0+0)*256+0
label change,temps

height 0,500
width 0,600
dll_on "KGF.dll"

Edit 1 :top 1,5 : left 1,5 : on_change 1,change

RE%  = dll_call2("RichEditCreateWithEvent",handle(0),handle(1))
res% = dll_call5("RichEditGeometry",RE%,5,30,500,200)
res% = dll_call3("RichEditFunction",RE%,5,adr(police$))
res% = dll_call2("RichEditGetInformation",RE%,3)
res% = dll_call3("RichEditFunction",RE%,11,0)

memo 2 :top 2,235 :left 2,5 : height 2,220 : width 2,200 : bar_vertical 2
dlist 3 :file_load 3,"C:\Users\Yannick\Desktop\Essai coloration syntaxique sur re\KeyWordList.inf"
   for x%=1 to count(3)
      item$=item_read$(3,x%): sep%=instr(item$,":"):item$=trim$(left$(item$,sep%-1))
      base$=base$+item$+sep$
   next x%
timer 4 :timer_off 4:timer_interval 4,1 : on_timer 4,temps
end

temps:
  temp%=temp%+1
return

Change:
   timer_on 4
   off_change 1
   pos% = dll_call2("RichEditGetInformation",RE%,3)
   if pos%>1
      res% = dll_call3("SelectRichEditText",RE%,pos%-1,0)
      code% = dll_call2("RichEditGetInformation",RE%,5)
      if scancode = 8 :' retour
         if len(mot$)>0
            mot$=left$(mot$,len(mot$)-1)
         else
            if code%<>32
               mot$=mot2$
            end_if
         end_if
         caption 0,mot$
      else
         if code% <>32 :' espace
            mot$=mot$+chr$(code%)
            mot$=upper$(mot$)
         else
            in_liste% =dll_call3("ItemIndexInString",adr(base$),adr(sep$),adr(mot$))

            if in_liste% >0
               item_add 2,mot$+" est dans la liste"
               dep%=pos%-(len(mot$)+1)
               res% = dll_call3("SelectRichEditText",RE%,dep%,len(mot$))
               res% = dll_call3("RichEditFunction",RE%,7,coul%)
               mot2$=mot$
               mot$=""
            else
               item_add 2,mot$
               mot2$=mot$
               mot$=""
            end_if
         end_if
   end_if
   res% = dll_call3("SelectRichEditText",RE%,pos%,0)
   res% = dll_call3("RichEditFunction",RE%,7,0)
   end_if
   timer_off 4
   caption 0,str$(temp%):temp%=0
   on_change 1,change
return

Attention ! ce n' est que le début, une ébauche, un brouillon...
...enfin il y a quelques bugs parcequ' ils ne sont pas encore traités Laughing
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Coloration syntaxique avec RE ( début ) Empty
MessageSujet: re   Coloration syntaxique avec RE ( début ) EmptyDim 2 Mar 2014 - 20:29

39 vues et pas une seule remarque.... scratch 

 Laughing
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12295
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Coloration syntaxique avec RE ( début ) Empty
MessageSujet: Re: Coloration syntaxique avec RE ( début )   Coloration syntaxique avec RE ( début ) EmptyLun 3 Mar 2014 - 0:23

Légère galère pour tester, mais j'ai compris qu'il fallait créer le fichier KeyWordList.inf. Je ne connais pas sa structure, mais avec
Citation :
IF:aaa
FOR:bbb
NEXT:ccc
le programme s'exécute ans erreur. En tapant du texte, il reconnait bien la présence de ces 3 mots et le signale dans la bande log (très bien, ça !). Mais, je ne vois pas de coloriation.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Coloration syntaxique avec RE ( début ) Empty
MessageSujet: re   Coloration syntaxique avec RE ( début ) EmptyLun 3 Mar 2014 - 3:41

J' ai un peu modifié ma facon de faire.
Les "if" sont gentils mais au bout d' une dizaine...
...une chatte n' y retrouve plus ses petits. Laughing 

Il va falloir que je modifie aussi ma liste de mots clef.
une def pour un mot clef Panoramic :

Edit N : xxxxxxxxxxxxxxxxxxx

le mot clef est "Edit" donc je pense que le fichier sera structuré ainsi

Edit : {Edit N} xxxxxxxxxxxxx 

pour que l' on voit dans les commentaires que le mot clef a un attribut mais que je puisse facilement le détacher de la chaine de caractères.

Enfin, c' est de la tambouille interne Laughing 
Mais,...cela montre que c' est possible.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Coloration syntaxique avec RE ( début ) Empty
MessageSujet: Re: Coloration syntaxique avec RE ( début )   Coloration syntaxique avec RE ( début ) EmptyLun 3 Mar 2014 - 5:16

Je me suis plante dans la valeur de coul% dans le code exemple....
Smile
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12295
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Coloration syntaxique avec RE ( début ) Empty
MessageSujet: Re: Coloration syntaxique avec RE ( début )   Coloration syntaxique avec RE ( début ) EmptyLun 3 Mar 2014 - 10:48

En fait, la coloration semble bien marcher ! Comme je suis daltonien, j'ai eu du mal à repérer le changement de couleur. Mais, en mettant une autre valeur dans la variable coul%, je constate que c'est bel et bien appliqué. Très bien !

Une petite remarque:
Je n'ai pas bien compris la structure des lignes de ce fameux fichier texte avec les mots-clé. Est-ce:
mot-cle : commentaire
ou est-ce que ce qui suit le ":" a une fonction ?

Suggestion:
As-tu envisagé de coder la couleur dans le texte qui suit le ":", ou tout au moins une indication du type de mot-clé, de sorte à avoir, en plus, dans le fichier des lignes du genre:
Citation :
V=variables_système=R,G,B
F=fonctiions=R,G,B
P=procédures=R,G,R
O=objets=R,G,B
A=attributs=R,G,B
...
number_click:V,...
sin=F,...
O=memo,...
A=width,...

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8611
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Coloration syntaxique avec RE ( début ) Empty
MessageSujet: re   Coloration syntaxique avec RE ( début ) EmptyLun 3 Mar 2014 - 13:13

Pour PPE2_2

on a :

couleur de chaine
couleur de commentaire
couleur de variables
couleur de labels
couleur de procédure
couleur de mot clef Panoramic

j' envisage une couleur propriétaire pour les opérateurs ()+-*/

Pour cela il y a plusieurs listes il suffit de faire une vérif dans les listes par ordre de priorité

Le fichier que tu cites en exemple est celui des mots clef Panoramic que j' ai pompé sur le net.
Il faut le retravailler.

dans ce fichier, la structure est :

Mot clef : Commentaire

Regardes le dernier PPE2_2 il est à jour. Tout n' est pas encore parfais mais cela prend forme.
Le plus dur à gérer, c' est la liste des procédures utilisateur faites uniquement pour un projet et que l' on récupère
au chargement d' un projet...il faut que je réfléchisse un peu...


Pour les mots clef Panoramic, il faut les dépouiller de tout attribut.

ex :

Text$(N) devient Text$(

Edit N doit devenir Edit


J' ai encore un peu de travail la dessus.

La coloration syntaxique de PPE2_2 est dans COL2.bas
Revenir en haut Aller en bas
Contenu sponsorisé





Coloration syntaxique avec RE ( début ) Empty
MessageSujet: Re: Coloration syntaxique avec RE ( début )   Coloration syntaxique avec RE ( début ) Empty

Revenir en haut Aller en bas
 
Coloration syntaxique avec RE ( début )
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» V2.23 du 21/08/2014 - début de la coloration syntaxique
» Coloration syntaxique : un bug bénin
» debut de site avec tutoriels
» Coloration syntaxique dans l'Editeur
» V3.25 du 23/08/2014 - coloration syntaxique de Panoramic

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Présentation et bavardage-
Sauter vers: