Ignore:
Timestamp:
04/15/15 15:37:04 (10 years ago)
Author:
epyon
Message:
  • separation of the graphics code from the gui code
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gui/gui_environment.cc

    r351 r354  
    2222        */
    2323
    24 #include "nv/gfx/sliced_buffer.hh"
    25 #include "nv/gfx/texture_atlas.hh"
    26 
    27 nv::gui::environment::environment( window* w )
    28         : m_renderer( nullptr ), m_window( w )
    29 {
    30         m_area.dim( dimension( w->get_width(), w->get_height() ) );
    31         m_renderer = new renderer( w );
    32         m_screen   = create_element( handle(), m_area );
     24
     25nv::gui::environment::environment( renderer* r )
     26        : m_renderer( r )
     27{
     28        m_screen   = create_element( handle(), m_renderer->get_area() );
    3329}
    3430
     
    4743        if ( parent.is_nil() ) parent = m_screen;
    4844
    49         handle result = m_elements.create();
    50         element* e    = m_elements.get( result );
    51         rectangle ar  = r;
    52 
    53         if ( ar.ul.x < 0 ) { ar.ul.x += m_area.lr.x; ar.lr.x += m_area.lr.x; }
    54         if ( ar.ul.y < 0 ) { ar.ul.y += m_area.lr.y; ar.lr.y += m_area.lr.y; }
     45        handle result  = m_elements.create();
     46        element* e     = m_elements.get( result );
     47        rectangle ar   = r;
     48        rectangle full = m_renderer->get_area();
     49
     50        if ( ar.ul.x < 0 ) { ar.ul.x += full.lr.x; ar.lr.x += full.lr.x; }
     51        if ( ar.ul.y < 0 ) { ar.ul.y += full.lr.y; ar.lr.y += full.lr.y; }
    5552
    5653        e->m_child_count = 0;
Note: See TracChangeset for help on using the changeset viewer.