ImageView

A node specifically to display images.

The image will automatically scale to fit available space. It will keep aspect ratio by default and will be displayed in the middle of the available box.

Constructors

this
deprecated this(BasicNodeParam!index sup, T source, Vector2 minSize)

Create an image node from given texture or filename.

this
this(NodeParams sup, T source, Vector2 minSize)
this(NodeParams sup, T source)

Create an image node from given texture or filename.

Destructor

~this
~this()
Undocumented in source.

Members

Functions

clear
void clear()

Remove any texture if attached.

drawImpl
void drawImpl(Rectangle , Rectangle rect)
Undocumented in source. Be warned that the author may not have intended to support it.
hoveredImpl
bool hoveredImpl(Rectangle , Vector2 mouse)
Undocumented in source. Be warned that the author may not have intended to support it.
pickStyle
inout(Style) pickStyle()
Undocumented in source. Be warned that the author may not have intended to support it.
release
Texture release()

Release ownership over the displayed texture.

resizeImpl
void resizeImpl(Vector2 space)
Undocumented in source. Be warned that the author may not have intended to support it.

Mixins

__anonymous
mixin DefineStyles
Undocumented in source.

Properties

minSize
inout(Vector2) minSize [@property getter]

Minimum size of the image.

targetArea
Rectangle targetArea [@property getter]

Area on the screen the image was last drawn to.

texture
Texture texture [@property setter]

Set the texture.

texture
string texture [@property setter]

Load the texture from a filename.

texture
const(Texture) texture [@property getter]

Get the current texture.

Variables

_targetArea
Rectangle _targetArea;

Rectangle occupied by this node after all calculations.

_texture
Texture _texture;

Texture for this node.

_texturePath
string _texturePath;

If set, path in the filesystem the texture is to be loaded from.

isSizeAutomatic
bool isSizeAutomatic;

If true, size of this imageView is adjusted automatically. Changes made to minSize will be reversed on size update.

Inherited Members

From Node

NodeAlign (from fluid.structs)
enum NodeAlign via public import fluid.structs : NodeAlign, NodeParams, Layout;
Undocumented in source.
NodeParams (from fluid.structs)
struct NodeParams via public import fluid.structs : NodeAlign, NodeParams, Layout;

Node core constructor parameters, to be passed from node to node.

Layout (from fluid.structs)
struct Layout via public import fluid.structs : NodeAlign, NodeParams, Layout;

Represents a node's layout

Align (from fluid.structs)
enum NodeAlign via public import fluid.structs : Align = NodeAlign, Params = NodeParams;
Undocumented in source.
Params (from fluid.structs)
struct NodeParams via public import fluid.structs : Align = NodeAlign, Params = NodeParams;

Node core constructor parameters, to be passed from node to node.

__anonymous
mixin DefineStyles!("style", q{ Style.init })

This node defines a single style, style, which also works as a default style for all other nodes. However, rather than for that, the purpose of this style is to define the convention of style being the node's default, idle style.

tree
LayoutTree* tree;

Tree data for the node. Note: requires at least one draw before this will work.

layout
Layout layout;

Layout for this node.

toRemove
bool toRemove;

If true, this node will be removed from the tree on the next draw.

ignoreMouse
bool ignoreMouse;

If true, mouse focus will be disabled for this node, so mouse signals will "go through" to its parents, as if the node wasn't there. The node will still detect hover like normal.

minSize
auto minSize;

Minimum size of the node.

theme
inout(Theme) theme [@property getter]

Get the current theme.

theme
Theme theme [@property setter]

Set the theme.

isHidden
bool isHidden [@property getter]

Check if the node is hidden.

isHidden
bool isHidden [@property setter]

Set the visibility

opEquals
bool opEquals(Node otherNode)
Undocumented in source. Be warned that the author may not have intended to support it.
show
This show()

Show the node.

hide
This hide()

Hide the node.

disable
This disable()

Disable this node.

enable
This enable()

Enable this node.

backend
inout(FluidBackend) backend()
Undocumented in source. Be warned that the author may not have intended to support it.
backend
FluidBackend backend(FluidBackend backend)
Undocumented in source. Be warned that the author may not have intended to support it.
io
alias io = backend
Undocumented in source.
toggleShow
void toggleShow()

Toggle the node's visibility.

remove
void remove()

Remove this node from the tree before the next draw.

isHovered
bool isHovered [@property getter]

Check if this node is hovered.

isDisabled
inout(bool) isDisabled()

Check if this node is disabled.

isDisabledInherited
bool isDisabledInherited()

Checks if the node is disabled, either by self, or by any of its ancestors. Updated when drawn.

queueAction
void queueAction(TreeAction action)

Queue an action to perform within this node's branch.

updateSize
void updateSize()

Recalculate the window size before next draw.

draw
void draw()

Draw this node as a root node.

_focusPrevNext
void _focusPrevNext(FluidInputAction actionType)

Switch to the previous or next focused item

_focusDirection
void _focusDirection(FluidInputAction action)

Switch focus towards a specified direction.

draw
void draw(Rectangle space)

Draw this node at the specified location from within of another (parent) node.

resize
void resize(LayoutTree* tree, Theme theme, Vector2 space)

Recalculate the minimum node size and update the minSize property.

resizeImpl
void resizeImpl(Vector2 space)

Ditto

drawImpl
void drawImpl(Rectangle paddingBox, Rectangle contentBox)

Draw this node.

hoveredImpl
bool hoveredImpl(Rectangle rect, Vector2 mousePosition)

Check if the node is hovered.

ImplHoveredRect
alias ImplHoveredRect = implHoveredRect
Undocumented in source.
implHoveredRect
mixintemplate implHoveredRect()
Undocumented in source.
pickStyle
inout(Style) pickStyle()

Get the current style.

toString
string toString()
Undocumented in source. Be warned that the author may not have intended to support it.

Meta