Aspose::Slides::MasterLayoutSlideCollection Class Referencefinal

Represents a collections of all layout slides of defined master slide. Extends LayoutSlideCollection class with methods for adding/inserting/removing/cloning/reordering layout slides in context of the individual collections of master's layout slides. More...

Inherits Aspose::Slides::LayoutSlideCollection, and Aspose::Slides::IMasterLayoutSlideCollection.

Public Member Functions

System::SharedPtr< ILayoutSlideAddClone (System::SharedPtr< ILayoutSlide > sourceLayout)
 Adds a copy of a specified layout slide to the end of the collection. More...
 
System::SharedPtr< ILayoutSlideInsertClone (int32_t index, System::SharedPtr< ILayoutSlide > sourceLayout)
 Inserts a copy of a specified layout slide to specified position of the collection. More...
 
System::SharedPtr< ILayoutSlideAdd (SlideLayoutType layoutType, System::String layoutName)
 Adds a new layout slide to the end of the collection. More...
 
System::SharedPtr< ILayoutSlideInsert (int32_t index, SlideLayoutType layoutType, System::String layoutName)
 Inserts a new layout slide to specified position of the collection. More...
 
void RemoveAt (int32_t index)
 Removes the element at the specified index of the collection. More...
 
void Reorder (int32_t index, System::SharedPtr< ILayoutSlide > layoutSlide)
 Moves layout slide from the collection to the specified position. More...
 
- Public Member Functions inherited from Aspose::Slides::LayoutSlideCollection
int32_t get_Count ()
 Returns the number of layout slides in a collection. Read-only int32_t. More...
 
bool get_IsSynchronized ()
 Returns a value indicating whether access to the collection is synchronized (thread-safe). Read-only bool. More...
 
System::SharedPtr< System::Objectget_SyncRoot ()
 Returns a synchronization root. Read-only object. More...
 
System::SharedPtr< IDOMObjectget_Parent_Immediate ()
 Returns Parent_Immediate object. Read-only IDOMObject. More...
 
System::SharedPtr< ILayoutSlideidx_get (int32_t index)
 Returns the layout slide by index. Read-only LayoutSlide. More...
 
System::SharedPtr< ILayoutSlideGetByType (SlideLayoutType type)
 Returns the first layout slide of specified type.

Parameters
typeA type of layout slide to find.
Returns
LayoutSlide with specified type or null if no layouts found.
More...
 
void Remove (System::SharedPtr< ILayoutSlide > value)
 Removes a layout from the collection. More...
 
void RemoveUnused ()
 Removes unused layout slides (layout slides whose HasDependingSlides is false). More...
 
System::SharedPtr< System::Collections::Generic::IEnumerator< System::SharedPtr< ILayoutSlide > > > GetEnumerator ()
 Returns an enumerator that iterates through the collection. More...
 
void CopyTo (System::ArrayPtr< System::SharedPtr< ILayoutSlide >> array, int32_t index)
 
- Public Member Functions inherited from Aspose::Slides::IGenericCollection< System::SharedPtr< Aspose::Slides::ILayoutSlide > >
virtual void CopyTo (System::ArrayPtr< System::SharedPtr< Aspose::Slides::ILayoutSlide > > array, int32_t index)=0
 Copies all elements from the collection into the specified array. More...
 
- Public Member Functions inherited from System::Object
 Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ~Object ()
 Destroys object. Frees all internal data structures. More...
 
 Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared refernce counter. More...
 
