iOS Flexible Client Deprecations

Unofficial Content

Introduction

As software evolves, some elements change and are no longer valid in their previous form. These elements get deprecated in code to discourage their use, and also for future removal.

This document affects only the iOS Flexible Client, meaning that it can only affect you if you developed some extension elements for the iOS generator. That is if you developed an External Object or a User Control.

Objective-C Support

Warning: Objective-C support for developing External Objects and User Controls will be dropped from GeneXus 17 Upgrade 7.

This doesn't mean that you cannot use Objective-C to create your External Object or User Control. What this means is that the iOS Flexible Client will not guarantee that the APIs formerly available in Objective-C will be still available in Objective-C.

It means that if your External Object or User Control uses a class from the Flexible Client, that class might -after GeneXus 17 Upgrade 7- be ported to Swift without further notice.

Note that Swift availabilty will continue as usual, and deprecations will be noted here before removing the elements from the API.

Also, as of GeneXus 17 Upgrade 5, new additions to the Flexible Client might be implemented as Swift-only APIs.

Deprecations

Info: If you are using any of these elements in your code, you should be getting a warning message with information on how to fix your code. That information is not included here to avoid duplication of information..

Index

Deprecated elements to be removed in GeneXus 17 Upgrade 5

Elements deprecated in GeneXus 17 upgrade 2 or earlier versions are going to be removed in GeneXus 17 Upgrade 5.

Please take a look at the following list to find out if any of these affect your product.

