Drawing complex surface objects

Interactive surface objects

Since the last update of the Canvas object it is possible to draw simple geometric shapes like lines, circles or rectangles. These objects can be created during runtime. Attributes like frame color, fill color or line width can be changed. Complex processes can also be displayed more clearly by means of such diagrams or graphics. Up to now, these graphic objects lacked interaction possibilities. To fill this gap, it is now possible to place surface objects in the canvas object. These include various forms of buttons, labels, edits and lists. Like the Geometric objects, the available surface objects are created dynamically during runtime. New conzept 16-commands are available for converting the pixel coordinates commonly used for surface objects into logical coordinates. Besides that, the available properties and functionalities are congruent with those available in the conzept 16-Designer.

MouseMove addition

The Canvas object now offers silmultaneous integration of selected surface objects and application of the EvtMouseMove event. This can now be used in combination with a HitTest method to display information about window objects when the mouse pointer hovers over an object.

Available objects

Since not every object from the concept 16-designer offers a useful application within the canvas object, the choice of drawable objects is limited. Below is the complete list of usable objects.

Animation
BigIntEdit
Button
Checkbox
ColorButton
ColorEdit
DateEdit
DataList
DecimalEdit
Edit
FloatEdit
FontNameEdit
FontSizeEdit
GroupBox
HyperLink
Icon
IntEdit
Label
MenuButton
MetaPicture
Picture
Radiobutton
RecList
RtfEdit
TextEdit
TimeEdit

Example of application

As usual, objects can be created during runtime by WinCreate():

tObject # WinCreate(_WinTypeButton, 'MyButton');
//Set StyleTheme
tObject->wpStyleTheme # _WinStyleThemeSystem;
//Add object to Canvas
MyCanvas->WinAdd(tObject);

 

For converting pixel coordinates into logical units to display the position of surface objects:

// Pixel coordinate of the upper left corner of the surface object 'WinObject'.
tPoint # PointMake(WinObject->wpAreaLeft, WinObject->wpAreaTop);
// Convert to logical units.
tPoint # MyCanvas->WinCanvasLogUnit(tPoint);
// Convert logical units to millimeters (e.g. for display).
tLogPosX # PrtUnit(tPoint1:x, _PrtUnitMillimetres);
tLogPosY # PrtUnit(tPoint1:y, _PrtUnitMillimetres);

 

Summary

The Canvas object can now provide interaction in addition to displaying graphs and charts. Furthermore, diagrams can use the added surface objects to display applications. All in all, thanks to the new features, the Canvas object offers a broader range of applications and thus increases its value as a building block for professional process visualization.

Leave a Reply

Your email address will not be published. Required fields are marked *

Leave the field below empty!

Get your Trial Version now!

Test yeet free of charge

Deine Trial Version - jetzt anfordern!

Teste yeet - unverbindlich und kostenfrei

IHRE EVALUIERUNGSLIZENZ - JETZT ANFORDERN!

TESTEN SIE DIE CONZEPT 16 VOLLVERSION - UNVERBINDLICH und KOSTENFREI

Subscribe to our newsletter

[cleverreach_signup]
WordPress Cookie Notice by Real Cookie Banner