gecko-dev/xpcom/system/nsIGConfService.idl

51 lines
1.6 KiB
Plaintext

/* -*- 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"
%}