1
0
mirror of https://github.com/danog/Telegram.git synced 2024-12-02 09:27:55 +01:00
Telegram/legacy/TelegraphKit/TGTextField.m

57 lines
1.7 KiB
Mathematica
Raw Normal View History

2015-10-01 18:19:52 +02:00
#import "TGTextField.h"
#import "TGImageUtils.h"
@implementation TGTextField
- (void)drawPlaceholderInRect:(CGRect)rect
{
if (_placeholderColor == nil || _placeholderFont == nil)
[super drawPlaceholderInRect:rect];
else
{
CGContextSetFillColorWithColor(UIGraphicsGetCurrentContext(), _placeholderColor.CGColor);
CGSize placeholderSize = [self.placeholder sizeWithFont:_placeholderFont];
CGPoint placeholderOrigin = CGPointMake(0.0f, CGFloor((rect.size.height - placeholderSize.height) / 2.0f) - TGRetinaPixel);
if (self.textAlignment == NSTextAlignmentCenter)
placeholderOrigin.x = CGFloor((rect.size.width - placeholderSize.width) / 2.0f);
else if (self.textAlignment == NSTextAlignmentRight)
placeholderOrigin.x = rect.size.width - placeholderSize.width;
2016-02-25 01:03:51 +01:00
placeholderOrigin.y += TGRetinaPixel;
2015-10-01 18:19:52 +02:00
[self.placeholder drawAtPoint:placeholderOrigin withFont:_placeholderFont];
}
}
- (CGRect)textRectForBounds:(CGRect)bounds
{
CGRect rect = [super textRectForBounds:bounds];
rect.origin.x += _leftInset;
rect.size.width -= _leftInset + _rightInset;
rect.origin.y = CGFloor((self.bounds.size.height - rect.size.height) / 2.0f);
return rect;
}
- (CGRect)editingRectForBounds:(CGRect)bounds
{
return CGRectOffset([self textRectForBounds:bounds], 0.0f, TGRetinaPixel + _editingRectOffset);
}
- (CGRect)placeholderRectForBounds:(CGRect)bounds
{
return [self textRectForBounds:bounds];
}
- (void)didMoveToWindow
{
[super didMoveToWindow];
if (self.window != nil && _movedToWindow)
_movedToWindow();
}
@end