LGI  1.0
Lliurex Graphic Interface
Public Member Functions | Public Attributes | List of all members
net::lliurex::lgi::fbWindow Class Reference

#include <fbwindow.hpp>

Inheritance diagram for net::lliurex::lgi::fbWindow:
net::lliurex::lgi::BaseWindow

Public Member Functions

 fbWindow (int width, int height, const char *devname, int flags)
 
virtual ~fbWindow ()
 
void Resize (int w, int h)
 
void Destroy ()
 
void SetTitle (const char *title)
 
void GetEvent ()
 
void DispatchEvents (int mode)
 
void PushEvent (RawEvent *raw_event)
 
RawEventPopEvent ()
 
void ProcessEvent (RawEvent *raw_event)
 
void Flip ()
 
int GetWidth ()
 
int GetHeight ()
 
void AddLayer (Layer *layer)
 
void RemoveLayer (Layer *layer)
 
void ShowLayer (Layer *layer)
 
void HideLayer (Layer *layer)
 
void SetCursor (int type)
 
void SetCursorMode (int mode)
 
void SetCustomCursor (BaseCursor *cursor)
 
void SetDoubleClickTime (int ms)
 
void SendMessage (Layer *layer, Widget *widget, Message *msg)
 
int GetTicks ()
 
bool GetCollision (int x, int y, Widget **widget, Layer **layer)
 
- Public Member Functions inherited from net::lliurex::lgi::BaseWindow
virtual ~BaseWindow ()
 
virtual void SetSize (int width, int height)=0
 
virtual WidgetGetFocus ()=0
 
virtual void NextFocus (Layer *layer=nullptr)=0
 

Public Attributes

cairo_t * cairo
 
cairo_surface_t * cairo_surface
 

Constructor & Destructor Documentation

◆ fbWindow()

net::lliurex::lgi::fbWindow::fbWindow ( int  width,
int  height,
const char *  devname,
int  flags 
)

◆ ~fbWindow()

virtual net::lliurex::lgi::fbWindow::~fbWindow ( )
virtual

Member Function Documentation

◆ AddLayer()

void net::lliurex::lgi::fbWindow::AddLayer ( Layer layer)
virtual

◆ Destroy()

void net::lliurex::lgi::fbWindow::Destroy ( )
virtual

Destroys the window Trying to draw or process events before destroying the window may crash the application.

Implements net::lliurex::lgi::BaseWindow.

◆ DispatchEvents()

void net::lliurex::lgi::fbWindow::DispatchEvents ( int  mode)
virtual

Dispatch events from stack

Parameters
modeDispatch method, valid values are LGI_DISPATCH_EVENTS_FULL and LGI_DISPATCH_EVENTS_WAIT

Implements net::lliurex::lgi::BaseWindow.

◆ Flip()

void net::lliurex::lgi::fbWindow::Flip ( )
virtual

Renders current frame and clean the screen Should be call at each iteration

Implements net::lliurex::lgi::BaseWindow.

◆ GetCollision()

bool net::lliurex::lgi::fbWindow::GetCollision ( int  x,
int  y,
Widget **  widget,
Layer **  layer 
)

◆ GetEvent()

void net::lliurex::lgi::fbWindow::GetEvent ( )
virtual

Pulls an event from underlaying event stack and pushes it into lgi stack. Typically, each call pushes one event, but two, three or none it is also possible

Implements net::lliurex::lgi::BaseWindow.

◆ GetHeight()

int net::lliurex::lgi::fbWindow::GetHeight ( )
virtual

◆ GetTicks()

int net::lliurex::lgi::fbWindow::GetTicks ( )

◆ GetWidth()

int net::lliurex::lgi::fbWindow::GetWidth ( )
virtual

◆ HideLayer()

void net::lliurex::lgi::fbWindow::HideLayer ( Layer layer)
virtual

◆ PopEvent()

RawEvent* net::lliurex::lgi::fbWindow::PopEvent ( )
virtual

Pops and event from the stack This method should be thread safe

Implements net::lliurex::lgi::BaseWindow.

◆ ProcessEvent()

void net::lliurex::lgi::fbWindow::ProcessEvent ( RawEvent raw_event)
virtual

Process and event, this means, calling those layers and widgets hooks

Implements net::lliurex::lgi::BaseWindow.

◆ PushEvent()

void net::lliurex::lgi::fbWindow::PushEvent ( RawEvent raw_event)
virtual

Push an event into the stack

Parameters
raw_eventSource event, will be freed by DispatchEvents This method is thread safe

Implements net::lliurex::lgi::BaseWindow.

◆ RemoveLayer()

void net::lliurex::lgi::fbWindow::RemoveLayer ( Layer layer)
virtual

◆ Resize()

void net::lliurex::lgi::fbWindow::Resize ( int  w,
int  h 
)

◆ SendMessage()

void net::lliurex::lgi::fbWindow::SendMessage ( Layer layer,
Widget widget,
Message msg 
)
virtual

Push a message into event stack

Implements net::lliurex::lgi::BaseWindow.

◆ SetCursor()

void net::lliurex::lgi::fbWindow::SetCursor ( int  type)
virtual

◆ SetCursorMode()

void net::lliurex::lgi::fbWindow::SetCursorMode ( int  mode)
virtual

◆ SetCustomCursor()

void net::lliurex::lgi::fbWindow::SetCustomCursor ( BaseCursor cursor)
virtual

◆ SetDoubleClickTime()

void net::lliurex::lgi::fbWindow::SetDoubleClickTime ( int  ms)
virtual

◆ SetTitle()

void net::lliurex::lgi::fbWindow::SetTitle ( const char *  title)
virtual

Sets windows title

Implements net::lliurex::lgi::BaseWindow.

◆ ShowLayer()

void net::lliurex::lgi::fbWindow::ShowLayer ( Layer layer)
virtual

Member Data Documentation

◆ cairo

cairo_t* net::lliurex::lgi::fbWindow::cairo

◆ cairo_surface

cairo_surface_t* net::lliurex::lgi::fbWindow::cairo_surface

The documentation for this class was generated from the following file: