sprk.h
19 # pragma warning(disable: 4251) //Not an issue as long as debug and release libraries aren't mixed
100 typedef std::vector<HighlightOptionsKit, Allocator<HighlightOptionsKit>> HighlightOptionsKitArray;
178 UpdateNotifier UpdateWithNotifier(HPS::Window::UpdateType in_type, HPS::Time in_time_limit = -1.0) const;
311 HPS::View & ComputeFitWorldCamera(BoundingKit const & in_bounding, HPS::CameraKit & out_camera);
318 HPS::View & ComputeFitWorldCamera(SegmentKey const & in_segment, MatrixKit const & in_transform, HPS::CameraKit & out_camera);
326 HPS::View & ComputeFitWorldCamera(BoundingKit const & in_bounding, MatrixKit const & in_transform, HPS::CameraKit & out_camera);
466 UpdateNotifier UpdateWithNotifier(HPS::Window::UpdateType in_type, HPS::Time in_time_limit = -1.0) const;
557 UpdateNotifier UpdateWithNotifier(HPS::Window::UpdateType in_type, HPS::Time in_time_limit = -1.0) const;
593 void AttachViewFront(View const & in_view, HPS::Rectangle const & in_position = HPS::Rectangle(-1.0f, 1.0f, -1.0f, 1.0f));
597 void AttachViewBack(View const & in_view, HPS::Rectangle const & in_position = HPS::Rectangle(-1.0f, 1.0f, -1.0f, 1.0f));
676 UpdateNotifier UpdateWithNotifier(HPS::Window::UpdateType in_type, HPS::Time in_time_limit = -1.0) const;
836 : Event(), layout(in_layout), action(Action::AllLayers), layer(std::numeric_limits<size_t>::max()), view(in_view)
1039 CameraChangedEvent const * that_event = static_cast<CameraChangedEvent const *>(in_that_event);
1069 SprocketPath(Model const & in_model, View const & in_view, Layout const & in_layout, Canvas const & in_canvas);
1070 SprocketPath(Canvas const & in_canvas, Layout const & in_layout, View const & in_view, Model const & in_model);
1110 Operator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
1144 virtual bool OnMouseDown(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1149 virtual bool OnMouseUp(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1154 virtual bool OnMouseMove(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1159 virtual bool OnMouseWheel(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1164 virtual bool OnMouseEnter(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1169 virtual bool OnMouseLeave(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1174 virtual bool OnTouchDown(TouchState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1179 virtual bool OnTouchUp(TouchState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1184 virtual bool OnTouchMove(TouchState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1189 virtual bool OnKeyDown(KeyboardState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1194 virtual bool OnKeyUp(KeyboardState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1199 virtual bool OnTextInput(HPS::UTF8 const & in_text) { HPS_UNREFERENCED(in_text); return false; }
1204 virtual bool OnTimerTick(HPS::TimerTickEvent const & in_event) { HPS_UNREFERENCED(in_event); return false; }
1208 virtual void OnViewAttached(HPS::View const & in_attached_view) { HPS_UNREFERENCED(in_attached_view); return; }
1212 virtual void OnViewDetached(HPS::View const & in_detached_view) { HPS_UNREFERENCED(in_detached_view); return; }
1238 virtual bool IsMouseTriggered(MouseState const & in_state) { return in_state.HasAll(mouse_trigger, modifier_trigger); }
1352 OperatorControl & Push(OperatorPtr const & in_operator, Operator::Priority in_priority = Operator::Priority::Default);
1360 OperatorControl & Push(Operator * in_operator, Operator::Priority in_priority = Operator::Priority::Default);
1386 OperatorControl & Set(OperatorPtr const & in_operator, Operator::Priority in_priority = Operator::Priority::Default);
1394 OperatorControl & Set(Operator * in_operator, Operator::Priority in_priority = Operator::Priority::Default);
1401 OperatorControl & Set(OperatorPtrArray & in_operators, Operator::Priority in_priority = Operator::Priority::Default);
1409 OperatorControl & Set(size_t in_count, OperatorPtr in_operators [], Operator::Priority in_priority = Operator::Priority::Default);
1505 NavigationCubeControl & SetLocation(Location in_location, HPS::Rectangle const & in_rectangle = HPS::Rectangle(), HPS::IntRectangle in_offsets = HPS::IntRectangle::Zero());
1604 NavigationCubeControl & SetText(const char * in_back_string, const char * in_top_string, const char * in_left_string,
1616 * \return <span class='code'>true</span> if the navigation cube text was retrieved successfully, <span class='code'>false</span> otherwise. */
1684 HPS::AxisTriadControl & SetLocation(Location in_location, HPS::Rectangle const & in_position = HPS::Rectangle(), HPS::IntRectangle in_offsets = HPS::IntRectangle::Zero());
1878 Standard, // subcomponents will be deleted if they don't have multiple owners, otherwise their reference count will be decremented
1880 StandardAndExchange // Subcomponent will deleted if they don't have multiple owners, otherwise their reference count will be decremented.
2290 void Highlight(Canvas const & in_canvas, HighlightOptionsKit const & in_options, bool in_remove_existing = true) const;
2298 void Highlight(Canvas const & in_canvas, size_t in_layer, HighlightOptionsKit const & in_options, bool in_remove_existing = true) const;
2303 void Unhighlight(Canvas const & in_canvas, HighlightOptionsKit const & in_options = HighlightOptionsKit()) const;
2309 void Unhighlight(Canvas const & in_canvas, size_t in_layer, HighlightOptionsKit const & in_options = HighlightOptionsKit()) const;
2374 static void Isolate(HPS::ComponentPathArray & in_component_paths, Canvas const & in_canvas, size_t in_layer = 0);
2397 static void ResetVisibility(HPS::ComponentPathArray & in_component_paths, Canvas const & in_canvas, size_t in_layer = 0);
2403 /* Access a Component in this ComponentPath object. An HPS::IndexOutOfRangeException exception is thrown if in_index is out of range.
2408 /* Access a Component in this ComponentPath object. An HPS::IndexOutOfRangeException exception is thrown if in_index is out of range.
2413 /* Inserts in_item in the ComponentPath before the element at position in_index, increasing the size of the ComponentPath by one.
2419 /* Traverses the components in this ComponentPath and removes the first one which matches in_item
2424 /* Removes the the component at position in_index from this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if in_index is out of range.
2428 /* Creates and returns a new ComponentPath object, with the components organized in the reverse order.
2432 /* Returns the first component of this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2436 /* Returns the first component of this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2440 /* Returns the last component of this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2444 /* Returns the last component of this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2448 /* Returns the first component of this ComponentPath and returns it. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2452 /* Returns the last component of this ComponentPath and returns it. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2491 * \return A constant iterator pointing to the last Component contained in this ComponentPath. */
2495 * \return A constant iterator pointing to the last Component contained in this ComponentPath. */
2499 * \return A constant iterator pointing to the first Component contained in this ComponentPath. */
2503 * \return A constant iterator pointing to the last Component contained in this ComponentPath. */
2507 * \return A reverse iterator pointing to the last Component contained in this ComponentPath. */
2511 * \return A reverse iterator pointing to the first Component contained in this ComponentPath. */
2514 /* Returns a constant reverse iterator pointing to the last Component contained in this ComponentPath
2515 * \return A constant reverse iterator pointing to the last Component contained in this ComponentPath. */
2519 * \return A constant iterator pointing to the first Component contained in this ComponentPath. */
2617 ComponentResetEvent(HPS::ComponentPath const & in_path, HPS::Canvas const & in_canvas, size_t in_layer = 0)
2661 ComponentShownEvent(HPS::ComponentPath const & in_path, HPS::Canvas const & in_canvas, size_t in_layer = 0)
2705 ComponentHiddenEvent(HPS::ComponentPath const & in_path, HPS::Canvas const & in_canvas, size_t in_layer = 0)
2750 ComponentIsolatedEvent(HPS::ComponentPath const & in_path, HPS::Canvas const & in_canvas, size_t in_layer = 0)
2812 : Event(), action(in_action), path(in_path), options(in_options), canvas(in_canvas), layer(in_layer)
2916 FilterActivationEvent(Filter in_filter, Action in_action, View in_view) : Event(), filter(in_filter), action(in_action), view(in_view)
3005 CaptureActivationEvent(Capture in_capture, View in_view) : Event(), capture(in_capture), view(in_view)
3095 ComponentPath GetComponentPath(KeyPath const & in_key_path, ComponentPath::PathType in_path_type = ComponentPath::PathType::Unique) const;
3108 ComponentPath GetComponentPath(SelectionItem const & in_item, ComponentPath::PathType in_path_type = ComponentPath::PathType::Unique) const;
3544 static Canvas CreateCanvas(HPS::WindowHandle in_window_handle, char const * in_name = "", HPS::ApplicationWindowOptionsKit const & in_options = HPS::ApplicationWindowOptionsKit());
3552 static Canvas CreateCanvas(char const * in_name = "", HPS::StandAloneWindowOptionsKit const & in_options = HPS::StandAloneWindowOptionsKit());
3560 static Canvas CreateCanvas(HPS::WindowKey const & in_window_key, HPS::PortfolioKey const & in_portfolio_key = HPS::PortfolioKey(), char const * in_name = "");
3606 AxisTriadOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
3731 NavigationCubeOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
4194 SceneTreeItem(SceneTreePtr const & in_tree, Key const & in_key, SceneTree::ItemType in_type, char const * in_title = nullptr);
4270 virtual SceneTreeItemPtr AddChild(Key const & in_key, SceneTree::ItemType in_type, char const * in_title = nullptr) = 0;
4548 ComponentTreeItem(ComponentTreePtr const & in_tree, Component const & in_component, ComponentTree::ItemType in_type);
4619 virtual ComponentTreeItemPtr AddChild(Component const & in_component, ComponentTree::ItemType in_type) = 0;
Definition: sprk.h:3410
Definition: hps.h:3430
Definition: hps.h:6285
Definition: hps.h:85
Definition: sprk.h:1005
ComponentIsolatedEvent(Event const &in_event)
Definition: sprk.h:2759
Definition: sprk.h:2739
Definition: sprk.h:3603
Definition: sprk.h:273
ComponentHighlightEvent(Event const &in_event)
Definition: sprk.h:2820
virtual bool OnTimerTick(HPS::TimerTickEvent const &in_event)
Definition: sprk.h:1204
Definition: hps.h:43291
ComponentHighlightEvent()
Definition: sprk.h:2800
void SetModifierTrigger(ModifierKeys in_modifiers)
Definition: sprk.h:1232
Definition: hps.h:474
CameraChangedEvent(Event const &in_event)
Definition: sprk.h:1024
virtual bool OnKeyDown(KeyboardState const &in_state)
Definition: sprk.h:1189
std::vector< SegmentKey, Allocator< SegmentKey > > SegmentKeyArray
Array of type HPS::SegmentKey.
Definition: hps.h:6713
An InvalidSpecificationException is thrown when a method is called with non-sensical or contradictory...
Definition: hps.h:5889
Definition: hps.h:5929
Definition: sprk.h:67
Definition: sprk.h:214
Definition: sprk.h:680
Definition: sprk.h:106
virtual bool OnMouseMove(MouseState const &in_state)
Definition: sprk.h:1154
Definition: sprk.h:4521
virtual bool OnMouseEnter(MouseState const &in_state)
Definition: sprk.h:1164
Definition: sprk.h:3464
Definition: hps.h:43074
virtual bool Drop(Event const *in_that_event) const
Definition: sprk.h:1037
Definition: hps.h:1066
Definition: hps.h:1742
Definition: sprk.h:242
SmoothTransitionCompleteEvent(HPS::View const &in_view)
Definition: sprk.h:3674
std::vector< KeyPath, Allocator< KeyPath > > KeyPathArray
Array of type HPS::KeyPath.
Definition: hps.h:6751
Definition: sprk.h:4361
Definition: hps.h:48831
Definition: sprk.h:1065
Definition: hps.h:7793
Definition: hps.h:3581
Definition: hps.h:2109
Definition: sprk.h:917
bool HasAll(MouseButtons in_mouse_trigger, ModifierKeys in_modifier_trigger) const
Definition: sprk_ops.h:19
Definition: sprk.h:768
Definition: hps.h:1431
Definition: hps.h:886
Definition: hps.h:43194
SmoothTransitionCompleteEvent(Event const &in_event)
Definition: sprk.h:3679
Definition: hps.h:1800
Definition: hps.h:1566
Definition: hps.h:9037
Definition: hps.h:244
Definition: hps.h:1860
Definition: sprk.h:39
virtual void OnViewAttached(HPS::View const &in_attached_view)
Definition: sprk.h:1208
Definition: hps.h:48729
Definition: hps.h:42106
Definition: sprk.h:962
Definition: sprk.h:564
ViewDetachedEvent(Event const &in_event)
Definition: sprk.h:844
Definition: hps.h:42153
Definition: hps.h:41538
Definition: hps.h:44860
Definition: hps.h:1106
Definition: sprk.h:3149
Definition: sprk.h:3263
virtual bool OnMouseLeave(MouseState const &in_state)
Definition: sprk.h:1169
Definition: hps.h:10002
Definition: hps.h:43238
Definition: hps.h:1519
SmoothTransitionCompleteEvent()
Definition: sprk.h:3669
Definition: hps.h:1451
Definition: hps.h:1470
Definition: hps.h:39123
FilterActivationEvent(Event const &in_event)
Definition: sprk.h:2924
ModelDetachedEvent(Event const &in_event)
Definition: sprk.h:936
Definition: hps.h:7164
Definition: hps.h:48200
Definition: sprk.h:3214
Definition: sprk.h:1638
Definition: hps.h:45039
SprocketControl & operator=(SprocketControl &&in_that)
Definition: sprk.h:235
Definition: hps.h:47093
Definition: hps.h:48616
Definition: sprk.h:723
CaptureActivationEvent(Event const &in_event)
Definition: sprk.h:3013
virtual bool OnTouchDown(TouchState const &in_state)
Definition: sprk.h:1174
virtual bool OnMouseWheel(MouseState const &in_state)
Definition: sprk.h:1159
SprocketControl(SprocketControl &&in_that)
Definition: sprk.h:230
Definition: hps.h:15847
Definition: sprk.h:811
Definition: sprk.h:1778
Definition: hps.h:45318
Definition: hps.h:47707
The ComponentPath contains only components which are unique to this request, omitting ambiguous entri...
ViewDeletedEvent(Event const &in_event)
Definition: sprk.h:893
Definition: hps.h:38626
Definition: sprk.h:3361
Definition: hps.h:6369
Definition: hps.h:14095
std::vector< UTF8, Allocator< UTF8 > > UTF8Array
Array of type HPS::UTF8.
Definition: hps.h:6719
Definition: sprk.h:1310
Definition: hps.h:410
Definition: sprk.h:484
CanvasDeletedEvent(Event const &in_event)
Definition: sprk.h:699
Definition: sprk.h:2148
std::shared_ptr< Operator > OperatorPtr
Shared pointer to an Operator object.
Definition: sprk.h:84
Definition: hps.h:47018
std::vector< Key, Allocator< Key > > KeyArray
Array of type HPS::Key.
Definition: hps.h:6723
Definition: hps.h:2128
Definition: sprk.h:2789
LayoutDetachedEvent(Event const &in_event)
Definition: sprk.h:742
virtual bool OnMouseDown(MouseState const &in_state)
Definition: sprk.h:1144
Definition: sprk.h:2854
Definition: sprk.h:3515
Definition: sprk.h:191
virtual void OnViewDetached(HPS::View const &in_detached_view)
Definition: sprk.h:1212
Definition: sprk.h:3665
Definition: hps.h:429
Definition: sprk.h:2954
Definition: hps.h:2148
Definition: sprk.h:3864
Definition: sprk.h:2607
Definition: sprk.h:3312
Definition: hps.h:9195
virtual bool IsMouseTriggered(MouseState const &in_state)
Definition: sprk.h:1238
Definition: hps.h:7711
Definition: sprk.h:2899
Definition: hps.h:38226
Definition: hps.h:355
ModelDeletedEvent(Event const &in_event)
Definition: sprk.h:981
LayoutDeletedEvent(Event const &in_event)
Definition: sprk.h:787
Definition: hps.h:9424
Definition: hps.h:11107
Definition: sprk.h:1253
virtual bool OnTouchMove(TouchState const &in_state)
Definition: sprk.h:1184
virtual bool Drop(Event const *in_that_event) const
Definition: sprk.h:3701
Definition: sprk.h:4145
Definition: sprk.h:3041
Definition: sprk.h:2651
Definition: hps.h:43770
Definition: hps.h:515
Definition: sprk.h:1107
Definition: hps.h:1149
Definition: hps.h:43120
Definition: sprk.h:874
Definition: sprk.h:2995
Definition: hps.h:41602
Definition: hps.h:7422