mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 00:11:26 +00:00
Implement length formatter in terms of NSMeasurementFormatter
This commit is contained in:
parent
de73db605c
commit
ea21e48218
4 changed files with 65 additions and 9 deletions
|
@ -70,7 +70,7 @@ typedef NSInteger NSLengthFormatterUnit;
|
|||
|
||||
- (NSString *) unitStringFromMeters: (double)numberInMeters usedUnit: (NSLengthFormatterUnit *)unit;
|
||||
|
||||
- (BOOL)getObjectValue: (id*)obj forString: (NSString *)string errorDescription: (NSString **)error;
|
||||
- (BOOL)getObjectValue: (id *)obj forString: (NSString *)string errorDescription: (NSString **)error;
|
||||
|
||||
@end
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/* Definition of class NSUnit
|
||||
Copyright (C) 2019 Free Software Foundation, Inc.
|
||||
|
||||
By: heron
|
||||
By: Gregory John Casamento <greg.casamento@gmail.com>
|
||||
Date: Mon Sep 30 15:58:21 EDT 2019
|
||||
|
||||
This file is part of the GNUstep Library.
|
||||
|
@ -58,7 +58,6 @@ extern "C" {
|
|||
NSString *_symbol;
|
||||
}
|
||||
|
||||
+ (instancetype)new;
|
||||
- (instancetype)init;
|
||||
- (instancetype)initWithSymbol:(NSString *) symbol;
|
||||
- (NSString *) symbol;
|
||||
|
|
|
@ -34,8 +34,9 @@
|
|||
self = [super init];
|
||||
if(self != nil)
|
||||
{
|
||||
_startDate = nil;
|
||||
_startDate = [NSDate date];
|
||||
_duration = 0.0;
|
||||
RETAIN(_startDate);
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
*/
|
||||
|
||||
#include <Foundation/NSLengthFormatter.h>
|
||||
#include <Foundation/NSUnit.h>
|
||||
#include <Foundation/NSMeasurement.h>
|
||||
#include <Foundation/NSMeasurementFormatter.h>
|
||||
|
||||
@implementation NSLengthFormatter
|
||||
|
||||
|
@ -77,25 +80,78 @@
|
|||
|
||||
- (NSString *) stringFromValue: (double)value unit: (NSLengthFormatterUnit)unit
|
||||
{
|
||||
return nil;
|
||||
NSUnit *u = nil;
|
||||
NSMeasurement *m = nil;
|
||||
NSMeasurementFormatter *mf = nil;
|
||||
|
||||
switch(unit)
|
||||
{
|
||||
case NSLengthFormatterUnitMillimeter:
|
||||
u = [NSUnitLength millimeters];
|
||||
break;
|
||||
case NSLengthFormatterUnitCentimeter:
|
||||
u = [NSUnitLength centimeters];
|
||||
break;
|
||||
case NSLengthFormatterUnitMeter:
|
||||
u = [NSUnitLength meters];
|
||||
break;
|
||||
case NSLengthFormatterUnitKilometer:
|
||||
u = [NSUnitLength kilometers];
|
||||
break;
|
||||
case NSLengthFormatterUnitInch:
|
||||
u = [NSUnitLength inches];
|
||||
break;
|
||||
case NSLengthFormatterUnitFoot:
|
||||
u = [NSUnitLength feet];
|
||||
break;
|
||||
case NSLengthFormatterUnitYard:
|
||||
u = [NSUnitLength yards];
|
||||
break;
|
||||
case NSLengthFormatterUnitMile:
|
||||
u = [NSUnitLength miles];
|
||||
break;
|
||||
}
|
||||
|
||||
m = [[NSMeasurement alloc] initWithDoubleValue: value
|
||||
unit: u];
|
||||
AUTORELEASE(m);
|
||||
mf = [[NSMeasurementFormatter alloc] init];
|
||||
AUTORELEASE(mf);
|
||||
[mf setUnitStyle: _unitStyle];
|
||||
[mf setNumberFormatter: _numberFormatter];
|
||||
|
||||
return [mf stringFromMeasurement: m];
|
||||
}
|
||||
|
||||
- (NSString *) stringFromMeters: (double)numberInMeters
|
||||
{
|
||||
return nil;
|
||||
NSUnit *u = nil;
|
||||
NSMeasurement *m = nil;
|
||||
NSMeasurementFormatter *mf = nil;
|
||||
|
||||
u = [NSUnitLength meters];
|
||||
m = [[NSMeasurement alloc] initWithDoubleValue: numberInMeters
|
||||
unit: u];
|
||||
AUTORELEASE(m);
|
||||
mf = [[NSMeasurementFormatter alloc] init];
|
||||
AUTORELEASE(mf);
|
||||
[mf setUnitStyle: _unitStyle];
|
||||
[mf setNumberFormatter: _numberFormatter];
|
||||
|
||||
return [mf stringFromMeasurement: m];
|
||||
}
|
||||
|
||||
- (NSString *) unitStringFromValue: (double)value unit: (NSLengthFormatterUnit)unit
|
||||
{
|
||||
return nil;
|
||||
return [self stringFromValue: value unit: unit];
|
||||
}
|
||||
|
||||
- (NSString *) unitStringFromMeters: (double)numberInMeters usedUnit: (NSLengthFormatterUnit *)unit
|
||||
{
|
||||
return nil;
|
||||
return [self stringFromValue: numberInMeters unit: NSLengthFormatterUnitMeter];
|
||||
}
|
||||
|
||||
- (BOOL)getObjectValue: (id*)obj forString: (NSString *)string errorDescription: (NSString **)error
|
||||
- (BOOL)getObjectValue: (id *)obj forString: (NSString *)string errorDescription: (NSString **)error
|
||||
{
|
||||
return NO;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue