/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #include "nsISupports.idl" interface nsIArray; [scriptable, uuid(5009acae-6973-48c3-b6d6-52c692cc5d9d)] interface nsIGConfService : nsISupports { /* Basic registry access */ boolean getBool(in AUTF8String key); AUTF8String getString(in AUTF8String key); long getInt(in AUTF8String key); float getFloat(in AUTF8String key); /* * Use this to return any list items in GConf, this will return * an array of UTF16 nsISupportsString's. */ nsIArray getStringList(in AUTF8String key); void setBool(in AUTF8String key, in boolean value); void setString(in AUTF8String key, in AUTF8String value); void setInt(in AUTF8String key, in long value); void setFloat(in AUTF8String key, in float value); /* * Look up the handler for a protocol under the * /desktop/gnome/url-handlers hierarchy. */ AUTF8String getAppForProtocol(in AUTF8String scheme, out boolean enabled); /* * Check whether the handler for a scheme requires a terminal to run. */ boolean handlerRequiresTerminal(in AUTF8String scheme); /* * Set the handler for a protocol, marking it as enabled. * This removes any GnomeVFSMimeApp association for the protocol. */ void setAppForProtocol(in AUTF8String scheme, in AUTF8String command); }; %{C++ #define NS_GCONFSERVICE_CONTRACTID "@mozilla.org/gnome-gconf-service;1" %}