CtrlCore: InstallPanicBox in win32

git-svn-id: svn://ultimatepp.org/upp/trunk@5590 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2012-11-28 20:37:36 +00:00
parent d6929a12b2
commit 55deda9adc
3 changed files with 18 additions and 4 deletions

View file

@ -48,8 +48,6 @@ Size GetScreenSize();
typedef ImageDraw SystemImageDraw;
void StdDrawImage(SystemDraw& w, int x, int y, int cx, int cy, const Image& img, const Rect& src, Color color);
void SetSurface(Draw& w, const Rect& dest, const RGBA *pixels, Size srcsz, Point poff);
void SetSurface(Draw& w, int x, int y, int cx, int cy, const RGBA *pixels);

View file

@ -234,6 +234,11 @@ static void Win32PanicMessageBox(const char *title, const char *text)
#endif
}
void Ctrl::InstallPanicBox()
{
InstallPanicMessageBox(&Win32PanicMessageBox);
}
void Ctrl::InitWin32(HINSTANCE hInstance)
{
GuiLock __;

View file

@ -154,6 +154,15 @@ screen output in Ctrl`::Paint, [%-*@3 color] can be assigned special
value InvertColor() causing invertion of all pixels in target
area.&]
[s3;%% &]
[s4; &]
[s5;:Draw`:`:SysDrawImageOp`(int`,int`,const Image`&`,const Rect`&`,Color`): [@(0.0.255) v
irtual] [@(0.0.255) void]_[* SysDrawImageOp]([@(0.0.255) int]_[*@3 x],
[@(0.0.255) int]_[*@3 y], [@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_[*@3 img],
[@(0.0.255) const]_[_^Rect^ Rect][@(0.0.255) `&]_[*@3 src], [_^Color^ Color]_[*@3 color])&]
[s2;%% Low(er)`-level draw of Image, called by DrawImageOp. Draw
derived class can either override this method and depend on DrawImageOp
to do rescaling and printer banding or override DrawImageOp directly.&]
[s3;%% &]
[s4;%% &]
[s5;:Draw`:`:DrawImageOp`(int`,int`,int`,int`,const Image`&`,const Rect`&`,Color`): [@(0.0.255) v
irtual] [@(0.0.255) void]_[* DrawImageOp]([@(0.0.255) int]_[*@3 x], [@(0.0.255) int]_[*@3 y],
@ -164,7 +173,9 @@ irtual] [@(0.0.255) void]_[* DrawImageOp]([@(0.0.255) int]_[*@3 x], [@(0.0.255)
at [%-*@3 x], [%-*@3 y] rescaling it to [%-*@3 cx], [%-*@3 cy] (if they
are equal to original Image size, no rescaling is performed).
If [%-*@3 color] is not null, only alpha information of Image is
used and color pixels are painted using [%-*@3 color].&]
used and color pixels are painted using [%-*@3 color]. Default
implementation performs rescaling operation in software, including
banding support for printer, then calls SysDrawImageOp.&]
[s3;%% &]
[s4;%% &]
[s5;:Draw`:`:DrawDataOp`(int`,int`,int`,int`,const String`&`,const char`*`): [@(0.0.255) v
@ -767,4 +778,4 @@ default charset is used. Implemented using DrawTextOp.&]
[s2;%% This simple utility function computes sin(angle) and cos(angle),
where the full angle (2[%- π) ]is 3600.&]
[s3; &]
[s0; ]
[s0; ]]