summaryrefslogtreecommitdiff
path: root/include/tools/gen.hxx
AgeCommit message (Collapse)Author
2019-07-10make tools::Rectangle::AdjustBottom respect empty stateNoel Grandin
and make non-inline so it is easy to disable this for debugging, if need be Change-Id: I9a3f7a0356ab625681419f74af0b9884624f3642 Reviewed-on: https://gerrit.libreoffice.org/75336 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-10make tools::Rectangle::AdjustRight respect empty stateNoel Grandin
and make non-inline so it is easy to disable this for debugging, if need be Change-Id: I69c717be91712b73e9d3b8f9c83d26305c052bd5 Reviewed-on: https://gerrit.libreoffice.org/75300 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-09make tools::Rectangle::shrink respect empty stateNoel Grandin
and make non-inline so it is easy to disable this for debugging, if need be Change-Id: Id529037e82b2fdd8c2120877a44fc7e069fc8406 Reviewed-on: https://gerrit.libreoffice.org/75298 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-08make tools::Rectangle::expandBy respect empty stateNoel Grandin
and make non-inline so it is easy to disable this for debugging, if need be Change-Id: Ib383bb990ddcd835ff37e98893e44156287e0488 Reviewed-on: https://gerrit.libreoffice.org/75227 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-12Revert "improve empty tools::Rectangle (width)"Noel Grandin
This reverts commit a46a257794f1f53b294735fc876c394be23a3811. Too many issues, I'm going to try landing this in smaller pieces to make it easier to fix regressions Change-Id: Ie5e8979838017af86c119c887b580385ba068d54 Reviewed-on: https://gerrit.libreoffice.org/73859 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-07improve empty tools::Rectangle (width)Noel Grandin
This is the width part, the height part will come next. Instead of storing "empty" as a special value (which is easy to get wrong, eg. some image filters pass in that special value, expecting it to be a valid width), just use separate boolean values for width and height empty. Also lots of code was calling GetBottom() or GetRight() on an empty rectangle, getting back that magic value and doing calculations on it, resulting in completely bogus data. So (1) make the various Rectangle methods do something reasonable when the empty flags are set (2) fix various other code to handle empty better (3) assert when code accesses Bottom or Right and the empty flag is set. Change-Id: I1163378cd2773dd8b386210f83400bb6b4701069 Reviewed-on: https://gerrit.libreoffice.org/73564 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-04-03tdf#124155 change "gradient tab page" - increment & angle sliderTomaž Vajngerl
Remove slider for increments as the increments should better be left to "auto" and rarely modified (setting a value means it will use a limitied amount of increments, but auto effectively means as much as it is needed and can use the native backend for drawing). OTOH use a slider for setting the "angle" as it is already present in hatch tab page. Angle needs a slider as it is usually one of the main properties of a gradient (especially linear). Increase the tab pages a bit (10px on every side) to have a bit of breating space for all the widgets. Change-Id: I66167fe2c97b53bc3627237279332bdd59fb03d7 Reviewed-on: https://gerrit.libreoffice.org/70175 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2018-10-17tdf#42949 Fix IWYU warnings in include/tools/*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I9dc920e9388f9e2aa4dcae1f0b3f7562d08f7f70 Reviewed-on: https://gerrit.libreoffice.org/61809 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-05-19Revert "tools: test Pair"Noel Grandin
This reverts commit 99dbaba70afb91ed3961f9ff627c35bf54d66bef. Let's land this again once Stephan's comments in https://gerrit.libreoffice.org/#/c/54189/ have been addressed Change-Id: I4230e4ce59a46379548bb510e433c68b021e896c Reviewed-on: https://gerrit.libreoffice.org/54414 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-05-16tools: test PairChris Sherlock
Change-Id: I03e48c134ec9b8fc53c247ced231f209e1205cb1 Reviewed-on: https://gerrit.libreoffice.org/54189 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-07Revert "long->sal_Int32 in tools/gen.hxx"Stephan Bergmann
This reverts commit 8bc951daf79decbd8a599a409c6d33c5456710e0. As discussed at <https://lists.freedesktop.org/archives/libreoffice/2018-April/079955.html> "long->sal_Int32 in tools/gen.hxx", that commit caused lots of problems with signed integer overflow, and the original plan was to redo it to consistently use sal_Int64 instead of sal_Int32. <https://gerrit.libreoffice.org/#/c/52471/> "sal_Int32->sal_Int64 in tools/gen.hxx" tried that. However, it failed miserably on Windows, causing odd failures like not writing out Pictures/*.svm streams out into .odp during CppunitTest_sd_export_ooxml2. So the next best approach is to just revert the original commit, at least for now. Includes revert of follow-up 8c50aff2175e85c54957d98ce32af40a3a87e168 "Fix Library_vclplug_qt5". Change-Id: Ia8bf34272d1ed38aac00e5d07a9d13fb03f439ae Reviewed-on: https://gerrit.libreoffice.org/52532 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-04-03long->sal_Int32 in tools/gen.hxxNoel Grandin
which triggered a lot of changes in sw/ Change-Id: Ia2aa22ea3f76463a85ea077a411246fcfed00bf6 Reviewed-on: https://gerrit.libreoffice.org/48806 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-13ofz#6843 Integer-overflowCaolán McNamara
Change-Id: I3984253ac3e5eaf0be7b10c8ba95d50e6bd9ce5d Reviewed-on: https://gerrit.libreoffice.org/51175 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-03-08loplugin:unusedmethodsNoel Grandin
Change-Id: Id6b4edd265cb6bef31c72e2a0a440211d51c7c33 Reviewed-on: https://gerrit.libreoffice.org/50900 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-05drop long& returning methods in PointNoel Grandin
Change-Id: I5d23191fd5a549b867213acedf9d56c233e2fb13 Reviewed-on: https://gerrit.libreoffice.org/50761 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-03drop old tools/gen methodsNoel Grandin
Change-Id: I9b9d1503b476f84e91fa283e523875b562c6b837 Reviewed-on: https://gerrit.libreoffice.org/50166 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-28drop old tools/gen methods in reportdesign..xmloffNoel Grandin
Change-Id: I398831c526ba51d861557fa6c13c0e2fb44dfbe0 Reviewed-on: https://gerrit.libreoffice.org/50447 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-26move MovePoint and MoveRect into Rectangle and PointNoel Grandin
Change-Id: Ie75c7c10288da00aac89479879e0b9fb1a4459b2 Reviewed-on: https://gerrit.libreoffice.org/50247 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-21loplugin:changetoolsgen in swNoel Grandin
Change-Id: If07efe4c15cfc28df38a9327856d39313ca78d50 Reviewed-on: https://gerrit.libreoffice.org/50078 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-16rename MoveFoo to AdjustFoo in Point/Rect/SizeNoel Grandin
<sberg> noel_grandin, "MoveLeft" is a somewhat misleading function name in dd4fc3b1e3f8a7c69a44c26715b2e3cdb22aede9 <noel_grandin> sberg, better ideas? <sberg> AdjustLeft etc., like the AdjustWidth/Height? <noel_grandin> sberg, sure, np Change-Id: I89e281b5c7421825098e5ad5a3550c774300938c Reviewed-on: https://gerrit.libreoffice.org/49818 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-15introduce Move/Adjust methods to Point,Rect,SizeNoel Grandin
to make my following changes with the changetoolsgen plugin easier to read Change-Id: I514bbea00b8907cc94c4218ca6ab1473bd9efd61 Reviewed-on: https://gerrit.libreoffice.org/49793 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-10make Pair protected base in Pair/Size/SelectionNoel Grandin
as part of cleaning up the use of the non-const-ref returning methods. i.e. methods like long& X() And make the classes final. Change-Id: Ice0aa1932124e77f5ed672b527c2a092ec80c481 Reviewed-on: https://gerrit.libreoffice.org/49475 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-09add setter methods to tools::RectangleNoel Grandin
intended to replace the existing methods that return mutable ref And add the clang rewriter I will use to do most of the work. Change-Id: If00be13da5c16c07671cedbcfea21528bac33c8a Reviewed-on: https://gerrit.libreoffice.org/49430 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-06Avoid signed integer overflow during BrowseBox::AutoSizeLastColumnStephan Bergmann
Observed with UBSan with `soffice --base`, "Finish", "Save", "Tables", "Create Table in Design View...": > include/tools/gen.hxx:485:37: runtime error: signed integer overflow: 288 + 9223372036854775803 cannot be represented in type 'long' > #0 0x7fe2d7f827dd in tools::Rectangle::Rectangle(Point const&, Size const&) include/tools/gen.hxx:485:37 > #1 0x7fe2d7f73833 in BrowseBox::ImplFieldRectPixel(long, unsigned short) const svtools/source/brwbox/brwbox1.cxx:2039:12 > #2 0x7fe2d7f57d46 in BrowseBox::GetFieldRectPixel(long, unsigned short, bool) const svtools/source/brwbox/brwbox1.cxx:1977:29 > #3 0x7fe2d7f42bdb in BrowseBox::GetFieldRect(unsigned short) const svtools/source/brwbox/brwbox1.cxx:2068:12 > #4 0x7fe2d7f4502b in BrowseBox::SetColumnWidth(unsigned short, unsigned long) svtools/source/brwbox/brwbox1.cxx:542:19 > #5 0x7fe2d7f48d18 in BrowseBox::AutoSizeLastColumn() svtools/source/brwbox/brwbox1.cxx:633:9 > #6 0x7fe2d7fd299c in BrowseBox::Resize() svtools/source/brwbox/brwbox2.cxx:537:5 > #7 0x7fe2d807ee7a in svt::EditBrowseBox::Resize() svtools/source/brwbox/editbrowsebox.cxx:1095:20 > #8 0x7fe2cdbe5711 in vcl::Window::ImplCallResize() vcl/source/window/event.cxx:522:5 > #9 0x7fe2ce1c8f71 in vcl::Window::Show(bool, ShowFlags) vcl/source/window/window.cxx:2261:13 > #10 0x7fe25d27b58f in dbaui::OTableDesignView::initialize() dbaccess/source/ui/tabledesign/TableDesignView.cxx:199:22 > #11 0x7fe25d23403b in dbaui::OTableController::impl_initialize() dbaccess/source/ui/tabledesign/TableController.cxx:519:20 > #12 0x7fe25c3dd649 in dbaui::OGenericUnoController::initialize(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&) dbaccess/source/ui/browser/genericcontroller.cxx:270:9 > #13 0x7fe25c3361cd in DBContentLoader::load(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XLoadEventListener> const&) dbaccess/source/ui/browser/dbloader.cxx:270:19 > #14 0x7fe28521412a in framework::LoadEnv::impl_loadContent() framework/source/loadenv/loadenv.cxx:1101:23 > #15 0x7fe285209e0a in framework::LoadEnv::startLoading() framework/source/loadenv/loadenv.cxx:375:20 > #16 0x7fe28520738b in framework::LoadEnv::loadComponentFromURL(com::sun::star::uno::Reference<com::sun::star::frame::XComponentLoader> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/loadenv/loadenv.cxx:161:14 > #17 0x7fe285332ba8 in (anonymous namespace)::Frame::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/frame.cxx:589:12 > #18 0x7fe285349f7d in non-virtual thunk to (anonymous namespace)::Frame::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/frame.cxx > #19 0x7fe25cba4dae in dbaui::DatabaseObjectView::doDispatch(comphelper::NamedValueCollection const&) dbaccess/source/ui/misc/databaseobjectview.cxx:140:41 > #20 0x7fe25cba3514 in dbaui::DatabaseObjectView::doCreateView(com::sun::star::uno::Any const&, rtl::OUString const&, comphelper::NamedValueCollection const&) dbaccess/source/ui/misc/databaseobjectview.cxx:97:16 > #21 0x7fe25cba667c in dbaui::TableDesigner::doCreateView(com::sun::star::uno::Any const&, rtl::OUString const&, comphelper::NamedValueCollection const&) dbaccess/source/ui/misc/databaseobjectview.cxx:233:40 > #22 0x7fe25cba2fec in dbaui::DatabaseObjectView::createNew(com::sun::star::uno::Reference<com::sun::star::sdbc::XDataSource> const&, comphelper::NamedValueCollection const&) dbaccess/source/ui/misc/databaseobjectview.cxx:79:16 > #23 0x7fe25c07bdfe in dbaui::OApplicationController::newElement(dbaui::ElementType, comphelper::NamedValueCollection const&, com::sun::star::uno::Reference<com::sun::star::lang::XComponent>&) dbaccess/source/ui/app/AppController.cxx:1968:40 > #24 0x7fe25c076546 in dbaui::OApplicationController::Execute(unsigned short, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) dbaccess/source/ui/app/AppController.cxx:1223:25 > #25 0x7fe25c3ef474 in dbaui::OGenericUnoController::executeChecked(com::sun::star::util::URL const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) dbaccess/source/ui/browser/genericcontroller.cxx:1061:13 > #26 0x7fe25c1dd91a in dbaui::OCreationList::onSelected(SvTreeListEntry const*) const dbaccess/source/ui/app/AppDetailView.cxx:309:81 > #27 0x7fe25c1e0de9 in dbaui::OCreationList::MouseButtonUp(MouseEvent const&) dbaccess/source/ui/app/AppDetailView.cxx:275:9 > #28 0x7fe2ce263026 in ImplHandleMouseEvent(VclPtr<vcl::Window> const&, MouseNotifyEvent, bool, long, long, unsigned long, unsigned short, MouseEventModifiers) vcl/source/window/winproc.cxx:711:25 > #29 0x7fe2ce298c14 in ImplHandleSalMouseButtonUp(vcl::Window*, SalMouseEvent const*) vcl/source/window/winproc.cxx:1994:12 > #30 0x7fe2ce27c59c in ImplWindowFrameProc(vcl::Window*, SalEvent, void const*) vcl/source/window/winproc.cxx:2329:20 > #31 0x7fe29bebd05a in SalFrame::CallCallback(SalEvent, void const*) const vcl/inc/salframe.hxx:275:29 > #32 0x7fe29be5cfad in GtkSalFrame::CallCallbackExc(SalEvent, void const*) const vcl/unx/gtk3/gtk3gtkframe.cxx:4318:16 > #33 0x7fe29be755ac in GtkSalFrame::signalButton(_GtkWidget*, _GdkEventButton*, void*) vcl/unx/gtk3/gtk3gtkframe.cxx:2620:16 > #34 0x7fe29b2a4a7a (/lib64/libgtk-3.so.0+0x233a7a) > #35 0x7fe2f60c373c in g_closure_invoke (/lib64/libgobject-2.0.so.0+0xf73c) > #36 0x7fe2f60d64dd (/lib64/libgobject-2.0.so.0+0x224dd) > #37 0x7fe2f60de69e in g_signal_emit_valist (/lib64/libgobject-2.0.so.0+0x2a69e) > #38 0x7fe2f60df66e in g_signal_emit (/lib64/libgobject-2.0.so.0+0x2b66e) > #39 0x7fe29b3efcd3 (/lib64/libgtk-3.so.0+0x37ecd3) > #40 0x7fe29b2a1a4d (/lib64/libgtk-3.so.0+0x230a4d) > #41 0x7fe29b2a3b6f in gtk_main_do_event (/lib64/libgtk-3.so.0+0x232b6f) > #42 0x7fe29adb1304 (/lib64/libgdk-3.so.0+0x37304) > #43 0x7fe29ae0ddf1 (/lib64/libgdk-3.so.0+0x93df1) > #44 0x7fe2f5deab76 in g_main_context_dispatch (/lib64/libglib-2.0.so.0+0x4ab76) > #45 0x7fe2f5deaf1f (/lib64/libglib-2.0.so.0+0x4af1f) > #46 0x7fe2f5deafab in g_main_context_iteration (/lib64/libglib-2.0.so.0+0x4afab) > #47 0x7fe29bcbdbca in GtkSalData::Yield(bool, bool) vcl/unx/gtk3/gtk3gtkdata.cxx:459:31 > #48 0x7fe29bccd0d2 in GtkInstance::DoYield(bool, bool) vcl/unx/gtk3/../gtk/gtkinst.cxx:410:29 > #49 0x7fe2cf6a65e3 in ImplYield(bool, bool) vcl/source/app/svapp.cxx:469:48 > #50 0x7fe2cf68ef1b in Application::Yield() vcl/source/app/svapp.cxx:534:5 > #51 0x7fe2cf68eda3 in Application::Execute() vcl/source/app/svapp.cxx:449:9 > #52 0x7fe2f7e1eef8 in desktop::Desktop::Main() desktop/source/app/app.cxx:1622:17 > #53 0x7fe2cf6d8687 in ImplSVMain() vcl/source/app/svmain.cxx:194:35 > #54 0x7fe2cf6e1f7f in SVMain() vcl/source/app/svmain.cxx:232:16 > #55 0x7fe2f7f466b4 in soffice_main desktop/source/app/sofficemain.cxx:166:12 > #56 0x42a83c in sal_main desktop/source/app/main.c:48:15 > #57 0x42a816 in main desktop/source/app/main.c:47:1 > #58 0x7fe2f67a6009 in __libc_start_main (/lib64/libc.so.6+0x21009) > #59 0x402e69 in _start (instdir/program/soffice.bin+0x402e69) Change-Id: I6a92a87b481396955cfc1f21bf88e2f0ad9cea9f Reviewed-on: https://gerrit.libreoffice.org/49279 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-28make RECT_EMPTY purely an implementation detailNoel Grandin
and make outside code use the IsEmpty/SetEmpty methods Change-Id: I4821d1bdceb99bb6a837a85ff2131003f9a160a5 Reviewed-on: https://gerrit.libreoffice.org/48584 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-19ofz#5475 Integer-overflowCaolán McNamara
Change-Id: I11d706c544698d57b75231e33e3d49f1ac1d4d73 Reviewed-on: https://gerrit.libreoffice.org/48159 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-01-12More loplugin:cstylecast: toolsStephan Bergmann
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable loplugin:cstylecast for some more cases" plus solenv/clang-format/reformat-formatted-files Change-Id: Ifb9ebc9623c8df14ea0d4c907001bd16c5b9ae59
2017-11-29lokdialog: Changed dialog painting to allow for modal dialogsPranav Kant
Split IDialogNotifier from IDialogRenderable and make SfxViewShell implement it. We now just send the dialog UNO command to the backend and wait for core to emit a 'created' dialog callback which signals dialog creation in the backend. The client is then supposed to send the paint commands for rendering the dialog. Change-Id: I1bfbce83c17955fa0212408376d6bcd1b2d2d1dd
2017-03-31tdf#82580 tools: rename Rectangle to tools::RectangleMiklos Vajna
Mostly generated using make check COMPILER_EXTERNAL_TOOL=1 CCACHE_PREFIX=clang-rename-wrapper RENAME_ARGS="-qualified-name=Rectangle -new-name=tools::Rectangle" Except some modules have their own foo::tools namespace, so there have to use ::tools::Rectangle. This commit just moves the class from the global namespace, it does not update pre/postwin.h yet. Change-Id: I42b2de3c6f769fcf28cfe086f98eb31e42a305f2 Reviewed-on: https://gerrit.libreoffice.org/35923 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2016-12-07tools: document our favorite rectangle class tooMichael Stahl
Change-Id: Id7698a1e2a8fc1ca6bf35868311fc5b284d45145
2016-11-09Make sure not to compare different subclasses of PairStephan Bergmann
(A related option would be to make those subclasses derive privately from Pair, but there are a few places that generically operate on any Pair instances, like Pair::Read/WritePair or SvxShape::ForceMetricToItemPoolMetric/100th_mm.) Change-Id: I6c638fe65ee5684593fdeab29b144f547e173f4e
2016-08-23vcl: Adds backend tests to check for correct renderingTomaž Vajngerl
Collection of test that check rendering of VCL backend. This works by rendering primitives to the VirtualDevice, outputing the result to a Bitmap and checking the rendering by comparing pixels. This should warn when the primitive is drawn to a wrong position or if it is the wrong size or color. It also test some rendering tricks like XOR drawing. Currently this is not implemented as a CPPUnit test but separately, as its own executable file so we can check the results visually. The idea is also to add the tests into LO for the user to test or automatically to test the backend on first start (especially useful to test the OpenGL backend as some drivers could have unexpected behaviour). Change-Id: I2a565b9986ca68850e2752466e3cd5fc71991ba6
2016-02-09Remove excess newlinesChris Sherlock
A ridiculously fast way of doing this is: for i in $(pcregrep -l -M -r --include='.*[hc]xx$' \ --exclude-dir=workdir --exclude-dir=instdir '^ {3,}' .) do perl -0777 -i -pe 's/^ {3,}/ /gm' $i done Change-Id: Iebb93eccbee9e4fc5c4380474ba595858a27ac2c Reviewed-on: https://gerrit.libreoffice.org/22224 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2015-12-21loplugin:unusedmethodsNoel Grandin
Change-Id: Ifafdaf6da0225f244853a0042a6458643b570623
2015-12-10Fix order of SAL_WARN_UNUSED and DLLPUBLIC for clang-clStephan Bergmann
...which, somewhat arbitrarily, expects GNU extension __attribute__((...)) to come before MSVC extension __declspec(...) with MaybeParseGNUAttributes(attrs); MaybeParseMicrosoftDeclSpecs(attrs); in Parser::ParseClassSpecifier (lib/Parse/ParseDeclCXX.cpp). Change-Id: I5936558c8fc08b278575b6c678cde6eccd4647fb
2015-08-31tdf#93794 - spin buttons not rendered in gtk2/gtk3Noel Grandin
for penance, introduce a unit test Change-Id: I2c40285732be665e179c477e6e7603aa6f8be5d7
2015-08-25simplify some declarationsNoel Grandin
Change-Id: I348e7f984e5e8b4b915d11de8182da07a6356f8d
2015-08-25add some comments to Rectangle mutation methodsNoel Grandin
Change-Id: I7e1d737fc1e7a431afd3cde74c2c974e0cbef9ef
2015-08-20remove dead commentNoel Grandin
Change-Id: I244e52ec494546383dcb1981c41f2d388ae7d85a
2015-07-07vcl: document Rectangle's get vs Get differencesMiklos Vajna
Change-Id: Icf08f96c8d21f98a6f5a5a83b07447755f32257a
2015-07-02loplugin:unusedmethods toolsNoel Grandin
Change-Id: I45f5489233879126d4f9ee3d01db504d950bb597 Reviewed-on: https://gerrit.libreoffice.org/16656 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-05-13Add expand (contract) to Rectangle as it is often used.Tomaž Vajngerl
Change-Id: I98e2738a1f79a1157c18b6003f70955e071f1654
2015-03-23Rectangle::toString(): output position, then sizeMiklos Vajna
This order seems to be less confusing. Change-Id: I95a7e3e2f6244915c820bb86e67745a777714e2d
2015-02-23Add Rectangle::toString()Miklos Vajna
There were already 5 versions of this in sw, 4 for SwRect, one for Rectangle. Change-Id: Icf8c78f9973d940a4d180b6f52dda9ea1be86c14
2014-11-01tools & vcl: move OutputDevice::ImplRotatePos() to Point::RotateAbout()Chris Sherlock
OutputDevice has a private function that rotates a point around another point. However, there is no real reason why OutputDevice should be responsible for this - it's really the responsibility of the Point class in the tools module. Therefore, I've moved this functionality out of OutputDevice and into Point, but I've renamed it from the rather confusing name "ImplRotatePos" to "RotateAround", which is what it actually does. Change-Id: If12fb40a7b476653224d4edfc01887bc91a80c7d Reviewed-on: https://gerrit.libreoffice.org/12171 Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
2014-07-08Include <algorithm> for std::min() and max()Tor Lillqvist
Change-Id: I339577c5b34de0cf3e5dcc644ec1dc080c35d01c
2014-04-18fdo#77088 WMF - replace 32-bit min/max assumption with constTomaž Vajngerl
Added RECT_MIN and RECT_MAX which represent the minimum and maximum value a Rectangle object can hold. In WMF we used a 32-bit assumption what the min and max value could be (0x7fffffff, 0x80000000) which causes problems on 64-bit systems. Change-Id: Ic62daebbc2708cdeb7b0cf7b694bd9940eb98313
2014-03-15fdo#63154 Remove some solar.h referencesAlexandre Vicenzi
Remove some solar.h from tools. Replace sal_uLong by size_t, sal_uInt32 and sal_Int32. Change-Id: I38961db046337a3ea4ef75d64afa424d81391f34 Reviewed-on: https://gerrit.libreoffice.org/8582 Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org> Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
2014-02-24Replace exisiting TriState, AutoState with more generic TriStateStephan Bergmann
Change-Id: Ida05478aae5a379775c671e0c2f2851d820d78be
2014-02-04convert specialised SvStream::operator>> methods to ReadXXX methodsNoel Grandin
as preparation for converting the SvStream::operator>> methods on primitive types Change-Id: I62f134bced15c687d6e0d46924f56e8d1c3d95b9 Reviewed-on: https://gerrit.libreoffice.org/7798 Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>