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
» 2D_fill_color
Outils couleurs Emptypar Marc Hier à 14:25

» Consommation gaz électricité
Outils couleurs Emptypar leclode Mer 17 Avr 2024 - 11:07

» trop de fichiers en cours
Outils couleurs Emptypar lepetitmarocain Mer 17 Avr 2024 - 10:19

» on_key_down (résolu)
Outils couleurs Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
Outils couleurs Emptypar jjn4 Jeu 4 Avr 2024 - 14:42

» Bataille-navale
Outils couleurs Emptypar jjn4 Mer 3 Avr 2024 - 14:08

» Minimiser une fenêtre Panoramic.
Outils couleurs Emptypar Pedro Mar 2 Avr 2024 - 13:50

» Récapitulatif ludothèque panoramic jjn4
Outils couleurs Emptypar jjn4 Lun 1 Avr 2024 - 18:04

» demande explication KGF pour imprimer en mm
Outils couleurs Emptypar JL35 Jeu 28 Mar 2024 - 17:28

» Petit passage furtif
Outils couleurs Emptypar Froggy One Mer 27 Mar 2024 - 14:26

» SPIN et aide langage (résolu)
Outils couleurs Emptypar leclode Sam 23 Mar 2024 - 15:20

» Aide-mémoire des mots-clés Panoramic
Outils couleurs Emptypar papydall Mer 20 Mar 2024 - 21:23

» Je ne comprend pas pourquoi la largeur de la scene 3d change
Outils couleurs Emptypar Marc Mar 12 Mar 2024 - 20:06

» Comment télécharger panoramic?
Outils couleurs Emptypar lepetitmarocain Sam 9 Mar 2024 - 13:31

» @lepetitmarocain <==> KGFGrid
Outils couleurs Emptypar Klaus Dim 3 Mar 2024 - 9:59

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     
CalendrierCalendrier
Le Deal du moment :
Réassort du coffret Pokémon 151 ...
Voir le deal

 

 Outils couleurs

Aller en bas 
+3
Jean Claude
silverman
Yannick
7 participants
Aller à la page : 1, 2, 3, 4  Suivant
AuteurMessage
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: Outils couleurs   Outils couleurs EmptyJeu 18 Mai 2017 - 20:09

J' ai pondu cette outils pour mon éditeur.
Il n' y ait pas encore inclus mais qu' en pensez vous ?

Code:
dim no%,i%
dim r%,g%,b%
dim EtatStandByPalette%
dim ColPerso%(16)
      
dim FenPaletteCouleur% : no%=no%+1 : FenPaletteCouleur%=no%
dim ContPalette%       : no%=no%+1 : ContPalette%=no%
dim PictPalWindows%(48): for i%=1 to 48 : no%=no%+1 : PictPalWindows%(i%)=no% : next i%
dim AlphPalette%(2)    : for i%=1 to 2  : no%=no%+1 : AlphPalette%(i%)=no%    : next i%
dim PictPalPerso%(16)  : for i%=1 to 16 : no%=no%+1 : PictPalPerso%(i%)=no%   : next i%
dim PictPalette%       : no%=no%+1 : PictPalette%=no%
dim PictChxPalette%    : no%=no%+1 : PictChxPalette%=no%
dim SpnPalette%(3)     : for i%=1 to 3  : no%=no%+1 : SpnPalette%(i%)=no%     : next i%
dim AlphPalConvert%(3) : for i%=1 to 3  : no%=no%+1 : AlphPalConvert%(i%)=no% : next i%

label MouseMoveCadre
label MouseMovePalette
label ClicBtn
label ClicPalWindows
label ClicPalPerso
label DClicPictChxPalette
label DClicPalPerso
label Change
 
button 9999
top 9999,10
left 9999,10
caption 9999,"Outils couleurs"
on_click 9999,ClicBtn
end

