FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Dessin 2D: largeur de trait
par papydall Hier à 23:31

» Projet de planétarium virtuel.
par Jean Claude Hier à 21:59

» PanExpress : l'éditeur Panoramic avec création d'objet
par Jean Claude Hier à 20:32

» Animation: Feux de signalisation
par Minibug Hier à 20:28

» Quantité de mémoire utilisée par un exe
par Jack Mar 19 Juin 2018 - 16:39

» Problème avec 'file_load'.
par Pedro Alvarez Lun 18 Juin 2018 - 8:12

» Version instantanée V 0.9.28i20 du 13/06/2018
par jjn4 Sam 16 Juin 2018 - 14:25

» string$(0,chr$(32)) sans erreur
par silverman Ven 15 Juin 2018 - 19:56

» Version instantanée V 0.9.28i19 du 13/06/2018
par Minibug Ven 15 Juin 2018 - 19:14

» Mes souhaits d'amélioration de Panoramic.
par Pedro Alvarez Jeu 14 Juin 2018 - 20:17

» [RÉSOLU] Message d'erreur impossible à indentifier
par Minibug Mer 13 Juin 2018 - 20:52

» Cadre pour image
par Jean Claude Mar 12 Juin 2018 - 16:31

» Créateur d'objets Panoramic
par Minibug Mar 12 Juin 2018 - 14:02

» Planétarium gratuit.
par Jean Claude Sam 9 Juin 2018 - 18:50

» Comment afficher une image sans fond.
par JL35 Sam 9 Juin 2018 - 14:16

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2018
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier

Partagez | 
 

 Encore un diaporama

Aller en bas 
AuteurMessage
JL35



Nombre de messages : 6275
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Encore un diaporama   Ven 12 Juin 2015 - 21:25

