On Tue, 2012-10-02 at 00:36 +0200, Markus Mohrhard wrote:
IMHO we need t least a similar set as Excel for the interoperability but maybe you have ideas or feel there are some missing.
:-) and just to head-off the 'we could theme this' idea - IMHO, while we will store the icons in the images.zip - I strongly recommend that they are not themed - so people's documents don't look different in different configurations of LibreOffice ;-) I attach a screenshot of the sets we have to interoperate with, and a sample document in case it helps - I re-ordered the sets into grouped categories to try to highlight the symbol re-use going on there. The arrows for example appear to be the same five arrows in different sets / combinations and re-coloured. Is suspect we could re-use the existing network-manager signal strength icon as well - if we can find it under CCBySA / CC0 / MPL etc. Many thanks ! Michael. -- michael.meeks@suse.com <><, Pseudo Engineer, itinerant idiot
Attachment:
conditional.xlsx
Description: MS-Excel 2007 spreadsheet
From ab905f6398df6655645eb43aab49fa3519ad4dd9 Mon Sep 17 00:00:00 2001 From: Michael Meeks <michael.meeks@suse.com> Date: Fri, 28 Sep 2012 11:50:31 +0100 Subject: [PATCH 1/3] improve conditional formatting height calculations. Change-Id: If5080892b820d268ffef22111d0caee217586b56 --- sc/source/ui/condformat/condformatdlg.cxx | 37 +++++++++++++---------------- 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/sc/source/ui/condformat/condformatdlg.cxx b/sc/source/ui/condformat/condformatdlg.cxx index 5c6d0f2..9fe983f 100644 --- a/sc/source/ui/condformat/condformatdlg.cxx +++ b/sc/source/ui/condformat/condformatdlg.cxx @@ -494,30 +494,25 @@ void ScCondFrmtEntry::HideColorScaleElements() void ScCondFrmtEntry::SetHeight() { - if(mbActive) + long nPad = LogicToPixel(Size(42,2), MapMode(MAP_APPFONT)).getHeight(); + + // Calculate maximum height we need from visible widgets + sal_uInt16 nChildren = GetChildCount(); + + long nMaxHeight = 0; + for(sal_uInt16 i = 0; i < nChildren; i++) { - Size aSize = GetSizePixel(); - switch (meType) - { - case CONDITION: - case FORMULA: - aSize.Height() = 120; - break; - case COLORSCALE: - aSize.Height() = 200; - break; - case DATABAR: - aSize.Height() = 200; - break; - default: - break; - } - SetSizePixel(aSize); + Window *pChild = GetChild(i); + if(!pChild || !pChild->IsVisible()) + continue; + Point aPos = pChild->GetPosPixel(); + Size aSize = pChild->GetSizePixel(); + nMaxHeight = std::max(aPos.Y() + aSize.Height(), nMaxHeight); } - else + Size aSize = GetSizePixel(); + if(nMaxHeight > 0) { - Size aSize = GetSizePixel(); - aSize.Height() = 40; + aSize.Height() = nMaxHeight + nPad; SetSizePixel(aSize); } } -- 1.7.10.4