void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual int GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual String ToString () ASPOSE_CONST
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual void SetTemplateWeakPtr (unsigned int argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Protected Member Functions

 MasterLayoutSlideCollection (System::SharedPtr< MasterSlide > parentImmediate)
 
virtual void Add (System::SharedPtr< ILayoutSlide > value)
 
- Protected Member Functions inherited from Aspose::Slides::LayoutSlideCollection
System::SharedPtr< Presentationget_PresentationInternal ()
 
System::SharedPtr< IPresentationComponentget_Parent_IPresentationComponent ()
 
 LayoutSlideCollection (System::SharedPtr< IDOMObject > parentImmediate)
 
System::SharedPtr< LayoutSlideGetById (uint32_t id)
 
int32_t IndexOf (System::SharedPtr< ILayoutSlide > value)
 
void Insert (int32_t index, System::SharedPtr< ILayoutSlide > value)
 

Additional Inherited Members

- Public Types inherited from System::Collections::Generic::IEnumerable< System::SharedPtr< Aspose::Slides::ILayoutSlide > >
typedef IEnumerator< System::SharedPtr< Aspose::Slides::ILayoutSlide > > IEnumeratorType
 Enumerator type. More...
 
- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 
typedef System::Details::SharedMembersType shared_members_type
 structure to keep list of shared pointers contained in object. More...
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Impleemnts C# typeof(System.Object) construct. More...
 

Detailed Description

Represents a collections of all layout slides of defined master slide. Extends LayoutSlideCollection class with methods for adding/inserting/removing/cloning/reordering layout slides in context of the individual collections of master's layout slides.

Constructor & Destructor Documentation

◆ MasterLayoutSlideCollection()

Aspose::Slides::MasterLayoutSlideCollection::MasterLayoutSlideCollection ( System::SharedPtr< MasterSlide parentImmediate)
protected

Member Function Documentation

◆ Add() [1/2]

System::SharedPtr<ILayoutSlide> Aspose::Slides::MasterLayoutSlideCollection::Add ( SlideLayoutType  layoutType,
System::String  layoutName 
)
virtual

Adds a new layout slide to the end of the collection.

Parameters
layoutTypeLayout type for a new layout. Supported layout types: Title, TitleOnly, Blank, TitleAndObject, VerticalText, VerticalTitleAndText, TwoObjects, SectionHeader, TwoTextAndTwoObjects, TitleObjectAndCaption, PictureAndCaption, Custom. Other layout types are not supported now: Text, TwoColumnText, Table, TextAndChart, ChartAndText, Diagram, Chart, TextAndClipArt, ClipArtAndText, TextAndObject, ObjectAndText, Object, TextAndMedia, MediaAndText, ObjectOverText, TextOverObject, TextAndTwoObjects, TwoObjectsAndText, TwoObjectsOverText, FourObjects, ClipArtAndVerticalText, VerticalTitleAndTextOverChart, ObjectAndTwoObject, TwoObjectsAndObject.
layoutNameName for a new layout. If passed name is already in use the ArgumentException will be thrown. If null parameter is passed then name genarated atomatically in regards to passed layout type (for example "Title Slide" or "1_Title Slide", "2_..", etc.).
Exceptions
NotImplementedExceptionThrown if unsupported value of parameter layoutType is passed. Layout types that are not supported now: Text, TwoColumnText, Table, TextAndChart, ChartAndText, Diagram, Chart, TextAndClipArt, ClipArtAndText, TextAndObject, ObjectAndText, Object, TextAndMedia, MediaAndText, ObjectOverText, TextOverObject, TextAndTwoObjects, TwoObjectsAndText, TwoObjectsOverText, FourObjects, ClipArtAndVerticalText, VerticalTitleAndTextOverChart, ObjectAndTwoObject, TwoObjectsAndObject.
ArgumentExceptionThrown if layout name value layoutName is already in use in this collection of the layouts.

1) Added layout for value SlideLayoutType.Custom of layoutType contains no placeholders and no shapes. 2) Analogue of this method is method IGlobalLayoutSlideCollection::Add(IMasterSlide, SlideLayoutType, string) accessed with IPresentation::LayoutSlides property.

Returns
Added slide.

Implements Aspose::Slides::IMasterLayoutSlideCollection.

◆ Add() [2/2]

virtual void Aspose::Slides::MasterLayoutSlideCollection::Add ( System::SharedPtr< ILayoutSlide value)
protectedvirtual

◆ AddClone()

System::SharedPtr<ILayoutSlide> Aspose::Slides::MasterLayoutSlideCollection::AddClone ( System::SharedPtr< ILayoutSlide sourceLayout)
virtual

Adds a copy of a specified layout slide to the end of the collection.

Parameters
sourceLayoutSlide to clone.
Returns
Added slide.

