Il s'agit de la copie (presque conforme) du bon vieux Notepad en mIRC Scripting.
Source / Exemple :
menu * {
mIRCPad: dialog -m mp mp
}
dialog mp {
title "Sans titre - mIRCPad"
size -1 -1 260 186
option dbu
icon C:\WINDOWS\notepad.exe, 0
edit "", 1, 0 0 260 186, multi return autohs autovs hsbar vsbar
menu "Fichier", 2
item "Nouveau", 3, 2
item "Ouvrir...", 4, 2
item break, 5, 2
item "Enregistrer", 6, 2
item "Enregistrer sous...", 7, 2
item break, 8,
item "Imprimer", 9, 2
item break, 10, 2
item "Quitter", 11, 2, ok
menu "Outils", 12
item "Couper", 13, 12
item "Copier", 14, 12
item "Coller", 15, 12
item "Annuler", 16, 12
item break, 17, 12
item "Date/Heure", 18, 12
menu "?", 19
item "A propos...", 20, 19
button "",100, 1 1 1 1
}
alias send return dll $shortfn($scriptdirdlls\sendkey.dll)
alias mdx return dll $shortfn($scriptdirdlls\mdx.dll)
alias diam return $shortfn($scriptdirdlls\dialog.mdx)
on *:dialog:mp:*:*:{
if $devent == init {
$mdx SetMircVersion $version
$mdx MarkDialog mp
$mdx SetControlMDX mp 100 positioner size > $diam
$mdx SetControlMDX mp 100 noclose > $diam
var %f nouveau_document
}
if $devent == sclick {
if $did == 100 {
var %w $dialog(mp).cw, %h $dialog(mp).ch
$mdx MoveControl mp 80 * $calc(%h - 1) %w
$mdx MoveControl mp 1 * * $calc(%w - 1) $calc(%h - 1)
}
}
if $devent == menu {
if $did == 3 { did -r mp 1 | dialog -t mp Nouveau_Document.txt - mIRCPad | var %f nouveau_document }
if $did == 4 { var %a $shortfn($sfile($mircdir,Ouvrir,Ouvrir)) | loadbuf -ro mp 1 %a | dialog -t mp $nopath(%a) - mIRCPad | var %f nouveau_document }
if $did == 6 {
if (%f == nouveau_document) { goto a }
else { goto b }
:a
var %a $shortfn($sdir($mircdir,Selectionnez le répertoire où le document sera sauvé))
if (%a == $null) { return }
var %b = $?="Nom du document (Ex : lol.txt)"
if (%b == $null) { return }
dialog -v mp
dialog -t mp %b - mIRCPad
goto b
:b
sauve %f
}
if $did == 7 {
var %a = $shortfn($sdir($mircdir,Selectionnez le répertoire où le document sera sauvé))
if (%a == $null) { return }
var %b = $?="Nom du document (Ex : lol.txt)"
if (%b == $null) { return }
sauve %a $+ %b
dialog -t mp %b - mIRCPad
dialog -v mp
var %f %a $+ %b
}
if $did == 9 { imprimer }
if $did == 11 { dialog -x mp }
if $did == 13 { $send CTRL x }
if $did == 14 { clipboard $did(1).seltext }
if $did == 15 { coller }
if $did == 16 { $send CTRL z }
if $did == 18 { did -a mp 1 $time(hh:nn:ss) $date }
if $did == 20 { dialog -m aprop aprop }
}
}
alias coller {
var %a = 1
while (%a <= $cb(0)) {
did -a $dname 1 $cb(%a) $crlf
inc %a
}
}
alias sauve { var %a $input(Nom du fichier ?,e,mIRCPad) | savebuf -o mp 1 " $+ %a $+ " }
alias imprimer {
var %b = " $+ $scriptdirTEMP.txt $+ "
write -c %b
savebuf -o mp 1 " $+ $scriptdirTEMP.txt $+ "
run -n notepad /p %b
.timer 1 1 .remove %b
}
dialog aprop {
title "mIRCPad"
size -1 -1 110 44
option dbu
icon C:\WINDOWS\notepad.exe, 0
icon 50, 91 1 15 15, C:\WINDOWS\notepad.exe, 0, noborder
text "mIRCPad v1.0", 2, 2 5 49 7
text "25/04/2004", 3, 55 5 31 7
text "Codé par Re[M]i_34", 4, 2 19 102 7
link "manurems@hotmail.com", 6, 31 28 59 7
text "E-mail:", 7, 2 28 25 7
}
Conclusion :
Voilà, dites moi ce que vous en pensez ;)
N'oubliez pas le zip !
PS : je vais rajouter des options plus tard.
Update du 26/04/04 à 7h50 :
- Amélioration du code
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.