System::Drawing::Drawing2D::CustomLineCap Class Reference

Inherits System::Object.

Inherited by System::Drawing::Drawing2D::AdjustableArrowCap.

Public Member Functions

 CustomLineCap (const SharedPtr< GraphicsPath > &fillPath, const SharedPtr< GraphicsPath > &strokePath, LineCap baseCap=LineCap::Flat, float baseInset=0)
 
void SetStrokeCaps (LineCap startCap, LineCap endCap)
 
void GetStrokeCaps (LineCap &startCap, LineCap &endCap)
 
virtual SharedPtr< CustomLineCapClone ()
 Returns a copy of the current object. More...
 
LineCap get_BaseCap () const
 Returns the base line cap from which this custom cap is created. More...
 
void set_BaseCap (LineCap value)
 
float get_BaseInset () const
 Returns the distance between the line and the cap. More...
 
void set_BaseInset (float value)
 
LineJoin get_StrokeJoin () const
 Returns the LineJoin value which determines how lines of this custom cap are joined. More...
 
void set_StrokeJoin (LineJoin value)
 
float get_WidthScale () const
 Returns the scale of this custom cap. More...
 
void set_WidthScale (float value)
 
void Dispose ()
 Releases all operating system resources acquired by the current object. More...
 
- Public Member Functions inherited from System::Object
 Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ~Object ()
 Destroys object. Frees all internal data structures. More...
 
 Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared refernce counter. More...
 
void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual int GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual String ToString () ASPOSE_CONST
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual void SetTemplateWeakPtr (unsigned int argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Protected Member Functions

 CustomLineCap ()=default
 Default constructor for subclass creation. More...
 

Additional Inherited Members

- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 
typedef System::Details::SharedMembersType shared_members_type
 structure to keep list of shared pointers contained in object. More...
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Impleemnts C# typeof(System.Object) construct. More...
 

Detailed Description

Represents a user-defined line cap. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

Constructor & Destructor Documentation

◆ CustomLineCap() [1/2]

System::Drawing::Drawing2D::CustomLineCap::CustomLineCap ( const SharedPtr< GraphicsPath > &  fillPath,
const SharedPtr< GraphicsPath > &  strokePath,
LineCap  baseCap = LineCap::Flat,
float  baseInset = 0 
)

Constructs a new instance of CustomLineCap class that represents a user-defined line cap with the specified properties.

Parameters
fillPathSpecifies a fill for the custom cap
strokePathSpecifies an outline of the custom cap
baseCapThe base line cap from which the custom cap is created
baseInsetSpecifies the distance between the line and the cap

◆ CustomLineCap() [2/2]

System::Drawing::Drawing2D::CustomLineCap::CustomLineCap ( )
protecteddefault

Default constructor for subclass creation.

Member Function Documentation

◆ Clone()

virtual SharedPtr<CustomLineCap> System::Drawing::Drawing2D::CustomLineCap::Clone ( )
virtual

Returns a copy of the current object.

◆ Dispose()

void System::Drawing::Drawing2D::CustomLineCap::Dispose ( )
inline

Releases all operating system resources acquired by the current object.

◆ get_BaseCap()

LineCap System::Drawing::Drawing2D::CustomLineCap::get_BaseCap ( ) const

Returns the base line cap from which this custom cap is created.

◆ get_BaseInset()

float System::Drawing::Drawing2D::CustomLineCap::get_BaseInset ( ) const

Returns the distance between the line and the cap.

◆ get_StrokeJoin()

LineJoin System::Drawing::Drawing2D::CustomLineCap::get_StrokeJoin ( ) const

Returns the LineJoin value which determines how lines of this custom cap are joined.

◆ get_WidthScale()

float System::Drawing::Drawing2D::CustomLineCap::get_WidthScale ( ) const

Returns the scale of this custom cap.

◆ GetStrokeCaps()

void System::Drawing::Drawing2D::CustomLineCap::GetStrokeCaps ( LineCap startCap,
LineCap endCap 
)

Gets the start and end line caps of the custom cap represented by the current object.

Parameters
startCapThe output argument; Contains the start cap
endCapThe output argument; Contains the end cap

◆ set_BaseCap()

void System::Drawing::Drawing2D::CustomLineCap::set_BaseCap ( LineCap  value)

Sets the base line cap value for this custom cap

Parameters
valueNew base line cap value

◆ set_BaseInset()

void System::Drawing::Drawing2D::CustomLineCap::set_BaseInset ( float  value)

Sets the distance between the line and the cap

Parameters
valueNew distance value

◆ set_StrokeJoin()

void System::Drawing::Drawing2D::CustomLineCap::set_StrokeJoin ( LineJoin  value)

Sets the LineJoin value which determines how lines of this custom cap are joined

Parameters
valueNew stroke join value

◆ set_WidthScale()

void System::Drawing::Drawing2D::CustomLineCap::set_WidthScale ( float  value)

Sets the scale value of this custom cap

Parameters
valueNew scale value

◆ SetStrokeCaps()

void System::Drawing::Drawing2D::CustomLineCap::SetStrokeCaps ( LineCap  startCap,
LineCap  endCap 
)

Sets the start and end line caps of the custom cap represented by the current object.

Parameters
startCapThe start cap to set
endCapThe end cap to set