1) New layout will be linked with parent master slide for this layout slides collection. So this is analogue of copy/paste with "Use Destination Theme" option in PowerPoint. 2) Analogue of this method is method IGlobalLayoutSlideCollection::AddClone(ILayoutSlide, IMasterSlide) accessed with IPresentation::LayoutSlides property.

Implements Aspose::Slides::IMasterLayoutSlideCollection.

◆ Insert()

System::SharedPtr<ILayoutSlide> Aspose::Slides::MasterLayoutSlideCollection::Insert ( int32_t  index,
SlideLayoutType  layoutType,
System::String  layoutName 
)
virtual

Inserts a new layout slide to specified position of the collection.

Parameters
indexIndex of new slide.
layoutTypeLayout type for a new layout. Supported layout types: Title, TitleOnly, Blank, TitleAndObject, VerticalText, VerticalTitleAndText, TwoObjects, SectionHeader, TwoTextAndTwoObjects, TitleObjectAndCaption, PictureAndCaption, Custom. Other layout types are not supported now: Text, TwoColumnText, Table, TextAndChart, ChartAndText, Diagram, Chart, TextAndClipArt, ClipArtAndText, TextAndObject, ObjectAndText, Object, TextAndMedia, MediaAndText, ObjectOverText, TextOverObject, TextAndTwoObjects, TwoObjectsAndText, TwoObjectsOverText, FourObjects, ClipArtAndVerticalText, VerticalTitleAndTextOverChart, ObjectAndTwoObject, TwoObjectsAndObject.
layoutNameName for a new layout. If passed name is already in use the ArgumentException will be thrown. If null parameter is passed then name genarated atomatically in regards to passed layout type (for example "Title Slide" or "1_Title Slide", "2_..", etc.).
Exceptions
NotImplementedExceptionThrown if unsupported value of parameter layoutType is passed. Layout types that are not supported now: Text, TwoColumnText, Table, TextAndChart, ChartAndText, Diagram, Chart, TextAndClipArt, ClipArtAndText, TextAndObject, ObjectAndText, Object, TextAndMedia, MediaAndText, ObjectOverText, TextOverObject, TextAndTwoObjects, TwoObjectsAndText, TwoObjectsOverText, FourObjects, ClipArtAndVerticalText, VerticalTitleAndTextOverChart, ObjectAndTwoObject, TwoObjectsAndObject.
ArgumentExceptionThrown if layout name value layoutName is already in use in this collection of the layouts.

Inserted layout for value SlideLayoutType.Custom of layoutType contains no placeholders and no shapes.

Returns
Inserted slide.

Implements Aspose::Slides::IMasterLayoutSlideCollection.

◆ InsertClone()

System::SharedPtr<ILayoutSlide> Aspose::Slides::MasterLayoutSlideCollection::InsertClone ( int32_t  index,
System::SharedPtr< ILayoutSlide sourceLayout 
)
virtual

Inserts a copy of a specified layout slide to specified position of the collection.

Parameters
indexIndex of new slide.
sourceLayoutSlide to clone.

New layout will be linked with parent master slide for this layout slides collection. So this is analogue of copy/paste with "Use Destination Theme" option in PowerPoint.

Returns
Inserted slide.

Implements Aspose::Slides::IMasterLayoutSlideCollection.

◆ RemoveAt()

void Aspose::Slides::MasterLayoutSlideCollection::RemoveAt ( int32_t  index)
virtual

Removes the element at the specified index of the collection.

Parameters
indexThe zero-based index of the element to remove.
Exceptions
PptxEditExceptionThrown if layout is used in presentation (its HasDependingSlides property is true).

1) To avoid throwing of the PptxEditException check layout's HasDependingSlides property before. 2) You can use also ILayoutSlide::Remove() method to simplify code.

Implements Aspose::Slides::IMasterLayoutSlideCollection.

◆ Reorder()

void Aspose::Slides::MasterLayoutSlideCollection::Reorder ( int32_t  index,
System::SharedPtr< ILayoutSlide layoutSlide 
)
virtual

Moves layout slide from the collection to the specified position.

Parameters
indexTarget index.
layoutSlideSlide to move.

Implements Aspose::Slides::IMasterLayoutSlideCollection.