Pour regarder les photos de vacances (justement, j'y vais), deux subs, d'abord un diaporama plein écran d'un répertoire d'images, avec défilement automatique à vitesse réglable:
Code:
SUB Diaporama(rep$)
' Diaporama d'un répertoire d'images donné à vitesse variable, plein écran
DIM_LOCAL nf%,w%,h%,wi%,hi%,i%,j%,p%,ff%,lf%,wf%,mm%,al%,sp%,ni%,f$,a$,d$,q$
DIM_LOCAL bt1%,bt2%,a1%,pau%,id%
IF LABEL("Qdiapo")=0 THEN LABEL Qdiapo
IF LABEL("Qaffim")=0 THEN LABEL Qaffim
IF LABEL("QDimDat")=0 THEN LABEL QDimDat
IF LABEL("Qdiapo")=0 THEN LABEL Qdiapo
IF LABEL("Qactif")=0 THEN LABEL Qactif
q$ = CHR$(34)
nf% = 5000
FORM nf%: BORDER_HIDE nf%: FULL_SPACE nf%
  COLOR nf%,180,255,255: FONT_BOLD nf%: FONT_NAME nf%,"Arial": FONT_SIZE nf%,10
h% = HEIGHT(nf%): w% = 4*h%/3
p%=nf%+1: PICTURE p%: PARENT p%,nf%: WIDTH p%,w%: HEIGHT p%,h%: STRETCH_ON p%
i%=p%+1: BUTTON i%: PARENT i%,nf%: TOP i%,5: LEFT i%,WIDTH(nf%)-90
  CAPTION i%,"Quitter": ON_CLICK i%,Qdiapo
lf% = WIDTH(p%)+5: wf% = WIDTH(nf%)-lf%
i%=i%+1: ALPHA i%: PARENT i%,nf%: TOP i%,30: LEFT i%,lf%+5
  CAPTION i%,"Répertoire des images :"
i%=i%+1: EDIT i%: PARENT i%,nf%: TOP i%,TOP(i%-1)+18: LEFT i%,lf%+5: WIDTH i%,wf%-10
  IF RIGHT$(rep$,1)<>"\" THEN rep$=rep$+"\"
  TEXT i%,rep$
mm%=i%+1: MEMO mm%: HIDE mm%
  EXECUTE_WAIT "cmd.exe /c DIR /B "+q$+rep$+"*.jpg"+q$+" | clip"
  CLEAR mm%: CLIPBOARD_PASTE mm%
i%=mm%+1: ALPHA i%: PARENT i%,nf%: TOP i%,100: LEFT i%,lf%+5
  CAPTION i%,"Délai:              ms."
i%=i%+1: SPIN i%: PARENT i%,nf%: TOP i%,TOP(i%-1)-3: LEFT i%,lf%+45: WIDTH i%,55
  POSITION i%,1500: sp% = i%
i%=sp%+1: BUTTON i%: PARENT i%,nf%: TOP i%,TOP(sp%): LEFT i%,lf%+150
  CAPTION i%,"Précédent": bt1%=i%: ON_CLICK bt1%,Qactif
i%=i%+1: BUTTON i%: PARENT i%,nf%: TOP i%,TOP(i%-1): LEFT i%,LEFT(i%-1)+80
  CAPTION i%,"Continuer": bt2%=i%: ON_CLICK bt2%,Qactif

a1%=bt2%+1: ALPHA a1%: PARENT a1%,nf%: TOP a1%,185: LEFT a1%,lf%+20: TOP a1%,180
  FONT_SIZE a1%,12
al%=a1%+1: LIST al%: PARENT al%,nf%: TOP al%,200: LEFT al%,lf%+20: WIDTH al%,300
  HEIGHT al%,65: COLOR al%,255,255,0: FONT_SIZE al%,12

pau% = 1: ' affichage 1ère image, puis pause
FOR ni% = 1 TO COUNT(mm%)
    GOSUB Qaffim
    i% = POSITION(sp%): IF i%<1 THEN i% = 1
    PAUSE i%
    IF CLICKED(p%+1) = 1 THEN ff%=1: EXIT_FOR: ' Quitter
    WHILE pau% = 1
        PAUSE 100: IF ff% = 1 THEN EXIT_WHILE
    END_WHILE
    IF ff% = 1 THEN EXIT_FOR
NEXT ni%
WHILE ff% = 0: PAUSE 100: END_WHILE: DELETE nf%: EXIT_SUB
' ..............................................................................
Qdiapo:
ff% = 1
RETURN
' ..............................................................................
Qactif:
i% = NUMBER_CLICK
IF i% = bt1%
    pau% = 1: CAPTION bt2%,"Continuer"
    ni% = ni%-1: IF ni%<1 THEN ni% = 1
    GOSUB Qaffim
ELSE
    IF pau% = 1
        pau% = 0: CAPTION bt2%,"Pause"
    ELSE
        pau% = 1: CAPTION bt2%,"Continuer"
    END_IF
END_IF
RETURN
' ..............................................................................
Qaffim:
f$ = rep$+ITEM_READ$(mm%,ni%): GOSUB QDimDat: ' -> wi%, hi%, d$
WIDTH p%,h%*wi%/hi%
FILE_LOAD p%,f$
CLEAR al%: ITEM_ADD al%,ITEM_READ$(mm%,ni%): ITEM_ADD al%,STR$(wi%)+" x "+STR$(hi%)
IF d$<>"" THEN ITEM_ADD al%,MID$(d$,9,2)+"/"+MID$(d$,6,2)+"/"+LEFT$(d$,4)+" à"+MID$(d$,11,6)
CAPTION a1%, "  Image:  "+STR$(ni%)+" / "+STR$(COUNT(mm%))
RETURN
' ..............................................................................
QDimDat:
' dimensions et date/heure de prise de vue de l'image f$
FILEBIN_OPEN_READ 9, f$: FILEBIN_HEXA_READ 9,2000,a$: FILEBIN_CLOSE 9
i% = INSTR(a$, "02A004")
IF i% > 0: ' infos Exif
    wi% = HEX(MID$(a$,i%+16,2))+256*HEX(MID$(a$,i%+18,2))
    i% = INSTR(a$, "03A004")
    IF i% > 0 THEN hi% = HEX(MID$(a$,i%+16,2))+256*HEX(MID$(a$,i%+18,2))
ELSE
    ' si pas d'exifs
    i% = INSTR(a$,"FFC00011"): IF i% = 0 THEN i% = INSTR(a$, "FFC20011")
    IF i%>0 THEN hi%=HEX(MID$(a$,i%+10,4)): wi%=HEX(MID$(a$,i%+14,4))
END_IF
d$ = ""
i% = INSTR(a$, "30313030")
IF i% > 0
    a$ = MID$(a$,i%,500): i% = INSTR(a$,"3230"): ' recherche à partir de l'an 2000
    IF i%>0
        a$ = MID$(a$,i%,38)
        FOR i% = 1 TO 37 STEP 2: d$=d$+CHR$(HEX(MID$(a$,i%,2))): NEXT i%
    END_IF
END_IF
IF d$ = ""
    EXECUTE_WAIT "cmd.exe /c DIR "+q$+f$+q$+" | clip"
    d$ = CLIPBOARD_STRING_PASTE$: i% = INSTR(d$,"/")
    d$ = MID$(d$,i%-2,17): ' date du fichier
    d$ = MID$(d$,7,4)+":"+MID$(d$,4,2)+":"+LEFT$(d$,2)+MID$(d$,12,6)
END_IF
RETURN
END_SUB
Et pour l'affichage de planches d'images successives, à partir également d'un répertoire de photos, avec possibilité d'agrandir une image en cliquant dessus:
Code:
SUB Planche(rep$,x%,y%,wi%,nc%)
' Planches d'images successives du répertoire rep$, affiché en x%,y%,
' largeur des images wi%, affichage sur nc% colonnes (ajustage automatique)
' Cliquer une image pour l'agrandir, puis sur 'OK' pour revenir à la planche.
IF DIR_EXISTS(rep$) = 0 THEN EXIT_SUB
IF LABEL("Qdiap") = 0 THEN LABEL Qdiap
IF LABEL("Afdiap") = 0 THEN LABEL Afdiap
IF LABEL("Pl_vim") = 0 THEN LABEL Pl_vim
IF LABEL("Pl_svim") = 0 THEN LABEL Pl_svim
DIM_LOCAL nf%,mm%,nr%,a$,d$,r$,q$,w%,h%,bt%,eh%,ev%,hi%,i%,j%,p%,pp%,dp%,qp%,iy%,pi%
q$ = CHR$(34)
hi% = wi%*3/4
eh% = 5: ev% = 15: qp% = 0
i% = nc%*(wi%+eh%)+eh%+16: ' largeur totale
WHILE i%>SCREEN_X: nc% = nc%-1: i% = nc%*(wi%+eh%)+eh%+16: END_WHILE
nf% = 700
FORM nf%: TOP nf%,y%: LEFT nf%,x%: WIDTH nf%,i%: HEIGHT nf%,SCREEN_Y-50
  BORDER_SMALL nf%: ON_CLOSE nf%,Qdiap
nr% = INT((HEIGHT(nf%)-30)/(hi%+ev%)): ' nb de rangées maxi
mm%=nf%+1: MEMO mm%: PARENT mm%,nf%: WIDTH mm%,500: HIDE mm%
IF RIGHT$(rep$,1)<>"" THEN rep$ = rep$+""
EXECUTE_WAIT "cmd.exe /c DIR /B "+q$+rep$+"*.jpg"+q$+" | clip"
CLEAR mm%: CLIPBOARD_PASTE mm%
CAPTION nf%," Répertoire:  "+rep$+"  ( "+STR$(COUNT(mm%))+" images )."
pp% = mm%+1: p% = pp%
y% = 0: x% = eh%
FOR j% = 1 TO nr%
    FOR i% = 1 TO nc%
        PICTURE p%: PARENT p%,nf%: TOP p%,y%: LEFT p%,x%: WIDTH p%,wi%: HEIGHT p%,hi%
          STRETCH_ON p%: dp% = p%: COLOR p%,180,255,255: ON_CLICK p%,Pl_vim
        ALPHA p%+1: PARENT p%+1,nf%: TOP p%+1,y%+hi%: LEFT p%+1,x%:WIDTH p%+1,wi%
        FONT_NAME p%+1,"Consolas": FONT_SIZE p%+1,7
        p% = p%+2: x%=x%+wi%+eh%
    NEXT i%
    y% = y%+hi%+ev%: x% = eh%
NEXT j%
i% = dp%+2
BUTTON i%: PARENT i%,nf%: TOP i%,HEIGHT(nf%)-60: LEFT i%,WIDTH(nf%)/2-120
  CAPTION i%,"Précédent": FONT_BOLD i%: ON_CLICK i%,Afdiap: bt% = i%
i%=i%+1: BUTTON i%: PARENT i%,nf%: TOP i%,TOP(i%-1): LEFT i%,LEFT(i%-1)+80
  CAPTION i%,"Suivant": FONT_BOLD i%: ON_CLICK i%,Afdiap
i%=i%+1: BUTTON i%: PARENT i%,nf%: TOP i%,TOP(i%-1): LEFT i%,LEFT(i%-1)+80
  CAPTION i%,"Quitter": FONT_BOLD i%: ON_CLICK i%,Qdiap
i%=i%+1: PICTURE i%: PARENT i%,nf%: HIDE i%: WIDTH i%,wi%: HEIGHT i%,hi%
  COLOR i%,180,255,255: CLIPBOARD_COPY i%: ' pour nettoyage
' affichage d'une image agrandie :
pi%=i%+1: PICTURE pi%: PARENT pi%,nf%: TOP pi%,hi%/2: LEFT pi%,WIDTH(nf%)/6
  WIDTH pi%,2*WIDTH(nf%)/3: HEIGHT pi%,3*WIDTH(pi%)/4: HIDE pi%: STRETCH_ON pi%
i%=pi%+1: ALPHA i%: PARENT i%,nf%: HIDE i%: TOP i%,TOP(pi%)+HEIGHT(pi%)-15
  LEFT i%,LEFT(pi%)+2: COLOR i%,255,255,0: FONT_BOLD i%
i%=i%+1: BUTTON i%: PARENT i%,nf%: HIDE i%: TOP i%,TOP(pi%)+HEIGHT(pi%)-18
  WIDTH i%,40: HEIGHT i%,18: LEFT i%,LEFT(pi%)+WIDTH(pi%)-43: CAPTION i%,"OK"
  FONT_BOLD i%: ON_CLICK i%,Pl_svim
'
iy% = 1: ' init, planche 1
GOSUB Afdiap
WHILE qp% = 0: PAUSE 300: END_WHILE: DELETE nf%: EXIT_SUB: ' attente Quit
' ..............................................................................
Afdiap:
SHOW bt%+1
IF CLICKED(bt%) = 1
    IF iy% = 1+nc%*nr% THEN RETURN: ' 1ère page déjà affichée
    iy%=iy%-2*nc%*nr%: IF iy%<1 THEN iy% = 1
END_IF
FOR i% = pp% TO dp% STEP 2: CLIPBOARD_PASTE i%: CAPTION i%+1,"": NEXT i%: ' Raz
p% = pp%: j% = 0
FOR i% = iy% TO iy%+nc%*nr%-1
    IF qp% = 1 THEN RETURN
    IF i% > COUNT(mm%) THEN HIDE bt%+1: EXIT_FOR
    a$ = ITEM_READ$(mm%,i%): FILE_LOAD p%,rep$+a$: CAPTION p%+1,a$
    display
    p% = p%+2
NEXT i%
IF j% = 0 THEN iy% = iy%+nc%*nr%
RETURN
' ..............................................................................
Pl_vim:
i% = NUMBER_CLICK: a$ = CAPTION$(i%+1): FILE_LOAD pi%,rep$+a$
FILEBIN_OPEN_READ 9,rep$+a$: FILEBIN_HEXA_READ 9,2000,r$: FILEBIN_CLOSE 9
i% = INSTR(r$, "02A004")
IF i% > 0: ' infos Exif
    w% = HEX(MID$(r$,i%+16,2))+256*HEX(MID$(r$,i%+18,2))
    i% = INSTR(r$, "03A004")
    IF i% > 0 THEN h% = HEX(MID$(r$,i%+16,2))+256*HEX(MID$(r$,i%+18,2))
ELSE
    ' si pas d'exifs
    i% = INSTR(r$,"FFC00011"): IF i% = 0 THEN i% = INSTR(r$, "FFC20011")
    IF i%>0 THEN h%=HEX(MID$(r$,i%+10,4)): w%=HEX(MID$(r$,i%+14,4))
END_IF
d$ = ""
i% = INSTR(r$, "30313030")
IF i% > 0
    r$ = MID$(r$,i%,500): i% = INSTR(r$,"3230")
    IF i% > 0
        r$ = MID$(r$,i%,38)
        d$ = "": FOR i% = 1 TO 37 STEP 2: d$=d$+CHR$(HEX(MID$(r$,i%,2))): NEXT i%
    END_IF
END_IF
IF d$ = ""
    EXECUTE_WAIT "cmd.exe /c DIR "+q$+rep$+a$+q$+" | clip"
    d$ = CLIPBOARD_STRING_PASTE$: i% = INSTR(d$,"/")
    d$ = MID$(d$,i%-2,17): ' date du fichier
END_IF
CAPTION pi%+1," "+a$+"  ("+STR$(w%)+"x"+STR$(h%)+")  "+d$+" "
SHOW pi%: SHOW pi%+1: SHOW pi%+2
RETURN
' ..............................................................................
Pl_svim:
HIDE pi%: HIDE pi%+1: HIDE pi%+2
RETURN
' ..............................................................................
Qdiap:
qp% = 1
RETURN
END_SUB
Le tout en pur Panoramic, et sans Timer.
Ca s'inscrit dans un programme plus général d'interclassement par ordre chronologique de prise de vue de deux séries de photos prises à partir de deux appareils différents, pour n'en faire qu'une seule.

Edit 20/06: correction des deux subs pour supporter les noms de répertoires/fichiers comportant des espaces. + correction de la sub Diaporama pour les photos antérieures à l'an 2000.


Dernière édition par JL35 le Sam 20 Juin 2015 - 19:11, édité 5 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5923
Age : 45
Localisation : 77500
Date d'inscription : 18/04/2011

MessageSujet: Re: Encore un diaporama   Ven 12 Juin 2015 - 21:34

Merci JL35 Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

Nombre de messages : 5487
Age : 64
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Encore un diaporama   Sam 13 Juin 2015 - 7:14

Salut JL35,

Pour le moment je n'ai pas réussi à ouvrir le moindre répertoire.

1) rep$ n'accepte pas les noms avec des espaces (ça, j'ai résolu en prenant un répertoire dont le nom n'a pas d'espace)

