Jump to content


Photo
- - - - -

[LVTN] UI Tools


  • Please log in to reply
28 replies to this topic

#1 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 21 September 2009 - 11:34 PM

*
POPULAR

Posted Image

Name: UI Tools
Submitter: François Normandin
Submitted: 21 Sep 2009
File Updated: 31 May 2012
Category: LabVIEW Tools Network Certified
LabVIEW Version: 8.6
License Type: BSD (Most common)

UI Tools v1.3.0

Copyright © 2009-2012, François Normandin. (LabVIEW code)
All rights reserved.

Author:François Normandin
Contact Info: Contact via PM on www.lavag.org

LabVIEW Versions:
Created and tested with LabVIEW 8.6

Dependencies:

oglib_appcontrol >= 2.10
oglib_file >= 3.0.1
oglib_lvdata >= 2.9
lava_rsc_lava_palette >= 1.0.0.1


Description:

This package contains tools for designing user interfaces.
A first palette helps create special effects using transparency of front panel. Using them allows to quickly create fade-ins or outs using linear or exponential variation of the intensity.
A second palette contains VIs to calculate the position of GObjects for many purposes like alignment, snap, mouse follow, etc.
A third palette contains VIs to create dialog boxes based on class instances. A One-button base class and a two-button class are provided to be overloaded.
A fourth palette includes some VIs to move objects programmatically on the front panel, using a basic deceleration algorithm to provide an impression of a smooth movement.
The packaged VIs are all namespaced using a suffix “__lava_lib_ui_tools” which should not conflict with any of your own code.

Includes:

- Front Panel Transparency (Fade In & Fade Out)
- Utilities (Alignment, Snap)
- Dialog (OOP based, extensible)
- Engine (Beta) for object movement



Instructions:
This package is distributed on the LabVIEW Tools Network and can be installed directly in the addon folder of any LabVIEW version from 8.6 to now. The addon installs automatically under the LAVA palette of the addon submenu.


Known Issues:


Acknowledgements:
David Vignoni (Icon King) for the Nuvola Icon Theme



License:
Distributed under the BSD license.

Support:
If you have any problems with this code or want to suggest features:
please go to www.lavag.org and Navigate to the discussion page.

Distribution:
This code was downloaded from the LabVIEW Tools Network.

============================

Click here to download this file

Attached Thumbnails

  • UI_Tools_Palette.png

Attached Files


François [frɑ̃swa], CLA


#2 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 22 September 2009 - 12:21 PM

*
POPULAR

Here's a little jing video to show the FadeIn - FadeOut effects. Check out the example built with a JKI QSM to see how simply it's done.

FadeIn FadeOut

François [frɑ̃swa], CLA


#3 Mark Balla

Mark Balla

    Extremely Active

  • Premium Member
  • 490 posts
  • Location:Gurnee Illinois
  • Version:LabVIEW 2011
  • Since:1997

Posted 22 September 2009 - 02:41 PM

Certified 9-22-09
Moved to UI Group

#4 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 08 October 2009 - 03:46 PM

*
POPULAR

version 1.0.11 released.
I've added an Outlook-style sidebar based on radio buttons. This allows to take advantage of the Enum typedef. Disconnect the typedef and customize with your own buttons, change button order or even style.

http://content.scree...-10-08_1129.swf

François [frɑ̃swa], CLA


#5 Norm Kirchner

Norm Kirchner

    The 500 club

  • NI
  • 723 posts
  • Location:Austin, TX
  • Version:LabVIEW 2012
  • Since:2000

Posted 21 November 2009 - 03:07 PM

Francois,
Great job on this. Especially the variety of icons you've got setup.

Any chance you're planning to get more of them into the system Icon style?

Also, I now realize that I've duplicated some of the exact work you've done on the fade in/out and the only difference is that I've found that an exponential rather than linear fade has a nicer visual effect. Any thoughts to that?

#6 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 22 November 2009 - 10:52 PM

