//
// MPExpressionStorage.h
// MathPad
//
// 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 the
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 @link
//apple_ref/occ/cl/MPExpressionView@/link class is set.
When this property is set the receiver assumes that the
displaying expression view has changed. It then adapts to the
properties of the new expression view and discards the 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