These are chat archives for AvaloniaUI/Avalonia

22nd
Mar 2016
Darnell Williams
@Seeker1437
Mar 22 2016 12:56
@grokys .... where is Application.Current actually being set.... I can't find it anywhere
Darnell Williams
@Seeker1437
Mar 22 2016 12:56
Oh you mean that whole return statement I skipped lol XD
Oh okay, thank @grokys
Darnell Williams
@Seeker1437
Mar 22 2016 13:07
What is the best way to store the windows? I noticed I can ask Window to access Application atm.
Steven Kirk
@grokys
Mar 22 2016 13:08
I noticed I can ask Window to access Application atm.
what do you mean by this?
Darnell Williams
@Seeker1437
Mar 22 2016 13:12
I couldn't do Application.Current for example
But maybe it would be better to put it in IApplicationLifeCycle?
I would have to add Perspex.Application as a reference to Perspex.Controls which i know was not the intent.
Darnell Williams
@Seeker1437
Mar 22 2016 13:17
I was thinking the Window would be added to the window collection at Application.Current.Windows during the Platform.CreateWindow() or from the Window ctor
Steven Kirk
@grokys
Mar 22 2016 13:20
ah, ok. yeah i think the best way to do this will be when Application gets put into Perspex.Controls, which is something i believe @jkoritzinsky is currently doing
if you need to hack around it for now, you could just add a static collection to Window that you populate
Darnell Williams
@Seeker1437
Mar 22 2016 13:23
Okay , thanks!
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 17:28

@grokys Hi, I'm cant get to work attached property:

C#

    public class RendererOptions : PerspexObject
    {
        public static readonly AttachedProperty<ShapeRenderer> RendererProperty =
            PerspexProperty.RegisterAttached<RendererOptions, PerspexObject, ShapeRenderer>(nameof(Renderer), null, true, BindingMode.TwoWay);

        public ShapeRenderer Renderer
        {
            get { return GetValue(RendererProperty); }
            set { SetValue(RendererProperty, value); }
        }

        public static ShapeRenderer GetRenderer(PerspexObject obj)
        {
            return obj.GetValue(RendererProperty);
        }

        public static void SetRenderer(PerspexObject obj, ShapeRenderer value)
        {
            obj.SetValue(RendererProperty, value);
        }
    }

Xaml:

<Grid views:RendererOptions.Renderer="{Binding Renderers[0]}">

Exception:

Core2D.Perspex.vshost.exe Error: 0 : Error loading XAML: System.Reflection.TargetInvocationException: Obiekt docelowy wywołania zgłosił wyjątek. ---> OmniXaml.LoadException: Error loading XAML: System.Reflection.TargetInvocationException: Obiekt docelowy wywołania zgłosił wyjątek. ---> OmniXaml.LoadException: Error loading XAML: System.InvalidOperationException: Cannot assign to 'Renderer' on 'Perspex.Controls.Grid
Not sure what I'm doing wrong.
danwalmsley
@danwalmsley
Mar 22 2016 17:30
does renderer inherit from control?
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 17:31
no
but this shouldn't matter, this can be bool or double
Steven Kirk
@grokys
Mar 22 2016 17:33
hmm, at first glance looks like an OmniXAML bug to me...
it doesn't seem to be recognising that it's an attached property
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 17:46
well that is strange
Weston
@ronnyek
Mar 22 2016 17:51
is xaml in perspex basically just parsing xaml into object model
and then rendering that object model
seems like what it would be
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:00
@grokys Looks like some binding issue
    public class RendererOptions : PerspexObject
    {
        public static readonly AttachedProperty<double> RendererProperty =
            PerspexProperty.RegisterAttached<RendererOptions, PerspexObject, double>(nameof(Renderer), 0.0, true, BindingMode.TwoWay);

        public double Renderer
        {
            get { return GetValue(RendererProperty); }
            set { SetValue(RendererProperty, value); }
        }

        public static double GetRenderer(PerspexObject obj)
        {
            return obj.GetValue(RendererProperty);
        }

        public static void SetRenderer(PerspexObject obj, double value)
        {
            obj.SetValue(RendererProperty, value);
        }
    }
<Grid views:RendererOptions.Renderer="10">
this works
Steven Kirk
@grokys
Mar 22 2016 18:01
hmm, but the error is coming from OmniXAML: OmniXaml.LoadException
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:01
but this does not work
<Grid views:RendererOptions.Renderer="{Binding #control.Bounds.Width}">
Steven Kirk
@grokys
Mar 22 2016 18:01
so maybe OmniXaml is getting confused with a certain combination of things there
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:01
Error loading XAML: System.Reflection.TargetInvocationException: Obiekt docelowy wywołania zgłosił wyjątek. ---> OmniXaml.LoadException: Error loading XAML: System.Reflection.TargetInvocationException: Obiekt docelowy wywołania zgłosił wyjątek. ---> OmniXaml.LoadException: Error loading XAML: System.InvalidOperationException: Cannot assign to 'Renderer' on 'Perspex.Controls.Grid
   w Perspex.Markup.Xaml.Context.PropertyAccessor.SetBinding(Object instance, MutableMember member, PerspexProperty property, IValueContext context, IBinding binding)
   w Perspex.Markup.Xaml.Context.PropertyAccessor.SetValue(Object instance, MutableMember member, Object value, IValueContext context)
   w Perspex.Markup.Xaml.Context.PerspexMemberValuePlugin.SetValue(Object instance, Object value, IValueContext valueContext)
   w OmniXaml.Typing.MutableMember.SetValue(Object instance, Object value, IValueContext pipeline)
   w OmniXaml.ObjectAssembler.StateCommuter.AssignChildToParentProperty()
   w OmniXaml.ObjectAssembler.StateCommuter.AssociateCurrentInstanceToParent()
   w OmniXaml.ObjectAssembler.Commands.EndObjectCommand.ProcessCurrentInstanceValueWithMarkupExtension()
   w OmniXaml.ObjectAssembler.Commands.EndObjectCommand.Execute()
   w OmniXaml.ObjectAssembler.ObjectAssembler.Process(Instruction instruction)
   w OmniXaml.TemplateHostingObjectAssembler.Process(Instruction instruction)
   w Perspex.Markup.Xaml.Context.PerspexObjectAssembler.Process(Instruction node)
   w OmniXaml.XmlParser.Parse(IEnumerable`1 xamlNodes)
   w OmniXaml.XmlParser.Parse(IXmlReader stream)
   w OmniXaml.XmlLoader.Load(Stream stream, IParser parser) ---> System.InvalidOperationException: Cannot assign to 'Renderer' on 'Perspex.Controls.Grid
   w Perspex.Markup.Xaml.Context.PropertyAccessor.SetBinding(Object instance, MutableMember member, PerspexProperty property, IValueContext context, IBinding binding)
   w Perspex.Markup.Xaml.Context.PropertyAccessor.SetValue(Object instance, MutableMember member, Object value, IValueContext context)
   w Perspex.Markup.Xaml.Context.PerspexMemberValuePlugin.SetValue(Object instance, Object value, IValueContext valueContext)
   w OmniXaml.Typing.MutableMember.SetValue(Object instance, Object value, IValueContext pipeline)
   w OmniXaml.ObjectAssembler.StateCommuter.AssignChildToParentProperty()
   w OmniXaml.ObjectAssembler.StateCommuter.AssociateCurrentInstanceToParent()
   w OmniXaml.ObjectAssembler.Commands.EndObjectCommand.ProcessCurrentInstanceValueWithMarkupExtension()
   w OmniXaml.ObjectAssembler.Commands.EndObjectCommand.Execute()
   w OmniXaml.ObjectAssembler.ObjectAssembler.Process(Instruction instruction)
   w OmniXaml.TemplateHostingObjectAssembler.Process(Instruction instruction)
   w Perspex.Markup.Xaml.Context.PerspexObjectAssembler.Process(Instruction node)
   w OmniXaml.XmlParser.Parse(IEnumerable`1 xamlNodes)
   w OmniXaml.XmlParser.Parse(IXmlReader stream)
   w OmniXaml.XmlLoader.Load(Stream stream, IParser parser)
   --- Koniec śladu stosu wyjątków wewnętrznych ---
   w OmniXaml.XmlLoader.Load(Stream stream, IParser parser)
   w OmniXaml.XmlLoader.Load(Stream stream, Settings loadSettings)
   w Perspex.Markup.Xaml.PerspexXamlLoader.Load(Stream stream, Object rootInstance)
   w Perspex.Markup.Xaml.PerspexXamlLoader.Load(Type type, Object rootInstance)
   w Perspex.Markup.Xaml.PerspexXamlLoader.Load(Object obj)
   w Core2D.Perspex.Views.DocumentControl.InitializeComponent() w C:\DOWNLOADS\GitHub-Core2D\Core2D\src\Core2D.Perspex\Views\DocumentControl.xaml.cs:wiersz 26
   w Core2D.Perspex.Views.DocumentControl..ctor() w C:\DOWNLOADS\GitHub-Core2D\Core2D\src\Core2D.Perspex\Views\DocumentControl.xaml.cs:wiersz 18
   --- Koniec śladu stosu wyjątków wewnętrznych ---
   w System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   w System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMar... System.RuntimeType.Create
Steven Kirk
@grokys
Mar 22 2016 18:02
ah
ok, yeah the problem is in perspex then
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:02
is it fixable
Steven Kirk
@grokys
Mar 22 2016 18:02
omnixaml is just wrapping the exception
i'm sure it is!
i will take a look when i get some free time... got some day-job stuff that i need to finish asap
will hopefully be able to take a look this evening or tomorrow though
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:04
ok
I will create issue
Steven Kirk
@grokys
Mar 22 2016 18:04
it looks like the fact it's an attached property is being forgotten somewhere
you might be able to fix it easily enough yourself if you wanted to
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:05
where to look?
Steven Kirk
@grokys
Mar 22 2016 18:05
step into the code with the version that works and that doesn't and see what's different
i'd start at Perspex.Markup.Xaml.Context.PropertyAccessor.SetValue
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:33
looks like the https://github.com/Perspex/Perspex/blob/master/src/Markup/Perspex.Markup.Xaml/Context/PropertyAccessor.cs#L69 is looking only for registered properties and not attached
Steven Kirk
@grokys
Mar 22 2016 18:37
hmm, but attached properties should be handled above, no?
var propertyName = attached == null ? 
                member.Name : 
                member.DeclaringType.Name + "." + member.Name;
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:39
it is in this form RendererOptions.Renderer
but PerspexPropertyRegistry.Instance.FindRegistered does not look for attached
Steven Kirk
@grokys
Mar 22 2016 18:50
that line gets all registered properties - which includes attached properties
the if statement after it filters them based on whether a . is included: if it is, then it makes sure the owner has the same name as the first part of the dotted name
it could be the fact it has a namespace...
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:53
        private static PerspexProperty FindPerspexProperty(object instance, MutableMember member)
        {
            var target = instance as PerspexObject;

            if (target == null)
            {
                return null;
            }

            var attached = member as PerspexAttachableXamlMember;
            var propertyName = attached == null ? 
                member.Name : 
                member.DeclaringType.Name + "." + member.Name;


            System.Diagnostics.Debug.WriteLine($"member.DeclaringType: {member.DeclaringType.UnderlyingType}");

            var registered = PerspexPropertyRegistry.Instance.FindRegistered(target, propertyName);
            if (registered == null)
            {
                var result = PerspexPropertyRegistry.Instance.FindRegistered(member.DeclaringType.UnderlyingType, propertyName);


                System.Diagnostics.Debug.WriteLine($"UnderlyingType : {member.DeclaringType.UnderlyingType}, result: {result}");

                return result;
            }
            System.Diagnostics.Debug.WriteLine($"propertyName : {propertyName}, registered: {registered}");

            //PerspexPropertyRegistry.Instance.GetAttached(PropertyOwnerType).Where((p) => p.Name == this.PropertyName).FirstOrDefault();

            return registered;
        }
