The Battle for Wesnoth  1.19.5+dev
Public Member Functions | Private Attributes | List of all members
halo::manager Class Reference

#include <halo.hpp>

Public Member Functions

 manager ()
 
handle add (int x, int y, const std::string &image, const map_location &loc, halo::ORIENTATION orientation=NORMAL, bool infinite=true)
 Add a haloing effect using 'image centered on (x,y). More...
 
void set_location (const handle &h, int x, int y)
 Set the position of an existing haloing effect, according to its handle. More...
 
void remove (const handle &h)
 Remove the halo with the given handle. More...
 
void update ()
 Process animations, remove deleted halos, and invalidate screen regions now requiring redraw. More...
 
void render (const rect &r)
 Render halos in region. More...
 

Private Attributes

std::shared_ptr< halo_implimpl_
 

Detailed Description

Definition at line 39 of file halo.hpp.

Constructor & Destructor Documentation

◆ manager()

halo::manager::manager ( )

Definition at line 417 of file halo.cpp.

Member Function Documentation

◆ add()

handle halo::manager::add ( int  x,
int  y,
const std::string &  image,
const map_location loc,
halo::ORIENTATION  orientation = NORMAL,
bool  infinite = true 
)

Add a haloing effect using 'image centered on (x,y).

Returns
The handle to the halo object.
Return values
0is the invalid handle.

If the halo is attached to an item, it needs to be hidden if the shroud is active. (Note it will be shown with the fog active.) If it is not attached to an item, the location should be set to -1, -1

Definition at line 420 of file halo.cpp.

References impl_.

Referenced by unit_frame::redraw().

◆ remove()

void halo::manager::remove ( const handle h)

Remove the halo with the given handle.

Definition at line 434 of file halo.cpp.

References h, impl_, and halo::NO_HALO.

◆ render()

void halo::manager::render ( const rect r)

Render halos in region.

Definition at line 445 of file halo.cpp.

References impl_.

Referenced by display::expose().

◆ set_location()

void halo::manager::set_location ( const handle h,
int  x,
int  y 
)

Set the position of an existing haloing effect, according to its handle.

Definition at line 428 of file halo.cpp.

References h, and impl_.

◆ update()

void halo::manager::update ( )

Process animations, remove deleted halos, and invalidate screen regions now requiring redraw.

Definition at line 440 of file halo.cpp.

References impl_.

Referenced by display::invalidate_animations().

Member Data Documentation

◆ impl_

std::shared_ptr<halo_impl> halo::manager::impl_
private

Definition at line 70 of file halo.hpp.

Referenced by add(), remove(), render(), set_location(), and update().


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