Fixed RichText zoom problem of tables (seen as bad tables in help window)

git-svn-id: svn://ultimatepp.org/upp/trunk@440 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2008-09-13 09:30:58 +00:00
parent e9023bc4de
commit 25bc4abd49
2 changed files with 322 additions and 16 deletions

View file

@ -1,16 +1,317 @@
TITLE("Image and ImageBuffer")
COMPRESSED
120,156,229,27,11,111,219,54,243,175,240,195,182,194,201,28,127,122,249,17,123,43,150,62,208,5,93,211,124,77,186,97,8,226,90,145,233,152,168,44,106,162,28,55,29,154,223,190,59,82,111,203,178,228,100,93,134,47,45,98,69,36,143,247,230,241,238,124,97,144,111,191,213,218,218,55,218,150,159,225,11,58,179,151,110,120,121,193,44,107,48,178,141,238,232,227,235,183,135,163,253,159,90,61,107,15,161,232,0,197,236,235,230,160,107,234,150,209,131,95,186,169,27,93,195,180,244,129,113,104,13,76,115,160,13,29,215,22,226,242,194,53,6,131,17,46,50,218,198,55,70,191,107,232,125,107,96,13,116,179,63,48,96,173,161,105,134,214,55,186,186,101,14,140,238,112,74,133,115,121,97,15,204,209,254,187,30,44,50,113,39,0,174,233,61,195,234,91,134,102,106,134,5,91,233,131,129,165,247,187,3,243,176,215,27,58,182,31,50,238,69,123,49,93,55,244,209,149,222,31,1,206,119,119,119,29,221,210,20,6,22,0,211,53,11,80,213,225,157,102,25,125,189,123,168,29,
118,7,250,64,51,1,120,183,175,117,135,190,29,216,139,205,164,119,183,146,222,215,134,44,164,0,98,255,123,93,239,195,146,94,187,247,141,110,245,129,208,129,105,117,7,125,13,54,55,12,195,52,13,221,52,14,15,141,110,175,219,31,206,169,61,165,193,229,197,159,31,190,124,247,242,228,224,253,25,185,16,230,136,28,47,236,107,74,108,111,170,158,158,45,103,51,26,60,185,188,16,250,232,245,112,2,255,228,107,124,144,236,30,146,139,239,52,237,64,211,126,106,105,29,173,99,116,187,123,36,146,131,122,79,62,196,79,63,105,10,100,58,50,76,199,210,213,254,242,202,101,206,250,242,49,238,121,36,4,187,246,126,181,221,37,61,191,245,233,9,31,147,181,87,201,210,31,54,111,221,38,201,144,73,244,174,86,50,32,247,123,195,111,168,125,229,210,49,137,159,82,232,27,129,63,253,240,244,195,37,178,204,136,217,25,80,63,160,130,122,161,0,206,18,182,88,44,67,132,5,79,56,122,131,184,119,162,169,14,76,184,162,100,202,2,234,132,238,45,241,109,230,133,116,74,66,
78,94,4,246,170,67,206,57,113,2,106,135,148,240,128,56,115,219,131,69,114,105,155,44,5,37,23,227,68,72,74,118,227,172,32,47,59,57,188,230,182,32,46,95,77,14,28,46,66,226,112,79,132,182,23,146,144,45,0,3,74,125,120,229,223,2,102,33,97,130,44,34,14,72,229,120,199,156,249,228,64,114,29,38,45,124,59,100,56,20,130,4,226,45,222,79,190,159,124,79,232,39,31,8,17,196,103,159,168,43,144,12,160,142,121,4,24,178,0,147,103,190,203,128,58,219,245,231,54,153,241,96,97,135,114,189,54,34,248,209,45,42,29,247,105,96,135,60,152,220,77,90,147,61,137,241,48,163,60,177,8,228,64,170,92,96,74,5,69,122,247,234,217,209,88,13,224,99,126,234,100,63,171,57,233,150,249,89,173,189,100,86,180,159,194,120,29,157,12,144,13,56,237,142,176,6,216,214,193,11,4,242,142,134,203,192,3,21,36,62,71,165,10,80,26,74,17,148,116,234,113,254,98,114,57,105,193,250,175,205,126,216,183,64,104,66,38,96,179,97,55,48,111,150,31,106,
196,157,112,78,201,140,5,96,28,146,67,168,184,248,202,101,30,141,137,221,151,91,84,178,238,21,13,207,216,103,90,165,177,146,43,56,41,226,10,62,110,34,73,35,17,192,134,114,71,204,167,96,218,158,128,179,139,240,153,146,253,54,204,127,99,211,112,94,105,108,21,220,151,168,74,8,53,113,61,179,193,245,128,87,138,40,108,237,117,156,79,219,48,252,153,178,235,121,120,47,20,21,136,221,113,188,221,134,227,47,212,187,190,39,27,21,136,154,56,158,44,23,87,160,194,32,228,200,241,130,230,42,83,159,28,36,50,105,161,173,165,228,3,33,219,56,205,195,51,159,87,178,90,42,242,41,90,80,164,201,242,185,154,249,10,234,14,218,28,80,56,211,168,231,80,101,179,219,208,127,193,67,241,160,70,136,0,107,162,13,179,21,206,254,252,86,48,199,118,137,0,232,169,21,146,227,89,97,8,142,92,143,135,68,208,176,13,132,42,162,165,190,105,109,162,109,21,213,107,230,77,239,165,110,8,96,7,145,124,132,101,72,21,83,84,157,209,173,33,9,30,251,16,109,132,54,
115,183,122,81,26,48,219,61,174,36,76,110,6,196,245,172,72,138,242,185,218,151,70,96,119,32,119,233,177,63,150,16,122,193,33,69,108,31,130,25,199,198,155,1,9,150,94,155,176,41,132,124,108,198,148,33,70,114,62,114,93,245,40,200,138,133,115,9,69,160,71,17,18,11,88,20,199,128,184,41,128,8,32,62,162,127,44,97,168,21,206,65,41,224,63,4,122,179,165,43,25,231,216,206,156,121,215,138,223,162,90,45,142,5,186,174,73,75,82,147,142,60,169,208,146,43,206,221,205,188,83,0,55,157,202,91,163,0,185,125,36,165,92,8,29,197,1,79,114,199,248,226,186,222,65,158,117,207,145,96,209,209,253,56,249,17,97,116,114,175,235,69,60,176,244,1,153,150,5,251,152,88,247,181,233,255,207,227,34,31,52,231,156,10,112,210,171,57,5,155,132,240,111,197,99,67,181,3,26,155,32,152,28,122,101,249,215,94,135,188,136,227,41,209,38,115,56,25,15,4,156,100,109,50,229,242,170,135,23,27,55,62,129,17,136,188,42,129,65,119,200,9,135,27,92,56,
183,67,233,0,212,123,38,192,115,68,198,47,224,94,182,245,56,182,197,92,94,193,182,250,195,233,138,7,211,136,95,242,185,250,64,142,225,238,224,16,225,74,9,23,67,121,165,149,254,137,165,94,47,226,3,208,122,5,241,243,20,29,51,151,243,213,13,152,180,128,117,232,48,129,103,183,146,254,106,243,60,231,103,97,0,174,111,251,137,46,167,197,103,186,252,99,51,249,49,212,29,72,191,178,225,244,142,162,44,230,169,203,44,106,6,58,35,5,180,146,30,229,149,212,61,65,97,77,237,5,218,89,89,142,229,134,179,68,134,57,252,19,40,201,104,235,178,192,12,0,59,38,234,51,153,148,183,152,52,123,179,151,120,213,24,174,168,113,109,120,238,82,59,64,185,52,66,93,174,74,209,78,182,86,25,30,153,58,161,11,63,188,173,129,64,198,117,149,56,174,33,89,247,37,133,28,78,150,31,89,151,189,206,213,108,226,43,235,182,74,61,86,197,46,57,63,69,74,136,231,210,43,53,163,189,16,120,61,56,241,213,145,221,14,100,70,73,48,153,224,154,38,151,22,5,175,
147,253,3,195,32,212,6,204,30,93,221,18,25,25,41,76,193,228,182,68,65,39,75,215,61,150,185,46,167,210,117,110,141,126,178,128,106,58,12,60,99,146,35,38,205,194,121,220,251,76,3,158,222,207,183,144,240,18,13,225,94,184,75,8,13,111,188,121,138,235,105,33,60,111,61,163,50,90,150,183,26,185,114,12,195,77,142,163,231,220,187,161,65,24,43,19,28,50,114,117,37,186,233,31,57,175,85,76,237,70,78,169,59,218,60,163,161,95,64,134,162,221,168,207,140,201,236,101,200,17,97,176,196,36,106,93,247,151,161,38,241,126,74,8,79,42,169,107,136,187,146,78,94,54,197,147,36,112,214,141,189,32,160,89,192,23,205,68,84,225,210,239,67,212,218,218,26,142,235,57,247,111,21,60,20,17,15,106,107,89,230,113,127,178,135,106,87,143,138,181,42,74,43,147,0,54,201,204,75,113,108,237,37,104,158,163,127,156,45,61,71,222,78,33,194,226,171,212,60,178,245,134,132,20,240,171,82,48,153,108,104,178,94,165,35,240,218,137,113,79,116,177,149,91,72,200,
224,137,23,44,12,113,28,163,93,15,38,9,38,3,107,15,94,128,167,135,129,227,133,27,149,63,226,178,131,140,147,236,224,122,185,192,66,73,99,62,150,156,112,155,185,184,203,185,117,181,46,252,247,130,126,149,35,107,114,87,238,159,72,166,38,177,193,85,1,150,47,104,153,114,38,31,38,196,130,112,85,177,131,41,113,150,129,224,129,200,207,138,232,195,162,30,202,42,180,25,156,211,130,130,5,99,166,42,94,186,224,88,125,82,0,146,107,147,192,241,16,130,226,5,149,233,200,5,28,123,124,42,134,10,114,54,0,129,55,228,207,63,77,248,25,198,191,172,153,54,186,134,253,113,160,55,232,106,67,83,239,106,79,141,190,5,175,16,175,152,208,163,32,224,171,203,203,225,144,20,129,198,239,146,169,191,217,44,172,55,243,248,25,70,199,181,166,158,240,122,243,48,119,7,215,160,242,201,95,190,200,215,64,106,95,55,14,135,198,160,175,151,144,138,32,126,230,193,231,250,27,254,10,126,182,254,236,115,238,255,66,103,205,22,52,154,252,78,166,217,183,112,160,119,216,237,
13,77,205,178,54,112,160,25,138,21,91,150,77,127,198,195,144,47,154,109,161,214,52,157,95,205,139,47,95,74,141,164,244,13,89,171,207,71,206,112,24,87,233,85,168,193,241,176,26,39,241,255,120,83,205,126,60,206,28,244,227,216,179,228,157,35,206,25,102,103,101,42,248,1,187,1,95,88,6,141,40,28,114,213,241,200,57,102,107,228,100,21,48,85,33,79,106,22,112,249,179,131,192,190,197,76,42,150,12,227,146,101,14,70,154,56,197,248,66,85,205,227,251,120,92,232,246,214,42,221,171,57,131,157,92,206,229,193,196,66,229,230,0,19,153,193,185,97,14,37,0,78,216,237,124,137,126,125,151,8,11,251,218,150,219,173,193,139,43,227,105,24,36,119,137,115,195,228,191,165,196,160,100,48,137,44,247,225,112,124,44,176,58,48,13,236,21,102,20,200,41,135,97,100,85,60,209,137,179,14,1,77,247,3,179,50,14,117,115,216,215,6,253,31,176,105,229,105,207,66,173,132,97,87,27,237,147,227,55,71,175,94,78,62,188,63,121,125,242,246,183,19,165,148,48,212,
179,48,116,136,27,21,100,110,31,211,207,222,71,143,175,188,78,50,45,3,225,229,155,211,243,223,55,172,103,113,4,219,194,180,152,170,249,203,212,143,74,142,105,123,165,16,143,126,57,253,249,104,3,68,188,58,229,224,76,217,76,150,132,66,21,188,128,62,74,33,106,165,144,223,28,157,189,174,11,88,195,118,11,4,199,61,247,182,20,218,219,211,163,255,189,127,89,9,175,64,52,128,235,68,134,158,106,69,154,24,100,37,21,149,12,251,219,170,55,4,117,44,224,203,16,75,210,83,10,145,218,2,158,4,168,29,177,151,224,101,240,248,149,9,53,136,56,4,168,148,140,218,226,140,36,0,22,16,22,208,184,154,38,150,110,81,73,79,213,212,100,127,20,20,15,174,109,15,148,80,70,59,130,45,124,87,90,3,160,128,41,210,211,183,47,148,169,182,115,165,243,43,42,227,69,238,79,14,92,240,174,133,109,30,188,89,36,245,128,103,113,49,76,246,44,52,76,166,229,202,96,165,119,137,76,29,45,215,118,240,177,44,135,22,150,22,201,126,231,75,105,237,24,65,201,168,
16,8,183,17,169,84,132,82,180,78,101,160,152,82,252,88,202,127,88,187,68,189,139,216,88,71,86,192,134,251,161,30,67,168,155,217,128,233,202,50,51,135,10,242,63,49,165,200,55,127,172,71,0,86,151,238,77,67,6,72,77,50,142,103,138,243,121,134,163,179,80,89,67,240,39,94,193,199,167,69,101,22,182,213,180,21,195,16,30,152,33,18,54,86,148,200,114,22,150,118,6,12,163,242,127,115,83,43,244,1,20,110,107,170,167,32,223,78,144,51,56,191,194,224,138,141,2,234,178,42,159,229,169,212,129,131,20,172,111,138,87,150,164,140,163,46,172,199,137,219,141,198,213,77,39,186,22,215,83,137,127,107,223,68,78,196,81,247,196,80,181,72,52,23,111,182,89,162,88,148,192,158,139,92,187,69,78,178,226,115,133,104,185,108,197,133,115,167,208,61,225,201,34,92,61,249,252,147,141,33,89,185,148,211,210,33,81,127,116,84,39,99,181,250,64,242,62,233,177,181,159,165,17,69,61,2,30,113,23,90,222,210,31,115,47,90,14,211,175,221,145,150,85,3,175,164,
59,45,140,99,229,78,41,251,163,78,181,38,68,150,116,172,230,139,95,178,11,53,215,128,74,62,100,146,169,229,189,167,141,130,64,86,112,92,245,49,253,155,122,107,183,211,247,47,234,173,45,97,224,93,46,63,218,80,202,119,169,140,235,137,43,130,62,217,47,86,141,146,106,86,110,219,201,126,77,184,127,103,115,123,214,134,39,251,77,155,219,43,241,38,73,93,38,229,74,141,146,223,6,252,42,233,132,229,106,143,134,222,167,82,3,193,31,101,188,16,217,174,118,207,101,210,95,89,108,187,121,204,171,150,239,228,88,156,79,201,235,204,119,89,106,172,75,74,190,213,30,41,166,108,199,112,111,19,101,187,70,123,10,30,138,207,163,171,232,114,9,210,18,62,117,84,106,76,197,73,234,251,40,153,99,5,147,37,83,58,195,118,163,14,57,13,232,13,131,224,61,73,239,197,137,183,180,60,227,114,81,39,26,254,167,234,239,201,153,27,55,52,106,53,144,125,216,102,28,249,94,68,77,107,146,141,120,145,92,240,27,204,238,100,187,221,212,109,52,140,139,132,185,110,103,52,
190,70,33,108,105,79,75,227,222,168,122,157,44,77,155,116,154,160,92,86,164,124,48,196,31,168,5,199,79,50,126,217,83,24,86,20,242,220,157,181,113,48,32,7,213,3,239,201,32,126,149,235,181,103,210,219,230,138,157,109,172,17,224,237,211,102,83,217,37,184,233,75,104,219,203,163,41,195,139,175,202,26,57,10,92,105,109,105,178,136,8,221,97,239,178,19,97,3,14,143,200,235,175,179,176,196,253,111,33,99,103,23,159,74,32,235,148,155,122,249,93,244,164,220,161,212,161,243,33,29,198,102,188,42,90,27,54,42,83,249,248,255,165,27,136,95,224,247,103,119,20,49,46,141,196,140,143,27,248,185,42,209,234,40,112,201,170,180,172,76,37,176,58,233,227,223,206,57,163,208,250,65,46,255,2,215,147,232,107,
topic "Image and ImageBuffer";[2 $$0,0#00000000000000000000000000000000:Default]
[i448;a25;kKO9;*@(64)2 $$1,0#37138531426314131252341829483380:class]
[l288;2 $$2,2#27521748481378242620020725143825:desc]
[a83;*R6 $$3,0#31310162474203024125188417583966:caption]
[l288;i1121;b17;O9;~~~.1408;2 $$4,0#10431211400427159095818037425705:param]
[i448;a25;kKO9;*@(64)2 $$5,0#37138531426314131252341829483370:item]
[*+117 $$6,6#14700283458701402223321329925657:header]
[{_}%EN-US
[s3; Image and ImageBuffer&]
[s1;K:`:`:Image`:`:class:%- [@(0.0.255) class]_[@0 Image]_:_[@(0.0.255) public]_[^`:`:AssignValueTypeNo^ A
ssignValueTypeNo]<_[@0 Image], [@3 150], [^`:`:Moveable^ Moveable]<[@0 Image]>_>_&]
[s2; Image represents an immutable image value. Image can be directly
painted to Draw. To create or change Image, use [^`:`:ImageBuffer^ ImageBuffer].&]
[s2; Image has low`-cost constant time deep copy. It is moveable
and Rich`-Value compatible type.&]
[s2; U`+`+ expects pixels to be in premultiplied alpha format.&]
[s0; &]
[s5;K:`:`:Image`:`:operator`~`(`)const:%- [@(0.0.255) const]_[^`:`:RGBA^ RGBA]`*_[@0 operat
or`~]()_[@(0.0.255) const]&]
[s5;%- [@0 operator]_[@(0.0.255) const]_[^`:`:RGBA^ RGBA][@0 `*]()_[@(0.0.255) const]&]
[s2; Returns a pointer to Image pixels.&]
[s0; &]
[s5;K:`:`:Image`:`:operator`[`]`(int`)const:%- [@(0.0.255) const]_[^`:`:RGBA^ RGBA]`*_[@0 o
perator`[`]]([@(0.0.255) int]_[@3 i])_[@(0.0.255) const]&]
[s2; Returns a pointer to the first pixel in the line [%-*@3 i].&]
[s0; &]
[s5;K:`:`:Image`:`:GetSize`(`)const:%- [^`:`:Size^ Size]_[@0 GetSize]()_[@(0.0.255) const]&]
[s2; Returns the dimension of Image.&]
[s0; &]
[s5;K:`:`:Image`:`:GetWidth`(`)const:%- [@(0.0.255) int]_[@0 GetWidth]()_[@(0.0.255) const]&]
[s2; Same as GetSize().cx.&]
[s0; &]
[s5;K:`:`:Image`:`:GetHeight`(`)const:%- [@(0.0.255) int]_[@0 GetHeight]()_[@(0.0.255) cons
t]&]
[s2; Same as GetSize().cy.&]
[s0; &]
[s5;K:`:`:Image`:`:GetLength`(`)const:%- [@(0.0.255) int]_[@0 GetLength]()_[@(0.0.255) cons
t]&]
[s2; Number of pixels in Image `- GetWidth() `* GetHeight().&]
[s0; &]
[s5;K:`:`:Image`:`:GetHotSpot`(`)const:%- [^`:`:Point^ Point]_[@0 GetHotSpot]()_[@(0.0.255) c
onst]&]
[s2; Returns the reference point.&]
[s0; &]
[s5;K:`:`:Image`:`:GetDots`(`)const:%- [^`:`:Size^ Size]_[@0 GetDots]()_[@(0.0.255) const]&]
[s2; Gets the physical size of Image. If physical size is not set,
returns Size(0, 0).&]
[s0; &]
[s5;K:`:`:Image`:`:GetKind`(`)const:%- [@(0.0.255) int]_[@0 GetKind]()_[@(0.0.255) const]&]
[s2; Returns the kind of image. See [^`:`:ImageBuffer^ ImageBuffer]
for detail.&]
[s0; &]
[s5;K:`:`:Image`:`:GetSerialId`(`)const:%- [^`:`:int64^ int64]_[@0 GetSerialId]()_[@(0.0.255) c
onst]&]
[s2; Returns the unique, per application run, identifier of Image.
All Images with the same serial id can be considered equal (this
is useful for caching images).&]
[s0; &]
[s5;K:`:`:Image`:`:IsSame`(const`:`:Image`&`)const:%- [@(0.0.255) bool]_[@0 IsSame]([@(0.0.255) c
onst]_[^`:`:Image^ Image]`&_[@3 img])_[@(0.0.255) const]&]
[s2; Same as GetSerialId() `=`= img.GetSerialId().&]
[s0; &]
[s5;K:`:`:Image`:`:operator`=`=`(const`:`:Image`&`)const:%- [@(0.0.255) bool]_[@0 operato
r`=`=]([@(0.0.255) const]_[^`:`:Image^ Image]`&_[@3 img])_[@(0.0.255) const]&]
[s5;K:`:`:Image`:`:operator`=`=`(const`:`:Image`&`)const:%- [@(0.0.255) bool]_[@0 operato
r!`=]([@(0.0.255) const]_[^`:`:Image^ Image]`&_[@3 img])_[@(0.0.255) const]&]
[s2; Tests whether two Images are equal (or not equal). Dimensions,
hot`-spot, dots and all pixels are compared. Note that the comparison
can be slow.&]
[s0; &]
[s5;K:`:`:Image`:`:GetHashValue`(`)const:%- [^`:`:dword^ dword]_[@0 GetHashValue]()_[@(0.0.255) c
onst]&]
[s2; Returns the hash`-value for image. All pixels combined into
hash value (potentially slow).&]
[s0; &]
[s5;K:`:`:Image`:`:ToString`(`)const:%- [^`:`:String^ String]_[@0 ToString]()_[@(0.0.255) c
onst]&]
[s2; Returns the basic Image informations as String.&]
[s0; &]
[s5;K:`:`:Image`:`:Serialize`(`:`:Stream`&`):%- [@(0.0.255) void]_[@0 Serialize]([^`:`:Stream^ S
tream]`&_[@3 s])&]
[s2; Serializes Image.&]
[s0; &]
[s5;K:`:`:Image`:`:Clear`(`):%- [@(0.0.255) void]_[@0 Clear]()&]
[s2; Assigns an empty Image.&]
[s0; &]
[s5;K:`:`:Image`:`:operator`=`(const`:`:Image`&`):%- [^`:`:Image^ Image]`&_[@0 operator`=
]([@(0.0.255) const]_[^`:`:Image^ Image]`&_[@3 img])&]
[s2; Assigns another Image.&]
[s0; &]
[s5;K:`:`:Image`:`:operator`=`(`:`:ImageBuffer`&`):%- [^`:`:Image^ Image]`&_[@0 operator`=
]([^`:`:ImageBuffer^ ImageBuffer]`&_[@3 img])&]
[s2; Assigns Image created in ImageBuffer. ImageBuffer is emptied
by this operation.&]
[s0; &]
[s5;K:`:`:Image`:`:IsNullInstance`(`)const:%- [@(0.0.255) bool]_[@0 IsNullInstance]()_[@(0.0.255) c
onst]&]
[s2; Test whether Image has nonzero dimension.&]
[s0; &]
[s5;K:`:`:Image`:`:IsEmpty`(`)const:%- [@(0.0.255) bool]_[@0 IsEmpty]()_[@(0.0.255) const]&]
[s2; Same as IsNullInstance.&]
[s0; &]
[s5;K:`:`:Image`:`:operator`:`:Value`(`)const:%- [@0 operator_][^`:`:Value^@0 Value]()_[@(0.0.255) c
onst]&]
[s2; Converts Image to Value.&]
[s0; &]
[s5;K:`:`:Image`:`:`:`:Image`(`):%- [@0 Image]()&]
[s5;%- [@0 Image]([@(0.0.255) const]_[^`:`:Nuller^ Nuller]`&)&]
[s2; Constructs empty Image.&]
[s0; &]
[s5;K:`:`:Image`:`:`:`:Image`(const`:`:Value`&`):%- [@0 Image]([@(0.0.255) const]_[^`:`:Value^ V
alue]`&_[@3 src])&]
[s2; Converts Image from Value.&]
[s0; &]
[s5;K:`:`:Image`:`:`:`:Image`(const`:`:Image`&`):%- [@0 Image]([@(0.0.255) const]_[@0 Image
]`&_[@3 img])&]
[s2; Copy constructor.&]
[s0; &]
[s5;K:`:`:Image`:`:`:`:Image`(`:`:Image`(`*`)`(`)`):%- [@0 Image]([@0 Image]_(`*[@3 fn])())
&]
[s2; This function allow Image to be directly constructed from pointer
to function returning the Image. This allows omitting parenthesis
when passing Iml image constants as arguments.&]
[s0; &]
[s5;K:`:`:Image`:`:`:`:Image`(`:`:ImageBuffer`&`):%- [@0 Image]([^`:`:ImageBuffer^ ImageB
uffer]`&_[@3 b])&]
[s2; Uses Image created in ImageBuffer. ImageBuffer is emptied by
this operation.&]
[s0; &]
[s5;K:`:`:Image`:`:`~`:`:Image`(`):%- `~[@0 Image]()&]
[s2; Destructor.&]
[s0; &]
[s0; &]
[s0; [3 Standard cursors]&]
[s0; &]
[s0; Image class contains several standard mouse cursor Images as
static member methods:&]
[s0;^`:`:Image^ &]
[ {{3333:3333:3334f0;g0; [ {{6850:3150>274; [s0;%- Arrow]
:: [s0; ]
:: [s0;%- Wait]
:: [s0; ]
:: [s0;%- IBeam]
:: [s0; ]
:: [s0;%- No]
:: [s0; ]
:: [s0;%- SizeAll]
:: [s0; ]}}]
:: [ {{7129:2871>274; [s0;%- SizeHorz]
:: [s0; ]
:: [s0;%- SizeVert]
:: [s0; ]
:: [s0;%- SizeTopLeft]
:: [s0; ]
:: [s0;%- SizeTop]
:: [s0; ]
:: [s0;%- SizeTopRight]
:: [s0; ]}}]
:: [ {{6956:3044>274; [s0;%- SizeLeft]
:: [s0; ]
:: [s0;%- SizeRight]
:: [s0; ]
:: [s0;%- SizeBottomLeft]
:: [s0; ]
:: [s0;%- SizeBottom]
:: [s0; ]
:: [s0;%- SizeBottomRight]
:: [s0; ]}}]}}&]
[s0;^`:`:Image^ &]
[s0;^`:`:Image^ &]
[s0; &]
[s1;K:`:`:ImageBuffer`:`:class:%- [@(0.0.255) class]_[@0 ImageBuffer]_:_[@(0.0.255) private]_
[^`:`:NoCopy^ NoCopy]&]
[s2; ImageBuffer represents a writable Image `- an array of RGBA
pixels. ImageBuffer can be converted to Image in low`-const constant
time while loosing its content and vice versa, Image can be converted
to ImageBuffer again loosing its content.&]
[s2; &]
[s2; Content of Image / ImageBuffer can be classified to optimize
drawing. Possible classifications are&]
[s2; &]
[ {{2913:7087<288;>640; [s0; [* IMAGE`_UNKNOWN]]
:: [s0; The image kind is unknown.]
:: [s0; [* IMAGE`_EMPTY]]
:: [s0; The image is empty (all alpha values are 0).]
:: [s0; [* IMAGE`_ALPHA]]
:: [s0; The image has alpha values different from 255 and 0.]
:: [s0; [* IMAGE`_MASK]]
:: [s0; The image has alpha values 0 or 255 only.]
:: [s0; [* IMAGE`_OPAQUE]]
:: [s0; The image has all alpha values 255.]}}&]
[s2; &]
[s2; Note that is the kind of image is unknown, painting routine
determines it automatically by scanning pixels and stores the
result.&]
[s2; &]
[s2; Pixels of image are organized in simple continual POD array,
first pixel being top`-left.&]
[s2; &]
[s2; U`+`+ expects pixels to be in premultiplied alpha format.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:SetKind`(int`):%- [@(0.0.255) void]_[@0 SetKind]([@(0.0.255) int]_
[@3 k])&]
[s2; Sets the kind of image. You can use this to avoid automatic
detection.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:GetKind`(`)const:%- [@(0.0.255) int]_[@0 GetKind]()_[@(0.0.255) co
nst]&]
[s2; Returns the kind of image set by SetKind.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:ScanKind`(`)const:%- [@(0.0.255) int]_[@0 ScanKind]()_[@(0.0.255) c
onst]&]
[s2; Scans all RGBA pixels to determine Image kind.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:GetScanKind`(`)const:%- [@(0.0.255) int]_[@0 GetScanKind]()_[@(0.0.255) c
onst]&]
[s2; If kind set by SetKind is other than IMAGE`_UNKNOWN, returns
it, otherwise calls ScanKind().&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:SetHotSpot`(`:`:Point`):%- [@(0.0.255) void]_[@0 SetHotSpot]([^`:`:Point^ P
oint]_[@3 p])&]
[s2; Sets the reference point. This point is e.g. used as hot`-spot
when Image is used as mouse pointer.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:GetHotSpot`(`)const:%- [^`:`:Point^ Point]_[@0 GetHotSpot]()_[@(0.0.255) c
onst]&]
[s2; Returns the reference point.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:SetDots`(`:`:Size`):%- [@(0.0.255) void]_[@0 SetDots]([^`:`:Size^ S
ize]_[@3 sz])&]
[s2; Sets the optional physical size in dots.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:GetDots`(`)const:%- [^`:`:Size^ Size]_[@0 GetDots]()_[@(0.0.255) c
onst]&]
[s2; Returns the optional physical size. Default value is Size(0,
0).&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:GetSize`(`)const:%- [^`:`:Size^ Size]_[@0 GetSize]()_[@(0.0.255) c
onst]&]
[s2; Returns the dimensions of image.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:GetWidth`(`)const:%- [@(0.0.255) int]_[@0 GetWidth]()_[@(0.0.255) c
onst]&]
[s2; Same as GetSize().cx.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:GetHeight`(`)const:%- [@(0.0.255) int]_[@0 GetHeight]()_[@(0.0.255) c
onst]&]
[s2; Same as GetSize().cy.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:GetLength`(`)const:%- [@(0.0.255) int]_[@0 GetLength]()_[@(0.0.255) c
onst]&]
[s2; Returns the number of pixels in the image. Same as GetSize().cx
`* GetSize().cy.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:operator`[`]`(int`):%- [^`:`:RGBA^ RGBA]_`*[@0 operator`[`]]([@(0.0.255) i
nt]_[@3 i])&]
[s5;K:`:`:ImageBuffer`:`:operator`[`]`(int`)const:%- [@(0.0.255) const]_[^`:`:RGBA^ RGBA]_
`*[@0 operator`[`]]([@(0.0.255) int]_[@3 i])_[@(0.0.255) const]&]
[s2; Returns a pointer to the first pixel in the line [%-*@3 i].&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:operator`~`(`):%- [^`:`:RGBA^ RGBA]_`*[@0 operator`~]()&]
[s5;K:`:`:ImageBuffer`:`:operator`:`:RGBA`*`(`):%- [@0 operator_RGBA]`*()&]
[s5;K:`:`:ImageBuffer`:`:operator`~`(`)const:%- [@(0.0.255) const]_[^`:`:RGBA^ RGBA]_[@0 `*
operator`~]()_[@(0.0.255) const]&]
[s5;K:`:`:ImageBuffer`:`:operator const`:`:RGBA`*`(`)const:%- [@0 operator]_[@(0.0.255) c
onst]_[@0 RGBA`*]()_[@(0.0.255) const]&]
[s2; Returns a pointer to the first pixel of the image. &]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:Create`(int`,int`):%- [@(0.0.255) void]_[@0 Create]([@(0.0.255) in
t]_[@3 cx], [@(0.0.255) int]_[@3 cy])&]
[s5;K:`:`:ImageBuffer`:`:Create`(`:`:Size`):%- [@(0.0.255) void]_[@0 Create]([^`:`:Size^ Si
ze]_[@3 sz])&]
[s2; Creates a new image of specified size. Value of pixels is undefined.
Previous content of ImageBuffer is lost.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:IsEmpty`(`)const:%- [@(0.0.255) bool]_[@0 IsEmpty]()_[@(0.0.255) c
onst]&]
[s2; Same as GetLength() `=`= 0.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:Clear`(`):%- [@(0.0.255) void]_[@0 Clear]()&]
[s2; Clears the content, removing all pixels and setting the size
of Image to Size(0, 0).&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:operator`=`(`:`:Image`&`):%- [@(0.0.255) void]_[@0 operator`=]([^`:`:Image^ I
mage]`&_[@3 img])&]
[s5;K:`:`:ImageBuffer`:`:operator`=`(`:`:ImageBuffer`&`):%- [@(0.0.255) void]_[@0 operato
r`=]([^`:`:ImageBuffer^ ImageBuffer]`&_[@3 img])&]
[s2; Assigns pixels of [%-*@3 img] to ImageBuffer. [%-*@3 img] is cleared
and empty after this operation, price paid for low`-cost constant
time operation.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:`:`:ImageBuffer`(`):%- [@0 ImageBuffer]()&]
[s2; Constructs empty ImageBuffer.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:`:`:ImageBuffer`(int`,int`):%- [@0 ImageBuffer]([@(0.0.255) int]_
[@3 cx], [@(0.0.255) int]_[@3 cy])&]
[s5;K:`:`:ImageBuffer`:`:`:`:ImageBuffer`(`:`:Size`):%- [@0 ImageBuffer]([^`:`:Size^ Size
]_[@3 sz])&]
[s2; Constructs ImageBuffer of specified size. Value of pixels is
undefined.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:`:`:ImageBuffer`(`:`:Image`&`):%- [@0 ImageBuffer]([^`:`:Image^ I
mage]`&_[@3 img])&]
[s5;K:`:`:ImageBuffer`:`:`:`:ImageBuffer`(`:`:ImageBuffer`&`):%- [@0 ImageBuffer]([@0 Ima
geBuffer]`&_[@3 img])&]
[s2; Assigns pixels of [%-*@3 img] to ImageBuffer. [%-*@3 img] is cleared
and empty after this operation, price paid for low`-cost constant
time operation.&]
[s0; &]
[s5;K:`:`:ImageBuffer`:`:`:`:ImageBuffer`(`:`:ImageDraw`&`):%- [@0 ImageBuffer]([^`:`:ImageDraw^ I
mageDraw]`&_[@3 w])&]
[s2; Creates ImageBuffer from ImageDraw. ImageDraw is cleared and
empty after this operation, price paid for low`-cost constant
time operation.&]
[s2; &]
[s0; &]
[s0; ]

View file

@ -354,12 +354,17 @@ void RichTable::ApplyZoom(Zoom z, const RichStyles& ostyle, const RichStyles& zs
int ny = cell.GetCount();
format.frame = LineZoom(z, format.frame);
format.grid = LineZoom(z, format.grid);
format.before *= z;
format.lm *= z;
format.rm *= z;
format.after *= z;
for(int i = 0; i < ny; i++)
for(int j = 0; j < nx; j++)
if(ci[i][j].valid) {
RichCell& c = cell[i][j];
c.format.border *= z;
c.format.margin *= z;
c.format.minheight *= z;
c.text.ApplyZoom(z, ostyle, zstyle);
}
}