Age | Commit message (Collapse) | Author |
|
These flags mean nothing these days, there are either always true or
always false, since we no longer support bitmap or Type 1 fonts.
Change-Id: Ie14ca480225a6346d868a44e58e7666c3a06931d
Reviewed-on: https://gerrit.libreoffice.org/31346
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
|
|
Change-Id: Ia03f7cccb256d825daa4dc6f4c0598448e46e6cf
Reviewed-on: https://gerrit.libreoffice.org/31069
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
The issue of 362d4f0cd4e50111edfae9d30c90602c37ed65a2 "Explicitly mark
overriding destructors as 'virtual'" appears to no longer be a problem with
MSVC 2013.
(The little change in the rewriting code of compilerplugins/clang/override.cxx
was necessary to prevent an endless loop when adding "override" to
OOO_DLLPUBLIC_CHARTTOOLS virtual ~CloseableLifeTimeManager();
in chart2/source/inc/LifeTime.hxx, getting stuck in the leading
OOO_DLLPUBLIC_CHARTTOOLS macro. Can't remember what that
isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.)
Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
|
|
Change-Id: Iebe5ec7e2cdc6743dbabdecaa7cbb1c4a04893c4
Reviewed-on: https://gerrit.libreoffice.org/28610
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I4c913dc62efe3f3747e78670f4efb0216d95c4ad
Reviewed-on: https://gerrit.libreoffice.org/28585
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I5ada1cff98c0a3e065d126444f8052f444323743
Reviewed-on: https://gerrit.libreoffice.org/23234
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
I'm changing the Font class function names:
- SetSize -> SetFontSize
- GetSize -> GetFontSize
- SetHeight -> SetFontHeight
- GetHeight -> GetFontHeight
- SetWidth -> SetAverageFontWidth
- GetWidth -> GetAverageFontWidth
That's because it really makes no sense to say that there is a
single constant font width because obviously proportional fonts
don't have one - the best we can do is an average font width,
which is what folks like Microsoft sort of do already. On a fixed
font, the average is still accurate, for obvious reasons :-)
I'm also not a fan of GetSize/SetSize as I find it a might too
generic.
Change-Id: Ib80a604ba62d6883fd6cbc7994da763976be5c70
Reviewed-on: https://gerrit.libreoffice.org/22069
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Change-Id: Ic2cf84a07c0050fd655d1b7fb30cdf29e62f919d
Reviewed-on: https://gerrit.libreoffice.org/21575
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Change-Id: Ie20871a3078bf875c1782b7761d60591a9c9704f
Reviewed-on: https://gerrit.libreoffice.org/21529
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
revert:
9bc2f3de8672e812f3a67541c6d7069b434a7e42
vcl: add comment about ImplFontMetric::{Get|Set}LineHeight()
26371f105bc44e04469ec03fc5bb12505e651c6b
vcl: FontAttributes::GetSlantType() -> FontAttributes::GetItalic()
2dd0b4317372b8022efe3911b38b4fa02956d8b9
vcl: font.hxx and metric.hxx cleanup, make ctors explicit and the dtor virtual
5ab13bf3ead3539e4ad847656da81e7eb6029652
vcl: tabify font.hxx
f99550dae55e40e49bf9c9875053fe2abb4c71ca
vcl: change Font::SetName() to Font::SetFamilyName()
2b297116cb6bb1061c43e5714e2609c8ee9f57d2
vcl: rename Font::GetName to Font::GetFamilyName
Change-Id: I23f38921187d66b970ca815eb30dda4222a2da62
|
|
Change-Id: Iab0160bdf664689404ff6fd093b51c0b4d2c4f10
Reviewed-on: https://gerrit.libreoffice.org/21512
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Change-Id: I83927e0992dfe0a2a79d139818a9f45d3761aae5
Reviewed-on: https://gerrit.libreoffice.org/21509
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
ImplFontMetricPtr is a typedef to an intrusive_ptr<ImplFontMetric>.
I have ditched the manual reference counting to use Boost's smart
pointer.
Change-Id: I5e93f45d19d43c8b7253f4342c1b9ef4a4301527
|
|
Exposng your private members as public is bad, but its also
unacceptable to allow friends to access your private members. It's
not the done thing in civilized C++ society.
Change-Id: Id8f811f0e775afde26c6119b274f37908731507c
|
|
Mutator created for bullet offset attribute in FontMetric.
See commit description in 8bfccd3a71d911b6d ("vcl: Create accessor
and mutator for font scaling in FontMetric") for reasoning behind
patch.
Unit tests
- check to ensure that can get and set bullet offset attribute
- check equality operator on FontMetric after setting bullet offset
attribute
Change-Id: I87a76982a8b3ed697664299cb340fa35fb514c0e
|
|
Mutator created for slant attribute in FontMetric.
See commit description in 8bfccd3a71d911b6d ("vcl: Create accessor
and mutator for font scaling in FontMetric") for reasoning behind
patch.
Unit tests
- check to ensure that can get and set slant attribute
- check equality operator on FontMetric after setting slant attribute
Change-Id: I5490a40dba4c86386d59a42f2d04303b3fc4d536
|
|
Mutator created for line height in attribute FontMetric.
See commit description in 8bfccd3a71d911b6d ("vcl: Create accessor
and mutator for font scaling in FontMetric") for reasoning behind
patch.
Unit tests
- check to ensure that can get and set line height attribute
- check equality operator on FontMetric after setting line height
attribute
Change-Id: I86dff217fa24850b5f9d04a17ddda464dfb0156a
|
|
Accessor and mutator created for ascent and descent spacing in
FontMetric.
See commit description in 8bfccd3a71d911b6d ("vcl: Create accessor
and mutator for font scaling in FontMetric") for reasoning behind
patch.
Unit tests
- check to ensure that can set font ascent and descent spacing
- check equality operator on FontMetric after setting both ascent
and descent font spacing
Change-Id: I714363b14bdc61ddfa37a619fe4b03f4e4e96f7a
Reviewed-on: https://gerrit.libreoffice.org/21458
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Accessor and mutator created for external and internal leading space in
FontMetric.
See commit description in 8bfccd3a71d911b6d ("vcl: Create accessor
and mutator for font scaling in FontMetric") for reasoning behind
patch.
Unit tests
- check to ensure that can set external and leading space
- check equality operator on FontMetric after setting both external
and internal leading space
- enhanced tests to also check the inequality operator
Change-Id: I973970dd0b0631c5eca3e89039dce57ac3a3eb63
Reviewed-on: https://gerrit.libreoffice.org/21454
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Accessor and mutator created for builtin font flag, removed the
existing bit field.
See commit description in 8bfccd3a71d911b6d ("vcl: Create accessor
and mutator for font scaling in FontMetric") for reasoning behind
patch.
Unit tests
- check to ensure that can set builtin font flag
- check equality operator on FontMetric after setting builtin font
flag
Change-Id: Iac3f4270f86d10f9dcd0bb6e3951c0e983a4f22f
Reviewed-on: https://gerrit.libreoffice.org/21414
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Accessor and mutator created for full stop centered flag, removed
bit field.
See commit description in 8bfccd3a71d911b6d ("vcl: Create accessor
and mutator for font scaling in FontMetric") for reasoning behind
patch.
Unit tests
- check to ensure that can set full stop centered flag
- check equality operator on FontMetric after setting full stop
centered flag
Change-Id: I9cacb0fbf9ea65cfebcaebdc9f0481c0a796cbcf
Reviewed-on: https://gerrit.libreoffice.org/21413
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
This is fragile code! There are actually *two* classes that do almost
precisely the same thing, they are:
- ImplFontMetric, and
- ImplFontMetricData
They both have much in common, including their class name, and even
most of their functionality. In fact, they both have common accessor
functions. When I look at the code, it looks like OutputDevice is
actually given an ImplFontMetricData object, which it then uses to
populate an ImplFontMetric object...
Basically, I'm going to merge these classes. To do so, I'm going to
do the following:
Step 1: Implement accessor functions for ImplFontMetric and FontMetric
(then remove the friendship of this class to OutputDevice!)
Step 2: Write a unit test for each accessor function in ImplFontMetric
Step 3: Ensure that ImplFontMetric and ImplFontMetricData use some
sort of smart pointer (probably an intrusive_ptr like I did
ages ago with FontCharMap)
Step 4: Merge the two classes together once their class interfaces
are the same and I am satisfied they do the same thing
Step 5: Find all instances of inefficient usage - for instance, I can
do away with the code that copies the ImplFontMetricData
attributes into an ImplFontMetric object.
Change-Id: I07c1cb848774b130fa2ca60b51da53e07754dd00
Reviewed-on: https://gerrit.libreoffice.org/21399
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Change-Id: Id3b155abec7b7a2ff43d0a35e98709f5ee51c6b9
Reviewed-on: https://gerrit.libreoffice.org/21069
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
This may sound crazy, but literally vcl::FontInfo serves no purpose
that I can see. The inheritance chain is like this:
┌────────────────────────┐
│ │
│ vcl::Font │
│ │
└────────────────────────┘
^
╱ ╲
│
│
┌────────────────────────┐
│ │
│ vcl::FontInfo │
│ │
└────────────────────────┘
^
╱ ╲
│
│
┌────────────────────────┐
│ │
│ FontMetric │
│ │
└────────────────────────┘
vcl::FontInfo (which, incidentally, needs to be put into the vcl
namespace due to collisions with poppler!) literally does nothing
and is acting as a bridge between FontMetric and vcl::Font. Unlike
a bridge though, this bridge doesn't actually *do* anything.
So I'm removing it, which means one less class to deal with in the
vcl fonts world.
Change-Id: I32725669c9bca7fbb0846b6a062135464046e4f6
Reviewed-on: https://gerrit.libreoffice.org/21058
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Bullet of non-monospace font that is used as non-printing character
to indicate space might be wider than the space. Drawing the bullet
over the space make the bullet too close to next character.
Shift the bullet accordingly so that bullet is centered with
original space.
Change-Id: I0d8d721041e8a475546fe25fb01bee374fc3e499
Reviewed-on: https://gerrit.libreoffice.org/20112
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mark Hung <marklh9@gmail.com>
|
|
Ideographic fullstop and comma in most Chinese fonts are centered,
while those in Japanese fonts align closer to the left. Original
compression algorithm trimed right side of the punctuation, making
fullwidth fullstop or comma in Chinese font visually unbalanced.
In worst case, it crowds together with the followed compressed
punctuation.
This patch fix the situation in the folowing way
1) make compression less stronger.
2) Trim space according to glyph bearing to font height ratio.
3) fix a memory access violation issue
Change-Id: Icff215064e6c442fd36eac8e01b01fb6acb27594
Reviewed-on: https://gerrit.libreoffice.org/19517
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
|
|
Change-Id: I328ac7a95ccc87732efae48b567a0556865928f3
|
|
Change-Id: I98b88ca3369a2c888fd63796e39d42376d513002
|
|
Change-Id: I9ea64443350ed2e1341b99270fa8b29189f07eb2
|
|
To do this, I've made FontCharMap a friend class for ImplFontCharMap,
and have moved the functions directly into FontCharMap. In this patch,
I am attempting to stop the direct use of ImplFontCharMap by anything
other than FontCharMap. However, FontCharMap itself requires a
refcounter, so we will use FontCharMapPtr to access the font character
map.
Change-Id: I509b990a8cbd911c5cc1572c7d24fc5348ca06d9
Reviewed-on: https://gerrit.libreoffice.org/11823
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Change-Id: I5f3c5d55d04747c15cdf8aa34b27ceb0cc3f3a92
|
|
Change-Id: I3020c0979ff8ab6b9e959f32d25af9f51857d821
|
|
ImplFontCharMap was using it's own reference counting mechanism,
however we can use intrusive_ptr more effectively.
Added a unit test around FontCharMap.
Change-Id: Ifab6ce002fd1df8feb7e017dea3012ff9ea7f18a
Reviewed-on: https://gerrit.libreoffice.org/11804
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
|
|
Change-Id: I7d168f89fc8cb1b5b85c78e260a9ed786a437265
|
|
Put the VCL Region class in the vcl namespace. Avoids clash with the X11
Region typedef.
Change-Id: I6e008111df7cf37121fbc3eaabd44a8306338291
|
|
Put the VCL Font class in the vcl namespace. Avoids clash with the X11
Font typedef.
Change-Id: I1a84f7cad8b31697b9860a3418f7dff794ff6537
|
|
Change-Id: I17235397e490458c250165c36bec97bf1ce326d7
|
|
Change-Id: I1dbd256812cccae1e6ed0ad8bb34ce427e5e5be8
|
|
Change-Id: Ifa5d662a3ef723c29b4d6839f16d4b920e1c773d
|
|
Change-Id: I391fbc092b05600b0a4c2107e3934e1fb7334554
|
|
Change-Id: I8df204b01a73454396561052f10784c71f10d081
|
|
Conflicts:
include/framework/preventduplicateinteraction.hxx
include/sfx2/sfxbasecontroller.hxx
include/sfx2/sfxbasemodel.hxx
include/toolkit/awt/vclxtabpagemodel.hxx
include/vcl/field.hxx
include/vcl/settings.hxx
Change-Id: Ibccf9f88c68267a3d7e656012b51eaf644c418c2
Reviewed-on: https://gerrit.libreoffice.org/8272
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I2a3e3d3e3266ea0f0fafdd91362076a4aa160f0e
|
|
and move the helper function UpdateAttributesFromPSName() there to
make it available for all platforms, not only ATSUI-based ones.
(cherry picked from commit a3895516f02a80151caaac8b92fb50aa5f7ee93b)
Conflicts:
include/vcl/metric.hxx
vcl/aqua/source/gdi/salatsuifontutils.cxx
vcl/inc/impfont.hxx
vcl/source/gdi/metric.cxx
Change-Id: I6d5702d429673c83740cb72775014f8942e5f44d
|
|
Change-Id: Iaea4396f60aeade5303bf83a4504ad62f161b83c
|
|
see https://gerrit.libreoffice.org/#/c/3367/
and Change-Id: I00c96fa77d04b33a6f8c8cd3490dfcd9bdc9e84a for details
Change-Id: I199a75bc4042af20817265d5ef85b1134a96ff5a
|