gridwin4.cxx (b3f79822) gridwin4.cxx (51b45b88)
1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance

--- 1222 unchanged lines hidden (view full) ---

1231 RowInfo* pThisRowInfo = &pRowInfo[nArrY];
1232
1233 nRow = pThisRowInfo->nRowNo;
1234
1235
1236 for (nCol=nX1; nCol<=nX2; nCol++)
1237 {
1238 CellInfo* pInfo = &pThisRowInfo->pCellInfo[nCol+1];
1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance

--- 1222 unchanged lines hidden (view full) ---

1231 RowInfo* pThisRowInfo = &pRowInfo[nArrY];
1232
1233 nRow = pThisRowInfo->nRowNo;
1234
1235
1236 for (nCol=nX1; nCol<=nX2; nCol++)
1237 {
1238 CellInfo* pInfo = &pThisRowInfo->pCellInfo[nCol+1];
1239 if ( pInfo->bAutoFilter && !pInfo->bHOverlapped && !pInfo->bVOverlapped )
1239 //if several columns merged on a row, there should be only one auto button at the end of the columns.
1240 //if several rows merged on a column, the button may be in the middle, so "!pInfo->bVOverlapped" should not be used
1241 if ( pInfo->bAutoFilter && !pInfo->bHOverlapped )
1240 {
1241 if (!pQueryParam)
1242 pQueryParam = new ScQueryParam;
1243
1244 sal_Bool bNewData = sal_True;
1245 if (pDBData)
1246 {
1247 SCCOL nStartCol;

--- 35 unchanged lines hidden (view full) ---

1283 if (nQuery > 0)
1284 if (pQueryParam->GetEntry(nQuery).eConnect != SC_AND)
1285 bSimpleQuery = sal_False;
1286 }
1287
1288 bool bArrowState = bSimpleQuery && bColumnFound;
1289 long nSizeX;
1290 long nSizeY;
1242 {
1243 if (!pQueryParam)
1244 pQueryParam = new ScQueryParam;
1245
1246 sal_Bool bNewData = sal_True;
1247 if (pDBData)
1248 {
1249 SCCOL nStartCol;

--- 35 unchanged lines hidden (view full) ---

1285 if (nQuery > 0)
1286 if (pQueryParam->GetEntry(nQuery).eConnect != SC_AND)
1287 bSimpleQuery = sal_False;
1288 }
1289
1290 bool bArrowState = bSimpleQuery && bColumnFound;
1291 long nSizeX;
1292 long nSizeY;
1291 pViewData->GetMergeSizePixel( nCol, nRow, nSizeX, nSizeY );
1293 SCCOL nStartCol= nCol;
1294 SCROW nStartRow = nRow;
1295 //if address(nCol,nRow) is not the start pos of the merge area, the value of the nSizeX will be incorrect, it will be the length of the cell.
1296 //should first get the start pos of the merge area, then get the nSizeX through the start pos.
1297 pDoc->ExtendOverlapped(nStartCol, nStartRow,nCol, nRow, nTab);//get nStartCol,nStartRow
1298 pViewData->GetMergeSizePixel( nStartCol, nStartRow, nSizeX, nSizeY );//get nSizeX
1299 nSizeY = pViewData->ToPixel(pDoc->GetRowHeight(nRow, nTab), pViewData->GetPPTY());
1292 Point aScrPos = pViewData->GetScrPos( nCol, nRow, eWhich );
1293
1294 aCellBtn.setBoundingBox(aScrPos, Size(nSizeX-1, nSizeY-1), bLayoutRTL);
1295 aCellBtn.setPopupLeft(bLayoutRTL); // #i114944# AutoFilter button is left-aligned in RTL
1296 aCellBtn.setDrawBaseButton(false);
1297 aCellBtn.setDrawPopupButton(true);
1298 aCellBtn.setHasHiddenMember(bArrowState);
1299 aCellBtn.draw();

--- 770 unchanged lines hidden ---
1300 Point aScrPos = pViewData->GetScrPos( nCol, nRow, eWhich );
1301
1302 aCellBtn.setBoundingBox(aScrPos, Size(nSizeX-1, nSizeY-1), bLayoutRTL);
1303 aCellBtn.setPopupLeft(bLayoutRTL); // #i114944# AutoFilter button is left-aligned in RTL
1304 aCellBtn.setDrawBaseButton(false);
1305 aCellBtn.setDrawPopupButton(true);
1306 aCellBtn.setHasHiddenMember(bArrowState);
1307 aCellBtn.draw();

--- 770 unchanged lines hidden ---