2) il y a un problème ligne 103 (ce numéro est approximatif, c'est moins)
C'est   a$ = MID$(a$,i%,38)  qui déclenche l'erreur (....négative 0...)
J'ai voulu faire un message a$, mais la longueur de a$ était tellement grande que j'ai été obligé de tuer la tâche.

3) le bouton "Quitter" ne fonctionne pas, mais comme le programme n'est pas allé à son terme...

Je repasserais, dans la journée....

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 6275
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Encore un diaporama   Sam 13 Juin 2015 - 7:40

Désolé pas le temps, je dois partir tout de suite pour la semaine, je verrai au retour...
Pour le rep$, s'il y a des espaces il doit suffire de l'entourer avec des chr$(34)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5952
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Encore un diaporama   Sam 13 Juin 2015 - 15:27

@Jean Claude qui ne lit pas les messages de Papydall. Sad

Pour les noms des fichiers comportant des espaces, j’ai posté à cet endroit comment  faire.
Mais comme  tu es devenu flemmard (il me semble rabbit)  , je rappelle ici le code.

Code:

rem ============================================================================
rem Renommer tous les fichiers d un dossier dont les noms comportent des espaces
rem en les remplaçant par le caractère de soulignement _ (underscore)
rem Par exemple  :
rem Le fichier   : "Mon fichier test.bas"
rem sera renommé :  "Mon_fichier_test.bas"
rem ============================================================================
' Pour tester :
' créer un dossier de travail sur le bureau : "Mon Dossier" par exemple
' y copier quelques fichiers (pour servir de test) dont les noms comportent des espaces
' Par exemple :
' "Mon fichier avec espace.txt"
' "Mon second fichier 1 2 3 .bas"
' Appeler la sub : Renomme_Fichiers("C:\Users\acer\Desktop\Mon Dossier")
' Vos fichiers devront être renommés en :
' "Mon_fichier_avec_espace.txt"
' "Mon_second_fichier_1_2_3.bas
rem ============================================================================
rem NB : Ce script renomme seulement les fichiers, pas les dossiers !
rem ============================================================================

