Cogs.Core
Public Member Functions | Private Attributes | List of all members
Cogs::Core::GuiContainer Struct Reference
Inheritance diagram for Cogs::Core::GuiContainer:
litehtml::document_container Cogs::Network::MessageHub

Public Member Functions

litehtml::uint_ptr create_font (const litehtml::tchar_t *faceName, int size, int weight, litehtml::font_style italic, unsigned int decoration, litehtml::font_metrics *fm) override
 
void delete_font (litehtml::uint_ptr hFont) override
 
int pt_to_px (int pt) override
 
int text_width (const litehtml::tchar_t *text, litehtml::uint_ptr hFont) override
 
int get_default_font_size () const override
 
const litehtml::tchar_t * get_default_font_name () const override
 
void load_image (const litehtml::tchar_t *src, const litehtml::tchar_t *baseurl, bool redraw_on_ready) override
 
void get_image_size (const litehtml::tchar_t *src, const litehtml::tchar_t *baseurl, litehtml::size &sz) override
 
void draw_text (litehtml::uint_ptr hdc, const litehtml::tchar_t *text, litehtml::uint_ptr hFont, litehtml::web_color color, const litehtml::position &pos) override
 
void draw_background (litehtml::uint_ptr hdc, const litehtml::background_paint &bg) override
 
void draw_borders (litehtml::uint_ptr hdc, const litehtml::borders &borders, const litehtml::position &draw_pos, bool root) override
 
void draw_list_marker (litehtml::uint_ptr hdc, const litehtml::list_marker &marker) override
 
void set_caption (const litehtml::tchar_t *) override
 
void set_base_url (const litehtml::tchar_t *) override
 
void link (const std::shared_ptr< litehtml::document > &, const litehtml::element::ptr &) override
 
void on_load (const std::shared_ptr< litehtml::document > &document) override
 
void on_anchor_click (const litehtml::tchar_t *url, const litehtml::element::ptr &el) override
 
void on_mouse_enter (const litehtml::element::ptr &el) override
 
void on_mouse_move (const litehtml::element::ptr &el, int x, int y) override
 
void on_mouse_leave (const litehtml::element::ptr &el) override
 
void on_click (const litehtml::element::ptr &el) override
 
void set_cursor (const litehtml::tchar_t *) override
 
void transform_text (litehtml::tstring &, litehtml::text_transform) override
 
void import_css (litehtml::tstring &text, const litehtml::tstring &url, litehtml::tstring &baseurl) override
 
void set_clip (const litehtml::position &, const litehtml::border_radiuses &, bool, bool) override
 
void del_clip () override
 
void get_client_rect (litehtml::position &client) const override
 
std::shared_ptr< litehtml::elementcreate_element (const litehtml::tchar_t *tag_name, const litehtml::string_map &attributes, const std::shared_ptr< litehtml::document > &doc) override
 
void get_media_features (litehtml::media_features &media) const override
 
void get_language (litehtml::tstring &, litehtml::tstring &) const override
 
void execute_script (litehtml::document *document, const litehtml::element::ptr el) override
 
void invalidate_layout (litehtml::document *document) override
 
void initialize (RenderTaskContext *renderContext, InspectorGuiRenderer *guiRenderer)
 
bool isInitialized () const
 
void pushState (ComponentModel::Entity *entity, glm::vec2 size)
 
void popState ()
 
bool isInvalidated () const
 
void clear ()
 
- Public Member Functions inherited from litehtml::document_container
virtual litehtml::uint_ptr create_font (const litehtml::tchar_t *faceName, int size, int weight, litehtml::font_style italic, unsigned int decoration, litehtml::font_metrics *fm)=0
 
virtual void delete_font (litehtml::uint_ptr hFont)=0
 
virtual int text_width (const litehtml::tchar_t *text, litehtml::uint_ptr hFont)=0
 
