Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1.  
  2. typedef unsigned int u32_t;
  3. typedef unsignet int handle;
  4. typedef unsigned int color_t;
  5.  
  6.  
  7. handle CreateHatchBrush(int hatch, color_t bkcolor, color_t fcolor);
  8.  
  9. Ñîçäàòü øòðèõîâàííóþ êèñòü ðàçìåðîì 8õ8 ïèêñåëåé
  10.  
  11. hatch     òèï øòðèõîâêè:
  12.  
  13.           HS_HORIZONTAL   -------
  14.           HS_VERTICAL     |||||||
  15.           HS_FDIAGONAL    \\\\\\\
  16.           HS_BDIAGONAL    ///////
  17.           HS_CROSS        +++++++
  18.           HS_DIAGCROSS    xxxxxxx
  19.  
  20. bkcolor   öâåò "0"
  21.  
  22. fcolor    öâåò "1"
  23.  
  24.  
  25. Âîçâðàùàåìîå çíà÷åíèå: ëîãè÷åñêèé íîìåð êèñòè èëè 0
  26.  
  27.  
  28.  
  29.  
  30. handle CreateMonoBrush(color_t bkcolor, color_t fcolor,
  31.                          u32_t bmp0, u32_t bmp1);
  32.  
  33. Ñîçäàòü ìîíîõðîìíóþ êèñòü ðàçìåðîì 8õ8 ïèêñåëåé
  34.  
  35. bkcolor     öâåò "0"
  36.  
  37. fcolor      öâåò "1"
  38.  
  39. bmp0 bmp1   ìîíîõðîìíûé áèòìàï 8õ8 ïèêñåëåé
  40.  
  41.  
  42. Âîçâðàùàåìîå çíà÷åíèå: ëîãè÷åñêèé íîìåð êèñòè èëè 0
  43.  
  44.  
  45.  
  46. void     DestroyBrush(handle brush);
  47.  
  48. Óíè÷òîæèòü êèñòü.
  49.  
  50. brush     ëîãè÷åñêèé íîìåð êèñòè.
  51.  
  52.  
  53. Êèñòü äîëæíà áûòü ñîçäàíà âûçîâîì CreateHatchBrush èëè CreateMonoBrush
  54.  
  55.  
  56.  
  57.  
  58. handle CreatePixmap(unsigned width, unsigned height, u32_t format, u32_t flags);
  59.  
  60. Ñîçäàòü áèòìàï
  61.  
  62. width    øèðèíà â ïèêñåëÿõ. Ìàêñèìóì 2048
  63.  
  64. height   âûñîòà â ïèêñåëÿõ. Ìàêñèìóì 2048
  65.  
  66. format   ôîðìàò ïèêñåëåé. Ñåé÷àñ ïîääåðæèâàåòñÿ òîëüêî ARGB32
  67.  
  68. flags    äîïîëíèòåëüíûå ôëàãè:
  69.  
  70.          PX_MEM_SYSTEM =  0 áèòìàï â ñèñòåìíîé ïàìÿòè
  71.          PX_MEM_LOCAL  =  1 áèòìàï â ëîêàëüíîé âèäåîïàìÿòè
  72.          PX_MEM_GART   =  2 çàðåçåðâèðîâàíî
  73.          îñòàëüíûå áèòû çàðåçåðâèðîâàíû è äîëæíû áûòü 0
  74.  
  75.  
  76. Âîçâðàùàåìîå çíà÷åíèå:  ëîãè÷åñêèé íîìåð áèòìàïà â ñëó÷àå óñïåõà èëè 0
  77.  
  78.  
  79.  
  80.  
  81. int DestroyPixmap( handle pixmap)
  82.  
  83. Óíè÷òîæèòü áèòìàï.
  84.  
  85. pixmap   ëîãè÷åñêèé íîìåð áèòìàïà.
  86.  
  87. Áèòìàï äîëæåí áûòü ñîçäàí CreatePixmap.
  88.  
  89.  
  90. Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
  91.  
  92.  
  93.  
  94.  
  95. void* LockPixmap(handle pixmap)
  96.  
  97. Ïîëó÷èòü äîñòóï ê äàííûì áèòìàïà.
  98.  
  99. pixmap   ëîãè÷åñêèé íîìåð áèòìàïà. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
  100.  
  101.  
  102. Áëîêèðîâàíèå áèòìàïà ìîæåò ñíèçèòü áûñòðîäåéñòâèå åñëè áèòìàï
  103. ñîçäàí ñ ôëàãàìè PX_MEM_LOCAL èëè PX_MEM_GART.
  104.  
  105.  
  106. Âîçâðàùàåìîå çíà÷åíèå:  óêàçàòåëü íà íà÷àëî äàííûõ áèòìàïà
  107.                         èëè NULL â ñëó÷àå íåóäà÷è.
  108.  
  109.  
  110.  
  111.  
  112. int GetPixmapPitch(handle pixmap)
  113.  
  114. Ïîëó÷èòü øèðèíó ñòðîêè áèòìàïà â áàéòàõ.
  115.  
  116. pixmap   ëîãè÷åñêèé íîìåð áèòìàïà. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
  117.  
  118.  
  119. Áèòìàï äîëæåí áûòü çàáëîêèðîâàí âûçîâîì LockPixmap
  120.  
  121. Âîçâðàùàåìîå çíà÷åíèå: øèðèíà ñòðîêè áèòìàïà â áàéòàõ èëè 0 â ñëó÷àå íåóäà÷è.
  122.  
  123.  
  124.  
  125.  
  126. int UnlockPixmap(handle pixmap)
  127.  
  128.  
  129. Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
  130.  
  131.  
  132.  
  133. int ClearPixmap(handle pixmap, color_t color)
  134.  
  135. Çàïîëíÿåò áèòìàï óêàçàííûì öâåòîì;
  136.  
  137. pixmap       ëîãè÷åñêèé íîìåð áèòìàïà. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
  138.  
  139. color        öâåò â ôîðìàòå ARGB32
  140.  
  141.  
  142. Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
  143.  
  144.  
  145.  
  146.  
  147. int Line(handle pixmap, int x0, int y0, int x1, int y1, color_t color)
  148.  
  149. Íàðèñîâàòü ñïëîøíóþ ëèíèþ óêàçàíîãî öâåòà òîëùèíîé â 1 ïèêñåëü.
  150.  
  151. pixmap       ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñÿ îòðèñîâêà.
  152.              SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà
  153.  
  154. x0,y0 x1,y1  êîîðäèíàòû íà÷àëüíîé è êîíå÷íîé òî÷åê ëèíèèè
  155.  
  156. color        öâåò â ôîðìàòå ARGB32
  157.  
  158.  
  159. Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
  160.  
  161.  
  162.  
  163.  
  164. int DrawRect(handle pixmap, int xorg, int yorg,
  165.              int width, int height,
  166.              color_t dst_color, color_t border)
  167.  
  168. Íàðèñîâàòü ñïëîøíîé ïðÿìîóãëüíèê óêàçàíîãî öâåòà c îêàíòîâêîé.
  169.  
  170. pixmap     ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñÿ îòðèñîâêà.
  171.            SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà
  172.  
  173. xorg,yorg  êîîðäèíàòû ëåâîãî âåðõíåãî óãëà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
  174.  
  175. width      øèðèíà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
  176.  
  177. height     âûñîòà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
  178.  
  179. color      öâåò ïðÿìîóãîëüíèêà â ôîðìàòå ARGB32
  180.  
  181. border     öâåò îêàíòîâêè â ôîðìàòå ARGB32. Òîëùèíà îêàíòîâêè 1 ïèêñåë.
  182.  
  183.  
  184. Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
  185.  
  186.  
  187.  
  188.  
  189. int FillRect(handle pixmap, int xorg, int yorg,
  190.              int width, int height,
  191.              brush_t *brush, color_t border)
  192.  
  193. Íàðèñîâàòü ïðÿìîóãîëüíèê èñïîëüçóÿ êèñòü
  194.  
  195. pixmap     ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñÿ îòðèñîâêà.
  196.            SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà
  197.  
  198. xorg,yorg  êîîðäèíàòû ëåâîãî âåðõíåãî óãëà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
  199.  
  200. width      øèðèíà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
  201.  
  202. height     âûñîòà ïðÿìîóãîëüíèêà â ïèêñåëÿõ
  203.  
  204. brush      ìîíîõðîìíàÿ êèñòü ðàçìåðîì 8õ8 ïèêñåëåé
  205.  
  206. border     öâåò îêàíòîâêè â ôîðìàòå ARGB32. Òîëùèíà îêàíòîâêè 1 ïèêñåë.
  207.            Îêàíòîâêà íå ðèñóåòñÿ åñëè àëüôà êîìïîíåí öâåòà ðàâåí 0.
  208.  
  209.  
  210. Êèñòü äîëæíà áûòü ñîçäàíà CreateHatch èëè CreateMonoBrush.
  211.  
  212.  
  213. Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
  214.  
  215.  
  216.  
  217.  
  218. int Blit(handle dst_pixmap, int dst_x, int dst_y,
  219.          handle src_pixmap, int src_x, int src_y,
  220.          int width, int height)
  221.  
  222. Ñêîïèðîâàòü ïðÿìîóãîëüíóþ îáëàñòü ïèêñåëåé.
  223.  
  224. dst_pixmap    ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñ
  225.               êîïèðîâàíèå. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
  226.  
  227. dst_x, dst_y  êîîðäèíàòû ëåâîãî âåðõíåãî óãëà îáëàñòè íàçíà÷åíè
  228.  
  229. src_pixmap    ëîãè÷åñêèé íîìåð áèòìàïà - èñòî÷íèêà ïèêñåëåé.
  230.               SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
  231.  
  232. src_x,src_y   êîîðäèíàòû ëåâîãî âåðõíåãî óãëà êîïèðóåìîé îáëàñòè
  233.  
  234. width         øèðèíà êîïèðóåìîé îáëàñòè
  235.  
  236. height        âûñîòà êîïèðóåìîé îáëàñòè
  237.  
  238. Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
  239.  
  240.  
  241.  
  242.  
  243. int TransparentBlit(handle dst_pixmap, int dst_x, int dst_y,
  244.          handle src_pixmap, int src_x, int src_y,
  245.          int width, int height, color_t key)
  246.  
  247. Ñêîïèðîâàòü ïðÿìîóãîëüíóþ îáëàñòü ïèêñåëåé èñïîëüçóÿ ïðîçðà÷íûé öâåò.
  248.  
  249. dst_pixmap    ëîãè÷åñêèé íîìåð áèòìàïà â êîòîðûé áóäåò ïðîèçâîäèòñ
  250.               êîïèðîâàíèå. SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
  251.  
  252. dst_x, dst_y  êîîðäèíàòû ëåâîãî âåðõíåãî óãëà îáëàñòè íàçíà÷åíè
  253.  
  254. src_pixmap    ëîãè÷åñêèé íîìåð áèòìàïà - èñòî÷íèêà ïèêñåëåé.
  255.               SCR_PIXMAP äëÿ ïåðâè÷íîãî ýêðàíà.
  256.  
  257. src_x,src_y   êîîðäèíàòû ëåâîãî âåðõíåãî óãëà êîïèðóåìîé îáëàñòè
  258.  
  259. width         øèðèíà êîïèðóåìîé îáëàñòè
  260.  
  261. height        âûñîòà êîïèðóåìîé îáëàñòè
  262.  
  263. key           ïðîçðà÷íûé öâåò â ôîðìàòå ARGB32
  264.  
  265.  
  266. Ôóíêöèÿ íå êîïèðóåò ïèêñåëè öâåò êîòîðûõ ñîâïàäàåò ñ key.
  267.  
  268.  
  269. Âîçâðàùàåìîå çíà÷åíèå: ERR_OK â ñëó÷àå óñïåõà èëè ERR_PARAM â ñëó÷àå íåóäà÷è.
  270.