| /************************************************************** |
| * |
| * 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_XGridColumn_idl__ |
| #define __com_sun_star_awt_grid_XGridColumn_idl__ |
| |
| #include <com/sun/star/lang/XComponent.idl> |
| #include <com/sun/star/style/HorizontalAlignment.idl> |
| #include <com/sun/star/lang/IllegalArgumentException.idl> |
| #include <com/sun/star/awt/grid/XGridColumnListener.idl> |
| #include <com/sun/star/util/XCloneable.idl> |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module awt { module grid { |
| |
| //============================================================================= |
| |
| /** The <type>XGridColumn</types> defines the properties and behavior of a column in a grid control |
| @since OpenOffice 3.3 |
| */ |
| published interface XGridColumn |
| { |
| /** implements life time control for the component |
| */ |
| interface ::com::sun::star::lang::XComponent; |
| |
| /** allows cloning the complete grid column |
| */ |
| interface ::com::sun::star::util::XCloneable; |
| |
| /** specifies an identifier of the column |
| |
| <p>This identifier will not be evaluated by the grid control, or its model. It is merely for clients |
| to identify particular columns.</p> |
| */ |
| [attribute] any Identifier; |
| |
| /** specifies the current width of the column. |
| */ |
| [attribute] long ColumnWidth; |
| |
| /** specifies the minimal width the column can have. |
| */ |
| [attribute] long MinWidth; |
| |
| /** specifies the maximal width the column can have. |
| */ |
| [attribute] long MaxWidth; |
| |
| /** controls whether or not the column's width is fixed or not. |
| |
| <p>If this is <TRUE/>, the user can interactively change the column's width. Also, the column is subject to |
| auto-resizing, if its <member>Flexibility</member> attribute is greater <code>0</code>.</p> |
| */ |
| [attribute] boolean Resizeable; |
| |
| /** specifies the flexibility of the column when it is automatically resized due to the grid control as a whole |
| being resized. |
| |
| <p>Specify <code>0</code> here if you do not want the column to be resized automatically.</p> |
| |
| <p>If a column has a flexibility greater than 0, it is set in relationship to the flexibility of all |
| other such columns, and the respective widths of the columns are changed in the same relationship.</p> |
| |
| <p>Note that a column's flexibility is ignored if its <member>Resizeable</member> attribute is |
| <FALSE/>.</p> |
| |
| <p>A column's flexibility cannot be negative, attempts to set a negative value will raise an exception.</p> |
| */ |
| [attribute] long Flexibility |
| { |
| set raises ( ::com::sun::star::lang::IllegalArgumentException ); |
| }; |
| |
| /** Specifies the horizontal alignment of the content in the control. |
| */ |
| [attribute] ::com::sun::star::style::HorizontalAlignment HorizontalAlign; |
| |
| /** A title is displayed in the colum header row if <method>UnoControlGridModel::ShowColumnHeader</method> is set to <true/>**/ |
| [attribute] string Title; |
| |
| /** is the help text associated with the column. |
| |
| <p>A grid control will usually display a column's help text as tooltip.</p> |
| */ |
| [attribute] string HelpText; |
| |
| /** denotes the index of the column within the grid column model it belongs to |
| |
| <p>If the column is not yet part of a column model, <code>Index</code> is -1.</p> |
| */ |
| [attribute, readonly] long Index; |
| |
| /** denotes the index of the data column which should be used to fetch this grid column's data |
| |
| <p>A grid control has a column model and a data model, both containing a possibly different number of columns. |
| The <code>DataColumnIndex</code> attribute defines the index of the column within the data model, which should |
| be used to retrieve actual data.</p> |
| |
| <p>Using this, you can do runtime changes to the column model, i.e. insertion and removal of columns, without |
| necessarily needing to adjust the data model, too.</p> |
| |
| <p>If <code>DataColumnIndex</code> is negative, the it will be ignored, then the column's index within its |
| column model, as determined by the <member>Index</member> attribute, will be used.</p> |
| */ |
| [attribute] long DataColumnIndex; |
| |
| /** Adds a listener for the <type>GridColumnEvent</type> posted after the grid changes. |
| @param Listener |
| the listener to add. |
| */ |
| void addGridColumnListener( [in] XGridColumnListener listener); |
| |
| //------------------------------------------------------------------------- |
| |
| /** Removes a listener previously added with <method>addColumnListener()</method>. |
| @param Listener |
| the listener to remove. |
| */ |
| void removeGridColumnListener( [in] XGridColumnListener listener); |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; }; |
| |
| #endif |