LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Other "NIDialog" Font when running CVI 2010 programm after 2012 runtime is installed

Solved!
Go to solution

I noticed a font changes when running a pre CVI 2012 programm with 2012 runtime.

It appears to be the "NIDialog" Font unless it is "NIDialogMeta".

The UI looks as it should when editing it in CVI 2010.

 

Is this intended?

 

It's making UI editing kind of a gamble...

-----------------------
/* Nothing past this point should fail if the code is working as intended */
0 Kudos
Message 1 of 5
(3,919 Views)

An addition: it's NIDialog size 10

 

nidialog_10.png

 

Top: CVI 2010 UIR editor

Bottom: Running programm with 2012 runtime

(using "userint/Panels.cws" sample)

-----------------------
/* Nothing past this point should fail if the code is working as intended */
0 Kudos
Message 2 of 5
(3,916 Views)
Solution
Accepted by topic author CVI-User

Yes, you're correct. It looks like the typeface that corresponds to NI Dialog has changed in CVI 2012. This is something that should have been explicitly called out in the readme, and I apologize for that oversight.

 

NI Dialog is, by design, a "variable font". That mean that it's a font that can correspond to different typefaces in differect computers, since it's tied to an alias (DEFAULT_GUI_FONT) that can resolve to different actual fonts in different computers, different OSes, and potentialy (as in this case) different versions of the CVI runtime. What happened in this case is that a bug was fixed in CVI 2012 in that CVI was previously not taking into account the Microsoft font substitution table:

 

            HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes

 

Going back many years now, the DEFAULT_GUI_FONT has corresponded to MS Shell Dlg. It seems to me that MS Shell Dlg is somewhat obsolete and so it turns up in the FontSubstitutes table above, so that applications to replace it with something else. In my PC, that becomes "Microsoft Sans Serif". Before CVI 2012, it was incorrectly not being replaced with Microsoft Sans Serif, whereas now it is.

 

Sorry about this.

 

Luis

NI

 

 

Message 3 of 5
(3,879 Views)

Thank you for the explanation!

 

I always thought that the "NI" fonts, disregarding the size, are supplied by NI and thus always the same because they are installed with the runtime.

-----------------------
/* Nothing past this point should fail if the code is working as intended */
0 Kudos
Message 4 of 5
(3,866 Views)

Only NI7Seg and NISystem are supplied by NI, and these are already at least 20 years old.

0 Kudos
Message 5 of 5
(3,855 Views)