mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-30 13:45:27 +00:00
153 lines
4.1 KiB
Plaintext
153 lines
4.1 KiB
Plaintext
/* -*- Mode: IDL; tab-width: 4; 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/. */
|
|
|
|
/**
|
|
* The nsIMarkupDocumentViewer
|
|
* This interface describes the properties of a content viewer
|
|
* for a markup document - HTML or XML
|
|
*/
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
interface nsIDOMNode;
|
|
|
|
%{C++
|
|
template<class T> class nsCOMPtr;
|
|
template<class T> class nsTArray;
|
|
%}
|
|
|
|
interface nsIMarkupDocumentViewer;
|
|
|
|
[ref] native nsIMarkupDocumentViewerTArray(nsTArray<nsCOMPtr<nsIMarkupDocumentViewer> >);
|
|
|
|
[scriptable, uuid(23326580-e6ce-4ee1-94b8-f1d9424a9977)]
|
|
interface nsIMarkupDocumentViewer : nsISupports
|
|
{
|
|
|
|
/*
|
|
Scrolls to a given DOM content node.
|
|
*/
|
|
void scrollToNode(in nsIDOMNode node);
|
|
|
|
/** The amount by which to scale all text. Default is 1.0. */
|
|
attribute float textZoom;
|
|
|
|
/** The amount by which to scale all lengths. Default is 1.0. */
|
|
attribute float fullZoom;
|
|
|
|
/** Disable entire author style level (including HTML presentation hints) */
|
|
attribute boolean authorStyleDisabled;
|
|
|
|
/*
|
|
XXX Comment here!
|
|
*/
|
|
attribute ACString defaultCharacterSet;
|
|
|
|
/**
|
|
* XXX comm-central only: bug 829543. Not the Character Encoding menu in
|
|
* browser!
|
|
*/
|
|
attribute ACString forceCharacterSet;
|
|
|
|
/**
|
|
* XXX comm-central only: bug 829543.
|
|
*/
|
|
attribute ACString hintCharacterSet;
|
|
|
|
/**
|
|
* XXX comm-central only: bug 829543.
|
|
*/
|
|
attribute int32_t hintCharacterSetSource;
|
|
|
|
/*
|
|
character set from prev document
|
|
*/
|
|
attribute ACString prevDocCharacterSet;
|
|
|
|
//void GetCharacterSetHint(in wstring hintCharset, in int32_t charsetSource);
|
|
|
|
/**
|
|
* Requests the size of the content to the container.
|
|
*/
|
|
void getContentSize(out long width, out long height);
|
|
|
|
/**
|
|
* Options for Bidi presentation.
|
|
*
|
|
* Use these attributes to access the individual Bidi options.
|
|
*/
|
|
|
|
/**
|
|
* bidiTextDirection: the default direction for the layout of bidirectional text.
|
|
* 1 - left to right
|
|
* 2 - right to left
|
|
*/
|
|
attribute octet bidiTextDirection;
|
|
|
|
/**
|
|
* bidiTextType: the ordering of bidirectional text. This may be either "logical"
|
|
* or "visual". Logical text will be reordered for presentation using the Unicode
|
|
* Bidi Algorithm. Visual text will be displayed without reordering.
|
|
* 1 - the default order for the charset
|
|
* 2 - logical order
|
|
* 3 - visual order
|
|
*/
|
|
attribute octet bidiTextType;
|
|
|
|
/**
|
|
* bidiNumeral: the type of numerals to display.
|
|
* 1 - depending on context, default is Arabic numerals
|
|
* 2 - depending on context, default is Hindi numerals
|
|
* 3 - Arabic numerals
|
|
* 4 - Hindi numerals
|
|
*/
|
|
attribute octet bidiNumeral;
|
|
|
|
/**
|
|
* bidiSupport: whether to use platform bidi support or Mozilla's bidi support
|
|
* 1 - Use Mozilla's bidi support
|
|
* 2 - Use the platform bidi support
|
|
* 3 - Disable bidi support
|
|
*/
|
|
attribute octet bidiSupport;
|
|
|
|
/**
|
|
* Use this attribute to access all the Bidi options in one operation
|
|
*/
|
|
attribute uint32_t bidiOptions;
|
|
|
|
/** The minimum font size */
|
|
attribute long minFontSize;
|
|
|
|
/**
|
|
* Append |this| and all of its descendants to the given array,
|
|
* in depth-first pre-order traversal.
|
|
*/
|
|
[noscript] void appendSubtree(in nsIMarkupDocumentViewerTArray array);
|
|
|
|
/**
|
|
* Set the maximum line width for the document.
|
|
* NOTE: This will generate a reflow!
|
|
*
|
|
* @param maxLineWidth The maximum width of any line boxes on the page,
|
|
* in CSS pixels.
|
|
*/
|
|
void changeMaxLineBoxWidth(in int32_t maxLineBoxWidth);
|
|
|
|
/*
|
|
* Render the document as if being viewed on a device with the specified
|
|
* media type. This will cause a reflow.
|
|
*
|
|
* @param mediaType The media type to be emulated
|
|
*/
|
|
void emulateMedium(in AString aMediaType);
|
|
|
|
/*
|
|
* Restore the viewer's natural media type
|
|
*/
|
|
void stopEmulatingMedium();
|
|
};
|