virtual void draw_text (litehtml::uint_ptr hdc, const litehtml::tchar_t *text, litehtml::uint_ptr hFont, litehtml::web_color color, const litehtml::position &pos)=0
 
virtual int pt_to_px (int pt)=0
 
virtual int get_default_font_size () const =0
 
virtual const litehtml::tchar_t * get_default_font_name () const =0
 
virtual void draw_list_marker (litehtml::uint_ptr hdc, const litehtml::list_marker &marker)=0
 
virtual void load_image (const litehtml::tchar_t *src, const litehtml::tchar_t *baseurl, bool redraw_on_ready)=0
 
virtual void get_image_size (const litehtml::tchar_t *src, const litehtml::tchar_t *baseurl, litehtml::size &sz)=0
 
virtual void draw_background (litehtml::uint_ptr hdc, const litehtml::background_paint &bg)=0
 
virtual void draw_borders (litehtml::uint_ptr hdc, const litehtml::borders &borders, const litehtml::position &draw_pos, bool root)=0
 
virtual void set_caption (const litehtml::tchar_t *caption)=0
 
virtual void set_base_url (const litehtml::tchar_t *base_url)=0
 
virtual void link (const std::shared_ptr< litehtml::document > &doc, const litehtml::element::ptr &el)=0
 
virtual void on_load (const std::shared_ptr< litehtml::document > &document)=0
 
virtual void on_anchor_click (const litehtml::tchar_t *url, const litehtml::element::ptr &el)=0
 
virtual void on_mouse_enter (const litehtml::element::ptr &el)=0
 
virtual void on_mouse_move (const litehtml::element::ptr &el, int x, int y)=0
 
virtual void on_mouse_leave (const litehtml::element::ptr &el)=0
 
virtual void on_click (const litehtml::element::ptr &el)=0
 
virtual void set_cursor (const litehtml::tchar_t *cursor)=0
 
virtual void transform_text (litehtml::tstring &text, litehtml::text_transform tt)=0
 
virtual void import_css (litehtml::tstring &text, const litehtml::tstring &url, litehtml::tstring &baseurl)=0
 
virtual void set_clip (const litehtml::position &pos, const litehtml::border_radiuses &bdr_radius, bool valid_x, bool valid_y)=0
 
virtual void del_clip ()=0
 
virtual void get_client_rect (litehtml::position &client) const =0
 
virtual std::shared_ptr< litehtml::elementcreate_element (const litehtml::tchar_t *tag_name, const litehtml::string_map &attributes, const std::shared_ptr< litehtml::document > &doc)=0
 
virtual void get_media_features (litehtml::media_features &media) const =0
 
virtual void get_language (litehtml::tstring &language, litehtml::tstring &culture) const =0
 
virtual litehtml::tstring resolve_color (const litehtml::tstring &) const
 
virtual void execute_script (litehtml::document *, const litehtml::element::ptr)
 
virtual void invalidate_layout (litehtml::document *)=0
 
- Public Member Functions inherited from Cogs::Network::MessageHub
 MessageHub (uint32_t ident=0)
 Constructs a new MessageHub instance and adds it to the global hub list.
 
virtual ~MessageHub ()
 Removes this MessageHub from the global list and cleans up all connections to and from this hub.
 
bool addListener (MessageHub *hub, bool bidirectional=false)
 Adds the specified hub as a listener to this hub.
 
bool addListener (uint32_t hubid, bool bidirectional=false)
 Attempts to add the hub with the given ID as a listener to this hub.
 
bool listenTo (MessageHub *hub, bool bidirectional=false)
 Sets this MessageHub up to listen for messages from the specified hub.
 
bool listenTo (uint32_t hubid, bool bidirectional=false)
 Sets up this MessageHub to listen for messages from the hub with the specified ID (if a matching hub can be found).
 
bool removeListener (MessageHub *hub)
 Removes the specified hub as a listener to this hub.
 
bool removeListener (uint32_t hubid)
 Removes the hub with the given ID as a listener to this hub.
 
