InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ILayoutObject Class Referenceabstract

#include <ILayoutObject.h>

Inheritance diagram for ILayoutObject:
IPMUnknown

Public Types

enum  { kDefaultIID = IID_ILAYOUTOBJECT }
 
enum  LayoutPolicy {
  kPreserveLayoutPolicy = -1, kNoLayoutPolicy = 0, kRecenterLayoutPolicy, kRepositionLayoutPolicy,
  kScaleLayoutPolicy, kGuideSliceLayoutPolicy, kUseMasterLayoutPolicy
}
 
typedef K2Vector< LayoutPolicyLayoutPolicyList
 

Public Member Functions

virtual LayoutPolicy GetLayoutPolicy () const =0
 
virtual void SetLayoutPolicy (LayoutPolicy policy)=0
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Detailed Description

The ILayoutObject is used to apply a layout policy to an object such that when the object is resized, the policy can be used to determine how to adapt the children of the object.

See Also
ILayoutPolicySuite.h, IFlowFacade.h

Member Typedef Documentation

Vector of layout policies to get/set to/from range of objects

Member Enumeration Documentation

Layout policies kPreserveLayoutPolicy is used when creating alternate layouts and simply means that the duplicated master pages and pages should have the same policies as the originals. kNoLayoutPolicy = Off kRecenterLayoutPolicy = Do not resize or scale anything. Simply reposition page items such that their distance to the center of the design area is maintained. kRepositionLayoutPolicy = Object-based. This policy not only repositions but may also resize page items depending on the page item constraints set up via IFlowFacade::SetConstraints. kScaleLayoutPolicy = Proportionally scales the contents of the page, maintaining aspect ratios, and centers the result to letter box/pillar box. kGuideSliceLayoutPolicy = Uses liquid/slicing guides to determine which items on the page are resizable. kUseMasterLayoutPolicy = If the master page's geometry is coincident with the layout page, then use the policy on the master page. Otherwise, kNoLayoutPolicy is used.

Member Function Documentation

virtual LayoutPolicy ILayoutObject::GetLayoutPolicy () const
pure virtual

Get the layout policy that is applied to this object (typically a page)

Returns
The layout policy
virtual void ILayoutObject::SetLayoutPolicy (LayoutPolicy policy)
pure virtual

Set the layout policy for this object (typically a page).

Parameters
policy[IN] The layout policy to apply.