Francois,
Great job on this. Especially the variety of icons you've got setup.

Any chance you're planning to get more of them into the system Icon style?

Also, I now realize that I've duplicated some of the exact work you've done on the fade in/out and the only difference is that I've found that an exponential rather than linear fade has a nicer visual effect. Any thoughts to that?


Hi Norm,
thanks for the comments. Yes, I planned to add all ;)as much as possible of the Nuvola theme icons in there, but the process is long without being able to do that programmatically. Also, I'm putting 100% of my free home time on the Open Office Report Generation (which should come in a few weeks) and then I'll go back to the UI tools copy/paste for buttons. I've already made programmatically all the buttons states in PNG using Vugie's Bitman tools. All remaining is sitting a long night and make it happen. I already received a comment that at least one of my button is misaligned (hover) so I plan to make them all from scratch calculating the exact placement of the icons.

Truth be told, I hadn't thought about using something other than linear fade. :thumbup1: I'll definitely give it a try and add this option to the UI Tools. I'll take your word on the fact that it's nicer looking... I'll put exponential as the default case and linear as option. If anybody thinks of other fading algorithms they'd like, I can integrate them as well.

I'll check on ni.com's suggested features to make sure "scalable graphics" support for button edition is in there (and properly kudoed)...

François [frɑ̃swa], CLA


#7 Ton Plomp

Ton Plomp

    How many lines per hour? Zero!

  • Premium Member
  • 1,972 posts
  • Location:Netherlands
  • Version:LabVIEW 2012
  • Since:2000

Posted 16 December 2009 - 06:28 AM

Nice set Antoine!

One question, is there a specific reason you made the boolean controls as Typedefs?
It creates a new (unnecessary) dependency, I can understand that the Outlook Enum is a typedef, however the boolean controls seems a little bit awkward to me.

Ton

#8 Antoine Châlons

Antoine Châlons

    The 500 club

  • Members
  • PipPipPipPipPip
  • 589 posts
  • Location:France
  • Version:LabVIEW 2012
  • Since:1999

Posted 16 December 2009 - 07:17 AM

Nice set Antoine!


I think you meant "François" ;)

____________________________
most boring end of the world ever!


#9 Ton Plomp

Ton Plomp

    How many lines per hour? Zero!

  • Premium Member
  • 1,972 posts
  • Location:Netherlands
  • Version:LabVIEW 2012
  • Since:2000

Posted 16 December 2009 - 07:37 AM

I think you meant "François" ;)

oops :ph34r:

Ton

PS you don't have an answer?

#10 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 16 December 2009 - 03:12 PM

Nice set Antoine!

One question, is there a specific reason you made the boolean controls as Typedefs?
It creates a new (unnecessary) dependency, I can understand that the Outlook Enum is a typedef, however the boolean controls seems a little bit awkward to me.

Ton


Hi Ton,

yeah, don't tell me... that was a mistake. I'll be doing an update soon with the stuff Vugie and Rolf have dug out for the programmatic creation of controls. Those won't be typedef'ed and all icons/text will have been programmatically located, so there won't be any mismatch of a pixel or two here and there as can happen when you do it manually.

I actually have real nice series of buttons ready... but they take a few MBs per series and I'm thinking of a way to have it created on the fly like, I don't know, CCT or perhaps a RCF plugins? I'll spend a few nights on that and hopefully I get something useful by Xmas to show off.

Anyway, here's a teaser... Attached File  teasing82.vi   102.48K   496 downloads

I think you meant "François" ;)


Français... François. What's the difference? We're all alike, right? :lol:

François [frɑ̃swa], CLA


#11 Ton Plomp

Ton Plomp

    How many lines per hour? Zero!

  • Premium Member
  • 1,972 posts
  • Location:Netherlands
  • Version:LabVIEW 2012
  • Since:2000

Posted 07 January 2010 - 08:14 PM

Hi Ton,

I'll spend a few nights on that and hopefully I get something useful by Xmas to show off.

