Search Unity

Utilities Script Inspector 3

Discussion in 'Tools In Progress' started by Flipbookee, Aug 10, 2013.

  1. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    @mcmorry, I don't have the full code yet, but something like this might be a good start:
    Code (csharp):
    1. self.monitor = [NSEvent addLocalMonitorForEventsMatchingMask:NSKeyDownMask
    2.     handler:^(NSEvent *event) {
    3.         NSLog( @"keyDown event!" );
    4.         return event;
    5.     }];
    This will install a monitor for keyDown events and log a message on each event. Then you can check is Cmd-S going to output the message, which means our monitor received the event. You should still see the Save Scene dialog on Cmd-S... Then you'd have to add some code and check is the event received here a Cmd-S and return nil which will prevent the event from propagating further to the rest of the application. If this now prevents opening of the Save Scene dialog, it means the method works! :) I'd "only" have to find a way how to encapsulate a C# delegate and pass it as argument to addLocalMonitorForEventsMatchingMask :)

    I have no idea how to use this code fragment in Xcode actually :p but I guess it can be something very similar to what @inventor2010 did, so I'd take his code for the beginning and replace something in it with this...
     
  2. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    580
    I'm a little bit confused. In your previous post you told that you don't want to use a native plugin because before Unity 5 it requires the pro license.

    So you need help on this? or on what? the code that you posted is Objectve-C, so you are still willing to use an external plugin? In this case why don't you use the bundle of @inventor2010 ?
    I thought you have already some C# code to call the native functions and were searching for a way to pass and ObjC block.
    Maybe I'm completely misunderstanding your needs. In that case I could not be able to help you.
     
  3. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Correct, but it's easy enough (it should be) to try this and see if it works or not as a plugin. It's possible to do the same thing without a plugin (which is what I'm trying to do now) but it takes much longer than to just run that short Obj-C code. The point is that I would only waste time if the method doesn't work and I can't make a quick test.

    The goal is still to avoid external plugins. Yes, I have the C# code to call native functions either in system libraries or in Unity plugins, and @inventor2010's code has that too, so that can be used for this test to call a function in the plugin that will install the monitor (and maybe another one to remove it). Or maybe the plugin can install the monitor on initialization, then no need to call anything from C#...
     
  4. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Hmm, I think I'll have to give up now :( I thought I've made some progress with the blocks but then I realized I've done only the easy part as there are trampolines involved in all that and documentation doesn't cover much of that. It doesn't even cover the part which I did so far - I had to look at the source code of blocks runtime and convert C structures to C#, then see how these are used by the runtime to understand what needs to be filled in the structures, so this is not an easy task at all and it gets more complex as I dig deeper... I guess then blocks will be not an option - I'll check the last alternative - the event taps.
     
  5. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    Wow. Discussion!

    The problem I was mainly trying to avoid with the native plugin, and the use of global key combo's, was that it would most certainly capture the event before Unity's menu bar could - nothing else that I *know of* will do that. And trying to find something that would, *AND* how to communicate with it... blarg!

    @Flipbookee You actually can use the plugin I wrote (at least in Unity 5 or Pro - sorry forgot about that) to only grab event's while SI is on top. You simply call "StartHook" in c# as SI moves to foreground, and "StopHook" when it moves to the background. It will now automatically monitor Unity's forground status, and *actually* start and stop when you both want it to, and when it's applicable. And it will most certainly override Unity's main cmd+s (or other keycombos).. that was the whole point of using global key-combos.... This may be a bit hackish... but the main problem I saw (which I've actually had to muddle through before) is that event's can be grabbed in so many ways that ensuring where you're trying to grab it is in-fact *superseding* what Unity is doing... is well... a pain.... (I think you eluded to that difficulty already)... so I just went strait for the OS level (or as close as I could find to get *something* working) The inner workings of the Keycode class I wrote within the bundle could then always be moved to a better means of event handling if something better was found.

    Problem is... I'm not really *exactly* sure where unity handles it's event's for cmd+s and such.... If it was a Mac only app, I would say with almost certainty, that it handles it's events at the same level as the menu bar... But since unity is released for so may platforms...... I'm not sure how it's set up exactly, if they have a separate wrapper for each OS that a separate team works on, or if it's programmed with something more applicable to multi platform dev like Qt (no experience with).

    To experiment though... It might be reasonable to assume that it's main event's (eg, cmd+s) are in fact handled at the menubar level.... in which case, I could make a simple app to test various idea's in Obj-C... At least then we can focus on event level and make sure it will actually override Unity's commands. THEN figure out how to communicate with the system library directly from C#... then at least your not shooting in the dark for nothing. (since it'd be FAR easier to test stuff in Obj-C thats really only documented for Obj-C)


    @Flipbookee My main question is: Since Unity 5 is here, and the only people that should be effected by the use of a native plugin are non-pro users Unity 4.X and sooner... Why not just use this? A better event capturing system in Obj-C might be good to find (one that doesn't require switching as unity moves in and out of foreground). But is there any significant population on Unity 4 indie that you'd loose when they can go to 5 for free? - Maybe just make this optional for now - that would still cover most I would think?
     
    mcmorry likes this.
  6. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    @Flipbookee this should make it "easy" to at least test different Apple ways of overriding events. (see attached)

    The one you suggested earlier using blocks is implemented in this. And it does successfully override the menu bar events... Might at least be a good replacement for the global keycombos I used previously... but I have no idea how you'd interface it directly with C#. Possibly through AppKit's dynamic library (AppKit.dylib)... but I don't know if that would still use blocks or not... and I haven't found any documentation to speak of.

    I seem to recall that blocks are implemented along with some of the stuff in GCD at the C/C++ level, and that Apple was actually trying to get them added to the C standard. So I'd think there would be a way to use it in C#....but this is pretty much exactly what I was trying to avoid, seeing as how Unity 5 is basically free now, dealing with the interchanges of whats basically 4 languages seems like kinda a pointless headache!

    That and, as you'll notice with the bundle I made... passing any sort of complex memory or classes between a runtime library and a it's user... is kinda a pain... Generally you stick to base types and keep the main processing separate if you can. (I had trouble even trying to send a string, since C# strings don't exist in Obj-C and char* aren't safe for C#... Finally just went to int's.) So... unless a simpler interface to a builtin library exist (starting to doubt)... this is probably all we've got.
     

    Attached Files:

    mcmorry likes this.
  7. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    @Flipbookee You said that calling an Obj-C method was only difficult because it had a block.

    Do you have an example of calling another Obj-C method, a simpler one, inside a system library like you did on windows (not a native library)?

    I ask, because these function's are replicated in various frameworks on OSX, the one you showed with the block is in Cocoa, but the Carbon version of it takes a void* like in the bundle I made (not a block).
    See here: http://pbrc.blogspot.com/2012/12/logging-key-events-in-mac-os-x.html

    This was one of the issue's I was trying to avoid... I have no idea how to call those system libraries. They aren't really documented as dynamic libraries, usually, things like AppKit are treated as compile time libraries (.framework's) which would not be accessed in Unity like we are with DLL's... but if you know how to get in them from C# (for basic types)... or have an applicable reference... We may be able to get this to work with the Carbon version after all.
     
    Flipbookee likes this.
  8. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    @inventor2010, oh there's a Carbon version too? That's exactly what I need!!! :D

    I can import system functions like this:
    Code (csharp):
    1.         [DllImport ("/usr/lib/libobjc.dylib")]
    2.         extern static IntPtr sel_getClass(string name);
    3.        
    4.         static IntPtr NSEvent_class = sel_getClass("NSEvent");
    5.        
    6.         [DllImport ("/usr/lib/libobjc.dylib")]
    7.         extern static IntPtr sel_registerName(string name);
    8.        
    9.         static IntPtr addLocalMonitorForEventsMatchingMask = sel_registerName("addLocalMonitorForEventsMatchingMask:handler:");
    10.        
    11.         static IntPtr removeMonitor = sel_registerName("removeMonitor:");
    12.        
    13.         [DllImport("/usr/lib/libobjc.dylib", EntryPoint = "objc_msgSend")]
    14.         extern static IntPtr IntPtr_Invoke_ulong_IntPtr(IntPtr receiverId, IntPtr selectorId, ulong arg1, IntPtr arg2);
    15.        
    16.         [DllImport("/usr/lib/libobjc.dylib", EntryPoint = "objc_msgSend")]
    17.         extern static void void_Invoke_IntPtr(IntPtr receiverId, IntPtr selectorId, IntPtr arg1);
    ... and then call them from C#. Invoking Objective-C methods is a bit more complicated but still doable using the code above (although I haven't tested that part yet).

    I think I'm going to try the Carbon method now :)
     
    inventor2010 likes this.
  9. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Well, the link you posted says the Carbon method will not work in a Cocoa application, and I suspect Unity is a Cocoa application :(... Maybe I should just go for the Quartz method with event taps?
     
  10. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    Yeah... just read that my self... :( I'll test it in my Obj-C app and see how it goes... Got a little sidetracked with the code you posted and found this in googling pieces of it. Was hoping they implemented the NSEvent with what we need... but no :(. Interesting partial implementation of AppKit and some example apps though! :D

    I think what he's talking about with Carbon not working in Cocoa apps is that it can't get *all* keyboard events, just specific combos you register for. If thats the case, it should still be fine, in fact I'd think it would be easier since you don't have to explicitly handle every keyboard event. The Cocoa veriet leaves you to handle every keydown... not even sure how to handle only a key combo, you'd have to watch for key ups and downs and figure it out on your own... Blarg!
     
  11. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    Well... if there is a way to get the carbon version to work... I haven't found it. :(

    I did finally find some better documentation on this :). Carbon Events and a little something on how Carbon and Cocoa interact... but it'd probably take more than a day to go through. :(

    It does work if you call RegisterEventHotKey after your call to InstallApplicationEventHandler... but that does global key combos. Nothing happens in a cocoa app without that call, and I can't find any similar function to RegisterEventHotKey for local, app specific, hotkeys.

    That kinda makes me think that you could do what I did in my bundle with C# (watch for the notification on app activity, and call the install and register & unregister functions in C# as needed) without using native libraries... But, up to you if you want to try that. The bundle I made could almost completely just be translated into C# if you wanted to. But, I personally can't see much value in doing that with how much easier it is to use a custom library.

    If you decide not to put any of this in this release, I'm fine with it... but if you don't want to use the native library I made (or anything else), relatively soon, let me know... I kinda left that for you since your closer to your code, but I'll code up the implementation my self if I have to and post it as a mod (kinda want it! :p).
     
    Flipbookee likes this.
  12. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    That's what I was thinking too :)

    The value of that is that I will be able to use that too! :) I can't use plugins because Unity 4 Free doesn't allow that and I can't install Unity 5 because my MacBook doesn't meet the minimum system requirements. I'd have to either buy Unity 4 Pro or a better Mac :p

    I don't think there are many people out there with similar issue, so this would mostly be for my own benefit ;)

    Go ahead and do this yourself for now! I won't be able to spend any more time with this before Thursday, so your mod solution should be good enough for now for most people :)

    Speaking of my Free/Personal limitation - I wouldn't mind if some nice people send me screenshots with Unity's dark skin :) so that I can put them in Asset Store. I'd need different sizes of Si3 tabs, docked, floating, using different color themes, showing nice looking parts of code that's either in public domain or your own and you don't mind sharing it. Maybe just post them here and I'll use them :)
     
  13. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    That explains it! :rolleyes:

    K... I'll try and make it something were you can just replace the bundle calls when your ready.


    On this note:
    Do you have or mind sharing any references you have on the topic of IDE's? I know you've had to do tons of research to get something so awesome! And I have basically no interest at this point in making my own (I did - until I saw SI3! :p) but I would like to mod some stuff, in SI, or other IDE's, but it's a bit of a daunting topic to just get into when all you want atm is "that one little thing".

    Or perhaps a layer diagram of SI? Any sort of convention's your trying to stick with - if any? I'd hate to just hack it rather than mod it. A block diagram maybe (perhaps a bit much, but at least what algorithms being used)? A sort of getting started to modding SI? -- Or something like Doxygen, if you felt really ambitious! :D

    I mean, adding a keycombo, changing one, modifying the find field (when it selects the found thing, and when it continuos to the next thing)... *Relatively* easy since it's basic UI stuff and I can pretty much search for applicable function calls. But for example, if I (or someone) wanted to make a custom find function for search within selected scope. Or even to implement non-contiguous selection and/or Find & Replace within selected scope(s) using regular expressions (something I've wanted in literally every IDE I've used, I don't know how many times, but didn't have the time to figure out)...... Where to start?

    This isn't something I would put a lot of *pressure* on. I mean, get your release out. And enjoy doing it!!!.... But honestly... as a "feature request"... That would be *the* single best thing I could ask for from *ANY* IDE! And I would kind of think, or at least *hope*, that any one serious about coding would feel the same, so they can tailer they're workflow however they wish.

    ...But, if your going to 'taunt' me with "Modding your IDE has never been easier" :(... I think thats kinda a must! :p
     
    Last edited: Jul 27, 2015
    Fronne and Flipbookee like this.
  14. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    All Mac SI Beta Testers:

    See attached if your interested in having native KeyCombos in SI! :cool: I finished a mod that should provide them... At least the main ones. It's still kinda a work in progress and I still need to "dig in" and find any I missed. But cmd+z, shift+cmd+z, and cmd+s should all function as expected. (see read me for instructions) & Let me know if you find any bugs. - Full source included. @Flipbookee, I can send you the full thing if you'd like, but didn't want to post that here obviously! :p

    @Flipbookee Wasn't sure where to put this... Hate to *continue to* hijack your SI3 dev thread going forward (course if you're cool, I am too :p)... But perhapse a separate thread for SI mods? :) ...Assuming you don't already have one :p!

    Smilies!!!! :D:D:D:D:D

    -- See rev 2 below - Much easier now!
     

    Attached Files:

    Last edited: Jul 29, 2015
    radimoto, mcmorry, UnLogick and 2 others like this.
  15. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    580
    Here are some screenshots. I hope that are good for your scope. In case you need something more specific feel free to ask.
     

    Attached Files:

    Fronne and Flipbookee like this.
  16. radimoto

    radimoto

    Joined:
    Aug 23, 2012
    Posts:
    257
    @Flipbookee - can I please request for official support for native KeyCombos to be merged with SI3? undo trips me up all the time.. it is really painful and is now my #1 feature request for SI3. Cheers
     
    Fronne, Flipbookee and mcmorry like this.
  17. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    @radimoto Sure man! Either that or I'll work with @inventor2010 to make his plugin work independently of my scripts, then each of us can update their code without breaking anything :cool:

    Thanks a lot @mcmorry! You're awesome :D
     
    mcmorry and Fronne like this.
  18. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    And here it is! :D

    Much easier to install! Thanks @Flipbookee for making me think about that! - It's just a unitypackage now! :cool: --Not sure how well that will continue to work with all my other ideas for mods though...

    Still features:
    cmd+z
    shft+cmd+z
    cmd+s

    -- Let me know if I missed anything! - There might be a few, but honestly, thats all I can think of or that I've found. -- Kinda small looking at it now! :(
     

    Attached Files:

    LouisHong, Xmblpb, mcmorry and 3 others like this.
  19. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    @inventor2010 Very, very nice, he he!!! :D

    No need to patch Si3 scripts anymore, so now I'm free to change them whenever I have to :cool:
     
    Fronne likes this.
  20. SpectralRook

    SpectralRook

    Joined:
    Feb 9, 2014
    Posts:
    112
    This is great. Thank you.
     
    Fronne likes this.
  21. radimoto

    radimoto

    Joined:
    Aug 23, 2012
    Posts:
    257
    Awesome work guys! Cheers!
     
    Flipbookee likes this.
  22. gg_michael

    gg_michael

    Joined:
    Sep 24, 2012
    Posts:
    73
    AMAZING! Love the native shortcuts :D
     
    Flipbookee likes this.
  23. inventor2010

    inventor2010

    Joined:
    Nov 3, 2010
    Posts:
    124
    Thanks! all! :)

    Smaller mod: Made a more accurate Xcode theme clone. The back and forth was messing with my eyes. -- Course I didn't notice the font hinting option until I dug into the font handling code. Suppose I should read the directions! :pSeriously though, that should probably default to off on OSX, looks very un-natural on most mac screens.

    @Flipbookee - If you want to include it, feel free. I added a screen shot. :)
     

    Attached Files:

    Flipbookee likes this.
  24. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Thanks @inventor2010! :D

    I will be releasing Si3 on Asset Store tonight, and I'll definitely include it if I have time. :) I still have to finish updating the readme and make new promo images, which is quite a lot of work...

    We did it! Finally :p
     
    SpectralRook likes this.
  25. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Thank you all for your huge help!!! :D Si3 wouldn't be anything even close to what it is today without your help :cool:

    Development and improvements will continue even after the release and I will be still counting on your help! :) Only the updates will be "distributed" now through the Asset Store... Please let me know if you need a voucher, I still have a few left, was saving them till now only for you ;)
     
    SpectralRook and mcmorry like this.
  26. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    580
    Congratulation! Was a long path. The quality of Si3 is very very high!
    Just to understand better, are you updating Si2 to Si3 or you added a new product on the asset store?
     
    Flipbookee likes this.
  27. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    I'm updating Si2 to Si3 as a free upgrade for all of you - a well deserved present for your support and help :D
     
    Fronne and mcmorry like this.
  28. Fronne

    Fronne

    Joined:
    Sep 25, 2014
    Posts:
    112
    GREAT News Flipbookie,

    I hope (and am convinced) Si3 will be a huge success!!! I have been working with Si3 Beta for a short period of time and Si3 will be the BIGGEST TIMESAVER for coders available on the Asset Store...

    The SUPPORT from your side is the best I ever had, every question was answered on the fly, you even wrote several scripts within hours just because I asked for a way to access a particular script folder without seeing scripts I didn't want to see. The first Asset I will install in future projects is Si3, if I had this Asset before, my project was published by now.
    Can't wait for the final release...

    Thanks again for your support and Si3!!!

    Cheers,
    Franco Palmieri - Fronne
     
    Last edited: Jul 30, 2015
    Flipbookee likes this.
  29. crafTDev

    crafTDev

    Joined:
    Nov 5, 2008
    Posts:
    1,820
    This is awesome to here. I am still looking forward to Find and Replace feature!
    This will make my life SO much easier, I can't count the amount of times I messed about stuff because I forgot the undo/redo Key combo...

    Thanks,
    jrDev
     
    inventor2010 and Flipbookee like this.
  30. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Hey folks, Si3 version 3.0.0 got released on Asset Store a few hours ago :D

    Take your updates from here http://u3d.as/2ZC

    The updated Xcode color theme from @inventor2010 unfortunately was not included in this version, neither was the new Find in Files functionality :( It was very late in the night when I finished preparing the upload, so these will have to wait till the next update. I didn't even have time to prepare the screenshots or a YouTube video. Updating the syntax highlighting for other script types and shaders took me much longer than expected...

    I hope you'll enjoy using Si3 even now :)

    I'll try to submit the entry for Unity Awards, today is the last day for that. This is a very long shot now, but if you happen to have a video showcasing Si3 features please let me know :) I'd be glad to share that with judges or post it in Asset Store ;)

    Thanks!!! :cool:
     
    Last edited: Aug 1, 2015
    Novack likes this.
  31. rpgw

    rpgw

    Joined:
    Jul 3, 2012
    Posts:
    47
    Congratulations on release! Been using the beta for a long while now and this really is an exceptional asset.


    Should I expect code completion to work with partial classes? Currently working in a large generated code base and completion doesn't seem to work in a public partial class.

    cmd-enter shortcut doesn't seem to open in MD. Though right-clicking and selecting the option does work.
     
  32. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Thanks @rpgw!!! :D

    Partial classes are not fully support yet. I was fully focussed on generics and extension methods recently as the last most essential features for the release. I can add support for partial classes only now since I believe that is the next most important missing feature... That shouldn't take more than a week, so stay tuned ;)
     
    rpgw likes this.
  33. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Ah yes, there was a report about Cmd-Enter not working on Mac in Unity 5. I wasn't able to find out why, something has changed there in Unity 5 on Mac only, but I think I've added also Control-Enter as an alternative, didn't I? I won't be able to check that till Monday...
     
  34. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    580
    It seems that the Mac user base of Si3 is pretty big, or at least the most active asking for feature.
    The main reason is, probably, because we can't use VS and we are forced to use that limited, slow and buggy MonoDevelop.
    Before moving on any additional feature, I believe that a correct, complete support for shortcuts on Mac should be considered a priority. Now with the solution offered from @inventor2010 shouldn't be so hard.
    And, again, now that you released Si3, please find few minutes to create a popup window that list all the shortcuts in a nice way.
     
    Flipbookee likes this.
  35. rpgw

    rpgw

    Joined:
    Jul 3, 2012
    Posts:
    47
    Just tried that and every combination of mod-Enter I could but didn't seem to happen. Looking forward to update, especially partials support!

    As Mcmorry says I wouldn't be surprised if we Mac users are especially keen on this. Though I do also appreciate having the code editor all contained within Unity. Perhaps what might make the asset more compelling for those who love VS would be more of the kind of features that can only exist if you are running within Unity itself.
     
    Flipbookee likes this.
  36. a436t4ataf

    a436t4ataf

    Joined:
    May 19, 2013
    Posts:
    1,933
    EDIT: found the shortlink above. But I recommend putting it on your website, and in future emails!

    Got the email about the new version.

    1. Some of the links in the email are broken. The rest go to the webpage, can't get SI3
    2. The website is covered in broken links; did you think of checking any of these? I suggest clicking on links before you publish (some of the links look "almost" usable, but with spaces and things that won't work ... others are comepltely fake)
    3. Specifically, the link to "asset store" is broken.

    Do you have a link that actually works? I'd like to try it out.
     
    Flipbookee likes this.
  37. a436t4ataf

    a436t4ataf

    Joined:
    May 19, 2013
    Posts:
    1,933
    Ctrl-enter is a system shortcut for inserting hard-enters or PC enter (CRLF instead of CR). It's used in e.g. Unity for doing newline inside of a Text box. I wouldn't be surprised if Unity is now capturing that on OS X.
     
    Flipbookee likes this.
  38. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    580
    I suppose that @Flipbookee worked very hard till last minute to release the new version and to apply for Unity Awards.
    The url for the asset store is here: https://www.assetstore.unity3d.com/en/#!/content/3535
     
    Flipbookee likes this.
  39. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    @a436t4ataf :eek: Dammit, I posted that this morning while I was rushing to leave the house... I see, those links were all broken and fake... I've fixed them now, and I guess I can't trust my WordPress blindly anymore, I'll have to double check after making new posts :oops:

    Thanks for reporting the website issue, I guess I wouldn't even notice that!

    That's a very useful info now which may explain the weirdness! Thanks a lot, if that's the case then it should be easy to get the fix :D Otherwise, @inventor2010's solution can cover that as well, but I'd prefer more a simpler solution if possible.
     
  40. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Yes, up until the release I was working very hard to meet the release deadline, and I guess I overburned myself a little bit... I still can't get enough sleep :p

    I started filling up the forms for Si3's nomination before the deadline as well, but I couldn't finish everything in half a day only. The deadline was on July 31, and now I'm not sure did I miss that or there's still a chance to complete the nomination. All links for that still work and I can still fill in the missing fields... So, I'll give it a try - let's see...
     
  41. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    @UnLogick shared an amazing idea with me about that specifically, which is easy to add but I had to postpone that because I'd have missed the release deadline. ;)

    If you have any specific ideas please share them (here would be fine too) and I'd love to add such power ups to Si3! :D
     
  42. thienhaflash

    thienhaflash

    Joined:
    Jun 16, 2012
    Posts:
    513
    Bad news for today ... I don't really know what happens, SI3 is quite stable to me, after sometime, I looked down to the Console, the error already there ...

    Code (CSharp):
    1. InvalidOperationException: qidStart
    2. ScriptInspector.FGResolver.GetResolvedSymbol (ScriptInspector.BaseNode baseNode) (at Assets/Thuan/ScriptInspector3/Editor/Scripts/FGTypeSystem.cs:9567)
    3. ScriptInspector.FGResolver.GetCompletions (IdentifierCompletionsType completionTypes, ScriptInspector.BaseNode parseTreeNode, System.Collections.Generic.HashSet`1 completionSymbols, System.String assetPath) (at Assets/Thuan/ScriptInspector3/Editor/Scripts/FGTypeSystem.cs:9481)
    4. UnityEngine.Debug:LogException(Exception)
    5. ScriptInspector.FGResolver:GetCompletions(IdentifierCompletionsType, BaseNode, HashSet`1, String) (at Assets/Thuan/ScriptInspector3/Editor/Scripts/FGTypeSystem.cs:9525)
    6. ScriptInspector.FGTextEditor:Autocomplete() (at Assets/Thuan/ScriptInspector3/Editor/Scripts/FGTextEditor.cs:6028)
    7. ScriptInspector.FGTextEditor:DoGUIWithAutocomplete(Boolean) (at Assets/Thuan/ScriptInspector3/Editor/Scripts/FGTextEditor.cs:2571)
    8. ScriptInspector.FGTextEditor:OnWindowGUI(EditorWindow, RectOffset) (at Assets/Thuan/ScriptInspector3/Editor/Scripts/FGTextEditor.cs:2450)
    9. ScriptInspector.FGCodeWindow:OnGUI() (at Assets/Thuan/ScriptInspector3/Editor/Scripts/FGCodeWindow.cs:1022)
    10. UnityEditor.DockArea:OnGUI()
    11.  
    Other things I think should mention ...
    - Autocomplete currently prefer ClassName over variable name, which, in my case, troublesome ... for example, I have a variable called list, then I can never type list because everytime I finish typing SI3 try to change it to IList or List the classnames ... quite unhappy with it :D
    - The SI Console does not get update when the Console is not visible, this causing logs / warnings / ... to be skip, it will only show when I focus the Console, then click on the SI Console again ... took me quite some time to understand why the logs never happens ...
    - I really really need SI3 to auto import the using for me for now :D
    - Overload methods always marked as unresolved

    Other than that, SI3 is still absolutely awesome ! Great work, man !
     
    Flipbookee likes this.
  43. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Excellent! That should be easy to track down :)

    I'll check the auto-complete prioritization. It may need some love :p

    I did some little tweaks in the SI Console just before the release. What Unity/OS did that happen on?

    Auto-import is easy and blocked only by missing low level support for refactoring. Once I get that in we will start seeing massive improvements! :cool:

    Thanks @thienhaflash! I started missing your daily "bad" news - that used to be great help in the final days :D
     
  44. mcmorry

    mcmorry

    Joined:
    Dec 2, 2012
    Posts:
    580
    I have the same problem on the Console. Sometime I have to click on it to refresh it and see the new logs.
    Also the title of the console is not the best for Unity 5. It's "ScriptInspector.FGConsole". You should use the new titleContent property to customize it: http://docs.unity3d.com/ScriptReference/EditorWindow-titleContent.html
     
    Flipbookee likes this.
  45. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Hm, I think I did that, didn't I? :s

    Weird, I'll check...
     
  46. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    @thienhaflash send me the signatures of overload methods and the line when you call them - post them here or PM me, pretty please :)
     
  47. schplurg

    schplurg

    Joined:
    Mar 21, 2009
    Posts:
    208
    I'm getting an error with the Keyboard Shortcuts plugin, and the Si pages are blank. DoI need to download a DLL?

    ETA-------
    Using Si3 version 1, Unity 4.6.4
    -------------

    DllNotFoundException
    ScriptInspectorMods.MacKeyboardHook..cctor () (at Assets/Plugins/Editor/ScriptInspector3/Scripts/MacKeyboardHook.cs:218)
    Rethrow as TypeInitializationException: An exception was thrown by the type initializer for ScriptInspectorMods.MacKeyboardHook
    System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (RuntimeTypeHandle type) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Runtime.CompilerServices/RuntimeHelpers.cs:101)
    UnityEditor.EditorAssemblies.RunClassConstructors ()
     
    Last edited: Aug 5, 2015
  48. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    Hmm... Are you on OS X with Unity 4.6.4 Pro? If yes, then you only have to import the .unitypackage from inside the zip file, I think. The rest is the source code for the plugin.
     
  49. schplurg

    schplurg

    Joined:
    Mar 21, 2009
    Posts:
    208
    Yes. Using Mavericks 10.9.5, Unity 4.6.4 pro.
     
  50. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,796
    I see... Is your build target maybe Web Player? I just read here native plugins are not allowed for that target for security reasons.