rendered paste bodyalias dmaker {
dialog -md dmaker dmaker
}
menu * {
Ultimate Dialog Maker:/dialog -md dmaker dmaker
}
dialog dmaker {
title "Ultimate Dialog Maker ALPHA"
size -1 -1 275 175
option dbu
tab "Main", 1, 5 13 265 155
tab "Menus", 2, 10 13 265 165
tab "Tabs", 3, 15 13 265 165
tab "Editboxes/Text", 4, 20 13 265 165
tab "Buttons/Checks", 5, 25 13 265 165
tab "Other", 18, 30 13 265 165
tab "Finish", 19, 35 13 265 165
button "Save and Continue >>", 6, 177 138 80 20, tab 1
edit "", 13, 177 30 80 100, read, vsbar, multi
text "Title:", 7, 22 43 40 20, tab 1
edit "", 8, 37 40 120 14, tab 1
text "Height:", 9, 17 60 40 20, tab 1
edit "", 10, 37 57 45 14, tab 1
text "Width:", 11, 90 60 40 20, tab 1
edit "", 12, 109 57 48 14, tab 1
icon 14, 198 5 8 8, sckdg_help.gif, 0
link "Click here for help", 15, 210 6 50 15
button "Test/View Options", 16, 63 115 50 20, tab 1
edit "Your title will not be shown in the test. Use #s only for the h, w, x and y.", 17, 38 140 100 20, multi, tab 1, read
check "Use Option DBU (highly recommended)", 20, 16 100 150 15, tab 1
text "X Position:", 21, 10 77 60 15, tab 1
edit "", 22, 37 74 45 14, tab 1
text "Y Pos.:", 23, 90 77 60 15, tab 1
edit "", 24, 109 74 48 14, tab 1
check "Center Window on Screen", 25, 16 89 100 15, tab 1
button "Save and Continue >>", 27, 177 138 80 20, tab 2
button "Show Example", 28, 63 115 50 20, tab 2
edit "Use 'break' in the item box for a seperation line in the menu.", 29, 38 140 100 20, multi, tab 2, read
text "Created by TeleOrPray of SwiftIRC - v0.8 ALPHA", 30, 30 5 120 10
text "Menu Name:", 31, 22 43 50 20, tab 2
edit "", 32, 55 40 110 14, tab 2
text "Item Names: (seperate with a comma)", 33, 21 60 100 20, tab 2
edit "", 34, 21 70 150 14, tab 2
button "Add Menu", 35, 20 90 152 14, tab 2
text "(You may not add a menu and click 'Continue' to skip this tab.)", 36, 19 29 150 10, tab 2
scroll "", 37, 264 29 4 137, tab 2, range 1 260
button "TEST", 38, 100 200 50 50, tab 2
}
on *:dialog:dmaker:init:0:{
did -i dmaker 13 1 For help, click above.
did -i dmaker 13 2
did -i dmaker 13 3 Current Dialog Options:
did -i dmaker 13 4 None yet saved.
did -c dmaker 25
did -m dmaker 22,24
set %d.dbu OFF
}
on *:dialog:dmaker:sclick:6:{
if (($did(10) == $null) || ($did(12) == $null) || ($did(8) == $null)) {
did -ri dmaker 17 1 Error: You must enter a height/width (numbers only.)
halt
}
did -fu dmaker 2
set %d.title $did(8)
set %d.w $did(12)
set %d.h $did(10)
if ($did(dmaker, 25).state == 1) {
set %d.xpos -1
set %d.ypos -1
set %d.center Yes
}
elseif ($did(dmaker, 25).state != 1) {
set %d.xpos $did(22)
set %d.ypos $did(24)
set %d.center No
}
set %d.titledisp $replace(%d.title,$mid(%d.title,12,99),...)%d.title
set %d.alias $gettok(%d.title,1,32) $+ $gettok(%d.title,2,32) $+ $gettok(%d.title,3,32) $+ $gettok(%d.title,4,32) $+ $gettok(%d.title,5,32) $+ $gettok(%d.title,6,32) $+ $gettok(%d.title,7,32) $+ $gettok(%d.title,8,32) $+ $gettok(%d.title,9,32) $+ $gettok(%d.title,10,32)
did -o dmaker 13 4 Title: %d.titledisp
did -io dmaker 13 5 Height: %d.h
did -io dmaker 13 6 Width: %d.w
did -io dmaker 13 7 X Pos: %d.xpos
did -io dmaker 13 8 Y Pos: %d.ypos
did -io dmaker 13 9 Centered: %d.center
did -io dmaker 13 10 Option DBU: %d.dbu
set %d.sline 11
did -m dmaker 10
did -m dmaker 12
did -b dmaker 20
did -b dmaker 25
did -b dmaker 6
did -m dmaker 8
write %d.title $+ .txt alias %d.alias $chr(123) dialog -md %d.alias %d.alias $chr(125)
write %d.title $+ .txt menu * $chr(123) %d.title $+ :/dialog -md %d.alias %d.alias $chr(125)
write %d.title $+ .txt dialog %d.alias $chr(123)
write %d.title $+ .txt title " $+ %d.title $+ "
write %d.title $+ .txt size %d.xpos %d.ypos %d.w %d.h
if (%d.dbu == ON) { write %d.title $+ .txt option dbu }
}
on *:dialog:dmaker:sclick:16:{
if (($did(10) == $null) || ($did(12) == $null) || ($did(8) == $null)) {
did -ri dmaker 17 1 Error: You must enter a height/width/x/ypos (numbers only.)
halt
}
if ($did(22) == $null) && (%d.center == No) {
did -ri dmaker 17 1 Error: You must enter a height/width/x/ypos (numbers only.)
halt
}
if ($did(24) == $null) && (%d.center == No) {
did -ri dmaker 17 1 Error: You must enter a height/width/x/ypos (numbers only.)
halt
}
set %d.w $did(12)
set %d.h $did(10)
set %d.title $did(8)
if ($did(dmaker, 25).state == 1) {
set %d.xpos -1
set %d.ypos -1
set %d.center Yes
}
elseif ($did(dmaker, 25).state != 1) {
set %d.xpos $did(22)
set %d.ypos $did(24)
set %d.center No
}
if (%d.dbu == ON) { dialog -md dtest.dbu dtest.dbu }
if (%d.dbu != ON) { dialog -md dtest.nodbu dtest.nodbu }
}
on *:dialog:dmaker:sclick:20:{
set %d.dbu ON
if ($did(dmaker,20).state == 0) {
set %d.dbu OFF
}
}
on *:dialog:dmaker:sclick:25:{
did -m dmaker 22
did -m dmaker 24
set %d.xpos -1
set %d.ypos -1
set %d.center Yes
if ($did(dmaker,25).state == 0) {
did -n dmaker 22
did -n dmaker 24
set %d.center No
}
}
on *:dialog:dmaker:sclick:27:{
did -fu dmaker 3
if (%d.menu1.name != $null) {
inc %d.id
write %d.title $+ .txt menu " $+ %d.menu1.name $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.1 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.2 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.3 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.4 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.5 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.6 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.7 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.8 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.9 $+ ", %d.id
inc %d.id
write %d.title $+ .txt item " $+ %d.menu1.item.10 $+ ", %d.id
inc %d.id
:menu2
}
}
on *:dialog:dmaker:sclick:28:{
if (%d.dbu == ON) { dialog -md dmenuex.dbu dmenuex.dbu }
if (%d.dbu != ON) { dialog -md dmenuex.nodbu dmenuex.nodbu }
}
on *:dialog:dmaker:sclick:35:{
if (($did(32) != $null) && ($did(34) != $null)) {
set %d.did34 $did(34)
set %d.did32 $did(32)
inc %dmenus
set %d.itemcount $calc($count($did(34), $chr(44)) + 1)
set %d.currentitems $+ %d.menus $did(34)
set %d.currentmenu $+ %d.menus $did(32)
dialog -md daddmenu daddmenu
if (%d.itemcount > 10) {
did -ri dmaker 29 1 Error: Item list supports up to only 10 items including break.
halt
}
}
elseif (($did(32) == $null) || ($did(34) == $null)) {
did -ri dmaker 29 1 Error: Atleast one of the fields are empty. Please use all fields.
halt
}
}
on *:dialog:dmaker:sclick:36:{
dialog -md ddelmenu ddelmenu
}
on *:dialog:dmaker:scroll:37:{
}
dialog dtest.dbu {
title "TEST DIALOG"
size %d.xpos %d.ypos %d.w %d.h
option dbu
}
dialog dtest.nodbu {
title "TEST DIALOG"
size %d.xpos %d.ypos %d.w %d.h
}
dialog dmenuex.dbu {
title "MENU EXAMPLE"
size %d.xpos %d.ypos %d.w %d.h
option dbu
menu "File", 6
item "Open", 7
item break, 8
item "Exit", 9
menu "Example", 1
item "This", 2
item "Is", 3
item "An", 4
item "Example", 5
}
dialog dmenuex.nodbu {
title "MENU EXAMPLE"
size %d.xpos %d.ypos %d.w %d.h
menu "File", 6
item "Open", 7
item break, 8
item "Exit", 9
menu "Example", 1
item "This", 2
item "Is", 3
item "An", 4
item "Example", 5
}
dialog dsetpos.dbu {
title "SET POS"
size %d.xpos %d.ypos %d.w %d.h
option dbu
text "Double-Clicking in this window will set the spot your object will be placed at.", 1, -1 -1 %d.w %d.h $+ , center
}
on *:dialog:dsetpos.dbu:dclick:0:{
set %d.click-x $mouse.x
set %d.click-y $mouse.y
dialog -md dsetpos.verify dsetpos.verify
}
dialog dsetpos.nodbu {
title "SET POS"
size %d.xpos %d.ypos %d.w %d.h
}
on *:dialog:dsetpos.nodbu:dclick:0:{
set %d.click-x $mouse.x
set %d.click-y $mouse.y
dialog -md dsetpos.verify dsetpos.verify
}
dialog dsetpos.verify {
title "OK?"
size -1 -1 130 70
option dbu
text "Are you sure you want to place the object at:", 1, 9 12 120 15
button "Yes", 2, 10 35 50 20
button "No", 3, 70 35 50 20
edit "", 4, 50 20 30 10, read
}
on *:dialog:dsetpos.verify:init:0:{
did -ri dsetpos.verify 4 1 %d.click-x $+ , $+ %d.click-y
}
dialog daddmenu {
title "Add Menu?"
size -1 -1 130 70
option dbu
edit "", 1, 15 15 100 30, multi, read
text "Add This Menu?", 2, 18 5 100 10
button "Yes", 3, 23 50 40 15
button "No", 4, 68 50 40 15
}
on *:dialog:daddmenu:init:0:{
did -ri daddmenu 1 1 Menu Name: %d.currentmenu
did -i daddmenu 1 2 Item Names: %d.currentitems
}
on *:dialog:daddmenu:sclick:3:{
set %d.menu $+ %dmenus $+ .name %d.did32
if (%d.itemcount == 1) {
set %d.menu $+ %dmenus $+ .item1 %d.did34
halt
}
set %d.menu $+ %dmenus $+ .item.1 $gettok(%d.did34,1,44)
dec %d.itemcount 1
set %d.menu $+ %dmenus $+ .item.2 $gettok(%d.did34,2,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
set %d.menu $+ %dmenus $+ .item.3 $gettok(%d.did34,3,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
set %d.menu $+ %dmenus $+ .item.4 $gettok(%d.did34,4,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
set %d.menu $+ %dmenus $+ .item.5 $gettok(%d.did34,5,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
set %d.menu $+ %dmenus $+ .item.6 $gettok(%d.did34,6,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
set %d.menu $+ %dmenus $+ .item.7 $gettok(%d.did34,7,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
set %d.menu $+ %dmenus $+ .item.8 $gettok(%d.did34,8,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
set %d.menu $+ %dmenus $+ .item.9 $gettok(%d.did34,9,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
set %d.menu $+ %dmenus $+ .item.10 $gettok(%d.did34,10,44)
dec %d.itemcount 1
if (%d.itemcount == 0) { goto two }
:two
did -i dmaker 13 %d.sline
did -i dmaker 13 $calc(%d.sline + 1) Menu: %d.currentmenu
did -i dmaker 13 $calc(%d.sline + 2) Items: %d.currentitems
set %d.sline $calc(%d.sline + 3)
dialog -c daddmenu daddmenu
halt
}
on *:dialog:daddmenu:sclick:4:{
dialog -c daddmenu daddmenu
dec %dmenus
}