Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
7707 Alex2003 1
2
xmlns:o="urn:schemas-microsoft-com:office:office"
3
xmlns:w="urn:schemas-microsoft-com:office:word"
4
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml"
5
xmlns="http://www.w3.org/TR/REC-html40">
6
 
7
8
9
10
11
12
13
31
32
33
332
418
448
449
 
450
451
 
452
453
 
454

Back to

457
main

458
 
459

 

462
 
463

Function 15

466
and its sub-functions (1-9)

467
 
468

 

471
 
472

474
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
475
EN-US'>Subfunction
476
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
477
EN-US'> 1 - set the size of the background image

478
 
479

Options:

482
 
483

  * eax =

486
15 - function number

487
 
488

  * ebx = 1

491
- number of subfunction

492
 
493

  * ecx =

496
image width

497
 
498

  * edx =

501
image height

502
 
503

Return value:

506
 
507

  * function does not return value

510
 
511

Remarks:

514
 
515

  * A function call is required before calling

518
class=SpellE>subfunctions 2 and 5.

519
 
520

  * To update the screen (after completing a series of

523
commands working with the background), call the subfunction
524
3 background redrawing.

525
 
526

  * There is a pair function to get the size of the background

529
image - subfunction 1
530
function 39

531
 
532

 

535
 
536

Constants for registers:

539
 
540

  eax -

543
SF_BACKGROUND_SET (15)

544
 
545

  ebx -

548
SSF_SIZE_BG (1)

549
 
550

 

553
 
554

556
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
557
EN-US'>Subfunction
558
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
559
EN-US'> 2 - put a dot on the background image

560
 
561

Options:

564
 
565

  * eax =

568
15 - function number

569
 
570

  * ebx = 2

573
- subfunction number

574
 
575

  * ecx =

578
offset

579
 
580

  * edx =

583
point color 0xRRGGBB

584
 
585

Return value:

588
 
589

  * function does not return value

592
 
593

Remarks:

596
 
597

  * The offset for a point with coordinates (x, y) is

600
calculated as (x + y * xsize) * 3.

601
 
602

  * If the specified offset exceeds the size set by

605
class=SpellE>subfunction 1, the call is ignored.

606
 
607

  * To update the screen (after completing a series of

610
commands working with the background), call the subfunction
611
3 background redrawing.

612
 
613

  * There is a pair function of receiving a point from the

616
background image - subfunction 2 of function 39.

617
 
618

 

621
 
622

Constants for registers:

625
 
626

  eax -

629
SF_BACKGROUND_SET (15)

630
 
631

  ebx -

634
SSF_PIXEL_BG (2)

635
 
636

 

639
 
640

642
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
643
EN-US'>Subfunction
644
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
645
EN-US'> 3 - redraw the background

646
 
647

Options:

650
 
651

  * eax =

654
15 - function number

655
 
656

  * ebx = 3

659
- subfunction number

660
 
661

Return value:

664
 
665

  * function does not return value

668
 
669

 

672
 
673

Constants for registers:

676
 
677

  eax -

680
SF_BACKGROUND_SET (15)

681
 
682

  ebx -

685
SSF_REDRAW_BG (3)

686
 
687

 

690
 
691

693
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
694
EN-US'>Subfunction
695
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
696
EN-US'> 4 - set the background drawing mode

697
 
698

Options:

701
 
702

  * eax =

705
15 - function number

706
 
707

  * ebx = 4

710
- subfunction number

711
 
712

  * ecx =

715
draw mode:

716
 
717

    * 1 = tile

720
 
721

    * 2 = stretch

724
 
725

Return value:

728
 
729

  * function does not return value

732
 
733

Remarks:

736
 
737

  * To update the screen (after completing a series of

740
commands working with the background), call the subfunction
741
3 background redrawing.

742
 
743

  * There is a pair command to get the background rendering

746
mode - subfunction 4 functions 39.

747
 
748

 

751
 
752

Constants for registers:

755
 
756

  eax -

759
SF_BACKGROUND_SET (15)

760
 
761

  ebx -

764
SSF_MODE_BG (4)

765
 
766

 

769
 
770

772
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
773
EN-US'>Subfunction
774
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
775
EN-US'> 5 - place a block of pixels on the background

776
 
777

Options:

780
 
781

  * eax =

784
15 - function number

785
 
786

  * ebx = 5

789
- subfunction number

790
 
791

  * ecx =

794
pointer to BBGGRRBBGGRR data ...

795
 
796

  * edx =

799
offset in the background image data

800
 
801

  * esi =

804
data size in bytes = 3 * number of pixels

805
 
806

Return value:

809
 
810

  * function does not return value

813
 
814

Remarks:

817
 
818

  * Check the correctness of the offset and size is not

821
performed.

822
 
823

  * The color of each pixel is stored as a 3-byte BBGGRR

826
value.

827
 
828

  * Pixels of the background image are recorded sequentially

831
from left to right, top to bottom.

832
 
833

  * Pixel offset with coordinates (x, y) is (x + y *

836
class=SpellE>xsize) * 3.

837
 
838

  * To update the screen (after completing a series of

841
commands working with the background), call the subfunction
842
3 background redrawing.

843
 
844

 

847
 
848

Constants for registers:

851
 
852

  eax -

855
SF_BACKGROUND_SET (15)

856
 
857

  ebx -

860
SSF_IMAGE_BG (5)

861
 
862

 

865
 
866

868
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
869
EN-US'>Subfunction
870
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
871
EN-US'> 6 - project the background data onto the process address space

872
 
873

Options:

876
 
877

  * eax =

880
15 - function number

881
 
882

  * ebx = 6

885
- subfunction number

886
 
887

Return value:

890
 
891

  * eax =

894
pointer to background data, 0 on error

895
 
896

Remarks:

899
 
900

  * The projected data is readable and writeable.

903
 
904

  * The size of the background data is 3 * xsize

907
* ysize. Changing the size of the background is
908
blocked while working with the projected data.

909
 
910

  * The color of each pixel is stored as a 3-byte BBGGRR

913
value.

914
 
915

  * Pixels of the background image are recorded sequentially

918
from left to right, top to bottom.

919
 
920

 

923
 
924

Constants for registers:

927
 
928

  eax -

931
SF_BACKGROUND_SET (15)

932
 
933

  ebx -

936
SSF_MAP_BG (6)

937
 
938

 

941
 
942

944
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
945
EN-US'>Subfunction
946
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
947
EN-US'> 7 - close the projection of the background data on the process address
948
space

949
 
950

Options:

953
 
954

  * eax =

957
15 - function number

958
 
959

  * ebx = 7

962
- subfunction number

963
 
964

  * ecx =

967
pointer to background data

968
 
969

Return value:

972
 
973

  * eax = 1

976
on success, 0 on error

977
 
978

 

981
 
982

Constants for registers:

985
 
986

  eax -

989
SF_BACKGROUND_SET (15)

990
 
991

  ebx -

994
SSF_UNMAP_BG (7)

995
 
996

 

999
 
1000

1002
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
1003
EN-US'>Subfunction
1004
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
1005
EN-US'> 8 - get the coordinates of the last background drawing

1006
 
1007

Options:

1010
 
1011

  * eax =

1014
15 - function number

1015
 
1016

  * ebx = 8

1019
- number of subfunction

1020
 
1021

Return value:

1024
 
1025

  * eax =

1028
[left] * 65536 + [right]

1029
 
1030

  * ebx =

1033
[top] * 65536 + [bottom]

1034
 
1035

Remarks:

1038
 
1039

  * (left, top) - coordinates of the upper left corner,

1042
(right, bottom) - coordinates of the lower right.

1043
 
1044

  * To get more reliable information, you must call the

1047
function immediately after receiving the event: 5 = desktop background
1048
redrawing has completed

1049
 
1050

 

1053
 
1054

Constants for registers:

1057
 
1058

  eax -

1061
SF_BACKGROUND_SET (15)

1062
 
1063

  ebx -

1066
SSF_LAST_DRAW (8)

1067
 
1068

 

1071
 
1072

1074
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
1075
EN-US'>Subfunction
1076
lang=EN-US style='font-size:14.0pt;font-family:"Arial","sans-serif";mso-ansi-language:
1077
EN-US'> 9 - redraw the rectangular part of the background

1078
 
1079

Options:

1082
 
1083

  * eax =

1086
15 - function number

1087
 
1088

  * ebx = 9

1091
- subfunction number

1092
 
1093

  * ecx =

1096
[left] * 65536 + [right]

1097
 
1098

  * edx =

1101
[top] * 65536 + [bottom]

1102
 
1103

Return value:

1106
 
1107

  * function does not return value

1110
 
1111

Remarks:

1114
 
1115

  * (left, top) - coordinates of the upper left corner,

1118
(right, bottom) - coordinates of the lower right.

1119
 
1120

  * If the parameters are set incorrectly - the background

1123
does not redraw.

1124
 
1125

 

1128
 
1129

Constants for registers:

1132
 
1133

  eax - SF_BACK

1136
 
1137

GROUND_SET (15)

1140
 
1141

   ebx - SSF_REDRAW_RECT (9)

1144
 
1145
1146
 
1147
1148
 
1149