Jump to content

hooovahh

Moderators
  • Posts

    3,388
  • Joined

  • Last visited

  • Days Won

    283

Everything posted by hooovahh

  1. I can't tell who I side with in the comments. Both crowds have the same arguments of "Well you just haven't researched it enough." Which I guess means I haven't researched it enough.
  2. I think I know what you are talking about, and I agree. If I have a VI set to subroutine, I feel like a VI inside it should be allowed to be inlined. Not sure what the reasoning for the restriction is.
  3. I entered this thread thinking I would have seen many of the issues mentioned, but honestly I haven't seen most. But there are a few. Icon editor glyphs. Oh it is a same for sure that this shipped feature of LabVIEW doesn't work and hasn't for so long. You can manually sync new icons by downloading them along with a XML file on NI's site that is periodically updated. But I add a bunch of other icons from an open source library, and so it is usually just easier to make a VIPM package with the glyphs I want and install it that way. Then there's the other issue of having a non shared folder for the icons meaning if you log in as a different user you lose your icons all the sudden. I never knew that about an RT project and that does sound really stupid. Glad to hear there is some kind of work around. It really seems like when it comes to projects that span multiple deployed targets, that NI just assumes things are static which can be a pain for something like "Find all PXI RT systems on the network and do XYZ with them."
  4. Yeah there were some complications internally. Be sure and thank Jeremy with a selection of adult beverages throughout the week, he deserves it.
  5. Yeah this is what I use now. At one point I had RSS still going, but this is more unified because I can just log into my account from any computer and see what things I haven't seen yet, where the RSS was going through my outlook.
  6. The loop settings seem like a great addition, thanks for sharing.
  7. Hello all. So NI is trying something new this year for NI Week. Year after year NI gets feedback from those that attend NI Week and one of the most common things people ask for is more technical sessions. We don't care too much for a marketing presentation telling us how your company is awesome, and we don't really need NI to tell us about some new hardware we'll never use. But coming back from NI Week with new technologies that excite me and make my job get done better, makes my boss want to send me next year. So as a way for NI Week to get more technical, NI has dedicated a room at NI Week to advanced users to give presentations on advanced topics, allowing them to make up their own Advanced Users. This track will be in addition to the other tracks NI usually has for various industries, like aerospace, and automotive. These presentations will be given by advanced developers who are LabVIEW Champions and will focus less on marketing and more on being technical, sorta similar to what you'll see at a CLD/CLA Summit. So checkout Room 15 Tuesday and Wednesday for the advanced awesomeness, you should expect lots of hearty frank group discussions. It seems not all of the topics are posted by NI yet, but here are just some of them. And yes for a bit of self promotion I am giving an updated presentation on XNodes that I gave earlier this year.
  8. Thanks for the link Shaun that is a handy thing to have, but the only OpenG package listed is the 2Kb package, telling VIPM to go download and install all the dependent packages from the internet. So that package without the internet is useless, not sure where all the actual OpenG packages are hosted.
  9. I admit I don't use GIFs in my UI's much, and when I do I usually don't care about how fast they run. But I just did a quick test with this GIF cause it was one of the first results on google, and the speed seemed to match the speed of Chrome for the VI when running or not, with the only noticeable hiccup is when running or stopping the VI. This is using LabVIEW 2015 SP1 Windows 7 x64. Is this a GIF you can post to test with? How many frames are in the GIF? You can be a bit hacky and use a picture ring and invoke the image based on how much time has elapsed. Oh and you can also use a .NET picture box, here is some code I posted a while ago showing how to load an image, but for some reason it isn't animated, it could be a setting with the picture box.
  10. Yeah but what if you have more than 100 elements in a cluster...yeah...I'm not saying it won't happen, but if it does you probably have other issues that are more pressing.
  11. Go to a computer that has OpenG already installed. Go to the C:\ProgramData\JKI\VIPM\cache folder, copy all the OpenG package files to the offline computer via USB. Then go to VIPM and go to File >> Open Package File(s) and select all your files then install. If you have VIPM professional you can create package configurations, which is collections of packages and you can choose to include the packages. I use this and end up with a single VIPC file that can be copied to an offline computer and installed in one step in VIPM.
  12. I am, but I can't speak for others who stumble on this thread years later, and actually Mike had an interesting quote regarding locked VIs. Again thank you for any contribution you share.
  13. Yeah this was posted on LAVA before, but I can't seem to find it at the moment, it is a good resource to have.
  14. Yeah but if it's password-ed no one will see it right? Certainly having a non passworded version would benefit the community more, nonetheless, thank you Zou.
  15. Very interesting, please see if you can find a simplified example that can be submitted to NI. Storing a variant in a shift register is something I'm sure I've done plenty of times. Also I don't know if it makes things easier, but I've been moving away from OpenG functions for cluster manipulation, and choose to use the NI functions, and the Variant to Data trick. Attached is an example where a cluster is turned into an array of variants, manipulated, and then turned back into the cluster. Notice that the Get Type Information also returns the data name. Oh and if you update the cluster you need to set the Cluster size in the Array to Cluster to the right number of elements, the wire will be broken if it doesn't match. I made and XNode to do this but didn't want to add another unknown into debugging this. Of course if this is a bug in LabVIEW this won't, help. If this is a bug in LabVIEW, I'd bet adding an Always Copy inside the loop will probably fix it.
  16. Thanks Jeff, I owe you a beer. Redeemable at the LAVA BBQ if you're interested.
  17. Very excited guys, can't wait. It will just me this year.
  18. I can see an argument for hiding the selector some times. I mean what if every primitive had a selector showing you all the options it supported? If the Add function always had a selector, and you to pick U8, U16, U32, U64, I8, I16...etc it would seem like a bunch of wasted space for the selector when most of the time you just want it to automatically pick based on the data type inputs. But there are times when it isn't clear that a function works this way, and it is somewhat tribal knowledge. Where were you when you discovered the Open VI Reference accepted a VI Path, or a VI name? In this case I can see the developer saying, that the use case is going to be both channels 99% of the time so hiding this selector means saving space for 99% of the people, and then irking 1% of them.
  19. I can't think of something right now, but if I do I will be sure to post. Thanks again.
  20. Oh that's too bad, well thanks for the update Darren, the day 2016 was available for download I would be posting here asking where this is. Jeff since you see there is plenty of interests on this topic, would you consider posting this alpha level VIM in August when 2016 is officially released? I think you would get some valuable feedback from the community, and of course it would be made known just like VIMs are today, a use at your own risk technology, and not to come crying to NI if things break just like several other things we already deal with, like private methods. I'm actually presenting on XNodes at NI Week, and I was keeping a slide blank to discuss VIMs, and I was hoping this new feature could be something I could mention. If not I understand and can't wait for some of this R&D stuff to make it to the community.
  21. I hit like on the first post, and subscribed to notification, but that just didn't seem like "Thank You" enough. This is an awesome set of function, but what compliments it in my opinion is the common templates, example finder examples, and the Youtube video. Having worked with databases a little these really helped fill in some of the gaps I had about how to do things. Thanks again.
  22. Okay I've come back with more, sorry about the wall of text. Attached is a new version with most of the core code unchanged but with several new features. Webpages and VIs that are the pages can have spaces in their name Webpage names come from the VI title if there is one Rectangle decorations now work properly Position and size can be updated periodically by using the config Decorations Can Change or using the Force Update (more on that later) Floating text decorations now work using the Text class Position and text can be updated periodically by using the config Decorations Can Change or using the Force Update, size and boldness are sent only on start at the moment Default Refresh Rate can be set with the config Show Border which is the size of the FP can be set with the config, no way of updating this at the moment but I think it should be able to be Synchronous Requests enable the web page to only request new data, once it has received a reply from the last request With this enabled the refresh rate can be set to 1ms without pilling up requests With this enabled if no request comes in once every 5s a reply is automatically sent, this is in case a request is lost and no reply sent, this is per connection Reduce Sent Data can be set with the config This will look at what data was sent for each object and not send it if the data hasn't changed. The code still has to get all the values and attributes but can help in places where there isn't much changing often. There is a separate list of objects, and what is sent, for each unique session. The first request from the web page is for full data in case things have changed since the time the HTML page was made All controls/indicators on the UI support being shown as an image. Controls that don't belong to a specific class will be defaulted to this mode A control that is an image cannot be interacted with in the web page, except for boolean controls When shown as an image, position, size, and visibility are also sent with each request along with the new image value New Value Only mode for all supported control types This will send just the value of the control for each supported type, position visibility and other properties will only be sent using the Force Update New Force Update function This is a VI that can be called from the main VI that will force objects whos references are passed in (or optionally all objects). This means controls can be sent as a Value Only mode in most situations, but then if a property does change on an object, it can be forced to send its new attributes. The example has been updated to have a button which shows and hides controls, and then an Update button that uses this Force Update function All controls support Visibility size and Position attributes which are sent on Force Update, or if the control is not Value Only This also will update any captions or labels on corresponding controls for visibility, position, and value Progress Bar now supports ranges that are negative, and that don't start at 0 Ranges can be updated if the control is not Value Only, or if Force Update is used Ring controls now can have the items in the drop down updated These are not updated if sent as Value Only, unless Force Update is used Picture Ring now supported On start each unique picture that the picture ring can be is stored as a variable in the JS file, and then the value is sent for which to display Code exists to try to detect duplicate Picture Rings, and only create one variable for each unique set of images, this also makes scanning faster Graphs now support up to two scales properly, but there is some kind of bug with multiple graphs not sure what it is yet String class now supports justification, background color including transparent, font color, font size, and boldness as attributes Captions, and Labels should work on controls now with some support for size External IP address can be set on Publish This is necessary if you want the web page to be accessible from somewhere other than localhost Default Control Behavior is available on Publish Here you can specify an array of control names that should default to Image Only, Value Only, or Value and Position This supports control names that start with a common string too Show Config Dialog on Publish If this is true, or if not all controls have been configured, then the dialog pops up to configure the page settings Config location moved into www directory Reorganization and cleanup Things I'd like to see some day, but I don't intend on working on this any time soon More native control support, things like path controls, tables, trees, listboxes, dials, scrollbars, picture boxes, and Combo boxes Support more graph tools like zooming, setting ranges, and changing other graph settings Support for tabs Support for right click menus if possible RT Support I think this one is possible, if the original static page is generated on the host, and the Value Only is used Multiple windows? Maybe by opening new windows with new URLs. Independent pages for each client Right now all clients share the same view of the same VI, it would be nice to be able to use a clone VI and have it generate new URLs and pages for each connection Better dynamic dispatch for creating the objects Right now adding a new control type is a bit of a pain because dynamic dispatch isn’t used for selecting the class type for a GObject. Doing this would mean just making a new class, and having it inherit from the control class Most VIs with no documentation, and some with the default icons, basically more documentation is needed VIPM Package could be made exposing just the 3 VIs needed, Publish, Force Update, and Cleanup FP Publisher Hooovahh Edit 2.zip
  23. I hadn't noticed any difference in the last couple of days, but my work connection is somewhat slow to begin with.
  24. Oh yeah I forgot about that toolkit. I tried it when it first came out, and realized the core of it was the code I already posted and figured I wouldn't need it. Sure the toolkit has other neat features that my code posted above, doesn't do, but for the most part I didn't need them. I remember some kind of quick color selection option where you could have a single image, and then swap selected colors for the other states of the button. Still not having the source code available makes it quite limiting when you want to automate, or pull pieces apart for your own needs. I think this used to be be a paid product but now appears free, I also don't remember the internet requirement when I used this before but maybe it was.
  25. You make some good points, but I don't completely agree: Ever been to a robotics competition? NI is pushing their stuff there for sure. Then there are the engineering colleges that offer LabVIEW courses for those that aren't CS/CE. I'm not blind to changes, but I'd hardly call it a demise, especially in my personal life in the surrounding job market where I got 3 job offers in the last 3 weeks, and I'm not talking about random Linkedin recruiter messages.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.