sub FormPalette()
   dim_local i%,l%,t%,x%,y%,V$
  
   if object_exists(FenPaletteCouleur%)=1
      show FenPaletteCouleur%
   else
      form FenPaletteCouleur%
      border_small FenPaletteCouleur%
      height FenPaletteCouleur%,305
      width FenPaletteCouleur%,450
      top FenPaletteCouleur%,(screen_y-height(FenPaletteCouleur%))/2
      left FenPaletteCouleur%,(screen_x-width(FenPaletteCouleur%))/2
      caption FenPaletteCouleur%,"Outils couleurs"
      
      font_name FenPaletteCouleur%,"Arial"
      font_size FenPaletteCouleur%,8
      font_color FenPaletteCouleur%,85,85,127
      
      container ContPalette%
      parent ContPalette%,FenPaletteCouleur%
      height ContPalette%,height_client(FenPaletteCouleur%)-5
      width ContPalette%,width_client(FenPaletteCouleur%)-10
      top ContPalette%,0
      left ContPalette%,5
      on_mouse_move ContPalette%,MouseMoveCadre
      
      alpha AlphPalette%(1)
      parent AlphPalette%(1),ContPalette%
      top AlphPalette%(1),15
      left AlphPalette%(1),5
      caption AlphPalette%(1),"Couleurs Windows :"
      
      l%=5      
      for x%=1 to 8
         t%=top(AlphPalette%(1))+height(AlphPalette%(1))+5      
         for y%=1 to 6
            i%=i%+1            
            picture PictPalWindows%(i%)
            parent PictPalWindows%(i%),ContPalette%
            height PictPalWindows%(i%),20
            width PictPalWindows%(i%),20
            top PictPalWindows%(i%),t%
            left PictPalWindows%(i%),l%
            read V$
            color PictPalWindows%(i%),hex(mid$(v$,1,2)),hex(mid$(v$,3,2)),hex(mid$(v$,5,2))
            cursor_point PictPalWindows%(i%)
            on_click PictPalWindows%(i%),ClicPalWindows
            t%=t%+25              
         next y%
         l%=l%+25  
      next x%
      
      alpha AlphPalette%(2)
      parent AlphPalette%(2),ContPalette%
      top AlphPalette%(2),top(PictpalWindows%(48))+height(PictpalWindows%(48))+10
      left AlphPalette%(2),5
      caption AlphPalette%(2),"Couleurs Personnalisées :"      

      l%=5
      i%=0      
      for x%=1 to 8
         t%=top(AlphPalette%(2))+height(AlphPalette%(2))+5      
         for y%=1 to 2
            i%=i%+1            
            picture PictPalPerso%(i%)
            parent PictPalPerso%(i%),ContPalette%
            height PictPalPerso%(i%),20
            width PictPalPerso%(i%),20
            top PictPalPerso%(i%),t%
            left PictPalPerso%(i%),l%
            color PictPalPerso%(i%),0,0,0
            cursor_point PictPalPerso%(i%)
            hint PictPalPerso%(i%),"Clic pour sélectionner"+chr$(13)+"Double clic pour effacer"
            on_click PictPalPerso%(i%),ClicPalPerso
            on_double_click PictPalPerso%(i%),DClicPalPerso
            t%=t%+25              
         next y%
         l%=l%+25  
      next x%

      picture PictPalette%
      parent PictPalette%,ContPalette%
      height PictPalette%,128
      width PictPalette%,158
      top PictPalette%,top(AlphPalette%(1))+height(AlphPalette%(1))+5
      left PictPalette%,left(PictPalWindows%(48))+width(PictPalWindows%(48))+30
      file_load PictPalette%,"palette.bmp"
      cursor_cross PictPalette%
      on_mouse_move PictPalette%,MouseMovePalette
      on_click PictPalette%,ClicBtn
      
      picture PictChxPalette%
      parent PictChxPalette%,ContPalette%
      height PictChxPalette%,22
      width PictChxPalette%,22
      top PictChxPalette%,top(PictPalette%)+height(PictPalette%)+5
      left PictChxPalette%,left(PictPalette%)
      color PictChxPalette%,0,0,0
      cursor_point PictChxPalette%
      hint PictChxPalette%,"Cliquer pour convertir"+chr$(13)+"Double clic pour sauvegarder dans les couleurs personnalisées"
      on_click PictChxPalette%,ClicBtn
      on_double_click PictChxPalette%,DClicPictChxPalette
      
      t%=top(PictChxPalette%)
      l%=left(PictChxPalette%)+width(PictChxPalette%)+5
      for i%=1 to 3
         spin SpnPalette%(i%)
         parent SpnPalette%(i%),ContPalette%
         width SpnPalette%(i%),45
         top SpnPalette%(i%),t%
         left SpnPalette%(i%),l%
         l%=l%+width(SpnPalette%(i%))+5
         font_color SpnPalette%(i%),255,255,255
         min SpnPalette%(i%),0
         max SpnPalette%(i%),255            
      next i%
      color SpnPalette%(1),255,0,0
      color SpnPalette%(2),0,180,0
      color SpnPalette%(3),0,0,255
      
      alpha AlphPalConvert%(1)
      parent AlphPalConvert%(1),ContPalette%
      caption AlphPalConvert%(1),"RGB => "
      top AlphPalConvert%(1),top(SpnPalette%(1))+height(SpnPalette%(1))+10
      left AlphPalConvert%(1),left(PictChxPalette%)
      
      alpha AlphPalConvert%(2)
      parent AlphPalConvert%(2),ContPalette%
      caption AlphPalConvert%(2),"HTML => "
      top AlphPalConvert%(2),top(AlphPalConvert%(1))+height(AlphPalConvert%(1))+5
      left AlphPalConvert%(2),left(PictChxPalette%)
      
      alpha AlphPalConvert%(3)
      parent AlphPalConvert%(3),ContPalette%
      caption AlphPalConvert%(3),"KGF => "
      top AlphPalConvert%(3),top(AlphPalConvert%(2))+height(AlphPalConvert%(2))+5
      left AlphPalConvert%(3),left(PictChxPalette%)          
   end_if
  
   for i%=1 to 16
      if ColPerso%(i%)<>0
         r%= bin_and(ColPerso%(i%),255)
         g%= bin_and(int(ColPerso%(i%)/256),255)
         b%= bin_and(int(ColPerso%(i%)/(256*256)),255)
         color PictPalPerso%(i%),r%,g%,b%
      end_if
   next i%
end_sub

Change:
   if number_change>(SpnPalette%(1)-1) and number_change<(SpnPalette%(3)+1)
      if position(number_change)>255 or position(number_change)<0
         message "Valeur incorrecte !"+chr$(13)+"Valeur de 0 et 255"
         position number_change,255
         return
      end_if
      color PictChxPalette%,position(SpnPalette%(1)),position(SpnPalette%(2)),position(SpnPalette%(3))
      return
   end_if
