//
// MPExpressionStorage.h
// MathKit
//
// Created by Kim Wittenburg on 22.04.14.
// Copyright (c) 2014 Kim Wittenburg. All rights reserved.
//
#import "MPExpression.h"
/*!
@header
This file contains the MPExpressionStorage class.
*/
@class MPExpressionStorage, MPExpressionView, MPExpressionLayout;
/*!
@class MPExpressionStorage
@abstract An expression storage manages the contents of an expression view
and notifies it when the underlying expression changes.
*/
@interface MPExpressionStorage : MPExpression
/*!
@property expressionView
@abstract The receiver's expression view.
@discussion The expression view is the view that displays the contents of an
expression storage. Normally you should not call the setter of
this property. It is automatically assigned when the @link
//apple_ref/occ/instp/MPExpressionView/expressionStorage@/link
property of the respective @link
//apple_ref/occ/cl/MPExpressionView@/link instance is set.
When this property is set the receiver assumes that the
displaying expression view has changed (regardless of wether the
actual value of the property changed or not). It then adapts to
the properties of the new expression view and discards the
current root layout.
*/
@property (nonatomic, weak) MPExpressionView *expressionView;
/*!
@property rootLayout
@abstract The receiver's root layout.
@discussion The root layout is the root node of the layout tree that draws
the receiver's contents. For more information see the
documentation on the @link
//apple_ref/occ/cl/MPLayout@/link class.
*/
@property (nonatomic, strong) MPExpressionLayout *rootLayout;
@end