Anyway, here's a teaser... Attached File  teasing82.vi   102.48K   496 downloads



Français... François. What's the difference? We're all alike, right? :lol:

Hi François,

how are things coming with christmas passing by?
I really liked the teaser.
Any help I can offer?

One little bug. The palette menu called 'Edition' should be called 'Editting' (I think, I'm no native English speaker)

Ton

#12 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 07 January 2010 - 08:39 PM

Hi François,

how are things coming with christmas passing by?
I really liked the teaser.
Any help I can offer?

One little bug. The palette menu called 'Edition' should be called 'Editting' (I think, I'm no native English speaker)

Ton


Hi Ton,
I have 90% of it ready. I've had problems with packaging the control.lvclass that I created because of some indetermined conflict while building the package. I've decided to leave it for a later version. I still have to batch create one set of icons (system-style) and I'll be uploading it real soon. The UI Tools will come with a Base package that won't have any icons... and then it will be possible to install add-ons based on the control styles that one wants. The trick is that my first add-on package (Vista-style) is 4MB! I thought of splitting it in many parts, but that would clog the packages list in VIPM... and I'm not sure people would like me for that.
I promise to try uploading it no later than this week-end.

I've added Norm's suggestion of Exponential fade-in/fade-out, plus some rectangle placement tools to build on the OpenG Rectangle Tools (necessary for quick icon alignment...). I've also corrected the "typedef" thing.

That is, thanks for the help offer. You're boasting my morale! With my OpenOffice project lagging behind too, that's a real pleasure to know that this package attracts interest and I'm not antagonizing the "missus"* just for my own sake. (* Yeah, I've had a lot of "You're still behind that computer tonight!" lately...)

For the palette menu, I never thought about it, but I think you're right... a quick look on Google shows that "Edition" is mainly used in printing, like "nth Edition of this book", while Pictures often come with "Editing" (one "t"). So I'll change it to Editing. Thanks.

François [frɑ̃swa], CLA


#13 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 11 January 2010 - 02:38 AM

The new UI Tools is ready.

See addons and expansion packs:

Custom control creator addon
System-style controls expansion
Vista-style controls expansion
Outlook-style controls expansion
GlassWeb-style controls expansion
Tree & Tagging addon


I've created many expansion packs because the smaller package is around 3MB...

François [frɑ̃swa], CLA


#14 Brad K

Brad K

    I've come back for more.

  • Members
  • 2 posts
  • Version:LabVIEW 2009
  • Since:2000

Posted 09 February 2010 - 01:34 AM

Hello,

I have downloaded the UI controls from the code repository. They are outstanding!!

I am having an issue with resizing the Vista controls, actually my issue is really just ignorance.

I can change the control size, but I do not know how to change the size of the mouse over highlight box. - the box size changes, but it is clipping the image.

Any assistance would be greatly appreciated.

Regards,

Brad K

#15 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 09 February 2010 - 02:44 AM

Hello,

I have downloaded the UI controls from the code repository. They are outstanding!!

I am having an issue with resizing the Vista controls, actually my issue is really just ignorance.

I can change the control size, but I do not know how to change the size of the mouse over highlight box. - the box size changes, but it is clipping the image.

Any assistance would be greatly appreciated.

Regards,

Brad K


Hi Brad,

I'm on vacation this week and out of town. I'll check this out but I would not recommend that you resize the buttons as the icons are not vectorial and you'll lose quite a lot of resolution by doing so. The best thing would be to have a control template for the right size you're looking for and make the controls you want at the propoer size directly.

However, I would have expected all the button states to resize together... I don't know if there's anything I can do about it. I'll keep you posted. (next week? fingers crossed...)

François [frɑ̃swa], CLA


#16 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 17 February 2010 - 12:23 AM

The Captain has brought to my attention an installation problem with version 1.0.35. In this build, there is one subset of files (readme & license terms) that are installed using a hardcoded path instead of relative to <user.lib>. Since there are no VIs in this subset, no problems occur with multiple versions of LabVIEW installed. However, it causes the following errors:

a) if you run a 32-bit version of Windows, there will be creation of a C:\Program Files (x86)\National Instruments\LabVIEW 8.6\user.lib\_LAVAcr\UI Tools directory. Unless you don't have admin rights to create a dir in C:\ , you will not see any errors and the package will behave as expected. It's just very inconvenient that it creates a whole hierarchy in parallel!

