def fl_delete_folder(ptr_flobject, ptr_flform):
    """fl_delete_folder(ptr_flobject, ptr_flform)

    Removes a folder from a tabfolder flobject. After deletion, the number of
    folders in the tabfolder as well as the sequence numbers are updated. This
    means if you want to delete all folders after the second folder, you can
    do that by deleting the third folder repeatedly.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            tabfolder flobject
        ptr_flform : pointer to xfdata.FL_FORM
            form

    Examples
    --------
        >>> *todo*

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_delete_folder = library.cfuncproto(
        library.load_so_libforms(), "fl_delete_folder",
        None, [cty.POINTER(xfdata.FL_OBJECT), cty.POINTER(xfdata.FL_FORM)],
        """void fl_delete_folder(FL_OBJECT * ob, FL_FORM * form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    library.verify_flformptr_type(ptr_flform)
    library.keep_elem_refs(ptr_flobject, ptr_flform)
    _fl_delete_folder(ptr_flobject, ptr_flform)
def fl_set_folder(ptr_flobject, ptr_flform):
    """fl_set_folder(ptr_flobject, ptr_flform)

    Defines which folder to show.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            tabfolder flobject
        ptr_flform : pointer to xfdata.FL_FORM
            form to show

    Examples
    --------
        >>> *todo*

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_set_folder = library.cfuncproto(
        library.load_so_libforms(), "fl_set_folder",
        None, [cty.POINTER(xfdata.FL_OBJECT), cty.POINTER(xfdata.FL_FORM)],
        """void fl_set_folder(FL_OBJECT * ob, FL_FORM * form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    library.verify_flformptr_type(ptr_flform)
    library.keep_elem_refs(ptr_flobject, ptr_flform)
    _fl_set_folder(ptr_flobject, ptr_flform)
def fl_addto_tabfolder(ptr_flobject, tabtitle, ptr_flform):
    """fl_addto_tabfolder(ptr_flobject, tabtitle, ptr_flform) -> ptr_flobject

    Populates a tabbed folder, adding a regular form to it. Note: application
    program should not destroy a form that has been added to a tabbed folder.
    You can change the attributes of the returned flobject just like any other
    objects, but not all possibilities result in a pleasing appearance.
    Although there is no specific requirement of what the backface of the
    folder/form should be, a boxtype other than xfdata.FL_FLAT_BOX or
    xfdata.FL_NO_BOX may not look nice. If the backface of the form is of
    xfdata.FL_FLAT_BOX the associated tab will take on the color of the
    backface when activated. Each tab must have its own form, i.e. you should
    not associate the same form with two different tabs; however, you can
    create copies of a form and use these copies.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            tabfolder flobject
        tabtitle : str
            text of the tab rider (with possible embedded newlines in it)
        ptr_flform : pointer to xfdata.FL_FORM
            form to be added

    Returns
    -------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            tabfolder flobject

    Examples
    --------
        >>> *todo*

    Notes
    -----
        Status: NA-UTest + Doc + Demo = OK

    """
    _fl_addto_tabfolder = library.cfuncproto(
        library.load_so_libforms(), "fl_addto_tabfolder",
        cty.POINTER(xfdata.FL_OBJECT), [cty.POINTER(xfdata.FL_OBJECT),
        xfdata.STRING, cty.POINTER(xfdata.FL_FORM)],
        """FL_OBJECT * fl_addto_tabfolder(FL_OBJECT * ob,
           const char * title, FL_FORM * form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    library.verify_flformptr_type(ptr_flform)
    s_tabtitle = library.convert_to_bytestrc(tabtitle)
    library.keep_elem_refs(ptr_flobject, tabtitle, ptr_flform, s_tabtitle)
    retval = _fl_addto_tabfolder(ptr_flobject, s_tabtitle, ptr_flform)
    return retval
def fl_insert_formbrowser(ptr_flobject, seqnum, ptr_flform):
    """fl_insert_formbrowser(ptr_flobject, seqnum, ptr_flform) -> numforms

    Inserts a form into a formbrowser at arbitrary location.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            formbrowser flobject
        seqnum : int
            the sequence number before which the new form form is to be
            inserted into the formbrowser
        ptr_flform : pointer to xfdata.FL_FORM
            new form to insert

    Returns
    -------
        numforms : int
            number of forms in the formbrowser, or -1 (on failure)

    Examples
    --------
        >>> frmsnum = fl_insert_formbrowser(pfrmbrobj, 5, pform)

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_insert_formbrowser = library.cfuncproto(
        library.load_so_libforms(), "fl_insert_formbrowser",
        cty.c_int, [cty.POINTER(xfdata.FL_OBJECT), cty.c_int, \
        cty.POINTER(xfdata.FL_FORM)],
        """int fl_insert_formbrowser(FL_OBJECT * ob, int line,
           FL_FORM * new_form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    i_seqnum = library.convert_to_intc(seqnum)
    library.verify_flformptr_type(ptr_flform)
    library.keep_elem_refs(ptr_flobject, seqnum, i_seqnum, ptr_flform)
    retval = _fl_insert_formbrowser(ptr_flobject, i_seqnum, ptr_flform)
    return retval
def fl_addto_formbrowser(ptr_flobject, ptr_flform):
    """fl_addto_formbrowser(ptr_flobject, ptr_flform) -> numforms

    Populates a formbrowser. The form so added is appended to the list of
    forms that are already in the formbrowser. Form should be valid for the
    duration of the formbrowser and the application program should not destroy
    a form that is added to a formbrowser before deleting the form from the
    formbrowser first.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            formbrowser flobject
        ptr_flform : pointer to xfdata.FL_FORM
            form

    Returns
    -------
        numforms : int
            total number of forms in the formbrowser

    Examples
    --------
        >>> ntotfrms = fl_addto_formbrowser(pfrmbrobj, newform)

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_addto_formbrowser = library.cfuncproto(
        library.load_so_libforms(), "fl_addto_formbrowser",
        cty.c_int, [cty.POINTER(xfdata.FL_OBJECT),
        cty.POINTER(xfdata.FL_FORM)],
        """int fl_addto_formbrowser(FL_OBJECT * ob, FL_FORM * form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    library.verify_flformptr_type(ptr_flform)
    library.keep_elem_refs(ptr_flobject, ptr_flform)
    retval = _fl_addto_formbrowser(ptr_flobject, ptr_flform)
    return retval
def fl_replace_formbrowser(ptr_flobject, seqnum, ptr_flform):
    """fl_replace_formbrowser(ptr_flobject, seqnum, ptr_flform) -> ptr_flform

    Replaces a form in formbrowser specified by a sequence number

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            formbrowser flobject
        seqnum : int
            sequence number of form to be replaced
        ptr_flform : pointer to xfdata.FL_FORM
            form used as replacement

    Returns
    -------
        ptr_flform : pointer to xfdata.FL_FORM
            form that has been replaced, or None (on failure)

    Examples
    --------
        >>> replfrm = fl_replace_formbrowser(pfrmbrobj, 4, newreplfrm)

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_replace_formbrowser = library.cfuncproto(
        library.load_so_libforms(), "fl_replace_formbrowser",
        cty.POINTER(xfdata.FL_FORM), [cty.POINTER(xfdata.FL_OBJECT),
        cty.c_int, cty.POINTER(xfdata.FL_FORM)],
        """FL_FORM * fl_replace_formbrowser(FL_OBJECT * ob, int num,
           FL_FORM * form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    i_seqnum = library.convert_to_intc(seqnum)
    library.verify_flformptr_type(ptr_flform)
    library.keep_elem_refs(ptr_flobject, seqnum, ptr_flform, i_seqnum)
    retval = _fl_replace_formbrowser(ptr_flobject, i_seqnum, ptr_flform)
    return retval
def fl_delete_formbrowser(ptr_flobject, ptr_flform):
    """fl_delete_formbrowser(ptr_flobject, ptr_flform) -> numforms

    Removes a specified form from the formbrowser.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            formbrowser flobject
        ptr_flform : pointer to xfdata.FL_FORM
            form candidate to deletion

    Returns
    -------
        numforms : int
            current (after deletion) number of forms in the formbrowser, or
            -1 (on failure)

    Examples
    --------
        >>> numfrm = fl_delete_formbrowser(pfrmbrobj, p2ndform)

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_delete_formbrowser = library.cfuncproto(
        library.load_so_libforms(), "fl_delete_formbrowser",
        cty.c_int, [cty.POINTER(xfdata.FL_OBJECT),
        cty.POINTER(xfdata.FL_FORM)],
        """int fl_delete_formbrowser(FL_OBJECT * ob,
           FL_FORM * candidate_form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    library.verify_flformptr_type(ptr_flform)
    library.keep_elem_refs(ptr_flobject, ptr_flform)
    retval = _fl_delete_formbrowser(ptr_flobject, ptr_flform)
    return retval
def fl_find_formbrowser_form_number(ptr_flobject, ptr_flform):
    """fl_find_formbrowser_form_number(ptr_flobject, ptr_flform) -> seqnum

    Finds out the sequence number of a particular form.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            formbrowser flobject
        ptr_flform : pointer to xfdata.FL_FORM
            form candidate to be found

    Returns
    -------
        seqnum : int
            sequence number of form

    Examples
    --------
        >>> frmid = fl_find_formbrowser_form_number(pfrmbrobj, pform)

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_find_formbrowser_form_number = library.cfuncproto(
        library.load_so_libforms(), "fl_find_formbrowser_form_number",
        cty.c_int, [cty.POINTER(xfdata.FL_OBJECT),
        cty.POINTER(xfdata.FL_FORM)],
        """int fl_find_formbrowser_form_number(FL_OBJECT * ob,
           FL_FORM * candidate_form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    library.verify_flformptr_type(ptr_flform)
    library.keep_elem_refs(ptr_flobject, ptr_flform)
    retval = _fl_find_formbrowser_form_number(ptr_flobject, ptr_flform)
    return retval
def fl_set_formbrowser_topform(ptr_flobject, ptr_flform):
    """fl_set_formbrowser_topform(ptr_flobject, ptr_flform) -> seqnum

    Defines which form to show by setting the top form.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            formbrowser flobject
        ptr_flform : pointer to xfdata.FL_FORM
            form

    Returns
    -------
        seqnum : int
            sequence number of the form

    Examples
    --------
        >>> frmid = fl_set_formbrowser_topform(pfrmbrobj, pform)

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_set_formbrowser_topform = library.cfuncproto(
        library.load_so_libforms(), "fl_set_formbrowser_topform",
        cty.c_int, [cty.POINTER(xfdata.FL_OBJECT),
        cty.POINTER(xfdata.FL_FORM)],
        """int fl_set_formbrowser_topform(FL_OBJECT * ob, FL_FORM * form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    library.verify_flformptr_type(ptr_flform)
    library.keep_elem_refs(ptr_flobject, ptr_flform)
    retval = _fl_set_formbrowser_topform(ptr_flobject, ptr_flform)
    return retval
def fl_replace_folder_bynumber(ptr_flobject, seqnum, ptr_flform):
    """fl_replace_folder_bynumber(ptr_flobject, seqnum, ptr_flform)

    Replaces a form associated with folder having a particular sequence
    number with a new form.

    Parameters
    ----------
        ptr_flobject : pointer to xfdata.FL_OBJECT
            tabfolder flobject
        seqnum : int
            sequence number of folder to be replaced
        ptr_flform : pointer to xfdata.FL_FORM
            new form associated with folder

    Examples
    --------
        >>> *todo*

    Notes
    -----
        Status: NA-UTest + Doc + NoDemo = Maybe

    """
    _fl_replace_folder_bynumber = library.cfuncproto(
        library.load_so_libforms(), "fl_replace_folder_bynumber",
        None, [cty.POINTER(xfdata.FL_OBJECT), cty.c_int,
        cty.POINTER(xfdata.FL_FORM)],
        """void fl_replace_folder_bynumber(FL_OBJECT * ob, int num,
           FL_FORM * form)""")
    library.check_if_flinitialized()
    library.verify_flobjectptr_type(ptr_flobject)
    library.verify_flformptr_type(ptr_flform)
    i_seqnum = library.convert_to_intc(seqnum)
    library.keep_elem_refs(ptr_flobject, seqnum, ptr_flform, i_seqnum)
    _fl_replace_folder_bynumber(ptr_flobject, i_seqnum, ptr_flform)