linphone-iphone/Classes/Utils/Utils.h

77 lines
2.3 KiB
Objective-C

/* Utils.h
*
* Copyright (C) 2012 Belledonne Comunications, Grenoble, France
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef LINPHONE_UTILS_H
#define LINPHONE_UTILS_H
#define DYNAMIC_CAST(x, cls) \
({ \
cls *inst_ = (cls *)(x); \
[inst_ isKindOfClass:[cls class]]? inst_ : nil; \
})
typedef enum _LinphoneLoggerSeverity {
LinphoneLoggerDebug = 0,
LinphoneLoggerLog,
LinphoneLoggerWarning,
LinphoneLoggerError,
LinphoneLoggerFatal
} LinphoneLoggerSeverity;
@interface LinphoneLogger : NSObject {
}
+ (void)log:(LinphoneLoggerSeverity)severity file:(const char*)file line:(int)line format:(NSString *)format,...;
@end
@interface LinphoneUtils : NSObject {
}
+ (BOOL)findAndResignFirstResponder:(UIView*)view;
+ (void)adjustFontSize:(UIView*)view mult:(float)mult;
+ (void)buttonFixStates:(UIButton*)button;
+ (void)buttonFixStatesForTabs:(UIButton*)button;
+ (void)buttonMultiViewAddAttributes:(NSMutableDictionary*)attributes button:(UIButton*)button;
+ (void)buttonMultiViewApplyAttributes:(NSDictionary*)attributes button:(UIButton*)button;
@end
@interface NSNumber (HumanReadableSize)
- (NSString*)toHumanReadableSize;
@end
#define LOGV(level, ...) [LinphoneLogger log:level file:__FILE__ line:__LINE__ format:__VA_ARGS__]
#define LOGI(...) LOGV(LinphoneLoggerLog, __VA_ARGS__)
#define LOGD(...) LOGV(LinphoneLoggerDebug, __VA_ARGS__)
#define LOGW(...) LOGV(LinphoneLoggerWarning, __VA_ARGS__)
#define LOGE(...) LOGV(LinphoneLoggerError, __VA_ARGS__)
#define LOGF(...) LOGV(LinphoneLoggerFatal, __VA_ARGS__)
#endif
@interface NSString(md5)
- (NSString *)md5;
@end