MCUXpresso_LPC55S69/boards/lpcxpresso55s69/ew_gui_examples/ew_gui_waveform_generator/GeneratedCode/_ViewsLine.h
2022-04-08 22:42:47 +08:00

163 lines
7.0 KiB
C

/*******************************************************************************
*
* E M B E D D E D W I Z A R D P R O J E C T
*
* Copyright (c) TARA Systems GmbH
* written by Paul Banach and Manfred Schweyer
*
********************************************************************************
*
* This software is delivered "as is" and shows the usage of other software
* components. It is provided as an example software which is intended to be
* modified and extended according to particular requirements.
*
* TARA Systems hereby disclaims all warranties and conditions with regard to the
* software, including all implied warranties and conditions of merchantability
* and non-infringement of any third party IPR or other rights which may result
* from the use or the inability to use the software.
*
* This file was generated automatically by Embedded Wizard Studio.
*
* Please do not make any modifications of this file! The modifications are lost
* when the file is generated again by Embedded Wizard Studio!
*
* Version : 10.0
* Date : 17.02.2021 8:00:50
* Profile : NxpLpc
* Platform : NXP.LPC.RGB565
*
*******************************************************************************/
#ifndef _ViewsLine_H
#define _ViewsLine_H
#ifdef __cplusplus
extern "C"
{
#endif
#include "ewrte.h"
#if EW_RTE_VERSION != 0x000A0000
#error Wrong version of Embedded Wizard Runtime Environment.
#endif
#include "ewgfx.h"
#if EW_GFX_VERSION != 0x000A0000
#error Wrong version of Embedded Wizard Graphics Engine.
#endif
#include "_CoreLineView.h"
/* Forward declaration of the class Core::Group */
#ifndef _CoreGroup_
EW_DECLARE_CLASS( CoreGroup )
#define _CoreGroup_
#endif
/* Forward declaration of the class Core::LayoutContext */
#ifndef _CoreLayoutContext_
EW_DECLARE_CLASS( CoreLayoutContext )
#define _CoreLayoutContext_
#endif
/* Forward declaration of the class Core::View */
#ifndef _CoreView_
EW_DECLARE_CLASS( CoreView )
#define _CoreView_
#endif
/* Forward declaration of the class Graphics::Canvas */
#ifndef _GraphicsCanvas_
EW_DECLARE_CLASS( GraphicsCanvas )
#define _GraphicsCanvas_
#endif
/* Forward declaration of the class Views::Line */
#ifndef _ViewsLine_
EW_DECLARE_CLASS( ViewsLine )
#define _ViewsLine_
#endif
/* The class Views::Line provides a kind of view specialized to draw a single straight
line segment. The end positions of the line are determined by the properties
@Point1 and @Point2. The color of the line is defined by the property @Color.
Alternatively, the line can be drawn with a color gradient specified by the properties
@Color1 and @Color2. The thickness of the line is 1 pixel unless the properties
@Width1 or @Width2 have been modified. Lines with the thickness greatest than
1 pixel are drawn as filled polygons.
The visibility of the line is controlled by the properties @Visible, @AlphaBlended
and @Embedded. In particular the property @Embedded can determine whether the
corresponding view is limited (== embedded) to the boundary of a sibling Core::Outline
view or not. The embedding of views within a Core::Outline allows a kind of sub-groups
within the GUI component itself. Very useful for any kind of scrollable lists,
menus, etc. */
EW_DEFINE_FIELDS( ViewsLine, CoreLineView )
EW_PROPERTY( Width2, XInt32 )
EW_PROPERTY( Width1, XInt32 )
EW_PROPERTY( Color2, XColor )
EW_PROPERTY( Color1, XColor )
EW_END_OF_FIELDS( ViewsLine )
/* Virtual Method Table (VMT) for the class : 'Views::Line' */
EW_DEFINE_METHODS( ViewsLine, CoreLineView )
EW_METHOD( initLayoutContext, void )( CoreLineView _this, XRect aBounds, CoreOutline
aOutline )
EW_METHOD( GetRoot, CoreRoot )( CoreView _this )
EW_METHOD( Draw, void )( ViewsLine _this, GraphicsCanvas aCanvas,
XRect aClip, XPoint aOffset, XInt32 aOpacity, XBool aBlend )
EW_METHOD( HandleEvent, XObject )( CoreView _this, CoreEvent aEvent )
EW_METHOD( CursorHitTest, CoreCursorHit )( CoreView _this, XRect aArea, XInt32
aFinger, XInt32 aStrikeCount, CoreView aDedicatedView, XSet aRetargetReason )
EW_METHOD( ArrangeView, XPoint )( CoreLineView _this, XRect aBounds, XEnum
aFormation )
EW_METHOD( MoveView, void )( CoreLineView _this, XPoint aOffset, XBool
aFastMove )
EW_METHOD( GetExtent, XRect )( ViewsLine _this )
EW_METHOD( ChangeViewState, void )( CoreView _this, XSet aSetState, XSet aClearState )
EW_END_OF_METHODS( ViewsLine )
/* The method Draw() is invoked automatically if parts of the view should be redrawn
on the screen. This can occur when e.g. the view has been moved or the appearance
of the view has changed before.
Draw() is invoked automatically by the framework, you never will need to invoke
this method directly. However you can request an invocation of this method by
calling the method InvalidateArea() of the views @Owner. Usually this is also
unnecessary unless you are developing your own view.
The passed parameters determine the drawing destination aCanvas and the area
to redraw aClip in the coordinate space of the canvas. The parameter aOffset
contains the displacement between the origin of the views owner and the origin
of the canvas. You will need it to convert views coordinates into these of the
canvas.
The parameter aOpacity contains the opacity descended from this view's @Owner.
It lies in range 0 .. 255. If the view implements its own 'Opacity', 'Color',
etc. properties, the Draw() method should calculate the resulting real opacity
by mixing the values of these properties with the one passed in aOpacity parameter.
The parameter aBlend contains the blending mode descended from this view's @Owner.
It determines, whether the view should be drawn with alpha-blending active or
not. If aBlend is false, the outputs of the view should overwrite the corresponding
pixel in the drawing destination aCanvas. If aBlend is true, the outputs should
be mixed with the pixel already stored in aCanvas. For this purpose all Graphics
Engine functions provide a parameter to specify the mode for the respective drawing
operation. If the view implements its own 'Blend' property, the Draw() method
should calculate the resulting real blend mode by using logical AND operation
of the value of the property and the one passed in aBlend parameter. */
void ViewsLine_Draw( ViewsLine _this, GraphicsCanvas aCanvas, XRect aClip, XPoint
aOffset, XInt32 aOpacity, XBool aBlend );
/* The method GetExtent() returns the position and the size of the view relative
to the origin of its @Owner. In case of views with a non rectangular shape the
method returns the rectangular boundary area enclosing the entire shape. */
XRect ViewsLine_GetExtent( ViewsLine _this );
/* 'C' function for method : 'Views::Line.OnSetColor()' */
void ViewsLine_OnSetColor( ViewsLine _this, XColor value );
#ifdef __cplusplus
}
#endif
#endif /* _ViewsLine_H */
/* Embedded Wizard */