зеркало из https://github.com/mozilla/pjs.git
Bug 105708 - "move nsUnitConversion.h" [p=reg@openpave.org (Jeremy Lea) r+sr+a1.9=roc]
This commit is contained in:
Родитель
f75cf958da
Коммит
a007dfe8dd
|
@ -100,7 +100,6 @@
|
|||
#include "nsIDocument.h"
|
||||
#include "nsIDocumentObserver.h"
|
||||
#include "nsIStreamListener.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsVoidArray.h"
|
||||
|
||||
#include "nsIDocumentViewer.h"
|
||||
|
|
|
@ -37,7 +37,6 @@
|
|||
|
||||
#include "nsPrintSettingsImpl.h"
|
||||
#include "nsCoord.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsReadableUtils.h"
|
||||
|
||||
// For Prefs
|
||||
|
|
|
@ -74,7 +74,6 @@ WIN_LIBS= \
|
|||
#include "nsIWidget.h"
|
||||
#include "nsIPrintSettings.h"
|
||||
#include "nsIPrintSettingsWin.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIPrintOptions.h"
|
||||
#include "nsWidgetsCID.h"
|
||||
static NS_DEFINE_IID(kPrinterEnumeratorCID, NS_PRINTER_ENUMERATOR_CID);
|
||||
|
|
|
@ -38,21 +38,20 @@
|
|||
#ifndef NSCOORD_H
|
||||
#define NSCOORD_H
|
||||
|
||||
#include "nscore.h"
|
||||
#include "nsMathUtils.h"
|
||||
#include <math.h>
|
||||
#include <float.h>
|
||||
|
||||
#include "nsDebug.h"
|
||||
|
||||
/*
|
||||
* Basic type used for the geometry classes.
|
||||
*
|
||||
* Normally all coordinates are maintained in the twips coordinate
|
||||
* space. A twip is 1/20th of a point, and there are 72 points per
|
||||
* inch. However, nscoords do appear in pixel space and other
|
||||
* coordinate spaces.
|
||||
*
|
||||
* Twips are used because they are a device-independent unit of measure. See
|
||||
* header file nsUnitConversion.h for many useful macros to convert between
|
||||
* different units of measure.
|
||||
* Normally all coordinates are maintained in an app unit coordinate
|
||||
* space. An app unit is 1/60th of a CSS device pixel, which is, in turn
|
||||
* an integer number of device pixels, such at the CSS DPI is as close to
|
||||
* 96dpi as possible.
|
||||
*/
|
||||
|
||||
// This controls whether we're using integers or floats for coordinates. We
|
||||
|
@ -255,4 +254,136 @@ inline float NSCoordToFloat(nscoord aCoord) {
|
|||
return (float)aCoord;
|
||||
}
|
||||
|
||||
/*
|
||||
* Coord Rounding Functions
|
||||
*/
|
||||
inline nscoord NSToCoordFloor(float aValue)
|
||||
{
|
||||
return nscoord(NS_floorf(aValue));
|
||||
}
|
||||
|
||||
inline nscoord NSToCoordCeil(float aValue)
|
||||
{
|
||||
return nscoord(NS_ceilf(aValue));
|
||||
}
|
||||
|
||||
inline nscoord NSToCoordRound(float aValue)
|
||||
{
|
||||
return nscoord(NS_floorf(aValue + 0.5f));
|
||||
}
|
||||
|
||||
/*
|
||||
* Int Rounding Functions
|
||||
*/
|
||||
inline PRInt32 NSToIntFloor(float aValue)
|
||||
{
|
||||
return PRInt32(NS_floorf(aValue));
|
||||
}
|
||||
|
||||
inline PRInt32 NSToIntCeil(float aValue)
|
||||
{
|
||||
return PRInt32(NS_ceilf(aValue));
|
||||
}
|
||||
|
||||
inline PRInt32 NSToIntRound(float aValue)
|
||||
{
|
||||
return NS_lroundf(aValue);
|
||||
}
|
||||
|
||||
/*
|
||||
* App Unit/Pixel conversions
|
||||
*/
|
||||
inline nscoord NSFloatPixelsToAppUnits(float aPixels, PRInt32 aAppUnitsPerPixel)
|
||||
{
|
||||
float product = aPixels * aAppUnitsPerPixel;
|
||||
nscoord result;
|
||||
|
||||
#ifdef NS_COORD_IS_FLOAT
|
||||
// No need to bounds-check if converting float to float
|
||||
result = NSToCoordRound(product);
|
||||
#else
|
||||
// Bounds-check before converting out of float, to avoid overflow
|
||||
if (product >= nscoord_MAX) {
|
||||
NS_WARNING("Overflowed nscoord_MAX in conversion to nscoord");
|
||||
result = nscoord_MAX;
|
||||
} else if (product <= nscoord_MIN) {
|
||||
NS_WARNING("Overflowed nscoord_MIN in conversion to nscoord");
|
||||
result = nscoord_MIN;
|
||||
} else {
|
||||
result = NSToCoordRound(product);
|
||||
}
|
||||
#endif
|
||||
|
||||
VERIFY_COORD(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
inline nscoord NSIntPixelsToAppUnits(PRInt32 aPixels, PRInt32 aAppUnitsPerPixel)
|
||||
{
|
||||
// The cast to nscoord makes sure we don't overflow if we ever change
|
||||
// nscoord to float
|
||||
nscoord r = aPixels * (nscoord)aAppUnitsPerPixel;
|
||||
VERIFY_COORD(r);
|
||||
return r;
|
||||
}
|
||||
|
||||
inline float NSAppUnitsToFloatPixels(nscoord aAppUnits, PRInt32 aAppUnitsPerPixel)
|
||||
{
|
||||
return (float(aAppUnits) / aAppUnitsPerPixel);
|
||||
}
|
||||
|
||||
inline PRInt32 NSAppUnitsToIntPixels(nscoord aAppUnits, PRInt32 aAppUnitsPerPixel)
|
||||
{
|
||||
return NSToIntRound(float(aAppUnits) / aAppUnitsPerPixel);
|
||||
}
|
||||
|
||||
/// handy constants
|
||||
#define TWIPS_PER_POINT_INT 20
|
||||
#define TWIPS_PER_POINT_FLOAT 20.0f
|
||||
|
||||
/*
|
||||
* Twips/unit conversions
|
||||
*/
|
||||
inline nscoord NSUnitsToTwips(float aValue, float aPointsPerUnit)
|
||||
{
|
||||
return NSToCoordRound(aValue * aPointsPerUnit * TWIPS_PER_POINT_FLOAT);
|
||||
}
|
||||
|
||||
inline float NSTwipsToUnits(nscoord aTwips, float aUnitsPerPoint)
|
||||
{
|
||||
return (aTwips * (aUnitsPerPoint / TWIPS_PER_POINT_FLOAT));
|
||||
}
|
||||
|
||||
|
||||
/// Unit conversion macros
|
||||
//@{
|
||||
#define NS_POINTS_TO_TWIPS(x) NSUnitsToTwips((x), 1.0f)
|
||||
#define NS_INCHES_TO_TWIPS(x) NSUnitsToTwips((x), 72.0f) // 72 points per inch
|
||||
#define NS_FEET_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 12.0f)) // 12 inches per foot
|
||||
#define NS_MILES_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 12.0f * 5280.0f)) // 5280 feet per mile
|
||||
|
||||
#define NS_MILLIMETERS_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 0.03937f))
|
||||
#define NS_CENTIMETERS_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 0.3937f))
|
||||
#define NS_METERS_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 39.37f))
|
||||
#define NS_KILOMETERS_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 39370.0f))
|
||||
|
||||
#define NS_PICAS_TO_TWIPS(x) NSUnitsToTwips((x), 12.0f) // 12 points per pica
|
||||
#define NS_DIDOTS_TO_TWIPS(x) NSUnitsToTwips((x), (16.0f / 15.0f)) // 15 didots per 16 points
|
||||
#define NS_CICEROS_TO_TWIPS(x) NSUnitsToTwips((x), (12.0f * (16.0f / 15.0f))) // 12 didots per cicero
|
||||
|
||||
#define NS_TWIPS_TO_POINTS(x) NSTwipsToUnits((x), 1.0f)
|
||||
#define NS_TWIPS_TO_INCHES(x) NSTwipsToUnits((x), 1.0f / 72.0f)
|
||||
#define NS_TWIPS_TO_FEET(x) NSTwipsToUnits((x), 1.0f / (72.0f * 12.0f))
|
||||
#define NS_TWIPS_TO_MILES(x) NSTwipsToUnits((x), 1.0f / (72.0f * 12.0f * 5280.0f))
|
||||
|
||||
#define NS_TWIPS_TO_MILLIMETERS(x) NSTwipsToUnits((x), 1.0f / (72.0f * 0.03937f))
|
||||
#define NS_TWIPS_TO_CENTIMETERS(x) NSTwipsToUnits((x), 1.0f / (72.0f * 0.3937f))
|
||||
#define NS_TWIPS_TO_METERS(x) NSTwipsToUnits((x), 1.0f / (72.0f * 39.37f))
|
||||
#define NS_TWIPS_TO_KILOMETERS(x) NSTwipsToUnits((x), 1.0f / (72.0f * 39370.0f))
|
||||
|
||||
#define NS_TWIPS_TO_PICAS(x) NSTwipsToUnits((x), 1.0f / 12.0f)
|
||||
#define NS_TWIPS_TO_DIDOTS(x) NSTwipsToUnits((x), 1.0f / (16.0f / 15.0f))
|
||||
#define NS_TWIPS_TO_CICEROS(x) NSTwipsToUnits((x), 1.0f / (12.0f * (16.0f / 15.0f)))
|
||||
//@}
|
||||
|
||||
#endif /* NSCOORD_H */
|
||||
|
|
|
@ -44,7 +44,6 @@
|
|||
#include "nsPoint.h"
|
||||
#include "nsSize.h"
|
||||
#include "nsMargin.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "gfxCore.h"
|
||||
#include "nsTraceRefcnt.h"
|
||||
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
|
||||
#include "gfxCore.h"
|
||||
#include "nsCoord.h"
|
||||
#include "nsUnitConversion.h"
|
||||
|
||||
#define MG_2DIDENTITY 0
|
||||
#define MG_2DTRANSLATION 1
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#define nsDeviceContextBeOS_h___
|
||||
|
||||
#include "nsDeviceContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIWidget.h"
|
||||
#include "nsIView.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -45,7 +45,6 @@
|
|||
#include "nsIFontEnumerator.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsString.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsCOMPtr.h"
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
#define nsRenderingContextBeOS_h___
|
||||
|
||||
#include "nsRenderingContextImpl.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsIFontMetrics.h"
|
||||
#include "nsPoint.h"
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#define nsDeviceContextMac_h___
|
||||
|
||||
#include "nsDeviceContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIWidget.h"
|
||||
#include "nsIView.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include "nsIFontMetrics.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsString.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsIAtom.h"
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
#include "nsString.h"
|
||||
#include "nscore.h"
|
||||
#include "nsCoord.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsIServiceManager.h"
|
||||
#include <math.h>
|
||||
|
|
|
@ -37,7 +37,6 @@
|
|||
|
||||
#include "nsRect.h"
|
||||
#include "nsString.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
|
||||
#ifdef MIN
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
#include "nsIFontMetrics.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsString.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
|
||||
class nsRegressionTestFontMetrics : public nsIFontMetrics
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#define nsDeviceContextPh_h___
|
||||
|
||||
#include "nsDeviceContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIWidget.h"
|
||||
#include "nsIView.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -44,7 +44,6 @@
|
|||
#include "nsIFontEnumerator.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsString.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsDeviceContextPh.h"
|
||||
|
|
|
@ -38,7 +38,6 @@
|
|||
#define nsRenderingContextPh_h___
|
||||
|
||||
#include "nsRenderingContextImpl.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsIFontMetrics.h"
|
||||
#include "nsPoint.h"
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include <Menu.h>
|
||||
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsSystemFontsBeOS.h"
|
||||
|
||||
#define DEFAULT_PIXEL_FONT_SIZE 16.0f
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsSystemFontsOS2.h"
|
||||
#include <stdlib.h>
|
||||
|
||||
|
|
|
@ -46,7 +46,6 @@
|
|||
#include "nsIFontEnumerator.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsString.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsDeviceContextWin.h"
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
#define nsRenderingContextWin_h___
|
||||
|
||||
#include "nsIRenderingContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsFontMetricsWin.h"
|
||||
#include "nsPoint.h"
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "nsLineLayout.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsGkAtoms.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsString.h"
|
||||
|
|
|
@ -44,7 +44,6 @@
|
|||
#include "nsPresContext.h"
|
||||
#include "nsIPresShell.h"
|
||||
#include "nsCSSAnonBoxes.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
|
|
|
@ -47,7 +47,6 @@
|
|||
#include "nsAreaFrame.h"
|
||||
#include "nsLineLayout.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "nsCRT.h" // to get NS_IS_SPACE
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
#include "nsIFontMetrics.h"
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
#include "nsFrame.h"
|
||||
#include "nsAreaFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsFrame.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
|
|
|
@ -50,7 +50,6 @@
|
|||
#include "nsReadableUtils.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsCSSProps.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsFont.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsStyleUtil.h"
|
||||
|
|
|
@ -74,7 +74,6 @@
|
|||
#include "nsXMLNameSpaceMap.h"
|
||||
#include "nsThemeConstants.h"
|
||||
#include "nsContentErrors.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsPrintfCString.h"
|
||||
#include "nsIMediaList.h"
|
||||
#include "nsILookAndFeel.h"
|
||||
|
|
|
@ -50,7 +50,6 @@
|
|||
#include "nsUnicharUtils.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsCSSProps.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsFont.h"
|
||||
|
||||
#include "nsStyleConsts.h"
|
||||
|
|
|
@ -60,7 +60,6 @@
|
|||
#include "nsString.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsStyleUtil.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIFontMetrics.h"
|
||||
#include "nsIDOMCSSStyleSheet.h"
|
||||
#include "nsICSSStyleRuleDOMWrapper.h"
|
||||
|
|
|
@ -44,7 +44,6 @@
|
|||
#include "nsString.h"
|
||||
#include "nsCoord.h"
|
||||
#include "nsCSSProperty.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIURI.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsAutoPtr.h"
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include "nsIDOMCSSPrimitiveValue.h"
|
||||
#include "nsString.h"
|
||||
#include "nsCoord.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsIURI.h"
|
||||
#include "nsIAtom.h"
|
||||
|
|
|
@ -51,7 +51,6 @@
|
|||
#include "prenv.h"
|
||||
|
||||
#include "nsRuleNode.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsStyleContext.h"
|
||||
#include "imgIRequest.h"
|
||||
|
||||
|
|
|
@ -46,7 +46,6 @@
|
|||
#include "nsStyleConsts.h"
|
||||
#include "nsThemeConstants.h"
|
||||
#include "nsString.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsIStyleRule.h"
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
#include "nsStyleUtil.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsStyleConsts.h"
|
||||
#include "nsUnitConversion.h"
|
||||
|
||||
#include "nsGkAtoms.h"
|
||||
#include "nsILinkHandler.h"
|
||||
|
|
|
@ -69,7 +69,6 @@
|
|||
#include "nsStyleContext.h"
|
||||
#include "nsPresContext.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
#include "nsGkAtoms.h"
|
||||
#include "nsIContent.h"
|
||||
|
|
|
@ -47,7 +47,6 @@
|
|||
#include "nsPresContext.h"
|
||||
#include "nsIContent.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
#include "nsGkAtoms.h"
|
||||
#include "nsHTMLParts.h"
|
||||
|
|
|
@ -46,7 +46,6 @@
|
|||
#include "nsPresContext.h"
|
||||
#include "nsIContent.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
#include "nsGkAtoms.h"
|
||||
#include "nsSliderFrame.h"
|
||||
|
|
|
@ -48,7 +48,6 @@
|
|||
#include "nsPresContext.h"
|
||||
#include "nsIContent.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
#include "nsGkAtoms.h"
|
||||
#include "nsHTMLParts.h"
|
||||
|
|
|
@ -47,7 +47,6 @@
|
|||
#include "nsPresContext.h"
|
||||
#include "nsIContent.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsHTMLParts.h"
|
||||
#include "nsIPresShell.h"
|
||||
#include "nsCSSRendering.h"
|
||||
|
|
|
@ -38,7 +38,6 @@
|
|||
|
||||
#include "nsScrollPortView.h"
|
||||
#include "nsIWidget.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsGUIEvent.h"
|
||||
#include "nsWidgetsCID.h"
|
||||
|
|
|
@ -44,7 +44,6 @@
|
|||
|
||||
#include "nsAutoPtr.h"
|
||||
#include "nsViewManager.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIRenderingContext.h"
|
||||
#include "nsIDeviceContext.h"
|
||||
#include "nsGfxCIID.h"
|
||||
|
|
|
@ -48,7 +48,6 @@
|
|||
#include "nsVoidArray.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsPrimitiveHelpers.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsWidgetsCID.h"
|
||||
#include "nsCRT.h"
|
||||
|
||||
|
|
|
@ -36,8 +36,6 @@
|
|||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
#include "nsUnitConversion.h"
|
||||
|
||||
#include "nsScreenCocoa.h"
|
||||
#include "nsCocoaUtils.h"
|
||||
|
||||
|
|
|
@ -396,7 +396,6 @@ NS_IMPL_ISUPPORTS1(nsDeviceContextSpecGTK,
|
|||
|
||||
#include "gfxPDFSurface.h"
|
||||
#include "gfxPSSurface.h"
|
||||
#include "nsUnitConversion.h"
|
||||
NS_IMETHODIMP nsDeviceContextSpecGTK::GetSurfaceForPrinter(gfxASurface **aSurface)
|
||||
{
|
||||
*aSurface = nsnull;
|
||||
|
|
|
@ -56,7 +56,6 @@
|
|||
#include "gfxWindowsSurface.h"
|
||||
|
||||
#include "nsIFileStreams.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsIWindowWatcher.h"
|
||||
#include "nsIDOMWindow.h"
|
||||
|
||||
|
|
|
@ -39,7 +39,6 @@
|
|||
|
||||
#include "nsPrintOptionsImpl.h"
|
||||
#include "nsCoord.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsPrintSettingsImpl.h"
|
||||
|
||||
|
|
|
@ -37,7 +37,6 @@
|
|||
|
||||
#include "nsPrintSettingsImpl.h"
|
||||
#include "nsCoord.h"
|
||||
#include "nsUnitConversion.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsIPrintSession.h"
|
||||
|
||||
|
|
|
@ -101,7 +101,6 @@ EXPORTS = \
|
|||
nsSupportsArray.h \
|
||||
nsSupportsPrimitives.h \
|
||||
nsTime.h \
|
||||
nsUnitConversion.h \
|
||||
nsVariant.h \
|
||||
nsValueArray.h \
|
||||
nsStringEnumerator.h \
|
||||
|
|
|
@ -1,178 +0,0 @@
|
|||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version
|
||||
* 1.1 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of the GNU General Public License Version 2 or later (the "GPL"),
|
||||
* or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the MPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the MPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
#ifndef nsUnitConversion_h__
|
||||
#define nsUnitConversion_h__
|
||||
|
||||
#include "nscore.h"
|
||||
#include "nsCoord.h"
|
||||
#include "nsMathUtils.h"
|
||||
#include <math.h>
|
||||
#include <float.h>
|
||||
|
||||
/// handy constants
|
||||
#define TWIPS_PER_POINT_INT 20
|
||||
#define TWIPS_PER_POINT_FLOAT 20.0f
|
||||
|
||||
/*
|
||||
* Coord Rounding Functions
|
||||
*/
|
||||
inline nscoord NSToCoordFloor(float aValue)
|
||||
{
|
||||
return nscoord(NS_floorf(aValue));
|
||||
}
|
||||
|
||||
inline nscoord NSToCoordCeil(float aValue)
|
||||
{
|
||||
return nscoord(NS_ceilf(aValue));
|
||||
}
|
||||
|
||||
inline nscoord NSToCoordRound(float aValue)
|
||||
{
|
||||
return nscoord(NS_floorf(aValue + 0.5f));
|
||||
}
|
||||
|
||||
/*
|
||||
* Int Rounding Functions
|
||||
*/
|
||||
inline PRInt32 NSToIntFloor(float aValue)
|
||||
{
|
||||
return PRInt32(NS_floorf(aValue));
|
||||
}
|
||||
|
||||
inline PRInt32 NSToIntCeil(float aValue)
|
||||
{
|
||||
return PRInt32(NS_ceilf(aValue));
|
||||
}
|
||||
|
||||
inline PRInt32 NSToIntRound(float aValue)
|
||||
{
|
||||
return NS_lroundf(aValue);
|
||||
}
|
||||
|
||||
/*
|
||||
* App Unit/Pixel conversions
|
||||
*/
|
||||
inline nscoord NSFloatPixelsToAppUnits(float aPixels, PRInt32 aAppUnitsPerPixel)
|
||||
{
|
||||
float product = aPixels * aAppUnitsPerPixel;
|
||||
nscoord result;
|
||||
|
||||
#ifdef NS_COORD_IS_FLOAT
|
||||
// No need to bounds-check if converting float to float
|
||||
result = NSToCoordRound(product);
|
||||
#else
|
||||
// Bounds-check before converting out of float, to avoid overflow
|
||||
if (product >= nscoord_MAX) {
|
||||
NS_WARNING("Overflowed nscoord_MAX in conversion to nscoord");
|
||||
result = nscoord_MAX;
|
||||
} else if (product <= nscoord_MIN) {
|
||||
NS_WARNING("Overflowed nscoord_MIN in conversion to nscoord");
|
||||
result = nscoord_MIN;
|
||||
} else {
|
||||
result = NSToCoordRound(product);
|
||||
}
|
||||
#endif
|
||||
|
||||
VERIFY_COORD(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
inline nscoord NSIntPixelsToAppUnits(PRInt32 aPixels, PRInt32 aAppUnitsPerPixel)
|
||||
{
|
||||
// The cast to nscoord makes sure we don't overflow if we ever change
|
||||
// nscoord to float
|
||||
nscoord r = aPixels * (nscoord)aAppUnitsPerPixel;
|
||||
VERIFY_COORD(r);
|
||||
return r;
|
||||
}
|
||||
|
||||
inline float NSAppUnitsToFloatPixels(nscoord aAppUnits, PRInt32 aAppUnitsPerPixel)
|
||||
{
|
||||
return (float(aAppUnits) / aAppUnitsPerPixel);
|
||||
}
|
||||
|
||||
inline PRInt32 NSAppUnitsToIntPixels(nscoord aAppUnits, PRInt32 aAppUnitsPerPixel)
|
||||
{
|
||||
return NSToIntRound(float(aAppUnits) / aAppUnitsPerPixel);
|
||||
}
|
||||
|
||||
/*
|
||||
* Twips/unit conversions
|
||||
*/
|
||||
inline nscoord NSUnitsToTwips(float aValue, float aPointsPerUnit)
|
||||
{
|
||||
return NSToCoordRound(aValue * aPointsPerUnit * TWIPS_PER_POINT_FLOAT);
|
||||
}
|
||||
|
||||
inline float NSTwipsToUnits(nscoord aTwips, float aUnitsPerPoint)
|
||||
{
|
||||
return (aTwips * (aUnitsPerPoint / TWIPS_PER_POINT_FLOAT));
|
||||
}
|
||||
|
||||
|
||||
/// Unit conversion macros
|
||||
//@{
|
||||
#define NS_POINTS_TO_TWIPS(x) NSUnitsToTwips((x), 1.0f)
|
||||
#define NS_INCHES_TO_TWIPS(x) NSUnitsToTwips((x), 72.0f) // 72 points per inch
|
||||
#define NS_FEET_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 12.0f)) // 12 inches per foot
|
||||
#define NS_MILES_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 12.0f * 5280.0f)) // 5280 feet per mile
|
||||
|
||||
#define NS_MILLIMETERS_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 0.03937f))
|
||||
#define NS_CENTIMETERS_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 0.3937f))
|
||||
#define NS_METERS_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 39.37f))
|
||||
#define NS_KILOMETERS_TO_TWIPS(x) NSUnitsToTwips((x), (72.0f * 39370.0f))
|
||||
|
||||
#define NS_PICAS_TO_TWIPS(x) NSUnitsToTwips((x), 12.0f) // 12 points per pica
|
||||
#define NS_DIDOTS_TO_TWIPS(x) NSUnitsToTwips((x), (16.0f / 15.0f)) // 15 didots per 16 points
|
||||
#define NS_CICEROS_TO_TWIPS(x) NSUnitsToTwips((x), (12.0f * (16.0f / 15.0f))) // 12 didots per cicero
|
||||
|
||||
#define NS_TWIPS_TO_POINTS(x) NSTwipsToUnits((x), 1.0f)
|
||||
#define NS_TWIPS_TO_INCHES(x) NSTwipsToUnits((x), 1.0f / 72.0f)
|
||||
#define NS_TWIPS_TO_FEET(x) NSTwipsToUnits((x), 1.0f / (72.0f * 12.0f))
|
||||
#define NS_TWIPS_TO_MILES(x) NSTwipsToUnits((x), 1.0f / (72.0f * 12.0f * 5280.0f))
|
||||
|
||||
#define NS_TWIPS_TO_MILLIMETERS(x) NSTwipsToUnits((x), 1.0f / (72.0f * 0.03937f))
|
||||
#define NS_TWIPS_TO_CENTIMETERS(x) NSTwipsToUnits((x), 1.0f / (72.0f * 0.3937f))
|
||||
#define NS_TWIPS_TO_METERS(x) NSTwipsToUnits((x), 1.0f / (72.0f * 39.37f))
|
||||
#define NS_TWIPS_TO_KILOMETERS(x) NSTwipsToUnits((x), 1.0f / (72.0f * 39370.0f))
|
||||
|
||||
#define NS_TWIPS_TO_PICAS(x) NSTwipsToUnits((x), 1.0f / 12.0f)
|
||||
#define NS_TWIPS_TO_DIDOTS(x) NSTwipsToUnits((x), 1.0f / (16.0f / 15.0f))
|
||||
#define NS_TWIPS_TO_CICEROS(x) NSTwipsToUnits((x), 1.0f / (12.0f * (16.0f / 15.0f)))
|
||||
//@}
|
||||
|
||||
#endif
|
Загрузка…
Ссылка в новой задаче