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;
560 UpdateNotifier UpdateWithNotifier(HPS::Window::UpdateType in_type, HPS::Time in_time_limit = -1.0) const;
596 void AttachViewFront(View const & in_view, HPS::Rectangle const & in_position = HPS::Rectangle(-1.0f, 1.0f, -1.0f, 1.0f));
600 void AttachViewBack(View const & in_view, HPS::Rectangle const & in_position = HPS::Rectangle(-1.0f, 1.0f, -1.0f, 1.0f));
679 UpdateNotifier UpdateWithNotifier(HPS::Window::UpdateType in_type, HPS::Time in_time_limit = -1.0) const;
839 : Event(), layout(in_layout), action(Action::AllLayers), layer(std::numeric_limits<size_t>::max()), view(in_view)
1042 CameraChangedEvent const * that_event = static_cast<CameraChangedEvent const *>(in_that_event);
1072 SprocketPath(Model const & in_model, View const & in_view, Layout const & in_layout, Canvas const & in_canvas);
1073 SprocketPath(Canvas const & in_canvas, Layout const & in_layout, View const & in_view, Model const & in_model);
1113 Operator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
1147 virtual bool OnMouseDown(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1152 virtual bool OnMouseUp(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1157 virtual bool OnMouseMove(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1162 virtual bool OnMouseWheel(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1167 virtual bool OnMouseEnter(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1172 virtual bool OnMouseLeave(MouseState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1177 virtual bool OnTouchDown(TouchState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1182 virtual bool OnTouchUp(TouchState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1187 virtual bool OnTouchMove(TouchState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1192 virtual bool OnKeyDown(KeyboardState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1197 virtual bool OnKeyUp(KeyboardState const & in_state) { HPS_UNREFERENCED(in_state); return false; }
1202 virtual bool OnTextInput(HPS::UTF8 const & in_text) { HPS_UNREFERENCED(in_text); return false; }
1207 virtual bool OnTimerTick(HPS::TimerTickEvent const & in_event) { HPS_UNREFERENCED(in_event); return false; }
1211 virtual void OnViewAttached(HPS::View const & in_attached_view) { HPS_UNREFERENCED(in_attached_view); return; }
1215 virtual void OnViewDetached(HPS::View const & in_detached_view) { HPS_UNREFERENCED(in_detached_view); return; }
1241 virtual bool IsMouseTriggered(MouseState const & in_state) { return in_state.HasAll(mouse_trigger, modifier_trigger); }
1355 OperatorControl & Push(OperatorPtr const & in_operator, Operator::Priority in_priority = Operator::Priority::Default);
1363 OperatorControl & Push(Operator * in_operator, Operator::Priority in_priority = Operator::Priority::Default);
1389 OperatorControl & Set(OperatorPtr const & in_operator, Operator::Priority in_priority = Operator::Priority::Default);
1397 OperatorControl & Set(Operator * in_operator, Operator::Priority in_priority = Operator::Priority::Default);
1404 OperatorControl & Set(OperatorPtrArray & in_operators, Operator::Priority in_priority = Operator::Priority::Default);
1412 OperatorControl & Set(size_t in_count, OperatorPtr in_operators [], Operator::Priority in_priority = Operator::Priority::Default);
1508 NavigationCubeControl & SetLocation(Location in_location, HPS::Rectangle const & in_rectangle = HPS::Rectangle(), HPS::IntRectangle in_offsets = HPS::IntRectangle::Zero());
1607 NavigationCubeControl & SetText(const char * in_back_string, const char * in_top_string, const char * in_left_string,
1619 * \return <span class='code'>true</span> if the navigation cube text was retrieved successfully, <span class='code'>false</span> otherwise. */
1686 HPS::AxisTriadControl & SetLocation(Location in_location, HPS::Rectangle const & in_position = HPS::Rectangle(), HPS::IntRectangle in_offsets = HPS::IntRectangle::Zero());
1888 Standard, // subcomponents will be deleted if they don't have multiple owners, otherwise their reference count will be decremented
1890 StandardAndExchange // Subcomponent will deleted if they don't have multiple owners, otherwise their reference count will be decremented.
2303 void Highlight(Canvas const & in_canvas, HighlightOptionsKit const & in_options, bool in_remove_existing = true) const;
2311 void Highlight(Canvas const & in_canvas, size_t in_layer, HighlightOptionsKit const & in_options, bool in_remove_existing = true) const;
2316 void Unhighlight(Canvas const & in_canvas, HighlightOptionsKit const & in_options = HighlightOptionsKit()) const;
2322 void Unhighlight(Canvas const & in_canvas, size_t in_layer, HighlightOptionsKit const & in_options = HighlightOptionsKit()) const;
2335 void Show(Canvas const & in_canvas, size_t in_layer = 0, Component::Visibility in_subtree_visibility = Component::Visibility::PreserveNone);
2350 void Isolate(Canvas const & in_canvas, size_t in_layer = 0, Component::Visibility in_subtree_visibility = Component::Visibility::PreserveNone);
2359 static void Isolate(HPS::ComponentPathArray & in_components_to_be_isolated, Canvas const & in_canvas, size_t in_layer = 0, Component::Visibility in_subtree_visibility = Component::Visibility::PreserveNone);
2365 /* Access a Component in this ComponentPath object. An HPS::IndexOutOfRangeException exception is thrown if in_index is out of range.
2370 /* Access a Component in this ComponentPath object. An HPS::IndexOutOfRangeException exception is thrown if in_index is out of range.
2375 /* Inserts in_item in the ComponentPath before the element at position in_index, increasing the size of the ComponentPath by one.
2381 /* Traverses the components in this ComponentPath and removes the first one which matches in_item
2386 /* Removes the the component at position in_index from this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if in_index is out of range.
2390 /* Creates and returns a new ComponentPath object, with the components organized in the reverse order.
2394 /* Returns the first component of this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2398 /* Returns the first component of this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2402 /* Returns the last component of this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2406 /* Returns the last component of this ComponentPath. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2410 /* Returns the first component of this ComponentPath and returns it. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2414 /* Returns the last component of this ComponentPath and returns it. An HPS::IndexOutOfRangeException exception is thrown if the ComponentPath is empty.
2451 * \return A constant iterator pointing to the last Component contained in this ComponentPath. */
2455 * \return A constant iterator pointing to the last Component contained in this ComponentPath. */
2459 * \return A constant iterator pointing to the first Component contained in this ComponentPath. */
2463 * \return A constant iterator pointing to the last Component contained in this ComponentPath. */
2722 FilterActivationEvent(Filter in_filter, Action in_action, View in_view) : Event(), filter(in_filter), action(in_action), view(in_view)
2811 CaptureActivationEvent(Capture in_capture, View in_view) : Event(), capture(in_capture), view(in_view)
2901 ComponentPath GetComponentPath(KeyPath const & in_key_path, ComponentPath::PathType in_path_type = ComponentPath::PathType::Unique) const;
2914 ComponentPath GetComponentPath(SelectionItem const & in_item, ComponentPath::PathType in_path_type = ComponentPath::PathType::Unique) const;
3350 static Canvas CreateCanvas(HPS::WindowHandle in_window_handle, char const * in_name = "", HPS::ApplicationWindowOptionsKit const & in_options = HPS::ApplicationWindowOptionsKit());
3356 static Canvas CreateCanvas(char const * in_name = "", HPS::StandAloneWindowOptionsKit const & in_options = HPS::StandAloneWindowOptionsKit());
3363 static Canvas CreateCanvas(HPS::WindowKey const & in_window_key, HPS::PortfolioKey const & in_portfolio_key = HPS::PortfolioKey(), char const * in_name = "");
3409 AxisTriadOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
3534 NavigationCubeOperator(MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys());
3997 SceneTreeItem(SceneTreePtr const & in_tree, Key const & in_key, SceneTree::ItemType in_type, char const * in_title = nullptr);
4073 virtual SceneTreeItemPtr AddChild(Key const & in_key, SceneTree::ItemType in_type, char const * in_title = nullptr) = 0;
4351 ComponentTreeItem(ComponentTreePtr const & in_tree, Component const & in_component, ComponentTree::ItemType in_type);
4422 virtual ComponentTreeItemPtr AddChild(Component const & in_component, ComponentTree::ItemType in_type) = 0;
4524 void Isolate(Component::Visibility in_subtree_visibility = Component::Visibility::PreserveNone);
Definition: sprk.h:3216
Definition: hps.h:3420
Definition: hps.h:6254
Definition: sprk.h:1008
Definition: sprk.h:3406
Definition: sprk.h:273
ComponentHighlightEvent(Event const &in_event)
Definition: sprk.h:2630
virtual bool OnTimerTick(HPS::TimerTickEvent const &in_event)
Definition: sprk.h:1207
Definition: hps.h:43146
ComponentHighlightEvent()
Definition: sprk.h:2612
void SetModifierTrigger(ModifierKeys in_modifiers)
Definition: sprk.h:1235
Definition: hps.h:472
CameraChangedEvent(Event const &in_event)
Definition: sprk.h:1027
virtual bool OnKeyDown(KeyboardState const &in_state)
Definition: sprk.h:1192
std::vector< SegmentKey, Allocator< SegmentKey > > SegmentKeyArray
Array of type HPS::SegmentKey.
Definition: hps.h:6682
An InvalidSpecificationException is thrown when a method is called with non-sensical or contradictory...
Definition: hps.h:5865
Definition: hps.h:5905
Definition: sprk.h:67
Definition: sprk.h:214
ComponentIsolateEvent(Event const &in_event)
Definition: sprk.h:2573
Definition: sprk.h:683
Definition: sprk.h:106
virtual bool OnMouseMove(MouseState const &in_state)
Definition: sprk.h:1157
Definition: sprk.h:4324
virtual bool OnMouseEnter(MouseState const &in_state)
Definition: sprk.h:1167
Definition: sprk.h:3270
Definition: hps.h:42929
Definition: hps.h:1064
Definition: hps.h:1740
Definition: sprk.h:242
SmoothTransitionCompleteEvent(HPS::View const &in_view)
Definition: sprk.h:3477
std::vector< KeyPath, Allocator< KeyPath > > KeyPathArray
Array of type HPS::KeyPath.
Definition: hps.h:6720
Definition: sprk.h:4164
Definition: hps.h:48680
Definition: sprk.h:1068
Definition: hps.h:7760
Definition: hps.h:3571
Definition: hps.h:2107
Definition: sprk.h:920
bool HasAll(MouseButtons in_mouse_trigger, ModifierKeys in_modifier_trigger) const
Definition: sprk.h:2551
Definition: sprk.h:771
Definition: hps.h:1429
Definition: hps.h:884
Definition: hps.h:43049
SmoothTransitionCompleteEvent(Event const &in_event)
Definition: sprk.h:3482
Definition: hps.h:1798
Definition: hps.h:1564
Definition: hps.h:9004
Definition: hps.h:246
Definition: hps.h:1858
virtual void OnViewAttached(HPS::View const &in_attached_view)
Definition: sprk.h:1211
Definition: hps.h:48578
Definition: hps.h:41966
Definition: sprk.h:965
Definition: sprk.h:567
ViewDetachedEvent(Event const &in_event)
Definition: sprk.h:847
Definition: hps.h:42013
Definition: hps.h:41398
Definition: hps.h:44715
Definition: hps.h:1104
Definition: sprk.h:2955
Definition: sprk.h:3069
virtual bool OnMouseLeave(MouseState const &in_state)
Definition: sprk.h:1172
Definition: hps.h:9951
Definition: hps.h:43093
Definition: hps.h:1517
SmoothTransitionCompleteEvent()
Definition: sprk.h:3472
Definition: hps.h:1449
Definition: hps.h:1468
Definition: hps.h:38996
FilterActivationEvent(Event const &in_event)
Definition: sprk.h:2730
ModelDetachedEvent(Event const &in_event)
Definition: sprk.h:939
Definition: hps.h:7131
Definition: hps.h:48049
Definition: sprk.h:3020
Definition: sprk.h:1640
Definition: hps.h:44894
SprocketControl & operator=(SprocketControl &&in_that)
Definition: sprk.h:235
Definition: hps.h:46944
Definition: hps.h:48465
Definition: sprk.h:726
CaptureActivationEvent(Event const &in_event)
Definition: sprk.h:2819
virtual bool OnTouchDown(TouchState const &in_state)
Definition: sprk.h:1177
virtual bool OnMouseWheel(MouseState const &in_state)
Definition: sprk.h:1162
SprocketControl(SprocketControl &&in_that)
Definition: sprk.h:230
Definition: hps.h:15794
Definition: sprk.h:814
virtual bool Drop(Event const *in_that_event) const
Definition: sprk.h:3504
Definition: sprk.h:1778
Definition: hps.h:45173
Definition: hps.h:47556
The ComponentPath contains only components which are unique to this request, omitting ambiguous entri...
ViewDeletedEvent(Event const &in_event)
Definition: sprk.h:896
Definition: hps.h:38525
Definition: sprk.h:3167
Definition: hps.h:6338
Override the visibility for any components in the subtree under the ComponentPath specified regardles...
Definition: hps.h:14044
std::vector< UTF8, Allocator< UTF8 > > UTF8Array
Array of type HPS::UTF8.
Definition: hps.h:6688
Definition: sprk.h:1313
Definition: hps.h:408
Definition: sprk.h:487
CanvasDeletedEvent(Event const &in_event)
Definition: sprk.h:702
Definition: sprk.h:2161
std::shared_ptr< Operator > OperatorPtr
Shared pointer to an Operator object.
Definition: sprk.h:84
virtual bool Drop(Event const *in_that_event) const
Definition: sprk.h:1040
Definition: hps.h:46869
std::vector< Key, Allocator< Key > > KeyArray
Array of type HPS::Key.
Definition: hps.h:6692
Definition: hps.h:2126
Definition: sprk.h:2601
LayoutDetachedEvent(Event const &in_event)
Definition: sprk.h:745
virtual bool OnMouseDown(MouseState const &in_state)
Definition: sprk.h:1147
Definition: sprk.h:2660
Definition: sprk.h:3321
Definition: sprk.h:191
virtual void OnViewDetached(HPS::View const &in_detached_view)
Definition: sprk.h:1215
Definition: sprk.h:3468
Definition: hps.h:427
Definition: sprk.h:2760
Definition: hps.h:2146
Definition: sprk.h:3667
Definition: sprk.h:3118
Definition: hps.h:9162
virtual bool IsMouseTriggered(MouseState const &in_state)
Definition: sprk.h:1241
Definition: hps.h:7678
Definition: sprk.h:2705
Definition: hps.h:38138
Definition: hps.h:353
ModelDeletedEvent(Event const &in_event)
Definition: sprk.h:984
LayoutDeletedEvent(Event const &in_event)
Definition: sprk.h:790
Definition: hps.h:9391
Definition: hps.h:11056
Definition: sprk.h:1256
virtual bool OnTouchMove(TouchState const &in_state)
Definition: sprk.h:1187
Definition: sprk.h:3948
Definition: sprk.h:2847
Definition: hps.h:43625
Definition: hps.h:513
Definition: sprk.h:1110
Definition: hps.h:1147
Definition: hps.h:42975
Definition: sprk.h:877
Definition: sprk.h:2801
Definition: hps.h:41462
Definition: hps.h:7389