b) if you run a 64-bit version of Windows AND you install the package for LV 2009, you won't find the license and readme files in the proper directory. Not a big concern, except if you don't notice that you should keep the Nuvola Icon license with any program you distribute that uses the Nuvola icons herein.


Norm was actually unlucky enough to be in situation a) with restrictions on directory creation... which is lucky for me I guess. Thanks a ton Norm.
A new version will be uploaded tonight.

AFTER INSTALLATION OF NEW VERSION 1.0.36 or higher, you should:

- delete the "C:\Program Files (x86)\National Instruments\LabVIEW 8.6\user.lib\_LAVAcr\UI Tools" directory IF AND ONLY IF you have your LabVIEW installed in "C:\Program Files\National Instruments\LabVIEW xyz"
- if you run a 64-bit version of Windows, do nothing.
- in case you're unsure, PM me!

Change log notification for upcoming version:

v1.0.36: Correction of the ogp file to remove a hard-coded install path on file subset 3. Relative install path has been programmed instead to install in the correct <user.lib> directory. The issue caused a subset of files (readme and license) to be installed in an unexistant LabVIEW directory (x86).


++++++++

I'll be checking the addons for the same error in the readme/symbols/license file subsets...

François [frɑ̃swa], CLA


#17 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 17 February 2010 - 04:59 PM

I can change the control size, but I do not know how to change the size of the mouse over highlight box. - the box size changes, but it is clipping the image.

Brad K


Hi Brad,

I've checked this and it seems it's only a loss of resolution. The hover-effect border is actually only 1 pixel large (maybe 2), so the algorithm that executes when you resize must be smoothing/averaging pixels and lose some information in the process. I tested it with GlassWeb style resizing and you don't get it clipped, just a lost of resolution.

Unzip those in your LabVIEW Data\LAVA\Control Templates directory:
Attached File  Additional Control Templates.zip   11.41K   231 downloads
(small and medium size templates for Vista style)

François [frɑ̃swa], CLA


#18 liufeng_sjzri

liufeng_sjzri

    One hit wonder!

  • Members
  • 1 posts
  • Version:LabVIEW 2009
  • Since:2009

Posted 22 April 2010 - 09:21 AM

let me have a try!

#19 François Normandin

François Normandin

    Son of Scotland

  • Premium Member
  • 1,081 posts
  • Location:Montréal, QC
  • Version:LabVIEW 2012
  • Since:1999

Posted 22 April 2010 - 12:06 PM

let me have a try!


Just follow the link at the bottom of the first post to the download section.

François [frɑ̃swa], CLA


#20 Mads

Mads

    Very Active

  • Members
  • PipPipPip
  • 171 posts
  • Location:Bergen, Norway
  • Version:LabVIEW 2012
  • Since:1997

Posted 20 September 2011 - 02:44 PM

I have installed UI Tools 1.1.0.9 under LV2011 and seem to have all the other packages that it depends on installed, but the state machine VIs still seem to be missing. When I start the Control Generator it starts to look in <userlib>:\_LAVACR\UI Tools\_lava_lib_ui_tools.llb for Add State(s) to Queue_jki_lib_state_machine_lava_lib_ui_tools.vi but fails to find it...not surprisingly since that llb does not exist.

I have JKIs state machine (2.0.0-1), but these seems to be renamed copies of some of the VIs in that package. I could manually replace the missing VIs with VIs from the JKI State Machine package, but then I would need to do this again if there is an update to the UI Tools so it would be better if I figured out why the problem occurs. Any idea?
MTO