flaw-editor-0.1.0.0

LicenseMIT
Safe HaskellNone
LanguageHaskell2010

Flaw.Editor.EditableEntity

Description

 
Synopsis

Documentation

class Entity a => EditableEntity a where Source #

Value able to be edited in editor.

Minimal complete definition

Nothing

Methods

editableEntityTypeName :: a -> Text Source #

Get editable entity's type name.

editableEntityTypeName :: (Generic a, GenericEditableDatatype (Rep a)) => a -> Text Source #

Get editable entity's type name.

editableEntityConstructorName :: a -> Text Source #

Get editable entity's constructor name.

editableEntityConstructorName :: (Generic a, Rep a ~ M1 D c f, GenericEditableConstructor f) => a -> Text Source #

Get editable entity's constructor name.

editableEntityLayout :: a -> (EntityChange a -> STM ()) -> EditableLayoutM (a -> EntityChange a -> STM ()) Source #

Get editable entity's layout.

editableEntityLayout :: (Generic a, GenericEditableDatatype (Rep a), EntityChange a ~ GenericEntityChange a) => a -> (EntityChange a -> STM ()) -> EditableLayoutM (a -> EntityChange a -> STM ()) Source #

Get editable entity's layout.

Instances
EntityInterface EditableEntity Source # 
Instance details

Defined in Flaw.Editor.EditableEntity

EditableEntity Bool Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity Float Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity Int32 Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity Int64 Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity Integer Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity Word32 Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity Word64 Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity Text Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity EntityId Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

(Ord a, BasicEntity a) => EditableEntity (Set a) Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity (Vec4 Float) Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity (Vec3 Float) Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

EditableEntity (Vec2 Float) Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

(Ord k, BasicEntity k, BasicEntity v) => EditableEntity (Map k v) Source # 
Instance details

Defined in Flaw.Editor.Entity.Basic

editableLayoutForEntityId :: EditableLayoutState -> EntityId -> (forall a. FlowLayoutM a -> STM a) -> IO () Source #

Create editable layout watching at specified entity id.