Renomme_Fichiers("C:\Users\acer\Desktop\Nouveau dossier") : ' Adapter le chemin

end
rem ============================================================================
' Script pour remplacer les espaces dans les noms des fichiers par le caractère
' de soulignement _ (underscore)
SUB Renomme_Fichiers(dossier$)
    dim_local src$,q$
    if dir_exists("C:\temp") = 0 then dir_make "C:\temp"
    if dir_exists(dossier$) = 0
       message "Le dossier : " + dossier$ + " n'existe pas !" + chr$(13) + "Veuillez vérifier son chemin"
       exit_sub
    end_if
    src$ = "C:\temp\rename.bat" : q$ = chr$(34)
    FILE_OPEN_WRITE 9999,src$
    FILE_WRITELN 9999,"@echo off"
    FILE_WRITELN 9999,"setlocal enabledelayedexpansion"
    FILE_WRITELN 9999,"for /r " +q$ + dossier$ + q$ + " %%a in (*.*) do ("
    FILE_WRITELN 9999,"set "+q$+"path=%%~nxa"+q$
    FILE_WRITELN 9999,"set "+q$+"path=!path: =_!"+q$
    FILE_WRITELN 9999,"move /y "+q$+"%%~a"+q$+" "+q$+"%%~dpa!path!"+q$
    FILE_WRITELN 9999,")"
    FILE_CLOSE 9999
    EXECUTE_WAIT src$
    FILE_DELETE src$
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
JL35



