Struct cognitive_frames::Frame [] [src]

pub struct Frame { /* fields omitted */ }

Frame main data structure.

Methods

impl Frame
[src]

Public constructors and destructor.

Creates new generic frame.

Creates new root frame.

Creates new display frame.

Creates new workspace frame.

Creates new container frame.

Creates new leaf frame.

Destroys frame recursively and deallocate memory.

impl Frame
[src]

Getting iterators.

Gets iterator over children in time order.

Gets iterator over children in time reversed order.

Gets iterator over children in space order.

Gets iterator over children in space reversed order.

impl Frame
[src]

Public getters for frame internals.

Gets ID of assigned surface.

Gets mode.

Gets geometry.

Gets mobility.

Gets position.

Gets size.

Gets area.

Gets title.

Check if frame is spacial and should be ignored while normal surface management.

Returns true if frame with this mode can be reanchorized, false otherwise.

NOTE: Display must be floating. Otherwise it could be relaxed. For the same reason workspace must be anchored.

Check if it should be possible to reorient or resize contents of frame.

Activates or deactivates the frame.

This method has effect only on workspaces. Not active workspace should not be drawn on screen.

impl Frame
[src]

Public setters for frame internals.

Sets surface id without informing other parts of application.

Sets size without informing other parts of application.

Sets size without informing other parts of application.

Sets geometry without adjusting any sizes an positions.

Sets mobility without any checks.

Sets mode without any checks.

Sets position and size without informing other parts of application.

impl Frame
[src]

Public getters for neighbouring frames.

Checks if frame has parent.

Checks if frame has children.

Optionally returns frames parent.

Optionally returns child first in time order.

Optionally returns child last in time order.

Optionally returns sibling previous in time order.

Optionally returns sibling next in time order.

Optionally returns child first in space order.

Optionally returns child last in space order.

Optionally returns sibling previous in space order.

Optionally returns sibling next in space order.

impl Frame
[src]

Public manipulators. Allow to change order relations between frames.

Prepends in spatial order and appends in time order given frame to self children.

Appends in spatial order and appends in time order given frame to self children.

Inserts given frame as previous in spatial order sibling of self. Frame becomes last sibling in time order.

Inserts given frame as next in spatial order sibling of self. Frame becomes last sibling in time order.

Make given frame first in time order of all its siblings. Spatial order is untouched.

Remove given frame from its parent children.

impl Frame
[src]

Miscellaneous other methods.

Compares frame internals for check if frames are not only same but the same.

Counts children and returns their number.

Counts anchored children and returns their number.

Calculates global position of the frame.

Trait Implementations

impl Clone for Frame
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Debug for Frame
[src]

Formats the value using the given formatter.

impl Converting for Frame
[src]

Converts frame three to list of SurfaceContext suitable for drawing by renderer.

Converts frame tree to structure describing state of workspaces.

impl Packing for Frame
[src]

TODO: Implement relaxing. Currently relaxing is equivalent to homogenizing.

Make all subsurfaces have the same size and proper layout. Homogenizing works only on directed frames. Read more

Set size of the frame and resize its subframe accordingly.

Set size of the frame and resize its subframe accordingly.

Remove given frame and relax old parent.

impl Searching for Frame
[src]

Returns first found frame upon which matcher returned true.

Finds first frame suitable for building. Returns self if self has no surface ID set, its parent otherwise. Read more

Finds first trunk which is Workspace.

Finds frame with given surface ID.

Finds leaf frame contained in frame self containing point or the closest one if point lies outside self. Read more

Returns neighbour in given planar direction. If parent is not aligned in the direction or neighbour is not found returns None. Read more

Finds top-most frame bordering with frame self in given direction.

Find find bottom-most frame bordering with frame self in given direction.

impl Settling for Frame
[src]

Settle self in buildable of target and relax it. Read more

Remove given frame, relax old parent and settle the frame on given target. Read more

Pop the surface pop and its parents inside surface self. Read more

Changes frames geometry and resizes all subframe accordingly.

Adds another container into given place in frame layout if needed. Read more

Removes unnecessary layers of container frames containing only one container or leaf frame.

Places frame self on given side of target frame.

Removes frame self from frame layout and then places it using jumpin method.

Places frame self in target frame as dock.

Anchorizes floating frame.

Deanchorizes frame. Floating frame must be attached to workspace so it will be resettled if necessary. Read more

Resize the frame. direction indicates the border which will be moved and magnitude is move distance in pixels. Read more

Move the frame and all subframes by given vector.

Removes frame self, relaxes old parent and destroys the frame.