diff options
Diffstat (limited to 'dom/base/nsGkAtoms.cpp')
-rw-r--r-- | dom/base/nsGkAtoms.cpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/dom/base/nsGkAtoms.cpp b/dom/base/nsGkAtoms.cpp new file mode 100644 index 000000000..24d4abddf --- /dev/null +++ b/dom/base/nsGkAtoms.cpp @@ -0,0 +1,37 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set ts=8 sts=2 et sw=2 tw=80: */ +/* 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/. */ + +/* + * This class wraps up the creation (and destruction) of the standard + * set of atoms used by gklayout; the atoms are created when gklayout + * is loaded and they are destroyed when gklayout is unloaded. + */ + +#include "nsGkAtoms.h" +#include "nsStaticAtom.h" + +using namespace mozilla; + +// define storage for all atoms +#define GK_ATOM(name_, value_) nsIAtom* nsGkAtoms::name_; +#include "nsGkAtomList.h" +#undef GK_ATOM + +#define GK_ATOM(name_, value_) NS_STATIC_ATOM_BUFFER(name_##_buffer, value_) +#include "nsGkAtomList.h" +#undef GK_ATOM + +static const nsStaticAtom GkAtoms_info[] = { +#define GK_ATOM(name_, value_) NS_STATIC_ATOM(name_##_buffer, &nsGkAtoms::name_), +#include "nsGkAtomList.h" +#undef GK_ATOM +}; + +void nsGkAtoms::AddRefAtoms() +{ + NS_RegisterStaticAtoms(GkAtoms_info); +} + |