PureBasic

Forums PureBasic
Nous sommes le Lun 15/Oct/2018 22:44

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 98 messages ]  Aller à la page Précédente  1 ... 3, 4, 5, 6, 7
Auteur Message
 Sujet du message: Re: EPB V2.64
MessagePosté: Sam 01/Juil/2017 6:35 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 02/Oct/2011 16:17
Messages: 1988
Localisation: 50200 Coutances
Génial

_________________
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce GT 640 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 5.62, 5.70 LTS
Un homme doit être poli, mais il doit aussi être libre !


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: EPB V2.64
MessagePosté: Sam 01/Juil/2017 11:17 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 13/Déc/2015 11:05
Messages: 649
Localisation: Allez, cherche...
:o Wooooow ! Exellent ca... C'est bien LA fonctionnalité qui manque gravement à l'IDE conventionnel :P

_________________
"Le bug se situe entre la chaise et le clavier"
Votre expert national en bogage et segfaults.

CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
  • Windows 10 x64 - PB 5.61 x64
  • Linux Ubuntu 16.04 LTS x64 (dual boot) - PB pas encore réinstallé


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: EPB V2.64
MessagePosté: Sam 01/Juil/2017 11:21 
Hors ligne
Avatar de l’utilisateur

Inscription: Mar 31/Mai/2016 9:06
Messages: 1930
et pourtant c'est si facile a mettre en oeuvre !! :)

il suffit d'ajouter ces lignes de code au moment de la creation du scintilla editeur :

Code:
; Set Additional Caret and Selection
ScintillaSendMessage(#editor, #SCI_SETADDITIONALCARETFORE, RGB(157, 64, 41))
ScintillaSendMessage(#editor, #SCI_SETADDITIONALCARETSBLINK, 1)
ScintillaSendMessage(#editor, #SCI_SETADDITIONALSELALPHA, 100)
ScintillaSendMessage(#editor, #SCI_SETADDITIONALSELBACK, RGB(255, 160, 136))
ScintillaSendMessage(#editor, #SCI_SETADDITIONALSELFORE, RGB(200, 200, 200))
; Enable multi cursor editing
ScintillaSendMessage(#editor, #SCI_SETRECTANGULARSELECTIONMODIFIER, #SCMOD_ALT) ; select rectangle range by holding down the ALT key while dragging with the mouse
ScintillaSendMessage(#editor, #SCI_SETMULTIPLESELECTION, 1)                     ; select multiple ranges by holding down the CTRL or CMD key while dragging with the mouse
ScintillaSendMessage(#editor, #SCI_SETMULTIPASTE, #SC_MULTIPASTE_EACH)
ScintillaSendMessage(#editor, #SCI_SETADDITIONALSELECTIONTYPING, 1)



voila c'est tout !! Merci Eddy ;)
http://www.purebasic.fr/english/viewtop ... 12&t=60931

exemple :

Code:
EnableExplicit
InitScintilla()

#MENU_EXTEND_SELECTION=10
Define txt$, txtLen, marginWidth

Procedure MakeUTF8Text(text.s)
   Static buffer.s
   buffer=Space(StringByteLength(text, #PB_UTF8))
   PokeS(@buffer, text, -1, #PB_UTF8)
   ProcedureReturn @buffer
EndProcedure

Procedure ExtendScintillaSelection()
   Protected mainSel, selStart, selEnd
   mainSel=ScintillaSendMessage(0, #SCI_GETMAINSELECTION)
   selStart=ScintillaSendMessage(0, #SCI_GETSELECTIONNSTART, mainSel)
   selEnd=ScintillaSendMessage(0, #SCI_GETSELECTIONNEND, mainSel)
   
EndProcedure

txt$="Scintilla is a free source code editing component. It comes with "+#CR$+
     "complete source code and a license that permits use in any project "+#CR$+
     "or product personal or commercial. The license may be viewed here. "+#CR$+
     "The source code, as well as the library documentation may be found "+#CR$+
     "on the Scintilla Homepage. From the Scintilla Homepage : As well As "+#CR$+
     "features found in standard text editing components, Scintilla includes "+#CR$+
     "features especially useful when editing And debugging source code."+#CR$+
     "These include support For syntax styling, error indicators, code "+#CR$+
     "completion And call tips.The selection margin can contain markers "+#CR$+
     "like those used in debuggers To indicate breakpoints and the current "+#CR$+
     "line.Styling choices are more open than With many editors, allowing the"+#CR$+
     " use of proportional fonts, bold And italics, multiple foreground "+#CR$+
     "and background colors And multiple fonts."+#CR$
txtLen=StringByteLength(txt$, #PB_UTF8)

OpenWindow(100, 0, 0, 600, 400, "Editing with Multi cursor (like eclipse or sublimetext)", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)

ScintillaGadget(0, 0, 0, WindowWidth(100), WindowHeight(100), 0)
; Set Text Mode
ScintillaSendMessage(0, #SCI_SETWRAPMODE, #SC_WRAP_NONE)
ScintillaSendMessage(0, #SCI_SETCODEPAGE, #SC_CP_UTF8)
ScintillaSendMessage(0, #SCI_SETVIRTUALSPACEOPTIONS, #SCVS_RECTANGULARSELECTION | #SCVS_USERACCESSIBLE) ; allow cursor and rect selection to move beyond end of line
; Set Current Line Highlighting
ScintillaSendMessage(0, #SCI_SETCARETLINEVISIBLE, 1)
ScintillaSendMessage(0, #SCI_SETCARETLINEVISIBLEALWAYS, 1)
ScintillaSendMessage(0, #SCI_SETCARETLINEBACKALPHA, 50)
ScintillaSendMessage(0, #SCI_SETCARETLINEBACK, RGB(100, 252, 195))
; Set Text style
ScintillaSendMessage(0, #SCI_STYLESETFONT, #STYLE_DEFAULT, MakeUTF8Text("Courier New")) ; rectangle selection works better with mono-width font
ScintillaSendMessage(0, #SCI_STYLESETBACK, #STYLE_DEFAULT, RGB(70, 78, 85))
ScintillaSendMessage(0, #SCI_STYLESETFORE, #STYLE_DEFAULT, RGB(195, 213, 255))
ScintillaSendMessage(0, #SCI_STYLECLEARALL)
; Set Margin size and style
ScintillaSendMessage(0, #SCI_STYLESETFONT, #STYLE_LINENUMBER, MakeUTF8Text("Arial"))
ScintillaSendMessage(0, #SCI_STYLESETBACK, #STYLE_LINENUMBER, RGB(53, 55, 57))
ScintillaSendMessage(0, #SCI_STYLESETFORE, #STYLE_LINENUMBER, RGB(200, 200, 200))
marginWidth=ScintillaSendMessage(0, #SCI_TEXTWIDTH, #STYLE_LINENUMBER, MakeUTF8Text("_999"))
ScintillaSendMessage(0, #SCI_SETMARGINTYPEN, 0, #SC_MARGIN_NUMBER)
ScintillaSendMessage(0, #SCI_SETMARGINWIDTHN, 0, marginWidth)
marginWidth=0
ScintillaSendMessage(0, #SCI_SETMARGINMASKN, 2, #SC_MASK_FOLDERS)
ScintillaSendMessage(0, #SCI_SETMARGINWIDTHN, 2, marginWidth)
ScintillaSendMessage(0, #SCI_SETMARGINSENSITIVEN, 2, #True)
; Set Main Caret and Selection
ScintillaSendMessage(0, #SCI_SETCARETSTICKY, 1) ;make always visible
ScintillaSendMessage(0, #SCI_SETCARETWIDTH, 3)  ;make thicker
ScintillaSendMessage(0, #SCI_SETCARETFORE, RGB(255, 160, 136))
ScintillaSendMessage(0, #SCI_SETSELALPHA, 100)
ScintillaSendMessage(0, #SCI_SETSELBACK, 1, RGB(255, 160, 136))
ScintillaSendMessage(0, #SCI_SETSELFORE, 1, RGB(200, 200, 200))
; Set Additional Caret and Selection
ScintillaSendMessage(0, #SCI_SETADDITIONALCARETFORE, RGB(157, 64, 41))
ScintillaSendMessage(0, #SCI_SETADDITIONALCARETSBLINK, 1)
ScintillaSendMessage(0, #SCI_SETADDITIONALSELALPHA, 100)
ScintillaSendMessage(0, #SCI_SETADDITIONALSELBACK, RGB(255, 160, 136))
ScintillaSendMessage(0, #SCI_SETADDITIONALSELFORE, RGB(200, 200, 200))
; Enable multi cursor editing
ScintillaSendMessage(0, #SCI_SETRECTANGULARSELECTIONMODIFIER, #SCMOD_ALT) ; select rectangle range by holding down the ALT key while dragging with the mouse
ScintillaSendMessage(0, #SCI_SETMULTIPLESELECTION, 1)                     ; select multiple ranges by holding down the CTRL or CMD key while dragging with the mouse
ScintillaSendMessage(0, #SCI_SETMULTIPASTE, #SC_MULTIPASTE_EACH)
ScintillaSendMessage(0, #SCI_SETADDITIONALSELECTIONTYPING, 1)
; Enable hotkey for selection auto extension CTRL + D
AddKeyboardShortcut(100, #PB_Shortcut_Control | #PB_Shortcut_D, #MENU_EXTEND_SELECTION)
BindEvent(#PB_Event_Menu, ExtendScintillaSelection())

; Change text
ScintillaSendMessage(0, #SCI_SETTEXT, 0, MakeUTF8Text(txt$))
ScintillaSendMessage(0, #SCI_GOTOPOS, txtLen)
SetActiveGadget(0)

Repeat: Until WaitWindowEvent()=#PB_Event_CloseWindow

; IDE Options = PureBasic 5.60 (Windows - x86)
; CursorPosition = 19
; Folding = -
; EnableXP
; EnableAdmin
; CompileSourceDirectory
; Compiler = PureBasic 5.60 (Windows - x86)



a ce propos dans mon editeur EPB , il faut bien aussi remplacer la dll Scintilla par celle que je fourni dans mon archive
(c'est celle de Purebasic 5.60) car avant ça ne marchait pas ce truc !!

_________________
Image
Image
Site: http://stline.ddns.net/STLINE/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: EPB V2.64
MessagePosté: Sam 01/Juil/2017 11:27 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 13/Déc/2015 11:05
Messages: 649
Localisation: Allez, cherche...
Merci de la précision Zorro :)

Eh bien je continue a penser que Scintilla est un énorme bordel incompréhensible ;) M'enfin faudrait que je m'y replonge un de ces jours :)

_________________
"Le bug se situe entre la chaise et le clavier"
Votre expert national en bogage et segfaults.

CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
  • Windows 10 x64 - PB 5.61 x64
  • Linux Ubuntu 16.04 LTS x64 (dual boot) - PB pas encore réinstallé


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: EPB V2.64
MessagePosté: Jeu 06/Juil/2017 19:35 
Hors ligne
Avatar de l’utilisateur

Inscription: Mar 31/Mai/2016 9:06
Messages: 1930
Pour info

mise a jour de EPB , quelques corrections concernant le tabulateur .. :)
et l'onglet "Proc" qui pouvais dans certains cas ne pas repertorier les procedures du listing ...

_________________
Image
Image
Site: http://stline.ddns.net/STLINE/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: EPB V2.64
MessagePosté: Jeu 06/Juil/2017 20:04 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 02/Oct/2011 16:17
Messages: 1988
Localisation: 50200 Coutances
Merci pour le partage.

_________________
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce GT 640 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 5.62, 5.70 LTS
Un homme doit être poli, mais il doit aussi être libre !


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: EPB V2.64
MessagePosté: Jeu 06/Juil/2017 20:31 
Hors ligne
Avatar de l’utilisateur

Inscription: Mar 31/Mai/2016 9:06
Messages: 1930
pour toi micoute, tu peux seulement remplacer EPB.exe par celui de l'archive et le fichier "Scintilla.dll"
je n'ai pas changer autre chose :)

_________________
Image
Image
Site: http://stline.ddns.net/STLINE/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: EPB V2.64
MessagePosté: Ven 07/Juil/2017 7:53 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 02/Oct/2011 16:17
Messages: 1988
Localisation: 50200 Coutances
Merci pour le bon conseil, même si je suis en confiance avec toi, j'ai préfèré la prudence et j'ai supprimé et recréé le dossier, EPB n'est pas si difficile à réinitialiser, 2 précautions valent mieux qu'une.

_________________
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce GT 640 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 5.62, 5.70 LTS
Un homme doit être poli, mais il doit aussi être libre !


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 98 messages ]  Aller à la page Précédente  1 ... 3, 4, 5, 6, 7

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye