Trouver une ressource (Nouvelle version du moteur, plus rapide & pertinent, essayez le !)
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
DERNIERS CODES SUR CODES-SOURCES
Information sur la source
Description
Ce script sert a visualiser les derniers codes qui ont été ajoutés sur les principaux sites du réseaux CodeS-SourceS. L'"addon" est entièrement réalisé en picture window, un peu plus compliqué que les dialogs, mais sans DLL et plus joli (a mon gout)
Exploite :
- Picture Windows
- Hash Table
- Regexp
- Sockets
Source
- alias cs {
- var %w @cs
- if ($window(%w)) window -c %w
- window -hdokpBC +dL %w -1 -1 350 291
- drawfill -nr %w 15659197 15659197 0 0 | drawrect -nr %w 8421504 1 0 0 350 291
- drawline -nr %w 16777215 1 1 289 1 21 348 21 1 21 1 1 291 1 291 19 291 1 349 1 | drawline -nr %w 13489468 1 2 289 348 289 348 19 290 19 290 2 290 19 2 19 348 19 348 1
- dr 7 5 11 11
- drawline -nr %w 8421504 1 0 20 350 20 | drawline -nr %w 8421504 1 291 0 291 20
- drawtext -pbnr %w 8421504 15659197 Verdana 11 23 4 Derniers scripts sur CodeS-SourceS
- drawtext -nr %w 8421504 Webdings 11 304 1 0 r
- drawdot %w
- hadd -m cs text Veuillez sélectionner un site du réseau CodeS-SourceS
- drawcs
- }
- menu @cs {
- sclick {
- if (!$hget(cs,combo)) {
- if ($inrect($mouse.x,$mouse.y,0,0,350,20)) {
- if ($mouse.x < 290) movewin @cs $calc($mouse.dx -$window(@cs).x) $calc($mouse.dy -$window(@cs).y)
- elseif ($mouse.x isnum 302-314) window -n @cs
- elseif ($mouse.x isnum 320-332) csclose
- }
- elseif ($inrect($mouse.x,$mouse.y,203,27,12,17)) { hadd -m cs combo 1 | drawcs }
- elseif ($inrect($mouse.x,$mouse.y,225,27,63,17)) { hadd -m cs bouton 1 | drawcs }
- elseif ($inrect($mouse.x,$mouse.y,145,265,60,20)) { hadd -m cs bouton2 1 | drawcs }
- }
- else {
- if ($inrect($mouse.x,$mouse.y,133,44,82,132)) hadd cs combotext $gettok($hget(cs,sites),$int($calc(($mouse.y - 32)/13)),59)
- hdel cs combo | drawcs
- }
- }
- uclick {
- if ($hget(cs,bouton)) {
- hdel cs bouton
- if ($inrect($mouse.x,$mouse.y,225,27,63,17)) {
- if (!$hget(cs,combotext)) { hadd cs text Vous devez tout d'abord sélectionner un site ! }
- else {
- if (!$hget(cs,urls)) hadd -m cs urls http://www.ircfr.com/ http://www.vbfrance.com/ http://www.cppfrance.com/ http://www.csharpfr.com/ http://www.delphifr.com/ http://www.phpcs.com/ http://www.aspfr.com/ http://www.javascriptfr.com/ http://www.flashkod.com/ http://www.codes-sources.com/
- hadd -m cs site $gettok($hget(cs,urls),$findtok($hget(cs,sites),$hget(cs,combotext),1,59),32) | hadd cs host $gettok($gettok($hget(cs,site),2,47),2-,46)
- hadd -m cs text Tentative de connexion à $hget(cs,site)
- sockclose cs | sockopen cs $hget(cs,host) 80
- }
- }
- drawcs
- }
- if ($hget(cs,bouton2)) {
- hdel cs bouton2
- if ($inrect($mouse.x,$mouse.y,145,265,60,20)) csclose
- else drawcs
- }
- }
- }
- alias -l drawcs {
- var %w @cs
- drawrect -nrf %w 15659197 1 4 23 342 263
- if ($hget(cs,text)) drawtext -nr %w 8421504 Verdana 11 9 50 $ifmatch
- dr 225 27 63 17 $iif($hget(cs,bouton),1,0) Charger
- dr 145 265 60 20 $iif($hget(cs,bouton2),1,0) Fermer
- drawrect -nrf %w 16777215 1 9 70 330 190 | drawrect -nr %w 8421504 1 9 70 330 190 | drawrect -nr %w 16432045 1 10 71 328 188
- dr 12 73 40 16 0 Date
- dr 54 73 205 16 0 Nom de la source
- dr 261 73 74 16 0 Auteur
- var %a 1 | while ($hget(cs,code [ $+ [ %a ] ])) {
- tokenize 32 $ifmatch
- var %g $left($gettok($1-,$($+(2-,$calc($0 -1)),2),32),-3) , %p $right($left($gettok($1-,$0,32),-1),-1)
- drawtext -nr %w 8421504 Verdana 10 14 $calc(81+ 10*%a) $1
- drawtext -nr %w 8421504 Verdana 10 57 $calc(81+10*%a) $iif($wrap(%g,Verdana,10,191,0,1) == %g,%g,$+($ifmatch,...))
- drawtext -nr %w 8421504 Verdana 10 264 $calc(81+10*%a) $iif($wrap(%p,Verdana,10,60,0,1) == %p,%p,$+($ifmatch,...))
- inc %a
- }
- drawtext -nr %w 8421504 Verdana 11 9 28 Sites du réseau CS :
- drawrect -nr %w 8421504 1 133 27 82 17 | drawline -nr %w 8421504 1 203 27 203 44
- drawline -nr %w 15880237 1 134 42 202 42 202 27 | drawline -nr %w 16432045 1 134 41 134 28 202 28 | drawrect -nrf %w 16092278 1 135 29 67 13
- drawline -nr %w 16777215 1 204 42 204 28 214 28 | drawline -nr %w 13489468 1 205 42 213 42 213 28 | drawtext -nr %w 8421504 Terminal 13 206 30 $chr(25)
- if ($hget(cs,combotext)) drawtext -nr %w 0 Verdana 11 137 29 $ifmatch
- if ($hget(cs,combo)) {
- drawrect -nr %w 8421504 1 133 44 82 132 | drawrect -nrf %w 16777215 1 134 45 80 130
- if (!$hget(cs,sites)) hadd -m cs sites IrcFr;VBFrance;CPPFrance;C#;DelphiFr;PHPcs;ASPFr;JavaScript;Flash;Tout CS
- var %i 1 | while ($gettok($hget(cs,sites),%i,59)) { drawtext -nr %w 8421504 Verdana 11 137 $calc(%i *13 +32) $ifmatch | inc %i }
- }
- drawdot %w
- }
- alias -l movewin {
- window $1 $calc($mouse.dx -$2) $calc($mouse.dy -$3)
- if ($mouse.key & 1) .timer 1 0 movewin $1-
- }
- on *:SOCKOPEN:cs:{
- if ($sockerr) { hadd cs text La connexion avec $hget(cs,site) a échoué. | hdel cs site | drawcs }
- else {
- sockwrite -n cs GET /index.aspx HTTP/1.0 | sockwrite -n cs Host: $hget(cs,host) | sockwrite -n cs
- hadd cs text Liste des derniers codes sur $hget(cs,host) ... | drawcs
- }
- }
- on *:SOCKREAD:cs:{
- var %a | sockread %a
- if (<th class="H isin %a) { hadd cs temp 1 | halt }
- if ($hget(cs,temp)) {
- if ($deltags(%a)) {
- tokenize 32 $deliso($ifmatch)
- hinc cs i
- hadd cs code [ $+ [ $hget(cs,i) ] ] $gettok($1,1-2,47) $2-
- if ($hget(cs,i) == 16) { sockclose cs | hdel cs temp | hdel cs i | hadd -m cs text Connexion refermée avec $hget(cs,site) | drawcs | halt }
- }
- }
- }
- on *:SOCKCLOSE:cs:{ hadd -m cs text Connexion refermée avec $hget(cs,site) | hdel cs site | drawcs }
- alias -l deltags { var %i, %b = $regsub($1-,/(?:<.+?>)/g,$chr(32),%i) | return $remove(%i,$chr(9)) }
- alias -l deliso {
- var %x $1-
- while ($regex(%x,/&(\d+);/)) %x = $replace(%x,$+(&,$regml(1),;),$chr($regml(1)))
- return %x
- }
- alias -l dr {
- var %w $$window(@cs)
- drawrect -nr %w 8421504 1 $1-4
- drawrect -nrf %w 16092278 1 $calc(2+$1) $calc(2+$2) $calc($3 -4) $calc($4 -4)
- drawline -nr %w $iif($5 == 1,16432045,15880237) 1 $calc(2+$1) $calc($2 +$4 -2) $calc($1 +$3 -2) $calc($2 +$4 -2) $calc($1 +$3 -2) $calc(1+$2)
- drawline -nr %w $iif($5 == 1,15880237,16432045) 1 $calc(1+$1) $calc($2 +$4 -2) $calc(1+$1) $calc(1+$2) $calc($1 +$3 -1) $calc(1+$2)
- if ($6-) drawtext -nr %w 0 Verdana 11 $calc($1 +($3 -$width($6-,Verdana,11))/2) $calc($2 +($4 -$height($6-,Verdana,11))/2) $6-
- }
- alias -l csclose { hdel -w cs * | close -@ @cs }
alias cs {
var %w @cs
if ($window(%w)) window -c %w
window -hdokpBC +dL %w -1 -1 350 291
drawfill -nr %w 15659197 15659197 0 0 | drawrect -nr %w 8421504 1 0 0 350 291
drawline -nr %w 16777215 1 1 289 1 21 348 21 1 21 1 1 291 1 291 19 291 1 349 1 | drawline -nr %w 13489468 1 2 289 348 289 348 19 290 19 290 2 290 19 2 19 348 19 348 1
dr 7 5 11 11
drawline -nr %w 8421504 1 0 20 350 20 | drawline -nr %w 8421504 1 291 0 291 20
drawtext -pbnr %w 8421504 15659197 Verdana 11 23 4 Derniers scripts sur CodeS-SourceS
drawtext -nr %w 8421504 Webdings 11 304 1 0 r
drawdot %w
hadd -m cs text Veuillez sélectionner un site du réseau CodeS-SourceS
drawcs
}
menu @cs {
sclick {
if (!$hget(cs,combo)) {
if ($inrect($mouse.x,$mouse.y,0,0,350,20)) {
if ($mouse.x < 290) movewin @cs $calc($mouse.dx -$window(@cs).x) $calc($mouse.dy -$window(@cs).y)
elseif ($mouse.x isnum 302-314) window -n @cs
elseif ($mouse.x isnum 320-332) csclose
}
elseif ($inrect($mouse.x,$mouse.y,203,27,12,17)) { hadd -m cs combo 1 | drawcs }
elseif ($inrect($mouse.x,$mouse.y,225,27,63,17)) { hadd -m cs bouton 1 | drawcs }
elseif ($inrect($mouse.x,$mouse.y,145,265,60,20)) { hadd -m cs bouton2 1 | drawcs }
}
else {
if ($inrect($mouse.x,$mouse.y,133,44,82,132)) hadd cs combotext $gettok($hget(cs,sites),$int($calc(($mouse.y - 32)/13)),59)
hdel cs combo | drawcs
}
}
uclick {
if ($hget(cs,bouton)) {
hdel cs bouton
if ($inrect($mouse.x,$mouse.y,225,27,63,17)) {
if (!$hget(cs,combotext)) { hadd cs text Vous devez tout d'abord sélectionner un site ! }
else {
if (!$hget(cs,urls)) hadd -m cs urls http://www.ircfr.com/ http://www.vbfrance.com/ http://www.cppfrance.com/ http://www.csharpfr.com/ http://www.delphifr.com/ http://www.phpcs.com/ http://www.aspfr.com/ http://www.javascriptfr.com/ http://www.flashkod.com/ http://www.codes-sources.com/
hadd -m cs site $gettok($hget(cs,urls),$findtok($hget(cs,sites),$hget(cs,combotext),1,59),32) | hadd cs host $gettok($gettok($hget(cs,site),2,47),2-,46)
hadd -m cs text Tentative de connexion à $hget(cs,site)
sockclose cs | sockopen cs $hget(cs,host) 80
}
}
drawcs
}
if ($hget(cs,bouton2)) {
hdel cs bouton2
if ($inrect($mouse.x,$mouse.y,145,265,60,20)) csclose
else drawcs
}
}
}
alias -l drawcs {
var %w @cs
drawrect -nrf %w 15659197 1 4 23 342 263
if ($hget(cs,text)) drawtext -nr %w 8421504 Verdana 11 9 50 $ifmatch
dr 225 27 63 17 $iif($hget(cs,bouton),1,0) Charger
dr 145 265 60 20 $iif($hget(cs,bouton2),1,0) Fermer
drawrect -nrf %w 16777215 1 9 70 330 190 | drawrect -nr %w 8421504 1 9 70 330 190 | drawrect -nr %w 16432045 1 10 71 328 188
dr 12 73 40 16 0 Date
dr 54 73 205 16 0 Nom de la source
dr 261 73 74 16 0 Auteur
var %a 1 | while ($hget(cs,code [ $+ [ %a ] ])) {
tokenize 32 $ifmatch
var %g $left($gettok($1-,$($+(2-,$calc($0 -1)),2),32),-3) , %p $right($left($gettok($1-,$0,32),-1),-1)
drawtext -nr %w 8421504 Verdana 10 14 $calc(81+ 10*%a) $1
drawtext -nr %w 8421504 Verdana 10 57 $calc(81+10*%a) $iif($wrap(%g,Verdana,10,191,0,1) == %g,%g,$+($ifmatch,...))
drawtext -nr %w 8421504 Verdana 10 264 $calc(81+10*%a) $iif($wrap(%p,Verdana,10,60,0,1) == %p,%p,$+($ifmatch,...))
inc %a
}
drawtext -nr %w 8421504 Verdana 11 9 28 Sites du réseau CS :
drawrect -nr %w 8421504 1 133 27 82 17 | drawline -nr %w 8421504 1 203 27 203 44
drawline -nr %w 15880237 1 134 42 202 42 202 27 | drawline -nr %w 16432045 1 134 41 134 28 202 28 | drawrect -nrf %w 16092278 1 135 29 67 13
drawline -nr %w 16777215 1 204 42 204 28 214 28 | drawline -nr %w 13489468 1 205 42 213 42 213 28 | drawtext -nr %w 8421504 Terminal 13 206 30 $chr(25)
if ($hget(cs,combotext)) drawtext -nr %w 0 Verdana 11 137 29 $ifmatch
if ($hget(cs,combo)) {
drawrect -nr %w 8421504 1 133 44 82 132 | drawrect -nrf %w 16777215 1 134 45 80 130
if (!$hget(cs,sites)) hadd -m cs sites IrcFr;VBFrance;CPPFrance;C#;DelphiFr;PHPcs;ASPFr;JavaScript;Flash;Tout CS
var %i 1 | while ($gettok($hget(cs,sites),%i,59)) { drawtext -nr %w 8421504 Verdana 11 137 $calc(%i *13 +32) $ifmatch | inc %i }
}
drawdot %w
}
alias -l movewin {
window $1 $calc($mouse.dx -$2) $calc($mouse.dy -$3)
if ($mouse.key & 1) .timer 1 0 movewin $1-
}
on *:SOCKOPEN:cs:{
if ($sockerr) { hadd cs text La connexion avec $hget(cs,site) a échoué. | hdel cs site | drawcs }
else {
sockwrite -n cs GET /index.aspx HTTP/1.0 | sockwrite -n cs Host: $hget(cs,host) | sockwrite -n cs
hadd cs text Liste des derniers codes sur $hget(cs,host) ... | drawcs
}
}
on *:SOCKREAD:cs:{
var %a | sockread %a
if (<th class="H isin %a) { hadd cs temp 1 | halt }
if ($hget(cs,temp)) {
if ($deltags(%a)) {
tokenize 32 $deliso($ifmatch)
hinc cs i
hadd cs code [ $+ [ $hget(cs,i) ] ] $gettok($1,1-2,47) $2-
if ($hget(cs,i) == 16) { sockclose cs | hdel cs temp | hdel cs i | hadd -m cs text Connexion refermée avec $hget(cs,site) | drawcs | halt }
}
}
}
on *:SOCKCLOSE:cs:{ hadd -m cs text Connexion refermée avec $hget(cs,site) | hdel cs site | drawcs }
alias -l deltags { var %i, %b = $regsub($1-,/(?:<.+?>)/g,$chr(32),%i) | return $remove(%i,$chr(9)) }
alias -l deliso {
var %x $1-
while ($regex(%x,/&(\d+);/)) %x = $replace(%x,$+(&,$regml(1),;),$chr($regml(1)))
return %x
}
alias -l dr {
var %w $$window(@cs)
drawrect -nr %w 8421504 1 $1-4
drawrect -nrf %w 16092278 1 $calc(2+$1) $calc(2+$2) $calc($3 -4) $calc($4 -4)
drawline -nr %w $iif($5 == 1,16432045,15880237) 1 $calc(2+$1) $calc($2 +$4 -2) $calc($1 +$3 -2) $calc($2 +$4 -2) $calc($1 +$3 -2) $calc(1+$2)
drawline -nr %w $iif($5 == 1,15880237,16432045) 1 $calc(1+$1) $calc($2 +$4 -2) $calc(1+$1) $calc(1+$2) $calc($1 +$3 -1) $calc(1+$2)
if ($6-) drawtext -nr %w 0 Verdana 11 $calc($1 +($3 -$width($6-,Verdana,11))/2) $calc($2 +($4 -$height($6-,Verdana,11))/2) $6-
}
alias -l csclose { hdel -w cs * | close -@ @cs }
Conclusion
- Pour lancer l'addon tapez /cs
- J'ai laissé tomber les sites les moins importants de CS pour ne pas avoir un combo de 6 mètres de long :o)
- Pour l'instant, ce script ne fait que lister les derniers codes sur CS. Prévu : un petit popup en click droit pour lancer le navigateur, etc...
- Remerciements : PaDa pour l'alias "deliso"
- Désolé pour le screenshot pas très beau (jpeg oblige)
- Prochaine étape : le GUI :)
Historique
- 17 juin 2005 07:38:41 :
- - Correction d'un bug (je m'étais trompé dans l'url d'un site)
- 20 juin 2005 17:59:48 :
- Variable locale (merci vivekyo)
Sources de la même categorie
Commentaires
Discussions en rapport avec ce code source
|
CalendriCode
| | | L | M | M | J | V | S | D |
| | 1 | 2 | 3 | 4 | 5 | 6 |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 | | | |
|
Téléchargements
Logiciels à télécharger sur le même thème :
|