FS9 Bitmap Popup in a gauge

Hey guys,

I am attemtping to make the Engine EIAS display popup window that will appear in my MFD. So what I need is a button that brings up the Engine EIAS, which is hidden until needed.

From what I have gathered, this would be a 'visibility' trigger, animated to life by a Bool, and there would be a selection of 2 bools, with one being the hidden selection?

From looking at other codes in the stock FS9 gauges (Boeing 747 and the like), I think it is written something like this? (But not exactly, as mine isnt working yet).


This is my 'non-working' Element for the EIACS Popup.

Code:
    <Element>
     <Element Name="ENGINE EIACS WINDOW">
             <Visible>(A:CIRCUIT AVIONICS ON, bool)</Visible>
                       <Visible>(L:EICAS Display Mode, bool)</Visible>
                       <Position X="96" Y="41"/>
                         <Image Name="EICAS_Display_Mask.bmp" Bright="Yes" ImageSizes="181,602">
                      </Image>
      </Element>


Here is my non-working Clickzone for the EIACS Popup.

Code:
     <Area Left="112" Top="685" Width="24" Height="26">
        <Tooltip>TOGGLE ENGINE ECIAS</Tooltip>
             <Cursor Type="Hand"/>
         <Click Kind="LeftSingle+Leave">
      <Click>(L:EICAS Display Mode, bool) ! (&gt;L:EICAS Display Mode, bool)</Click>
   </Area>

Would the Var actually be a M Var instead of a L Var, since its called up by the mouse?

Many thanks for any input.



Bill
LHC
 
Last edited:
Well.. I got some progress. :eek: :)

I now have the EAICS screen popping up when I click on it. But it stays up. Repeated clicks do not shut it down. So at least I am much closer now to getting it working.

The Clickzone was the culprit and studying other clickzones for callup popups steered me in the right direction, though I am still not exactly sure where. The click code I now have has both M Var and L Var animation commands (If thats what you would call them).


Here is my Mouse click zone now;

Code:
     <Area Left="112" Top="661" Width="24" Height="26">
        <Tooltip>TOGGLE ENGINE ECIAS</Tooltip>
             <Cursor Type="Hand"/>
         <Click Kind="LeftSingle+Leave">
       (M:Event) 'LeftSingle' scmp 0 == (L:EICAS Display Mode,enum) 0 == and if{ 
      1 (>L:EICAS Display Mode,enum) (L:EICAS Display Mode, bool) ! (>L:EICAS Display Mode, bool) } 
          1(L:EICAS Display Mode, bool) ! (&gt;L:EICAS Display Mode, bool)</Click>
   </Area>

Here is the actual Element Popup;



Code:
     <Element Name="ENGINE EIACS WINDOW">
             <Visible>(A:CIRCUIT AVIONICS ON, bool)</Visible>
                       <Visible>(L:EICAS Display Mode, bool)</Visible>
                       <Position X="96" Y="41"/>
                         <Image Name="EICAS_Display_Mask.bmp" Bright="Yes" ImageSizes="181,602">
                      </Image>
      </Element>


Bill
 

taguilo

Resource contributor
So let's see:

<Click Kind="LeftSingle+Leave">

This is recommendable to use only when you want an action to happen/bitmap to display as long as the mouse button is held down, and another action/bmp to display right after the button is released. Or maybe in other complex situations, neither of them being the case of what you need here.

So, to make it simple, use a single click, for example

<Click>(L:EICAS Engine Display, bool) ! (>L:EICAS Engine Display, bool)</Click>

Then, in the popup <Element>,

<Visible>(A:CIRCUIT AVIONICS ON, bool) (L:EICAS Engine Display, bool) and</Visible>

Two things that need clarification:

-Use only one <Visible> condition on each element, otherwise only the last one will be the controller. That's the reason I joined (A:CIRCUIT AVIONICS ON, bool) with (L:EICAS Engine Display, bool).

-The name of a Local variable is an unique ID for the variable, despite the different units that can be used to represent the value; for example (L:EICAS Display Mode,enum) and (L:EICAS Display Mode,bool) refer both to the same var, with a different unit to display.

Tom
 
Ahhhh...

You just taught me a tremendous amount in one post! I cant thank you enough Tom.

I did find yesterday that going around looking at my Visibilities that having 2 of them usually messed them up (two Visibility sections), but also found some have 2 forms of visibility 'in' a single Visibility section.

I can only guess that the dual 'bool' sections mean a basic form of on and off.

Many thanks Tom. I am off to try this out. In studying the Garming G900x manual yesterday, I found that there is a 2nd engine call up that is actually called fuel, has PPH, Burned, Remaining, etc. arrghh... Gauge is growing into a frankenstein...


Bill
LHC
 
EUREKA!!!!!!!!!!

<---- jumps on the desk and dances a jig....

Working beautifully. By your tutorial on this, I was able to quickly create a secondary popup which worked just as well.

I take it that (>L: in a visibility click zone means to turn off (when placed at the front of the second Click subsection).


Yesterday, when I was hammering my head on the desk trying to figure out call up windows, I was studying this one;

Code:
<Visible>(A:Circuit general panel on, bool) (L:FUEL STATIS WINDOW,enum) 0 == &amp;&amp;</Visible>

<Visible>(A:Circuit general panel on, bool) (L:FUEL STATIS WINDOW,enum) 1 == &amp;&amp;</Visible>

<Visible>(A:Circuit general panel on, bool) (L:FUEL STATIS WINDOW,enum) 2 == &amp;&amp;</Visible>

Can you tell me why 'amps' are there and what Enum means? I am going to guess that amps is meaning that the aircraft must have electricity going to the system? but that should be covered on the panel.

Also, can one have perhaps 4 visibility scenarios or keys for a Element to work? (Is there a limit to keys?).


Bill
 

n4gix

Resource contributor
"&amp; &amp;" is just another way to write "&&" or "and"

"&gt;" is just another way to write ">"

on the other hand...

"&lt;" cannot be written any other way. "<" won't work... :eek:

"enum" is the same as "number" and simply means that the L:variable has more that two possible conditions...

Have you even looked at Nick's tutorials and reference resources at http://fs2x.com/Tutorials.htm ??

As for the ">" in the <Click> example, in that instance simply think of it as a "command operator."
Specifically, in that example the expression in simple english would be:

"Whatever value (L:MyVar,bool) has currently, set it to the opposite...
 
Last edited:
Top