replying to myself:
-----------------

REBOL []

disabled-face?: func [f][flag-face? f 'disabled]

enabled-face?:  func [f][not disabled-face? f]

disable-face: func [f /fx effect-block][
  if not disabled-face? f [
    either f/parent-face [
        insert skip find f/parent-face/pane f 1 make face [
            offset: f/offset
            size: f/size
            edge: none
            either fx [effect: effect-block][effect: [merge gradmul 1x1 ]]
            feel: make feel [engage: does []]
        ]
        show f/parent-face
     ][
         insert tail f/pane make face [
            offset: 0x0
            size: f/size
            edge: none
            either fx [effect: effect-block][effect: [merge gradmul 1x1 ]]
            feel: make feel [engage: does []]
        ]
         show f
     ]
    flag-face f 'disabled
   ]
]

enable-face:  func [f][
  if disabled-face? f [
    either f/parent-face [
       remove skip find f/parent-face/pane f 1
       deflag-face f 'disabled
       show f/parent-face
    ][
       remove back tail f/pane
       deflag-face f 'disabled
       show f
    ]    
  ]
]

; test suite ....

view screen: layout [bt: button "OK" [disable-face bt wait 3 
disable-face screen wait 3 enable-face bt wait 3 enable-face screen]]


-- 
To unsubscribe from this list, just send an email to
[EMAIL PROTECTED] with unsubscribe as the subject.

Reply via email to