This much ugly complexity, generating a header on every gbuild startup
etc. is really not warranted for 6 callers of the generated macros.
Also, the Win32 make has problems with the quoting.
Change-Id: If945e09c1730e52174a6084677842dc611d66b2f
Introduce BitmapFilter as a general bitmap filtering class, and
make scale "super" algorithem independent as BitmapScaleSuper
which uses BitmapFilter as superclass.
This is an ongoing work to make some bitmap algorithms structured
and more independent from the big bitmap class This will make them
easier to work with, test and optimize.
Change-Id: I37d29709b2af95cab2f6da21129302f5be79318b
The following functions should be in the Window class, not in
OutputDevice:
+ IsNativeControlSupported
+ HitTestNativeControl
+ DrawNativeControl
+ GetNativeControlRegion
Additionally, moved nativecontrols.cxx to vcl/source/window/ and whilst
we are about it, it turns out that VirtualDevice isn't used by these
functions. Therefore the 'orrible check to for the type of class can be
removed and in fact as VirtualDevice doesn't use it at all then we can
just remove the function and replace it with a call to
IsNativeWidgetEnabled().
Change-Id: Idd0bfb1cba1c2902f7a6d55d258efb38b67fb827
A whole bunch of functions in include/vcl/window.hxx should be private,
a number should be protected. Change this now and fix some formatting
whilst I'm about it.
Change-Id: I8bae0112dcecffb7c703fe35e8db6676c1b5f584
ImpObjStack uses it's own home-grown stack and stack functions. There
is a function that unwinds the stack, but really it would be better if
we used std::set. In fact, this is better, because the name ImpObjStack
is really not terribly descriptive. I've replaced it with a stack of
OutDevState objects.
Change-Id: I87bdd4340ad77b7ffd9ff176fa5a9ffeac8b8666
Mainly moved map functions into their own block, however I have also
done a bit more reorganization. Quite a bit to go, it seems...
Change-Id: I041d91c9b96066f5f1e11bd82968c2712988e5f4
I have moved the blending functions from blend.cxx to bitmap.cxx, I
also renamed the function ImplBlendWithAlpha to BlendBitmapWithAlpha
and ImplBlend to BlendBitmap.
I also grouped the functions in outdev.hxx - BlendBitmap and
BlendBitmapWithAlpha are both private functions, not public.
Change-Id: Idfaf8826341172bb0288473c643afa51a03b0580
outdev5.cxx deals with curved shapes, so renamed to curvedshapes.cxx
Moved polygon functions to polygon.cxx, transparency functions to
transparent.cxx, a few miscellaneous functions to outdev.cxx and as the
rest of the functions are wallpaper functions then renamed outdev6.cxx
to wallpaper.cxx
Change-Id: I62a0b66d4d66740fb5f70ecb558db1ad3bf76eb5
I have split outdev2.cxx into the following files:
+ alpha.cxx
+ bezier.cxx
+ bitmap.cxx
+ blend.cxx
+ gradient.cxx
+ hatch.cxx
+ pixel.cxx
+ polygon.cxx
+ line.cxx
+ polyline.cxx
+ rect.cxx
+ transparent.cxx
I have also moved all the DrawDev functions into outdev.cxx
Change-Id: Ica7057250526cd1ed680e5ec173c73265a586ea3
GetNextGlyphs could only deal with 1 glyph at the time
and was recalculing a lot of thing while iterating on the glyphs
This is not just a performance issue.. the notiong of keeping
per run glyphs information will be useful to re-establish the
proper support of glyphs display positionning by SetDXArray()
which today is completely ignored, in favor or letting
CoreText spread the extra free space itself.
Change-Id: Ib267c3e490619b650d4149f4b15b5758802942ba
Reviewed-on: https://gerrit.libreoffice.org/8879
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
oudev,2,3,4,5,6 are a dumping ground for a lot of things
chipping at it one class at the time...
organize the #include of the impacted source while at it.
Change-Id: I57bbb1f9e3c6b2ac6b3ca127e5976bf16f3e3cf8
Works for libmerged too, so we can get rid of LIBO_MERGELIBS.
And remove few more #defines in vcl.
It's generated by gbuild, so probably abusing config_host directory.
Open to improvements.
Change-Id: I87ab109bf109e42751766011daf076e9cdf8f5ee
The hard-coded icon themes have been replaced by a dynamic list
which is filled by scanning the config directory
Conflicts:
include/vcl/settings.hxx
vcl/source/app/settings.cxx
vcl/source/window/window.cxx
Change-Id: Ie3680ffe27d06e375acf22753e036cb6ddabc4ed
Reviewed-on: https://gerrit.libreoffice.org/7935
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
...simplify the corresponding jpeg.h now that it deals in C++, and fold
SetJpegPreviewSizeHint into ReadJPEG to avoid global static data.
Change-Id: Id3721bdb37be05e3e6bbbaef3b0aa0c0e1a9ff5a
This implements http://www.unicode.org/reports/tr24/ by using ICU’s
implementation of it, but since the code in question is private API, I
simply copied the two self-contained files.
This commit is best viewed with --ignore-space-change.
Change-Id: I38c385d4fb6f8a2edc804d48f0aa14df9f0a8b3b
This also prevents a weird problem I see when cross-compiling in one tree (but
not in other trees for other cross-compilation targets).
Change-Id: I102e652c259a66ea124b344bd229e8988801ac58