The StyleKey class is a smart pointer to a database object. More...
#include <hps.h>
Public Member Functions | |
StyleKey () | |
The default constructor creates an uninitialized StyleKey object. More... | |
StyleKey (Key const &in_that) | |
This constructor creates an StyleKey object that shares the underlying smart-pointer of the source Key. More... | |
StyleKey (StyleKey const &in_that) | |
The copy constructor creates a StyleKey object that shares the underlying smart-pointer of the source StyleKey. More... | |
StyleKey & | operator= (StyleKey const &other) |
Associate this StyleKey with the same underlying impl as the source StyleKey. More... | |
StyleKey (StyleKey &&in_that) | |
The move constructor creates a StyleKey by transferring the underlying impl of the rvalue reference to this StyleKey thereby avoiding a copy and allocation. More... | |
StyleKey & | operator= (StyleKey &&in_that) |
The move assignment operator transfers the underlying impl of the rvalue reference to this StyleKey thereby avoiding a copy. More... | |
~StyleKey () | |
HPS::Type | ObjectType () const |
bool | ShowSource (Style::Type &out_type, SegmentKey &out_segment, UTF8 &out_name) const |
Shows the source for this StyleKey. More... | |
StyleKey & | SetConditionalExpression (ConditionalExpression const &in_conditional) |
Sets a conditional expression on this StyleKey. More... | |
StyleKey & | UnsetConditionalExpression () |
Removes the conditional expression on this StyleKey. More... | |
bool | ShowConditionalExpression (ConditionalExpression &out_conditional) const |
Shows the conditional expression for this StyleKey. More... | |
StyleKey & | SetFilter (AttributeLock::Type in_type) |
Sets an attribute filter on this StyleKey. More... | |
StyleKey & | SetFilter (size_t in_count, AttributeLock::Type const in_types[]) |
Sets an array of attribute filters on this StyleKey. More... | |
StyleKey & | SetFilter (AttributeLockTypeArray const &in_types) |
Sets an array of attribute filters on this StyleKey. More... | |
StyleKey & | UnsetFilter (AttributeLock::Type in_type) |
Removes an attribute filter from this StyleKey. More... | |
StyleKey & | UnsetFilter (size_t in_count, AttributeLock::Type const in_types[]) |
Removes an array of attribute filters from this StyleKey. More... | |
StyleKey & | UnsetFilter (AttributeLockTypeArray const &in_types) |
Removes an array of attribute filters from this StyleKey. More... | |
bool | ShowFilter (AttributeLockTypeArray &out_types) const |
Shows an array of the current attribute filters on this StyleKey. More... | |
bool | ShowFilter (HPS::AttributeLock::Type in_type) const |
Tests if a specific attribute filter is set on this StyleKey. More... | |
bool | HasOwner () const |
SegmentKey | Up () const |
SegmentKey | Owner () const |
void | Delete () |
Removes the database object referred to by this key. More... | |
void | MoveTo (SegmentKey const &in_new_owner) |
Moves the database object referred to by this key into a new containing segment pointed to by in_new_owner. More... | |
Key | CopyTo (SegmentKey const &in_destination) const |
Copies the database object referred to by this key into a segment pointed to by in_destination. More... | |
virtual void | Assign (Key const &in_that) |
Share the underlying smart-pointer of the Key source. More... | |
bool | Equals (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
bool | operator!= (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
bool | operator== (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
size_t | GetHash () const |
Returns a hash code for the key. More... | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. More... | |
virtual bool | Empty () const |
Indicates whether this object has any values set on it. More... | |
virtual void | Reset () |
Resets this object to its initial, uninitialized state. More... | |
bool | HasType (HPS::Type in_mask) const |
This function indicates whether this Object has the given Type mask. More... | |
intptr_t | GetClassID () const |
Returns a unique identifier that is shared by all objects of the same class. More... | |
intptr_t | GetInstanceID () const |
Returns an identifier that can be used to identify which instance of a class an object is. More... | |
Static Public Member Functions | |
template<typename T > | |
static intptr_t | ClassID () |
Unique identifier for this class. More... | |
Static Public Attributes | |
static const HPS::Type | staticType = HPS::Type::StyleKey |
The StyleKey class is a smart pointer to a database object.
It is a handle to a style key created by StyleControl::PushSegment.
HPS::StyleKey::StyleKey | ( | ) |
The default constructor creates an uninitialized StyleKey object.
The Type() function will return Type::None.
|
explicit |
This constructor creates an StyleKey object that shares the underlying smart-pointer of the source Key.
The copy will only be successful if the source key is really an upcast of a style key. Otherwise the copy will fail and the resulting StyleKey will be invalid.
in_key | The source Key to copy. |
HPS::StyleKey::StyleKey | ( | StyleKey const & | in_that | ) |
HPS::StyleKey::StyleKey | ( | StyleKey && | in_that | ) |
HPS::StyleKey::~StyleKey | ( | ) |
|
virtualinherited |
|
inlinestaticinherited |
Unique identifier for this class.
Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.
|
inherited |
Copies the database object referred to by this key into a segment pointed to by in_destination.
|
inherited |
Removes the database object referred to by this key.
|
inlinevirtualinherited |
Indicates whether this object has any values set on it.
Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
Empty keys (when key.Empty() returns true) are never equal to any key, even when the key is compared against itself (they act analogously to NaN comparisons in this case.)
|
inherited |
Returns a unique identifier that is shared by all objects of the same class.
|
inherited |
Returns a hash code for the key.
|
inherited |
Returns an identifier that can be used to identify which instance of a class an object is.
Different keys and controls will return the same value if they are backed by the same database resource.
|
inherited |
|
inherited |
|
inherited |
Moves the database object referred to by this key into a new containing segment pointed to by in_new_owner.
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
|
inherited |
|
virtualinherited |
Resets this object to its initial, uninitialized state.
Reimplemented in HPS::EventHandler, HPS::EventDispatcher, HPS::World, HPS::HighlightSearchResults, HPS::HighlightSearchResultsIterator, HPS::SelectionResults, HPS::SelectionResultsIterator, HPS::FontSearchResults, HPS::FontSearchResultsIterator, HPS::SearchResults, and HPS::SearchResultsIterator.
StyleKey& HPS::StyleKey::SetConditionalExpression | ( | ConditionalExpression const & | in_conditional | ) |
Sets a conditional expression on this StyleKey.
This will either make an unconditional style into a conditional style, or modify the condition for an existing conditional style. The target segment referenced by this style will only be styled in if a condition satisfying the given conditional expression is set above this style in the tree.
in_conditional | The conditional expression for this StyleKey. |
StyleKey& HPS::StyleKey::SetFilter | ( | AttributeLock::Type | in_type | ) |
StyleKey& HPS::StyleKey::SetFilter | ( | size_t | in_count, |
AttributeLock::Type const | in_types[] | ||
) |
Sets an array of attribute filters on this StyleKey.
Attribute filters block the specified attributes set on the source style segment from taking effect for this StyleKey.
in_count | The size of the attribute filter array. |
in_types | The array of attribute filters to set for this StyleKey. |
StyleKey& HPS::StyleKey::SetFilter | ( | AttributeLockTypeArray const & | in_types | ) |
bool HPS::StyleKey::ShowConditionalExpression | ( | ConditionalExpression & | out_conditional | ) | const |
bool HPS::StyleKey::ShowFilter | ( | AttributeLockTypeArray & | out_types | ) | const |
Shows an array of the current attribute filters on this StyleKey.
Attribute filters block the specified attributes set on the source style segment from taking effect for this StyleKey.
out_types | The array of attribute filters currently set on this StyleKey. |
bool HPS::StyleKey::ShowFilter | ( | HPS::AttributeLock::Type | in_type | ) | const |
Tests if a specific attribute filter is set on this StyleKey.
Attribute filters block the specified attributes set on the source style segment from taking effect for this StyleKey.
in_type | The attribute filter to test on this StyleKey. |
bool HPS::StyleKey::ShowSource | ( | Style::Type & | out_type, |
SegmentKey & | out_segment, | ||
UTF8 & | out_name | ||
) | const |
Shows the source for this StyleKey.
out_type | The type of source for this StyleKey. This field indicates which of the following arguments are valid. |
out_segment | The segment source for this StyleKey. This is only valid if out_type is Style::Type::Segment. |
out_name | The name source for this StyleKey. This is only valid if out_type is Style::Type::Named. |
|
virtualinherited |
This function returns the true type of the underlying object.
This function is useful for finding the type of smart pointer objects that have been cast to more generic types.
Reimplemented in HPS::UpdateOptionsControl, HPS::HighlightControl, HPS::SelectionOptionsControl, HPS::OffScreenWindowOptionsControl, HPS::ApplicationWindowOptionsControl, HPS::StandAloneWindowOptionsControl, HPS::AttributeLockControl, HPS::WindowInfoControl, HPS::DebuggingControl, HPS::SubwindowControl, HPS::ContourLineControl, HPS::VisualEffectsControl, HPS::TransformMaskControl, HPS::PostProcessEffectsControl, HPS::DrawingAttributeControl, HPS::HiddenLineAttributeControl, HPS::PerformanceControl, HPS::NURBSSurfaceAttributeControl, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::CurveAttributeControl, HPS::EdgeAttributeControl, HPS::LineAttributeControl, HPS::TextAttributeControl, HPS::CuttingSectionAttributeControl, HPS::CylinderAttributeControl, HPS::LightingAttributeControl, HPS::SphereAttributeControl, HPS::MarkerAttributeControl, HPS::CullingControl, HPS::ColorInterpolationControl, HPS::TransparencyControl, HPS::SelectabilityControl, HPS::CameraControl, HPS::VisibilityControl, HPS::BoundingControl, HPS::Kit, and HPS::Control.
StyleKey& HPS::StyleKey::UnsetConditionalExpression | ( | ) |
StyleKey& HPS::StyleKey::UnsetFilter | ( | AttributeLock::Type | in_type | ) |
StyleKey& HPS::StyleKey::UnsetFilter | ( | size_t | in_count, |
AttributeLock::Type const | in_types[] | ||
) |
Removes an array of attribute filters from this StyleKey.
Attribute filters block the specified attributes set on the source style segment from taking effect for this StyleKey.
in_count | The size of the attribute filter array. |
in_types | The array of attribute filters to remove from this StyleKey. |
StyleKey& HPS::StyleKey::UnsetFilter | ( | AttributeLockTypeArray const & | in_types | ) |
|
inherited |
|
static |