<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gtk" version="4.0"/>
  <include name="NM" version="1.0"/>
  <package name="libnma-gtk4"/>
  <doc:format name="unknown"/>
  <namespace name="NMA4"
             version="1.0"
             shared-library="libnma-gtk4.so.0"
             c:identifier-prefixes="NMA"
             c:symbol-prefixes="nma">
    <function-macro name="BAR_CODE"
                    c:identifier="NMA_BAR_CODE"
                    introspectable="0">
      <source-position filename="src/nma-bar-code.h" line="27"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BAR_CODE_CLASS"
                    c:identifier="NMA_BAR_CODE_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-bar-code.h" line="28"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BAR_CODE_GET_CLASS"
                    c:identifier="NMA_BAR_CODE_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-bar-code.h" line="31"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="BAR_CODE_SIZE" value="size" c:type="NMA_BAR_CODE_SIZE">
      <source-position filename="src/nma-bar-code.h" line="34"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="BAR_CODE_TEXT" value="text" c:type="NMA_BAR_CODE_TEXT">
      <source-position filename="src/nma-bar-code.h" line="33"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <function-macro name="BAR_CODE_WIDGET"
                    c:identifier="NMA_BAR_CODE_WIDGET"
                    introspectable="0">
      <source-position filename="src/nma-bar-code-widget.h" line="26"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BAR_CODE_WIDGET_CLASS"
                    c:identifier="NMA_BAR_CODE_WIDGET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-bar-code-widget.h" line="27"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="BAR_CODE_WIDGET_CONNECTION"
              value="connection"
              c:type="NMA_BAR_CODE_WIDGET_CONNECTION">
      <source-position filename="src/nma-bar-code-widget.h" line="32"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <function-macro name="BAR_CODE_WIDGET_GET_CLASS"
                    c:identifier="NMA_BAR_CODE_WIDGET_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-bar-code-widget.h" line="30"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="BarCode"
           c:symbol-prefix="bar_code"
           c:type="NMABarCode"
           parent="GObject.Object"
           glib:type-name="NMABarCode"
           glib:get-type="nma_bar_code_get_type"
           glib:type-struct="BarCodeClass">
      <source-position filename="src/nma-bar-code.h" line="37"/>
      <constructor name="new" c:identifier="nma_bar_code_new" version="1.8.22">
        <source-position filename="src/nma-bar-code.h" line="47"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/nma-bar-code.c"
               line="194">the bar code instance</doc>
          <type name="BarCode" c:type="NMABarCode*"/>
        </return-value>
        <parameters>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-bar-code.c"
                 line="192">set the bar code text</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="draw" c:identifier="nma_bar_code_draw" version="1.8.22">
        <doc xml:space="preserve"
             filename="src/nma-bar-code.c"
             line="110">Draws the QR code onto the given context.</doc>
        <source-position filename="src/nma-bar-code.h" line="56"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-bar-code.c"
                 line="112">bar code instance</doc>
            <type name="BarCode" c:type="NMABarCode*"/>
          </instance-parameter>
          <parameter name="cr" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-bar-code.c"
                 line="113">cairo context</doc>
            <type name="cairo.Context" c:type="cairo_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_size"
              c:identifier="nma_bar_code_get_size"
              glib:get-property="size"
              version="1.8.22">
        <source-position filename="src/nma-bar-code.h" line="53"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-bar-code.c"
               line="96">the side of a QR code square.</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-bar-code.c"
                 line="94">bar code instance</doc>
            <type name="BarCode" c:type="NMABarCode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_text"
              c:identifier="nma_bar_code_set_text"
              glib:set-property="text"
              version="1.8.22">
        <doc xml:space="preserve"
             filename="src/nma-bar-code.c"
             line="76">Regenerates the QR code for a different text.</doc>
        <source-position filename="src/nma-bar-code.h" line="50"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-bar-code.c"
                 line="78">bar code instance</doc>
            <type name="BarCode" c:type="NMABarCode*"/>
          </instance-parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-bar-code.c"
                 line="79">new bar code text</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <property name="size"
                transfer-ownership="none"
                getter="get_size"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="text"
                readable="0"
                writable="1"
                transfer-ownership="none"
                setter="set_text">
        <type name="utf8" c:type="gchar*"/>
      </property>
    </class>
    <record name="BarCodeClass"
            c:type="NMABarCodeClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="BarCode">
      <source-position filename="src/nma-bar-code.h" line="37"/>
    </record>
    <class name="BarCodeWidget"
           c:symbol-prefix="bar_code_widget"
           c:type="NMABarCodeWidget"
           parent="Gtk.Box"
           glib:type-name="NMABarCodeWidget"
           glib:get-type="nma_bar_code_widget_get_type"
           glib:type-struct="BarCodeWidgetClass">
      <source-position filename="src/nma-bar-code-widget.h" line="35"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="Gtk.Orientable"/>
      <property name="connection" writable="1" transfer-ownership="none">
        <type name="NM.Connection"/>
      </property>
    </class>
    <record name="BarCodeWidgetClass"
            c:type="NMABarCodeWidgetClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="BarCodeWidget">
      <source-position filename="src/nma-bar-code-widget.h" line="35"/>
    </record>
    <function-macro name="CERT_CHOOSER"
                    c:identifier="NMA_CERT_CHOOSER"
                    introspectable="0">
      <source-position filename="src/nma-cert-chooser.h" line="43"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CERT_CHOOSER_CLASS"
                    c:identifier="NMA_CERT_CHOOSER_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-cert-chooser.h" line="44"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CERT_CHOOSER_GET_CLASS"
                    c:identifier="NMA_CERT_CHOOSER_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-cert-chooser.h" line="47"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="CHECK_VERSION"
                    c:identifier="NMA_CHECK_VERSION"
                    introspectable="0">
      <source-position filename="src/nma-version.h" line="45"/>
      <parameters>
        <parameter name="major">
          <doc xml:space="preserve"
               filename="src/nma-version.h"
               line="38">major version (e.g. 1 for version 1.2.5)</doc>
        </parameter>
        <parameter name="minor">
          <doc xml:space="preserve"
               filename="src/nma-version.h"
               line="39">minor version (e.g. 2 for version 1.2.5)</doc>
        </parameter>
        <parameter name="micro">
          <doc xml:space="preserve"
               filename="src/nma-version.h"
               line="40">micro version (e.g. 5 for version 1.2.5)</doc>
        </parameter>
      </parameters>
    </function-macro>
    <class name="CertChooser"
           c:symbol-prefix="cert_chooser"
           c:type="NMACertChooser"
           parent="Gtk.Grid"
           glib:type-name="NMACertChooser"
           glib:get-type="nma_cert_chooser_get_type"
           glib:type-struct="CertChooserClass">
      <source-position filename="src/nma-cert-chooser.h" line="53"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new"
                   c:identifier="nma_cert_chooser_new"
                   version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="1200">Constructs the button that is capable of selecting a certificate
and a key.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="109"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="1208">the certificate chooser button instance</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="title" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="1202">title of the certificate chooser dialog</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="1203">the flags that configure the capabilities of the button</doc>
            <type name="CertChooserFlags" c:type="NMACertChooserFlags"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="add_to_size_group"
              c:identifier="nma_cert_chooser_add_to_size_group"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="463">Adds the labels to the specified size group so that they are aligned
nicely with other entries in a form.

It is expected that the NMACertChooser is a GtkGrid with two columns
with the labels in the first one.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="114"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="465">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="group" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="466">a size group</doc>
            <type name="Gtk.SizeGroup" c:type="GtkSizeGroup*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_cert"
              c:identifier="nma_cert_chooser_get_cert"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="243">Gets the real certificate location from the chooser button along with the scheme.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="72"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="250">the certificate path</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="245">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="scheme"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="246">the scheme of the returned certificate path</doc>
            <type name="NM.Setting8021xCKScheme"
                  c:type="NMSetting8021xCKScheme*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_cert_password"
              c:identifier="nma_cert_chooser_get_cert_password"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="288">Obtains the password or a PIN that was be required to access the certificate.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="83"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="294">the certificate PIN or password</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="290">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_cert_password_flags"
              c:identifier="nma_cert_chooser_get_cert_password_flags"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="627">Returns secret flags corresponding to the certificate password
if one is present. The chooser would typically call into
nma_utils_menu_to_secret_flags() for the certificate password
entry.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="136"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="636">secret flags corresponding to the certificate password</doc>
          <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="629">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_cert_uri"
              c:identifier="nma_cert_chooser_get_cert_uri"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="222">Gets the real certificate URI from the chooser button along with the scheme.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="76"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="228">the certificate URI</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="224">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_key"
              c:identifier="nma_cert_chooser_get_key"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="372">Gets the real key location from the chooser button along with the scheme.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="95"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="379">the key path</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="374">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="scheme"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="375">the scheme of the returned key path</doc>
            <type name="NM.Setting8021xCKScheme"
                  c:type="NMSetting8021xCKScheme*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_key_password"
              c:identifier="nma_cert_chooser_get_key_password"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="438">Obtains the password or a PIN that was be required to access the key.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="106"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="444">the key PIN or password</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="440">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_key_password_flags"
              c:identifier="nma_cert_chooser_get_key_password_flags"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="716">Returns secret flags corresponding to the key password
if one is present. The chooser would typically call into
nma_utils_menu_to_secret_flags() for the key password
entry.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="153"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="725">secret flags corresponding to the key password</doc>
          <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="718">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_key_uri"
              c:identifier="nma_cert_chooser_get_key_uri"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="394">Gets the real key URI from the chooser button along with the scheme.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="99"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="400">the key URI</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="396">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_cert"
              c:identifier="nma_cert_chooser_set_cert"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="198">Sets the certificate location for the chooser button.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="200">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="201">the path or URI of a certificate</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="scheme" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="202">the scheme of the certificate path</doc>
            <type name="NM.Setting8021xCKScheme"
                  c:type="NMSetting8021xCKScheme"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_cert_password"
              c:identifier="nma_cert_chooser_set_cert_password"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="265">Sets the password or a PIN that might be required to access the certificate.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="267">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="password" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="268">the certificate PIN or password</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_cert_uri"
              c:identifier="nma_cert_chooser_set_cert_uri"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="163">Sets the certificate URI for the chooser button.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="165">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="166">the path or URI of a certificate</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_key"
              c:identifier="nma_cert_chooser_set_key"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="348">Sets the key location for the chooser button.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="350">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="351">the path or URI of a key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="scheme" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="352">the scheme of the key path</doc>
            <type name="NM.Setting8021xCKScheme"
                  c:type="NMSetting8021xCKScheme"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_key_password"
              c:identifier="nma_cert_chooser_set_key_password"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="415">Sets the password or a PIN that might be required to access the key.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="417">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="password" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="418">the key PIN or password</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_key_uri"
              c:identifier="nma_cert_chooser_set_key_uri"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="313">Sets the key URI for the chooser button.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="91"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="315">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="316">the URI of a key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="setup_cert_password_storage"
              c:identifier="nma_cert_chooser_setup_cert_password_storage"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="563">This method basically calls nma_utils_setup_password_storage()
on the certificate password entry, in case one is present.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="122"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="565">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="initial_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="566">initial secret flags to setup password menu from</doc>
            <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
          </parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="567">#NMSetting containing the password, or NULL</doc>
            <type name="NM.Setting" c:type="NMSetting*"/>
          </parameter>
          <parameter name="password_flags_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="568">name of the secret flags (like psk-flags), or NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="with_not_required" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="569">whether to include "Not required" menu item</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="ask_mode" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="570">%TRUE if the entry is shown in ASK mode</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="setup_key_password_storage"
              c:identifier="nma_cert_chooser_setup_key_password_storage"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="652">This method basically calls nma_utils_setup_password_storage()
on the key password entry, in case one is present.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="139"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="654">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="initial_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="655">initial secret flags to setup password menu from</doc>
            <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
          </parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="656">#NMSetting containing the password, or NULL</doc>
            <type name="NM.Setting" c:type="NMSetting*"/>
          </parameter>
          <parameter name="password_flags_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="657">name of the secret flags (like psk-flags), or NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="with_not_required" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="658">whether to include "Not required" menu item</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="ask_mode" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="659">%TRUE if the entry is shown in ASK mode</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="update_cert_password_storage"
              c:identifier="nma_cert_chooser_update_cert_password_storage"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="598">This method basically calls nma_utils_update_password_storage()
on the certificate password entry, in case one is present.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="130"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="600">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="secret_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="601">secret flags to set</doc>
            <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
          </parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="602">#NMSetting containing the password, or NULL</doc>
            <type name="NM.Setting" c:type="NMSetting*"/>
          </parameter>
          <parameter name="password_flags_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="603">name of the secret flags (like psk-flags), or NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="update_key_password_storage"
              c:identifier="nma_cert_chooser_update_key_password_storage"
              version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="687">This method basically calls nma_utils_update_password_storage()
on the key password entry, in case one is present.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="147"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="689">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
          <parameter name="secret_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="690">secret flags to set</doc>
            <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
          </parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="691">#NMSetting containing the password, or NULL</doc>
            <type name="NM.Setting" c:type="NMSetting*"/>
          </parameter>
          <parameter name="password_flags_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="692">name of the secret flags (like psk-flags), or NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="validate"
              c:identifier="nma_cert_chooser_validate"
              version="1.8.0"
              throws="1">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="490">Validates whether the chosen values make sense. The users can do further
validation by subscribing to the "*-changed" signals and returning an
error themselves.</doc>
        <source-position filename="src/nma-cert-chooser.h" line="118"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-cert-chooser.c"
               line="499">%TRUE if validation passes, %FALSE otherwise</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="cert_chooser" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-cert-chooser.c"
                 line="492">certificate chooser button instance</doc>
            <type name="CertChooser" c:type="NMACertChooser*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="flags"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="title"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <glib:signal name="cert-password-validate" when="last" version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="1045">Emitted when the certificate password needs validation. The handlers
can indicate that the password is invalid by returning an error, which blocks further
signal processing and causes a call to nma_cert_chooser_validate()
to fail.</doc>
        <return-value transfer-ownership="full">
          <type name="GLib.Error"/>
        </return-value>
      </glib:signal>
      <glib:signal name="cert-validate" when="last" version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="1028">Emitted when the certificate needs validation. The handlers can indicate that
the certificate is invalid by returning an error, which blocks further
signal processing and causes a call to nma_cert_chooser_validate()
to fail.</doc>
        <return-value transfer-ownership="full">
          <type name="GLib.Error"/>
        </return-value>
      </glib:signal>
      <glib:signal name="changed" when="last" no-recurse="1" version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="1096">Emitted when anything changes in the certificate chooser, be it a certificate,
a key or associated passwords.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="key-password-validate" when="last" version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="1079">Emitted when the key password needs validation. The handlers can indicate
that the password is invalid by returning an error, which blocks further
signal processing and causes a call to nma_cert_chooser_validate()
to fail.</doc>
        <return-value transfer-ownership="full">
          <type name="GLib.Error"/>
        </return-value>
      </glib:signal>
      <glib:signal name="key-validate" when="last" version="1.8.0">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.c"
             line="1062">Emitted when the key needs validation. The handlers can indicate that
the key is invalid by returning an error, which blocks further
signal processing and causes a call to nma_cert_chooser_validate()
to fail.</doc>
        <return-value transfer-ownership="full">
          <type name="GLib.Error"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="CertChooserClass"
            c:type="NMACertChooserClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="CertChooser">
      <source-position filename="src/nma-cert-chooser.h" line="53"/>
    </record>
    <enumeration name="CertChooserFlags"
                 version="1.8.0"
                 c:type="NMACertChooserFlags">
      <doc xml:space="preserve"
           filename="src/nma-cert-chooser.h"
           line="19">Flags that controls what is the certificate chooser button able to pick.