Element Type Member
GXActionBarUIDescriptor protocol - actionBarUIHorizontalAlign
- actionBarUIPosition
- actionBarUIPriority
- actionBarUIVerticalAlign
GXActionControllerDelegate protocol - handleAction: fromModel: withEntityData: indexerStack: sender: userInterfaceContext: allowMultipleInstances:
GXActionExObjClientInformationHandler class + appVersionCode
+ appVersionName
+ deviceLanguage
+ deviceType
+ deviceUUID
+ osName
+ osVersion
+ platformName
GXActionExObjEventsHelper class + proccessExternalObjectNotification: withActionDescriptors: parameters:
GXActionExternalObjectEventNotificationEventNameKey const  
GXActionExternalObjectEventNotificationParametersKey const  
GXActionExternalObjectHandler class func readIntParameter(atIndex:)
func readStringParameter(index:)
GXActionHandler class - actionHandlerAllowsMultipleRunningInstances
- gxActionHandlerViewControlerPresentationHandler
- gxActionHandlerViewController
- parametersEntityData:
- parametersEntityData: filteringByParameterKind: mapParametersByName:
- readBoolParameter: fromEntityData:
- readDateParameter: fromEntityData:
- readDateTimeParameter: fromEntityData:
- readDateTimeParameter: fromEntityData: localTimeZone:
- readIntParameter: fromEntityData:
- readParameter: fromEntityData:
- readParametersFromEntityData:
- readSDTCollectionParameter: fromEntityData:
- readSDTCollectionParameterAtIndex: fromEntityData:
- readSDTParameter: fromEntityData:
- readSDTParameterAtIndex: fromEntityData:
- readStringParameter: fromEntityData:
- readStringParametersFromEntityData:
GXActionHandlerUIDelegate class - actionHandlerViewControler:
- actionHandlerViewControlerPresentationHandler:
GXActionHandlerViewController class - actionHandlerViewController
GXAddressBookContact class + contactsFrameworkKesyToFetch
GXAnalyticsService protocol - trackEventName: category: sender:
- trackPanelName:
GXCallerDelegate protocol - calledViewController: willBeReplacedWithViewController:
- calledViewController: willExecuteAction:
- calledViewControllerCallerActionHandler:
- calledViewControllerDismissed:
- dismissCalledViewController: animated:
- dismissCalledViewController: animated: completion:
GXControl protocol - parentControl
GXControlActionsDispatcher protocol - fireActionWithName: sender: userInterfaceContext: entityData: allowMultipleInstances:
GXControlBase class - backgourndImageName
GXControlComponentControlMethodsDelegate protocol - controlComponent: executeLayoutActionBarItem: method: parameters: userInterfaceContext: contextEntityData:
- controlComponent: executeLayoutActionGroup: method: parameters: userInterfaceContext: contextEntityData:
GXControlComponentControlPropertiesDelegate protocol - controlComponent: applyLayoutActionBarItem: property: value: userInterfaceContext: contextEntityData:
- controlComponent: applyLayoutActionGroup: property: value: userInterfaceContext: contextEntityData:
- controlComponent: controlvalueForLayoutActionBarItem: property: userInterfaceContext:
- controlComponent: valueForLayoutActionGroup: property: userInterfaceContext:
GXControlComponentDynamicPropertiesDelegate protocol - controlComponent: applyLayoutActionBarItem: dynamicPropertiesByName:
- controlComponent: applyLayoutActionGroup: dynamicPropertiesByName:
- controlComponent: applyNonLayoutControlsDynamicPropertiesByControlName:
GXControlContainerContext class - controlWithActionBarItemsDelegate
- entityViewController
- initWithEntityModel:controller:
- initWithEntityModel:entityViewController:
GXControlContainerLoadOptions class - dynamicPropertiesByControlName
- initWithFlags:dynamicPropertiesByControlName:
GXControlContainerMutableLoadOptions class - dynamicPropertiesByControlName
GXControlDelegate protocol - controlViewControllerPresentationHandler
GXControlGridBase class - canExecuteDefaultActionForFilteredEntityAtIndex:
- controlIndexerForFilteredEntityAtIndex:
- entityDataApplyingIndexerForFiteredEntityDataAtIndex:
- executeDefaultActionForFilteredEntityAtIndex: fromGxControlTable:
- executeDefaultActionForFilteredEntityAtIndex: userInterfaceContext:
- gxControlTableForFilteredEntityAtIndex: withThemeClass:
- layoutGridItemNameForFilteredEntityData: atIndex:
- valueForEntityDataFieldName: fieldSpecifier: forFilteredEntityAtIndex: enitityData: fieldDescriptor: indexer: indexedFieldSpecifier:
GXControlGridBaseWithSelection class - canExecuteDefaultSelectionForFilteredEntityAtIndex:
- clearFilteredEntityDataSelectionModifiedIndexes
- executeDefaultSelectionForFilteredEntityAtIndex:
- isFilteredEntityDataAtIndexSelected:
- keepSelectionWhileExecutingActionHandler: forFilteredEntityAtIndex:
- layoutGridItemNameForFilteredEntityData: atIndex: selected:
- selectedFilteredEntitiesIndexes
- selectFilteredEntityDataAtIndex:
- selectionWhileExecutingActionHandlerEnded: forEntityAtIndex: section:
- selectionWhileExecutingActionHandlerEnded: forFilteredEntityAtIndex:
- setFilteredEntityDataAtIndex: selected:
GXControlGridCollectionTableViewBase class - cellIdentifierForEntityData: atProviderIndexPathRow: indexPathSection: searchMode: layoutName: selected: highlightStyleModifierFlags:
- highlightStyleModifiersForEntityDataAtIndex: section:
- highlightStyleModifiersForFilteredEntityDataIndex:
- isGridLoadingItemAtFilteredIndex:
GXControllerHelper class class func updateGXControllerReturnState(_:from:)
GXControlTableBase class - applyThemeClassFormLayoutElement
- themeClassFormLayoutElement
GXControlTableGridItem class - themeClassDelegate
GXControlWithActionBarItems protocol - controlRequiredNavigationBarLeftItems
- controlRequiredNavigationBarRightItems
- controlRequiredToolbarBarItems
- shouldApplyApplicationBarDefaultButtonClassToControlBarItems
GXEntityActionBarItemReference class - controlCaptionForProperties:
- controlClassForProperties:
- isControlVisibleForProperties:
GXEntityCallerDelegate protocol - entityViewController: didInsertEntityData:
- entityViewController: didPickEntityData:
- entityViewController: didUpdateEntityData:
- entityViewControllerDidCancelDelete:
- entityViewControllerDidCancelInsert:
- entityViewControllerDidCancelUpdate:
- entityViewControllerDidDeleteEntityData:
GXEntityDataFieldEditorViewControllerDelegate protocol - entityDataFieldEditorViewControllerDidUpdateFieldValue:
GXEntityDataFieldImagePickerController class - executeBlockWithAuthorizedStatus:
- executeBlockWithAuthorizedStatus:
+ cameraNotAvailableError
+ defaultImagePickerController: didFinishPickingMediaWithInfo: handlerWithBlock:
+ executeBlockWithCameraAuthorized:
+ executeBlockWithPhotoLibraryAuthorized:
+ isCamaraAvailableForMovie
+ isCamaraAvailableForPhoto
+ isPhotoLibraryAvailableForMovie
+ isPhotoLibraryAvailableForPhoto
+ photoLibraryNotAvailableError
GXEntityDataListSDTProvider class - entityDataListSDTDynamicPropertiesAtIndex:
GXEntityDataListSearchProvider class - allFilteredEntitiesData
- enumerateFilteredLoadedEntitiesUsingBlock:
- filteredEntityDataAtIndex:
- filteredLoadedCount
GXEntityHelper class + coreDataFieldValueForParameter: fromEntityData:
+ coreDataFieldValueForParameter: fromEntityData: actionHandlerContext:
+ coreDataFieldValueForParameter: fromEntityData: actionHandlerContext: completion:
+ dynamicPropertiesCollectionFromDictionary:
+ dynamicPropertiesDictionaryFromCollection:
+ entityDataForActionParametersDesc: paramtersDesc: filteringByParameterKind: fromData: mapParametersByName:
+ entityDataForActionParametersDescArray: paramtersDescArray: fromData:
+ entityDataValueForParameter: calledParameterDescriptor: fromData:
+ entityDataValueForParameter: calledParameterDescriptor: fromData: actionHandlerContext:
+ entityDataValueForParameter: calledParameterFieldInfo: fromData: actionHandlerContext:
+ entityDataValueForParameter: fromData:
+ parametersStringFromEntityData: inputParameterDescriptors:
+ parseDynamicPropertiesFromEntityData:
+ parseDynamicPropertiesFromValue:
+ urlRelativeToServerBaseURL: includeServerTypeBaseDirectory:
GXEntityModel protocol - entityAdsPosition
GXEntityViewController class - buttonItemForEntityActionReference: actionHandlerSelector:
- controlPropertiesForControlName:
- controlPropertyValueForPropertyName: controlName:
- handleActionReference: atIndex: sender:
- handleActionReference: sender:
- handleNavigationBarButtonAction:
- handleToolbarButtonAction:
- loadMoreItemsActionReferencesForMode:
- loadNavigationBarActionReferencesForMode:
- loadToolbarActionReferencesForMode:
- moreItemActionsReferencesForCurrentMode
- moreItemActionsReferencesForMode:
- navigationBarActionDescriptorsForCurrentMode
- navigationBarActionDescriptorsForMode:
- setControlPropertyValue: forPropertyName: controlName:
- setNeedsToReloadActionBarActionsForCurrentMode
- setNeedsToReloadActionBarActionsForMode:
- setNeedsToReloadMoreItemActionsForCurrentMode
- setNeedsToReloadMoreItemActionsForMode:
- setNeedsToReloadNavigationBarActionsForCurrentMode
- setNeedsToReloadNavigationBarActionsForMode:
- setNeedsToReloadToolbarActionsForCurrentMode
- setNeedsToReloadToolbarActionsForMode:
- showActionGroup:fromEntityModel: context: entityData:
- toolbarActionReferencesForCurrentMode
- toolbarActionReferencesForMode:
- visibleActionBarActionReferencesForModel: mode: priorityMask: barTypeMask:
GXEOiOSPermissions class + photoLibraryAddUsageDescriptionError:
+ requestLocationPermissionIfNeededWithLocationManager: whenInUse: fallbackToAlways:
GXExecutionEnvironmentHelper class + openURL:
GXExpressionEvaluatorService class - evaluateExpressionValue: withEntityData: actionHandlerContext:
- evaluateExpressionValue: withEntityData: actionHandlerContext: completion:
GXImagePickerControllerHelper class + executeBlockWithAuthorizedStatusForPicker: block:
+ executeBlockWithAuthorizedStatusForPicker: ignoreDeniedStatusErrorForPhotoLibrary: block:
GXImageUploadHelper class + imageUploadDataFromFileURL: typeInfo:
GXInAppLocalStore class + purchasedProducts
+ removePurchasedProduct:
+ setPurchasedProduct:transactionData:
GXLayoutHelper class + applyLayoutControlProperties: properties:
+ overrideEntityData:layoutControlProperties:
+ parseLayoutControlDynamicPropertiesFromEntityData: provider: atIndex: section:
+ parseLayoutControlDynamicPropertiesFromFilteredEntityData: provider: atIndex:
+ parseLayoutControlPropertiesFromEntityData:provider: atIndex: section:
+ parseLayoutControlPropertiesFromFilteredEntityData: provider: atIndex:
GXMenu class - menuAdsPosition
GXObjectHelper class class func objectTypeEnum(fromSting:)
class func objectTypeSting(fromEnum:)
GXPopoverControllerDismissedNotification const  
GXPresentationContext class - presentingGxViewController
- setupWithGXViewController:
GXRootControllerHelper class + cleanAfterDismissViewController:
+ dismissViewController: animated: completion:
GXRootControllerProtocol protocol - applicationEntryPointViewController
- dismissViewController: animated: completion:
GXSDTData protocol + newEmptySdtDataFromStructureDataTypeLeveInfo: fieldIsCollection:
+ sdtDataFromStructureDataTypeLeveInfo: value: fieldIsCollection:
GXStructureDataTypeBinaryDataInfo class - initWithSDTInfo:rootLevelBinaryDataInfo:
- rootLevelBinaryDataInfo
GXStructureDataTypeInfo class + sdtInfoForName:
GXThemeHelper class + applyApplicationBarDefaultButtonClass: toBarButtonItem: forNavigationBar:
+ applyApplicationBarDefaultButtonClass: toBarButtonItems: forNavigationBar:
+ applyDefaultApplicationBarDefaultButtonClassToBarButtonItem: forNavigationBar:
+ applyDefaultApplicationBarDefaultButtonClassToBarButtonItems: forNavigationBar:
+ applyThemeClass:toBarButtonItem: forNavigationBar:
+ applyThemeClass:toBarButtonItems: forNavigationBar:
+ applyThemeClassBackgroundImages:toView: backgroundImageView:
+ applyThemeClassBackgroundImages:toView: backgroundImageView: backgroundImageName:
+ applyThemeClassBase: toView: backgourndImageView: backgourndImageName: borderView: borderBounds:
+ applyThemeClassBase: toView: backgourndImageView: borderView: borderBounds:
+ applyThemeClassBase: toView: backgroundImageView: backgroundImageName:
borderView:borderBounds: applyBackgroundColor:
+ applyThemeClassBase: toView: borderView: borderBounds:
GXUserInterfaceContext class - addUserInterfaceContextWithViewController:
GXUserInterfaceContextHelper class + addSender:fromViewController: toUserInterfaceContext:
GXutil class class func localPathOrURLString(fromURLString:)
GXUtilities class + splitString: ByFirstOcurrenceOfString: toLeft: andRigth:
GXViewController class - adsPosition
- contentViewAdsInset
- enableMultipleActionRunningInstances
- gxLayoutGuide
- showAds
GXViewControllerDismissedNotification const  
GXViewControllerHelper class + entityModelForWorkWithComponent: conectivitySupportResolver:
+ promptViewControllerParametersFromPromptRule:
+ workWithComponentForWorkWithModel: workWithComponentString:
GXViewControllerPresentationHandler class - gxDismissViewController: animated: completion:
- gxPresentViewController: context: completion:
GXViewControllerReturnStateSuccess enum value  
GXViewControllerReturnStateUserCancelled enum value  
GXViewControllerWillPresentNotification const  
GXWebViewOptionsType struct allowWKWebView
GXWorkWithDetail class - initWithCaption: parameters: dataProviderName: data: layoutsManager: sections: actions: adsPosition: rules:
GXWorkWithLayoutActionBarActionItem class - initWithEventDescriptor: controlName: positionType: priority: hAlign: vAlign: caption: imageName: disabledImageName: imagePosition: themeClassName: visible: enabled:
GXWorkWithLayoutActionBarDataItem class - initWithDataElement: controlName: positionType: priority: hAlign: vAlign: themeClassName: visible: enabled:
GXWorkWithLayoutActionBarGroupItem class

