2013-02-14 17:59:12 +04:00
|
|
|
/*
|
|
|
|
Utility functions
|
|
|
|
|
|
|
|
Copyright 2013 Thinstuff Technologies GmbH, Authors: Martin Fleisz, Dorian Johnson
|
|
|
|
|
|
|
|
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
|
|
|
|
If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#import <Foundation/Foundation.h>
|
2013-03-29 17:28:27 +04:00
|
|
|
#import <CoreGraphics/CoreGraphics.h>
|
2013-02-14 17:59:12 +04:00
|
|
|
#import "TSXTypes.h"
|
|
|
|
|
|
|
|
// helper macro to encode a table path into a tag value (used to identify controls in their delegate handlers)
|
|
|
|
#define GET_TAG(section, row) ((((int)section) << 16) | ((int)(row)))
|
|
|
|
#define GET_TAG_FROM_PATH(path) ((((int)path.section) << 16) | ((int)(path.row)))
|
|
|
|
|
|
|
|
|
|
|
|
BOOL ScanHostNameAndPort(NSString* address, NSString** host, unsigned short* port);
|
|
|
|
|
|
|
|
#pragma mark -
|
|
|
|
#pragma mark Screen Resolutions
|
|
|
|
|
|
|
|
NSString* ScreenResolutionDescription(TSXScreenOptions type, int width, int height);
|
|
|
|
BOOL ScanScreenResolution(NSString* description, int* width, int* height, TSXScreenOptions* type);
|
|
|
|
|
2013-02-16 02:07:10 +04:00
|
|
|
NSDictionary* SelectionForColorSetting(void);
|
|
|
|
NSArray* ResolutionModes(void);
|
2013-02-14 17:59:12 +04:00
|
|
|
|
|
|
|
#pragma mark Security Protocol
|
|
|
|
|
|
|
|
NSString* ProtocolSecurityDescription(TSXProtocolSecurityOptions type);
|
|
|
|
BOOL ScanProtocolSecurity(NSString* description, TSXProtocolSecurityOptions* type);
|
2013-02-16 02:07:10 +04:00
|
|
|
NSDictionary* SelectionForSecuritySetting(void);
|
2013-02-14 17:59:12 +04:00
|
|
|
|
|
|
|
#pragma mark Bookmarks
|
|
|
|
@class BookmarkBase;
|
|
|
|
NSMutableArray* FilterBookmarks(NSArray* bookmarks, NSArray* filter_words);
|
|
|
|
NSMutableArray* FilterHistory(NSArray* history, NSString* filterStr);
|
|
|
|
|
|
|
|
#pragma mark iPad/iPhone detection
|
|
|
|
|
2013-02-16 02:07:10 +04:00
|
|
|
BOOL IsPad(void);
|
|
|
|
BOOL IsPhone(void);
|
2013-02-14 17:59:12 +04:00
|
|
|
|
|
|
|
#pragma mark Version Info
|
2013-02-16 02:07:10 +04:00
|
|
|
NSString* TSXAppFullVersion(void);
|
2013-02-14 17:59:12 +04:00
|
|
|
|
|
|
|
#pragma mark Touch/Mouse handling
|
|
|
|
|
|
|
|
// set mouse buttons swapped flag
|
|
|
|
void SetSwapMouseButtonsFlag(BOOL swapped);
|
|
|
|
|
|
|
|
// set invert scrolling flag
|
|
|
|
void SetInvertScrollingFlag(BOOL invert);
|
|
|
|
|
|
|
|
// return event value for left mouse button
|
|
|
|
int GetLeftMouseButtonClickEvent(BOOL down);
|
|
|
|
|
|
|
|
// return event value for right mouse button
|
|
|
|
int GetRightMouseButtonClickEvent(BOOL down);
|
|
|
|
|
|
|
|
// return event value for mouse move event
|
2013-02-16 02:07:10 +04:00
|
|
|
int GetMouseMoveEvent(void);
|
2013-02-14 17:59:12 +04:00
|
|
|
|
|
|
|
// return mouse wheel event
|
|
|
|
int GetMouseWheelEvent(BOOL down);
|
|
|
|
|
|
|
|
// scrolling gesture detection delta
|
2013-02-16 02:07:10 +04:00
|
|
|
CGFloat GetScrollGestureDelta(void);
|
2013-02-14 17:59:12 +04:00
|
|
|
|
|
|
|
#pragma mark Connectivity tools
|
|
|
|
// activates the iphone's WWAN interface in case it is offline
|
2013-02-16 02:07:10 +04:00
|
|
|
void WakeUpWWAN(void);
|
2013-02-14 17:59:12 +04:00
|
|
|
|
|
|
|
#pragma mark System Info functions
|
2013-02-16 02:07:10 +04:00
|
|
|
NSString* TSXGetPlatform(void);
|
|
|
|
BOOL TSXDeviceHasJailBreak(void);
|
2013-02-14 17:59:12 +04:00
|
|
|
NSString* TSXGetPrimaryMACAddress(NSString *sep);
|
|
|
|
|