  rem Color Mixer V1.3
  rem By Tommy Sools (tommy@sools.com)

  %%color = $00000000
  %i = 0
  option decimalsep,.
  option scale,96
  dialog create,Dummy
  dialog add,edit,eCopy

  DIALOG CREATE,Color mixer,-1,0,337,257
  DIALOG ADD,STYLE,sCenter,,6,C,BACKGROUND,FOREGROUND
  DIALOG ADD,STYLE,sRed,,6,B,BACKGROUND,RED
  DIALOG ADD,STYLE,sGreen,,6,B,BACKGROUND,DKGREEN
  DIALOG ADD,STYLE,sBlue,,6,B,BACKGROUND,LTBLUE
  DIALOG ADD,GROUP,gVDS,8,8,104,38,VDS
  DIALOG ADD,TEXT,tVDS,24,16,88,16,%%color,,sCenter
  DIALOG ADD,BUTTON,bVDS,56,8,104,24,Copy
  DIALOG ADD,GROUP,gColor,8,120,96,96
  DIALOG ADD,GROUP,gHTML,8,224,104,38,HTML
  DIALOG ADD,TEXT,tHTML,24,232,88,16,#000000,,sCenter
  DIALOG ADD,BUTTON,bHTML,56,224,104,24,Copy
  DIALOG ADD,GROUP,gControls,120,8,320,128,Controls
  DIALOG ADD,TEXT,tRed,148,16,,,R:,,sRed
  DIALOG ADD,TRACKBAR,tbRed,144,40,280,24,,,,click
  DIALOG ADD,TEXT,tGreen,180,16,,,G:,,sGreen
  DIALOG ADD,TRACKBAR,tbGreen,176,40,280,24,,,,click
  DIALOG ADD,TEXT,tBlue,212,16,,,B:,,sBlue
  DIALOG ADD,TRACKBAR,tbBlue,208,40,280,24,,,,click
  DIALOG SHOW
  gosub addColor
  list create,1
:evloop
  wait event,0.1
  goto @event()
:timer
:tbRedclick
:tbGreenclick
:tbBlueclick
  %%red    = @hex(@format(@fmul(@fdiv(@dlgtext(tbRed),100),255),3.0),2)
  %%green  = @hex(@format(@fmul(@fdiv(@dlgtext(tbGreen),100),255),3.0),2)
  %%blue   = @hex(@format(@fmul(@fdiv(@dlgtext(tbBlue),100),255),3.0),2)
  %%color2 = $00%%blue%%green%%red
  if @not(@equal(%%color,%%color2))
    %%color = %%color2
    gosub addColor
    dialog set,tVDS,%%color
    dialog set,tHTML,#%%red%%green%%blue
  end
  goto evloop
:bVDSbutton
  %x = @dlgtext(tVDS)
  dialog select,0
  dialog set,eCopy,%x
  %x = @sendmsg(@winexists(~eCopy),$0B1,0,@len(%x))
  %x = @sendmsg(@winexists(~eCopy),$0301,0,0)
  dialog select,1
  goto evloop
:bHTMLbutton
  %x = @dlgtext(tHTML)
  dialog select,0
  dialog set,eCopy,%x
  %x = @sendmsg(@winexists(~eCopy),$0B1,0,@len(%x))
  %x = @sendmsg(@winexists(~eCopy),$0301,0,0)
  dialog select,1
  goto evloop
:addColor
  %i = @succ(%i)
  DIALOG ADD,STYLE,sColor%i,,6,,%%color,FOREGROUND
  DIALOG ADD,TEXT,tColor%i,10,122,91,91,,,sColor%i
  if @not(@equal(%i,1))
    dialog remove,tColor@pred(%i)
  end
  exit
:close
  list close,1
