[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
darin
darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 05:57:48 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit bf420759f9737d21648a775511492e5afb080a3b
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Mar 18 17:34:21 2002 +0000
* src/kwq/KWQFontMetrics.mm: (QFontMetricsPrivate::getInfo),
(QFontMetrics::width), (QFontMetrics::_width), (QFontMetrics::boundingRect),
(QFontMetrics::size): Don't make the info object right away, in case the
metrics object is only used to compute ascent and descent.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@771 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2002-12-03 b/WebCore/ChangeLog-2002-12-03
index eff12c6..d7d37fc 100644
--- a/WebCore/ChangeLog-2002-12-03
+++ b/WebCore/ChangeLog-2002-12-03
@@ -1,3 +1,10 @@
+2002-03-18 Darin Adler <darin at apple.com>
+
+ * src/kwq/KWQFontMetrics.mm: (QFontMetricsPrivate::getInfo),
+ (QFontMetrics::width), (QFontMetrics::_width), (QFontMetrics::boundingRect),
+ (QFontMetrics::size): Don't make the info object right away, in case the
+ metrics object is only used to compute ascent and descent.
+
2002-03-17 Richard Williamson <rjw at apple.com>
Implementation of replacement code for NSLayoutManager. Huge
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index eff12c6..d7d37fc 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,10 @@
+2002-03-18 Darin Adler <darin at apple.com>
+
+ * src/kwq/KWQFontMetrics.mm: (QFontMetricsPrivate::getInfo),
+ (QFontMetrics::width), (QFontMetrics::_width), (QFontMetrics::boundingRect),
+ (QFontMetrics::size): Don't make the info object right away, in case the
+ metrics object is only used to compute ascent and descent.
+
2002-03-17 Richard Williamson <rjw at apple.com>
Implementation of replacement code for NSLayoutManager. Huge
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index eff12c6..d7d37fc 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,10 @@
+2002-03-18 Darin Adler <darin at apple.com>
+
+ * src/kwq/KWQFontMetrics.mm: (QFontMetricsPrivate::getInfo),
+ (QFontMetrics::width), (QFontMetrics::_width), (QFontMetrics::boundingRect),
+ (QFontMetrics::size): Don't make the info object right away, in case the
+ metrics object is only used to compute ascent and descent.
+
2002-03-17 Richard Williamson <rjw at apple.com>
Implementation of replacement code for NSLayoutManager. Huge
diff --git a/WebCore/kwq/KWQFontMetrics.mm b/WebCore/kwq/KWQFontMetrics.mm
index 4195628..bf4f97f 100644
--- a/WebCore/kwq/KWQFontMetrics.mm
+++ b/WebCore/kwq/KWQFontMetrics.mm
@@ -673,8 +673,8 @@ struct QFontMetricsPrivate {
QFontMetricsPrivate(NSFont *aFont)
{
refCount = 0;
- font = [aFont retain];
- info = [[KWQLayoutInfo getMetricsForFont: aFont] retain];
+ font = [aFont retain];
+ info = nil;
spaceWidth = -1;
xWidth = -1;
ascent = -1;
@@ -685,15 +685,24 @@ struct QFontMetricsPrivate {
[info release];
[font release];
}
+ KWQLayoutInfo *getInfo();
int refCount;
- KWQLayoutInfo *info;
NSFont *font;
int spaceWidth;
int xWidth;
int ascent;
int descent;
+private:
+ KWQLayoutInfo *info;
};
+KWQLayoutInfo *QFontMetricsPrivate::getInfo()
+{
+ if (!info)
+ info = [[KWQLayoutInfo getMetricsForFont:font] retain];
+ return info;
+}
+
QFontMetrics::QFontMetrics()
{
}
@@ -761,15 +770,13 @@ int QFontMetrics::width(QChar qc) const
return data->xWidth;
}
NSString *string = [NSString stringWithCharacters: (const unichar *)&c length: 1];
- int stringWidth = ROUND_TO_INT([data->info rectForString: string].size.width);
- return stringWidth;
+ return ROUND_TO_INT([data->getInfo() rectForString: string].size.width);
}
int QFontMetrics::width(char c) const
{
NSString *string = [NSString stringWithCString: &c length: 1];
- int stringWidth = ROUND_TO_INT([data->info rectForString: string].size.width);
- return stringWidth;
+ return ROUND_TO_INT([data->getInfo() rectForString: string].size.width);
}
int QFontMetrics::width(const QString &qstring, int len) const
@@ -780,20 +787,18 @@ int QFontMetrics::width(const QString &qstring, int len) const
string = QSTRING_TO_NSSTRING_LENGTH (qstring, len);
else
string = _FAST_QSTRING_TO_NSSTRING (qstring);
- int stringWidth = ROUND_TO_INT([data->info rectForString: string].size.width);
- return stringWidth;
+ return ROUND_TO_INT([data->getInfo() rectForString: string].size.width);
}
int QFontMetrics::_width(const UniChar *uchars, int len) const
{
- int stringWidth = ROUND_TO_INT(_rectForString(data->info, uchars, len).size.width);
- return stringWidth;
+ return ROUND_TO_INT(_rectForString(data->getInfo(), uchars, len).size.width);
}
int QFontMetrics::_width(CFStringRef string) const
{
- return ROUND_TO_INT([data->info rectForString: (NSString *)string].size.width);
+ return ROUND_TO_INT([data->getInfo() rectForString: (NSString *)string].size.width);
}
QRect QFontMetrics::boundingRect(const QString &qstring, int len) const
@@ -804,7 +809,7 @@ QRect QFontMetrics::boundingRect(const QString &qstring, int len) const
string = QSTRING_TO_NSSTRING_LENGTH (qstring, len);
else
string = _FAST_QSTRING_TO_NSSTRING (qstring);
- NSRect rect = [data->info rectForString: string];
+ NSRect rect = [data->getInfo() rectForString: string];
return QRect(ROUND_TO_INT(rect.origin.x),
ROUND_TO_INT(rect.origin.y),
@@ -814,9 +819,9 @@ QRect QFontMetrics::boundingRect(const QString &qstring, int len) const
QRect QFontMetrics::boundingRect(QChar qc) const
{
- ushort c = qc.unicode();
- NSString *string = [NSString stringWithCharacters: (const unichar *)&c length: 1];
- NSRect rect = [data->info rectForString: string];
+ unichar c = qc.unicode();
+ NSString *string = [NSString stringWithCharacters: &c length: 1];
+ NSRect rect = [data->getInfo() rectForString: string];
return QRect(ROUND_TO_INT(rect.origin.x),
ROUND_TO_INT(rect.origin.y),
@@ -838,7 +843,7 @@ QSize QFontMetrics::size(int, const QString &qstring, int len, int tabstops,
string = QSTRING_TO_NSSTRING_LENGTH (qstring, len);
else
string = _FAST_QSTRING_TO_NSSTRING (qstring);
- NSRect rect = [data->info rectForString: string];
+ NSRect rect = [data->getInfo() rectForString: string];
return QSize (ROUND_TO_INT(rect.size.width),ROUND_TO_INT(rect.size.height));
}
diff --git a/WebCore/src/kwq/KWQFontMetrics.mm b/WebCore/src/kwq/KWQFontMetrics.mm
index 4195628..bf4f97f 100644
--- a/WebCore/src/kwq/KWQFontMetrics.mm
+++ b/WebCore/src/kwq/KWQFontMetrics.mm
@@ -673,8 +673,8 @@ struct QFontMetricsPrivate {
QFontMetricsPrivate(NSFont *aFont)
{
refCount = 0;
- font = [aFont retain];
- info = [[KWQLayoutInfo getMetricsForFont: aFont] retain];
+ font = [aFont retain];
+ info = nil;
spaceWidth = -1;
xWidth = -1;
ascent = -1;
@@ -685,15 +685,24 @@ struct QFontMetricsPrivate {
[info release];
[font release];
}
+ KWQLayoutInfo *getInfo();
int refCount;
- KWQLayoutInfo *info;
NSFont *font;
int spaceWidth;
int xWidth;
int ascent;
int descent;
+private:
+ KWQLayoutInfo *info;
};
+KWQLayoutInfo *QFontMetricsPrivate::getInfo()
+{
+ if (!info)
+ info = [[KWQLayoutInfo getMetricsForFont:font] retain];
+ return info;
+}
+
QFontMetrics::QFontMetrics()
{
}
@@ -761,15 +770,13 @@ int QFontMetrics::width(QChar qc) const
return data->xWidth;
}
NSString *string = [NSString stringWithCharacters: (const unichar *)&c length: 1];
- int stringWidth = ROUND_TO_INT([data->info rectForString: string].size.width);
- return stringWidth;
+ return ROUND_TO_INT([data->getInfo() rectForString: string].size.width);
}
int QFontMetrics::width(char c) const
{
NSString *string = [NSString stringWithCString: &c length: 1];
- int stringWidth = ROUND_TO_INT([data->info rectForString: string].size.width);
- return stringWidth;
+ return ROUND_TO_INT([data->getInfo() rectForString: string].size.width);
}
int QFontMetrics::width(const QString &qstring, int len) const
@@ -780,20 +787,18 @@ int QFontMetrics::width(const QString &qstring, int len) const
string = QSTRING_TO_NSSTRING_LENGTH (qstring, len);
else
string = _FAST_QSTRING_TO_NSSTRING (qstring);
- int stringWidth = ROUND_TO_INT([data->info rectForString: string].size.width);
- return stringWidth;
+ return ROUND_TO_INT([data->getInfo() rectForString: string].size.width);
}
int QFontMetrics::_width(const UniChar *uchars, int len) const
{
- int stringWidth = ROUND_TO_INT(_rectForString(data->info, uchars, len).size.width);
- return stringWidth;
+ return ROUND_TO_INT(_rectForString(data->getInfo(), uchars, len).size.width);
}
int QFontMetrics::_width(CFStringRef string) const
{
- return ROUND_TO_INT([data->info rectForString: (NSString *)string].size.width);
+ return ROUND_TO_INT([data->getInfo() rectForString: (NSString *)string].size.width);
}
QRect QFontMetrics::boundingRect(const QString &qstring, int len) const
@@ -804,7 +809,7 @@ QRect QFontMetrics::boundingRect(const QString &qstring, int len) const
string = QSTRING_TO_NSSTRING_LENGTH (qstring, len);
else
string = _FAST_QSTRING_TO_NSSTRING (qstring);
- NSRect rect = [data->info rectForString: string];
+ NSRect rect = [data->getInfo() rectForString: string];
return QRect(ROUND_TO_INT(rect.origin.x),
ROUND_TO_INT(rect.origin.y),
@@ -814,9 +819,9 @@ QRect QFontMetrics::boundingRect(const QString &qstring, int len) const
QRect QFontMetrics::boundingRect(QChar qc) const
{
- ushort c = qc.unicode();
- NSString *string = [NSString stringWithCharacters: (const unichar *)&c length: 1];
- NSRect rect = [data->info rectForString: string];
+ unichar c = qc.unicode();
+ NSString *string = [NSString stringWithCharacters: &c length: 1];
+ NSRect rect = [data->getInfo() rectForString: string];
return QRect(ROUND_TO_INT(rect.origin.x),
ROUND_TO_INT(rect.origin.y),
@@ -838,7 +843,7 @@ QSize QFontMetrics::size(int, const QString &qstring, int len, int tabstops,
string = QSTRING_TO_NSSTRING_LENGTH (qstring, len);
else
string = _FAST_QSTRING_TO_NSSTRING (qstring);
- NSRect rect = [data->info rectForString: string];
+ NSRect rect = [data->getInfo() rectForString: string];
return QSize (ROUND_TO_INT(rect.size.width),ROUND_TO_INT(rect.size.height));
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list