/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ #pragma once #include #include #include namespace svt::table { struct GridTableRenderer_Impl; //= GridTableRenderer /** a default implementation for the ->ITableRenderer interface This class is able to paint a table grid, table headers, and cell backgrounds according to the selected/active state of cells. */ class GridTableRenderer final : public ITableRenderer { private: ::std::unique_ptr< GridTableRenderer_Impl > m_pImpl; public: /** creates a table renderer associated with the given model @param _rModel the model which should be rendered. The caller is responsible for lifetime control, that is, the model instance must live at least as long as the renderer instance lives */ GridTableRenderer( ITableModel& _rModel ); virtual ~GridTableRenderer() override; /** determines whether or not to paint grid lines */ bool useGridLines() const; /** controls whether or not to paint grid lines */ void useGridLines( bool const i_use ); public: // ITableRenderer overridables virtual void PaintHeaderArea( vcl::RenderContext& _rDevice, const tools::Rectangle& _rArea, bool _bIsColHeaderArea, bool _bIsRowHeaderArea, const StyleSettings& _rStyle ) override; virtual void PaintColumnHeader( ColPos _nCol, vcl::RenderContext& _rDevice, const tools::Rectangle& _rArea, const StyleSettings& _rStyle ) override; virtual void PrepareRow( RowPos _nRow, bool i_hasControlFocus, bool _bSelected, vcl::RenderContext& _rDevice, const tools::Rectangle& _rRowArea, const StyleSettings& _rStyle ) override; virtual void PaintRowHeader( vcl::RenderContext& _rDevice, const tools::Rectangle& _rArea, const StyleSettings& _rStyle ) override; virtual void PaintCell( ColPos const i_col, bool i_hasControlFocus, bool _bSelected, vcl::RenderContext& _rDevice, const tools::Rectangle& _rArea, const StyleSettings& _rStyle ) override; virtual void ShowCellCursor( vcl::Window& _rView, const tools::Rectangle& _rCursorRect) override; virtual void HideCellCursor( vcl::Window& _rView ) override; virtual bool FitsIntoCell( css::uno::Any const & i_cellContent, OutputDevice& i_targetDevice, tools::Rectangle const & i_targetArea ) const override; virtual bool GetFormattedCellString( css::uno::Any const & i_cellValue, OUString & o_cellString ) const override; private: struct CellRenderContext; void impl_paintCellContent( CellRenderContext const & i_context ); void impl_paintCellImage( CellRenderContext const & i_context, Image const & i_image ); void impl_paintCellText( CellRenderContext const & i_context, OUString const & i_text ); }; } // namespace svt::table /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ /collabora/dcm-7.5
LibreOffice 核心代码仓库文档基金会
summaryrefslogtreecommitdiff
path: root/sc/sdi
AgeCommit message (Expand)Author
2021-06-15editengine-columns: add sidebar property panelMike Kaganski
2021-05-07tdf#90101 add .uno:PasteAsLinkscito
2021-05-03tdf#102255 add .uno:PasteTransposedscito
2021-03-08tdf#140796: Wrong English string for U+2060 characterJulien Nabet
2021-03-02Implemented MoveShapeHandle uno command for scmert
2021-02-25tdf#36466 sc UI: add new options to deselect hidden cellsTünde Tóth
2021-02-17tdf#36466 calc UI: add option to Select Visible Cells OnlyTünde Tóth
2021-01-30Added uno command for formula range selectionPranam Lashkari
2021-01-18Bring uno:RefreshView to CalcSamuel Mehrbrodt
2020-11-29added parameter to SheetRightToLeft commandPranam Lashkari
2020-11-26added new parameter in uno:MovePranam Lashkari
2020-11-13tdf#45705 rework zoom in and zoom out UI commands in CalcJim Raykowski
2020-10-12Online: Hide right clicked sheet.gokaysatir
2020-09-10Remove the useless Export sdi propertyMaxim Monastirsky
2020-07-24lok-freezepanes: Generalize FreezePanes* uno-commands...Dennis Francis
2020-07-17Add UI for blur radius in shadow panelA_GAN
2020-06-25tdf#133026: Tight integration of extensions - Additions Dialog first iterationYusuf Keten
2020-05-24tdf#101181: drop useless "GlowEffect" boolean propertyMike Kaganski
2020-05-14tdf#49247: add sidebar panel for soft edges effectMike Kaganski
2020-05-06tdf#101181: support for transparency attribute of glow effectMike Kaganski
2020-03-25tdf#101181: add sidebar panel for Glow effectMike Kaganski
2020-03-17sc lok: Implement execution of SID_SPELLCHECK_APPLY_SUGGESTIONTamás Zolnai
2020-03-17sc lok: Implement execution of SID_SPELLCHECK_IGNORE_ALLTamás Zolnai
2020-03-12tdf#95854 Same shortcut for insert and edit commentMaxim Monastirsky
2020-03-11tdf#125440 Allow raising text import dialog for pasteSamuel Mehrbrodt
2019-08-06Add "Copy hyperlink location" to sc context menusSamuel Mehrbrodt
2019-08-01Make QR Code callable in calc and writerShubham Goyal
2019-07-15tdf#62561 Add remove/edit hyperlink to calc context menuSamuel Mehrbrodt
2019-06-11tdf#42949 Fix IWYU warnings in include/svx/[sS][v-Z]*Gabor Kelemen
2019-04-02Remove unnecessary commentsSamuel Mehrbrodt
2019-03-26tdf#74664 : add Fourier analysis toolDennis Francis
2019-03-04Fix typo: KATAGANA -> KATAKANATakeshi Abe
2019-02-18Resolves tdf#121596 - Include a key combination to insert thin spacesheiko tietze
2018-11-30tdf#93005, tdf#100611, remove the incomplete ODC export featureMarkus Mohrhard
2018-11-28Fix SID_EXTRUSION_TOOGLE -> SID_EXTRUSION_TOGGLEAndrea Gelmini
2018-11-15tdf#107240 tdf#120432 Disable time/date entries in read-only/protected modeXisco Fauli
2018-10-24ScDoubleItem is deadNoel Grandin
2018-10-15tdf#120429 - Functions Insert Columns Exist Two Timesheiko tietze
2018-10-12Conditional formatting: Allow to set the icon set CF via .uno: command.Jan Holesovsky
2018-10-10tdf#120410: Disable insert/delete row/page break in read-only modeXisco Fauli
2018-08-24tdf#119236 Dimension dialog for Writer and CalcMaxim Monastirsky
2018-07-09tdf#114131 Remove insert rows/columns in read-only modeXisco Fauli
2018-07-06tdf#117903 Add signature line feature to calcSamuel Mehrbrodt