/* -*- 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 . */ #ifndef __com_sun_star_awt_grid_UnoControlGridModel_idl__ #define __com_sun_star_awt_grid_UnoControlGridModel_idl__ #include #include #include #include #include #include #include module com { module sun { module star { module awt { module grid { /** specifies the standard model of a UnoControlGrid control. @since OOo 3.3 */ published service UnoControlGridModel { /** specifies the standard model of a com::sun::star::awt::UnoControl. */ service com::sun::star::awt::UnoControlModel; /** Specifies whether the grid control should display a special header column.

The default value is `FALSE`

*/ [property] boolean ShowRowHeader; /** specifies the width of the row header column, if applicable.

The width is specified in application font units - see com::sun::star::util::MeasureUnit.

The value given here is ignored if #ShowRowHeader is `FALSE`.

*/ [property] long RowHeaderWidth; /** Specifies whether the grid control should display a title row.

The default value is `TRUE`

*/ [property] boolean ShowColumnHeader; /** specifies the height of the column header row, if applicable.

The height is specified in application font units - see com::sun::star::util::MeasureUnit.

The value given here is ignored if #ShowColumnHeader is `FALSE`.

If the property is `VOID`, the grid control shall automatically determine a height which conveniently allows, according to the used font, to display one line of text.

*/ [property, maybevoid] long ColumnHeaderHeight; /** Specifies the height of rows in the grid control.

The height is specified in application font units - see com::sun::star::util::MeasureUnit.

*/ [property, maybevoid] long RowHeight; /** Specifies the XGridColumnModel that is providing the column structure.

You can implement your own instance of XGridColumnModel or use the DefaultGridColumnModel.

The column model is in the ownership of the grid model: When you set a new column model, or dispose the grid model, then the (old) column model is disposed, too.

The default for this property is an empty instance of the DefaultGridColumnModel.

*/ [property] XGridColumnModel ColumnModel; /** Specifies the XGridDataModel that is providing the hierarchical data.

You can implement your own instance of XGridDataModel or use the DefaultGridDataModel.

The data model is in the ownership of the grid model: When you set a new data model, or dispose the grid model, then the (old) data model is disposed, too.

The default for this property is an empty instance of the DefaultGridDataModel.

*/ [property] XGridDataModel GridDataModel; /** Specifies the vertical scrollbar mode.

The default value is `FALSE`

*/ [property] boolean HScroll; /** Specifies the horizontal scrollbar mode.

The default value is `FALSE`

*/ [property] boolean VScroll; /** Specifies that the control can be reached with the TAB key. */ [property] boolean Tabstop; /** Specifies the selection mode that is enabled for this grid control.

The default value is com::sun::star::view::SelectionType::SINGLE

*/ [property] ::com::sun::star::view::SelectionType SelectionModel; /** controls whether or not to paint horizontal and vertical lines between the grid cells. @see GridLineColor */ [property] boolean UseGridLines; /** specifies the color to be used when drawing lines between cells

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

@see UseGridLines */ [property, maybevoid] ::com::sun::star::util::Color GridLineColor; /** specifies the color to be used when drawing the background of row or column headers

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

*/ [property, maybevoid] ::com::sun::star::util::Color HeaderBackgroundColor; /** specifies the color to be used when drawing the text within row or column headers

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

*/ [property, maybevoid] ::com::sun::star::util::Color HeaderTextColor; /** specifies the color to be used when drawing the background of selected cells, while the control has the focus.

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

*/ [property, maybevoid] ::com::sun::star::util::Color ActiveSelectionBackgroundColor; /** specifies the color to be used when drawing the background of selected cells, while the control does not have the focus.

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

*/ [property, maybevoid] ::com::sun::star::util::Color InactiveSelectionBackgroundColor; /** specifies the color to be used when drawing the text of selected cells, while the control has the focus.

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

*/ [property, maybevoid] ::com::sun::star::util::Color ActiveSelectionTextColor; /** specifies the color to be used when drawing the text of selected cells, while the control does not have the focus.

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

*/ [property, maybevoid] ::com::sun::star::util::Color InactiveSelectionTextColor; /** specifies the colors to be used as background for data rows.

If this sequence is non-empty, the data rows will be rendered with alternating background colors: Assuming the sequence has n elements, each row will use the background color as specified by its number's remainder modulo n.

If this sequence is empty, all rows will use the same background color as the control as whole.

If this property has a value of `VOID`, rows will be painted in alternating background colors, every second row having a background color derived from the control's selection color.

*/ [property, maybevoid] sequence< ::com::sun::star::util::Color > RowBackgroundColors; /** specifies the vertical alignment of the content in the control. */ [property] com::sun::star::style::VerticalAlignment VerticalAlign; /** specifies the font attributes of the text in the control. */ [property] com::sun::star::awt::FontDescriptor FontDescriptor; /** specifies the color to be used when drawing cell texts

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

*/ [property, maybevoid] ::com::sun::star::util::Color TextColor; /** specifies the color to be used when drawing text lines (underlining and strikethrough)

If this property has a value of `VOID`, the grid control renderer will use some default color, depending on the control's style settings.

*/ [property, maybevoid] com::sun::star::util::Color TextLineColor; /** specifies the com::sun::star::text::FontEmphasis value of the text in the control. */ [property] short FontEmphasisMark; /** specifies the com::sun::star::text::FontRelief value of the text in the control. */ [property] short FontRelief; /** specifies the help text of the control. */ [property] string HelpText; /** specifies the help URL of the control. */ [property] string HelpURL; }; }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */