LIBURANIA
GUI library (a wrapper of Win32 API) in C++
読み取り中…
検索中…
一致する文字列を見つけられません
公開型 | 公開メンバ関数 | 静的公開メンバ関数 | 限定公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
urania::PaintDevice クラス

#include <paintdev.h>

urania::PaintDevice の継承関係図
urania::PaintDevice 連携図

公開型

typedef void(* DestProc) (HDC, void *)
 

公開メンバ関数

 ~PaintDevice ()
 
void clear (const urania::Color &col)
 
void dotset (int x, int y, const urania::Color &col)
 
void line (int x1, int y1, int x2, int y2, const urania::Color &col)
 
void box (int x1, int y1, int x2, int y2, const urania::Color &col, bool f=false)
 
void ellipse (int x, int y, int a, int b, const urania::Color &col, bool f=false)
 
void circle (int x, int y, int r, const urania::Color &col, bool f=false)
 
eunomia::Point text (int x, int y, const std::wstring &str, const urania::Color &col)
 
eunomia::Point text (int x, int y, int w, const std::wstring &str, const urania::Color &col)
 
void changeFont (int size, const std::wstring &fn, bool ro, bool fx, bool bo, bool itl, bool ul, bool sk)
 
int width () const
 描畫領域の幅を取得する。
 
int height () const
 描畫領域の高さを取得する。
 
void blt (const urania::PaintMemDevice &src, int sx, int sy, int w, int h, int dx, int dy, const std::optional< eunomia::Rect > &cliprect=std::nullopt)
 轉送
 
void blt (urania::PaintMemDeviceIndexed &src, int sx, int sy, int w, int h, int dx, int dy, const std::optional< eunomia::Rect > &cliprect=std::nullopt)
 轉送
 
void stretchBlt (const urania::PaintMemDevice &src)
 轉送
 
void stretchBlt (urania::PaintMemDeviceIndexed &src)
 轉送
 
void blt (const urania::PaintMemDevice &src)
 轉送
 
void blt (urania::PaintMemDeviceIndexed &src)
 轉送
 

静的公開メンバ関数

static std::unique_ptr< PaintDevicecreate (HDC dc, DestProc dp, void *a, int w, int h)
 
static urania::Color getSysColor (int id)
 システムカラーの取得
 
static void setSysColor (int id, const urania::Color &col)
 システムカラーの設定
 

限定公開メンバ関数

 PaintDevice (HDC dc, DestProc dp, void *a, int w, int h)
 

限定公開変数類

HDC hdc_
 
int width_
 
int height_
 
HBRUSH obr_
 
HPEN opn_
 
HFONT oft_
 
int obm_
 
void * app_
 
DestProc dst_
 

詳解

Windowsデバイスコンテキストのラッパー

型定義メンバ詳解

◆ DestProc

typedef void(* urania::PaintDevice::DestProc) (HDC, void *)

構築子と解体子

◆ PaintDevice()

urania::PaintDevice::PaintDevice ( HDC dc,
DestProc dp,
void * a,
int w,
int h )
protected

◆ ~PaintDevice()

urania::PaintDevice::~PaintDevice ( )

関数詳解

◆ blt() [1/4]

void urania::PaintDevice::blt ( const urania::PaintMemDevice & src)

轉送

轉送元の全領域から自己の全領域に轉送する。 領域の大きさが異なる場合はアスペクト比を保存しつつ擴大縮小される。 轉送元と自己のアスペクト比が異なる場合、餘白が生じる。

引数
src轉送元

◆ blt() [2/4]

void urania::PaintDevice::blt ( const urania::PaintMemDevice & src,
int sx,
int sy,
int w,
int h,
int dx,
int dy,
const std::optional< eunomia::Rect > & cliprect = std::nullopt )

轉送

引数
src轉送元
sx轉送元左上X座標
sy轉送元左上Y座標
w轉送幅
h轉送高さ
dx左上X座標
dy左上Y座標
cliprect被轉送可能領域。std::nulloptの場合は畫像全體。

◆ blt() [3/4]

void urania::PaintDevice::blt ( urania::PaintMemDeviceIndexed & src)

轉送

轉送元の全領域から自己の全領域に轉送する。 領域の大きさが異なる場合はアスペクト比を保存しつつ擴大縮小される。 轉送元と自己のアスペクト比が異なる場合、餘白が生じる。

引数
src轉送元
呼び出し関係図:

◆ blt() [4/4]

void urania::PaintDevice::blt ( urania::PaintMemDeviceIndexed & src,
int sx,
int sy,
int w,
int h,
int dx,
int dy,
const std::optional< eunomia::Rect > & cliprect = std::nullopt )

轉送

引数
src轉送元
sx轉送元左上のX座標
sy轉送元左上のY座標
w轉送幅
h轉送高さ
dx左上X座標
dy左上Y座標
cliprect被轉送可能領域。std::nulloptの場合は畫像全體。
呼び出し関係図:

◆ box()

void urania::PaintDevice::box ( int x1,
int y1,
int x2,
int y2,
const urania::Color & col,
bool f = false )

長方形を描畫する。

引数
x1長方形の一の頂點のX座標
y1長方形の一の頂點のY座標
x2長方形の(x1, y1)の對角のX座標
y2長方形の(x1, y1)の對角のY座標
col描畫色
ftrueなら中を塗り潰し、falseなら枠線のみ描畫する。
呼び出し関係図:

