%% %% %CopyrightBegin% %% %% Copyright Ericsson AB 2008-2010. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in %% compliance with the License. You should have received a copy of the %% Erlang Public License along with this software. If not, it can be %% retrieved online at http://www.erlang.org/. %% %% Software distributed under the License is distributed on an "AS IS" %% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See %% the License for the specific language governing rights and limitations %% under the License. %% %% %CopyrightEnd% %% This file is generated DO NOT EDIT %% @doc See external documentation: wxDC. %% @type wxDC(). An object reference, The representation is internal %% and can be changed without notice. It can't be used for comparsion %% stored on disc or distributed for use on other nodes. -module(wxDC). -include("wxe.hrl"). -export([blit/5,blit/6,calcBoundingBox/3,clear/1,computeScaleAndOrigin/1,crossHair/2, destroyClippingRegion/1,deviceToLogicalX/2,deviceToLogicalXRel/2, deviceToLogicalY/2,deviceToLogicalYRel/2,drawArc/4,drawBitmap/3,drawBitmap/4, drawCheckMark/2,drawCircle/3,drawEllipse/2,drawEllipse/3,drawEllipticArc/5, drawIcon/3,drawLabel/3,drawLabel/4,drawLine/3,drawLines/2,drawLines/3, drawPoint/2,drawPolygon/2,drawPolygon/3,drawRectangle/2,drawRectangle/3, drawRotatedText/4,drawRoundedRectangle/3,drawRoundedRectangle/4, drawText/3,endDoc/1,endPage/1,floodFill/3,floodFill/4,getBackground/1, getBackgroundMode/1,getBrush/1,getCharHeight/1,getCharWidth/1,getClippingBox/2, getFont/1,getLayoutDirection/1,getLogicalFunction/1,getMapMode/1, getMultiLineTextExtent/2,getMultiLineTextExtent/3,getPPI/1,getPartialTextExtents/3, getPen/1,getPixel/3,getSize/1,getSizeMM/1,getTextBackground/1,getTextExtent/2, getTextExtent/3,getTextForeground/1,getUserScale/1,gradientFillConcentric/4, gradientFillConcentric/5,gradientFillLinear/4,gradientFillLinear/5, isOk/1,logicalToDeviceX/2,logicalToDeviceXRel/2,logicalToDeviceY/2, logicalToDeviceYRel/2,maxX/1,maxY/1,minX/1,minY/1,resetBoundingBox/1, setAxisOrientation/3,setBackground/2,setBackgroundMode/2,setBrush/2, setClippingRegion/2,setClippingRegion/3,setDeviceOrigin/3,setFont/2, setLayoutDirection/2,setLogicalFunction/2,setMapMode/2,setPalette/2, setPen/2,setTextBackground/2,setTextForeground/2,setUserScale/3,startDoc/2, startPage/1]). %% inherited exports -export([parent_class/1]). %% @hidden parent_class(_Class) -> erlang:error({badtype, ?MODULE}). %% @spec (This::wxDC(), DestPt::{X::integer(),Y::integer()}, Sz::{W::integer(),H::integer()}, Source::wxDC(), SrcPt::{X::integer(),Y::integer()}) -> bool() %% @equiv blit(This,DestPt,Sz,Source,SrcPt, []) blit(This,DestPt={DestPtX,DestPtY},Sz={SzW,SzH},Source,SrcPt={SrcPtX,SrcPtY}) when is_record(This, wx_ref),is_integer(DestPtX),is_integer(DestPtY),is_integer(SzW),is_integer(SzH),is_record(Source, wx_ref),is_integer(SrcPtX),is_integer(SrcPtY) -> blit(This,DestPt,Sz,Source,SrcPt, []). %% @spec (This::wxDC(), DestPt::{X::integer(),Y::integer()}, Sz::{W::integer(),H::integer()}, Source::wxDC(), SrcPt::{X::integer(),Y::integer()}, [Option]) -> bool() %% Option = {rop, integer()} | {useMask, bool()} | {srcPtMask, {X::integer(),Y::integer()}} %% @doc See external documentation. blit(#wx_ref{type=ThisT,ref=ThisRef},{DestPtX,DestPtY},{SzW,SzH},#wx_ref{type=SourceT,ref=SourceRef},{SrcPtX,SrcPtY}, Options) when is_integer(DestPtX),is_integer(DestPtY),is_integer(SzW),is_integer(SzH),is_integer(SrcPtX),is_integer(SrcPtY),is_list(Options) -> ?CLASS(ThisT,wxDC), ?CLASS(SourceT,wxDC), MOpts = fun({rop, Rop}, Acc) -> [<<1:32/?UI,Rop:32/?UI>>|Acc]; ({useMask, UseMask}, Acc) -> [<<2:32/?UI,(wxe_util:from_bool(UseMask)):32/?UI>>|Acc]; ({srcPtMask, {SrcPtMaskX,SrcPtMaskY}}, Acc) -> [<<3:32/?UI,SrcPtMaskX:32/?UI,SrcPtMaskY:32/?UI,0:32>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:call(?wxDC_Blit, <>). %% @spec (This::wxDC(), X::integer(), Y::integer()) -> ok %% @doc See external documentation. calcBoundingBox(#wx_ref{type=ThisT,ref=ThisRef},X,Y) when is_integer(X),is_integer(Y) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_CalcBoundingBox, <>). %% @spec (This::wxDC()) -> ok %% @doc See external documentation. clear(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_Clear, <>). %% @spec (This::wxDC()) -> ok %% @doc See external documentation. computeScaleAndOrigin(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_ComputeScaleAndOrigin, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}) -> ok %% @doc See external documentation. crossHair(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY}) when is_integer(PtX),is_integer(PtY) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_CrossHair, <>). %% @spec (This::wxDC()) -> ok %% @doc See external documentation. destroyClippingRegion(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DestroyClippingRegion, <>). %% @spec (This::wxDC(), X::integer()) -> integer() %% @doc See external documentation. deviceToLogicalX(#wx_ref{type=ThisT,ref=ThisRef},X) when is_integer(X) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_DeviceToLogicalX, <>). %% @spec (This::wxDC(), X::integer()) -> integer() %% @doc See external documentation. deviceToLogicalXRel(#wx_ref{type=ThisT,ref=ThisRef},X) when is_integer(X) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_DeviceToLogicalXRel, <>). %% @spec (This::wxDC(), Y::integer()) -> integer() %% @doc See external documentation. deviceToLogicalY(#wx_ref{type=ThisT,ref=ThisRef},Y) when is_integer(Y) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_DeviceToLogicalY, <>). %% @spec (This::wxDC(), Y::integer()) -> integer() %% @doc See external documentation. deviceToLogicalYRel(#wx_ref{type=ThisT,ref=ThisRef},Y) when is_integer(Y) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_DeviceToLogicalYRel, <>). %% @spec (This::wxDC(), Pt1::{X::integer(),Y::integer()}, Pt2::{X::integer(),Y::integer()}, Centre::{X::integer(),Y::integer()}) -> ok %% @doc See external documentation. drawArc(#wx_ref{type=ThisT,ref=ThisRef},{Pt1X,Pt1Y},{Pt2X,Pt2Y},{CentreX,CentreY}) when is_integer(Pt1X),is_integer(Pt1Y),is_integer(Pt2X),is_integer(Pt2Y),is_integer(CentreX),is_integer(CentreY) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawArc, <>). %% @spec (This::wxDC(), Bmp::wxBitmap:wxBitmap(), Pt::{X::integer(),Y::integer()}) -> ok %% @equiv drawBitmap(This,Bmp,Pt, []) drawBitmap(This,Bmp,Pt={PtX,PtY}) when is_record(This, wx_ref),is_record(Bmp, wx_ref),is_integer(PtX),is_integer(PtY) -> drawBitmap(This,Bmp,Pt, []). %% @spec (This::wxDC(), Bmp::wxBitmap:wxBitmap(), Pt::{X::integer(),Y::integer()}, [Option]) -> ok %% Option = {useMask, bool()} %% @doc See external documentation. drawBitmap(#wx_ref{type=ThisT,ref=ThisRef},#wx_ref{type=BmpT,ref=BmpRef},{PtX,PtY}, Options) when is_integer(PtX),is_integer(PtY),is_list(Options) -> ?CLASS(ThisT,wxDC), ?CLASS(BmpT,wxBitmap), MOpts = fun({useMask, UseMask}, Acc) -> [<<1:32/?UI,(wxe_util:from_bool(UseMask)):32/?UI>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:cast(?wxDC_DrawBitmap, <>). %% @spec (This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}) -> ok %% @doc See external documentation. drawCheckMark(#wx_ref{type=ThisT,ref=ThisRef},{RectX,RectY,RectW,RectH}) when is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawCheckMark, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Radius::integer()) -> ok %% @doc See external documentation. drawCircle(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY},Radius) when is_integer(PtX),is_integer(PtY),is_integer(Radius) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawCircle, <>). %% @spec (This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}) -> ok %% @doc See external documentation. drawEllipse(#wx_ref{type=ThisT,ref=ThisRef},{RectX,RectY,RectW,RectH}) when is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawEllipse_1, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Sz::{W::integer(),H::integer()}) -> ok %% @doc See external documentation. drawEllipse(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY},{SzW,SzH}) when is_integer(PtX),is_integer(PtY),is_integer(SzW),is_integer(SzH) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawEllipse_2, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Sz::{W::integer(),H::integer()}, Sa::float(), Ea::float()) -> ok %% @doc See external documentation. drawEllipticArc(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY},{SzW,SzH},Sa,Ea) when is_integer(PtX),is_integer(PtY),is_integer(SzW),is_integer(SzH),is_float(Sa),is_float(Ea) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawEllipticArc, <>). %% @spec (This::wxDC(), Icon::wxIcon:wxIcon(), Pt::{X::integer(),Y::integer()}) -> ok %% @doc See external documentation. drawIcon(#wx_ref{type=ThisT,ref=ThisRef},#wx_ref{type=IconT,ref=IconRef},{PtX,PtY}) when is_integer(PtX),is_integer(PtY) -> ?CLASS(ThisT,wxDC), ?CLASS(IconT,wxIcon), wxe_util:cast(?wxDC_DrawIcon, <>). %% @spec (This::wxDC(), Text::string(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}) -> ok %% @equiv drawLabel(This,Text,Rect, []) drawLabel(This,Text,Rect={RectX,RectY,RectW,RectH}) when is_record(This, wx_ref),is_list(Text),is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH) -> drawLabel(This,Text,Rect, []). %% @spec (This::wxDC(), Text::string(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}, [Option]) -> ok %% Option = {alignment, integer()} | {indexAccel, integer()} %% @doc See external documentation. drawLabel(#wx_ref{type=ThisT,ref=ThisRef},Text,{RectX,RectY,RectW,RectH}, Options) when is_list(Text),is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH),is_list(Options) -> ?CLASS(ThisT,wxDC), Text_UC = unicode:characters_to_binary([Text,0]), MOpts = fun({alignment, Alignment}, Acc) -> [<<1:32/?UI,Alignment:32/?UI>>|Acc]; ({indexAccel, IndexAccel}, Acc) -> [<<2:32/?UI,IndexAccel:32/?UI>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:cast(?wxDC_DrawLabel, <>). %% @spec (This::wxDC(), Pt1::{X::integer(),Y::integer()}, Pt2::{X::integer(),Y::integer()}) -> ok %% @doc See external documentation. drawLine(#wx_ref{type=ThisT,ref=ThisRef},{Pt1X,Pt1Y},{Pt2X,Pt2Y}) when is_integer(Pt1X),is_integer(Pt1Y),is_integer(Pt2X),is_integer(Pt2Y) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawLine, <>). %% @spec (This::wxDC(), Points::[{X::integer(),Y::integer()}]) -> ok %% @equiv drawLines(This,Points, []) drawLines(This,Points) when is_record(This, wx_ref),is_list(Points) -> drawLines(This,Points, []). %% @spec (This::wxDC(), Points::[{X::integer(),Y::integer()}], [Option]) -> ok %% Option = {xoffset, integer()} | {yoffset, integer()} %% @doc See external documentation. drawLines(#wx_ref{type=ThisT,ref=ThisRef},Points, Options) when is_list(Points),is_list(Options) -> ?CLASS(ThisT,wxDC), MOpts = fun({xoffset, Xoffset}, Acc) -> [<<1:32/?UI,Xoffset:32/?UI>>|Acc]; ({yoffset, Yoffset}, Acc) -> [<<2:32/?UI,Yoffset:32/?UI>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:cast(?wxDC_DrawLines, <> || {X,Y} <- Points>>)/binary, BinOpt/binary>>). %% @spec (This::wxDC(), Points::[{X::integer(),Y::integer()}]) -> ok %% @equiv drawPolygon(This,Points, []) drawPolygon(This,Points) when is_record(This, wx_ref),is_list(Points) -> drawPolygon(This,Points, []). %% @spec (This::wxDC(), Points::[{X::integer(),Y::integer()}], [Option]) -> ok %% Option = {xoffset, integer()} | {yoffset, integer()} | {fillStyle, integer()} %% @doc See external documentation. drawPolygon(#wx_ref{type=ThisT,ref=ThisRef},Points, Options) when is_list(Points),is_list(Options) -> ?CLASS(ThisT,wxDC), MOpts = fun({xoffset, Xoffset}, Acc) -> [<<1:32/?UI,Xoffset:32/?UI>>|Acc]; ({yoffset, Yoffset}, Acc) -> [<<2:32/?UI,Yoffset:32/?UI>>|Acc]; ({fillStyle, FillStyle}, Acc) -> [<<3:32/?UI,FillStyle:32/?UI>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:cast(?wxDC_DrawPolygon, <> || {X,Y} <- Points>>)/binary, BinOpt/binary>>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}) -> ok %% @doc See external documentation. drawPoint(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY}) when is_integer(PtX),is_integer(PtY) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawPoint, <>). %% @spec (This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}) -> ok %% @doc See external documentation. drawRectangle(#wx_ref{type=ThisT,ref=ThisRef},{RectX,RectY,RectW,RectH}) when is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawRectangle_1, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Sz::{W::integer(),H::integer()}) -> ok %% @doc See external documentation. drawRectangle(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY},{SzW,SzH}) when is_integer(PtX),is_integer(PtY),is_integer(SzW),is_integer(SzH) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawRectangle_2, <>). %% @spec (This::wxDC(), Text::string(), Pt::{X::integer(),Y::integer()}, Angle::float()) -> ok %% @doc See external documentation. drawRotatedText(#wx_ref{type=ThisT,ref=ThisRef},Text,{PtX,PtY},Angle) when is_list(Text),is_integer(PtX),is_integer(PtY),is_float(Angle) -> ?CLASS(ThisT,wxDC), Text_UC = unicode:characters_to_binary([Text,0]), wxe_util:cast(?wxDC_DrawRotatedText, <>). %% @spec (This::wxDC(), R::{X::integer(),Y::integer(),W::integer(),H::integer()}, Radius::float()) -> ok %% @doc See external documentation. drawRoundedRectangle(#wx_ref{type=ThisT,ref=ThisRef},{RX,RY,RW,RH},Radius) when is_integer(RX),is_integer(RY),is_integer(RW),is_integer(RH),is_float(Radius) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawRoundedRectangle_2, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Sz::{W::integer(),H::integer()}, Radius::float()) -> ok %% @doc See external documentation. drawRoundedRectangle(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY},{SzW,SzH},Radius) when is_integer(PtX),is_integer(PtY),is_integer(SzW),is_integer(SzH),is_float(Radius) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_DrawRoundedRectangle_3, <>). %% @spec (This::wxDC(), Text::string(), Pt::{X::integer(),Y::integer()}) -> ok %% @doc See external documentation. drawText(#wx_ref{type=ThisT,ref=ThisRef},Text,{PtX,PtY}) when is_list(Text),is_integer(PtX),is_integer(PtY) -> ?CLASS(ThisT,wxDC), Text_UC = unicode:characters_to_binary([Text,0]), wxe_util:cast(?wxDC_DrawText, <>). %% @spec (This::wxDC()) -> ok %% @doc See external documentation. endDoc(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_EndDoc, <>). %% @spec (This::wxDC()) -> ok %% @doc See external documentation. endPage(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_EndPage, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Col::wx:colour()) -> bool() %% @equiv floodFill(This,Pt,Col, []) floodFill(This,Pt={PtX,PtY},Col) when is_record(This, wx_ref),is_integer(PtX),is_integer(PtY),tuple_size(Col) =:= 3; tuple_size(Col) =:= 4 -> floodFill(This,Pt,Col, []). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Col::wx:colour(), [Option]) -> bool() %% Option = {style, integer()} %% @doc See external documentation. floodFill(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY},Col, Options) when is_integer(PtX),is_integer(PtY),tuple_size(Col) =:= 3; tuple_size(Col) =:= 4,is_list(Options) -> ?CLASS(ThisT,wxDC), MOpts = fun({style, Style}, Acc) -> [<<1:32/?UI,Style:32/?UI>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:call(?wxDC_FloodFill, <>). %% @spec (This::wxDC()) -> wxBrush:wxBrush() %% @doc See external documentation. getBackground(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetBackground, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. getBackgroundMode(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetBackgroundMode, <>). %% @spec (This::wxDC()) -> wxBrush:wxBrush() %% @doc See external documentation. getBrush(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetBrush, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. getCharHeight(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetCharHeight, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. getCharWidth(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetCharWidth, <>). %% @spec (This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}) -> ok %% @doc See external documentation. getClippingBox(#wx_ref{type=ThisT,ref=ThisRef},{RectX,RectY,RectW,RectH}) when is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_GetClippingBox, <>). %% @spec (This::wxDC()) -> wxFont:wxFont() %% @doc See external documentation. getFont(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetFont, <>). %% @spec (This::wxDC()) -> WxLayoutDirection %% WxLayoutDirection = integer() %% @doc See external documentation. %%
WxLayoutDirection is one of ?wxLayout_Default | ?wxLayout_LeftToRight | ?wxLayout_RightToLeft getLayoutDirection(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetLayoutDirection, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. getLogicalFunction(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetLogicalFunction, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. getMapMode(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetMapMode, <>). %% @spec (This::wxDC(), String::string()) -> {W::integer(),H::integer()} %% @doc See external documentation. getMultiLineTextExtent(#wx_ref{type=ThisT,ref=ThisRef},String) when is_list(String) -> ?CLASS(ThisT,wxDC), String_UC = unicode:characters_to_binary([String,0]), wxe_util:call(?wxDC_GetMultiLineTextExtent_1, <>). %% @spec (This::wxDC(), String::string(), [Option]) -> {Width::integer(),Height::integer(),HeightLine::integer()} %% Option = {font, wxFont:wxFont()} %% @doc See external documentation. getMultiLineTextExtent(#wx_ref{type=ThisT,ref=ThisRef},String, Options) when is_list(String),is_list(Options) -> ?CLASS(ThisT,wxDC), String_UC = unicode:characters_to_binary([String,0]), MOpts = fun({font, #wx_ref{type=FontT,ref=FontRef}}, Acc) -> ?CLASS(FontT,wxFont),[<<1:32/?UI,FontRef:32/?UI>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:call(?wxDC_GetMultiLineTextExtent_4, <>). %% @spec (This::wxDC(), Text::string(), Widths::[integer()]) -> bool() %% @doc See external documentation. getPartialTextExtents(#wx_ref{type=ThisT,ref=ThisRef},Text,Widths) when is_list(Text),is_list(Widths) -> ?CLASS(ThisT,wxDC), Text_UC = unicode:characters_to_binary([Text,0]), wxe_util:call(?wxDC_GetPartialTextExtents, <> || C <- Widths>>)/binary, 0:(((1+length(Widths)) rem 2)*32)>>). %% @spec (This::wxDC()) -> wxPen:wxPen() %% @doc See external documentation. getPen(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetPen, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Col::wx:colour()) -> bool() %% @doc See external documentation. getPixel(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY},Col) when is_integer(PtX),is_integer(PtY),tuple_size(Col) =:= 3; tuple_size(Col) =:= 4 -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetPixel, <>). %% @spec (This::wxDC()) -> {W::integer(),H::integer()} %% @doc See external documentation. getPPI(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetPPI, <>). %% @spec (This::wxDC()) -> {W::integer(),H::integer()} %% @doc See external documentation. getSize(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetSize, <>). %% @spec (This::wxDC()) -> {W::integer(),H::integer()} %% @doc See external documentation. getSizeMM(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetSizeMM, <>). %% @spec (This::wxDC()) -> wx:colour() %% @doc See external documentation. getTextBackground(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetTextBackground, <>). %% @spec (This::wxDC(), String::string()) -> {W::integer(),H::integer()} %% @doc See external documentation. getTextExtent(#wx_ref{type=ThisT,ref=ThisRef},String) when is_list(String) -> ?CLASS(ThisT,wxDC), String_UC = unicode:characters_to_binary([String,0]), wxe_util:call(?wxDC_GetTextExtent_1, <>). %% @spec (This::wxDC(), String::string(), [Option]) -> {X::integer(),Y::integer(),Descent::integer(),ExternalLeading::integer()} %% Option = {theFont, wxFont:wxFont()} %% @doc See external documentation. getTextExtent(#wx_ref{type=ThisT,ref=ThisRef},String, Options) when is_list(String),is_list(Options) -> ?CLASS(ThisT,wxDC), String_UC = unicode:characters_to_binary([String,0]), MOpts = fun({theFont, #wx_ref{type=TheFontT,ref=TheFontRef}}, Acc) -> ?CLASS(TheFontT,wxFont),[<<1:32/?UI,TheFontRef:32/?UI>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:call(?wxDC_GetTextExtent_4, <>). %% @spec (This::wxDC()) -> wx:colour() %% @doc See external documentation. getTextForeground(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetTextForeground, <>). %% @spec (This::wxDC()) -> {X::float(),Y::float()} %% @doc See external documentation. getUserScale(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_GetUserScale, <>). %% @spec (This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}, InitialColour::wx:colour(), DestColour::wx:colour()) -> ok %% @doc See external documentation. gradientFillConcentric(#wx_ref{type=ThisT,ref=ThisRef},{RectX,RectY,RectW,RectH},InitialColour,DestColour) when is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH),tuple_size(InitialColour) =:= 3; tuple_size(InitialColour) =:= 4,tuple_size(DestColour) =:= 3; tuple_size(DestColour) =:= 4 -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_GradientFillConcentric_3, <>). %% @spec (This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}, InitialColour::wx:colour(), DestColour::wx:colour(), CircleCenter::{X::integer(),Y::integer()}) -> ok %% @doc See external documentation. gradientFillConcentric(#wx_ref{type=ThisT,ref=ThisRef},{RectX,RectY,RectW,RectH},InitialColour,DestColour,{CircleCenterX,CircleCenterY}) when is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH),tuple_size(InitialColour) =:= 3; tuple_size(InitialColour) =:= 4,tuple_size(DestColour) =:= 3; tuple_size(DestColour) =:= 4,is_integer(CircleCenterX),is_integer(CircleCenterY) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_GradientFillConcentric_4, <>). %% @spec (This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}, InitialColour::wx:colour(), DestColour::wx:colour()) -> ok %% @equiv gradientFillLinear(This,Rect,InitialColour,DestColour, []) gradientFillLinear(This,Rect={RectX,RectY,RectW,RectH},InitialColour,DestColour) when is_record(This, wx_ref),is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH),tuple_size(InitialColour) =:= 3; tuple_size(InitialColour) =:= 4,tuple_size(DestColour) =:= 3; tuple_size(DestColour) =:= 4 -> gradientFillLinear(This,Rect,InitialColour,DestColour, []). %% @spec (This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}, InitialColour::wx:colour(), DestColour::wx:colour(), [Option]) -> ok %% Option = {nDirection, WxDirection} %% WxDirection = integer() %% @doc See external documentation. %%
WxDirection is one of ?wxLEFT | ?wxRIGHT | ?wxUP | ?wxDOWN | ?wxTOP | ?wxBOTTOM | ?wxNORTH | ?wxSOUTH | ?wxWEST | ?wxEAST | ?wxALL gradientFillLinear(#wx_ref{type=ThisT,ref=ThisRef},{RectX,RectY,RectW,RectH},InitialColour,DestColour, Options) when is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH),tuple_size(InitialColour) =:= 3; tuple_size(InitialColour) =:= 4,tuple_size(DestColour) =:= 3; tuple_size(DestColour) =:= 4,is_list(Options) -> ?CLASS(ThisT,wxDC), MOpts = fun({nDirection, NDirection}, Acc) -> [<<1:32/?UI,NDirection:32/?UI>>|Acc]; (BadOpt, _) -> erlang:error({badoption, BadOpt}) end, BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)), wxe_util:cast(?wxDC_GradientFillLinear, <>). %% @spec (This::wxDC(), X::integer()) -> integer() %% @doc See external documentation. logicalToDeviceX(#wx_ref{type=ThisT,ref=ThisRef},X) when is_integer(X) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_LogicalToDeviceX, <>). %% @spec (This::wxDC(), X::integer()) -> integer() %% @doc See external documentation. logicalToDeviceXRel(#wx_ref{type=ThisT,ref=ThisRef},X) when is_integer(X) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_LogicalToDeviceXRel, <>). %% @spec (This::wxDC(), Y::integer()) -> integer() %% @doc See external documentation. logicalToDeviceY(#wx_ref{type=ThisT,ref=ThisRef},Y) when is_integer(Y) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_LogicalToDeviceY, <>). %% @spec (This::wxDC(), Y::integer()) -> integer() %% @doc See external documentation. logicalToDeviceYRel(#wx_ref{type=ThisT,ref=ThisRef},Y) when is_integer(Y) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_LogicalToDeviceYRel, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. maxX(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_MaxX, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. maxY(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_MaxY, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. minX(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_MinX, <>). %% @spec (This::wxDC()) -> integer() %% @doc See external documentation. minY(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_MinY, <>). %% @spec (This::wxDC()) -> bool() %% @doc See external documentation. isOk(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:call(?wxDC_IsOk, <>). %% @spec (This::wxDC()) -> ok %% @doc See external documentation. resetBoundingBox(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_ResetBoundingBox, <>). %% @spec (This::wxDC(), XLeftRight::bool(), YBottomUp::bool()) -> ok %% @doc See external documentation. setAxisOrientation(#wx_ref{type=ThisT,ref=ThisRef},XLeftRight,YBottomUp) when is_boolean(XLeftRight),is_boolean(YBottomUp) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetAxisOrientation, <>). %% @spec (This::wxDC(), Brush::wxBrush:wxBrush()) -> ok %% @doc See external documentation. setBackground(#wx_ref{type=ThisT,ref=ThisRef},#wx_ref{type=BrushT,ref=BrushRef}) -> ?CLASS(ThisT,wxDC), ?CLASS(BrushT,wxBrush), wxe_util:cast(?wxDC_SetBackground, <>). %% @spec (This::wxDC(), Mode::integer()) -> ok %% @doc See external documentation. setBackgroundMode(#wx_ref{type=ThisT,ref=ThisRef},Mode) when is_integer(Mode) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetBackgroundMode, <>). %% @spec (This::wxDC(), Brush::wxBrush:wxBrush()) -> ok %% @doc See external documentation. setBrush(#wx_ref{type=ThisT,ref=ThisRef},#wx_ref{type=BrushT,ref=BrushRef}) -> ?CLASS(ThisT,wxDC), ?CLASS(BrushT,wxBrush), wxe_util:cast(?wxDC_SetBrush, <>). %% @spec (This::wxDC(),X::term()) -> ok %% @doc See external documentation. %%
Alternatives: %%

%% setClippingRegion(This::wxDC(), Region::wxRegion:wxRegion()) -> ok %%

%%

%% setClippingRegion(This::wxDC(), Rect::{X::integer(),Y::integer(),W::integer(),H::integer()}) -> ok %%

setClippingRegion(#wx_ref{type=ThisT,ref=ThisRef},#wx_ref{type=RegionT,ref=RegionRef}) -> ?CLASS(ThisT,wxDC), ?CLASS(RegionT,wxRegion), wxe_util:cast(?wxDC_SetClippingRegion_1_0, <>); setClippingRegion(#wx_ref{type=ThisT,ref=ThisRef},{RectX,RectY,RectW,RectH}) when is_integer(RectX),is_integer(RectY),is_integer(RectW),is_integer(RectH) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetClippingRegion_1_1, <>). %% @spec (This::wxDC(), Pt::{X::integer(),Y::integer()}, Sz::{W::integer(),H::integer()}) -> ok %% @doc See external documentation. setClippingRegion(#wx_ref{type=ThisT,ref=ThisRef},{PtX,PtY},{SzW,SzH}) when is_integer(PtX),is_integer(PtY),is_integer(SzW),is_integer(SzH) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetClippingRegion_2, <>). %% @spec (This::wxDC(), X::integer(), Y::integer()) -> ok %% @doc See external documentation. setDeviceOrigin(#wx_ref{type=ThisT,ref=ThisRef},X,Y) when is_integer(X),is_integer(Y) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetDeviceOrigin, <>). %% @spec (This::wxDC(), Font::wxFont:wxFont()) -> ok %% @doc See external documentation. setFont(#wx_ref{type=ThisT,ref=ThisRef},#wx_ref{type=FontT,ref=FontRef}) -> ?CLASS(ThisT,wxDC), ?CLASS(FontT,wxFont), wxe_util:cast(?wxDC_SetFont, <>). %% @spec (This::wxDC(), Dir::WxLayoutDirection) -> ok %% WxLayoutDirection = integer() %% @doc See external documentation. %%
WxLayoutDirection is one of ?wxLayout_Default | ?wxLayout_LeftToRight | ?wxLayout_RightToLeft setLayoutDirection(#wx_ref{type=ThisT,ref=ThisRef},Dir) when is_integer(Dir) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetLayoutDirection, <>). %% @spec (This::wxDC(), Function::integer()) -> ok %% @doc See external documentation. setLogicalFunction(#wx_ref{type=ThisT,ref=ThisRef},Function) when is_integer(Function) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetLogicalFunction, <>). %% @spec (This::wxDC(), Mode::integer()) -> ok %% @doc See external documentation. setMapMode(#wx_ref{type=ThisT,ref=ThisRef},Mode) when is_integer(Mode) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetMapMode, <>). %% @spec (This::wxDC(), Palette::wxPalette:wxPalette()) -> ok %% @doc See external documentation. setPalette(#wx_ref{type=ThisT,ref=ThisRef},#wx_ref{type=PaletteT,ref=PaletteRef}) -> ?CLASS(ThisT,wxDC), ?CLASS(PaletteT,wxPalette), wxe_util:cast(?wxDC_SetPalette, <>). %% @spec (This::wxDC(), Pen::wxPen:wxPen()) -> ok %% @doc See external documentation. setPen(#wx_ref{type=ThisT,ref=ThisRef},#wx_ref{type=PenT,ref=PenRef}) -> ?CLASS(ThisT,wxDC), ?CLASS(PenT,wxPen), wxe_util:cast(?wxDC_SetPen, <>). %% @spec (This::wxDC(), Colour::wx:colour()) -> ok %% @doc See external documentation. setTextBackground(#wx_ref{type=ThisT,ref=ThisRef},Colour) when tuple_size(Colour) =:= 3; tuple_size(Colour) =:= 4 -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetTextBackground, <>). %% @spec (This::wxDC(), Colour::wx:colour()) -> ok %% @doc See external documentation. setTextForeground(#wx_ref{type=ThisT,ref=ThisRef},Colour) when tuple_size(Colour) =:= 3; tuple_size(Colour) =:= 4 -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetTextForeground, <>). %% @spec (This::wxDC(), X::float(), Y::float()) -> ok %% @doc See external documentation. setUserScale(#wx_ref{type=ThisT,ref=ThisRef},X,Y) when is_float(X),is_float(Y) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_SetUserScale, <>). %% @spec (This::wxDC(), Message::string()) -> bool() %% @doc See external documentation. startDoc(#wx_ref{type=ThisT,ref=ThisRef},Message) when is_list(Message) -> ?CLASS(ThisT,wxDC), Message_UC = unicode:characters_to_binary([Message,0]), wxe_util:call(?wxDC_StartDoc, <>). %% @spec (This::wxDC()) -> ok %% @doc See external documentation. startPage(#wx_ref{type=ThisT,ref=ThisRef}) -> ?CLASS(ThisT,wxDC), wxe_util:cast(?wxDC_StartPage, <>).