Xfce Wiki

Sub domains
 

This is an old revision of the document!


Vala Bindings

Vala bindings can be downloaded at http://archive.xfce.org/src/bindings/xfce4-vala.

Git repository is available at http://git.xfce.org/bindings/xfce4-vala.

Automatic generated VAPI files are available in the directory http://git.xfce.org/bindings/xfce4-vala/tree/vapi, they are self explanatory.

libxfce4util

The generated VAPI file covers for these headers.

libxfce4util-config.h
xfce-generics.h
xfce-i18n.h
xfce-license.h
xfce-miscutils.h
xfce-posix-signal-handler.h
xfce-rc.h
xfce-resource.h
xfce-utf8.h

RC

  • Xfce.Rc: constructable class
    • new: xfce_rc_simple_open()
    • new_from_resource: xfce_rc_config_open()
    • destroy: xfce_rc_close()

Resource

xfce-resource.h excluded, custom VAPI.

  • Xfce.Resource: class with static functions
    • deprecate XfceMatchFunc, match_custom, pop_path, push_path
  • Xfce.ResourceType.*: XFCE_RESOURCE_TYPE_* enum

Signal Handling

xfce-posix-signal-handler.h excluded, custom VAPI.

  • Xfce.PosixSignalHandler: class with static functions
    • Xfce.PosixSignalHandler.Callback: callback for set_handler function

i18n

xfce-i18n.h excluded, custom VAPI.

  • Xfce.textdomain: xfce_textdomain
    • convenience function on top of the bindtextdomain and textdomain functions, all other related functions to libxfce4util/xfce-i18n.h are deprecated

Deprecated

  • Debug (xfce-debug.h)
    • Use GLib.debug instead, it prints the line number of the Vala source file
  • File Utilities (xfce-fileutils.h)
    • Xfce.mkdirhier: use GLib.mkdir_with_parents instead
  • Kiosk Mode (xfce-kiosk.h)
    • Xfconf provides possibility to lock capabilities (see perchannel-xml.txt)
    • Use Xfconf.Channel.is_property_locked instead

garcon

The generated VAPI file covers for these headers:

garcon-config.h
garcon-environment.h
garcon-marshal.h
garcon-menu-directory.h
garcon-menu-element.h
garcon-menu.h
garcon-menu-item-cache.h
garcon-menu-item.h
garcon-menu-item-pool.h
garcon-menu-merger.h
garcon-menu-node.h
garcon-menu-parser.h
garcon-menu-separator.h
garcon-menu-tree-provider.h

Hide two methods requires_terminal() and supports_startup_notification(), they are handled as get/set properties and conflict with the getter method name.

xfconf

The generated VAPI file covers for these headers:

xfconf-binding.h
xfconf-channel.h
xfconf-errors.h
xfconf.h

  • Custom VAPI for Xfconf.init in order to throw Xfconf.Error instead of GLib.Error
  • Rename xfconf_g_property_* inside the class Xfconf.Property
  • Drop the functions that take a va_list in argument
  • Drop the functions that take or return a GPtrArray
  • Drop xfconf_free_array
  • int16 GType is not implemented (source xfconf-types.h excluded)

libxfcegui4

  • XfceAppMenuItem
    • deprecate new_from_desktop_entry
  • XfceTitledDialog
    • drop redundant get/set methods
  • move functions from Fundamentals and Core inside respective classes
  • new class WidgetHelpers with two functions create_framebox and create_framebox_with_content
  • deprecate everything else

exo

  • move extension functions to the class Exo.Extensions
  • move md5 digest functions that don't start with exo_md5_digest_* to the class Exo.Md5Digest
  • move exo_str_get_md5_str function into the class Exo.Md5
  • move exo_url_* functions to the class Exo.Url
  • move functions from execute.h to the class Exo.Execute
  • rename signal names duplicated with method names:
    • exo_icon_view_item_activated() ⇒ exo_icon_view_activate_item()
    • ExoIconView::select_all ⇒ all_selected
    • ExoIconView::unselect_all ⇒ all_unselected
    • ExoToolbarsModel::get_item_data ⇒ item_data
    • ExoToolbarsModel::get_item_id ⇒ item_id
    • ExoToolbarsModel::get_item_type ⇒ item_type