- initWithActionBarGroup: controlName: positionType: priority: hAlign: vAlign: caption: imageName: disabledImageName: imagePosition: themeClassName: visible: enabled:

GXWorkWithLayoutActionBarItem class - initWithControlName: positionType: priority: hAlign: vAlign:
GXWorkWithLayoutActionBarItemWithBaseUIAction class - initWithControlName: positionType: priority: hAlign: vAlign: themeClassName: visible: enabled:
GXWorkWithLayoutActionBarItemWithUIAction class - initWithControlName: positionType: priority: hAlign: vAlign: caption: imageName: disabledImageName: imagePosition: themeClassName: visible: enabled:
GXWorkWithPanelBase class - adsPosition
- initWithCaption: dataProviderName: data: parameters: layoutsManager: actions: adsPosition: rules:
GXWorkWithSection class - initWithName: caption: dataProviderName: parameters: data: layoutsManager: actions: defaultActionName: linkClass: selectedImageName: unselectedImageName: adsPosition: rules:
DateFormatter class extension + dateFormatterWithTimeZone_UTC_ForGXEntityDataFieldInfo:
MBProgressHUD class extension - activityIndicatorColor
- color
- cornerRadius
- detailsLabelColor
- detailsLabelFont
- detailsLabelText
- dimBackground
- hide:
- hide:afterDelay:
- initWithWindow:
- labelColor
- labelFont
- labelText
- opacity
- show:
- showAnimated: whileExecutingBlock:
- showAnimated: whileExecutingBlock: completionBlock:
- showAnimated: whileExecutingBlock: onQueue:
- showAnimated: whileExecutingBlock: onQueue: completionBlock:
- showWhileExecuting: onTarget: withObject: animated:
- size
- taskInProgress
- xOffset
- yOffset
+ allHUDsForView:
+ hideAllHUDsForView: animated:
NewGXWebViewAllowWKWebView function  
NSData class extension + contentTypeForImageData:
UIImageView class extension - gxDefaultImageTransformWithBackgroundMode: scaleType: renderingMode:
UIScreen class extension - gxApplicationFrame
UIWindow class extension - gxPreventLightTintColor
- gxPreventLightTintColorIfNeededForController:
- gxShouldPreventLightTintColorForController:

Deprecated elements to be removed in GeneXus 17 Upgrade 6

Elements deprecated in GeneXus 17 upgrade 3 are going to be removed in GeneXus 17 Upgrade 6.

<List is empty>

Deprecated elements to be removed in GeneXus 17 Upgrade 7

Elements deprecated in GeneXus 17 upgrade 4 are going to be removed in GeneXus 17 Upgrade 7.

Element Type Member
GXWorkWithData class - initWithElements: dataProviderName: dataProviderParameters: orders: filter: breakBy: isCollection: timeout: bcName: level: cacheProperties: onlyDefinition:
- initWithElements: dataProviderName: dataProviderParameters: orders: filter: breakBy: isCollection: timeout: bcName: level: cacheProperties: onlyDefinition: sublevels:

 

See Also