Proscript — File Browser

Proscriptv0.1 / Proscriptv0.1 / csetup.mrc

csetup.mrc — 4.92 KB — Download this file

;--------------------------
;Proscript ver 0.1 by kibo |
;--------------------------
;@rfs csetup

;Questo Programma gestisce le connessioni

;Alias

alias csetup { dialog -m csetup csetup }
alias aserv  { dialog -m adserv adserv }
alias xasetup { xdialog -a csetup +u 1000 }

;Dialog Csetup

dialog csetup {
  title "ProScript Server-Setup"
  size  -1 -1 174 128
  option dbu
  box "ProScript Server-Setup", 1, 1 0 172 111

  list 3, 9 9 155 72, size
  button "Esci", 4, 90 115 30 10, ok
  button "Collegati", 19, 55 115 30 10,
  text "Server:", 9, 20 99 21 8
  edit "", 10, 40 98 43 9, return autohs
  text "ProScript Server-Setup", 11, 56 85 74 8, disable
  box "", 12, 1 109 172 18
  text "Porta:", 14, 93 99 16 8
  edit "", 15, 110 98 22 9, return autohs
  list 18, 2 8 169 100, hide size
}

;Appena si apre la Dialog

on *:dialog:csetup:*:*: {
  if ($devent == init) {
    dcx Mark csetup csetup_cb

    $mdx SetMircVersion $version 
    $mdx MarkDialog $dname
    $mdx SetControlMDX $dname 3 listview report grid > DLL\views.mdx

    did -i $dname 3 1 headerdims 400:1
    did -i $dname 3 1 headertext + 0 Server

    xdialog -b csetup +tc

    ;Scriviamo i server base

    ;did -a $dname 3 irc.tin.it:6667
    ;did -a $dname 3 gamma.azzurra.org:6667 

    ;Carichiamo i dato da Server.txt

    %x = 1 | %y = $lines($shortfn($mircdir\Server.txt))
    :loop
    set %l $read -l $+ %x $shortfn($mircdir\Server.txt)
    did -a $dname 3 %l
    if (%x == %y) { goto fine }
    else { inc %x | goto loop }
    :fine
    xdialog -a csetup +v 1000
  }
  if ($devent == sclick) {
    if ($gettok($did($dname,3,1),1,32) = rclick) {
      if ($did == 3) {
        $popups New per 16 16
        $popups LoadImg per icon small 0,Images\Add.ico
        $popups LoadImg per icon small 0,Images\Cancel.ico
        $popups AddItem per end 1 1 Aggiungi Server $cr aserv
        $iif(($did(3).sel),$popups AddItem per end 2 2 Rimuovi Server  $cr rserve)
        Pop per $mouse.dx $mouse.dy
      }
    }
    if ($did == 19) {
      server $did(10).text $+ : $+ $did(15).text
    }

  }
  ;Doppio Click
  if ($devent == dclick) {
    if ($did = 3) {
      ;/echo -s $did(3).seltext
      %z = $gettok($did(3).seltext,6-,32)
      %ip = $gettok(%z,1,58)
      %porta = $gettok(%z,2,58)
      ;/echo -s %ip
      ;/echo -s %porta
      did -r $dname 10
      did -r $dname 15     
      did -a $dname 10 %ip
      did -a $dname 15 %porta
    }
  }  

}

alias csetup_cb { }

;------------------------------------------------------------------------------------------

dialog adserv {
  title "ProScript -- Aggiungi Server"
  size -1 -1 102 36
  option dbu
  edit "", 1, 9 7 69 10
  edit "", 2, 9 23 29 10
  button "Aggiungi", 3, 49 24 45 8
  text "Server", 4, 10 0 24 6
  text "Porta", 5, 10 17 25 7
  button "Button", 6, 59 63 37 12, ok cancel
}

;--------------------------------------------------------------------------------------------
;Quando aggiungo un server non solo lo aggiunge alla lista ma aggiorna il file server.txt    |   
;con il nuovo server e porta  questo file servire successivamente per ricaricare il server   | 
;aggiunto all'interno della lista                                                            | 
;--------------------------------------------------------------------------------------------


on *:dialog:adserv:*:*:{
  if ($devent == sclick) { 
    if ($did = 3) {
      /did -a csetup 3 $did(1).text $+ : $+ $did(2).text
      /write server.txt $did(1).text $+ : $+ $did(2).text
      /dialog -x adserv adserv
    }
  }
}


alias rserve  {  
  %x = 1
  %y = $did(3).lines
  %z = 2

  ;Stampa tutti i server

  ;/echo -s 4STAMPO TUTTI I SERVER

  while (%x != %y) {
    ;/echo -s $gettok($did(3,%z).text,6-,32)
    inc %z
    inc %x
  }


  ;Salva tutti i Server sul file Server2.txt tranne il Server selezionato
  ;il file si trova nella directory predefinita dello script
  ;p.s Bisogna prima resettare il file Server2.txt e poi ci si puo' scrivere
  ;la lista server,naturalmente escusa quella selezionata.

  %x = 2
  %y = $did(3).lines + 1
  %z = 2


  ;/echo -s 4STAMPO TUTTI I SERVER ESCLUSO $+ : $+ 8 $gettok($did(3).seltext,6-,32)

  ;Resetto il file prima di scriverlo usando il parametro -c
  /write -c Server2.txt

  while (%x != %y) {
    if (%x != $did(3).sel) {
      ;/echo -s $gettok($did(3,%z).text,6-,32)
      /write Server2.txt $gettok($did(3,%z).text,6-,32)
    }
    inc %z
    inc %x
  }

  ;Cancelliamo la lista dei Server.txt

  /write -c Server.txt

  ;Copiamo i Dati da Server2.txt a Server.txt

  %x = 1 | %y = $lines($shortfn($mircdir\Server2.txt))
  :loop
  set %l $read -l $+ %x $shortfn($mircdir\Server2.txt)
  /write Server.txt %l
  if (%x == %y) { goto fine }
  else { inc %x | goto loop }
  :fine

  ;Riavvio il csetup

  dialog -x csetup csetup
  dialog -m csetup csetup

}

}