implementation module controldefaccess import StdBool, StdInt, StdMisc import commondef, StdControlAttribute // Access rules to ControlAttributes: controlAttributesHaveThisId :: !Id ![ControlAttribute .st] -> Bool controlAttributesHaveThisId id atts = hasId && id==getControlIdAtt idAtt where (hasId,idAtt) = cselect isControlId undef atts sameControlAttribute :: !(ControlAttribute .st) !(ControlAttribute .st) -> Bool sameControlAttribute (ControlId _) att = isControlId att sameControlAttribute (ControlPen _) att = isControlPen att sameControlAttribute (ControlPos _) att = isControlPos att sameControlAttribute (ControlViewSize _) att = isControlViewSize att sameControlAttribute (ControlMinimumSize _) att = isControlMinimumSize att sameControlAttribute (ControlResize _) att = isControlResize att sameControlAttribute (ControlSelectState _) att = isControlSelectState att sameControlAttribute ControlHide att = isControlHide att sameControlAttribute (ControlFunction _) att = isControlFunction att sameControlAttribute (ControlModsFunction _) att = isControlModsFunction att sameControlAttribute (ControlActivate _) att = isControlActivate att sameControlAttribute (ControlDeactivate _) att = isControlDeactivate att sameControlAttribute (ControlMouse _ _ _) att = isControlMouse att sameControlAttribute (ControlKeyboard _ _ _) att = isControlKeyboard att sameControlAttribute (ControlItemSpace _ _) att = isControlItemSpace att sameControlAttribute (ControlHMargin _ _) att = isControlHMargin att sameControlAttribute (ControlVMargin _ _) att = isControlVMargin att sameControlAttribute (ControlLook _ _) att = isControlLook att sameControlAttribute (ControlTip _) att = isControlTip att sameControlAttribute (ControlViewDomain _) att = isControlViewDomain att sameControlAttribute (ControlOrigin _) att = isControlOrigin att sameControlAttribute (ControlHScroll _) att = isControlHScroll att sameControlAttribute (ControlVScroll _) att = isControlVScroll att