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

//--------------------------------------------------------------------------
SfxBoolItem VerticalTextFitToSizeTool SID_TEXT_FITTOSIZE_VERTICAL

[
	/* flags: */
	AutoUpdate = TRUE,
	Cachable = Cachable,
	FastCall = FALSE,
	HasCoreId = FALSE,
	HasDialog = FALSE,
	ReadOnlyDoc = FALSE,
	Toggle = FALSE,
	Container = FALSE,
	Synchron;

	Readonly = FALSE,
	/* config: */
	AccelConfig = TRUE,
	MenuConfig = TRUE,
	StatusBarConfig = FALSE,
	ToolBoxConfig = TRUE,
	GroupId = GID_FORMAT;
]

SvxObjectItem RulerObject SID_RULER_OBJECT

[
	/* flags: */
	AutoUpdate = FALSE,
	Cachable = Cachable,
	FastCall = FALSE,
	HasCoreId = FALSE,
	HasDialog = FALSE,
	ReadOnlyDoc = TRUE,
	Toggle = FALSE,
	Synchron;

	/* plugin: */
	Container = FALSE,

	/* api: */
	Export = TRUE,
	IsCollection = FALSE,
	Readonly = FALSE,
	RecordAbsolute = FALSE,
	RecordPerSet;

	/* config: */
	AccelConfig = FALSE,
	MenuConfig = FALSE,
	StatusBarConfig = FALSE,
	ToolBoxConfig = FALSE,
	GroupId = ;
]

SfxBoolItem OutputQualityContrast SID_OUTPUT_QUALITY_CONTRAST

[
	/* flags: */  
	AutoUpdate = FALSE, 
	Cachable = Cachable, 
	FastCall = FALSE, 
	HasCoreId = FALSE, 
	HasDialog = FALSE, 
	ReadOnlyDoc = TRUE, 
	Toggle = FALSE, 
	Container = FALSE, 
	Asynchron;

	Readonly = FALSE, 
	/* config: */ 
	AccelConfig = TRUE, 
	MenuConfig = TRUE, 
	StatusBarConfig = FALSE, 
	ToolBoxConfig = TRUE, 
	GroupId = GID_VIEW;
]