◆ changeFont()

void urania::PaintDevice::changeFont ( int size,
const std::wstring & fn,
bool ro,
bool fx,
bool bo,
bool itl,
bool ul,
bool sk )

フォントを變更する。

引数
sizeフォントサイズ
fnフォント名。L""を指定すると、デフォルトを用ゐる。
rotrueのときはローマンタイプ。主にデフォルトの時に影響する。
fxtrueのときは等幅フォント、falseならプロポーショナルフォント。
botrueのときはボールド體
itltrueのときは斜體
ultrueのときは下線附
sktrueのときは打ち消し線附

◆ circle()

void urania::PaintDevice::circle ( int x,
int y,
int r,
const urania::Color & col,
bool f = false )
inline

圓を描畫する。

引数
x中心のX座標
y中心のY座標
r半徑
col描畫色
ftrueなら中を塗り潰し、falseなら圓弧のみ描畫する。
呼び出し関係図:

◆ clear()

void urania::PaintDevice::clear ( const urania::Color & col)

描画領域全體を塗り潰す。

引数
col塗り潰し色
呼び出し関係図:

◆ create()

std::unique_ptr< urania::PaintDevice > urania::PaintDevice::create ( HDC dc,
DestProc dp,
void * a,
int w,
int h )
static

オブジェクトを生成する。

引数
dcデバイスコンテキストハンドル
dpDC解放用コールバック。不要ならnullptr。
adpに渡すパラメタ
wデバイスの幅
hデバイスの高さ
戻り値
オブジェクトを保持するunique_ptr
被呼び出し関係図:

◆ dotset()

void urania::PaintDevice::dotset ( int x,
int y,
const urania::Color & col )

點を描畫する。

引数
x描畫位置(X座標)
y描畫位置(Y座標)
col描畫色
呼び出し関係図:

◆ ellipse()

void urania::PaintDevice::ellipse ( int x,
int y,
int a,
int b,
const urania::Color & col,
bool f = false )

楕圓を描畫する。

引数
x中心のX座標
y中心のY座標
aX半徑
bY半徑
col描畫色
ftrueなら中を塗り潰し、falseなら圓弧のみ描畫する。
被呼び出し関係図:

◆ getSysColor()

static urania::Color urania::PaintDevice::getSysColor ( int id)
inlinestatic

システムカラーの取得

引数
idシステムカラーID。<urania/decl.h>に定義する。
戻り値
設定されてゐる色

◆ height()

int urania::PaintDevice::height ( ) const
inline

描畫領域の高さを取得する。

◆ line()

void urania::PaintDevice::line ( int x1,
int y1,
int x2,
int y2,
const urania::Color & col )

線分を描畫する。

引数
x1線分の一方の端のX座標
y1線分の一方の端のY座標
x2線分のもう一方の端のX座標
y2線分のもう一方の端のY座標
col描畫色

◆ setSysColor()

void urania::PaintDevice::setSysColor ( int id,
const urania::Color & col )
static

システムカラーの設定

引数
idシステムカラーID。<urania/decl.h>に定義する。
col設定する色
呼び出し関係図:

◆ stretchBlt() [1/2]

void urania::PaintDevice::stretchBlt ( const urania::PaintMemDevice & src)

轉送

轉送元の全領域から自己の全領域に轉送する。 領域の大きさが異なる場合は擴大縮小される。

引数
src轉送元

◆ stretchBlt() [2/2]

void urania::PaintDevice::stretchBlt ( urania::PaintMemDeviceIndexed & src)

轉送

轉送元の全領域から自己の全領域に轉送する。 領域の大きさが異なる場合は擴大縮小される。

引数
src轉送元
呼び出し関係図:

◆ text() [1/2]

eunomia::Point urania::PaintDevice::text ( int x,
int y,
const std::wstring & str,
const urania::Color & col )

テキストを描畫する。

引数
x描畫長方形の左上角のX座標
y描畫長方形の左上角のY座標
str描畫する文字列
col描畫色
戻り値
描畫長方形の右下角の座標
呼び出し関係図:

◆ text() [2/2]

eunomia::Point urania::PaintDevice::text ( int x,
int y,
int w,
const std::wstring & str,
const urania::Color & col )

幅を指定してテキストを描畫する。

引数
x描畫長方形の左上角のX座標
y描畫長方形の左上角のY座標
w
str描畫する文字列
col描畫色
戻り値
描畫長方形の右下角の座標
呼び出し関係図:

◆ width()

int urania::PaintDevice::width ( ) const
inline

描畫領域の幅を取得する。

メンバ詳解

◆ app_

void* urania::PaintDevice::app_
protected

◆ dst_

DestProc urania::PaintDevice::dst_
protected

◆ hdc_

HDC urania::PaintDevice::hdc_
protected

◆ height_

int urania::PaintDevice::height_
protected

◆ obm_

int urania::PaintDevice::obm_
protected

◆ obr_

HBRUSH urania::PaintDevice::obr_
protected

◆ oft_

HFONT urania::PaintDevice::oft_
protected

◆ opn_

HPEN urania::PaintDevice::opn_
protected

◆ width_

int urania::PaintDevice::width_
protected

このクラス詳解は次のファイルから抽出されました: