Page 1 sur 1

Mot_barré_rayé

Publié : ven. 06/oct./2017 12:01
par Zorro
Petite application pour rayer les mots dans le forum
il suffit de choisir et de coller dans l'editeur du forum :)

Code : Tout sélectionner


;***********************************************
;Titre  :mot_barre_raye
;Auteur  : Zorro
;Date  :06/10/2017
;Heure  :18:34:35
;Version Purebasic :  PureBasic 5.60 (Windows - x86)
;Version de l'editeur :EPB V2.68
; Libairies necessaire : Aucune 
;***********************************************


;{- Enumerations / DataSections
;{ Windows
Enumeration
		#Win
EndEnumeration
;}
;{ Gadgets
Enumeration
		#Text_Titre
		#Text_auteur
		#Option_1
		#Option_2
		#Option_3
		#Option_4
		#String
		#Button_Go
EndEnumeration
;}
;{ Fonts
Enumeration
		#Font_Text_Titre
EndEnumeration
;}
Define.l Event
Global Flag_option
Declare openwindow_win()
Declare strike(a.s,mode)
Declare gras(a.s)
Declare underline(a.s)

;}


OpenWindow_Win()

;{- Event loop
Repeat
		Event = WaitWindowEvent(12)
		Select Event
				; ///////////////////
				Case #PB_Event_Gadget
				Select EventGadget()
						Case #Text_Titre
						Case #Text_auteur
						Case #Option_1
						Flag_option=1
						Case #Option_2
						Flag_option=2
						Case #Option_3
						Flag_option=3
						Case #Option_4
						Flag_option=4
						Case #String
						Text.s=GetGadgetText(#String)
						Case #Button_Go
						Select Flag_option
								Case 1 ; Barre simple
								strike(Text.s,Flag_option)
								Case 2 ;Bassé /
								strike(Text.s,Flag_option)
								Case 3 ; Gras
								Gras(Text.s)
								Case 4 ; underline
								Underline(Text.s)
						EndSelect
				EndSelect
				; ////////////////////////
				Case #PB_Event_CloseWindow
				Select EventWindow()
						Case #Win
						CloseWindow(#Win)
						Break
				EndSelect
		EndSelect
Forever
;
;}
;-Zone Procedures
Procedure OpenWindow_Win()
		If OpenWindow(#Win, 450, 200, 501, 173, "Styler", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)   
				TextGadget(#Text_Titre, 195, 10, 80, 35, "Styler")
				TextGadget(#Text_auteur, 430, 150, 65, 20, "By Zorro")
				OptionGadget(#Option_1, 15, 45, 85, 25, "Barré simple")
				OptionGadget(#Option_2, 15, 70, 85, 25, "Barré /")
				OptionGadget(#Option_3, 15, 95, 85, 25, "Gras")
				OptionGadget(#Option_4, 15, 120, 85, 25, "Souligné")
				StringGadget(#String, 120, 75, 350, 25, "")
				ButtonGadget(#Button_Go, 125, 120, 130, 30, "Go to CLipboard")
				; Gadget Fonts
				SetGadgetFont(#Text_Titre, LoadFont(#Font_Text_Titre, "Arial Narrow", 24, #PB_Font_HighQuality))
				SetGadgetState(#Option_1, #True)  :Flag_option=1  
		EndIf
EndProcedure
;
ProcedureDLL strike(a.s,mode)
		Protected code
		Select mode
				Case 1
				code=822
				Case 2
				code=823  
		EndSelect
		sortie.s=sortie.s+Chr(32)
		For i=1 To Len(a.s)
				sortie.s=sortie.s+Chr(code)
				sortie.s=sortie.s+Mid(a.s,i,1)
		Next i
		sortie.s=sortie.s+Chr(code) 
		SetClipboardText(sortie.s)
EndProcedure

Procedure Gras(a.s)
		Sortie.s="[b]"+a.s+"[/b]"
		SetClipboardText(sortie.s)
EndProcedure

Procedure Underline(a.s)
		Sortie.s="[u]"+a.s+"[/u]"
		SetClipboardText(sortie.s)
EndProcedure


; Epb


Re: Mot_barré_rayé

Publié : ven. 06/oct./2017 12:16
par Marc56
Merci :wink:

Ligne 108: Pourquoi ProcedureDLL ?

Code : Tout sélectionner

ProcedureDLL strike(a.s,mode)
(Curieusement, ça marche aussi bien avec Procedure)
:?:

Re: Mot_barré_rayé

Publié : ven. 06/oct./2017 14:12
par Zorro
parceque j'envisageais de m'en faire une lib avec MLF :lol:

Re: Mot_barré_rayé

Publié : sam. 07/oct./2017 1:22
par Ar-S
̶M̶e̶r̶c̶i̶ pour ce ̷C̷o̷d̷e̷ :D