intl/strres/src/nsStringBundleTextOverride.h
author Bobby Holley <bobbyholley@gmail.com>
Tue, 16 Jul 2013 18:04:49 -0700
changeset 138783 13229bab2ba4e4d86b4c795f849240c009314c2d
parent 94475 f4157e8c410708d76703f19e4dfb61859bfe32d8
child 190360 12985d7bd06a6fb901b7c2fb55a5b86353d57660
permissions -rw-r--r--
Bug 889714 - Reduce the number of places where we pull |env| off cx. r=mrbkap

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/* 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/. */


#ifndef nsStringBundleTextOverride_h__
#define nsStringBundleTextOverride_h__

#include "nsIStringBundleOverride.h"
#include "nsCOMPtr.h"
#include "nsIPersistentProperties2.h"

// {6316C6CE-12D3-479e-8F53-E289351412B8}
#define NS_STRINGBUNDLETEXTOVERRIDE_CID \
  { 0x6316c6ce, 0x12d3, 0x479e, \
  { 0x8f, 0x53, 0xe2, 0x89, 0x35, 0x14, 0x12, 0xb8 } }


#define NS_STRINGBUNDLETEXTOVERRIDE_CONTRACTID \
    "@mozilla.org/intl/stringbundle/text-override;1"

// an implementation which does overrides from a text file

class nsStringBundleTextOverride : public nsIStringBundleOverride
{
 public:
    nsStringBundleTextOverride() { }
    virtual ~nsStringBundleTextOverride() {}

    nsresult Init();
    
    NS_DECL_ISUPPORTS
    NS_DECL_NSISTRINGBUNDLEOVERRIDE

private:
    nsCOMPtr<nsIPersistentProperties> mValues;
    
};

#endif