Bug 1715716 [wpt PR 29323] - Use unittest.mock instead of the mock package, a=testonly
[gecko.git] / widget / nsIPaper.idl
blob0ec957d221f96ee70751ba5fa7e4f2a5384d819e
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 #include "nsISupports.idl"
8 [scriptable, uuid(a4dd9675-6311-45a9-a547-44e0127304a6)]
9 interface nsIPaper : nsISupports
11 /**
12 * The internal name of the paper (a fixed, non-localized ID).
13 * (For CUPS, this is the PWG-standardized name as used internally by CUPS;
14 * on Windows, it is the integer paper ID as a string.)
16 readonly attribute AString id;
18 /**
19 * The human-readable (potentially localized) name of the paper.
21 readonly attribute AString name;
23 /**
24 * The width of the paper assuming portrait orientation, in points.
25 * That is, the length of the shorter edges of the paper.
27 readonly attribute double width;
29 /**
30 * The height of the paper assuming portrait orientation, in points.
31 * That is, the length of the longer edges of the paper.
33 readonly attribute double height;
35 /**
36 * The Promise resolves with an nsIPaperMargin object. The margin widths contained
37 * in that object's top/bottom/left/right properties are relative to the paper in
38 * portrait orientation. That is, top and bottom are the margins for the short edges,
39 * and left and right are the margins for the long edges.
41 [implicit_jscontext] readonly attribute Promise unwriteableMargin;