Nombre de messages : 6275
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Encore un diaporama   Sam 20 Juin 2015 - 18:09

J'arrive, j'ai corrigé là-haut les deux subs Diaporama et Planche pour supporter les noms de fichiers et répertoires comportant des espaces. C'est une correction minime: rajout de 'quotes': chr$(34), pour encadrer le chemin dans la fonction Dir.
Papydall, ta solution est très bien, mais c'est quand même au programme de s'adapter aux noms de fichiers et pas l'inverse...
Quant à l'autre erreur signalée par Jean Claude, difficile sans avoir le fichier de savoir ce qu'il y a dedans qui provoque l'erreur, c'est dans une partie qui extrait du contenu du fichier image certaines informations de prise de vue. Après examen, cette erreur peut se produire pour des photos antérieures à l'an 2000, c'est corrigé ci-dessus.
Si la date n'est pas trouvée dans les infos de prise de vue, c'est la date du fichier qui sera affichée.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Encore un diaporama   

Revenir en haut Aller en bas
 
Encore un diaporama
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Comboost : un diaporama hébergé en ligne
» Diaporama photos
» diaporama : les vignettes défilantes n'apparaissent pas
» [Resolu] Problème avec les transitions d'un diaporama
» [Résolu] Stopper puis rejouer un diaporama

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: