blob: 997f4e9ee06422d486e0261efa098a2c80bbac61 [file] [log] [blame]
/**************************************************************
*
* 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
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef __com_sun_star_awt_grid_UnoControlGridModel_idl__
#define __com_sun_star_awt_grid_UnoControlGridModel_idl__
#include <com/sun/star/awt/grid/XGridColumnModel.idl>
#include <com/sun/star/awt/grid/XGridDataModel.idl>
#include <com/sun/star/awt/UnoControlModel.idl>
#include <com/sun/star/view/SelectionType.idl>
#include <com/sun/star/awt/FontDescriptor.idl>
#include <com/sun/star/style/VerticalAlignment.idl>
#include <com/sun/star/util/Color.idl>
//=============================================================================
module com { module sun { module star { module awt { module grid {
//=============================================================================
/** specifies the standard model of a <type>UnoControlGrid</type> control.
@since OpenOffice 3.3
*/
published service UnoControlGridModel
{
/** specifies the standard model of an <type scope="com::sun::star::awt">UnoControl</type>. */
service com::sun::star::awt::UnoControlModel;
/** Specifies whether the grid control should display a special header column.
<p>The default value is <FALSE/></p>
*/
[property] boolean ShowRowHeader;
/** specifies the width of the row header column, if applicable.
<p>The width is specified in application font units - see <type scope="com::sun::star::util">MeasureUnit</type>.</p>
<p>The value given here is ignored if <member>ShowRowHeader</member> is <FALSE/>.</p>
*/
[property] long RowHeaderWidth;
/** Specifies whether the grid control should display a title row.
<p>The default value is <TRUE/></p>
*/
[property] boolean ShowColumnHeader;
/** specifies the height of the column header row, if applicable.
<p>The height is specified in application font units - see <type scope="com::sun::star::util">MeasureUnit</type>.</p>
<p>The value given here is ignored if <member>ShowColumnHeader</member> is <FALSE/>.</p>
<p>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.</p>
*/
[property, maybevoid] long ColumnHeaderHeight;
/** Specifies the height of rows in the grid control.
<p>The height is specified in application font units - see <type scope="com::sun::star::util">MeasureUnit</type>.</p>
*/
[property, maybevoid] long RowHeight;
/** Specifies the <type>XGridColumnModel</type> that is providing the column structure.
<p>You can implement your own instance of <type>XGridColumnModel</type> or use
the <type>DefaultGridColumnModel</type>.
<p>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.</p>
<p>The default for this property is an empty instance of the <type>DefaultGridColumnModel</type>.</p>
*/
[property] XGridColumnModel ColumnModel;
/** Specifies the <type>XGridDataModel</type> that is providing the hierarchical data.
<p>You can implement your own instance of <type>XGridDataModel</type> or use
the <type>DefaultGridDataModel</type>.
<p>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.</p>
<p>The default for this property is an empty instance of the <type>DefaultGridDataModel</type>.</p>
*/
[property] XGridDataModel GridDataModel;
/** Specifies the vertical scrollbar mode.
<p>The default value is <FALSE/></p>
*/
[property] boolean HScroll;
/** Specifies the horizontal scrollbar mode.
<p>The default value is <FALSE/></p>
*/
[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.
<p>The default value is <member scope="com::sun::star::view">SelectionType::SINGLE</member></p>
*/
[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
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
@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
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
*/
[property, maybevoid] ::com::sun::star::util::Color HeaderBackgroundColor;
/** specifies the color to be used when drawing the text within row or column headers
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
*/
[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.
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
*/
[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.
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
*/
[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.
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
*/
[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.
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
*/
[property, maybevoid] ::com::sun::star::util::Color InactiveSelectionTextColor;
/** specifies the colors to be used as background for data rows.
<p>If this sequence is non-empty, the data rows will be rendered with alternating background colors: Assuming
the sequence has <code>n</code> elements, each row will use the background color as specified by its number's
remainder modulo <code>n</code>.</p>
<p>If this sequence is empty, all rows will use the same background color as the control as whole.</p>
<p>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.</p>
*/
[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
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
*/
[property, maybevoid] ::com::sun::star::util::Color TextColor;
/** specifies the color to be used when drawing text lines (underlining and strikethrough)
<p>If this property has a value of <VOID/>, the grid control renderer will use some default color,
depending on the control's style settings.</p>
*/
[property, maybevoid] com::sun::star::util::Color TextLineColor;
/** specifies the <type scope="com::sun::star::text">FontEmphasis</type>
value of the text in the control.
*/
[property] short FontEmphasisMark;
/** specifies the <type scope="com::sun::star::text">FontRelief</type>
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