PlexyDesk : GPU accelerated Display Server for GNU/Linux and BSD
Search
PlexyDesk
Not logged in
Talk
Contributions
Create account
Log in
Open Desktop Systems Journal
Main page
Documentation
Architecture
Development
Components
News
Gallery
Community
Page
Discussion
Read
Edit
Edit source
View history
Editing
PlexyUI API
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Retained Path Drawing (Bezier) == These functions build retained vector paths and query rendered widget bounds. === <code>plexy_path_clear</code> === <pre>void plexy_path_clear(PlexyWindow* win);</pre> Clear any retained path drawing commands. ==== Parameters ==== {| class="wikitable" |- ! Parameter !! Type !! Description |- | <code>win</code> || <code>PlexyWindow*</code> || Window handle that owns or contains the widget tree. |} === <code>plexy_path_begin</code> === <pre>void plexy_path_begin(PlexyWindow* win);</pre> Start defining a new retained path. ==== Parameters ==== {| class="wikitable" |- ! Parameter !! Type !! Description |- | <code>win</code> || <code>PlexyWindow*</code> || Window handle that owns or contains the widget tree. |} === <code>plexy_path_move_to</code> === <pre>void plexy_path_move_to(PlexyWindow* win, float x, float y);</pre> Move the current drawing cursor to a new position. ==== Parameters ==== {| class="wikitable" |- ! Parameter !! Type !! Description |- | <code>win</code> || <code>PlexyWindow*</code> || Window handle that owns or contains the widget tree. |- | <code>x</code> || <code>float</code> || X coordinate or output storage for the X position. |- | <code>y</code> || <code>float</code> || Y coordinate or output storage for the Y position. |} === <code>plexy_path_line_to</code> === <pre>void plexy_path_line_to(PlexyWindow* win, float x, float y);</pre> Append a straight line segment to the current path. ==== Parameters ==== {| class="wikitable" |- ! Parameter !! Type !! Description |- | <code>win</code> || <code>PlexyWindow*</code> || Window handle that owns or contains the widget tree. |- | <code>x</code> || <code>float</code> || X coordinate or output storage for the X position. |- | <code>y</code> || <code>float</code> || Y coordinate or output storage for the Y position. |} === <code>plexy_path_bezier_to</code> === <pre>void plexy_path_bezier_to(PlexyWindow* win, float cp1x, float cp1y, float cp2x, float cp2y, float x, float y);</pre> Append a cubic Bezier curve to the current path. ==== Parameters ==== {| class="wikitable" |- ! Parameter !! Type !! Description |- | <code>win</code> || <code>PlexyWindow*</code> || Window handle that owns or contains the widget tree. |- | <code>cp1x</code> || <code>float</code> || First Bezier control point X coordinate. |- | <code>cp1y</code> || <code>float</code> || First Bezier control point Y coordinate. |- | <code>cp2x</code> || <code>float</code> || Second Bezier control point X coordinate. |- | <code>cp2y</code> || <code>float</code> || Second Bezier control point Y coordinate. |- | <code>x</code> || <code>float</code> || X coordinate or output storage for the X position. |- | <code>y</code> || <code>float</code> || Y coordinate or output storage for the Y position. |} === <code>plexy_path_set_stroke</code> === <pre>void plexy_path_set_stroke(PlexyWindow* win, float r, float g, float b, float a, float width);</pre> Set stroke color and width for retained path drawing. ==== Parameters ==== {| class="wikitable" |- ! Parameter !! Type !! Description |- | <code>win</code> || <code>PlexyWindow*</code> || Window handle that owns or contains the widget tree. |- | <code>r</code> || <code>float</code> || Red color component. |- | <code>g</code> || <code>float</code> || Green color component. |- | <code>b</code> || <code>float</code> || Blue color component. |- | <code>a</code> || <code>float</code> || Alpha or opacity component. |- | <code>width</code> || <code>float</code> || Requested width in pixels. |} === <code>plexy_path_stroke</code> === <pre>void plexy_path_stroke(PlexyWindow* win);</pre> Render the current retained path as a stroke. ==== Parameters ==== {| class="wikitable" |- ! Parameter !! Type !! Description |- | <code>win</code> || <code>PlexyWindow*</code> || Window handle that owns or contains the widget tree. |} === <code>plexy_widget_bounds</code> === <pre>int plexy_widget_bounds(PlexyWindow* win, uint32_t widget_id, float* x, float* y, float* width, float* height);</pre> Query the current bounds of a widget. ==== Parameters ==== {| class="wikitable" |- ! Parameter !! Type !! Description |- | <code>win</code> || <code>PlexyWindow*</code> || Window handle that owns or contains the widget tree. |- | <code>widget_id</code> || <code>uint32_t</code> || Widget ID of the target control or container. |- | <code>x</code> || <code>float*</code> || X coordinate or output storage for the X position. |- | <code>y</code> || <code>float*</code> || Y coordinate or output storage for the Y position. |- | <code>width</code> || <code>float*</code> || Requested width in pixels. |- | <code>height</code> || <code>float*</code> || Requested height in pixels. |} * '''Returns:''' An integer status or result code.
Summary:
Please note that all contributions to PlexyDesk - Display Server for GNU/Linux may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Project:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)