#import "NMParagraph.h"
#import "NMText.h"
#import "NMEmphasizedText.h"

@interface NMParagraph() {}

- (id)currentItem;

@end


@implementation NMParagraph

+ (NMParagraph *)paragraph {
	return [[[NMParagraph alloc] init] autorelease];
}

- (void)addText:(NSString *)text {
	[[self currentItem] addText:text];
}

- (id)currentItem {
	if (currentItem == nil) {
		[self.items addObject:[NMText text]];
	}
	return currentItem = [self.items lastObject];
}

- (void)startOrCloseEmphasizedText {
	if ([currentItem isKindOfClass:[NMEmphasizedText class]]) {
		currentItem = nil;
		return;
	}
	[self.items addObject:[NMEmphasizedText text]];
	currentItem = [self.items lastObject];
}
@end