UiCustomization.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. //
  2. // UiCustomization.h
  3. // CardinalEMVCoSDK
  4. //
  5. // Copyright © 2018 Cardinal Commerce. All rights reserved.
  6. //
  7. #import <Foundation/Foundation.h>
  8. #import "ButtonCustomization.h"
  9. #import "ToolbarCustomization.h"
  10. #import "LabelCustomization.h"
  11. #import "TextBoxCustomization.h"
  12. /**
  13. * The ButtonType enum defines the button type.
  14. */
  15. typedef enum{
  16. /**ButtonTypeVerify Verify button.*/
  17. ButtonTypeVerify,
  18. /**ButtonTypeContinue Continue button.*/
  19. ButtonTypeContinue,
  20. /**ButtonTypeNext Next button.*/
  21. ButtonTypeNext,
  22. /**ButtonTypeCancel Cancel button.*/
  23. ButtonTypeCancel,
  24. /**ButtonTypeResend Resend button.*/
  25. ButtonTypeResend
  26. }ButtonType;
  27. /**
  28. * The UiCustomization class provides the functionality required to customize the 3DS SDK UI elements.
  29. * An object of this class holds various UI-related parameters.
  30. */
  31. @interface UiCustomization : NSObject
  32. /**
  33. * Set the attributes of a ButtonCustomization object for a particular predefined button type.
  34. * @param buttonCustomization A ButtonCustomization object.
  35. * @param buttonType ButtonType enum.
  36. */
  37. - (void)setButtonCustomization:(ButtonCustomization *)buttonCustomization
  38. buttonType:(ButtonType)buttonType;
  39. /**
  40. * Set the attributes of a ButtonCustomization object for an implementer-specific button type.
  41. * @param buttonCustomization A ButtonCustomization object.
  42. * @param buttonType Implementer-specific button type.
  43. */
  44. - (void)setButtonCustomization:(ButtonCustomization *)buttonCustomization
  45. buttonTypeString:(NSString *)buttonType;
  46. /**
  47. * Sets the attributes of a ToolbarCustomization object.
  48. * @param toolbarCustomization A ToolbarCustomization object.
  49. */
  50. - (void)setToolbarCustomization:(ToolbarCustomization *)toolbarCustomization;
  51. /**
  52. * Sets the attributes of a LabelCustomization object.
  53. * @param labelCustomization A LabelCustomization object.
  54. */
  55. - (void)setLabelCustomization:(LabelCustomization *)labelCustomization;
  56. /**
  57. * Sets the attributes of a TextBoxCustomization object.
  58. * @param textBoxCustomization A TextBoxCustomization object.
  59. */
  60. - (void)setTextBoxCustomization:(TextBoxCustomization *)textBoxCustomization;
  61. /**
  62. * Returns a ButtonCustomization object.
  63. * @param buttonType A pre-defined list of button types.
  64. * @return ButtonCustomization
  65. */
  66. - (ButtonCustomization *)getButtonCustomization:(ButtonType)buttonType;
  67. /**
  68. * Returns a ButtonCustomization object for an implementer-specific button type.
  69. * @param buttonType Implementer-specific button type.
  70. * @return ButtonCustomization
  71. */
  72. - (ButtonCustomization *)getButtonCustomizationFromString:(NSString *)buttonType;
  73. /**
  74. * Returns a ToolbarCustomization object.
  75. * @return ToolbarCustomization
  76. */
  77. - (ToolbarCustomization *)getToolbarCustomization;
  78. /**
  79. * Returns a LabelCustomization object.
  80. * @return LabelCustomization
  81. */
  82. - (LabelCustomization *)getLabelCustomization;
  83. /**
  84. * Returns a TextBoxCustomization object.
  85. * @return TextBoxCustomization
  86. */
  87. - (TextBoxCustomization *)getTextBoxCustomization;
  88. @end