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


package com.sun.star.wizards.common;

/**
 *
 * @author Ocke Janssen
 */
public class PropertyNames
{

    public static String PROPERTY_ENABLED = "Enabled";
    public static String PROPERTY_HEIGHT = "Height";
    public static String PROPERTY_HELPURL = "HelpURL";
    public static String PROPERTY_POSITION_X = "PositionX";
    public static String PROPERTY_POSITION_Y = "PositionY";
    public static String PROPERTY_LABEL = "Label";
    public static String PROPERTY_MULTILINE = "MultiLine";
    public static String PROPERTY_NAME = "Name";
    public static String PROPERTY_STEP = "Step";
    public static String PROPERTY_WIDTH = "Width";
    public static String PROPERTY_TABINDEX = "TabIndex";
    public static String PROPERTY_STATE = "State";
    public static String PROPERTY_IMAGEURL = "ImageURL";
    public static String PROPERTY_TITLE = "Title";
    public static String PROPERTY_BORDER = "Border";
    public static String PROPERTY_MOVEABLE = "Moveable";
    public static String PROPERTY_CLOSEABLE = "Closeable";
    public static String PROPERTY_ALIGN = "Align";
    public static String COMMAND = "Command";
    public static String COMMAND_TYPE = "CommandType";
    public static String SELECTED_ITEMS = "SelectedItems";
    public static String URL = "URL";
    public static String ACTIVE_CONNECTION = "ActiveConnection";
    public static String ASC = "ASC";
    public static String SEMI_COLON = ";";
    public static String EMPTY_STRING = "";
    public static String START = "start";
    public static String ORIENTATION = "Orientation";
    public static String READ_ONLY = "ReadOnly";
    public static String SPACE = " ";
    public static String STRING_ITEM_LIST = "StringItemList";
    public static String FONT_DESCRIPTOR = "FontDescriptor";
}