return

MouseMovePalette:
   off_mouse_move PictPalette%
      if mouse_x_position(PictPalette%)<0 or mouse_y_position(PictPalette%)<0
         return
      end_if    
      if object_exists(SpnPalette%(1))=1 : off_change SpnPalette%(1) : end_if
      if object_exists(SpnPalette%(2))=1 : off_change SpnPalette%(2) : end_if
      if object_exists(SpnPalette%(3))=1 : off_change SpnPalette%(3) : end_if
      r%=color_pixel_red(PictPalette%,mouse_x_position(PictPalette%),mouse_y_position(PictPalette%))
      g%=color_pixel_green(PictPalette%,mouse_x_position(PictPalette%),mouse_y_position(PictPalette%))
      b%=color_pixel_blue(PictPalette%,mouse_x_position(PictPalette%),mouse_y_position(PictPalette%))
      color PictChxPalette%,r%,g%,b%
      position SpnPalette%(1),r%
      position SpnPalette%(2),g%
      position SpnPalette%(3),b%
   on_mouse_move PictPalette%,MouseMovePalette  
return

MouseMoveCadre:
   if object_exists(SpnPalette%(1))=1 : on_change SpnPalette%(1),Change : end_if
   if object_exists(SpnPalette%(2))=1 : on_change SpnPalette%(2),Change : end_if
   if object_exists(SpnPalette%(3))=1 : on_change SpnPalette%(3),Change : end_if
return