Currently only local files are supported, but might be extended to use URIs,
such as PKCS\#11 certificate URIs in future as well.</doc>
      <source-position filename="src/nma-cert-chooser.h" line="40"/>
      <member name="none" value="0" c:identifier="NMA_CERT_CHOOSER_FLAG_NONE">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.h"
             line="21">No flags</doc>
      </member>
      <member name="cert" value="1" c:identifier="NMA_CERT_CHOOSER_FLAG_CERT">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.h"
             line="22">Only pick a certificate, not a key</doc>
      </member>
      <member name="passwords"
              value="2"
              c:identifier="NMA_CERT_CHOOSER_FLAG_PASSWORDS">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.h"
             line="23">Hide all controls but the secrets entries</doc>
      </member>
      <member name="pem" value="4" c:identifier="NMA_CERT_CHOOSER_FLAG_PEM">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.h"
             line="24">Ensure the chooser only selects regular PEM files</doc>
      </member>
      <member name="no_passwords"
              value="8"
              c:identifier="NMA_CERT_CHOOSER_FLAG_NO_PASSWORDS">
        <doc xml:space="preserve"
             filename="src/nma-cert-chooser.h"
             line="25">Do not show password entries (Since: 1.8.34)</doc>
      </member>
    </enumeration>
    <record name="CountryInfo"
            c:type="NMACountryInfo"
            opaque="1"
            glib:type-name="NMACountryInfo"
            glib:get-type="nma_country_info_get_type"
            c:symbol-prefix="country_info">
      <source-position filename="src/nma-mobile-providers.h" line="77"/>
      <method name="get_country_code"
              c:identifier="nma_country_info_get_country_code">
        <source-position filename="src/nma-mobile-providers.h" line="82"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="371">the code of the country or %NULL for "Unknown".</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="country_info" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="369">a #NMACountryInfo</doc>
            <type name="CountryInfo" c:type="NMACountryInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_country_name"
              c:identifier="nma_country_info_get_country_name">
        <source-position filename="src/nma-mobile-providers.h" line="83"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="388">the name of the country.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="country_info" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="386">a #NMACountryInfo</doc>
            <type name="CountryInfo" c:type="NMACountryInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_providers"
              c:identifier="nma_country_info_get_providers">
        <source-position filename="src/nma-mobile-providers.h" line="84"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="402">the
 list of #NMAMobileProvider this country exposes.</doc>
          <type name="GLib.SList" c:type="GSList*">
            <type name="MobileProvider"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="country_info" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="400">a #NMACountryInfo</doc>
            <type name="CountryInfo" c:type="NMACountryInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="nma_country_info_ref">
        <source-position filename="src/nma-mobile-providers.h" line="80"/>
        <return-value transfer-ownership="full">
          <type name="CountryInfo" c:type="NMACountryInfo*"/>
        </return-value>
        <parameters>
          <instance-parameter name="country_info" transfer-ownership="none">
            <type name="CountryInfo" c:type="NMACountryInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="nma_country_info_unref">
        <source-position filename="src/nma-mobile-providers.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="country_info" transfer-ownership="none">
            <type name="CountryInfo" c:type="NMACountryInfo*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <function-macro name="DEPRECATED_IN_1_2_FOR"
                    c:identifier="NMA_DEPRECATED_IN_1_2_FOR"
                    introspectable="0">
      <source-position filename="src/nma-version.h" line="114"/>
      <parameters>
        <parameter name="f">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DEPRECATED_IN_1_8_FOR"
                    c:identifier="NMA_DEPRECATED_IN_1_8_FOR"
                    introspectable="0">
      <source-position filename="src/nma-version.h" line="122"/>
      <parameters>
        <parameter name="f">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ENCODE_VERSION"
                    c:identifier="NMA_ENCODE_VERSION"
                    introspectable="0">
      <source-position filename="src/nma-version.h" line="50"/>
      <parameters>
        <parameter name="major">
        </parameter>
        <parameter name="minor">
        </parameter>
        <parameter name="micro">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BAR_CODE"
                    c:identifier="NMA_IS_BAR_CODE"
                    introspectable="0">
      <source-position filename="src/nma-bar-code.h" line="29"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BAR_CODE_CLASS"
                    c:identifier="NMA_IS_BAR_CODE_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-bar-code.h" line="30"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BAR_CODE_WIDGET"
                    c:identifier="NMA_IS_BAR_CODE_WIDGET"
                    introspectable="0">
      <source-position filename="src/nma-bar-code-widget.h" line="28"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BAR_CODE_WIDGET_CLASS"
                    c:identifier="NMA_IS_BAR_CODE_WIDGET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-bar-code-widget.h" line="29"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_CERT_CHOOSER"
                    c:identifier="NMA_IS_CERT_CHOOSER"
                    introspectable="0">
      <source-position filename="src/nma-cert-chooser.h" line="45"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_CERT_CHOOSER_CLASS"
                    c:identifier="NMA_IS_CERT_CHOOSER_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-cert-chooser.h" line="46"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_MOBILE_PROVIDERS_DATABASE"
                    c:identifier="NMA_IS_MOBILE_PROVIDERS_DATABASE"
                    introspectable="0">
      <source-position filename="src/nma-mobile-providers.h" line="96"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_MOBILE_PROVIDERS_DATABASE_CLASS"
                    c:identifier="NMA_IS_MOBILE_PROVIDERS_DATABASE_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-mobile-providers.h" line="97"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_MOBILE_WIZARD"
                    c:identifier="NMA_IS_MOBILE_WIZARD"
                    introspectable="0">
      <source-position filename="src/nma-mobile-wizard.h" line="54"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_MOBILE_WIZARD_CLASS"
                    c:identifier="NMA_IS_MOBILE_WIZARD_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-mobile-wizard.h" line="55"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_OWE_CLASS"
                    c:identifier="NMA_IS_OWE_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-owe.h" line="19"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WIFI_DIALOG"
                    c:identifier="NMA_IS_WIFI_DIALOG"
                    introspectable="0">
      <source-position filename="src/nma-wifi-dialog.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WIFI_DIALOG_CLASS"
                    c:identifier="NMA_IS_WIFI_DIALOG_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-wifi-dialog.h" line="24"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS" c:identifier="NMA_IS_WS" introspectable="0">
      <source-position filename="src/nma-ws/nma-ws.h" line="24"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_802_1X"
                    c:identifier="NMA_IS_WS_802_1X"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-802-1x.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_802_1X_CLASS"
                    c:identifier="NMA_IS_WS_802_1X_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-802-1x.h" line="24"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_DYNAMIC_WEP"
                    c:identifier="NMA_IS_WS_DYNAMIC_WEP"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-dynamic-wep.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_DYNAMIC_WEP_CLASS"
                    c:identifier="NMA_IS_WS_DYNAMIC_WEP_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-dynamic-wep.h" line="26"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_LEAP"
                    c:identifier="NMA_IS_WS_LEAP"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-leap.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_LEAP_CLASS"
                    c:identifier="NMA_IS_WS_LEAP_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-leap.h" line="26"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_OWE"
                    c:identifier="NMA_IS_WS_OWE"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-owe.h" line="18"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_SAE"
                    c:identifier="NMA_IS_WS_SAE"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-sae.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_SAE_CLASS"
                    c:identifier="NMA_IS_WS_SAE_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-sae.h" line="24"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_WEP_KEY"
                    c:identifier="NMA_IS_WS_WEP_KEY"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wep-key.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_WEP_KEY_CLASS"
                    c:identifier="NMA_IS_WS_WEP_KEY_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wep-key.h" line="26"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_WPA_EAP"
                    c:identifier="NMA_IS_WS_WPA_EAP"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-eap.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_WPA_EAP_CLASS"
                    c:identifier="NMA_IS_WS_WPA_EAP_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-eap.h" line="26"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_WPA_PSK"
                    c:identifier="NMA_IS_WS_WPA_PSK"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-psk.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WS_WPA_PSK_CLASS"
                    c:identifier="NMA_IS_WS_WPA_PSK_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-psk.h" line="26"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="MAJOR_VERSION" value="1" c:type="NMA_MAJOR_VERSION">
      <doc xml:space="preserve"
           filename="src/nma-version.h"
           line="12">Evaluates to the major version number of NetworkManager which this source
is compiled against.</doc>
      <source-position filename="src/nma-version.h" line="18"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="MICRO_VERSION" value="6" c:type="NMA_MICRO_VERSION">
      <doc xml:space="preserve"
           filename="src/nma-version.h"
           line="28">Evaluates to the micro version number of NetworkManager which this source
compiled against.</doc>
      <source-position filename="src/nma-version.h" line="34"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="MINOR_VERSION" value="10" c:type="NMA_MINOR_VERSION">
      <doc xml:space="preserve"
           filename="src/nma-version.h"
           line="20">Evaluates to the minor version number of NetworkManager which this source
is compiled against.</doc>
      <source-position filename="src/nma-version.h" line="26"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function-macro name="MOBILE_PROVIDERS_DATABASE"
                    c:identifier="NMA_MOBILE_PROVIDERS_DATABASE"
                    introspectable="0">
      <source-position filename="src/nma-mobile-providers.h" line="94"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MOBILE_PROVIDERS_DATABASE_CLASS"
                    c:identifier="NMA_MOBILE_PROVIDERS_DATABASE_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-mobile-providers.h" line="95"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MOBILE_PROVIDERS_DATABASE_GET_CLASS"
                    c:identifier="NMA_MOBILE_PROVIDERS_DATABASE_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-mobile-providers.h" line="98"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MOBILE_WIZARD"
                    c:identifier="NMA_MOBILE_WIZARD"
                    introspectable="0">
      <source-position filename="src/nma-mobile-wizard.h" line="52"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MOBILE_WIZARD_CLASS"
                    c:identifier="NMA_MOBILE_WIZARD_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-mobile-wizard.h" line="53"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MOBILE_WIZARD_GET_CLASS"
                    c:identifier="NMA_MOBILE_WIZARD_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-mobile-wizard.h" line="56"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <record name="MobileAccessMethod"
            c:type="NMAMobileAccessMethod"
            opaque="1"
            glib:type-name="NMAMobileAccessMethod"
            glib:get-type="nma_mobile_access_method_get_type"
            c:symbol-prefix="mobile_access_method">
      <source-position filename="src/nma-mobile-providers.h" line="36"/>
      <method name="get_3gpp_apn"
              c:identifier="nma_mobile_access_method_get_3gpp_apn">
        <source-position filename="src/nma-mobile-providers.h" line="46"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="167">the 3GPP APN.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="165">a #NMAMobileAccessMethod</doc>
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_dns" c:identifier="nma_mobile_access_method_get_dns">
        <source-position filename="src/nma-mobile-providers.h" line="45"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="153">the list of DNS.</doc>
          <array c:type="const gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="151">a #NMAMobileAccessMethod</doc>
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_family"
              c:identifier="nma_mobile_access_method_get_family">
        <source-position filename="src/nma-mobile-providers.h" line="47"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="181">a #NMAMobileFamily.</doc>
          <type name="MobileFamily" c:type="NMAMobileFamily"/>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="179">a #NMAMobileAccessMethod</doc>
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_gateway"
              c:identifier="nma_mobile_access_method_get_gateway">
        <source-position filename="src/nma-mobile-providers.h" line="44"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="139">the gateway.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="137">a #NMAMobileAccessMethod</doc>
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="nma_mobile_access_method_get_name">
        <source-position filename="src/nma-mobile-providers.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="97">the name of the method.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="95">a #NMAMobileAccessMethod</doc>
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_password"
              c:identifier="nma_mobile_access_method_get_password">
        <source-position filename="src/nma-mobile-providers.h" line="43"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="125">the password.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="123">a #NMAMobileAccessMethod</doc>
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_username"
              c:identifier="nma_mobile_access_method_get_username">
        <source-position filename="src/nma-mobile-providers.h" line="42"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="111">the username.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="109">a #NMAMobileAccessMethod</doc>
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="nma_mobile_access_method_ref">
        <source-position filename="src/nma-mobile-providers.h" line="39"/>
        <return-value transfer-ownership="full">
          <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="nma_mobile_access_method_unref">
        <source-position filename="src/nma-mobile-providers.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="method" transfer-ownership="none">
            <type name="MobileAccessMethod" c:type="NMAMobileAccessMethod*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <enumeration name="MobileFamily" c:type="NMAMobileFamily">
      <source-position filename="src/nma-mobile-providers.h" line="32"/>
      <member name="unknown"
              value="0"
              c:identifier="NMA_MOBILE_FAMILY_UNKNOWN">
        <doc xml:space="preserve"
             filename="src/nma-mobile-providers.h"
             line="24">Unknown or invalid network access method</doc>
      </member>
      <member name="3gpp" value="1" c:identifier="NMA_MOBILE_FAMILY_3GPP">
        <doc xml:space="preserve"
             filename="src/nma-mobile-providers.h"
             line="25">3rd Generation Partnership Project (3GPP) network</doc>
      </member>
      <member name="cdma" value="2" c:identifier="NMA_MOBILE_FAMILY_CDMA">
        <doc xml:space="preserve"
             filename="src/nma-mobile-providers.h"
             line="26">A CDMA network</doc>
      </member>
    </enumeration>
    <record name="MobileProvider"
            c:type="NMAMobileProvider"
            opaque="1"
            glib:type-name="NMAMobileProvider"
            glib:get-type="nma_mobile_provider_get_type"
            c:symbol-prefix="mobile_provider">
      <source-position filename="src/nma-mobile-providers.h" line="58"/>
      <method name="get_3gpp_mcc_mnc"
              c:identifier="nma_mobile_provider_get_3gpp_mcc_mnc">
        <source-position filename="src/nma-mobile-providers.h" line="65"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="289">a
 list of strings with the MCC and MNC codes this provider exposes.</doc>
          <array c:type="const gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="provider" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="287">a #NMAMobileProvider</doc>
            <type name="MobileProvider" c:type="NMAMobileProvider*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_cdma_sid"
              c:identifier="nma_mobile_provider_get_cdma_sid">
        <source-position filename="src/nma-mobile-providers.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="304">the
 list of CDMA SIDs this provider exposes</doc>
          <array c:type="const guint32*">
            <type name="guint32"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="provider" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="302">a #NMAMobileProvider</doc>
            <type name="MobileProvider" c:type="NMAMobileProvider*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_methods"
              c:identifier="nma_mobile_provider_get_methods">
        <source-position filename="src/nma-mobile-providers.h" line="64"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="274">the
 list of #NMAMobileAccessMethod this provider exposes.</doc>
          <type name="GLib.SList" c:type="GSList*">
            <type name="MobileAccessMethod"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="provider" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="272">a #NMAMobileProvider</doc>
            <type name="MobileProvider" c:type="NMAMobileProvider*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="nma_mobile_provider_get_name">
        <source-position filename="src/nma-mobile-providers.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="260">the name of the provider.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="provider" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="258">a #NMAMobileProvider</doc>
            <type name="MobileProvider" c:type="NMAMobileProvider*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="nma_mobile_provider_ref">
        <source-position filename="src/nma-mobile-providers.h" line="61"/>
        <return-value transfer-ownership="full">
          <type name="MobileProvider" c:type="NMAMobileProvider*"/>
        </return-value>
        <parameters>
          <instance-parameter name="provider" transfer-ownership="none">
            <type name="MobileProvider" c:type="NMAMobileProvider*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="nma_mobile_provider_unref">
        <source-position filename="src/nma-mobile-providers.h" line="62"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="provider" transfer-ownership="none">
            <type name="MobileProvider" c:type="NMAMobileProvider*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <class name="MobileProvidersDatabase"
           c:symbol-prefix="mobile_providers_database"
           c:type="NMAMobileProvidersDatabase"
           parent="GObject.Object"
           glib:type-name="NMAMobileProvidersDatabase"
           glib:get-type="nma_mobile_providers_database_get_type"
           glib:type-struct="MobileProvidersDatabaseClass">
      <source-position filename="src/nma-mobile-providers.h" line="115"/>
      <implements name="Gio.AsyncInitable"/>
      <implements name="Gio.Initable"/>
      <constructor name="new_finish"
                   c:identifier="nma_mobile_providers_database_new_finish"
                   throws="1">
        <source-position filename="src/nma-mobile-providers.h" line="124"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1451">The constructed object or %NULL if @error is set.</doc>
          <type name="MobileProvidersDatabase"
                c:type="NMAMobileProvidersDatabase*"/>
        </return-value>
        <parameters>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1448">The #GAsyncResult obtained from the #GAsyncReadyCallback passed to nma_mobile_providers_database_new().</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_sync"
                   c:identifier="nma_mobile_providers_database_new_sync"
                   throws="1">
        <source-position filename="src/nma-mobile-providers.h" line="126"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1474">The constructed object or %NULL if @error is set.</doc>
          <type name="MobileProvidersDatabase"
                c:type="NMAMobileProvidersDatabase*"/>
        </return-value>
        <parameters>
          <parameter name="country_codes"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1469">Path to the country codes file.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="service_providers"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1470">Path to the service providers file.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1471">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="new"
                c:identifier="nma_mobile_providers_database_new"
                glib:finish-func="new_finish">
        <source-position filename="src/nma-mobile-providers.h" line="119"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="country_codes"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1422">Path to the country codes file.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="service_providers"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1423">Path to the service providers file.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1424">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1425">A #GAsyncReadyCallback to call when the request is satisfied.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1426">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <method name="dump" c:identifier="nma_mobile_providers_database_dump">
        <source-position filename="src/nma-mobile-providers.h" line="133"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1218">a #NMAMobileProvidersDatabase.</doc>
            <type name="MobileProvidersDatabase"
                  c:type="NMAMobileProvidersDatabase*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_countries"
              c:identifier="nma_mobile_providers_database_get_countries">
        <source-position filename="src/nma-mobile-providers.h" line="131"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1202">a
 hash table where keys are country names #gchar and values are #NMACountryInfo.</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="utf8"/>
            <type name="CountryInfo"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1200">a #NMAMobileProvidersDatabase.</doc>
            <type name="MobileProvidersDatabase"
                  c:type="NMAMobileProvidersDatabase*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="lookup_3gpp_mcc_mnc"
              c:identifier="nma_mobile_providers_database_lookup_3gpp_mcc_mnc">
        <source-position filename="src/nma-mobile-providers.h" line="137"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1256">a #NMAMobileProvider or %NULL if not found.</doc>
          <type name="MobileProvider" c:type="NMAMobileProvider*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1253">a #NMAMobileProvidersDatabase.</doc>
            <type name="MobileProvidersDatabase"
                  c:type="NMAMobileProvidersDatabase*"/>
          </instance-parameter>
          <parameter name="mccmnc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1254">the MCC/MNC string to look for.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="lookup_cdma_sid"
              c:identifier="nma_mobile_providers_database_lookup_cdma_sid">
        <source-position filename="src/nma-mobile-providers.h" line="139"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1354">a #NMAMobileProvider, or %NULL if not found.</doc>
          <type name="MobileProvider" c:type="NMAMobileProvider*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1351">a #NMAMobileProvidersDatabase.</doc>
            <type name="MobileProvidersDatabase"
                  c:type="NMAMobileProvidersDatabase*"/>
          </instance-parameter>
          <parameter name="sid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1352">the SID to look for.</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="lookup_country"
              c:identifier="nma_mobile_providers_database_lookup_country">
        <source-position filename="src/nma-mobile-providers.h" line="135"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1237">a #NMACountryInfo or %NULL if not found.</doc>
          <type name="CountryInfo" c:type="NMACountryInfo*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1234">a #NMAMobileProvidersDatabase.</doc>
            <type name="MobileProvidersDatabase"
                  c:type="NMAMobileProvidersDatabase*"/>
          </instance-parameter>
          <parameter name="country_code" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-mobile-providers.c"
                 line="1235">the country code string to look for.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <property name="country-codes"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="service-providers"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="MobileProvidersDatabasePrivate"
              c:type="NMAMobileProvidersDatabasePrivate*"/>
      </field>
    </class>
    <record name="MobileProvidersDatabaseClass"
            c:type="NMAMobileProvidersDatabaseClass"
            glib:is-gtype-struct-for="MobileProvidersDatabase">
      <source-position filename="src/nma-mobile-providers.h" line="115"/>
      <field name="parent">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="MobileProvidersDatabasePrivate"
            c:type="NMAMobileProvidersDatabasePrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-mobile-providers.h" line="102"/>
    </record>
    <class name="MobileWizard"
           c:symbol-prefix="mobile_wizard"
           c:type="NMAMobileWizard"
           parent="GObject.Object"
           glib:type-name="NMAMobileWizard"
           glib:get-type="nma_mobile_wizard_get_type"
           glib:type-struct="MobileWizardClass">
      <source-position filename="src/nma-mobile-wizard.h" line="20"/>
      <constructor name="new"
                   c:identifier="nma_mobile_wizard_new"
                   introspectable="0">
        <source-position filename="src/nma-mobile-wizard.h" line="60"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/nma-mobile-wizard.c"
               line="1500">the newly created #NMAMobileWizard</doc>
          <type name="MobileWizard" c:type="NMAMobileWizard*"/>
        </return-value>
        <parameters>
          <parameter name="parent" transfer-ownership="none">
            <type name="Gtk.Window" c:type="GtkWindow*"/>
          </parameter>
          <parameter name="window_group" transfer-ownership="none">
            <type name="Gtk.WindowGroup" c:type="GtkWindowGroup*"/>
          </parameter>
          <parameter name="modem_caps" transfer-ownership="none">
            <type name="NM.DeviceModemCapabilities"
                  c:type="NMDeviceModemCapabilities"/>
          </parameter>
          <parameter name="will_connect_after" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="cb"
                     transfer-ownership="none"
                     scope="async"
                     closure="5">
            <type name="MobileWizardCallback"
                  c:type="NMAMobileWizardCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="destroy" c:identifier="nma_mobile_wizard_destroy">
        <source-position filename="src/nma-mobile-wizard.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="MobileWizard" c:type="NMAMobileWizard*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="present" c:identifier="nma_mobile_wizard_present">
        <source-position filename="src/nma-mobile-wizard.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="wizard" transfer-ownership="none">
            <type name="MobileWizard" c:type="NMAMobileWizard*"/>
          </instance-parameter>
        </parameters>
      </method>
    </class>
    <record name="MobileWizardAccessMethod"
            c:type="NMAMobileWizardAccessMethod">
      <doc xml:space="preserve"
           filename="src/nma-mobile-wizard.h"
           line="26">Network access method details.</doc>
      <source-position filename="src/nma-mobile-wizard.h" line="44"/>
      <field name="provider_name" writable="1">
        <doc xml:space="preserve"
             filename="src/nma-mobile-wizard.h"
             line="28">The mobile network provider name</doc>
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="plan_name" writable="1">
        <doc xml:space="preserve"
             filename="src/nma-mobile-wizard.h"
             line="29">The provided network access billing plan</doc>
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="devtype" writable="1">
        <doc xml:space="preserve"
             filename="src/nma-mobile-wizard.h"
             line="30">Required NetworkManager device capabilities</doc>
        <type name="NM.DeviceModemCapabilities"
              c:type="NMDeviceModemCapabilities"/>
      </field>
      <field name="username" writable="1">
        <doc xml:space="preserve"
             filename="src/nma-mobile-wizard.h"
             line="31">User login</doc>
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="password" writable="1">
        <doc xml:space="preserve"
             filename="src/nma-mobile-wizard.h"
             line="32">User secret</doc>
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="gsm_apn" writable="1">
        <doc xml:space="preserve"
             filename="src/nma-mobile-wizard.h"
             line="33">The GSM Access Point Name</doc>
        <type name="utf8" c:type="char*"/>
      </field>
    </record>
    <callback name="MobileWizardCallback" c:type="NMAMobileWizardCallback">
      <source-position filename="src/nma-mobile-wizard.h" line="46"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="self" transfer-ownership="none">
          <type name="MobileWizard" c:type="NMAMobileWizard*"/>
        </parameter>
        <parameter name="canceled" transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
        <parameter name="method" transfer-ownership="none">
          <type name="MobileWizardAccessMethod"
                c:type="NMAMobileWizardAccessMethod*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="3">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="MobileWizardClass"
            c:type="NMAMobileWizardClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="MobileWizard">
      <source-position filename="src/nma-mobile-wizard.h" line="20"/>
    </record>
    <function-macro name="VPN_IS_PASSWORD_DIALOG"
                    c:identifier="NMA_VPN_IS_PASSWORD_DIALOG"
                    introspectable="0">
      <source-position filename="src/nma-vpn-password-dialog.h" line="32"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="VPN_IS_PASSWORD_DIALOG_CLASS"
                    c:identifier="NMA_VPN_IS_PASSWORD_DIALOG_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-vpn-password-dialog.h" line="33"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="VPN_PASSWORD_DIALOG"
                    c:identifier="NMA_VPN_PASSWORD_DIALOG"
                    introspectable="0">
      <source-position filename="src/nma-vpn-password-dialog.h" line="30"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="VPN_PASSWORD_DIALOG_CLASS"
                    c:identifier="NMA_VPN_PASSWORD_DIALOG_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-vpn-password-dialog.h" line="31"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <class name="VpnPasswordDialog"
           c:symbol-prefix="vpn_password_dialog"
           c:type="NMAVpnPasswordDialog"
           parent="Gtk.Dialog"
           glib:type-name="NMAVpnPasswordDialog"
           glib:get-type="nma_vpn_password_dialog_get_type"
           glib:type-struct="VpnPasswordDialogClass">
      <source-position filename="src/nma-vpn-password-dialog.h" line="48"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="Gtk.Native"/>
      <implements name="Gtk.Root"/>
      <implements name="Gtk.ShortcutManager"/>
      <constructor name="new" c:identifier="nma_vpn_password_dialog_new">
        <source-position filename="src/nma-vpn-password-dialog.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="title" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="message" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="password" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="focus_password"
              c:identifier="nma_vpn_password_dialog_focus_password">
        <source-position filename="src/nma-vpn-password-dialog.h" line="60"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="focus_password_secondary"
              c:identifier="nma_vpn_password_dialog_focus_password_secondary">
        <source-position filename="src/nma-vpn-password-dialog.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="focus_password_ternary"
              c:identifier="nma_vpn_password_dialog_focus_password_ternary">
        <source-position filename="src/nma-vpn-password-dialog.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_password"
              c:identifier="nma_vpn_password_dialog_get_password">
        <source-position filename="src/nma-vpn-password-dialog.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_password_secondary"
              c:identifier="nma_vpn_password_dialog_get_password_secondary">
        <source-position filename="src/nma-vpn-password-dialog.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_password_ternary"
              c:identifier="nma_vpn_password_dialog_get_password_ternary">
        <source-position filename="src/nma-vpn-password-dialog.h" line="87"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="run_and_block"
              c:identifier="nma_vpn_password_dialog_run_and_block">
        <source-position filename="src/nma-vpn-password-dialog.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_password"
              c:identifier="nma_vpn_password_dialog_set_password">
        <source-position filename="src/nma-vpn-password-dialog.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="password" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_password_label"
              c:identifier="nma_vpn_password_dialog_set_password_label">
        <source-position filename="src/nma-vpn-password-dialog.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="label" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_password_secondary"
              c:identifier="nma_vpn_password_dialog_set_password_secondary">
        <source-position filename="src/nma-vpn-password-dialog.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="password_secondary" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_password_secondary_label"
              c:identifier="nma_vpn_password_dialog_set_password_secondary_label">
        <source-position filename="src/nma-vpn-password-dialog.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="label" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_password_ternary"
              c:identifier="nma_vpn_password_dialog_set_password_ternary">
        <source-position filename="src/nma-vpn-password-dialog.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="password_ternary" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_password_ternary_label"
              c:identifier="nma_vpn_password_dialog_set_password_ternary_label">
        <source-position filename="src/nma-vpn-password-dialog.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="label" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_show_password"
              c:identifier="nma_vpn_password_dialog_set_show_password">
        <source-position filename="src/nma-vpn-password-dialog.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="show" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_show_password_secondary"
              c:identifier="nma_vpn_password_dialog_set_show_password_secondary">
        <source-position filename="src/nma-vpn-password-dialog.h" line="66"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="show" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_show_password_ternary"
              c:identifier="nma_vpn_password_dialog_set_show_password_ternary">
        <source-position filename="src/nma-vpn-password-dialog.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dialog" transfer-ownership="none">
            <type name="VpnPasswordDialog" c:type="NMAVpnPasswordDialog*"/>
          </instance-parameter>
          <parameter name="show" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="Gtk.Dialog" c:type="GtkDialog"/>
      </field>
    </class>
    <record name="VpnPasswordDialogClass"
            c:type="NMAVpnPasswordDialogClass"
            glib:is-gtype-struct-for="VpnPasswordDialog">
      <source-position filename="src/nma-vpn-password-dialog.h" line="48"/>
      <field name="parent_class">
        <type name="Gtk.DialogClass" c:type="GtkDialogClass"/>
      </field>
    </record>
    <function-macro name="WIFI_DIALOG"
                    c:identifier="NMA_WIFI_DIALOG"
                    introspectable="0">
      <source-position filename="src/nma-wifi-dialog.h" line="21"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WIFI_DIALOG_CLASS"
                    c:identifier="NMA_WIFI_DIALOG_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-wifi-dialog.h" line="22"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WIFI_DIALOG_GET_CLASS"
                    c:identifier="NMA_WIFI_DIALOG_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-wifi-dialog.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS" c:identifier="NMA_WS" introspectable="0">
      <source-position filename="src/nma-ws/nma-ws.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_802_1X"
                    c:identifier="NMA_WS_802_1X"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-802-1x.h" line="21"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_802_1X_CLASS"
                    c:identifier="NMA_WS_802_1X_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-802-1x.h" line="22"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_802_1X_GET_CLASS"
                    c:identifier="NMA_WS_802_1X_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-802-1x.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_DYNAMIC_WEP"
                    c:identifier="NMA_WS_DYNAMIC_WEP"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-dynamic-wep.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_DYNAMIC_WEP_CLASS"
                    c:identifier="NMA_WS_DYNAMIC_WEP_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-dynamic-wep.h" line="24"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_DYNAMIC_WEP_GET_CLASS"
                    c:identifier="NMA_WS_DYNAMIC_WEP_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-dynamic-wep.h" line="27"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_GET_INTERFACE"
                    c:identifier="NMA_WS_GET_INTERFACE"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_LEAP"
                    c:identifier="NMA_WS_LEAP"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-leap.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_LEAP_CLASS"
                    c:identifier="NMA_WS_LEAP_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-leap.h" line="24"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_LEAP_GET_CLASS"
                    c:identifier="NMA_WS_LEAP_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-leap.h" line="27"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_OWE" c:identifier="NMA_WS_OWE" introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-owe.h" line="16"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_OWE_CLASS"
                    c:identifier="NMA_WS_OWE_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-owe.h" line="17"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_OWE_GET_CLASS"
                    c:identifier="NMA_WS_OWE_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-owe.h" line="20"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_SAE" c:identifier="NMA_WS_SAE" introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-sae.h" line="21"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_SAE_CLASS"
                    c:identifier="NMA_WS_SAE_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-sae.h" line="22"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_SAE_GET_CLASS"
                    c:identifier="NMA_WS_SAE_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-sae.h" line="25"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WEP_KEY"
                    c:identifier="NMA_WS_WEP_KEY"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wep-key.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WEP_KEY_CLASS"
                    c:identifier="NMA_WS_WEP_KEY_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wep-key.h" line="24"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WEP_KEY_GET_CLASS"
                    c:identifier="NMA_WS_WEP_KEY_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wep-key.h" line="27"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WPA_EAP"
                    c:identifier="NMA_WS_WPA_EAP"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-eap.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WPA_EAP_CLASS"
                    c:identifier="NMA_WS_WPA_EAP_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-eap.h" line="24"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WPA_EAP_GET_CLASS"
                    c:identifier="NMA_WS_WPA_EAP_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-eap.h" line="27"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WPA_PSK"
                    c:identifier="NMA_WS_WPA_PSK"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-psk.h" line="23"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WPA_PSK_CLASS"
                    c:identifier="NMA_WS_WPA_PSK_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-psk.h" line="24"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WS_WPA_PSK_GET_CLASS"
                    c:identifier="NMA_WS_WPA_PSK_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/nma-ws/nma-ws-wpa-psk.h" line="27"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="WifiDialog"
           c:symbol-prefix="wifi_dialog"
           c:type="NMAWifiDialog"
           parent="Gtk.Dialog"
           glib:type-name="NMAWifiDialog"
           glib:get-type="nma_wifi_dialog_get_type"
           glib:type-struct="WifiDialogClass">
      <source-position filename="src/nma-wifi-dialog.h" line="33"/>
      <implements name="Gtk.Accessible"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.ConstraintTarget"/>
      <implements name="Gtk.Native"/>
      <implements name="Gtk.Root"/>
      <implements name="Gtk.ShortcutManager"/>
      <constructor name="new" c:identifier="nma_wifi_dialog_new">
        <doc xml:space="preserve"
             filename="src/nma-wifi-dialog.c"
             line="1373">Creates a wifi connection dialog and populates it with settings from
@connection if given.  If @device is not given a device selection combo box
will be included.  If @connection is not given a connection selection combo
box will be included.  If @secrets_only is %FALSE a complete connection
creator/editor dialog is returned, otherwise only wifi security secrets
relevant to the security settings in @connection are going to be shown and
will be editable.</doc>
        <source-position filename="src/nma-wifi-dialog.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-wifi-dialog.c"
               line="1389">the dialog widget or %NULL in case of error</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1375">client to retrieve list of devices or connections from</doc>
            <type name="NM.Client" c:type="NMClient*"/>
          </parameter>
          <parameter name="connection" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1376">connection to be shown/edited or %NULL</doc>
            <type name="NM.Connection" c:type="NMConnection*"/>
          </parameter>
          <parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1377">device to check connection compatibility against</doc>
            <type name="NM.Device" c:type="NMDevice*"/>
          </parameter>
          <parameter name="ap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1378">AP to check connection compatibility against</doc>
            <type name="NM.AccessPoint" c:type="NMAccessPoint*"/>
          </parameter>
          <parameter name="secrets_only" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1379">whether to only ask for secrets for given connection</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_create"
                   c:identifier="nma_wifi_dialog_new_for_create">
        <source-position filename="src/nma-wifi-dialog.h" line="50"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="client" transfer-ownership="none">
            <type name="NM.Client" c:type="NMClient*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_hidden"
                   c:identifier="nma_wifi_dialog_new_for_hidden">
        <source-position filename="src/nma-wifi-dialog.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="client" transfer-ownership="none">
            <type name="NM.Client" c:type="NMClient*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_other"
                   c:identifier="nma_wifi_dialog_new_for_other">
        <source-position filename="src/nma-wifi-dialog.h" line="66"/>
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="client" transfer-ownership="none">
            <type name="NM.Client" c:type="NMClient*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_secrets"
                   c:identifier="nma_wifi_dialog_new_for_secrets">
        <doc xml:space="preserve"
             filename="src/nma-wifi-dialog.c"
             line="1416">Creates a wifi secrets dialog and populates it with setting values from
@connection.  If @secrets_setting_name and @secrets_hints are not given
this function creates an identical dialog as nma_wifi_dialog_new() would
create with the @secrets_only parameter %TRUE.  Otherwise
@secrets_setting_name and @secrets_hints determine the list of specific
secrets that are being requested from the user and no editable entries
are shown for any other settings.

Note: only a subset of all settings and setting keys is supported as
@secrets_setting_name and @secrets_hints.</doc>
        <source-position filename="src/nma-wifi-dialog.h" line="43"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-wifi-dialog.c"
               line="1436">the dialog widget or %NULL in case of error</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1418">client to retrieve list of devices or connections from</doc>
            <type name="NM.Client" c:type="NMClient*"/>
          </parameter>
          <parameter name="connection" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1419">connection for which secrets are requested</doc>
            <type name="NM.Connection" c:type="NMConnection*"/>
          </parameter>
          <parameter name="secrets_setting_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1420">setting name whose secrets are requested
  or %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="secrets_hints" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1422">array of setting key names within the setting given in
  @secrets_setting_name which are requested or %NULL</doc>
            <type name="utf8" c:type="const char* const*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_connection"
              c:identifier="nma_wifi_dialog_get_connection">
        <source-position filename="src/nma-wifi-dialog.h" line="52"/>
        <return-value transfer-ownership="full">
          <type name="NM.Connection" c:type="NMConnection*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/nma-wifi-dialog.c"
                 line="1244">an #NMAWifiDialog</doc>
            <type name="WifiDialog" c:type="NMAWifiDialog*"/>
          </instance-parameter>
          <parameter name="device"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <type name="NM.Device" c:type="NMDevice**"/>
          </parameter>
          <parameter name="ap"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <type name="NM.AccessPoint" c:type="NMAccessPoint**"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_nag_ignored"
              c:identifier="nma_wifi_dialog_get_nag_ignored">
        <source-position filename="src/nma-wifi-dialog.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="WifiDialog" c:type="NMAWifiDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="nag_user" c:identifier="nma_wifi_dialog_nag_user">
        <source-position filename="src/nma-wifi-dialog.h" line="57"/>
        <return-value transfer-ownership="full">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="WifiDialog" c:type="NMAWifiDialog*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_nag_ignored"
              c:identifier="nma_wifi_dialog_set_nag_ignored">
        <source-position filename="src/nma-wifi-dialog.h" line="60"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="WifiDialog" c:type="NMAWifiDialog*"/>
          </instance-parameter>
          <parameter name="ignored" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="Gtk.Dialog" c:type="GtkDialog"/>
      </field>
    </class>
    <record name="WifiDialogClass"
            c:type="NMAWifiDialogClass"
            glib:is-gtype-struct-for="WifiDialog">
      <source-position filename="src/nma-wifi-dialog.h" line="33"/>
      <field name="parent">
        <type name="Gtk.DialogClass" c:type="GtkDialogClass"/>
      </field>
    </record>
    <record name="Ws" c:type="NMAWs" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws.h" line="15"/>
      <method name="adhoc_compatible" c:identifier="nma_ws_adhoc_compatible">
        <source-position filename="src/nma-ws/nma-ws.h" line="46"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Ws" c:type="NMAWs*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="hotspot_compatible"
              c:identifier="nma_ws_hotspot_compatible">
        <source-position filename="src/nma-ws/nma-ws.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Ws" c:type="NMAWs*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="validate" c:identifier="nma_ws_validate" throws="1">
        <source-position filename="src/nma-ws/nma-ws.h" line="31"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Ws" c:type="NMAWs*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="Ws8021x" c:type="NMAWs8021x" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-802-1x.h" line="13"/>
    </record>
    <record name="Ws8021xClass"
            c:type="NMAWs8021xClass"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-ws/nma-ws-802-1x.h" line="14"/>
    </record>
    <record name="WsDynamicWep"
            c:type="NMAWsDynamicWep"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-ws/nma-ws-dynamic-wep.h" line="15"/>
    </record>
    <record name="WsDynamicWepClass"
            c:type="NMAWsDynamicWepClass"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-ws/nma-ws-dynamic-wep.h" line="16"/>
    </record>
    <record name="WsInterface"
            c:type="NMAWsInterface"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-ws/nma-ws.h" line="16"/>
    </record>
    <record name="WsLeap" c:type="NMAWsLeap" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-leap.h" line="15"/>
    </record>
    <record name="WsLeapClass"
            c:type="NMAWsLeapClass"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-ws/nma-ws-leap.h" line="16"/>
    </record>
    <record name="WsOwe" c:type="NMAWsOwe" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-owe.h" line="8"/>
    </record>
    <record name="WsOweClass" c:type="NMAWsOweClass" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-owe.h" line="9"/>
    </record>
    <record name="WsSae" c:type="NMAWsSae" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-sae.h" line="13"/>
    </record>
    <record name="WsSaeClass" c:type="NMAWsSaeClass" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-sae.h" line="14"/>
    </record>
    <record name="WsWepKey" c:type="NMAWsWepKey" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-wep-key.h" line="15"/>
    </record>
    <record name="WsWepKeyClass"
            c:type="NMAWsWepKeyClass"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-ws/nma-ws-wep-key.h" line="16"/>
    </record>
    <record name="WsWpaEap" c:type="NMAWsWpaEap" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-wpa-eap.h" line="15"/>
    </record>
    <record name="WsWpaEapClass"
            c:type="NMAWsWpaEapClass"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-ws/nma-ws-wpa-eap.h" line="16"/>
    </record>
    <record name="WsWpaPsk" c:type="NMAWsWpaPsk" disguised="1" opaque="1">
      <source-position filename="src/nma-ws/nma-ws-wpa-psk.h" line="15"/>
    </record>
    <record name="WsWpaPskClass"
            c:type="NMAWsWpaPskClass"
            disguised="1"
            opaque="1">
      <source-position filename="src/nma-ws/nma-ws-wpa-psk.h" line="16"/>
    </record>
    <function name="mobile_providers_split_3gpp_mcc_mnc"
              c:identifier="nma_mobile_providers_split_3gpp_mcc_mnc">
      <doc xml:space="preserve"
           filename="src/nma-mobile-providers.c"
           line="1605">Splits the input MCCMNC string into separate MCC and MNC strings.</doc>
      <source-position filename="src/nma-mobile-providers.h" line="145"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/nma-mobile-providers.c"
             line="1613">%TRUE if correctly split and @mcc and @mnc are set; %FALSE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="mccmnc" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1607">input MCCMNC string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="mcc"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1608">the MCC.</doc>
          <type name="utf8" c:type="gchar**"/>
        </parameter>
        <parameter name="mnc"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/nma-mobile-providers.c"
               line="1609">the MNC.</doc>
          <type name="utf8" c:type="gchar**"/>
        </parameter>
      </parameters>
    </function>
    <docsection name="nma-bar-code">
      <doc xml:space="preserve"
           filename="src/nma-bar-code.c"
           line="54">A Bar Code object provides the means of drawing a QR code onto a cairo
context. Useful for rendering Wi-Fi network credential in a form that
can be optically scanned with a phone camera.</doc>
    </docsection>
    <docsection name="nma-bar-code-widget">
      <doc xml:space="preserve"
           filename="src/nma-bar-code-widget.c"
           line="40">This is a widget that displays a QR code for a connection suitable for
optical recognition, e.g. scanning on a phone to connect to a hotspot.</doc>
    </docsection>
    <docsection name="nma-cert-chooser">
      <doc xml:space="preserve"
           filename="src/nma-cert-chooser.c"
           line="78">Certificate chooser allows for selection of a certificate or
various schemes optionally accompanied with a key and passwords
or PIN.

The widgets that implement this interface may allow selecting
the certificates from various sources such as files or cryptographic
tokens.</doc>
    </docsection>
    <docsection name="nma-cert-chooser-button">
      <doc xml:space="preserve"
           filename="src/nma-cert-chooser-button.c"
           line="23">#NMACertChooserButton is a button that provides a dropdown of
PKCS\#11 slots present in the system and allows choosing a certificate
from either of them or a file.</doc>
    </docsection>
    <function name="utils_menu_to_secret_flags"
              c:identifier="nma_utils_menu_to_secret_flags">
      <doc xml:space="preserve"
           filename="src/nma-ui-utils.c"
           line="359">Returns secret flags corresponding to the selected password storage menu
in the attached icon</doc>
      <source-position filename="src/nma-ui-utils.h" line="19"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/nma-ui-utils.c"
             line="366">secret flags corresponding to the active item in password menu</doc>
        <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
      </return-value>
      <parameters>
        <parameter name="passwd_entry" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="361">password #GtkEntry which the password icon/menu is attached to</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_setup_password_storage"
              c:identifier="nma_utils_setup_password_storage">
      <doc xml:space="preserve"
           filename="src/nma-ui-utils.c"
           line="240">Adds a secondary icon and creates a popup menu for password entry.
The active menu item is set up according to initial_flags, or
from @setting/@password_flags_name (if they are not NULL).
If the @setting/@password_flags_name are not NULL, secret flags will
be automatically updated in the setting when menu is changed.</doc>
      <source-position filename="src/nma-ui-utils.h" line="13"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="passwd_entry" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="242">password #GtkEntry which the icon is attached to</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </parameter>
        <parameter name="initial_flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="243">initial secret flags to setup password menu from</doc>
          <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
        </parameter>
        <parameter name="setting" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="244">#NMSetting containing the password, or NULL</doc>
          <type name="NM.Setting" c:type="NMSetting*"/>
        </parameter>
        <parameter name="password_flags_name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="245">name of the secret flags (like psk-flags), or NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="with_not_required" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="246">whether to include "Not required" menu item</doc>
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
        <parameter name="ask_mode" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="247">%TRUE if the entry is shown in ASK mode. That means,
  while prompting for a password, contrary to being inside the
  editor mode.
  If %TRUE, the entry should be sensivive on selected "always-ask"
  icon (this is e.f. for nm-applet asking for password), otherwise
  not.
  If %FALSE, it shall not be possible to select a different storage,
  because we only prompt for a password, we cannot change the password
  location.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_update_password_storage"
              c:identifier="nma_utils_update_password_storage">
      <doc xml:space="preserve"
           filename="src/nma-ui-utils.c"
           line="392">Updates secret flags in the password storage popup menu and also
in the @setting (if @setting and @password_flags_name are not NULL).</doc>
      <source-position filename="src/nma-ui-utils.h" line="20"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="passwd_entry" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="394">#GtkEntry with the password</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </parameter>
        <parameter name="secret_flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="395">secret flags to set</doc>
          <type name="NM.SettingSecretFlags" c:type="NMSettingSecretFlags"/>
        </parameter>
        <parameter name="setting" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="396">#NMSetting containing the password, or NULL</doc>
          <type name="NM.Setting" c:type="NMSetting*"/>
        </parameter>
        <parameter name="password_flags_name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/nma-ui-utils.c"
               line="397">name of the secret flags (like psk-flags), or NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
