AbiWord has UT_Dimension, but also fp_PageSize::Unit. This is
unnecessary. The attached patch kills fp_PageSize::Unit. It compiles,
but I haven't tested it yet. It only works in Unix. Can someone look it
over? I'll also look it over more before committing it.
pat
? Untitled1.CRASHED
? buflist
? bug.1360.diffs
? debugTrace
? foo.abw
? no-more-pagesize-units
? pagesize_uses
? test.abw
? src/wp/impexp/unix
Index: src/af/util/xp/ut_units.cpp
===================================================================
RCS file: /cvsroot/abi/src/af/util/xp/ut_units.cpp,v
retrieving revision 1.40
diff -u -r1.40 ut_units.cpp
--- src/af/util/xp/ut_units.cpp 2001/10/03 07:42:57 1.40
+++ src/af/util/xp/ut_units.cpp 2002/01/01 21:35:54
@@ -132,6 +132,12 @@
return valueScaled;
}
+double UT_convertDimensions(double f, UT_Dimension from, UT_Dimension to)
+{
+ double valueScaled = UT_convertDimToInches(f, from);
+ return UT_convertInchesToDimension(valueScaled, to);
+}
+
const char * UT_convertInchesToDimensionString(UT_Dimension dim, double
valueInInches, const char * szPrecision)
{
// return pointer to static buffer -- use it quickly.
Index: src/af/util/xp/ut_units.h
===================================================================
RCS file: /cvsroot/abi/src/af/util/xp/ut_units.h,v
retrieving revision 1.28
diff -u -r1.28 ut_units.h
--- src/af/util/xp/ut_units.h 2001/10/03 07:42:57 1.28
+++ src/af/util/xp/ut_units.h 2002/01/01 21:35:55
@@ -44,6 +44,7 @@
double UT_convertToInches(const char* s);
double UT_convertDimToInches (double f, UT_Dimension dim);
+double UT_convertDimensions(double f, UT_Dimension from, UT_Dimension to);
double UT_convertToPoints(const char* s);
double UT_convertToDimension(const char* s, UT_Dimension dim);
UT_sint32 UT_convertToLayoutUnits(const char* s);
Index: src/text/fmt/xp/fp_Page.cpp
===================================================================
RCS file: /cvsroot/abi/src/text/fmt/xp/fp_Page.cpp,v
retrieving revision 1.77
diff -u -r1.77 fp_Page.cpp
--- src/text/fmt/xp/fp_Page.cpp 2001/12/30 18:36:06 1.77
+++ src/text/fmt/xp/fp_Page.cpp 2002/01/01 21:36:15
@@ -77,22 +77,22 @@
UT_sint32 fp_Page::getWidth(void) const
{
- return (UT_sint32)(m_iResolution * m_pageSize.Width(fp_PageSize::inch));
+ return (UT_sint32)(m_iResolution * m_pageSize.Width(DIM_IN));
}
UT_sint32 fp_Page::getWidthInLayoutUnits(void) const
{
- return (UT_sint32)m_pageSize.Width(fp_PageSize::LayoutUnit);
+ return (UT_sint32)UT_convertSizeToLayoutUnits(m_pageSize.Width(DIM_IN),
+DIM_IN);
}
UT_sint32 fp_Page::getHeight(void) const
{
- return (UT_sint32)(m_iResolution * m_pageSize.Height(fp_PageSize::inch));
+ return (UT_sint32)(m_iResolution * m_pageSize.Height(DIM_IN));
}
UT_sint32 fp_Page::getHeightInLayoutUnits(void) const
{
- return (UT_sint32)m_pageSize.Height(fp_PageSize::LayoutUnit);
+ return (UT_sint32)UT_convertSizeToLayoutUnits(m_pageSize.Height(DIM_IN),
+DIM_IN);
}
/*!
Index: src/text/fmt/xp/fp_PageSize.cpp
===================================================================
RCS file: /cvsroot/abi/src/text/fmt/xp/fp_PageSize.cpp,v
retrieving revision 1.23
diff -u -r1.23 fp_PageSize.cpp
--- src/text/fmt/xp/fp_PageSize.cpp 2001/12/30 18:36:06 1.23
+++ src/text/fmt/xp/fp_PageSize.cpp 2002/01/01 21:36:17
@@ -19,7 +19,7 @@
double w; // width
double h; // height
- fp_PageSize::Unit u; // unit for all these values
+ UT_Dimension u; // unit for all these values
char name[cMaxSymbolicLength]; // symbolic name
double l; // left margin
@@ -37,110 +37,101 @@
pagesizes[fp_PageSize::_last_predefined_pagesize_dont_use_] =
{
// the A sizes
- {1682.0, 2378.0, fp_PageSize::mm, "4A",
+ {1682.0, 2378.0, DIM_MM, "4A",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- {1189.0, 1682.0, fp_PageSize::mm, "2A",
+ {1189.0, 1682.0, DIM_MM, "2A",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 841.0, 1189.0, fp_PageSize::mm, "A0",
+ { 841.0, 1189.0, DIM_MM, "A0",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 594.0, 841.0, fp_PageSize::mm, "A1",
+ { 594.0, 841.0, DIM_MM, "A1",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 420.0, 594.0, fp_PageSize::mm, "A2",
+ { 420.0, 594.0, DIM_MM, "A2",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 297.0, 420.0, fp_PageSize::mm, "A3", 28.0, 28.0, 28.0, 28.0 },
- { 210.0, 297.0, fp_PageSize::mm, "A4", 28.0, 28.0, 28.0, 28.0 },
- { 148.0, 210.0, fp_PageSize::mm, "A5", 28.0, 28.0, 28.0, 28.0 },
- { 105.0, 148.0, fp_PageSize::mm, "A6",
+ { 297.0, 420.0, DIM_MM, "A3", 28.0, 28.0, 28.0, 28.0 },
+ { 210.0, 297.0, DIM_MM, "A4", 28.0, 28.0, 28.0, 28.0 },
+ { 148.0, 210.0, DIM_MM, "A5", 28.0, 28.0, 28.0, 28.0 },
+ { 105.0, 148.0, DIM_MM, "A6",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 74.0, 105.0, fp_PageSize::mm, "A7",
+ { 74.0, 105.0, DIM_MM, "A7",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 52.0, 74.0, fp_PageSize::mm, "A8",
+ { 52.0, 74.0, DIM_MM, "A8",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 37.0, 52.0, fp_PageSize::mm, "A9",
+ { 37.0, 52.0, DIM_MM, "A9",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 26.0, 37.0, fp_PageSize::mm, "A10",
+ { 26.0, 37.0, DIM_MM, "A10",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
// the B sizes
- {2000.0, 2828.0, fp_PageSize::mm, "4B",
+ {2000.0, 2828.0, DIM_MM, "4B",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- {1414.0, 2000.0, fp_PageSize::mm, "2B",
+ {1414.0, 2000.0, DIM_MM, "2B",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- {1000.0, 1414.0, fp_PageSize::mm, "B0",
+ {1000.0, 1414.0, DIM_MM, "B0",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 707.0, 1000.0, fp_PageSize::mm, "B1",
+ { 707.0, 1000.0, DIM_MM, "B1",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 500.0, 707.0, fp_PageSize::mm, "B2",
+ { 500.0, 707.0, DIM_MM, "B2",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 353.0, 500.0, fp_PageSize::mm, "B3",
+ { 353.0, 500.0, DIM_MM, "B3",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 250.0, 353.0, fp_PageSize::mm, "B4", 21.0, 21.0, 21.0, 21.0 },
- { 176.0, 250.0, fp_PageSize::mm, "B5", 28.0, 28.0, 28.0, 28.0 },
- { 125.0, 176.0, fp_PageSize::mm, "B6",
+ { 250.0, 353.0, DIM_MM, "B4", 21.0, 21.0, 21.0, 21.0 },
+ { 176.0, 250.0, DIM_MM, "B5", 28.0, 28.0, 28.0, 28.0 },
+ { 125.0, 176.0, DIM_MM, "B6",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 88.0, 125.0, fp_PageSize::mm, "B7",
+ { 88.0, 125.0, DIM_MM, "B7",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 62.0, 88.0, fp_PageSize::mm, "B8",
+ { 62.0, 88.0, DIM_MM, "B8",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 44.0, 62.0, fp_PageSize::mm, "B9",
+ { 44.0, 62.0, DIM_MM, "B9",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 31.0, 44.0, fp_PageSize::mm, "B10",
+ { 31.0, 44.0, DIM_MM, "B10",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
// the C sizes
- { 917.0, 1297.0, fp_PageSize::mm, "C0",
+ { 917.0, 1297.0, DIM_MM, "C0",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 648.0, 917.0, fp_PageSize::mm, "C1",
+ { 648.0, 917.0, DIM_MM, "C1",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 458.0, 648.0, fp_PageSize::mm, "C2",
+ { 458.0, 648.0, DIM_MM, "C2",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 324.0, 458.0, fp_PageSize::mm, "C3",
+ { 324.0, 458.0, DIM_MM, "C3",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 229.0, 324.0, fp_PageSize::mm, "C4",
+ { 229.0, 324.0, DIM_MM, "C4",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
// FIXME: C5 is dealt with below, under envelopes
// FIXME: should prolly have C6/C5 here too, for completeness
- { 114.0, 162.0, fp_PageSize::mm, "C6",
+ { 114.0, 162.0, DIM_MM, "C6",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 81.0, 114.0, fp_PageSize::mm, "C7",
+ { 81.0, 114.0, DIM_MM, "C7",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 57.0, 81.0, fp_PageSize::mm, "C8",
+ { 57.0, 81.0, DIM_MM, "C8",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 40.0, 57.0, fp_PageSize::mm, "C9",
+ { 40.0, 57.0, DIM_MM, "C9",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
- { 28.0, 40.0, fp_PageSize::mm, "C10",
+ { 28.0, 40.0, DIM_MM, "C10",
MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN, MARGIN_UNKNOWN },
// Japanese B sizes
// FIXME: should prolly have the other Japanese sizes
- { 182.0, 258.0, fp_PageSize::mm, "B5-Japan", 28.0, 28.0, 28.0, 28.0},
+ { 182.0, 258.0, DIM_MM, "B5-Japan", 28.0, 28.0, 28.0, 28.0},
// the rest
- { 8.5, 14.0, fp_PageSize::inch, "Legal", 1.0, 1.0, 1.0, 1.0 },
- { 8.5, 13.0, fp_PageSize::inch, "Folio", 1.0, 1.0, 1.0, 1.0 },
- { 8.5, 11.0, fp_PageSize::inch, "Letter", 1.0, 1.0, 1.0, 1.0 },
- { 8.5, 5.5, fp_PageSize::inch, "Half-Letter", 1.0, 1.0, 1.0, 1.0 },
- { 7.5, 10.0, fp_PageSize::inch, "Executive", 1.0, 1.0, 1.0, 1.0 },
- { 280.1, 267.0, fp_PageSize::mm, "Tabloid/Ledger", 25.4, 25.4, 25.4, 25.4},
- { 99.0, 191.0, fp_PageSize::mm, "Monarch", 3.5, 3.5, 3.5, 3.5},
- { 297.0, 433.0, fp_PageSize::mm, "SuperB", 28.2, 28.2, 28.2, 28.2},
- { 105.0, 242.0, fp_PageSize::mm, "Envelope-Commercial", 1.8, 1.8, 1.8,
1.8},
- { 99.0, 191.0, fp_PageSize::mm, "Envelope-Monarch", 1.8, 1.8, 1.8, 1.8},
- { 110.0, 220.0, fp_PageSize::mm, "Envelope-DL", 1.8, 1.8, 1.8, 1.8},
- { 162.0, 229.0, fp_PageSize::mm, "Envelope-C5", 1.8, 1.8, 1.8, 1.8},
- { 105.0, 148.0, fp_PageSize::mm, "EuroPostcard", 1.8, 1.8, 1.8, 1.8},
- { 0.0, 0.0, fp_PageSize::mm, "Custom", 0.0, 0.0, 0.0, 0.0}
+ { 8.5, 14.0, DIM_IN, "Legal", 1.0, 1.0, 1.0, 1.0 },
+ { 8.5, 13.0, DIM_IN, "Folio", 1.0, 1.0, 1.0, 1.0 },
+ { 8.5, 11.0, DIM_IN, "Letter", 1.0, 1.0, 1.0, 1.0 },
+ { 8.5, 5.5, DIM_IN, "Half-Letter", 1.0, 1.0, 1.0, 1.0 },
+ { 7.5, 10.0, DIM_IN, "Executive", 1.0, 1.0, 1.0, 1.0 },
+ { 280.1, 267.0, DIM_MM, "Tabloid/Ledger", 25.4, 25.4, 25.4, 25.4},
+ { 99.0, 191.0, DIM_MM, "Monarch", 3.5, 3.5, 3.5, 3.5},
+ { 297.0, 433.0, DIM_MM, "SuperB", 28.2, 28.2, 28.2, 28.2},
+ { 105.0, 242.0, DIM_MM, "Envelope-Commercial", 1.8, 1.8, 1.8, 1.8},
+ { 99.0, 191.0, DIM_MM, "Envelope-Monarch", 1.8, 1.8, 1.8, 1.8},
+ { 110.0, 220.0, DIM_MM, "Envelope-DL", 1.8, 1.8, 1.8, 1.8},
+ { 162.0, 229.0, DIM_MM, "Envelope-C5", 1.8, 1.8, 1.8, 1.8},
+ { 105.0, 148.0, DIM_MM, "EuroPostcard", 1.8, 1.8, 1.8, 1.8},
+ { 0.0, 0.0, DIM_MM, "Custom", 0.0, 0.0, 0.0, 0.0}
};
-const double ScaleFactors[fp_PageSize::_last_predefined_unit_dont_use_] =
-{
- { 1.0 },
// mm
- { 10.0 },
// cm
- { 25.4 },
// inch
- { 25.4 / UT_PAPER_UNITS_PER_INCH }, // PaperUnit
- { 25.4 / UT_LAYOUT_UNITS } // LayoutUnit
-};
-
fp_PageSize::fp_PageSize(Predefined preDef)
{
m_bisPortrait = true;
@@ -155,36 +146,35 @@
Set(name);
}
-fp_PageSize::fp_PageSize(double w, double h, Unit u)
+fp_PageSize::fp_PageSize(double w, double h, UT_Dimension u)
{
- UT_ASSERT(u >= _first_predefined_unit_ && u <
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
+
m_bisPortrait = true;
m_scale = 1.0;
Set(w, h, u);
}
// all Set() calls ultimately go through this function
-void fp_PageSize::Set(Predefined preDef, Unit u)
+void fp_PageSize::Set(Predefined preDef, UT_Dimension u)
{
UT_ASSERT(preDef >= _first_predefined_pagesize_ && preDef <
_last_predefined_pagesize_dont_use_);
- UT_ASSERT(u >= _first_predefined_unit_ && u <=
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
const private_pagesize_sizes& size = pagesizes[preDef];
- if (u != _last_predefined_unit_dont_use_)
+ if (u != DIM_none)
m_unit = u;
else
m_unit = size.u;
- double sf = ScaleFactors[size.u];
-
// Always scale to mm's, which we store.
- m_iWidth = size.w * sf;
- m_iHeight = size.h * sf;
- m_iMarginTop = size.t * sf;
- m_iMarginBottom = size.b * sf;
- m_iMarginLeft = size.l * sf;
- m_iMarginRight = size.r * sf;
+ m_iWidth = UT_convertDimensions(size.w, u, FUND);
+ m_iHeight = UT_convertDimensions(size.h, u, FUND);
+ m_iMarginTop = UT_convertDimensions(size.t, u, FUND);
+ m_iMarginBottom = UT_convertDimensions(size.b, u, FUND);
+ m_iMarginLeft = UT_convertDimensions(size.l, u, FUND);
+ m_iMarginRight = UT_convertDimensions(size.r, u, FUND);
m_predefined = (char *)pagesizes [preDef].name;
}
@@ -192,12 +182,12 @@
/*!
Set the pagesize to given width and height, assumed to be in given unit.
*/
-void fp_PageSize::Set(double w, double h, Unit u)
+void fp_PageSize::Set(double w, double h, UT_Dimension u)
{
int i;
double converted_w, converted_h;
- UT_ASSERT(u >= _first_predefined_unit_ && u <
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
// calculate which predefined this represents
@@ -206,14 +196,10 @@
{
if (pagesizes[i].u != u ) // Convert to local defined units and round
off
{
- converted_w = w *
ScaleFactors[u]/ScaleFactors[pagesizes[i].u];
- int w_int = (int) (converted_w*10.0);
- if ( converted_w*10 - w_int >= 0.5 ) w_int++;
- converted_w = (double) w_int/10.0;
- converted_h = h *
ScaleFactors[u]/ScaleFactors[pagesizes[i].u];
- int h_int = (int) (converted_h*10.0);
- if ( converted_h*10 - h_int >= 0.5 ) h_int++;
- converted_h = (double) h_int/10.0;
+ converted_w = UT_convertDimensions(w, pagesizes[i].u, u);
+ converted_w = ((int)(converted_w*10.0+0.5))/(double)10.0;
+ converted_h = UT_convertDimensions(h, pagesizes[i].u, u);
+ converted_w = ((int)(converted_h*10.0+0.5))/(double)10.0;
}
else
{
@@ -240,15 +226,13 @@
if ( i == (int)_last_predefined_pagesize_dont_use_ )
{
Set (static_cast<Predefined>(i-1), u);
- m_iWidth = w * ScaleFactors[u];
- m_iHeight = h * ScaleFactors[u];
+ m_iWidth = UT_convertDimensions(w, u, FUND);
+ m_iHeight = UT_convertDimensions(h, u, FUND);
}
}
-void fp_PageSize::Set(const char *name, Unit u)
+void fp_PageSize::Set(const char *name, UT_Dimension u)
{
- UT_ASSERT(u >= _first_predefined_unit_ && u <=
_last_predefined_unit_dont_use_);
-
Set(NameToPredefined(name), u);
}
@@ -262,58 +246,64 @@
m_bisPortrait = false;
}
-double fp_PageSize::Width(Unit u) const
+double fp_PageSize::Width(UT_Dimension u) const
{
- UT_ASSERT(u >= _first_predefined_unit_ && u <
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
+
if(m_bisPortrait == true)
- return m_scale * m_iWidth / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iWidth, FUND, u);
else
- return m_scale * m_iHeight / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iHeight, FUND, u);
}
-double fp_PageSize::Height(Unit u) const
+double fp_PageSize::Height(UT_Dimension u) const
{
- UT_ASSERT(u >= _first_predefined_unit_ && u <
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
+
if(m_bisPortrait == true)
- return m_scale * m_iHeight / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iHeight, FUND, u);
else
- return m_scale * m_iWidth / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iWidth, FUND, u);
}
-double fp_PageSize::MarginTop(Unit u) const
+double fp_PageSize::MarginTop(UT_Dimension u) const
{
- UT_ASSERT(u >= _first_predefined_unit_ && u <
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
+
if(m_bisPortrait == true)
- return m_scale * m_iMarginTop / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iMarginTop, FUND, u);
else
- return m_scale * m_iMarginRight / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iMarginRight, FUND, u);
}
-double fp_PageSize::MarginBottom(Unit u) const
+double fp_PageSize::MarginBottom(UT_Dimension u) const
{
- UT_ASSERT(u >= _first_predefined_unit_ && u <
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
+
if(m_bisPortrait == true)
- return m_scale * m_iMarginBottom / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iMarginBottom, FUND, u);
else
- return m_scale * m_iMarginLeft / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iMarginLeft, FUND, u);
}
-double fp_PageSize::MarginLeft(Unit u) const
+double fp_PageSize::MarginLeft(UT_Dimension u) const
{
- UT_ASSERT(u >= _first_predefined_unit_ && u <
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
+
if(m_bisPortrait == true)
- return m_scale * m_iMarginLeft / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iMarginLeft, FUND, u);
else
- return m_scale * m_iMarginTop / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iMarginTop, FUND, u);
}
-double fp_PageSize::MarginRight(Unit u) const
+double fp_PageSize::MarginRight(UT_Dimension u) const
{
- UT_ASSERT(u >= _first_predefined_unit_ && u <
_last_predefined_unit_dont_use_);
+ UT_ASSERT(u >= DIM_IN && u <= DIM_none);
+
if(m_bisPortrait == true)
- return m_scale * m_iMarginRight / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iMarginRight, FUND, u);
else
- return m_scale * m_iMarginBottom / ScaleFactors[u];
+ return m_scale * UT_convertDimensions(m_iMarginBottom, FUND, u);
}
bool fp_PageSize::IsPredefinedName(const char* szPageSizeName)
@@ -362,34 +352,4 @@
UT_ASSERT((preDef >= _first_predefined_pagesize_) && (preDef <
_last_predefined_pagesize_dont_use_));
return pagesizes[preDef].name;
-}
-
-UT_Dimension UT_pageSizeUnitToDimension(fp_PageSize::Unit u)
-{
- switch (u)
- {
- case fp_PageSize::mm:
- return DIM_MM;
- case fp_PageSize::cm:
- return DIM_CM;
- case fp_PageSize::inch:
- return DIM_IN;
- }
- UT_ASSERT(UT_SHOULD_NOT_HAPPEN);
- return DIM_MM;
-}
-
-fp_PageSize::Unit UT_dimensionToPageSizeUnit(UT_Dimension u)
-{
- switch(u)
- {
- case DIM_MM:
- return fp_PageSize::mm;
- case DIM_CM:
- return fp_PageSize::cm;
- case DIM_IN:
- return fp_PageSize::inch;
- }
- UT_ASSERT(UT_SHOULD_NOT_HAPPEN);
- return fp_PageSize::mm;
}
Index: src/text/fmt/xp/fp_PageSize.h
===================================================================
RCS file: /cvsroot/abi/src/text/fmt/xp/fp_PageSize.h,v
retrieving revision 1.18
diff -u -r1.18 fp_PageSize.h
--- src/text/fmt/xp/fp_PageSize.h 2001/12/30 18:36:06 1.18
+++ src/text/fmt/xp/fp_PageSize.h 2002/01/01 21:36:18
@@ -27,17 +27,6 @@
{
public:
- enum Unit
- {
- _first_predefined_unit_ = 0,
- mm = 0,
- cm,
- inch,
- PaperUnit, // 100 per inch
- LayoutUnit, // 1440 per inch
- _last_predefined_unit_dont_use_
- };
-
enum Predefined
{
_first_predefined_pagesize_ = 0,
@@ -65,29 +54,29 @@
fp_PageSize(Predefined preDef);
fp_PageSize(const char *name);
- fp_PageSize(double w, double h, Unit u);
+ fp_PageSize(double w, double h, UT_Dimension u);
- void Set(Predefined preDef, Unit u =
fp_PageSize::_last_predefined_unit_dont_use_);
- void Set(const char *name, Unit u =
fp_PageSize::_last_predefined_unit_dont_use_);
- void Set(double w, double h, Unit u);
- void Set(Unit u) {m_unit = u;}
- inline void setScale( double scale) {m_scale = scale;}
+ void Set(Predefined preDef, UT_Dimension u = DIM_none);
+ void Set(const char *name, UT_Dimension u = DIM_none);
+ void Set(double w, double h, UT_Dimension u = DIM_none);
+ void Set(UT_Dimension u) { m_unit = u; }
+ inline void setScale( double scale) { m_scale = scale; }
void setPortrait(void);
void setLandscape(void);
bool isPortrait(void) const { return m_bisPortrait; }
- double Width(Unit u) const;
- double Height(Unit u) const;
+ double Width(UT_Dimension u) const;
+ double Height(UT_Dimension u) const;
/* These accessor methods should be used with the
* predefined page sizes to set proper initial margins. */
/* I don't think this is done at present. */
- double MarginLeft(Unit u) const;
- double MarginRight(Unit u) const;
- double MarginTop(Unit u) const;
- double MarginBottom(Unit u) const;
+ double MarginLeft(UT_Dimension u) const;
+ double MarginRight(UT_Dimension u) const;
+ double MarginTop(UT_Dimension u) const;
+ double MarginBottom(UT_Dimension u) const;
- double getScale(void) {return m_scale;}
- Unit getUnit(void) { return m_unit;}
+ double getScale(void) { return m_scale; }
+ UT_Dimension getDims(void) { return m_unit; }
inline char * getPredefinedName (void) const { return m_predefined; }
static bool IsPredefinedName(const char* szPageSizeName);
@@ -95,6 +84,8 @@
static const char * PredefinedToName(Predefined preDef);
private:
+ static const UT_Dimension FUND = DIM_MM;
+
char * m_predefined;
double m_iWidth;
@@ -107,10 +98,7 @@
bool m_bisPortrait;
double m_scale;
- Unit m_unit;
+ UT_Dimension m_unit;
};
-
-UT_Dimension UT_pageSizeUnitToDimension(fp_PageSize::Unit u);
-fp_PageSize::Unit UT_dimensionToPageSizeUnit(UT_Dimension u);
#endif // FP_PAGESIZE_H
Index: src/text/fmt/xp/fv_View.cpp
===================================================================
RCS file: /cvsroot/abi/src/text/fmt/xp/fv_View.cpp,v
retrieving revision 1.560
diff -u -r1.560 fv_View.cpp
--- src/text/fmt/xp/fv_View.cpp 2001/12/29 19:36:08 1.560
+++ src/text/fmt/xp/fv_View.cpp 2002/01/01 21:37:08
@@ -8073,7 +8073,7 @@
static char buf[20];
setlocale(LC_NUMERIC,"C");
- snprintf(buf, sizeof(buf), "%.4fin",
m_pDoc->m_docPageSize.Width(fp_PageSize::inch));
+ snprintf(buf, sizeof(buf), "%.4fin",
+m_pDoc->m_docPageSize.Width(DIM_IN));
setlocale(LC_NUMERIC,""); // restore original locale
pInfo->m_xPaperSize = m_pG->convertDimension(buf);
@@ -11084,7 +11084,7 @@
{
const fp_PageSize pageSize = getPageSize();
- double pageWidth = pageSize.Width(fp_PageSize::inch);
+ double pageWidth = pageSize.Width(DIM_IN);
// Set graphics zoom to 100 so we can get the display resolution.
GR_Graphics *pG = getGraphics();
@@ -11106,7 +11106,7 @@
{
const fp_PageSize pageSize = getPageSize();
- double pageHeight = pageSize.Height(fp_PageSize::inch);
+ double pageHeight = pageSize.Height(DIM_IN);
// Set graphics zoom to 100 so we can get the display resolution.
GR_Graphics *pG = getGraphics();
Index: src/text/ptbl/xp/pd_Document.cpp
===================================================================
RCS file: /cvsroot/abi/src/text/ptbl/xp/pd_Document.cpp,v
retrieving revision 1.158
diff -u -r1.158 pd_Document.cpp
--- src/text/ptbl/xp/pd_Document.cpp 2001/12/28 17:32:25 1.158
+++ src/text/ptbl/xp/pd_Document.cpp 2002/01/01 21:37:23
@@ -2326,7 +2326,7 @@
double width=0.0;
double height=0.0;
double scale =1.0;
- fp_PageSize::Unit u = fp_PageSize::inch;
+ UT_Dimension u = DIM_IN;
for (const XML_Char ** a = attributes; (*a); a++)
{
@@ -2367,11 +2367,11 @@
height = UT_convertDimensionless(szHeight);
scale = UT_convertDimensionless(szPageScale);
if(UT_XML_stricmp(szUnits,"cm") == 0)
- u = fp_PageSize::cm;
+ u = DIM_CM;
else if(UT_XML_stricmp(szUnits,"mm") == 0)
- u = fp_PageSize::mm;
+ u = DIM_MM;
else if(UT_XML_stricmp(szUnits,"inch") == 0)
- u = fp_PageSize::inch;
+ u = DIM_IN;
if(UT_XML_stricmp(szPageSize,"Custom") == 0)
{
m_docPageSize.Set(width,height,u);
Index: src/wp/ap/unix/ap_UnixDialog_PageSetup.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/ap/unix/ap_UnixDialog_PageSetup.cpp,v
retrieving revision 1.21
diff -u -r1.21 ap_UnixDialog_PageSetup.cpp
--- src/wp/ap/unix/ap_UnixDialog_PageSetup.cpp 2001/12/27 19:20:41 1.21
+++ src/wp/ap/unix/ap_UnixDialog_PageSetup.cpp 2002/01/01 21:37:38
@@ -83,32 +83,6 @@
return bufResult;
}
-static UT_Dimension
-fp_2_dim (fp_PageSize::Unit u)
-{
- switch (u)
- {
- case fp_PageSize::cm : return DIM_CM;
- case fp_PageSize::mm : return DIM_MM;
- case fp_PageSize::inch :
- default :
- return DIM_IN;
- }
-}
-
-static int
-fp_2_pos (fp_PageSize::Unit u)
-{
- switch (u)
- {
- case fp_PageSize::cm : return 1;
- case fp_PageSize::mm : return 2;
- case fp_PageSize::inch :
- default :
- return 0;
- }
-}
-
#define FMT_STRING "%0.2f"
static GtkWidget *
create_spinentry (float v)
@@ -126,9 +100,22 @@
return e;
}
+static int
+fp_2_pos (UT_Dimension u)
+{
+ switch (u)
+ {
+ case DIM_CM : return 1;
+ case DIM_MM : return 2;
+ case DIM_IN :
+ default :
+ return 0;
+ }
+}
+
/*********************************************************************************/
-static fp_PageSize::Unit last_margin_unit = fp_PageSize::inch;
+static UT_Dimension last_margin_unit = DIM_IN;
/*********************************************************************************/
@@ -153,8 +140,6 @@
(gpointer)this);
\
} while (0)
-#define CONVERT_DIMENSIONS(v, d1, d2) v = UT_convertInchesToDimension
(UT_convertDimToInches (v, fp_2_dim (d1)), fp_2_dim (d2))
-
/*********************************************************************************/
// static event callbacks
@@ -294,7 +279,7 @@
{
fp_PageSize fp = m_PageSize;
- if(fp.Width(fp_PageSize::inch) < 1.0 || fp.Height(fp_PageSize::inch) < 1.0)
+ if(fp.Width(DIM_IN) < 1.0 || fp.Height(DIM_IN) < 1.0)
{
// "The margins selected are too large to fit on the page."
// Not quite the right message, but it's pretty close,
@@ -308,7 +293,7 @@
}
setMarginUnits (last_margin_unit);
- setPageUnits (fp.getUnit());
+ setPageUnits (fp.getDims());
setPageSize (fp);
setPageOrientation (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON
(m_radioPagePortrait)) ? PORTRAIT : LANDSCAPE);
setPageScale (gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON
(m_spinPageScale)));
@@ -348,7 +333,7 @@
void AP_UnixDialog_PageSetup::event_PageUnitsChanged (void)
{
- fp_PageSize::Unit pu = (fp_PageSize::Unit) GPOINTER_TO_INT (gtk_object_get_data
(GTK_OBJECT (m_optionPageUnits),
+ UT_Dimension pu = (UT_Dimension) GPOINTER_TO_INT (gtk_object_get_data (GTK_OBJECT
+(m_optionPageUnits),
WIDGET_MENU_VALUE_TAG));
double width, height;
@@ -379,19 +364,16 @@
fp_PageSize ps(pd);
// hmm, we should free the old pagesize.
m_PageSize = ps;
- setPageUnits(ps.getUnit());
+ setPageUnits(ps.getDims());
// change the units in the dialog, too.
- fp_PageSize::Unit new_units = ps.getUnit();
+ UT_Dimension new_units = ps.getDims();
gtk_option_menu_set_history (GTK_OPTION_MENU (m_optionPageUnits), fp_2_pos
(new_units));
float w, h;
-
- w = ps.Width (fp_PageSize::inch);
- h = ps.Height (fp_PageSize::inch);
- CONVERT_DIMENSIONS (w, fp_PageSize::inch, new_units);
- CONVERT_DIMENSIONS (h, fp_PageSize::inch, new_units);
+ w = ps.Width (new_units);
+ h = ps.Height (new_units);
if (fp_PageSize::Custom != pd)
{
@@ -412,7 +394,7 @@
{
ps.Set(atof(gtk_entry_get_text(GTK_ENTRY(m_entryPageWidth))),
atof(gtk_entry_get_text(GTK_ENTRY(m_entryPageHeight))),
- (fp_PageSize::Unit) GPOINTER_TO_INT (gtk_object_get_data
+ (UT_Dimension) GPOINTER_TO_INT (gtk_object_get_data
(GTK_OBJECT (m_optionPageUnits),
WIDGET_MENU_VALUE_TAG)));
}
@@ -420,7 +402,7 @@
void AP_UnixDialog_PageSetup::event_MarginUnitsChanged (void)
{
- fp_PageSize::Unit mu = (fp_PageSize::Unit) GPOINTER_TO_INT (gtk_object_get_data
(GTK_OBJECT (m_optionMarginUnits),
+ UT_Dimension mu = (UT_Dimension) GPOINTER_TO_INT (gtk_object_get_data (GTK_OBJECT
+(m_optionMarginUnits),
WIDGET_MENU_VALUE_TAG));
float top, bottom, left, right, header, footer;
@@ -432,12 +414,12 @@
header = gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (m_spinMarginHeader));
footer = gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (m_spinMarginFooter));
- CONVERT_DIMENSIONS (top, last_margin_unit, mu);
- CONVERT_DIMENSIONS (bottom, last_margin_unit, mu);
- CONVERT_DIMENSIONS (left, last_margin_unit, mu);
- CONVERT_DIMENSIONS (right, last_margin_unit, mu);
- CONVERT_DIMENSIONS (header, last_margin_unit, mu);
- CONVERT_DIMENSIONS (footer, last_margin_unit, mu);
+ top = UT_convertDimensions (top, last_margin_unit, mu);
+ bottom = UT_convertDimensions (bottom, last_margin_unit, mu);
+ left = UT_convertDimensions (left, last_margin_unit, mu);
+ right = UT_convertDimensions (right, last_margin_unit, mu);
+ header = UT_convertDimensions (header, last_margin_unit, mu);
+ footer = UT_convertDimensions (footer, last_margin_unit, mu);
last_margin_unit = mu;
@@ -719,17 +701,17 @@
optionPageUnits_menu = gtk_menu_new ();
glade_menuitem = gtk_menu_item_new_with_label (_(XAP, DLG_Unit_inch));
- CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionPageUnits,
fp_PageSize::inch, s_page_units_changed);
+ CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionPageUnits, DIM_IN,
+s_page_units_changed);
gtk_widget_show (glade_menuitem);
gtk_menu_append (GTK_MENU (optionPageUnits_menu), glade_menuitem);
glade_menuitem = gtk_menu_item_new_with_label (_(XAP, DLG_Unit_cm));
- CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionPageUnits,
fp_PageSize::cm, s_page_units_changed);
+ CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionPageUnits, DIM_CM,
+s_page_units_changed);
gtk_widget_show (glade_menuitem);
gtk_menu_append (GTK_MENU (optionPageUnits_menu), glade_menuitem);
glade_menuitem = gtk_menu_item_new_with_label (_(XAP, DLG_Unit_mm));
- CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionPageUnits,
fp_PageSize::mm, s_page_units_changed);
+ CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionPageUnits, DIM_MM,
+s_page_units_changed);
gtk_widget_show (glade_menuitem);
gtk_menu_append (GTK_MENU (optionPageUnits_menu), glade_menuitem);
@@ -929,17 +911,17 @@
optionMarginUnits_menu = gtk_menu_new ();
glade_menuitem = gtk_menu_item_new_with_label (_(XAP, DLG_Unit_inch));
- CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionMarginUnits,
fp_PageSize::inch, s_margin_units_changed);
+ CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionMarginUnits, DIM_IN,
+s_margin_units_changed);
gtk_widget_show (glade_menuitem);
gtk_menu_append (GTK_MENU (optionMarginUnits_menu), glade_menuitem);
glade_menuitem = gtk_menu_item_new_with_label (_(XAP, DLG_Unit_cm));
- CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionMarginUnits,
fp_PageSize::cm, s_margin_units_changed);
+ CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionMarginUnits, DIM_CM,
+s_margin_units_changed);
gtk_widget_show (glade_menuitem);
gtk_menu_append (GTK_MENU (optionMarginUnits_menu), glade_menuitem);
glade_menuitem = gtk_menu_item_new_with_label (_(XAP, DLG_Unit_mm));
- CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionMarginUnits,
fp_PageSize::mm, s_margin_units_changed);
+ CONNECT_MENU_ITEM_SIGNAL_ACTIVATE (glade_menuitem, optionMarginUnits, DIM_MM,
+s_margin_units_changed);
gtk_widget_show (glade_menuitem);
gtk_menu_append (GTK_MENU (optionMarginUnits_menu), glade_menuitem);
Index: src/wp/ap/xp/ap_Dialog_Columns.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/ap/xp/ap_Dialog_Columns.cpp,v
retrieving revision 1.10
diff -u -r1.10 ap_Dialog_Columns.cpp
--- src/wp/ap/xp/ap_Dialog_Columns.cpp 2001/10/17 02:21:34 1.10
+++ src/wp/ap/xp/ap_Dialog_Columns.cpp 2002/01/01 21:37:48
@@ -205,7 +205,7 @@
double width = 1.0;
if(m_pDoc)
{
- width = m_pDoc->m_docPageSize.Width(fp_PageSize::inch) -
m_dMarginLeft - m_dMarginRight;
+ width = m_pDoc->m_docPageSize.Width(DIM_IN) - m_dMarginLeft -
+m_dMarginRight;
}
return width;
}
@@ -220,7 +220,7 @@
double height = 1.0;
if(m_pDoc)
{
- height = m_pDoc->m_docPageSize.Height(fp_PageSize::inch) -
m_dMarginTop - m_dMarginBottom;
+ height = m_pDoc->m_docPageSize.Height(DIM_IN) - m_dMarginTop -
+m_dMarginBottom;
}
return height;
}
Index: src/wp/ap/xp/ap_Dialog_PageSetup.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/ap/xp/ap_Dialog_PageSetup.cpp,v
retrieving revision 1.6
diff -u -r1.6 ap_Dialog_PageSetup.cpp
--- src/wp/ap/xp/ap_Dialog_PageSetup.cpp 2001/12/30 18:36:06 1.6
+++ src/wp/ap/xp/ap_Dialog_PageSetup.cpp 2002/01/01 21:37:49
@@ -28,10 +28,10 @@
: XAP_Dialog_NonPersistent(pDlgFactory,id),
m_answer(a_OK),
m_PageSize(fp_PageSize::Letter), // isn't this leaked when setPageSize called?
- m_PageUnits(fp_PageSize::inch),
+ m_PageUnits(DIM_IN),
m_PageOrientation(PORTRAIT),
m_PageScale(100),
- m_MarginUnits(fp_PageSize::inch),
+ m_MarginUnits(DIM_IN),
m_MarginTop(1.0f),
m_MarginBottom(1.0f),
m_MarginLeft(1.0f),
@@ -51,7 +51,7 @@
{
// Require at least 0.3in for headers and footers.
- double fudge = UT_convertInchesToDimension(0.3,
UT_pageSizeUnitToDimension(m_MarginUnits));
+ double fudge = UT_convertInchesToDimension(0.3, m_MarginUnits);
if ( (m_MarginLeft + m_MarginRight >= m_PageSize.Width(m_PageUnits)) ||
(m_MarginTop + m_MarginBottom >= m_PageSize.Height(m_PageUnits)) ||
Index: src/wp/ap/xp/ap_Dialog_PageSetup.h
===================================================================
RCS file: /cvsroot/abi/src/wp/ap/xp/ap_Dialog_PageSetup.h,v
retrieving revision 1.4
diff -u -r1.4 ap_Dialog_PageSetup.h
--- src/wp/ap/xp/ap_Dialog_PageSetup.h 2001/12/03 05:14:34 1.4
+++ src/wp/ap/xp/ap_Dialog_PageSetup.h 2002/01/01 21:37:50
@@ -41,10 +41,10 @@
#define SET_GATHER(a, u) inline u get##a(void) const {return m_##a;} \
inline void set##a(u p##a) {m_##a = p##a;}
SET_GATHER(PageSize, fp_PageSize);
- SET_GATHER(PageUnits, fp_PageSize::Unit);
+ SET_GATHER(PageUnits, UT_Dimension);
SET_GATHER(PageOrientation, Orientation);
SET_GATHER(PageScale, int);
- SET_GATHER(MarginUnits, fp_PageSize::Unit);
+ SET_GATHER(MarginUnits, UT_Dimension);
SET_GATHER(MarginTop, float);
SET_GATHER(MarginBottom, float);
SET_GATHER(MarginLeft, float);
@@ -65,10 +65,10 @@
AP_Dialog_PageSetup::tAnswer m_answer;
fp_PageSize m_PageSize;
- fp_PageSize::Unit m_PageUnits;
+ UT_Dimension m_PageUnits;
Orientation m_PageOrientation;
int m_PageScale;
- fp_PageSize::Unit m_MarginUnits;
+ UT_Dimension m_MarginUnits;
float m_MarginTop;
float m_MarginBottom;
float m_MarginLeft;
Index: src/wp/ap/xp/ap_EditMethods.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/ap/xp/ap_EditMethods.cpp,v
retrieving revision 1.422
diff -u -r1.422 ap_EditMethods.cpp
--- src/wp/ap/xp/ap_EditMethods.cpp 2001/12/25 08:11:23 1.422
+++ src/wp/ap/xp/ap_EditMethods.cpp 2002/01/01 21:38:52
@@ -5375,19 +5375,6 @@
return bOK;
}
-static UT_Dimension
-fp_2_dim (fp_PageSize::Unit u)
-{
- switch (u)
- {
- case fp_PageSize::cm : return DIM_CM;
- case fp_PageSize::mm : return DIM_MM;
- case fp_PageSize::inch :
- default :
- return DIM_IN;
- }
-}
-
static bool s_doPageSetupDlg (FV_View * pView)
{
XAP_Frame * pFrame = static_cast<XAP_Frame *> ( pView->getParentData());
@@ -5413,7 +5400,7 @@
//
fp_PageSize::Predefined orig_def,final_def;
double orig_wid = -1, orig_ht = -1, final_wid = -1, final_ht = -1;
- fp_PageSize::Unit orig_ut, final_ut;
+ UT_Dimension orig_ut, final_ut;
fp_PageSize pSize(pDoc->m_docPageSize.getPredefinedName());
orig_def = pSize.NameToPredefined(pSize.getPredefinedName());
//
@@ -5421,7 +5408,7 @@
//
if (orig_def == fp_PageSize::Custom)
{
- orig_ut = pDoc->m_docPageSize.getUnit();
+ orig_ut = pDoc->m_docPageSize.getDims();
orig_ht = pDoc->m_docPageSize.Width(orig_ut);
orig_wid = pDoc->m_docPageSize.Height(orig_ut);
pSize.Set(orig_ht, orig_wid, orig_ut);
@@ -5432,9 +5419,9 @@
if(pDoc->m_docPageSize.isPortrait() == false)
orig_ori = AP_Dialog_PageSetup::LANDSCAPE;
pDialog->setPageOrientation(orig_ori);
- fp_PageSize::Unit orig_unit,final_unit,orig_margu,final_margu;
+ UT_Dimension orig_unit,final_unit,orig_margu,final_margu;
double orig_scale,final_scale;
- orig_unit = pDoc->m_docPageSize.getUnit();
+ orig_unit = pDoc->m_docPageSize.getDims();
orig_scale = pDoc->m_docPageSize.getScale();
pDialog->setPageUnits(orig_unit);
@@ -5503,7 +5490,7 @@
dHeaderMargin = UT_convertToInches(pszHeaderMargin);
}
FREEP(props_in);
- orig_margu = fp_PageSize::inch;
+ orig_margu = DIM_IN;
if(docMargUnits == DIM_MM)
{
dLeftMargin = dLeftMargin * 25.4;
@@ -5512,7 +5499,7 @@
dBottomMargin = dBottomMargin * 25.4;
dFooterMargin = dFooterMargin * 25.4;
dHeaderMargin = dHeaderMargin * 25.4;
- orig_margu = fp_PageSize::mm;
+ orig_margu = DIM_MM;
}
else if(docMargUnits == DIM_CM)
{
@@ -5522,7 +5509,7 @@
dBottomMargin = dBottomMargin * 2.54;
dFooterMargin = dFooterMargin * 2.54;
dHeaderMargin = dHeaderMargin * 2.54;
- orig_margu = fp_PageSize::cm;
+ orig_margu = DIM_CM;
}
//
@@ -5551,7 +5538,7 @@
if (final_def == fp_PageSize::Custom)
{
- final_ut = pDialog->getPageSize().getUnit();
+ final_ut = pDialog->getPageSize().getDims();
final_wid = pDialog->getPageSize().Width(final_ut);
final_ht = pDialog->getPageSize().Height(final_ut);
}
@@ -5622,7 +5609,7 @@
UT_ASSERT(pPrefsScheme);
pPrefsScheme->setValue((XML_Char*)AP_PREF_KEY_RulerUnits,
-
(XML_Char*)UT_dimensionName(fp_2_dim (final_unit)));
+
+(XML_Char*)UT_dimensionName(final_unit));
//
// Recover ppView
@@ -5648,7 +5635,7 @@
dFooterMargin = (double) pDialog->getMarginFooter();
docMargUnits = DIM_IN;
- if(final_margu == fp_PageSize::cm)
+ if(final_margu == DIM_CM)
{
docMargUnits = DIM_CM;
dLeftMargin = dLeftMargin / 2.54;
@@ -5658,7 +5645,7 @@
dFooterMargin = dFooterMargin / 2.54;
dHeaderMargin = dHeaderMargin / 2.54;
}
- else if (final_margu == fp_PageSize::mm)
+ else if (final_margu == DIM_MM)
{
docMargUnits = DIM_MM;
dLeftMargin = dLeftMargin / 25.4;
@@ -6533,8 +6520,8 @@
const fp_PageSize & page = pView->getPageSize ();
// an approximate... TODO: make me more accurate
- max_width = page.Width (fp_PageSize::inch) * 72.0;
- max_height = page.Height (fp_PageSize::inch) * 72.0;
+ max_width = page.Width (DIM_IN) * 72.0;
+ max_height = page.Height (DIM_IN) * 72.0;
pDialog->setWidth (width);
pDialog->setHeight (height);
@@ -6946,7 +6933,7 @@
ABIWORD_VIEW;
bool ret;
bool doLists = true;
- double page_size = pView->getPageSize().Width (fp_PageSize::inch);
+ double page_size = pView->getPageSize().Width (DIM_IN);
if(!pView->getCurrentBlock()->isListItem() || !pView->isSelectionEmpty() )
{
doLists = false;
@@ -6959,7 +6946,7 @@
{
ABIWORD_VIEW;
bool ret;
- double page_size = pView->getPageSize().Width (fp_PageSize::inch);
+ double page_size = pView->getPageSize().Width (DIM_IN);
bool doLists = true;
if(!pView->getCurrentBlock()->isListItem() || !pView->isSelectionEmpty() )
{
Index: src/wp/ap/xp/ap_Preview_Abi.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/ap/xp/ap_Preview_Abi.cpp,v
retrieving revision 1.3
diff -u -r1.3 ap_Preview_Abi.cpp
--- src/wp/ap/xp/ap_Preview_Abi.cpp 2001/04/30 03:19:03 1.3
+++ src/wp/ap/xp/ap_Preview_Abi.cpp 2002/01/01 21:38:53
@@ -72,8 +72,8 @@
//
#ifndef ABI_OPT_WIDGET
- double curWidth = static_cast<PD_Document
*>(pFrame->getCurrentDoc())->m_docPageSize.Width(fp_PageSize::inch);
- double curHeight = static_cast<PD_Document
*>(pFrame->getCurrentDoc())->m_docPageSize.Height(fp_PageSize::inch);
+ double curWidth = static_cast<PD_Document
+*>(pFrame->getCurrentDoc())->m_docPageSize.Width(DIM_IN);
+ double curHeight = static_cast<PD_Document
+*>(pFrame->getCurrentDoc())->m_docPageSize.Height(DIM_IN);
#else
// DOM: evil hack
double curWidth = 8.5;
@@ -97,7 +97,7 @@
// For this we set the zoom to fit the page width inside the preview
//
case PREVIEW_ZOOMED:
- m_pDocument->m_docPageSize.Set(curWidth,curHeight,fp_PageSize::inch);
+ m_pDocument->m_docPageSize.Set(curWidth,curHeight,DIM_IN);
previewWidth = ((double) iWidth)/((double) gc->getResolution());
tmp = 100.0 * previewWidth/curWidth;
iZoom = (UT_uint32) tmp;
@@ -109,21 +109,21 @@
case PREVIEW_ADJUSTED_PAGE:
width = (double) iWidth/((double) gc->getResolution());
height = (double) iHeight/((double) gc->getResolution()) ;
- m_pDocument->m_docPageSize.Set(width,height,fp_PageSize::inch);
+ m_pDocument->m_docPageSize.Set(width,height,DIM_IN);
break;
//
// In this case we set the page size to the current pagesize and just
// clip the display inside the gc window
//
case PREVIEW_CLIPPED:
- m_pDocument->m_docPageSize.Set(curWidth,curHeight,fp_PageSize::inch);
+ m_pDocument->m_docPageSize.Set(curWidth,curHeight,DIM_IN);
break;
//
// For this we set the zoom to fit the page width inside the preview and add
// a scrollbar
//
case PREVIEW_ZOOMED_SCROLL:
- m_pDocument->m_docPageSize.Set(curWidth,curHeight,fp_PageSize::inch);
+ m_pDocument->m_docPageSize.Set(curWidth,curHeight,DIM_IN);
previewWidth = (double) iWidth/((double) gc->getResolution());
tmp = 100.0 * previewWidth/curWidth;
iZoom = (UT_uint32) tmp;
@@ -137,14 +137,14 @@
case PREVIEW_ADJUSTED_PAGE_SCROLL:
width = (double) iWidth/((double) gc->getResolution());
height = (double) iHeight/((double) gc->getResolution()) ;
- m_pDocument->m_docPageSize.Set(width,height,fp_PageSize::inch);
+ m_pDocument->m_docPageSize.Set(width,height,DIM_IN);
break;
//
// In this case we set the page size to the current pagesize and just
// clip the display inside the gc window and add a scroll bar.
//
case PREVIEW_CLIPPED_SCROLL:
- m_pDocument->m_docPageSize.Set(curWidth,curHeight,fp_PageSize::inch);
+ m_pDocument->m_docPageSize.Set(curWidth,curHeight,DIM_IN);
break;
default:
UT_ASSERT(UT_SHOULD_NOT_HAPPEN);
Index: src/wp/impexp/xp/ie_exp_AbiWord_1.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/impexp/xp/ie_exp_AbiWord_1.cpp,v
retrieving revision 1.90
diff -u -r1.90 ie_exp_AbiWord_1.cpp
--- src/wp/impexp/xp/ie_exp_AbiWord_1.cpp 2001/12/07 20:42:34 1.90
+++ src/wp/impexp/xp/ie_exp_AbiWord_1.cpp 2002/01/01 21:39:05
@@ -848,7 +848,7 @@
else
m_pie->write("landscape\"");
m_pie->write( " width=\"");
- fp_PageSize::Unit docUnit = m_pDocument->m_docPageSize.getUnit();
+ UT_Dimension docUnit = m_pDocument->m_docPageSize.getDims();
sprintf((char *) buf,"%f",m_pDocument->m_docPageSize.Width(docUnit));
m_pie->write( (char *) buf);
m_pie->write("\"");
@@ -857,14 +857,7 @@
m_pie->write( (char *) buf);
m_pie->write("\"");
m_pie->write(" units=\"");
- if(docUnit == fp_PageSize::cm)
- m_pie->write("cm");
- else if(docUnit == fp_PageSize::mm)
- m_pie->write("mm");
- else if(docUnit == fp_PageSize::inch)
- m_pie->write("inch");
- else
- UT_ASSERT(UT_SHOULD_NOT_HAPPEN);
+ m_pie->write(UT_dimensionName(docUnit));
m_pie->write("\"");
m_pie->write(" page-scale=\"");
sprintf((char *) buf,"%f",m_pDocument->m_docPageSize.getScale());
Index: src/wp/impexp/xp/ie_exp_KWord_1.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/impexp/xp/ie_exp_KWord_1.cpp,v
retrieving revision 1.11
diff -u -r1.11 ie_exp_KWord_1.cpp
--- src/wp/impexp/xp/ie_exp_KWord_1.cpp 2001/12/25 01:08:21 1.11
+++ src/wp/impexp/xp/ie_exp_KWord_1.cpp 2002/01/01 21:39:13
@@ -109,8 +109,7 @@
};
// KWord version 1 width/height are in mm
-static const UT_Dimension kword_1_unit_ut = DIM_MM;
-static const fp_PageSize::Unit kword_1_unit_fp = fp_PageSize::mm;
+static const UT_Dimension kword_1_unit = DIM_MM;
/*****************************************************************/
/*****************************************************************/
@@ -445,22 +444,6 @@
/*****************************************************************/
static const char *
-preferedUnitString(fp_PageSize::Unit docUnit)
-{
- if(docUnit == fp_PageSize::cm)
- return "mm";
- else if(docUnit == fp_PageSize::mm)
- return "mm";
- else if(docUnit == fp_PageSize::inch)
- return "inch";
- else
- {
- UT_ASSERT(UT_SHOULD_NOT_HAPPEN);
- return "";
- }
-}
-
-static const char *
justificationToNumber(const char * justification_name)
{
if (! strcmp(justification_name,"left"))
@@ -562,7 +545,7 @@
sprintf(buf, "page-margin-%s", name);
szValue = PP_evalProperty(buf,
NULL, NULL, pAP,
m_pDocument, true);
- sprintf((char *) buf," %s=\"%f",name, UT_convertToDimension(szValue,
kword_1_unit_ut));
+ sprintf((char *) buf," %s=\"%f",name, UT_convertToDimension(szValue,
+kword_1_unit));
m_pie->write((char *)buf);
m_pie->write("\"");
@@ -601,12 +584,12 @@
char buf[20];
m_pie->write(" width=\"");
- sprintf((char *) buf,"%f",m_pDocument->m_docPageSize.Width(kword_1_unit_fp));
+ sprintf((char *) buf,"%f",m_pDocument->m_docPageSize.Width(kword_1_unit));
m_pie->write((char *)buf);
m_pie->write("\"");
m_pie->write(" height=\"");
- sprintf((char *) buf,"%f",m_pDocument->m_docPageSize.Height(kword_1_unit_fp));
+ sprintf((char *) buf,"%f",m_pDocument->m_docPageSize.Height(kword_1_unit));
m_pie->write((char *)buf);
m_pie->write("\"");
@@ -636,7 +619,7 @@
m_pie->write("<ATTRIBUTES");
m_pie->write(" processing=\"0\"");
m_pie->write(" unit=\"");
- m_pie->write(preferedUnitString(m_pDocument->m_docPageSize.getUnit()));
+ m_pie->write(UT_dimensionName(m_pDocument->m_docPageSize.getDims()));
m_pie->write("\"");
m_pie->write("/>\n");
Index: src/wp/impexp/xp/ie_exp_RTF_listenerWriteDoc.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/impexp/xp/ie_exp_RTF_listenerWriteDoc.cpp,v
retrieving revision 1.56
diff -u -r1.56 ie_exp_RTF_listenerWriteDoc.cpp
--- src/wp/impexp/xp/ie_exp_RTF_listenerWriteDoc.cpp 2001/12/20 23:05:27 1.56
+++ src/wp/impexp/xp/ie_exp_RTF_listenerWriteDoc.cpp 2002/01/01 21:39:21
@@ -527,8 +527,8 @@
old_locale = setlocale (LC_NUMERIC, "C");
- double width = m_pDocument->m_docPageSize.Width(fp_PageSize::inch);
- double height = m_pDocument->m_docPageSize.Height(fp_PageSize::inch);
+ double width = m_pDocument->m_docPageSize.Width(DIM_IN);
+ double height = m_pDocument->m_docPageSize.Height(DIM_IN);
bool landscape = !m_pDocument->m_docPageSize.isPortrait();
XML_Char szPaperWidth[24];
Index: src/wp/impexp/xp/ie_exp_XSL-FO.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/impexp/xp/ie_exp_XSL-FO.cpp,v
retrieving revision 1.26
diff -u -r1.26 ie_exp_XSL-FO.cpp
--- src/wp/impexp/xp/ie_exp_XSL-FO.cpp 2001/11/29 03:50:47 1.26
+++ src/wp/impexp/xp/ie_exp_XSL-FO.cpp 2002/01/01 21:39:27
@@ -580,22 +580,6 @@
/*****************************************************************/
/*****************************************************************/
-static const char *
-docUnitToString(fp_PageSize::Unit docUnit)
-{
- if(docUnit == fp_PageSize::cm)
- return "cm";
- else if(docUnit == fp_PageSize::mm)
- return "mm";
- else if(docUnit == fp_PageSize::inch)
- return "in";
- else
- {
- UT_ASSERT(UT_SHOULD_NOT_HAPPEN);
- return "";
- }
-}
-
static UT_String
purgeSpaces(const char* st)
{
@@ -657,19 +641,19 @@
m_pie->write(szValue);
m_pie->write("\"");
- fp_PageSize::Unit docUnit = m_pDocument->m_docPageSize.getUnit();
+ UT_Dimension docUnit = m_pDocument->m_docPageSize.getDims();
char buf[20];
m_pie->write( " page-width=\"");
sprintf((char *) buf,"%f",m_pDocument->m_docPageSize.Width(docUnit));
m_pie->write((char *)buf);
- m_pie->write(docUnitToString(docUnit));
+ m_pie->write(UT_dimensionName(docUnit));
m_pie->write("\"");
m_pie->write(" page-height=\"");
sprintf((char *) buf,"%f",m_pDocument->m_docPageSize.Height(docUnit));
m_pie->write((char *)buf);
- m_pie->write(docUnitToString(docUnit));
+ m_pie->write(UT_dimensionName(docUnit));
m_pie->write("\"");
}
Index: src/wp/impexp/xp/ie_imp_KWord_1.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/impexp/xp/ie_imp_KWord_1.cpp,v
retrieving revision 1.12
diff -u -r1.12 ie_imp_KWord_1.cpp
--- src/wp/impexp/xp/ie_imp_KWord_1.cpp 2001/10/24 16:23:47 1.12
+++ src/wp/impexp/xp/ie_imp_KWord_1.cpp 2002/01/01 21:39:37
@@ -560,7 +560,7 @@
}
if ( page_height != 0. && page_width != 0. )
- getDoc()->m_docPageSize.Set(page_width, page_height, fp_PageSize::mm);
+ getDoc()->m_docPageSize.Set(page_width, page_height, DIM_MM);
break;
}
Index: src/wp/impexp/xp/ie_imp_MsWord_97.cpp
===================================================================
RCS file: /cvsroot/abi/src/wp/impexp/xp/ie_imp_MsWord_97.cpp,v
retrieving revision 1.135
diff -u -r1.135 ie_imp_MsWord_97.cpp
--- src/wp/impexp/xp/ie_imp_MsWord_97.cpp 2001/12/28 22:58:26 1.135
+++ src/wp/impexp/xp/ie_imp_MsWord_97.cpp 2002/01/01 21:39:51
@@ -1336,7 +1336,7 @@
}
// always use the passed size
- getDoc()->m_docPageSize.Set (page_width, page_height,
fp_PageSize::inch);
+ getDoc()->m_docPageSize.Set (page_width, page_height, DIM_IN);
getDoc()->m_docPageSize.setScale(page_scale);
}