ClicBtn:
   if number_click = 9999
      FormPalette()
      return
   end_if
   if number_click = PictPalette%
      if EtatStandByPalette%=0
         EtatStandByPalette%=1
         off_mouse_move PictPalette%
         cursor_default PictPalette%
      else
         EtatStandByPalette%=0
         on_mouse_move PictPalette%,MouseMovePalette
         cursor_cross PictPalette%      
      end_if
      return
   end_if
   if number_click = PictChxPalette%
      r%=color_pixel_red(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
      g%=color_pixel_green(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
      b%=color_pixel_blue(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
      ConvertChxPalette(r%,g%,b%)
      return
   end_if
return

DClicPictChxPalette:
   r%=color_pixel_red(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
   g%=color_pixel_green(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
   b%=color_pixel_blue(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
   SaveColorPerso(r%,g%,b%)
return

sub SaveColorPerso(r1%,g1%,b1%)
   dim_local i%
  
   for i%=1 to 16
       if ColPerso%(i%)=0
          ColPerso%(i%)=(b1%*256+g1%)*256+r1%
          color PictPalPerso%(i%),r1%,g1%,b1%
          exit_for
       end_if
   next i%
end_sub

ClicPalWindows:
   off_change SpnPalette%(1)
   off_change SpnPalette%(2)
   off_change SpnPalette%(3)
   r%=color_pixel_red(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
   g%=color_pixel_green(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
   b%=color_pixel_blue(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
   color PictChxPalette%,r%,g%,b%
   position SpnPalette%(1),r%
   position SpnPalette%(2),g%
   position SpnPalette%(3),b%  
return

ClicPalPerso:
   if mouse_left_down(number_click)=1
      off_change SpnPalette%(1)
      off_change SpnPalette%(2)
      off_change SpnPalette%(3)
      r%=color_pixel_red(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
      g%=color_pixel_green(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
      b%=color_pixel_blue(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
      color PictChxPalette%,r%,g%,b%
      position SpnPalette%(1),r%
      position SpnPalette%(2),g%
      position SpnPalette%(3),b%
   else
      message "Raté !!"
   end_if
return

DClicPalPerso:
   color number_double_click,0,0,0
   InitColPerso()
return

sub InitColPerso()
   dim_local i%
  
   for i%=1 to 16
      if number_double_click = PictPalPerso%(i%)
      ColPerso%(i%)=0
      end_if
   next i%
end_sub

sub ConvertChxPalette(R1%,G1%,B1%)
   dim_local RH$,GH$,BH$,KGFc$
    
   RH$ = Hex$(R1%) : if R1% < 16 then RH$ = "0" + RH$
   GH$ = Hex$(G1%) : if G1% < 16 then GH$ = "0" + GH$
   BH$ = Hex$(B1%) : if B1% < 16 then BH$ = "0" + BH$
  
   KGFc$ = str$((B1%*256+G1%)*256+R1%)
   caption AlphPalConvert%(1),"RGB  => "+str$(R1%)+","+str$(G1%)+","+str$(B1%)
   caption AlphPalConvert%(2),"HTML => "+RH$+GH$+BH$
   caption AlphPalConvert%(3),"KGF  => "+KGFc$      
end_sub

DATA "FF8080","FFFF80","80FF80","00FF80","80FFFF","0080FF","FF80C0","FF80FF"
DATA "FF0000","FFFF00","80FF00","00FF40","00FFFF","0080C0","8080C0","FF00FF"
DATA "804040","FF8040","00FF00","008080","004080","8080FF","800040","FF0080"
DATA "800000","FF8000","008000","008040","0000FF","0000A0","800080","8000FF"
DATA "400000","804000","004000","004040","000080","000040","400040","400080"
DATA "000000","808000","808040","808080","408080","C0C0C0","400040","FFFFFF"





L' image à sauvegarder sous "palette.bmp" dans le même dossier que le source :

Outils couleurs Palett10


Dernière édition par Yannick le Dim 21 Mai 2017 - 17:34, édité 4 fois (Raison : amélioration/correction)
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptyJeu 18 Mai 2017 - 22:01

C'est bien réalisé!
C'est un détail, mais pourquoi tu affiches tout au fur et à mesure de la création? Ca serait plus esthétique de tout créer caché et d'afficher le résultat d'un coup. Et aussi, si on entre une valeur>255 dans les spin, ça plante.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptyJeu 18 Mai 2017 - 22:11

@ Silverman,

Attention...le panoramicianisme aiguë est en train de t' atteindre !
lol!

Un spin a deux petites flèches pour son utilisation.
C' est du vice que de vouloir entrer un nombre en force.
Bon à part t 'exorciser avec des incantations du style : Papydall !!!! sors de ce corps !!!
je vais devoir sécuriser çà...
lol! 
Pour l' affichage en une seule fois, j' ai peur que l' attente soit un peu longue.
il y a un petit nombre d' objets... Wink   
Je vais voir si c' est pas trop long.

En tout cas, merci de ton retour.
Very Happy
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptyVen 19 Mai 2017 - 8:28

Elle est très bien cette palette !

Mais bon, il faut bien que je fasse une petite remarque. Very Happy
Le picture qui affiche la couleur est un peu petit, on ne saisi pas au premier coup d’œil que c'est le résultat.

Une autre (pour la route)  Very Happy  : tu as choisi d'utiliser on_click et on_double_click pour sauver ou supprimer une couleur personnalisée, je pense qu'un bon nombre d'utilisateurs va se poser la question comment on fait pour sélectionner une couleur. J'ai bien vu que tu as pris la précaution de mettre des infos-bulles (hint) pour informer l'utilisateur, mais encore faut-il qu'il survole l'objet pour s'en apercevoir.
Moi, j'aurai plutôt mis des jolis boutons pour que l'utilisateur voit , de suite, comment procéder.
Sinon, tu peux garder ton système en ajoutant un alpha d'information....

A+
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptyVen 19 Mai 2017 - 14:48

Le source a été édité dans le premier post.
Les SPIN sont sécurisés.
Laughing

@ Jean-Claude,

D' habitude tu fais comment pour sélectionner quelque chose dans un formulaire ?...
scratch

Toute fois je te concède la taille du picture de sélection qui est un peu petit.
Embarassed

Pour ma défense, c' est un outils pondu en une après midi.
Donc il est logique qu' il y ait des imperfections.
Cet outils est insérable tel qu' il est, mais dans l' éditeur il aura d' autres fonctions.
Il sera possible, dès que Jack en donnera les clés, d' insérer la couleur dans le source actif
selon le format choisi.
Les couleurs personnalisées seront enregistrées dans le fichier des paramètres pour être conservées
d' une utilisation à une autre de l' éditeur.
Je sais par expérience qu' une fois que l' on a trouvé une couleur qui nous plait, on a tendance à en user
et en abuser... 
Laughing


Dernière édition par Yannick le Sam 20 Mai 2017 - 18:10, édité 1 fois
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptyVen 19 Mai 2017 - 16:04

Yannick a écrit:
D' habitude tu fais comment pour sélectionner quelque chose dans un formulaire ?...

Ben... , je suis les instructions du programme. Very Happy

Bon, il faut attendre de voir l'application dans ton programme, là il sera temps de commenter.

A+
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptyVen 19 Mai 2017 - 16:16

Je me suis permis d'ajouter create_hide/create_show pour tester(repéré par des rem); Contrairement à tes craintes, l'affichage est nettement plus rapide.
Code:
dim no%,i%
dim r%,g%,b%
dim EtatStandByPalette%
dim ColPerso%(16)
    
dim FenPaletteCouleur% : no%=no%+1 : FenPaletteCouleur%=no%
dim ContPalette%      : no%=no%+1 : ContPalette%=no%
dim PictPalWindows%(48): for i%=1 to 48 : no%=no%+1 : PictPalWindows%(i%)=no% : next i%
dim AlphPalette%(2)    : for i%=1 to 2  : no%=no%+1 : AlphPalette%(i%)=no%    : next i%
dim PictPalPerso%(16)  : for i%=1 to 16 : no%=no%+1 : PictPalPerso%(i%)=no%  : next i%
dim PictPalette%      : no%=no%+1 : PictPalette%=no%
dim PictChxPalette%    : no%=no%+1 : PictChxPalette%=no%
dim SpnPalette%(3)    : for i%=1 to 3  : no%=no%+1 : SpnPalette%(i%)=no%    : next i%
dim AlphPalConvert%(3) : for i%=1 to 3  : no%=no%+1 : AlphPalConvert%(i%)=no% : next i%

label MouseMoveCadre
label MouseMovePalette
label ClicBtn
label ClicPalWindows
label ClicPalPerso
label DClicPictChxPalette
label DClicPalPerso
label Change
 
button 9999
top 9999,10
left 9999,10
caption 9999,"Outils couleurs"
on_click 9999,ClicBtn
end

sub FormPalette()
  dim_local i%,l%,t%,x%,y%,V$
 
  if object_exists(FenPaletteCouleur%)=1
      show FenPaletteCouleur%
  else
      create_hide                                                              :' <------------------------------
      form FenPaletteCouleur%
      border_small FenPaletteCouleur%
      height FenPaletteCouleur%,305
      width FenPaletteCouleur%,450
      top FenPaletteCouleur%,(screen_y-height(FenPaletteCouleur%))/2
      left FenPaletteCouleur%,(screen_x-width(FenPaletteCouleur%))/2
      caption FenPaletteCouleur%,"Outils couleurs"
    
      font_name FenPaletteCouleur%,"Arial"
      font_size FenPaletteCouleur%,8
      font_color FenPaletteCouleur%,85,85,127
    
      container ContPalette%
      parent ContPalette%,FenPaletteCouleur%
      height ContPalette%,height_client(FenPaletteCouleur%)-5
      width ContPalette%,width_client(FenPaletteCouleur%)-10
      top ContPalette%,0
      left ContPalette%,5
      on_mouse_move ContPalette%,MouseMoveCadre
    
      alpha AlphPalette%(1)
      parent AlphPalette%(1),ContPalette%
      top AlphPalette%(1),15
      left AlphPalette%(1),5
      caption AlphPalette%(1),"Couleurs Windows :"
    
      l%=5    
      for x%=1 to 8
        t%=top(AlphPalette%(1))+height(AlphPalette%(1))+5    
        for y%=1 to 6
            i%=i%+1          
            picture PictPalWindows%(i%)
            parent PictPalWindows%(i%),ContPalette%
            height PictPalWindows%(i%),20
            width PictPalWindows%(i%),20
            top PictPalWindows%(i%),t%
            left PictPalWindows%(i%),l%
            read V$
            color PictPalWindows%(i%),hex(mid$(v$,1,2)),hex(mid$(v$,3,2)),hex(mid$(v$,5,2))
            cursor_point PictPalWindows%(i%)
            on_click PictPalWindows%(i%),ClicPalWindows
            t%=t%+25            
        next y%
        l%=l%+25
      next x%
    
      alpha AlphPalette%(2)
      parent AlphPalette%(2),ContPalette%
      top AlphPalette%(2),top(PictpalWindows%(48))+height(PictpalWindows%(48))+10
      left AlphPalette%(2),5
      caption AlphPalette%(2),"Couleurs Personnalisées :"    

      l%=5
      i%=0    
      for x%=1 to 8
        t%=top(AlphPalette%(2))+height(AlphPalette%(2))+5    
        for y%=1 to 2
            i%=i%+1          
            picture PictPalPerso%(i%)
            parent PictPalPerso%(i%),ContPalette%
            height PictPalPerso%(i%),20
            width PictPalPerso%(i%),20
            top PictPalPerso%(i%),t%
            left PictPalPerso%(i%),l%
            color PictPalPerso%(i%),0,0,0
            cursor_point PictPalPerso%(i%)
            hint PictPalPerso%(i%),"Clic pour sélectionner"+chr$(13)+"Double clic pour effacer"
            on_click PictPalPerso%(i%),ClicPalPerso
            on_double_click PictPalPerso%(i%),DClicPalPerso
            t%=t%+25            
        next y%
        l%=l%+25
      next x%

      picture PictPalette%
      parent PictPalette%,ContPalette%
      height PictPalette%,128
      width PictPalette%,158
      top PictPalette%,top(AlphPalette%(1))+height(AlphPalette%(1))+5
      left PictPalette%,left(PictPalWindows%(48))+width(PictPalWindows%(48))+30
      file_load PictPalette%,"palette.bmp"
      cursor_cross PictPalette%
      on_mouse_move PictPalette%,MouseMovePalette
      on_click PictPalette%,ClicBtn
    
      picture PictChxPalette%
      parent PictChxPalette%,ContPalette%
      height PictChxPalette%,22
      width PictChxPalette%,22
      top PictChxPalette%,top(PictPalette%)+height(PictPalette%)+5
      left PictChxPalette%,left(PictPalette%)
      color PictChxPalette%,0,0,0
      cursor_point PictChxPalette%
      hint PictChxPalette%,"Cliquer pour convertir"+chr$(13)+"Double clic pour sauvegarder dans les couleurs personnalisées"
      on_click PictChxPalette%,ClicBtn
      on_double_click PictChxPalette%,DClicPictChxPalette
    
      t%=top(PictChxPalette%)
      l%=left(PictChxPalette%)+width(PictChxPalette%)+5
      for i%=1 to 3
        spin SpnPalette%(i%)
        parent SpnPalette%(i%),ContPalette%
        width SpnPalette%(i%),45
        top SpnPalette%(i%),t%
        left SpnPalette%(i%),l%
        l%=l%+width(SpnPalette%(i%))+5
        font_color SpnPalette%(i%),255,255,255
        min SpnPalette%(i%),0
        max SpnPalette%(i%),255          
      next i%
      color SpnPalette%(1),255,0,0
      color SpnPalette%(2),0,180,0
      color SpnPalette%(3),0,0,255
    
      alpha AlphPalConvert%(1)
      parent AlphPalConvert%(1),ContPalette%
      caption AlphPalConvert%(1),"RGB => "
      top AlphPalConvert%(1),top(SpnPalette%(1))+height(SpnPalette%(1))+10
      left AlphPalConvert%(1),left(PictChxPalette%)
    
      alpha AlphPalConvert%(2)
      parent AlphPalConvert%(2),ContPalette%
      caption AlphPalConvert%(2),"HTML => "
      top AlphPalConvert%(2),top(AlphPalConvert%(1))+height(AlphPalConvert%(1))+5
      left AlphPalConvert%(2),left(PictChxPalette%)
    
      alpha AlphPalConvert%(3)
      parent AlphPalConvert%(3),ContPalette%
      caption AlphPalConvert%(3),"KGF => "
      top AlphPalConvert%(3),top(AlphPalConvert%(2))+height(AlphPalConvert%(2))+5
      left AlphPalConvert%(3),left(PictChxPalette%)        
  end_if
 
  for i%=1 to 16
      if ColPerso%(i%)<>0
        r%= bin_and(ColPerso%(i%),255)
        g%= bin_and(int(ColPerso%(i%)/256),255)
        b%= bin_and(int(ColPerso%(i%)/(256*256)),255)
        color PictPalPerso%(i%),r%,g%,b%
      end_if
  next i%
      create_show                                                              :' <------------------------------
      top FenPaletteCouleur%,(screen_y-height(FenPaletteCouleur%))/2           :' <------------------------------
      left FenPaletteCouleur%,(screen_x-width(FenPaletteCouleur%))/2           :' <------------------------------
      show_all                                                                 :' <------------------------------
end_sub

Change:
  if number_change>(SpnPalette%(1)-1) and number_change<(SpnPalette%(3)+1)
      if position(number_change)>255 or position(number_change)<0
        message "Valeur incorrect !"+chr$(13)+"Valeur de 0 et 255"
        position number_change,255
        return
      end_if
      color PictChxPalette%,position(SpnPalette%(1)),position(SpnPalette%(2)),position(SpnPalette%(3))
      return
  end_if
return

MouseMovePalette:
  off_mouse_move PictPalette%
      if object_exists(SpnPalette%(1))=1 : off_change SpnPalette%(1) : end_if
      if object_exists(SpnPalette%(2))=1 : off_change SpnPalette%(2) : end_if
      if object_exists(SpnPalette%(3))=1 : off_change SpnPalette%(3) : end_if
      r%=color_pixel_red(PictPalette%,mouse_x_position(PictPalette%),mouse_y_position(PictPalette%))
      g%=color_pixel_green(PictPalette%,mouse_x_position(PictPalette%),mouse_y_position(PictPalette%))
      b%=color_pixel_blue(PictPalette%,mouse_x_position(PictPalette%),mouse_y_position(PictPalette%))
      color PictChxPalette%,r%,g%,b%
      position SpnPalette%(1),r%
      position SpnPalette%(2),g%
      position SpnPalette%(3),b%
  on_mouse_move PictPalette%,MouseMovePalette
return

MouseMoveCadre:
  if object_exists(SpnPalette%(1))=1 : on_change SpnPalette%(1),Change : end_if
  if object_exists(SpnPalette%(2))=1 : on_change SpnPalette%(2),Change : end_if
  if object_exists(SpnPalette%(3))=1 : on_change SpnPalette%(3),Change : end_if
return

ClicBtn:
  if number_click = 9999
      FormPalette()
      return
  end_if
  if number_click = PictPalette%
      if EtatStandByPalette%=0
        EtatStandByPalette%=1
        off_mouse_move PictPalette%
        cursor_default PictPalette%
      else
        EtatStandByPalette%=0
        on_mouse_move PictPalette%,MouseMovePalette
        cursor_cross PictPalette%    
      end_if
      return
  end_if
  if number_click = PictChxPalette%
      r%=color_pixel_red(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
      g%=color_pixel_green(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
      b%=color_pixel_blue(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
      ConvertChxPalette(r%,g%,b%)
      return
  end_if
return

DClicPictChxPalette:
  r%=color_pixel_red(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
  g%=color_pixel_green(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
  b%=color_pixel_blue(PictChxPalette%,mouse_x_position(PictChxPalette%),mouse_y_position(PictChxPalette%))
  SaveColorPerso(r%,g%,b%)
return

sub SaveColorPerso(r1%,g1%,b1%)
  dim_local i%
 
  for i%=1 to 16
      if ColPerso%(i%)=0
          ColPerso%(i%)=(b1%*256+g1%)*256+r1%
          color PictPalPerso%(i%),r1%,g1%,b1%
          exit_for
      end_if
  next i%
end_sub

ClicPalWindows:
  off_change SpnPalette%(1)
  off_change SpnPalette%(2)
  off_change SpnPalette%(3)
  r%=color_pixel_red(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
  g%=color_pixel_green(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
  b%=color_pixel_blue(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
  color PictChxPalette%,r%,g%,b%
  position SpnPalette%(1),r%
  position SpnPalette%(2),g%
  position SpnPalette%(3),b%
return

ClicPalPerso:
  if mouse_left_down(number_click)=1
      off_change SpnPalette%(1)
      off_change SpnPalette%(2)
      off_change SpnPalette%(3)
      r%=color_pixel_red(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
      g%=color_pixel_green(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
      b%=color_pixel_blue(number_click,mouse_x_position(number_click),mouse_y_position(number_click))
      color PictChxPalette%,r%,g%,b%
      position SpnPalette%(1),r%
      position SpnPalette%(2),g%
      position SpnPalette%(3),b%
  else
      message "Raté !!"
  end_if
return

DClicPalPerso:
  color number_double_click,0,0,0
  InitColPerso()
return

sub InitColPerso()
  dim_local i%
 
  for i%=1 to 16
      if number_double_click = PictPalPerso%(i%)
      ColPerso%(i%)=0
      end_if
  next i%
end_sub

sub ConvertChxPalette(R1%,G1%,B1%)
  dim_local RH$,GH$,BH$,KGFc$
  
  RH$ = Hex$(R1%) : if R1% < 16 then RH$ = "0" + RH$
  GH$ = Hex$(G1%) : if G1% < 16 then GH$ = "0" + GH$
  BH$ = Hex$(B1%) : if B1% < 16 then BH$ = "0" + BH$
 
  KGFc$ = str$((B1%*256+G1%)*256+R1%)
  caption AlphPalConvert%(1),"RGB  => "+str$(R1%)+","+str$(G1%)+","+str$(B1%)
  caption AlphPalConvert%(2),"HTML => "+RH$+GH$+BH$
  caption AlphPalConvert%(3),"KGF  => "+KGFc$    
end_sub

DATA "FF8080","FFFF80","80FF80","00FF80","80FFFF","0080FF","FF80C0","FF80FF"
DATA "FF0000","FFFF00","80FF00","00FF40","00FFFF","0080C0","8080C0","FF00FF"
DATA "804040","FF8040","00FF00","008080","004080","8080FF","800040","FF0080"
DATA "800000","FF8000","008000","008040","0000FF","0000A0","800080","8000FF"
DATA "400000","804000","004000","004040","000080","000040","400040","400080"
DATA "000000","808000","808040","808080","408080","C0C0C0","400040","FFFFFF"
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptyVen 19 Mai 2017 - 16:46

Merci Silverman.

Je vais tester et sûrement prendre. Very Happy
Là j' étais déjà sur l' outils de recherche dans un objet Synedit. 
Ouff...j' ai enfin réussi à lui faire faire ce que je voulais.
La bataille fur rude mais :
Yannick : 1 
Synedit : 0
lol!

Edit : C' est adopté pour cet outils mais cela ne fonctionne pas à tous les coups.
certains objets lorsque leur taille est conditionnée à celle du form conserve leur taille par defaut.
Suspect
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptyVen 19 Mai 2017 - 17:02

Jean Claude a écrit:
Yannick a écrit:
D' habitude tu fais comment pour sélectionner quelque chose dans un formulaire ?...
Ben... , je suis les instructions du programme.  Very Happy

Rhoooo !....le gros mensonge...
lol!

Jean Claude a écrit:

Bon, il faut attendre de voir l'application dans ton programme, là il sera temps de commenter.
A+

Là il va falloir être patient,...très patient...celui là n' avance qu' avec les avancées de Jack sur l' objet SYNEDIT.
Razz Razz Razz Razz Razz Razz Razz
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptyVen 19 Mai 2017 - 17:19

Oui, c'est un bug de create_hide, il faut utiliser le couple create_hide/create show pour chaque form créé et positionner avant show/show_all.
Yannick a écrit:
Là j' étais déjà sur l' outils de recherche dans un objet Synedit.
Ouff...j' ai enfin réussi à lui faire faire ce que je voulais.
Tu n'as pas eu des pb de recherche non trouvée avec les majuscules/minuscules dans synedit? Comment tu gères la casse?
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptyVen 19 Mai 2017 - 18:21

Ben, il y a deux choses d' ingérable vu que l' on a pas la main sur tout.
C' est la casse et le sens de la recherche.

L' algorithme de recherche est interne donc....
et comme on ne peut récupérer ni sélectionner, ni récupérer une sélection...
Je ne vois pas comment on peut éviter ce souci.

Je vais faire un extrait de cette outils de recherche.
Il faudra le prendre comme il est et l' adapter au fur et à mesure des avancées de Jack.

finalement non, il faudrait que je mette tout. Et là ca commence à faire des lignes.
Wink
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptyVen 19 Mai 2017 - 18:40

C'est clair que pour le moment l'objet SYNEDIT est encore incomplet.

J'ai précisément arrêter de coder un essai d'éditeur en m'apercevant qu'on ne peut pas faire une recherche (FIND) complète d'un mot vu que FIND est sensible à la casse.

Il y a d'autres obstacles que je n'ai pas pu contourner (ex: je n'ai pas trouvé comment écrire dans l'objet SYNEDIT), alors plutôt que de passer des heures à chercher l'impossible, j'ai mis en stand-by.

J'espère que notre nouveau président va doubler les congés, Jack en profitera pour se consacrer à Panoramic.
Quoi !? on peut rêver non, ce n'est pas encore interdit. Razz  

A+
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: RE   Outils couleurs EmptyVen 19 Mai 2017 - 18:47

Attention Jean-Claude...
tu penses, tu rêves,...tu deviens un élément subversif...
lol!

Bon, vivement la version 28i7 avec SYNEDIT complet...
...ou presque.
Laughing
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptyVen 19 Mai 2017 - 20:08

J'aime bien être subversif Very Happy
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptyVen 19 Mai 2017 - 20:45

@ Tous les nouveaux,

Voilà comment on saborde son propre sujet.
Ceci n' est pas un exemple à suivre.
Méfiez vous, le panoramicianisme est une maladie très contagieuse.
Outils couleurs Depositphotos_4114611-stock-illustration-nurse-emoticon
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptyVen 19 Mai 2017 - 21:12

Outils couleurs Ob_e3e10
Revenir en haut Aller en bas
bignono

bignono


Nombre de messages : 1127
Age : 66
Localisation : Val de Marne
Date d'inscription : 13/11/2011

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptySam 20 Mai 2017 - 15:05

Bonjour à tous! Very Happy
Pas mal la palette, mais j'ai eu un bug! Une erreur: (29) Not correct arithmetic expression: Function call with negative value. Line 198.
Cela se produit, (je m'en suis aperçu en faisant un faux mouvement avec la souris) si on reste cliqué sur le bouton gauche de la souris et que l'on sort de l'image de la palette soit par la gauche soit par le haut! Si on sort par la droite ou le bas, pas d'erreur!
Voilà, à plus!
Wink Wink Wink
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptySam 20 Mai 2017 - 15:31

Correction effectuée !
Laughing
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptySam 20 Mai 2017 - 15:34

Petite palette très sympa ! Je garde...Wink

Yannick a écrit:
J' ai pondu cette outils pour mon éditeur.

Alors du coup c'est normal que Bignono y trouve des coquilles. Laughing

Rassures toi yannick, on ne fait pas d'omelette sans casser des œufs !!!
lol! lol! lol! lol!


PS :
Yannick a écrit:
Bon à part t 'exorciser avec des incantations du style : Papydall !!!! sors de ce corps !!!

A propos de Papydall, quelqu'un a des nouvelles ?!
Cela fait 2 semaines qu'il n'est pas passé sur le site. C'est surprenant non ?
Papydall, si tu nous entends, fais nous un petit coucou s'il te plaît...


Dernière édition par Laurent (Minibug) le Sam 20 Mai 2017 - 15:41, édité 1 fois
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: Re   Outils couleurs EmptySam 20 Mai 2017 - 15:41

Inutile de vous dire que comme la poule je m' y suis cassé le...
non, je ne le dirai pas...
lol!

Prends avec la correction du bug de Bignono.
J' édite le code dans le premier post à chaque correction.
cela évite des codes de partout.
Laughing
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptySam 20 Mai 2017 - 15:43

Salut Yannick, on s'est croisé ! Wink
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptySam 20 Mai 2017 - 15:57

Salut Laurent,

 Je ne sais pas où est passé Papydall, peut être profite t il de sa famille, j' ai cru comprendre qu' elle
est nombreuse et pas toujours près de lui certains habitant en Europe.

Pour revenir sur le bug détecté par Bignono.
Il vient d' une négligence de ma part la ligne en cause :

r%=color_pixel_red(PictPalette%,mouse_x_position(PictPalette%),mouse_y_position(PictPalette%))

donc dès que l' on sort de PictPalette% avec le bouton enfoncé la valeur est négative
J' ai ajouté ceci :

if mouse_x_position(PictPalette%)<0 or mouse_y_position(PictPalette%)<0
   return
end_if

et le bug semble résolu.
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptySam 20 Mai 2017 - 16:57

Super, je vois que Bignono veille au grain. Voir veille à ce que font les poules. Razz Razz Razz

@Papydall,
Envois-nous un petit message.

A+

Revenir en haut Aller en bas
papydall

papydall


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

Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs EmptySam 20 Mai 2017 - 17:49

Salut tout le monde.

Après deux semaines d’absence, me revoilà de retour !
J’étais hospitalisé pour une intervention chirurgicale sur mon œil droit.
L’opération s’est parfaitement déroulé et j’ai retrouvé ma « vue d’aigle ».
Merci à mon ophtalmologue et à son équipe.

Ceci étant, je ne peux passer sous silence un tel massacre de la langue française commis par :
le massacreur de la langue française a écrit:
Cette outils est insérable tel que mes il va avoir d' autres fonctions dans l' éditeur.

Bon,  il y a de la lecture sur le forum et je dois me mettre à jour.
Aussi, je remercie tous ceux qui se sont soucié de mon absence, sans oublier les autres.

Pour me faire pardonner par Yannick : BRAVO pour la palette et merci à ceux qui ont contribué à son débogage.

A+
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Outils couleurs Empty
MessageSujet: re   Outils couleurs EmptySam 20 Mai 2017 - 18:12

cheers Content de te relire Papydall !

Et de voir que tu as retrouvé un oeil de lynx même si c' est à mes dépends... Wink
Revenir en haut Aller en bas
Contenu sponsorisé





Outils couleurs Empty
MessageSujet: Re: Outils couleurs   Outils couleurs Empty

Revenir en haut Aller en bas
 
Outils couleurs
Revenir en haut 
Page 1 sur 4Aller à la page : 1, 2, 3, 4  Suivant
 Sujets similaires
-
» Outils couleurs avec pipette
» Outils du Panneau de configuration
» Des outils à enrichir …
» Outils Windows
» Boîte à outils de dessin

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: