Internal Redesign:
- Combined MPExpression and MPMutableExpression - Abstracted children of MPExpression into MPExpressionElement protocol - Abstracted most of MPExpressionLayout and MPFunctionLayout into common superclass MPLayout
This commit is contained in:
@@ -7,13 +7,15 @@
|
||||
//
|
||||
|
||||
#import "MPExpressionView.h"
|
||||
#import "MPExpressionLayout.h"
|
||||
#import "MPExpressionStorage.h"
|
||||
|
||||
#import "NSObject+MPStringTest.h"
|
||||
#import "MPExpressionLayout.h"
|
||||
|
||||
#import "MPSumFunction.h"
|
||||
|
||||
@interface MPExpressionView (MPCursor)
|
||||
@property (nonatomic, strong) NSTimer *cursorTimer;
|
||||
@end
|
||||
|
||||
@implementation MPExpressionView
|
||||
|
||||
#pragma mark Creation Methods
|
||||
@@ -47,23 +49,20 @@
|
||||
|
||||
- (void)initializeObjects
|
||||
{
|
||||
MPExpressionStorage *expressionStorage = [[MPExpressionStorage alloc] initWithSymbols:@[@"12 345", [[MPSumFunction alloc] init], [[MPSumFunction alloc] init]]];
|
||||
MPExpressionStorage *expressionStorage = [[MPExpressionStorage alloc] initWithElements:@[@"12345", [[MPSumFunction alloc] init], [[MPSumFunction alloc] init]]];
|
||||
_expressionStorage = expressionStorage;
|
||||
[self.expressionLayout setExpressionView:self];
|
||||
}
|
||||
|
||||
#pragma mark Properties
|
||||
|
||||
- (void)setExpressionStorage:(MPExpressionStorage *)expressionStorage
|
||||
- (BOOL)isFlipped
|
||||
{
|
||||
[_expressionStorage.expressionLayout setExpressionView:nil];
|
||||
_expressionStorage = expressionStorage;
|
||||
[_expressionStorage.expressionLayout setExpressionView:self];
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (MPExpressionLayout *)expressionLayout
|
||||
- (void)setExpressionStorage:(MPExpressionStorage *)expressionStorage
|
||||
{
|
||||
return self.expressionStorage.expressionLayout;
|
||||
_expressionStorage = expressionStorage;
|
||||
}
|
||||
|
||||
#pragma mark Drawing Methods
|
||||
@@ -74,11 +73,10 @@
|
||||
[[NSColor whiteColor] set];
|
||||
NSRectFill(self.bounds);
|
||||
[[NSColor blackColor] set];
|
||||
NSSize expressionSize = [self.expressionLayout sizeForAllSymbols];
|
||||
NSSize expressionSize = [self.expressionStorage.rootLayout size];
|
||||
CGFloat y = (self.bounds.size.height - expressionSize.height) / 2;
|
||||
NSLog(@"%f", self.bounds.origin.y);
|
||||
NSPoint point = NSMakePoint(self.bounds.origin.x, self.bounds.origin.y + y);
|
||||
[self.expressionLayout drawAllSymbolsAtPoint:point];
|
||||
[self.expressionStorage.rootLayout drawAtPoint:point];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
Reference in New Issue
Block a user