/* -*- 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/.
 */

#ifndef __com_sun_star_table_TableBorder2_idl__
#define __com_sun_star_table_TableBorder2_idl__

#include <com/sun/star/table/BorderLine2.idl>


module com {  module sun {  module star {  module table {


/** contains the style settings of the border lines of all cells in a cell
    range.

    TableBorder2 is nearly identical to TableBorder, except that it has
    members of BorderLine2 instead of
    BorderLine.

    <p>In a queried structure, the flags in
    TableBorder2::Is...LineValid indicate that not all
    lines of the boxes have the same values.</p>

    <p>In a structure which is used for setting, these flags determine
    if the corresponding line should be set or if the old value should
    be kept.</p>

    @since LibreOffice 3.6
 */
published struct TableBorder2
{

    /** determines the line style at the top edge.
     */
    com::sun::star::table::BorderLine2 TopLine;


    /** specifies whether the value of
        TableBorder2::TopLine is used.
     */
    boolean IsTopLineValid;


    /** determines the line style at the bottom edge.
     */
    com::sun::star::table::BorderLine2 BottomLine;


    /** specifies whether the value of
        TableBorder2::BottomLine is used.
     */
    boolean IsBottomLineValid;


    /** determines the line style at the left edge.
     */
    com::sun::star::table::BorderLine2 LeftLine;


    /** specifies whether the value of
        TableBorder2::LeftLine is used.
     */
    boolean IsLeftLineValid;


    /** determines the line style at the right edge.
     */
    com::sun::star::table::BorderLine2 RightLine;


    /** specifies whether the value of
        TableBorder2::RightLine is used.
     */
    boolean IsRightLineValid;


    /** determines the line style of horizontal lines for the inner part
        of a cell range.
     */
    com::sun::star::table::BorderLine2 HorizontalLine;


    /** specifies whether the value of
        TableBorder2::HorizontalLine is used.
     */
    boolean IsHorizontalLineValid;


    /** determines the line style of vertical lines for the inner part
        of a cell range.
     */
    com::sun::star::table::BorderLine2 VerticalLine;


    /** specifies whether the value of
        TableBorder2::VerticalLine is used.
     */
    boolean IsVerticalLineValid;


    /** contains the distance between the lines and other contents.
     */
    short Distance;


    /** specifies whether the value of
        TableBorder2::Distance is used.
     */
    boolean IsDistanceValid;

};


}; }; }; };

#endif

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