void removeAllListeners ()
 Removes all listeners from this hub.
 
void disconnectFromSender (uint32_t hubid)
 Disconnects this hub from the specified hub to which it is listening.
 
void disconnectFromAllSenders ()
 Disconnects this hub from all hubs to which it is listening.
 
virtual void broadcastMessage (const Message::Ptr &message)
 Broadcast message to all hubs.
 
virtual void sendMessage (const Message::Ptr &message)
 Send message to all hubs listening to this one.
 
virtual void queueMessage (const Message::Ptr &message)
 Queue a message for this hub to process.
 
virtual bool processMessages (size_t limit=noLimit)
 Process all queued messages for this hub.
 
virtual bool isSendOnly () const
 
uint32_t getID () const
 
size_t getNoOfQueuedMessages ()
 Retrieves the number of messages currently awaiting processing by this hub.
 
void flushQueuedMessages ()
 Flushes all pending messages from this hub without processing them.
 

Private Attributes

RenderTaskContextrenderContext
 
Contextcontext
 
InspectorGuiRendererinspectorGuiRenderer
 
ComponentModel::Entityentity = nullptr
 
ComponentModel::ComponentHandle scriptComponent
 
glm::vec2 size
 
bool invalidated = false
 
std::unordered_map< size_t, Cogs::Core::TextureHandleguiTextures
 

Additional Inherited Members

- Public Types inherited from Cogs::Network::MessageHub
using MessageQueue = std::deque< Message::Ptr >
 
using HubList = std::vector< MessageHub * >
 
- Static Public Attributes inherited from Cogs::Network::MessageHub
static constexpr size_t noLimit = 10000000
 
- Protected Member Functions inherited from Cogs::Network::MessageHub
Message::Ptr getNextMessage ()
 Retrieves the next pending message.
 

Detailed Description

Definition at line 28 of file GuiContainer.h.

Member Function Documentation

◆ clear()

void Cogs::Core::GuiContainer::clear ( )

Definition at line 606 of file GuiContainer.cpp.

◆ create_element()

std::shared_ptr< litehtml::element > Cogs::Core::GuiContainer::create_element ( const litehtml::tchar_t *  tag_name,
const litehtml::string_map &  attributes,
const std::shared_ptr< litehtml::document > &  doc 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 527 of file GuiContainer.cpp.

◆ create_font()

litehtml::uint_ptr Cogs::Core::GuiContainer::create_font ( const litehtml::tchar_t *  faceName,
int  size,
int  weight,
litehtml::font_style  italic,
unsigned int  decoration,
litehtml::font_metrics fm 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 89 of file GuiContainer.cpp.

◆ del_clip()

void Cogs::Core::GuiContainer::del_clip ( )
inlineoverridevirtual

Implements litehtml::document_container.

Definition at line 63 of file GuiContainer.h.

◆ delete_font()

void Cogs::Core::GuiContainer::delete_font ( litehtml::uint_ptr  hFont)
overridevirtual

Implements litehtml::document_container.

Definition at line 113 of file GuiContainer.cpp.

◆ draw_background()

void Cogs::Core::GuiContainer::draw_background ( litehtml::uint_ptr  hdc,
const litehtml::background_paint bg 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 244 of file GuiContainer.cpp.

◆ draw_borders()

void Cogs::Core::GuiContainer::draw_borders ( litehtml::uint_ptr  hdc,
const litehtml::borders borders,
const litehtml::position draw_pos,
bool  root 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 287 of file GuiContainer.cpp.

◆ draw_list_marker()

void Cogs::Core::GuiContainer::draw_list_marker ( litehtml::uint_ptr  hdc,
const litehtml::list_marker marker 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 161 of file GuiContainer.cpp.

◆ draw_text()

void Cogs::Core::GuiContainer::draw_text ( litehtml::uint_ptr  hdc,
const litehtml::tchar_t *  text,
litehtml::uint_ptr  hFont,
litehtml::web_color  color,
const litehtml::position pos 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 129 of file GuiContainer.cpp.

◆ execute_script()

void Cogs::Core::GuiContainer::execute_script ( litehtml::document document,
const litehtml::element::ptr  el 
)
overridevirtual

Reimplemented from litehtml::document_container.

Definition at line 542 of file GuiContainer.cpp.

◆ get_client_rect()

void Cogs::Core::GuiContainer::get_client_rect ( litehtml::position client) const
overridevirtual

Implements litehtml::document_container.

Definition at line 519 of file GuiContainer.cpp.

◆ get_default_font_name()

const litehtml::tchar_t * Cogs::Core::GuiContainer::get_default_font_name ( ) const
overridevirtual

Implements litehtml::document_container.

Definition at line 156 of file GuiContainer.cpp.

◆ get_default_font_size()

int Cogs::Core::GuiContainer::get_default_font_size ( ) const
overridevirtual

Implements litehtml::document_container.

Definition at line 151 of file GuiContainer.cpp.

◆ get_image_size()

void Cogs::Core::GuiContainer::get_image_size ( const litehtml::tchar_t *  src,
const litehtml::tchar_t *  baseurl,
litehtml::size sz 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 181 of file GuiContainer.cpp.

◆ get_language()

void Cogs::Core::GuiContainer::get_language ( litehtml::tstring &  ,
litehtml::tstring &   
) const
inlineoverridevirtual

Implements litehtml::document_container.

Definition at line 70 of file GuiContainer.h.

◆ get_media_features()

void Cogs::Core::GuiContainer::get_media_features ( litehtml::media_features media) const
overridevirtual

Implements litehtml::document_container.

Definition at line 532 of file GuiContainer.cpp.

◆ import_css()

void Cogs::Core::GuiContainer::import_css ( litehtml::tstring &  text,
const litehtml::tstring &  url,
litehtml::tstring &  baseurl 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 495 of file GuiContainer.cpp.

◆ initialize()

void Cogs::Core::GuiContainer::initialize ( RenderTaskContext renderContext,
InspectorGuiRenderer guiRenderer 
)

Definition at line 583 of file GuiContainer.cpp.

◆ invalidate_layout()

void Cogs::Core::GuiContainer::invalidate_layout ( litehtml::document document)
overridevirtual

Implements litehtml::document_container.

Definition at line 564 of file GuiContainer.cpp.

◆ isInitialized()

bool Cogs::Core::GuiContainer::isInitialized ( ) const
inline

Definition at line 75 of file GuiContainer.h.

◆ isInvalidated()

bool Cogs::Core::GuiContainer::isInvalidated ( ) const
inline

Definition at line 80 of file GuiContainer.h.

◆ link()

void Cogs::Core::GuiContainer::link ( const std::shared_ptr< litehtml::document > &  ,
const litehtml::element::ptr &   
)
inlineoverridevirtual

Implements litehtml::document_container.

Definition at line 49 of file GuiContainer.h.

◆ load_image()

void Cogs::Core::GuiContainer::load_image ( const litehtml::tchar_t *  src,
const litehtml::tchar_t *  baseurl,
bool  redraw_on_ready 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 165 of file GuiContainer.cpp.

◆ on_anchor_click()

void Cogs::Core::GuiContainer::on_anchor_click ( const litehtml::tchar_t *  url,
const litehtml::element::ptr &  el 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 500 of file GuiContainer.cpp.

◆ on_click()

void Cogs::Core::GuiContainer::on_click ( const litehtml::element::ptr &  el)
overridevirtual

Implements litehtml::document_container.

Definition at line 490 of file GuiContainer.cpp.

◆ on_load()

void Cogs::Core::GuiContainer::on_load ( const std::shared_ptr< litehtml::document > &  document)
overridevirtual

Implements litehtml::document_container.

Definition at line 320 of file GuiContainer.cpp.

◆ on_mouse_enter()

void Cogs::Core::GuiContainer::on_mouse_enter ( const litehtml::element::ptr &  el)
overridevirtual

Implements litehtml::document_container.

Definition at line 475 of file GuiContainer.cpp.

◆ on_mouse_leave()

void Cogs::Core::GuiContainer::on_mouse_leave ( const litehtml::element::ptr &  el)
overridevirtual

Implements litehtml::document_container.

Definition at line 485 of file GuiContainer.cpp.

◆ on_mouse_move()

void Cogs::Core::GuiContainer::on_mouse_move ( const litehtml::element::ptr &  el,
int  x,
int  y 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 480 of file GuiContainer.cpp.

◆ popState()

void Cogs::Core::GuiContainer::popState ( )

Definition at line 600 of file GuiContainer.cpp.

◆ pt_to_px()

int Cogs::Core::GuiContainer::pt_to_px ( int  pt)
overridevirtual

Implements litehtml::document_container.

Definition at line 146 of file GuiContainer.cpp.

◆ pushState()

void Cogs::Core::GuiContainer::pushState ( ComponentModel::Entity entity,
glm::vec2  size 
)

Definition at line 590 of file GuiContainer.cpp.

◆ set_base_url()

void Cogs::Core::GuiContainer::set_base_url ( const litehtml::tchar_t *  )
inlineoverridevirtual

Implements litehtml::document_container.

Definition at line 48 of file GuiContainer.h.

◆ set_caption()

void Cogs::Core::GuiContainer::set_caption ( const litehtml::tchar_t *  )
inlineoverridevirtual

Implements litehtml::document_container.

Definition at line 47 of file GuiContainer.h.

◆ set_clip()

void Cogs::Core::GuiContainer::set_clip ( const litehtml::position ,
const litehtml::border_radiuses ,
bool  ,
bool   
)
inlineoverridevirtual

Implements litehtml::document_container.

Definition at line 62 of file GuiContainer.h.

◆ set_cursor()

void Cogs::Core::GuiContainer::set_cursor ( const litehtml::tchar_t *  )
inlineoverridevirtual

Implements litehtml::document_container.

Definition at line 58 of file GuiContainer.h.

◆ text_width()

int Cogs::Core::GuiContainer::text_width ( const litehtml::tchar_t *  text,
litehtml::uint_ptr  hFont 
)
overridevirtual

Implements litehtml::document_container.

Definition at line 118 of file GuiContainer.cpp.

◆ transform_text()

void Cogs::Core::GuiContainer::transform_text ( litehtml::tstring &  ,
litehtml::text_transform   
)
inlineoverridevirtual

Implements litehtml::document_container.

Definition at line 59 of file GuiContainer.h.

Member Data Documentation

◆ context

Context* Cogs::Core::GuiContainer::context
private

Definition at line 86 of file GuiContainer.h.

◆ entity

ComponentModel::Entity* Cogs::Core::GuiContainer::entity = nullptr
private

Definition at line 89 of file GuiContainer.h.

◆ guiTextures

std::unordered_map<size_t, Cogs::Core::TextureHandle> Cogs::Core::GuiContainer::guiTextures
private

Definition at line 94 of file GuiContainer.h.

◆ inspectorGuiRenderer

InspectorGuiRenderer* Cogs::Core::GuiContainer::inspectorGuiRenderer
private

Definition at line 87 of file GuiContainer.h.

◆ invalidated

bool Cogs::Core::GuiContainer::invalidated = false
private

Definition at line 92 of file GuiContainer.h.

◆ renderContext

RenderTaskContext* Cogs::Core::GuiContainer::renderContext
private

Definition at line 85 of file GuiContainer.h.

◆ scriptComponent

ComponentModel::ComponentHandle Cogs::Core::GuiContainer::scriptComponent
private

Definition at line 90 of file GuiContainer.h.

◆ size

glm::vec2 Cogs::Core::GuiContainer::size
private

Definition at line 91 of file GuiContainer.h.


The documentation for this struct was generated from the following files: