Eilon Lipton
881e749d51
Throw when trying to dispose event handler IDs
...
Because it's not yet implemented.
2019-08-22 16:07:26 -07:00
Eilon Lipton
fa34bca07a
Add Label component, add StackLayout.Orientation property
...
- Also added helpers to serialize/deserialize Color objects and Double objects.
2019-08-22 15:29:52 -07:00
Eilon Lipton
78cfcbe1c9
Update StackLayout to new registration/base class
2019-08-22 14:14:44 -07:00
Steve Sanderson
075f90e713
Remove unused usings
2019-08-22 14:05:13 -07:00
Steve Sanderson
2ca18fcc63
Encapsulate native control registration
2019-08-22 14:05:13 -07:00
Steve Sanderson
b4f31e48a4
Define NativeControlComponentBase so as to eliminate direct use of RenderTreeBuilder in consumers
2019-08-22 14:05:13 -07:00
Steve Sanderson
d1bc4a6700
Use AttributesBuilder to simplify attribute rendering
2019-08-22 14:05:13 -07:00
Steve Sanderson
a8d7cc49a7
Dispose adapters/controls when removed from UI
2019-08-22 14:05:13 -07:00
Eilon Lipton
bbc0e4a60f
Blaxamarin updates: Have file represent ContentPages, add StackLayout
...
- Redid root Blaxamarin components to represent a ContentPage, which should make it more generically useful in apps
- Added StackLayout component
- But... found a bug in Emblazon where siblingIndex of elements is always 0 (applies to BlinForms and Blaxamarin, but has a more negative effect in Blaxamarin where sibling order always matters, whereas in BlinForms it rarely matters)
2019-08-22 14:00:22 -07:00
Eilon Lipton
66ed7e31c1
Remove private setter from BlinFormsRenderer.RootForm
2019-08-22 13:58:02 -07:00
Eilon Lipton
a75ba4d8de
Initial support for Blaxamarin!
...
- Only Button is supported
- That's it, only Button
2019-08-21 10:12:12 -07:00
Eilon Lipton
8304f47851
Add emtpy Blaxamarin.Framework project
...
- Created appropriate dependencies between projects
- Updated (downgraded, actually) package references to stable versions
2019-08-20 16:24:13 -07:00
Eilon Lipton
e157884cc2
Add solution folders
2019-08-20 14:19:53 -07:00
Eilon Lipton
bbb4bb1f5c
Factor .NET Standard components of BlinForms into new Emblazon library
...
- Emblazon library is .NET Standard 2.0
- BlinForms remains .NET Core App 3.0 (required for WinForms)
- Made things reasonably generic in Emblazon to support future native renderers (e.g. Blaxamarin)
2019-08-20 13:48:15 -07:00
Eilon Lipton
84bdc4f5ca
Add empty Xamarin.Forms project
...
With iOS and Android backends.
2019-08-19 15:52:03 -07:00
Eilon Lipton
c84cc210f8
Rename BlinForms sample project
2019-08-19 15:19:57 -07:00
Eilon Lipton
4a19a1f8aa
Make rendered attributes nullable
...
They only render when non-null, so less logic is needed to know when to apply them (always apply them).
2019-08-19 09:51:19 -07:00
Eilon Lipton
c088a950aa
Remove PlaceholderControl and custom parenting logic
...
New logic is to assume that if target control is already parented, no need to add it as a child control.
2019-08-19 09:36:20 -07:00
Eilon Lipton
1fa2e77f63
Introduce factory with context for creating native controls
...
This will be useful for the SplitContainer so that dummy controls won't be needed for the splitter panels.
2019-08-16 14:00:34 -07:00
Eilon Lipton
afc32ba73d
Add initial SplitContainer component
2019-08-16 13:32:58 -07:00
Eilon Lipton
eac0c6ff9b
Add more common Control properties, add TextBox component
2019-08-14 16:42:54 -07:00
Eilon Lipton
53feff4a5b
Change Blinforms container control to DockStyle.Fill
...
This is needed (for now) to have a reasonable anchor behavior for child controls
2019-08-14 16:42:36 -07:00
Eilon Lipton
bebbcff862
Add debugging output for odd-looking sibling index
...
E.g. a sibling index that is out-of-bounds on the child collection.
2019-08-14 14:59:51 -07:00
Eilon Lipton
c503365479
Add text and markup nodes at correct sibling index
2019-08-14 14:59:25 -07:00
Eilon Lipton
4e415d4b0d
Minor code cleanup and simplification
2019-08-14 14:17:47 -07:00
Eilon Lipton
6a29678b7e
Add support for frame range frame types
...
This enables supporting nested components
2019-08-14 11:26:24 -07:00
Eilon Lipton
79ede4e1d0
Add missing property mapper types
2019-08-14 11:25:52 -07:00
Eilon Lipton
4b07657b06
Move element creation code into a single method
...
(No functional change at all.)
2019-08-14 10:29:44 -07:00
Eilon Lipton
bb3f3bb6f5
Promote Control properties to base component
2019-08-13 15:45:57 -07:00
Eilon Lipton
f19d9c9e17
Add readonly modifier
2019-08-13 15:45:28 -07:00
Eilon Lipton
83944bb2d7
Update sequence indexes in rendering
2019-08-13 14:21:39 -07:00
Eilon Lipton
4c00f697bf
Initial support for removing frames/controls
...
- Dummy adapters (not controls) are added to the shadow adapter tree
2019-08-12 17:00:52 -07:00
Eilon Lipton
fba7eb8d7f
Implement SetAttribute
...
- This enables changes to display after initial load
- Use native control attribute setters instead of always using Reflection
2019-08-12 11:03:29 -07:00
Eilon Lipton
aa14c286a5
Introduction of BlontrolAdapters
...
- Removed container Blontrols and replaced with shadow tree of BlontrolAdapters
- Temporarily removed Timer component (it's not a Control, so it's tricky)
2019-08-12 10:18:18 -07:00
Eilon Lipton
03a07eb7b1
Add container resize logic so controls show up
...
- Also add Timer component
2019-08-06 08:27:36 -07:00
Eilon Lipton
9b64beb69c
Minor formatting/code cleanup
2019-08-05 14:19:55 -07:00
Eilon Lipton
a1ba123c48
Add Left/Width/Height properties
2019-08-05 14:19:38 -07:00
Eilon Lipton
2ff67035f4
Add initial code from Steve
2019-08-02 16:49:21 -07:00