/* -*- 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/. * * This file incorporates work covered by the following license notice: * * 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 . */ #ifndef __com_sun_star_awt_WindowDescriptor_idl__ #define __com_sun_star_awt_WindowDescriptor_idl__ #include #include #include module com { module sun { module star { module awt { /** describes a window. */ published struct WindowDescriptor { /** specifies the type of window. */ com::sun::star::awt::WindowClass Type; /** specifies the name of the component service.

A zero length name means that the VCL creates a blank top, a container, or a simple window. The following service names are defined:

  • buttondialog
  • cancelbutton
  • checkbox
  • combobox
  • control
  • currencybox
  • currencyfield
  • datebox
  • datefield
  • dialog
  • dockingarea
  • dockingwindow
  • edit
  • errorbox
  • fixedbitmap
  • fixedimage
  • fixedline
  • fixedtext
  • floatingwindow
  • framewindow
  • groupbox
  • helpbutton
  • imagebutton
  • imageradiobutton
  • infobox
  • listbox
  • longcurrencybox
  • longcurrencyfield
  • menubutton
  • messbox
  • metricbox
  • metricfield
  • modaldialog
  • modelessdialog
  • morebutton
  • multilistbox
  • numericbox
  • numericfield
  • okbutton
  • patternbox
  • patternfield
  • pushbutton
  • querybox
  • radiobutton
  • scrollbar
  • scrollbarbox
  • spinbutton
  • spinfield
  • splitter
  • splitwindow
  • statusbar
  • systemchildwindow
  • tabcontrol
  • tabdialog
  • tabpage
  • timebox
  • timefield
  • toolbox
  • tristatebox
  • warningbox
  • window
  • workwindow

*/ string WindowServiceName; /** specifies the parent of the component.

If Parent == 0 && ParentIndex == -1, then the window is on the desktop.

*/ com::sun::star::awt::XWindowPeer Parent; /** specifies the index of the parent window, if available.

If Parent == 0 and this struct is a member of an array, then this is the offset from the beginning of the array to the parent. A value of -1 means desktop.

*/ short ParentIndex; /** specifies the position and size of the window.

This member is ignored if the window attribute is com::sun::star::awt::WindowAttribute::FULLSIZE.

*/ com::sun::star::awt::Rectangle Bounds; /** specifies the window attributes.

Use one value out of the constant group com::sun::star::awt::WindowAttribute.

*/ long WindowAttributes; }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */