Exemplo n.º 1
0
void window_magnifier::draw(const graphics_context& grx)
{
  switch (mode)
  {
    case 0: // Zoom mode
         
      grx.draw_frame(0,0,w(),h(), ft_bevel_out);
      grx.stretch_blit(get_sub_buffer(), (w()-3) / 4, (h()-3) / 4, (w()-3) / 2, (h()-3) / 2, 0+2, 0+2, w()-3, h()-3);
      break;
     

    case 1: // Reverse mode
     
      grx.draw_frame(0,0,w(),h(), ft_bevel_out);    
      reversed_blit(get_sub_buffer(), grx, 2, 2, 2+grx.get_ox(), 2+grx.get_oy(), w()-3, h()-3);    
      break;
     

    case 2: // Distort mode
     
      grx.draw_frame(0,0,w(),h(), ft_bevel_out);
      distort_blit(get_sub_buffer(), grx, 2, 2, 2+grx.get_ox(), 2+grx.get_oy(), w()-3, h()-3);
      break;
     
 
    case 3: // Plain mode
     
      grx.rect(0, 0, w(), h(), theme().black);    
      grx.blit(get_sub_buffer(), 1, 1, 1, 1, w()-1, h()-1);
      break;
     
    
    case 4: // Debug mode

      grx.rectfill(0, 0, w(), h(), RANDOM_COLOR());
      break;
  }
}
Exemplo n.º 2
0
void masked_image::draw(const graphics_context& grx)
{
  grx.blit(get_sub_buffer(), 0, 0, 0, 0, w()+1, h()+1);
}