reflexion 0.5.3 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.doc/ext/reflex/application.cpp +56 -7
- data/.doc/ext/reflex/capture_event.cpp +1 -1
- data/.doc/ext/reflex/chase_constraint.cpp +84 -0
- data/.doc/ext/reflex/clipboard.cpp +65 -0
- data/.doc/ext/reflex/color_event.cpp +76 -0
- data/.doc/ext/reflex/color_picker.cpp +113 -0
- data/.doc/ext/reflex/constraint.cpp +135 -0
- data/.doc/ext/reflex/contact_event.cpp +1 -1
- data/.doc/ext/reflex/control_change_event.cpp +1 -1
- data/.doc/ext/reflex/device.cpp +1 -1
- data/.doc/ext/reflex/device_event.cpp +1 -1
- data/.doc/ext/reflex/draw_event.cpp +1 -1
- data/.doc/ext/reflex/ellipse_shape.cpp +1 -1
- data/.doc/ext/reflex/event.cpp +1 -1
- data/.doc/ext/reflex/file_dialog.cpp +181 -0
- data/.doc/ext/reflex/file_event.cpp +103 -0
- data/.doc/ext/reflex/filter.cpp +1 -1
- data/.doc/ext/reflex/focus_event.cpp +1 -1
- data/.doc/ext/reflex/frame_event.cpp +1 -1
- data/.doc/ext/reflex/gamepad.cpp +48 -0
- data/.doc/ext/reflex/image_view.cpp +1 -1
- data/.doc/ext/reflex/key_event.cpp +1 -274
- data/.doc/ext/reflex/line_shape.cpp +1 -1
- data/.doc/ext/reflex/link_constraint.cpp +178 -0
- data/.doc/ext/reflex/menu.cpp +303 -0
- data/.doc/ext/reflex/midi.cpp +9 -2
- data/.doc/ext/reflex/midi_event.cpp +1 -1
- data/.doc/ext/reflex/motion_event.cpp +1 -1
- data/.doc/ext/reflex/native.cpp +40 -10
- data/.doc/ext/reflex/note_event.cpp +1 -1
- data/.doc/ext/reflex/pin.cpp +156 -0
- data/.doc/ext/reflex/pointer.cpp +3 -1
- data/.doc/ext/reflex/pointer_event.cpp +3 -3
- data/.doc/ext/reflex/polygon_shape.cpp +1 -1
- data/.doc/ext/reflex/rect_shape.cpp +1 -1
- data/.doc/ext/reflex/reflex.cpp +606 -237
- data/.doc/ext/reflex/screen.cpp +27 -1
- data/.doc/ext/reflex/scroll_event.cpp +1 -1
- data/.doc/ext/reflex/selector.cpp +5 -5
- data/.doc/ext/reflex/shape.cpp +1 -1
- data/.doc/ext/reflex/snap_constraint.cpp +125 -0
- data/.doc/ext/reflex/style.cpp +1 -1
- data/.doc/ext/reflex/style_length.cpp +4 -3
- data/.doc/ext/reflex/text_event.cpp +104 -0
- data/.doc/ext/reflex/timer.cpp +1 -1
- data/.doc/ext/reflex/timer_event.cpp +1 -1
- data/.doc/ext/reflex/update_event.cpp +1 -1
- data/.doc/ext/reflex/view.cpp +206 -79
- data/.doc/ext/reflex/wheel_constraint.cpp +142 -0
- data/.doc/ext/reflex/wheel_event.cpp +1 -1
- data/.doc/ext/reflex/window.cpp +282 -31
- data/.github/workflows/release-gem.yml +2 -40
- data/.github/workflows/tag.yml +5 -28
- data/.github/workflows/test.yml +1 -28
- data/ChangeLog.md +79 -0
- data/Gemfile.lock +13 -8
- data/README.md +1 -0
- data/Rakefile +13 -2
- data/Reflex.podspec +2 -2
- data/VERSION +1 -1
- data/ext/reflex/application.cpp +62 -7
- data/ext/reflex/capture_event.cpp +1 -1
- data/ext/reflex/chase_constraint.cpp +89 -0
- data/ext/reflex/clipboard.cpp +69 -0
- data/ext/reflex/color_event.cpp +80 -0
- data/ext/reflex/color_picker.cpp +121 -0
- data/ext/reflex/constraint.cpp +146 -0
- data/ext/reflex/contact_event.cpp +1 -1
- data/ext/reflex/control_change_event.cpp +1 -1
- data/ext/reflex/device.cpp +1 -1
- data/ext/reflex/device_event.cpp +1 -1
- data/ext/reflex/draw_event.cpp +1 -1
- data/ext/reflex/ellipse_shape.cpp +1 -1
- data/ext/reflex/event.cpp +1 -1
- data/ext/reflex/extconf.rb +4 -2
- data/ext/reflex/file_dialog.cpp +194 -0
- data/ext/reflex/file_event.cpp +108 -0
- data/ext/reflex/filter.cpp +1 -1
- data/ext/reflex/focus_event.cpp +1 -1
- data/ext/reflex/frame_event.cpp +1 -1
- data/ext/reflex/gamepad.cpp +50 -0
- data/ext/reflex/image_view.cpp +1 -1
- data/ext/reflex/key_event.cpp +1 -275
- data/ext/reflex/line_shape.cpp +1 -1
- data/ext/reflex/link_constraint.cpp +194 -0
- data/ext/reflex/menu.cpp +331 -0
- data/ext/reflex/midi.cpp +11 -3
- data/ext/reflex/midi_event.cpp +1 -1
- data/ext/reflex/motion_event.cpp +1 -1
- data/ext/reflex/native.cpp +40 -10
- data/ext/reflex/note_event.cpp +1 -1
- data/ext/reflex/pin.cpp +165 -0
- data/ext/reflex/pointer.cpp +3 -1
- data/ext/reflex/pointer_event.cpp +3 -3
- data/ext/reflex/polygon_shape.cpp +1 -1
- data/ext/reflex/rect_shape.cpp +1 -1
- data/ext/reflex/reflex.cpp +608 -237
- data/ext/reflex/screen.cpp +31 -2
- data/ext/reflex/scroll_event.cpp +1 -1
- data/ext/reflex/selector.cpp +5 -5
- data/ext/reflex/selector.h +10 -10
- data/ext/reflex/shape.cpp +1 -1
- data/ext/reflex/snap_constraint.cpp +135 -0
- data/ext/reflex/style.cpp +1 -1
- data/ext/reflex/style_length.cpp +4 -3
- data/ext/reflex/text_event.cpp +111 -0
- data/ext/reflex/timer.cpp +1 -1
- data/ext/reflex/timer_event.cpp +1 -1
- data/ext/reflex/update_event.cpp +1 -1
- data/ext/reflex/view.cpp +236 -96
- data/ext/reflex/wheel_constraint.cpp +154 -0
- data/ext/reflex/wheel_event.cpp +1 -1
- data/ext/reflex/window.cpp +318 -40
- data/include/reflex/application.h +19 -0
- data/include/reflex/clipboard.h +53 -0
- data/include/reflex/color_picker.h +65 -0
- data/include/reflex/constraint.h +275 -0
- data/include/reflex/defs.h +204 -195
- data/include/reflex/event.h +180 -88
- data/include/reflex/file_dialog.h +73 -0
- data/include/reflex/gamepad.h +3 -0
- data/include/reflex/menu.h +120 -0
- data/include/reflex/midi.h +3 -0
- data/include/reflex/pin.h +68 -0
- data/include/reflex/pointer.h +4 -0
- data/include/reflex/reflex.h +2 -0
- data/include/reflex/ruby/application.h +6 -1
- data/include/reflex/ruby/clipboard.h +23 -0
- data/include/reflex/ruby/color_picker.h +89 -0
- data/include/reflex/ruby/constraint.h +94 -0
- data/include/reflex/ruby/event.h +62 -29
- data/include/reflex/ruby/file_dialog.h +89 -0
- data/include/reflex/ruby/gamepad.h +46 -0
- data/include/reflex/ruby/menu.h +103 -0
- data/include/reflex/ruby/pin.h +40 -0
- data/include/reflex/ruby/reflex.h +3 -0
- data/include/reflex/ruby/view.h +123 -39
- data/include/reflex/ruby/window.h +96 -19
- data/include/reflex/ruby.h +3 -0
- data/include/reflex/screen.h +11 -2
- data/include/reflex/view.h +66 -27
- data/include/reflex/window.h +57 -12
- data/include/reflex.h +8 -0
- data/lib/reflex/application.rb +5 -5
- data/lib/reflex/autoinit.rb +3 -1
- data/lib/reflex/button.rb +3 -3
- data/lib/reflex/chase_constraint.rb +15 -0
- data/lib/reflex/clipboard.rb +19 -0
- data/lib/reflex/color_event.rb +16 -0
- data/lib/reflex/color_picker.rb +45 -0
- data/lib/reflex/constraint.rb +29 -0
- data/lib/reflex/control_change_event.rb +17 -0
- data/lib/reflex/extension.rb +1 -1
- data/lib/reflex/file_dialog.rb +70 -0
- data/lib/reflex/file_event.rb +37 -0
- data/lib/reflex/helper.rb +79 -0
- data/lib/reflex/key_event.rb +14 -14
- data/lib/reflex/link_constraint.rb +31 -0
- data/lib/reflex/menu.rb +92 -0
- data/lib/reflex/model.rb +19 -19
- data/lib/reflex/note_event.rb +1 -1
- data/lib/reflex/pin.rb +39 -0
- data/lib/reflex/pointer.rb +30 -1
- data/lib/reflex/pointer_event.rb +13 -2
- data/lib/reflex/reflex.rb +5 -0
- data/lib/reflex/shape.rb +14 -14
- data/lib/reflex/snap_constraint.rb +28 -0
- data/lib/reflex/style.rb +16 -16
- data/lib/reflex/text_event.rb +40 -0
- data/lib/reflex/timer.rb +3 -3
- data/lib/reflex/view.rb +85 -18
- data/lib/reflex/wheel_constraint.rb +28 -0
- data/lib/reflex/wheel_event.rb +19 -1
- data/lib/reflex/window.rb +25 -13
- data/lib/reflex.rb +23 -8
- data/pod.rake +1 -1
- data/reflex.gemspec +4 -4
- data/samples/constraint.rb +152 -0
- data/samples/ime.rb +100 -0
- data/samples/ios/hello/hello.xcodeproj/project.pbxproj +236 -224
- data/samples/menu.rb +32 -0
- data/samples/model.rb +3 -3
- data/samples/test/alert.rb +93 -0
- data/samples/test/always_on.rb +76 -0
- data/samples/test/app_background.rb +51 -0
- data/samples/test/boundary.rb +75 -0
- data/samples/test/callback_exception.rb +101 -0
- data/samples/test/cancel.rb +53 -0
- data/samples/test/color_picker.rb +63 -0
- data/samples/test/file_dialog.rb +102 -0
- data/samples/window_style.rb +156 -0
- data/src/application.cpp +180 -20
- data/src/application.h +95 -5
- data/src/clipboard.cpp +81 -0
- data/src/color_picker.cpp +113 -0
- data/src/color_picker.h +36 -0
- data/src/constraint.cpp +1662 -0
- data/src/constraint.h +64 -0
- data/src/event.cpp +416 -252
- data/src/event.h +13 -2
- data/src/file_dialog.cpp +163 -0
- data/src/file_dialog.h +52 -0
- data/src/gamepad.cpp +42 -5
- data/src/gamepad.h +4 -0
- data/src/ios/app_delegate.mm +5 -3
- data/src/ios/application.mm +29 -0
- data/src/ios/clipboard.mm +44 -0
- data/src/ios/color_picker.mm +19 -0
- data/src/ios/event.h +6 -2
- data/src/ios/event.mm +31 -12
- data/src/ios/file_dialog.mm +21 -0
- data/src/ios/gamepad.mm +4 -4
- data/src/ios/menu.mm +41 -0
- data/src/ios/reflex.mm +8 -0
- data/src/ios/screen.mm +26 -0
- data/src/ios/view_controller.mm +47 -42
- data/src/ios/window.mm +44 -9
- data/src/menu.cpp +387 -0
- data/src/menu.h +81 -0
- data/src/midi.cpp +61 -31
- data/src/osx/app_delegate.h +4 -0
- data/src/osx/app_delegate.mm +168 -139
- data/src/osx/application.mm +103 -5
- data/src/osx/clipboard.mm +45 -0
- data/src/osx/color_picker.mm +112 -0
- data/src/osx/event.h +10 -0
- data/src/osx/event.mm +114 -30
- data/src/osx/file_dialog.mm +168 -0
- data/src/osx/gamepad.mm +2 -2
- data/src/osx/gamepad_hid.mm +1 -1
- data/src/osx/menu.h +25 -0
- data/src/osx/menu.mm +516 -0
- data/src/osx/native_window.h +16 -2
- data/src/osx/native_window.mm +141 -57
- data/src/osx/opengl_view.h +2 -1
- data/src/osx/opengl_view.mm +229 -37
- data/src/osx/reflex.mm +38 -0
- data/src/osx/screen.mm +36 -0
- data/src/osx/window.mm +117 -24
- data/src/pin.cpp +137 -0
- data/src/pointer.cpp +36 -16
- data/src/pointer.h +10 -0
- data/src/rays.h +46 -0
- data/src/sdl/application.cpp +73 -8
- data/src/sdl/clipboard.cpp +39 -0
- data/src/sdl/color_picker.cpp +18 -0
- data/src/sdl/event.cpp +44 -6
- data/src/sdl/event.h +18 -3
- data/src/sdl/file_dialog.cpp +20 -0
- data/src/sdl/gamepad.cpp +3 -7
- data/src/sdl/menu.cpp +40 -0
- data/src/sdl/reflex.cpp +20 -0
- data/src/sdl/screen.cpp +36 -0
- data/src/sdl/window.cpp +168 -37
- data/src/shape.cpp +15 -10
- data/src/view.cpp +583 -233
- data/src/view.h +22 -4
- data/src/vk.h +416 -0
- data/src/win32/application.cpp +167 -12
- data/src/win32/application.h +20 -0
- data/src/win32/clipboard.cpp +210 -0
- data/src/win32/color_picker.cpp +82 -0
- data/src/win32/event.cpp +123 -11
- data/src/win32/event.h +22 -3
- data/src/win32/file_dialog.cpp +226 -0
- data/src/win32/gamepad.cpp +9 -2
- data/src/win32/menu.cpp +490 -0
- data/src/win32/menu.h +35 -0
- data/src/win32/opengl.cpp +2 -9
- data/src/win32/reflex.cpp +44 -3
- data/src/win32/screen.cpp +164 -3
- data/src/win32/screen.h +8 -0
- data/src/win32/tray.cpp +191 -0
- data/src/win32/tray.h +22 -0
- data/src/win32/vk.cpp +11 -0
- data/src/win32/window.cpp +858 -135
- data/src/win32/window.h +9 -0
- data/src/window.cpp +929 -183
- data/src/window.h +77 -33
- data/src/world.cpp +86 -15
- data/src/world.h +9 -2
- data/test/helper.rb +24 -0
- data/test/test_application.rb +101 -1
- data/test/test_chase_constraint.rb +122 -0
- data/test/test_clipboard.rb +54 -0
- data/test/test_color_event.rb +36 -0
- data/test/test_color_picker.rb +62 -0
- data/test/test_constraint.rb +184 -0
- data/test/test_event.rb +1 -1
- data/test/test_file_dialog.rb +48 -0
- data/test/test_file_event.rb +43 -0
- data/test/test_has_text_preedit.rb +54 -0
- data/test/test_key_event.rb +23 -2
- data/test/test_link_constraint.rb +237 -0
- data/test/test_menu.rb +237 -0
- data/test/test_pin.rb +65 -0
- data/test/test_pointer.rb +50 -26
- data/test/test_pointer_event.rb +25 -10
- data/test/test_reflex.rb +36 -0
- data/test/test_screen.rb +24 -2
- data/test/test_snap_constraint.rb +140 -0
- data/test/test_text_event.rb +54 -0
- data/test/test_view.rb +152 -25
- data/test/test_wheel_constraint.rb +125 -0
- data/test/test_wheel_event.rb +24 -10
- data/test/test_window.rb +205 -43
- metadata +154 -10
- data/.github/workflows/utils.rb +0 -127
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
// -*- c++ -*-
|
|
2
|
+
#pragma once
|
|
3
|
+
#ifndef __REFLEX_CLIPBOARD_H__
|
|
4
|
+
#define __REFLEX_CLIPBOARD_H__
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
#include <xot/pimpl.h>
|
|
8
|
+
#include <reflex/defs.h>
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
namespace Reflex
|
|
12
|
+
{
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class Clipboard
|
|
16
|
+
{
|
|
17
|
+
|
|
18
|
+
public:
|
|
19
|
+
|
|
20
|
+
Clipboard (const char* text = NULL);
|
|
21
|
+
|
|
22
|
+
~Clipboard ();
|
|
23
|
+
|
|
24
|
+
void set_text (const char* text);
|
|
25
|
+
|
|
26
|
+
const char* text () const;
|
|
27
|
+
|
|
28
|
+
void set_image (const Image& image);
|
|
29
|
+
|
|
30
|
+
const Image* image () const;
|
|
31
|
+
|
|
32
|
+
void clear ();
|
|
33
|
+
|
|
34
|
+
operator bool () const;
|
|
35
|
+
|
|
36
|
+
bool operator ! () const;
|
|
37
|
+
|
|
38
|
+
struct Data;
|
|
39
|
+
|
|
40
|
+
Xot::PSharedImpl<Data> self;
|
|
41
|
+
|
|
42
|
+
};// Clipboard
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
void set_clipboard (const Clipboard& clipboard);
|
|
46
|
+
|
|
47
|
+
Clipboard get_clipboard ();
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
}// Reflex
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
#endif//EOH
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
// -*- c++ -*-
|
|
2
|
+
#pragma once
|
|
3
|
+
#ifndef __REFLEX_COLOR_PICKER_H__
|
|
4
|
+
#define __REFLEX_COLOR_PICKER_H__
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
#include <xot/ref.h>
|
|
8
|
+
#include <xot/pimpl.h>
|
|
9
|
+
#include <reflex/defs.h>
|
|
10
|
+
#include <reflex/event.h>
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
namespace Reflex
|
|
14
|
+
{
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Window;
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class ColorPicker : public Xot::RefCountable<>
|
|
21
|
+
{
|
|
22
|
+
|
|
23
|
+
typedef ColorPicker This;
|
|
24
|
+
|
|
25
|
+
public:
|
|
26
|
+
|
|
27
|
+
typedef Xot::Ref<This> Ref;
|
|
28
|
+
|
|
29
|
+
ColorPicker ();
|
|
30
|
+
|
|
31
|
+
virtual ~ColorPicker ();
|
|
32
|
+
|
|
33
|
+
virtual void pick_color ();
|
|
34
|
+
|
|
35
|
+
virtual void pick_color (const Color& initial);
|
|
36
|
+
|
|
37
|
+
virtual void set_owner (Window* window);
|
|
38
|
+
|
|
39
|
+
virtual Window* owner ();
|
|
40
|
+
|
|
41
|
+
virtual const Window* owner () const;
|
|
42
|
+
|
|
43
|
+
virtual void set_alpha (bool state);
|
|
44
|
+
|
|
45
|
+
virtual bool alpha () const;
|
|
46
|
+
|
|
47
|
+
virtual void on_color (ColorEvent* e);
|
|
48
|
+
|
|
49
|
+
virtual void on_close (Event* e);
|
|
50
|
+
|
|
51
|
+
virtual operator bool () const;
|
|
52
|
+
|
|
53
|
+
virtual bool operator ! () const;
|
|
54
|
+
|
|
55
|
+
struct Data;
|
|
56
|
+
|
|
57
|
+
Xot::PSharedImpl<Data> self;
|
|
58
|
+
|
|
59
|
+
};// ColorPicker
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
}// Reflex
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
#endif//EOH
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
// -*- c++ -*-
|
|
2
|
+
#pragma once
|
|
3
|
+
#ifndef __REFLEX_CONSTRAINT_H__
|
|
4
|
+
#define __REFLEX_CONSTRAINT_H__
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
#include <xot/ref.h>
|
|
8
|
+
#include <xot/pimpl.h>
|
|
9
|
+
#include <rays/point.h>
|
|
10
|
+
#include <reflex/defs.h>
|
|
11
|
+
#include <reflex/selector.h>
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
namespace Reflex
|
|
15
|
+
{
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class View;
|
|
19
|
+
class Pin;
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class Constraint : public Xot::RefCountable<>, public HasSelector
|
|
23
|
+
{
|
|
24
|
+
|
|
25
|
+
typedef Constraint This;
|
|
26
|
+
|
|
27
|
+
public:
|
|
28
|
+
|
|
29
|
+
typedef Xot::Ref<This> Ref;
|
|
30
|
+
|
|
31
|
+
virtual ~Constraint ();
|
|
32
|
+
|
|
33
|
+
virtual void remove ();
|
|
34
|
+
|
|
35
|
+
virtual const Pin& pin (size_t index) const;
|
|
36
|
+
|
|
37
|
+
virtual View* view (size_t index);
|
|
38
|
+
|
|
39
|
+
virtual const View* view (size_t index) const;
|
|
40
|
+
|
|
41
|
+
virtual void set_spring (float hertz);
|
|
42
|
+
|
|
43
|
+
virtual float spring () const;
|
|
44
|
+
|
|
45
|
+
virtual void set_damping (float ratio);
|
|
46
|
+
|
|
47
|
+
virtual float damping () const;
|
|
48
|
+
|
|
49
|
+
virtual void set_collide (bool state);
|
|
50
|
+
|
|
51
|
+
virtual bool can_collide () const;
|
|
52
|
+
|
|
53
|
+
virtual bool is_removed () const;
|
|
54
|
+
|
|
55
|
+
virtual operator bool () const;
|
|
56
|
+
|
|
57
|
+
virtual bool operator ! () const;
|
|
58
|
+
|
|
59
|
+
struct Data;
|
|
60
|
+
|
|
61
|
+
Xot::PImpl<Data> self;
|
|
62
|
+
|
|
63
|
+
protected:
|
|
64
|
+
|
|
65
|
+
Constraint (Data* data);
|
|
66
|
+
|
|
67
|
+
virtual SelectorPtr* get_selector_ptr () override;
|
|
68
|
+
|
|
69
|
+
};// Constraint
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
class SnapConstraint : public Constraint
|
|
73
|
+
{
|
|
74
|
+
|
|
75
|
+
typedef Constraint Super;
|
|
76
|
+
|
|
77
|
+
public:
|
|
78
|
+
|
|
79
|
+
virtual ~SnapConstraint ();
|
|
80
|
+
|
|
81
|
+
virtual void set_angle (float min_degree, float max_degree);
|
|
82
|
+
|
|
83
|
+
virtual void clear_angle ();
|
|
84
|
+
|
|
85
|
+
virtual float angle_min () const;
|
|
86
|
+
|
|
87
|
+
virtual float angle_max () const;
|
|
88
|
+
|
|
89
|
+
virtual bool has_angle () const;
|
|
90
|
+
|
|
91
|
+
virtual void set_motor (float degrees_per_second);
|
|
92
|
+
|
|
93
|
+
virtual void clear_motor ();
|
|
94
|
+
|
|
95
|
+
virtual float motor () const;
|
|
96
|
+
|
|
97
|
+
virtual bool has_motor () const;
|
|
98
|
+
|
|
99
|
+
virtual void set_force (float max_torque);
|
|
100
|
+
// the default is 1000 * mass, and 0 makes the motor powerless
|
|
101
|
+
|
|
102
|
+
virtual void clear_force ();
|
|
103
|
+
|
|
104
|
+
virtual float force () const;
|
|
105
|
+
|
|
106
|
+
virtual bool has_force () const;
|
|
107
|
+
|
|
108
|
+
protected:
|
|
109
|
+
|
|
110
|
+
SnapConstraint ();
|
|
111
|
+
|
|
112
|
+
friend class Pin;
|
|
113
|
+
|
|
114
|
+
friend SnapConstraint* SnapConstraint_create ();
|
|
115
|
+
|
|
116
|
+
};// SnapConstraint
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
class LinkConstraint : public Constraint
|
|
120
|
+
{
|
|
121
|
+
|
|
122
|
+
typedef Constraint Super;
|
|
123
|
+
|
|
124
|
+
public:
|
|
125
|
+
|
|
126
|
+
virtual ~LinkConstraint ();
|
|
127
|
+
|
|
128
|
+
virtual void set_axis (coord x, coord y);
|
|
129
|
+
|
|
130
|
+
virtual void set_axis (const Point& direction);
|
|
131
|
+
|
|
132
|
+
virtual void clear_axis ();
|
|
133
|
+
|
|
134
|
+
virtual const Point& axis () const;
|
|
135
|
+
|
|
136
|
+
virtual bool has_axis () const;
|
|
137
|
+
|
|
138
|
+
virtual void set_distance (coord distance);
|
|
139
|
+
|
|
140
|
+
virtual void clear_distance ();
|
|
141
|
+
|
|
142
|
+
virtual coord distance () const;
|
|
143
|
+
|
|
144
|
+
virtual bool has_distance () const;
|
|
145
|
+
|
|
146
|
+
virtual coord current_distance () const;
|
|
147
|
+
|
|
148
|
+
virtual void set_range (coord min, coord max);
|
|
149
|
+
|
|
150
|
+
virtual void clear_range ();
|
|
151
|
+
|
|
152
|
+
virtual coord range_min () const;
|
|
153
|
+
|
|
154
|
+
virtual coord range_max () const;
|
|
155
|
+
|
|
156
|
+
virtual bool has_range () const;
|
|
157
|
+
|
|
158
|
+
virtual void set_motor (coord pixels_per_second);
|
|
159
|
+
|
|
160
|
+
virtual void clear_motor ();
|
|
161
|
+
|
|
162
|
+
virtual coord motor () const;
|
|
163
|
+
|
|
164
|
+
virtual bool has_motor () const;
|
|
165
|
+
|
|
166
|
+
virtual void set_force (float max_force);
|
|
167
|
+
// the default is 1000 * mass, and 0 makes it powerless
|
|
168
|
+
|
|
169
|
+
virtual void clear_force ();
|
|
170
|
+
|
|
171
|
+
virtual float force () const;
|
|
172
|
+
|
|
173
|
+
virtual bool has_force () const;
|
|
174
|
+
|
|
175
|
+
protected:
|
|
176
|
+
|
|
177
|
+
LinkConstraint ();
|
|
178
|
+
|
|
179
|
+
friend class Pin;
|
|
180
|
+
|
|
181
|
+
friend LinkConstraint* LinkConstraint_create ();
|
|
182
|
+
|
|
183
|
+
};// LinkConstraint
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
class WheelConstraint : public Constraint
|
|
187
|
+
{
|
|
188
|
+
|
|
189
|
+
typedef Constraint Super;
|
|
190
|
+
|
|
191
|
+
public:
|
|
192
|
+
|
|
193
|
+
virtual ~WheelConstraint ();
|
|
194
|
+
|
|
195
|
+
virtual void set_axis (coord x, coord y);
|
|
196
|
+
|
|
197
|
+
virtual void set_axis (const Point& direction);
|
|
198
|
+
|
|
199
|
+
virtual const Point& axis () const;
|
|
200
|
+
|
|
201
|
+
virtual void set_range (coord min, coord max);
|
|
202
|
+
|
|
203
|
+
virtual void clear_range ();
|
|
204
|
+
|
|
205
|
+
virtual coord range_min () const;
|
|
206
|
+
|
|
207
|
+
virtual coord range_max () const;
|
|
208
|
+
|
|
209
|
+
virtual bool has_range () const;
|
|
210
|
+
|
|
211
|
+
virtual void set_motor (float degrees_per_second);
|
|
212
|
+
|
|
213
|
+
virtual void clear_motor ();
|
|
214
|
+
|
|
215
|
+
virtual float motor () const;
|
|
216
|
+
|
|
217
|
+
virtual bool has_motor () const;
|
|
218
|
+
|
|
219
|
+
virtual void set_force (float max_torque);
|
|
220
|
+
// the default is 1000 * mass, and 0 makes the motor powerless
|
|
221
|
+
|
|
222
|
+
virtual void clear_force ();
|
|
223
|
+
|
|
224
|
+
virtual float force () const;
|
|
225
|
+
|
|
226
|
+
virtual bool has_force () const;
|
|
227
|
+
|
|
228
|
+
protected:
|
|
229
|
+
|
|
230
|
+
WheelConstraint ();
|
|
231
|
+
|
|
232
|
+
friend class Pin;
|
|
233
|
+
|
|
234
|
+
friend WheelConstraint* WheelConstraint_create ();
|
|
235
|
+
|
|
236
|
+
};// WheelConstraint
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
class ChaseConstraint : public Constraint
|
|
240
|
+
{
|
|
241
|
+
|
|
242
|
+
typedef Constraint Super;
|
|
243
|
+
|
|
244
|
+
public:
|
|
245
|
+
|
|
246
|
+
virtual ~ChaseConstraint ();
|
|
247
|
+
|
|
248
|
+
virtual void set_target (const Pin& target);
|
|
249
|
+
|
|
250
|
+
virtual const Pin& target () const;
|
|
251
|
+
|
|
252
|
+
virtual void set_force (float max_force);
|
|
253
|
+
// the default is 1000 * mass, and 0 makes it powerless
|
|
254
|
+
|
|
255
|
+
virtual void clear_force ();
|
|
256
|
+
|
|
257
|
+
virtual float force () const;
|
|
258
|
+
|
|
259
|
+
virtual bool has_force () const;
|
|
260
|
+
|
|
261
|
+
protected:
|
|
262
|
+
|
|
263
|
+
ChaseConstraint ();
|
|
264
|
+
|
|
265
|
+
friend class Pin;
|
|
266
|
+
|
|
267
|
+
friend ChaseConstraint* ChaseConstraint_create ();
|
|
268
|
+
|
|
269
|
+
};// ChaseConstraint
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
}// Reflex
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
#endif//EOH
|