my quick hack
Steven Kirk
@grokys
Mar 22 2016 18:54
ok... is this due to the fact it has a namespace?
because PerspexPropertyRegistry doesn't know about namespaces...
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:54
not namespace issue
the propertyName is correct
but target object does not have that property registered
still not working, but does not throw
Steven Kirk
@grokys
Mar 22 2016 18:57
ok, so it sounds like that might be the problem
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 18:58
yey
        private static PerspexProperty FindPerspexProperty(object instance, MutableMember member)
        {
            var target = instance as PerspexObject;

            if (target == null)
            {
                return null;
            }

            var attached = member as PerspexAttachableXamlMember;
            var propertyName = attached == null ? 
                member.Name : 
                member.DeclaringType.Name + "." + member.Name;

            var registered = PerspexPropertyRegistry.Instance.FindRegistered(target, propertyName);
            if (registered == null)
            {
                var result = PerspexPropertyRegistry.Instance.FindRegistered(member.DeclaringType.UnderlyingType, propertyName);
                System.Diagnostics.Debug.WriteLine($"UnderlyingType : {member.DeclaringType.UnderlyingType}, result: {result}");

                return result;
            }
            //System.Diagnostics.Debug.WriteLine($"propertyName : {propertyName}, registered: {registered}");

            return registered;
        }
this works!!!
Steven Kirk
@grokys
Mar 22 2016 18:58
are you saying that PerspexPropertyRegistry.GetRegistered(typeof(Grid)) doesn't return your RendererOptions.Renderer property?
danwalmsley
@danwalmsley
Mar 22 2016 18:59
@grokys I'm going to do a PR for adding static array of Windows, to help @Seeker1437. I assume its just add a static list, and in the Window constructor add to that list, and remove in destructor?
Steven Kirk
@grokys
Mar 22 2016 18:59
not sure - i suspect that they should be added to the list on Open and Close
best to check WPF's behavior there
where are you adding them to?
danwalmsley
@danwalmsley
Mar 22 2016 19:00
I'm just looking now
I assume Window class
will have a static list
then in Open and Close, Window.OpenWindows.Add (this)
Steven Kirk
@grokys
Mar 22 2016 19:01
ah ok, yeah that sounds good for now
we can move that list to Application when it's moved to Perspex.Controls
although to be honest i think i might prefer it in Window to in Application anyway
danwalmsley
@danwalmsley
Mar 22 2016 19:02
ok il, knock something up and send you a PR
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 19:03
this is output using my fix
Steven Kirk
@grokys
Mar 22 2016 19:04
could you check if PerspexPropertyRegistry.GetRegistered(typeof(Grid)) includes your RendererOptions.Renderer property?
the fact that the property is being found with <Grid views:RendererOptions.Renderer="10"> but not with a binding confuses me as afaics they both use the same method to find the property
though i do think the logic is wrong as it stands, as it's going to get confused by namespaces
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 19:06
well the first case is not using binding
Steven Kirk
@grokys
Mar 22 2016 19:07
yeah, but it should still call Perspex.Markup.Xaml.Context.PropertyAccessor.SetValue
danwalmsley
@danwalmsley
Mar 22 2016 19:08
@Grokys, did you mean Show and ShowDialog?
Steven Kirk
@grokys
Mar 22 2016 19:10
i guess so...
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 19:17
@grokys I am not sure about FindRegistered not working
target type: Perspex.Controls.Grid, propertyName: RendererOptions.Renderer
the Rederer property is not registered on Grid
Steven Kirk
@grokys
Mar 22 2016 19:18
hmm ok
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 19:18
        public static readonly AttachedProperty<ShapeRenderer> RendererProperty =
            PerspexProperty.RegisterAttached<RendererOptions, PerspexObject, ShapeRenderer>(nameof(Renderer), null, true, BindingMode.TwoWay);
