###############################################################################
# Copyright (c) 2006, 2010 Soyatec (http://www.soyatec.com) and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     Soyatec - initial API and implementation
###############################################################################
FillLayoutAssistantPage_MARGIN_HEIGHT_LABEL=Margin Height:
FillLayoutAssistantPage_SPACING_GROUP_LABEL=Margin && Spacing
FillLayoutAssistantPage_MARGIN_WIDTH_LABEL=Margin Width:
FillLayoutAssistantPage_ORIENTATION_LABEL=Orientation
FillLayoutAssistantPage_SPACING_LABEL=Spacing:

GridDataAssistantPage_ALIGNS_GROUP_LABEL=Alignment
GridDataAssistantPage_COLUMN_SPAN_LABEL=Column Span:
GridDataAssistantPage_EXCLUDE_LABEL=Exclude
GridDataAssistantPage_H_GRAB_LABEL=Grab
GridDataAssistantPage_H_INDENT_LABEL=horizontal Indent:
GridDataAssistantPage_HEIGHT_LABEL=Height
GridDataAssistantPage_HINTS_GROUP_NAME=Hints
GridDataAssistantPage_HORIZONTAL_GROUP_LABEL=Horizontal
GridDataAssistantPage_INDENTS_GROUP_LABEL=Indents
GridDataAssistantPage_MIN_HEIGHT_LABEL=Height:
GridDataAssistantPage_MIN_WIDTH_LABEL=Width:
GridDataAssistantPage_MINIMUM_GROUP_LABEL=Minimum
GridDataAssistantPage_ROW_SPAN_LABEL=Row Span:
GridDataAssistantPage_SPANNING_GROUP_LABEL=Spanning
GridDataAssistantPage_V_ALIGN_LABEL=verticalAlignment
GridDataAssistantPage_V_GRAB_LABEL=Grab
GridDataAssistantPage_V_INDENT_LABEL=vertical Indent:
GridDataAssistantPage_VERTICAL_GROUP_LABEL=Vertical
GridDataAssistantPage_WIDTH_LABEL=Width

GridLayoutAssistantPage_EQUAL_WIDTH_LABEL=Make columns equal width
GridLayoutAssistantPage_H_SPACING_LABEL=Horizontal Spacing:
GridLayoutAssistantPage_M_BOTTOM_LABEL=Bottom:
GridLayoutAssistantPage_M_HEIGHT_LABEL=Margin Height:
GridLayoutAssistantPage_M_LEFT_LABEL=Left:
GridLayoutAssistantPage_M_RIGHT_LABEL=Right:
GridLayoutAssistantPage_M_TOP_LABEL=Top:
GridLayoutAssistantPage_M_WIDTH_LABEL=Margin Width:
GridLayoutAssistantPage_MARGINS_GROUP_LABEL=Margins
GridLayoutAssistantPage_MARGINS_SIDES_GROUP_LABEL=Margins for sides
GridLayoutAssistantPage_NUM_COLUMNS_LABEL=Number of columns
GridLayoutAssistantPage_SPACING_GROUP_LABEL=Spacing
GridLayoutAssistantPage_V_SPACING_LABEL=Vertical Spacing:

RowDataAssistantPage_EXCLUDE_LABEL=Exclude
RowDataAssistantPage_HEIGHT_LABEL=Height:
RowDataAssistantPage_SIZE_GROUP_LABEL=Size
RowDataAssistantPage_WIDTH_LABEL=Width:

RowLayoutAssistantPage_FILL_LABEL=fill
RowLayoutAssistantPage_JUSTIFY_LABEL=justify
RowLayoutAssistantPage_MARGIN_BOTTOM_LABEL=Margin Bottom:
RowLayoutAssistantPage_MARGIN_HEIGHT_LABEL=Margin Height:
RowLayoutAssistantPage_MARGIN_LEFT_LABEL=Margin Left:
RowLayoutAssistantPage_MARGIN_RIGHT_LABEL=Margin Right:
RowLayoutAssistantPage_MARGIN_SPACING_LABEL=Margin && Spacing
RowLayoutAssistantPage_MARGIN_TOP_LABEL=Margin Top:
RowLayoutAssistantPage_MARGIN_WIDTH_LABEL=Margin Width:
RowLayoutAssistantPage_MARGINS_GROUP_LABEL=Margins for sides
RowLayoutAssistantPage_OPTIONS_NAME=Options
RowLayoutAssistantPage_ORIENTATION_LABEL=Orientation
RowLayoutAssistantPage_PACK_LABEL=pack
RowLayoutAssistantPage_SPACING_LABEL=Spacing:
RowLayoutAssistantPage_WRAP_LABEL=wrap
