Admin DIalog DCX

By nutty on Jun 11, 2014

Something i was playing with to test Dcx Coding out.
I am hoping that people who can not understand This coding
Might Use this as a example of how a dialog is done with Multi Tabs and colors.
A Big thank you To Penny for introducing me to this :)

;BY; Angel Bell AkA Sabrina;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;A Special Thanks goes to Penny Breed;;;;;;;;;;;;;;;;;;;;;; 
;For helping me understand dcx coding;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
alias Admin_Dialog {
dialog -ma Admin_Dialog Admin_Dialog }

dialog Admin_Dialog {
  title "Admin Dialog"
  Size -1 -1 200 250
  option dbu    
}
on *:dialog:Admin_Dialog:*:*: {
  if ($devent == init) {
    dcx Mark $dname Admin_Dialog_CB
    xdialog -c $dname 1 tab 0 0 400 490      
    xdid -a $dname 1 0 0  Room Controls  $chr(9) 2 panel 0 0 100 100 
    xdid -a $dname 1 0 0 Modes $chr(9) 4 panel 10 10 400 25  
    xdid -c $dname 2 3 button 5 10 54 25
    xdid -C $dname 2 +bk $rgb(0,0,0)
    xdid -C $dname 4 +bk $rgb(255,0,0)
    xdid -t $dname 3 Owner   
    xdid -c $dname 2 6 button 5 33 54 25
    xdid -t $dname 6 DeOwner
    xdid -c $dname 2 7 button 55 10 55 25
    xdid -t $dname 7 Protect
    xdid -c $dname 2 8 button 55 33 55 25
    xdid -t $dname 8 Deprotect
    xdid -c $dname 2 9 button 109 10 55 25
    xdid -t $dname 9 Host
    xdid -c $dname 2 10 button 109 33 55 25
    xdid -t $dname 10 DeHost
    xdid -c $dname 2 11 button 163 10 55 25
    xdid -t $dname 11 Half Op
    xdid -c $dname 2 12 button 163 33 55 25
    xdid -t $dname 12 Dehalfop
    xdid -c $dname 2 13 button 216 10 55 25
    xdid -t $dname 13 Voice
    xdid -c $dname 2 14 button 216 33 55 25
    xdid -t $dname 14 DeVoice
    xdid -c $dname 2 15 button 270 10 55 25
    xdid -t $dname 15 Sajoin
    xdid -c $dname 2 16 button 270 33 55 25
    xdid -t $dname 16 SaPart
    xdid -c $dname 2 17 button 5 80 105 25
    xdid -t $dname 17 SetFounder
    xdid -c $dname 2 18 button 5 105 105 25
    xdid -t $dname 18 Secure Founder
    xdid -c $dname 2 19 button 5 130 105 25
    xdid -t $dname 19 UnSecure Founder
    xdid -c $dname 2 20 button 109 105 105 25
    xdid -t $dname 20 Register Room 
    xdid -c $dname 2 21 button 109 130 105 25
    xdid -t $dname 21 UnRegister Room
    xdid -c $dname 2 22 button 214 105 105 25
    xdid -t $dname 22 Perment Room
    xdid -c $dname 2 23 button 214 130 105 25
    xdid -t $dname 23 UnPerment Room
    xdid -c $dname 2 24 button 5 158 105 25
    xdid -t $dname 24 Secure Room
    xdid -c $dname 2 25 button 5 185 105 25
    xdid -t $dname 25 UnSecure Room
    xdid -c $dname 2 26 button 110 158 105 25
    xdid -t $dname 26 Keep Topic on
    xdid -c $dname 2 27 button 110 185 105 25
    xdid -t $dname 27 Keep Topic off
    xdid -c $dname 2 28 button 214 158 105 25
    xdid -t $dname 28 Secure Ops
    xdid -c $dname 2 29 button 214 185 105 25
    xdid -t $dname 29 UnSecure Ops
    xdid -c $dname 2 30 button 5 220 205 30
    xdid -t $dname 30 Remove all users from Channel    
    xdid -c $dname 2 31 button 5 250 205 30
    xdid -t $dname 31 Clear all modes form channel
    xdid -c $dname 2 32 edit 55 400 335 26 
    xdid -c $dname 2 34 text 5 400 49 25
    xdid -t $dname 34 channel  
    xdid -c $dname 2 35 text 5 430 49 25
    xdid -t $dname 35 Nickname
    xdid -c $dname 2 36 edit 55 430 335 25
    xdid -c $dname 2 37 button 165 300 150 30
    xdid -t $dname 37 AccessList
    xdid -c $dname 2 38 button 5 300 150 30
    xdid -t $dname 38 Set Room Topic 
    xdid -c $dname 4 39 edit 55 430 335 25
    xdid -c $dname 4 40 text 5 430 49 25
    xdid -t $dname 40 channel
    xdid -c $dname 4 42 button 5 10 145 25
    xdid -t $dname 42 +N NoChanging nick
    xdid -c $dname 4 43 button 5 35 145 25
    xdid -t $dname 43 -N Allows chaning Nick
    xdid -c $dname 4 44 button 5 65 145 25
    xdid -t $dname 44 +m (Moderate)
    xdid -c $dname 4 45 button 5 92 145 25
    xdid -t $dname 45 -m (Remove Moderate)
    xdid -c $dname 4 46 button 5 125 145 25
    xdid -t $dname 46 +s (Hide Room) 
    xdid -c $dname 4 47 button 5 150 145 25
    xdid -t $dname 47 -s (UnHide Room)   
    xdid -c $dname 4 48 button 5 183 145 25
    xdid -t $dname 48 +l (Limit Prot)
    xdid -c $dname 4 49 button 5 210 145 25
    xdid -t $dname 49 -l (Remove Limit Prot)
    xdid -c $dname 4 50 button 5 245 145 25
    xdid -t $dname 50 +c(Blocks control codes)
    xdid -c $dname 4 51 button 5 270 145 25
    xdid -t $dname 51 (allows Msg control codes) 
    xdid -c $dname 4 52 button 5 300 145 25
    xdid -t $dname 52 +p (Prviate Room)
    xdid -c $dname 4 53 button 5 329 145 25
    xdid -t $dname 53 -p (Unhide Prviate Room)
    xdid -c $dname 4 54 button 160 10 185 25
    xdid -t $dname 54 +O (IRC Operator only) 
    xdid -c $dname 4 55 button 160 35 185 25
    xdid -t $dname 55 -O (Remove IRC Operator only) 
    xdid -c $dname 4 56 button 160 65 185 25
    xdid -t $dname 56 +R (must be registered to join)
    xdid -c $dname 4 57 button 160 92 185 25
    xdid -t $dname 57 -R(Remove registered to join)
    xdid -c $dname 4 58 button 160 125 185 25
    xdid -t $dname 58 +M (must be registered to speak ) 
    xdid -c $dname 4 59 button 160 150 185 25
    xdid -t $dname 59 -M (Remove registered to speak )
    xdid -c $dname 4 60 button 160 183 185 25
    xdid -t $dname 60 +T (Blocks /NOTICEs )
    xdid -c $dname 4 61 button 160 210 185 25
    xdid -t $dname 61 -T (Allows NOTICEs )
    xdid -c $dname 4 62 button 160 245 185 25
    xdid -t $dname 62 +K (No KNOCKs on the room ) 
    xdid -c $dname 4 63 button 160 270 185 25
    xdid -t $dname 63 -K (allows knocks )
    xdid -c $dname 4 64 button 160 300 185 25
    xdid -t $dname 64 +C (No CTCP's )
  }
}
alias Admin_Dialog_cb {
  var %dname = Admin_Dialog
  if ($2 == sclick) && ($3 == 3) { mode %channel +q %nickname }
  if ($2 == sclick) && ($3 == 6) { mode %channel -q %nickname }
  if ($2 == sclick) && ($3 == 7) { mode %channel +a %nickname }
  if ($2 == sclick) && ($3 == 8) { mode %channel -a %nickname }
  if ($2 == sclick) && ($3 == 9) { mode %channel +o %nickname }
  if ($2 == sclick) && ($3 == 10) { mode %channel -o %nickname }
  if ($2 == sclick) && ($3 == 11) { mode %channel +h %nickname }
  if ($2 == sclick) && ($3 == 12) { mode %channel -h %nickname }
  if ($2 == sclick) && ($3 == 13) { mode %channel +v %nickname }
  if ($2 == sclick) && ($3 == 14) { mode %channel -v %nickname }
  if ($2 == sclick) && ($3 == 15) { sajoin %nickname %channel }
  if ($2 == sclick) && ($3 == 16) { sapart %nickname %channel }
  if ($2 == sclick) && ($3 == 17) { cs set founder %channel %nickname }
  if ($2 == sclick) && ($3 == 18) { cs set Securefounder %Channel on }
  if ($2 == sclick) && ($3 == 19) { cs set Securefounder %Channel off }
  if ($2 == sclick) && ($3 == 20) { cs REGISTER %channel }
  if ($2 == sclick) && ($3 == 21) { cs DROP %channel %Channel }
  if ($2 == sclick) && ($3 == 22) { cs mode %Channel SET +P }
  if ($2 == sclick) && ($3 == 23) { cs mode %Channel SET -P }
  if ($2 == sclick) && ($3 == 24) { cs set secure %channel  on }
  if ($2 == sclick) && ($3 == 25) { cs set secure %channel  off }
  if ($2 == sclick) && ($3 == 26) { cs set keeptopic %channel  on }
  if ($2 == sclick) && ($3 == 27) { cs set keeptopic %channel  off }
  if ($2 == sclick) && ($3 == 28) { cs set secureops %channel  on }
  if ($2 == sclick) && ($3 == 29) { cs set secureops %channel  off }
  if ($2 == sclick) && ($3 == 30) { cs users %channel clear }
  if ($2 == sclick) && ($3 == 31) { cs MODE %channel CLEAR  }
  if ($2 == edit) && ($3 == 32) { set %channel $xdid(%dname,32).text }
  if ($2 == edit) && ($3 == 35) { cs DROP %channel %Channel }
  if ($2 == edit) && ($3 == 36) { set %nickname $xdid(%dname,36).text }
  if ($2 == sclick) && ($3 == 37) { accesslist }
  if ($2 == sclick) && ($3 == 38) { topic %channel $?="Topic" }
  if ($2 == edit) && ($3 == 39) { set %nickname $xdid(%dname,39).text }
  if ($2 == sclick) && ($3 == 42) { cs mode %channel set +N }
  if ($2 == sclick) && ($3 == 43) { cs mode %channel set -N }
  if ($2 == sclick) && ($3 == 44) { cs mode %channel set +m }
  if ($2 == sclick) && ($3 == 45) { cs mode %channel set -m }
  if ($2 == sclick) && ($3 == 46) { cs mode %channel set +s }
  if ($2 == sclick) && ($3 == 47) { cs mode %channel set -s }
  if ($2 == sclick) && ($3 == 48) { cs mode %channel set +l $$?="Enter New Limit" }
  if ($2 == sclick) && ($3 == 49) { cs mode %channel set -l }
  if ($2 == sclick) && ($3 == 50) { cs mode %channel set +c }
  if ($2 == sclick) && ($3 == 51) { cs mode %channel set -c }
  if ($2 == sclick) && ($3 == 52) { cs mode %channel set +p }
  if ($2 == sclick) && ($3 == 53) { cs mode %channel set -p }
  if ($2 == sclick) && ($3 == 54) { cs mode %channel set +O }
  if ($2 == sclick) && ($3 == 55) { cs mode %channel set -O }
  if ($2 == sclick) && ($3 == 56) { cs mode %channel set +R }
  if ($2 == sclick) && ($3 == 57) { cs mode %channel set -R }
  if ($2 == sclick) && ($3 == 58) { cs mode %channel set +M }
  if ($2 == sclick) && ($3 == 59) { cs mode %channel set -M } 
  if ($2 == sclick) && ($3 == 60) { cs mode %channel set +T }
  if ($2 == sclick) && ($3 == 61) { cs mode %channel set -T }
  if ($2 == sclick) && ($3 == 62) { cs mode %channel set +K }
  if ($2 == sclick) && ($3 == 63) { cs mode %channel set -K }
  if ($2 == sclick) && ($3 == 64) { cs mode %channel set +C }
  if ($2 == sclick) && ($3 == 65) { cs mode %channel set -C }   
}

Comments

Sign in to comment.
nox`   -  Jun 11, 2014

I do not understand why use dcx?
You can make your dialog without dcx

it lacks a bracket in your code

lines 19-20 :
xdid -C $dname 2 +bk $rgb(0,0,0)
xdid -C $dname 4 +bk $rgb(0,0,0)

-> xdid -C $dname 2,4,+bk 0

alias Admin_Dialog !dialog $iif($dialog(Admin_Dialog),-x,-ma) Admin_Dialog Admin_Dialog

alias Admin_Dialog_cb {
  if $1 == Admin_Dialog {
    if $2 == sclick && $status == connected {
      if ($istok(3 6 7 8 9 10 11 12 13 14,$3,32)) mode %channe $replace($3,3,+q,6,-q,7,+a,8,-a,9,+o,10,-o,11,+h,12,-h,13,+v,14,-v) %nickname
      if ($istok(15 16,$3,32)) $replace($3,15,sajoin,16,sapart) %nickname %channel 
      if ($3 == 17) cs set founder %channel %nickname
      if ($istok(18 19,$3,32)) cs set Securefounder %Channel $replace($3,18,on,19,off)
      if ($3 == 20) cs REGISTER %channel
      if ($3 == 21) cs DROP %channel %Channel
      if ($istok(22 23,$3,32)) cs mode %Channel SET $replace($3,22,+P,23)
      if ($istok(24 25,$3,32)) cs set secure %channel $replace($3,24,on,25,off)
      if ($istok(26 27,$3,32)) cs set keetopic %channel $replace($3,26,on,27,off)
      if ($istok(28 29,$3,32)) cs set secureop %channel $replace($3,28,on,29,off)
      if ($3 == 30) cs users %channel clear
      if ($3 == 31) cs MODE %channel CLEAR
      if ($3 == 37) accesslist
      if ($3 == 38) topic %channel $?="Topic"
      if ($3 isnum 42-65) cs mode %channel set $replace($3,42,+N,43,-N,44,+m,45,-m,46,+s,47,-s,48,+l $$?="Enter New Limit",49,-l,50,+c,51,-c,52,+p,53,-p,54,+O,55,-O,56,+R,57,-R,58,+M,59,-M,60,+T,61,-T,62,+K,63,-K,64,+C,65,-C)
    }
    elseif $2 == edit {
      if ($3 == 32) set %channel $xdid($1,32).text
      elseif ($3 == 35) cs DROP %channel %Channel
      if ($istok(36 39,$3,32)) set %nickname $xdid(%dname,$3).text
    }
  }
}
nutty  -  Jun 12, 2014

thank you nox .. updated and edited.. one of the brackets did not show when i posted it originally... The reason why i coded this in dcx i wanted to learn it.. play around with it some :) and hope it helps new people when they start coding in it.. I also see you recoded my entire script... Looks good but i get a error in this code you did ...../dialog: 'Admin_Dialog' no such table line 1

nox`  -  Jun 12, 2014

Hello nutty :)
You can see an example with my youtube manager or script DEATHJ0KER http://hawkee.com/profile/65881/
A friend made ​​a small tutorial to get started with dcx but it is French http://www.zone-script.net/tutorial/dcx1.html
The error is because I did not want to copy the code of your dialog you will give what I have modified

nutty  -  Jun 12, 2014

ahh ok all good thank you for the information :)

Sign in to comment

Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.