Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
SDL.Hint
Synopsis
- data Hint :: * -> * where
- HintAccelerometerAsJoystick :: Hint AccelerometerJoystickOptions
- HintFramebufferAcceleration :: Hint FramebufferAccelerationOptions
- HintMacCTRLClick :: Hint MacCTRLClickOptions
- HintMouseRelativeModeWarp :: Hint MouseModeWarpOptions
- HintRenderDriver :: Hint RenderDrivers
- HintRenderOpenGLShaders :: Hint RenderOpenGLShaderOptions
- HintRenderScaleQuality :: Hint RenderScaleQuality
- HintRenderVSync :: Hint RenderVSyncOptions
- HintVideoWinD3DCompiler :: Hint VideoWinD3DCompilerOptions
- setHintWithPriority :: MonadIO m => HintPriority -> Hint v -> v -> m Bool
- data HintPriority
- clearHints :: MonadIO m => m ()
- data AccelerometerJoystickOptions
- data FramebufferAccelerationOptions
- data MacCTRLClickOptions
- data MouseModeWarpOptions
- data RenderDrivers
- data RenderOpenGLShaderOptions
- data RenderScaleQuality
- data RenderVSyncOptions
- data VideoWinD3DCompilerOptions
Getting and setting hints
data Hint :: * -> * where Source #
The Hint
type exports a well-typed interface to SDL's concept of
hints. This type has instances for
both HasGetter
and HasSetter
, allowing you to get and set hints. Note that
the HasSetter
interface is fairly relaxed - if a hint cannot be set, the
failure will be silently discarded. For more feedback and control when setting
hints, see setHintWithPriority
.
Constructors
setHintWithPriority :: MonadIO m => HintPriority -> Hint v -> v -> m Bool Source #
Set the value of a hint, applying priority rules for when there is a conflict. Ordinarily, a hint will not be set if there is an existing override hint or environment variable that takes precedence.
data HintPriority Source #
How to deal with setting hints when an existing override or environment variable is present.
Constructors
DefaultPriority | Low priority, used for default values |
NormalPriority | Medium priority |
OverridePriority | High priority |
Instances
Bounded HintPriority Source # | |
Defined in SDL.Hint | |
Enum HintPriority Source # | |
Defined in SDL.Hint Methods succ :: HintPriority -> HintPriority pred :: HintPriority -> HintPriority toEnum :: Int -> HintPriority fromEnum :: HintPriority -> Int enumFrom :: HintPriority -> [HintPriority] enumFromThen :: HintPriority -> HintPriority -> [HintPriority] enumFromTo :: HintPriority -> HintPriority -> [HintPriority] enumFromThenTo :: HintPriority -> HintPriority -> HintPriority -> [HintPriority] | |
Eq HintPriority Source # | |
Defined in SDL.Hint | |
Data HintPriority Source # | |
Defined in SDL.Hint Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HintPriority -> c HintPriority gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HintPriority toConstr :: HintPriority -> Constr dataTypeOf :: HintPriority -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HintPriority) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HintPriority) gmapT :: (forall b. Data b => b -> b) -> HintPriority -> HintPriority gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HintPriority -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HintPriority -> r gmapQ :: (forall d. Data d => d -> u) -> HintPriority -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HintPriority -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HintPriority -> m HintPriority gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HintPriority -> m HintPriority gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HintPriority -> m HintPriority | |
Ord HintPriority Source # | |
Defined in SDL.Hint Methods compare :: HintPriority -> HintPriority -> Ordering (<) :: HintPriority -> HintPriority -> Bool (<=) :: HintPriority -> HintPriority -> Bool (>) :: HintPriority -> HintPriority -> Bool (>=) :: HintPriority -> HintPriority -> Bool max :: HintPriority -> HintPriority -> HintPriority min :: HintPriority -> HintPriority -> HintPriority | |
Read HintPriority Source # | |
Defined in SDL.Hint Methods readsPrec :: Int -> ReadS HintPriority readList :: ReadS [HintPriority] readPrec :: ReadPrec HintPriority readListPrec :: ReadPrec [HintPriority] | |
Show HintPriority Source # | |
Defined in SDL.Hint Methods showsPrec :: Int -> HintPriority -> ShowS show :: HintPriority -> String showList :: [HintPriority] -> ShowS | |
Generic HintPriority Source # | |
Defined in SDL.Hint Associated Types type Rep HintPriority :: Type -> Type | |
type Rep HintPriority Source # | |
Defined in SDL.Hint type Rep HintPriority = D1 ('MetaData "HintPriority" "SDL.Hint" "sdl2-2.5.2.0-AAq7COl7TqQCpgYwmeDmPU" 'False) (C1 ('MetaCons "DefaultPriority" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "NormalPriority" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OverridePriority" 'PrefixI 'False) (U1 :: Type -> Type))) |
clearHints :: MonadIO m => m () Source #
Hint Information
HintAccelerometerAsJoystick
data AccelerometerJoystickOptions Source #
A hint that specifies whether the Android/iOS built-in accelerometer should be listed as a joystick device, rather than listing actual joysticks only. By default SDL will list real joysticks along with the accelerometer as if it were a 3 axis joystick.
Constructors
AccelerometerNotJoystick | List only real joysticks and accept input from them |
AccelerometerIsJoystick | List real joysticks along with the accelerometer as if it were a 3 axis joystick (the default) |
Instances
HintFramebufferAcceleration
data FramebufferAccelerationOptions Source #
A hint that specifies how 3D acceleration is used to accelerate the SDL screen surface. By default SDL tries to make a best guess whether to use acceleration or not on each platform.
Constructors
Disable3D | Disable 3D acceleration |
Enable3DDefault | Enable 3D acceleration, using the default renderer |
Enable3DDirect3D | Enable 3D acceleration using Direct3D |
Enable3DOpenGL | Enable 3D acceleration using OpenGL |
Enable3DOpenGLES | Enable 3D acceleration using OpenGLES |
Enable3DOpenGLES2 | Enable 3D acceleration using OpenGLES2 |
Enable3DSoftware | Enable 3D acceleration using software rendering |
Instances
HintMacCTRLClick
data MacCTRLClickOptions Source #
A hint that specifies whether ctrl+click should generate a right-click event on Mac. By default holding ctrl while left clicking will not generate a right click event when on Mac.
Constructors
NoRightClick | Disable emulating right click |
EmulateRightClick | Enable emulating right click |
Instances
HintMouseRelativeModeWarp
data MouseModeWarpOptions Source #
A hint that specifies whether relative mouse mode is implemented using mouse warping. By default SDL will use raw input for relative mouse mode
Constructors
MouseRawInput | Relative mouse mode uses the raw input |
MouseWarping | Relative mouse mode uses mouse warping |
Instances
HintRenderDriver
data RenderDrivers Source #
A hint that specifies which render driver to use. By default the first one in the list that is available on the current platform is chosen.
Instances
Bounded RenderDrivers Source # | |
Defined in SDL.Hint | |
Enum RenderDrivers Source # | |
Defined in SDL.Hint Methods succ :: RenderDrivers -> RenderDrivers pred :: RenderDrivers -> RenderDrivers toEnum :: Int -> RenderDrivers fromEnum :: RenderDrivers -> Int enumFrom :: RenderDrivers -> [RenderDrivers] enumFromThen :: RenderDrivers -> RenderDrivers -> [RenderDrivers] enumFromTo :: RenderDrivers -> RenderDrivers -> [RenderDrivers] enumFromThenTo :: RenderDrivers -> RenderDrivers -> RenderDrivers -> [RenderDrivers] | |
Eq RenderDrivers Source # | |
Defined in SDL.Hint | |
Data RenderDrivers Source # | |
Defined in SDL.Hint Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RenderDrivers -> c RenderDrivers gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RenderDrivers toConstr :: RenderDrivers -> Constr dataTypeOf :: RenderDrivers -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c RenderDrivers) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RenderDrivers) gmapT :: (forall b. Data b => b -> b) -> RenderDrivers -> RenderDrivers gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RenderDrivers -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RenderDrivers -> r gmapQ :: (forall d. Data d => d -> u) -> RenderDrivers -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> RenderDrivers -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> RenderDrivers -> m RenderDrivers gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RenderDrivers -> m RenderDrivers gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RenderDrivers -> m RenderDrivers | |
Ord RenderDrivers Source # | |
Defined in SDL.Hint Methods compare :: RenderDrivers -> RenderDrivers -> Ordering (<) :: RenderDrivers -> RenderDrivers -> Bool (<=) :: RenderDrivers -> RenderDrivers -> Bool (>) :: RenderDrivers -> RenderDrivers -> Bool (>=) :: RenderDrivers -> RenderDrivers -> Bool max :: RenderDrivers -> RenderDrivers -> RenderDrivers min :: RenderDrivers -> RenderDrivers -> RenderDrivers | |
Read RenderDrivers Source # | |
Defined in SDL.Hint Methods readsPrec :: Int -> ReadS RenderDrivers readList :: ReadS [RenderDrivers] readPrec :: ReadPrec RenderDrivers readListPrec :: ReadPrec [RenderDrivers] | |
Show RenderDrivers Source # | |
Defined in SDL.Hint Methods showsPrec :: Int -> RenderDrivers -> ShowS show :: RenderDrivers -> String showList :: [RenderDrivers] -> ShowS | |
Generic RenderDrivers Source # | |
Defined in SDL.Hint Associated Types type Rep RenderDrivers :: Type -> Type | |
type Rep RenderDrivers Source # | |
Defined in SDL.Hint type Rep RenderDrivers = D1 ('MetaData "RenderDrivers" "SDL.Hint" "sdl2-2.5.2.0-AAq7COl7TqQCpgYwmeDmPU" 'False) ((C1 ('MetaCons "Direct3D" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OpenGL" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "OpenGLES" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "OpenGLES2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Software" 'PrefixI 'False) (U1 :: Type -> Type)))) |
HintRenderOpenGLShaders
data RenderOpenGLShaderOptions Source #
A hint that specifies whether the OpenGL render driver uses shaders. By default shaders are used if OpenGL supports them.
Constructors
DisableShaders | Disable shaders |
EnableShaders | Enable shaders, if they are available |
Instances
HintRenderScaleQuality
data RenderScaleQuality Source #
A hint that specifies scaling quality. By default nearest pixel sampling is used.
Constructors
ScaleNearest | Nearest pixel sampling |
ScaleLinear | linear filtering (supported by OpenGL and Direct3D) |
ScaleBest | Anisotropic filtering (supported by Direct3D) |
Instances
HintRenderVSync
data RenderVSyncOptions Source #
A hint that specifies whether sync to vertical refresh is enabled or disabled to avoid tearing. By default SDL uses the flag passed into calls to create renderers.
Constructors
DisableVSync | |
EnableVSync |
Instances
HintVideoWinD3DCompiler
data VideoWinD3DCompilerOptions Source #
A hint that specifies which shader compiler to preload when using the Chrome
ANGLE binaries. By default d3dcompiler_46.dll
will be used.
Constructors
D3DVistaOrLater | Use |
D3DXPSupport | Use |
D3DNone | Do not load any library, useful if you compiled ANGLE from source and included the compiler in your binaries |