layout/generic/MathVariantTextRunFactory.h
author James Kitchener <jkitch.bug@gmail.com>
Mon, 02 Dec 2013 11:49:27 -0500
changeset 158278 67e38708a5e94501280098d255e27e1516a0992a
permissions -rw-r--r--
Bug 114365 - Textrun transformations and TextFrame changes for mathvariant. r=roc

/* -*- Mode: C++; 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/. */

#ifndef MATHVARIANTTEXTRUNFACTORY_H_
#define MATHVARIANTTEXTRUNFACTORY_H_

#include "nsTextRunTransformations.h"

/**
 * Builds textruns that render their text using a mathvariant
 */
class nsMathVariantTextRunFactory : public nsTransformingTextRunFactory {
public:
  nsMathVariantTextRunFactory(nsTransformingTextRunFactory* aInnerTransformingTextRunFactory)
    : mInnerTransformingTextRunFactory(aInnerTransformingTextRunFactory) {}

  virtual void RebuildTextRun(nsTransformedTextRun* aTextRun,
                              gfxContext* aRefContext) MOZ_OVERRIDE;
protected:
  nsAutoPtr<nsTransformingTextRunFactory> mInnerTransformingTextRunFactory;
};

#endif /*MATHVARIANTTEXTRUNFACTORY_H_*/