// Common, group WinSystem
// Copyright Alexander Liss
#ifndef __AREA_H__
#define __AREA_H__
#include "win0.h"
// window size in pixels
struct AreaSize
{
int width,height;
AreaSize():width(0),height(0){}
AreaSize(int Width,int Height):width(Width),height(Height){}
};
// window area
// usually relative origin
struct Area:public AreaSize
{
int left,top;
Area():left(0),top(0){}
Area(int Left,int Top,int Width,int Height):
AreaSize(Width,Height),left(Left),top(Top){}
Area(const RECT& z){set(z);}
int set(const RECT& z);
RECT get_rect()const;
int set_left_top(const POINT& z)
{left=z.x;top=z.y;return 0;}
POINT get_left_top()const
{POINT p;p.x=left;p.y=top;return p;}
int set(AreaSize& z)
{width=z.width;height=z.height;return 0;}
AreaSize get_size()
{AreaSize s;s.width=width;s.height=height;return s;}
};
// system metrics
namespace SystemMetrics
{
AreaSize icon_size();
AreaSize small_icon_size();
AreaSize cursor_size();
AreaSize full_screen_size();
}
#endif