hold on, no it must be if you're finding it
i'm confused
https://github.com/Perspex/Perspex/blob/master/src/Perspex.Base/PerspexProperty.cs#L304 calls PerspexPropertyRegistry.Instance.Register which should register the property
danwalmsley
@danwalmsley
Mar 22 2016 19:21
@grokys iv opened PR #480 when you get a chance to have a gander, its pretty small changes, seems to work
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 19:21
yes but find method only gets properties registered for Grid
Steven Kirk
@grokys
Mar 22 2016 19:22
which includes attached properties!
it's registering the property for THost which in this case is PerspexObject
so the property should show up as registered for everything that derives from PerspexObject
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 19:23
oh yes that should happen
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 19:43
ok @grokys I now what is worng
Perspex is working ok and FindRegistered is ok
the property is not registered before xaml is loaded
I have added new RendererOptions(); to app static constructor and all works
Steven Kirk
@grokys
Mar 22 2016 19:47
what was it in the PR that you submitted that fixed it?
hmm, ok. we probably need to add something to perspex to handle that
Wiesław Šoltés
@wieslawsoltes
Mar 22 2016 19:48
I just used RendererOptions type to find properties and that probably triggered registration or something
isnt that C# issue
with static initialization
Steven Kirk
@grokys
Mar 22 2016 19:49
yeah, that would have triggered registration
i just added this issue: Perspex/Perspex#481
fixing that would cause the property to be registered, so would fix both
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 19:51
@grokys The designer api is giving me issues with combining Perspex.Application and Perspex.Controls. It
It has to be in it's own assembly because of it's dependency on Perspex.Markup.Xaml
Steven Kirk
@grokys
Mar 22 2016 19:52
oh...
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 19:53
I'm planning on either leaving it in Perspex.Application or renaming Perspex.Application to Perspex.Application.Designer.
Steven Kirk
@grokys
Mar 22 2016 19:53
i didn't realise that Perspex.Application had a dependency on Perspex.Markup.Xaml... or if i did, i'd forgotten ;)
how about moving the designer stuff to Perspex.Markup.Xaml? would that work?
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 19:54
The offending file is DesignerAssist.cs. Take a look and let me know what you think.
Other than that file, we're good.
Steven Kirk
@grokys
Mar 22 2016 19:54
yeah, that wasn't written by me...
looking at the file, it's pretty XAML-related
i think Perspex.Markup.Xaml might be the best place for it
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 19:57
I'll try that out and see if it works.
Can't do that either. DesignSupport.cs has dependencies on Perspex.Themes.Default.
It's because the designer has a built in application that needs everything else it depends on.
I think most of the designer stuff should be in a seperate assembly except for Design.cs (with the design attached properties).
Steven Kirk
@grokys
Mar 22 2016 20:00
yeah, that would work for me
i think...
;)
i think putting all that stuff in Perspex.Application was kind of a "we don't know where to put it; let's put it here" thing anyway
but i haven't been involved in the designer
danwalmsley
@danwalmsley
Mar 22 2016 20:02
@grokys did you see my PR?
Steven Kirk
@grokys
Mar 22 2016 20:02
not had a good look at it yet - sorry i'm pretty busy
danwalmsley
@danwalmsley
Mar 22 2016 20:02
ok np
Steven Kirk
@grokys
Mar 22 2016 20:14
@danwalmsley added a few comments
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 20:19
@grokys #482 moves Application and the designer classes around how we just talked about.
Steven Kirk
@grokys
Mar 22 2016 20:20
thanks @jkoritzinsky !
danwalmsley
@danwalmsley
Mar 22 2016 20:21
@grokys iv actioned those comments
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 20:21
I'll go close the #476.
Steven Kirk
@grokys
Mar 22 2016 20:21
@danwalmsley there's still the Dispatcher.UIThread.VerifyAccess(); in the getter
danwalmsley
@danwalmsley
Mar 22 2016 20:21
oh I didn't see comment on that 2 secs
Steven Kirk
@grokys
Mar 22 2016 20:22
i think it should probably be removed: it doesn't solve anything and gives a false sense of "oh this is thread-safe"
danwalmsley
@danwalmsley
Mar 22 2016 20:23
ok sure,
Steven Kirk
@grokys
Mar 22 2016 20:23
thanks @jkoritzinsky i will take a good look later this evening or tomorrow!
danwalmsley
@danwalmsley
Mar 22 2016 20:23
ok that's done
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 20:23
Awesome!
Steven Kirk
@grokys
Mar 22 2016 20:23
@danwalmsley one small thing: sorry to nitpick
danwalmsley
@danwalmsley
Mar 22 2016 20:24
no its fine
Steven Kirk
@grokys
Mar 22 2016 20:24
could you expose OpenWindows like: public static IList<Window> OpenWindows => s_windows;
danwalmsley
@danwalmsley
Mar 22 2016 20:24
sure,
Steven Kirk
@grokys
Mar 22 2016 20:24
it's a lot more succinct
danwalmsley
@danwalmsley
Mar 22 2016 20:25
can you explain the syntax? its still a property right?
Darnell Williams
@Seeker1437
Mar 22 2016 20:25
@grokys @jkoritzinsky Not sur eif that is a good idea quite yet, whatever we do, we just need to ensure that, the designer would not require any dependancies
also the "Can only be accessed from the UI Thread." comment is now incorrect
@jkoritzinsky i assume everything still works with the designer after this change?
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 20:27
There might need to be some assembly reference changes, but other than that it'll work. I'll go create a PR for PerspexVS with any needed changes if they exist.
Darnell Williams
@Seeker1437
Mar 22 2016 20:28
Cool, thanks!
Steven Kirk
@grokys
Mar 22 2016 20:28
you rock ;)
danwalmsley
@danwalmsley
Mar 22 2016 20:28
@grokys ok done.
Steven Kirk
@grokys
Mar 22 2016 20:28
thanks dan, you rock too ;)
Darnell Williams
@Seeker1437
Mar 22 2016 20:29
and guess what? @grokys you rock too!
Steven Kirk
@grokys
Mar 22 2016 20:29
This message was deleted
haha thanks seeker - you too. WE ALL ROCK
@danwalmsley i've not had chance to test it, but i'll merge it blind if you guarantee it doesn't break everything ;)
Steven Kirk
@grokys
Mar 22 2016 20:34
(i can't see how it would!)
danwalmsley
@danwalmsley
Mar 22 2016 20:35
@grokys :D I was hoping Id get a mention ;)
hehe
ok cant promise that it wont break everything, I can only say its not very likely
Steven Kirk
@grokys
Mar 22 2016 20:36
ok, lets do it ;)
(when CI completes)
Jeremy Koritzinsky
@jkoritzinsky
Mar 22 2016 20:39
I think that the designer is good (considering that there are actually no references to any of the Perspex assemblies in the PerspexVS project), but I'm not totally positive.
Steven Kirk
@grokys
Mar 22 2016 20:41
i think that's good enough when it comes to the designer ;)
it's not exactly the most stable thing on earth anyway
Darnell Williams
@Seeker1437
Mar 22 2016 20:43
true true
I am so excited to finish Docking for Perspex though!
Steven Kirk
@grokys
Mar 22 2016 20:43
yeah, will be fantastic to see it!
there may be something coming up which means i will getting a lot more intimate with VS extensions - hopefully that means i can contribute to the perspex designer too
Darnell Williams
@Seeker1437
Mar 22 2016 20:45
wanna take a look at the repo? It's 70% complete
Steven Kirk
@grokys
Mar 22 2016 20:45
i'm really busy at the moment, so not much time
Darnell Williams
@Seeker1437
Mar 22 2016 20:45
ofc, not usable right now anyways :P
Ill drop it so you can have it int he back of your mind though lol
Steven Kirk
@grokys
Mar 22 2016 20:46
thanks - i will have a browse at some point soon!
danwalmsley
@danwalmsley
Mar 22 2016 20:56
@grokys do you have a technique to put a breakpoint on Property.Register?
is that possible?
Steven Kirk
@grokys
Mar 22 2016 20:57
you mean one of the PerspexProperty.Register* methods?
Darnell Williams
@Seeker1437
Mar 22 2016 20:58
yeah
we get a missingmethod exception when the control is intialized xD
Steven Kirk
@grokys
Mar 22 2016 21:18
you should just be able to put a breakpoint on it
a missing method exception sounds like something is being compiled against a different version of a library to that which it's running
danwalmsley
@danwalmsley
Mar 22 2016 21:40
yeh id created a Perspex test app but not updated the nugget to latest nightly
working now
@grokys ready to push the merge button?
;)
Steven Kirk
@grokys
Mar 22 2016 21:41
ah yeah, sorry
merged
danwalmsley
@danwalmsley
Mar 22 2016 21:41
cheers
Darnell Williams
@Seeker1437
Mar 22 2016 21:45
thabks you rock!