mozilla

Compare Revisions

WebIDL bindings

Change Revisions

Revision 370643:

Revision 370643 by Bzbarsky on

Revision 370645:

Revision 370645 by Bzbarsky on

Title:
WebIDL bindings
WebIDL bindings
Slug:
Mozilla/WebIDL_bindings
Mozilla/WebIDL_bindings
Tags:
"WebIDL"
"WebIDL"
Content:

Revision 370643
Revision 370645
n736      This extended attribute can be specified on any method, attn736      This extended attribute can be specified on any method, att
>ribute, or constant on an interface. It takes a value, which must>ribute, or constant on an interface or on an interface as a whole
> be the name of a boolean preference. The interface member involv>. It takes a value, which must be the name of a boolean preferenc
>ed is then only exposed if that preference is set to <code>true</>e.
>code>. An example of how this can be used: 
737    </p>
738    <p>
739      If specified on an interface member, the interface member i
 >nvolved is only exposed if the preference is set to <code>true</c
 >ode>. An example of how this can be used:
n741  [Pref=my.pref.name] attribute long onlyHereIfEnabled;n744  [Pref="my.pref.name"] attribute long onlyHereIfEnabled;
t744    <p>t
745      When applied to an interface this functions like <code>[Pre
>fControlled]</code> except that the binding will check <code>pref 
>name</code> directly without calling into the C++ implementation  
>of the interface at all. This is useful when the enable check is  
>simple and it's desirable to keep the prefname with the WebIDL de 
>claration. The implementation can call <code>MyInterfaceBinding:: 
>PrefEnabled()</code> to check whether it is enabled or not. 
746    </p>747    <p>
748      If specifed on an interface as a whole, this functions like
 > <a href="#PrefControlled" title="#PrefControlled"><code>[PrefCon
 >trolled]</code></a> except that the binding will check&nbsp;the v
 >alue of the preference directly without calling into the C++ impl
 >ementation of the interface at all. This is useful when the enabl
 >e check is simple and it's desirable to keep the prefname with th
 >e WebIDL declaration. The implementation can call <code>MyInterfa
 >ceBinding::PrefEnabled()</code> to check whether it is enabled or
 > not.&nbsp; An example of how this can be used:
749    </p>
750    <pre>
751[Pref="my.pref.name"]
752interface MyConditionalInterface {
753};
754</pre>

Back to History