Kolay ve ham bir arayüz. Onlarca uyarı ve farklı çıktılar kullanmadım.
sekmesinden çalıştırabilirsiniz. Belirtilen dosyayı zip'ler veya ziplenen dosyayı çıkartır.
Kimsenin kullanmayacağını umuyorum, bunun sebebi üst versiyon mIRC'lerde çalışması ve kimsenin işlev olarak işine yaramaması. İşinize yarayacak olan
tanımı kullanımı.
Değişkenlere, titlebar'a, aliaslara vs nickimi yazmaya gerek duymadım. Bu tarz şeylere gerek olduğunu düşünmüyorum.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
;mZip
;Menu
menu * {
.mZip:mZip
}
;Aliases
alias mZip dialog -mr mZip mZip
alias mZSel %mZ.1 = $zip($nopath(%mZ.rep),%mZ.p1,%mZ.f,%mZ.p)
alias mZEx %mZ.2 = $zip($nopath(%mZ.f),%mZ.p2,%mZ.rep,%mZ.p)
alias mZBegin {
set %mZ.f2 $nofile(%mZ.f)
set %mZ.rep %mZ.f2 $+ $token($nopath(%mZ.f),1,46) $+ .zip
}
alias mZReload {
set %mZ.f2 $nofile(%mZ.f)
set %mZ.rep %mZ.f2 $+ $token($nopath(%mZ.f),1,46)
}
;Dialog
dialog mZip {
title "mZipBasic"
size -1 -1 178 184
option dbu
button "Gözat", 1, 8 19 25 12, flat
box "mIRC Zip", 3, 3 2 173 179
list 4, 71 46 101 129, size extsel hsbar vsbar
text "Dosya içeriği", 2, 72 36 35 8
text "Seçilen Dosya:", 5, 72 20 35 8
text "", 6, 114 20 57 8
button "Dönüştür", 7, 35 19 25 12, flat
button "Çıkart", 8, 8 33 25 12, flat
box "Seçenekler", 9, 7 52 60 51
check "Şifrele", 10, 12 71 50 10
check "Üzerine Yaz", 11, 12 85 50 10
}
;Event
on *:dialog:mZip:*:*:{
if ($devent = init) {
set %mZ.d did -a mZip
}
if ($devent = close) {
unset %mZ.*
}
if ($devent = sclick) {
;Dosya bilgilerini yansıt.
if ($did = 1) {
set %mZ.f $sfile($mircdir,Dosya Seç,Tamam)
if (%mZ.f != $null) {
inc %mZ.n
%mZ.d 6 $nopath(%mZ.f)
%mZ.d 4 Sıra: %mZ.n $+ -) $time
%mZ.d 4 Dosya: $nopath(%mZ.f)
%mZ.d 4 Boyut: $file(%mZ.f).size KB
%mZ.d 4 Değiştirme Tarihi: $asctime($file(%mZ.f).mtime, dd.mm.yyyy)
$iif($token($nopath(%mZ.f), 2, 46) != zip, %mZ.d 4 CRC32: $crc($nopath(%mZ.f)))
%mZ.d 4 -
}
}
;Create
if ($did = 7) {
if (%mZ.f != $null) {
mZBegin
if ($did(10).state = 1) {
set %mZ.p $?*="Zip Şifresini Girin."
$iif(%mZ.p1 = co, set %mZ.p1 cpo, set %mZ.p1 cp)
mZSel
}
if ($did(11).state = 1) {
$iif(%mZ.p1 = cp, set %mZ.p1 cpo, set %mZ.p1 co)
if ($did(10).state = 1) {
mZSel
}
else {
%mZ.1 = $zip($nopath(%mZ.rep),%mZ.p1,%mZ.f)
}
}
if ($did(10).state != 1 && $did(11).state != 1) {
%mZ.1 = $zip($nopath(%mZ.rep),c,%mZ.f)
}
}
}
;Extract
if ($did = 8) {
if (%mZ.f != $null) {
mZReload
if ($did(10).state = 1) {
set %mZ.p $?*="Zip Şifresini Girin."
$iif(%mZ.p2 = eo, set %mZ.p2 epo, set %mZ.p2 ep)
mZEx
}
if ($did(11).state = 1) {
$iif(%mZ.p2 = ep, set %mZ.p2 epo, set %mZ.p2 eo)
if ($did(10).state = 1) {
mZEx
}
else {
%mZ.1 = $zip($nopath(%mZ.f),%mZ.p2,%mZ.rep)
}
}
if ($did(10).state != 1 && $did(11).state != 1) {
%mZ.1 = $zip($nopath(%mZ.f),e,%mZ.rep)
}
}
}
}
}
Görsel ve yapısal gelişime açık. İlerleyen günlerde biraz daha düzenleyip tekrar paylaşabilirim.
Unutmayalım ki onlarca farklı yol ile yapılabilir.
Kolay gelsin.