module HTk.Tix.Subwidget (
CanBeSubwidget (..),
createSubwidget
) where
import HTk.Kernel.Core
(ObjectKind (..),createGUIObject,ObjectName,ObjectID,TclScript,
ConfigOption, Methods (..), GUIOBJECT,getObjectName,getParentObject)
import HTk.Kernel.BaseClasses (Widget)
createSubwidget :: ObjectKind -> Methods -> GUIOBJECT -> IO GUIOBJECT
createSubwidget kind meths megawidget
= do mwName <- getObjectName megawidget
Just parent <- getParentObject megawidget
let megaName = show mwName
createGUIObject parent (SUBWIDGET kind megaName)
(meths { createCmd = tkDoNothing })
tkDoNothing::ObjectName->ObjectKind->ObjectName->ObjectID->[ConfigOption]
->TclScript
tkDoNothing _ _ _ _ _ = []
class Widget w => CanBeSubwidget w where
createAsSubwidget :: GUIOBJECT -> IO w