From fe4e329225915dece3d1f3551a5a423b87bd2a6d Mon Sep 17 00:00:00 2001 From: Varun Santhanam Date: Sun, 30 Sep 2018 18:55:04 -0700 Subject: [PATCH] update documentation --- Documentation/Classes.html | 23 +- Documentation/Classes/VSAlertAction.html | 45 +-- Documentation/Classes/VSAlertController.html | 100 ++++-- Documentation/Constants.html | 56 +-- Documentation/Enums.html | 232 +++++++++++++ Documentation/Enums/VSAlertActionStyle.html | 215 ++++++++++++ .../VSAlertControllerAnimationStyle.html | 327 ++++++++++++++++++ .../Enums/VSAlertControllerStyle.html | 215 ++++++++++++ Documentation/Functions.html | 152 -------- Documentation/Protocols.html | 21 +- .../Protocols/VSAlertControllerDelegate.html | 21 +- Documentation/badge.svg | 16 +- .../Contents/Resources/Documents/Classes.html | 23 +- .../Documents/Classes/VSAlertAction.html | 45 +-- .../Documents/Classes/VSAlertController.html | 100 ++++-- .../Resources/Documents/Constants.html | 56 +-- .../Contents/Resources/Documents/Enums.html | 232 +++++++++++++ .../Documents/Enums/VSAlertActionStyle.html | 215 ++++++++++++ .../VSAlertControllerAnimationStyle.html | 327 ++++++++++++++++++ .../Enums/VSAlertControllerStyle.html | 215 ++++++++++++ .../Resources/Documents/Functions.html | 152 -------- .../Resources/Documents/Protocols.html | 21 +- .../Protocols/VSAlertControllerDelegate.html | 21 +- .../Contents/Resources/Documents/index.html | 19 +- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 28672 -> 28672 bytes Documentation/docsets/VSAlert.tgz | Bin 53183 -> 56504 bytes Documentation/index.html | 19 +- Documentation/search.json | 2 +- Documentation/undocumented.json | 85 +---- 30 files changed, 2299 insertions(+), 658 deletions(-) create mode 100644 Documentation/Enums.html create mode 100644 Documentation/Enums/VSAlertActionStyle.html create mode 100644 Documentation/Enums/VSAlertControllerAnimationStyle.html create mode 100644 Documentation/Enums/VSAlertControllerStyle.html delete mode 100644 Documentation/Functions.html create mode 100644 Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums.html create mode 100644 Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertActionStyle.html create mode 100644 Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertControllerAnimationStyle.html create mode 100644 Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertControllerStyle.html delete mode 100644 Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Functions.html diff --git a/Documentation/Classes.html b/Documentation/Classes.html index 4a7d539..b422471 100644 --- a/Documentation/Classes.html +++ b/Documentation/Classes.html @@ -16,7 +16,7 @@

VSAlert Docs - (76% documented) + (100% documented)

@@ -72,7 +72,7 @@

Classes

Declaration

Objective-C

-
@interface VSAlertAction
+
@interface VSAlertAction : UIButton <UIAppearance>
@@ -104,7 +104,7 @@

Declaration

Declaration

Objective-C

-
@interface VSAlertController
+
@interface VSAlertController : UIViewController <UIAppearance>
@@ -134,9 +134,6 @@

Declaration

diff --git a/Documentation/Classes/VSAlertAction.html b/Documentation/Classes/VSAlertAction.html index 554a2db..f7c03fc 100644 --- a/Documentation/Classes/VSAlertAction.html +++ b/Documentation/Classes/VSAlertAction.html @@ -16,7 +16,7 @@

VSAlert Docs - (76% documented) + (100% documented)

@@ -47,7 +47,7 @@

VSAlertAction

-
@interface VSAlertAction
+
@interface VSAlertAction : UIButton <UIAppearance>
@@ -85,8 +85,8 @@

Declaration

Objective-C

+ (nullable instancetype)
-alertActionWithTitle:(id)title
-               style:(id)style
+alertActionWithTitle:(nonnull NSString *)title
+               style:(VSAlertActionStyle)style
               action:(void (^_Nullable)(VSAlertAction *_Nonnull))action;
@@ -162,8 +162,8 @@

Declaration

Objective-C

- (nullable instancetype)
-initWithTitle:(id)title
-        style:(id)style
+initWithTitle:(nonnull NSString *)title
+        style:(VSAlertActionStyle)style
        action:(void (^_Nullable)(VSAlertAction *_Nonnull))action;
@@ -249,7 +249,7 @@

Configuring Action Appearance

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *actionTextColor;
+
@property (readwrite, strong, nonatomic, nonnull) UIColor *actionTextColor;
@@ -276,7 +276,8 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *destructiveActionTextColor;
+
@property (readwrite, strong, nonatomic, nonnull)
+    UIColor *destructiveActionTextColor;
@@ -303,7 +304,7 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *actionTextFont;
+
@property (readwrite, strong, nonatomic, nonnull) UIFont *actionTextFont;
@@ -330,7 +331,7 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *cancelActionTextFont;
+
@property (readwrite, strong, nonatomic, nonnull) UIFont *cancelActionTextFont;
@@ -368,7 +369,7 @@

Interacting with Actions

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *alertTitle;
+
@property (readonly, copy, nonatomic, nullable) NSString *alertTitle;
@@ -395,7 +396,7 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int style;
+
@property (readonly, assign, nonatomic) VSAlertActionStyle style;
@@ -422,7 +423,8 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) void (^)(VSAlertAction *_Nonnull) action;
+
@property (readonly, copy, nonatomic, nullable) void (^)(VSAlertAction *_Nonnull)
+    action;
@@ -452,9 +454,6 @@

Declaration

diff --git a/Documentation/Classes/VSAlertController.html b/Documentation/Classes/VSAlertController.html index 7fc095c..37bbceb 100644 --- a/Documentation/Classes/VSAlertController.html +++ b/Documentation/Classes/VSAlertController.html @@ -16,7 +16,7 @@

VSAlert Docs - (76% documented) + (100% documented)

@@ -47,7 +47,7 @@

VSAlertController

-
@interface VSAlertController
+
@interface VSAlertController : UIViewController <UIAppearance>
@@ -84,10 +84,11 @@

Creating Alerts

Declaration

Objective-C

-
+ (nullable instancetype)alertControllerWithTitle:(id)title
-                                          message:(id)message
-                                            image:(id)image
-                                   preferredStyle:(id)preferredStyle;
+
+ (nullable instancetype)alertControllerWithTitle:(nullable NSString *)title
+                                          message:(nullable NSString *)message
+                                            image:(nullable UIImage *)image
+                                   preferredStyle:
+                                       (VSAlertControllerStyle)preferredStyle;
@@ -173,9 +174,10 @@

Return Value

Declaration

Objective-C

-
+ (nullable instancetype)alertControllerWithTitle:(id)title
-                                          message:(id)message
-                                   preferredStyle:(id)preferredStyle;
+
+ (nullable instancetype)alertControllerWithTitle:(nullable NSString *)title
+                                          message:(nullable NSString *)message
+                                   preferredStyle:
+                                       (VSAlertControllerStyle)preferredStyle;
@@ -249,10 +251,10 @@

Return Value

Declaration

Objective-C

-
- (nullable instancetype)initWithTitle:(id)title
-                               message:(id)message
-                                 image:(id)image
-                        preferredStyle:(id)preferredStyle;
+
- (nullable instancetype)initWithTitle:(nullable NSString *)title
+                               message:(nullable NSString *)message
+                                 image:(nullable UIImage *)image
+                        preferredStyle:(VSAlertControllerStyle)preferredStyle;
@@ -349,7 +351,7 @@

Configuring Alert Appearance

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *alertTitleTextColor;
+
@property (readwrite, strong, nonatomic, nonnull) UIColor *alertTitleTextColor;
@@ -376,7 +378,7 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *alertMessageTextColor;
+
@property (readwrite, strong, nonatomic, nonnull) UIColor *alertMessageTextColor;
@@ -403,7 +405,7 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *alertTitleTextFont;
+
@property (readwrite, strong, nonatomic, nonnull) UIFont *alertTitleTextFont;
@@ -430,7 +432,7 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *alertMessageTextFont;
+
@property (readwrite, strong, nonatomic, nonnull) UIFont *alertMessageTextFont;
@@ -457,7 +459,8 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int alertMessageTextAlignment;
+
@property (assign, readwrite, nonatomic)
+    NSTextAlignment alertMessageTextAlignment;
@@ -484,7 +487,7 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int *alertBackgroundColor;
+
@property (readwrite, strong, nonatomic, nonnull) UIColor *alertBackgroundColor;
@@ -568,7 +571,7 @@

Parameters

Declaration

Objective-C

-
- (void)addTextField:(void (^_Nullable)(int *_Nonnull))configuration;
+
- (void)addTextField:(void (^_Nullable)(UITextField *_Nonnull))configuration;
@@ -625,7 +628,8 @@

Configure Alert Behavior

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int dismissOnBackgroundTap;
+
@property (getter=shouldDismissOnBackgroundTap, assign, readwrite, nonatomic)
+    BOOL dismissOnBackgroundTap;
@@ -652,7 +656,8 @@

Declaration

Declaration

Objective-C

-
@property (assign, readwrite, atomic) int animationStyle;
+
@property (assign, readwrite, nonatomic)
+    VSAlertControllerAnimationStyle animationStyle;
@@ -697,6 +702,34 @@

Declaration

+
  • +
    + + + + textFields + +
    +
    +
    +
    +
    +
    +

    Returns the array of text field objects that are displayed in the alert, so you can interact with the user’s inputs.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (readonly, strong, nonatomic, nonnull)
    +    NSArray<UITextField *> *textFields;
    + +
    +
    +
    +
    +
  • @@ -717,7 +750,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int style;
    +
    @property (readonly, assign, nonatomic) VSAlertControllerStyle style;
    @@ -744,7 +777,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *message;
    +
    @property (readonly, copy, nonatomic, nonnull) NSString *message;
    @@ -771,7 +804,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *image;
    +
    @property (readonly, strong, nonatomic, nullable) UIImage *image;
    @@ -801,9 +834,6 @@

    Declaration

  • diff --git a/Documentation/Constants.html b/Documentation/Constants.html index 0eceb05..6965dbb 100644 --- a/Documentation/Constants.html +++ b/Documentation/Constants.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -49,37 +49,6 @@

    Constants

    -
    -
      -
    • - -
      -
      -
      -
      -
      -

      Undocumented

      - -
      -
      -

      Declaration

      -
      -

      Objective-C

      -
      UI_APPEARANCE_SELECTOR
      - -
      -
      -
      -
      -
    • -
    -
    • @@ -102,7 +71,7 @@

      Declaration

      Declaration

      Objective-C

      -
      extern NSString * _Nonnull const VSAlertControllerNotImplementedException
      +
      extern NSString *const _Nonnull VSAlertControllerNotImplementedException
    @@ -129,7 +98,7 @@

    Declaration

    Declaration

    Objective-C

    -
    extern NSString * _Nonnull const VSAlertControllerTextFieldInvalidException
    +
    extern NSString *const _Nonnull VSAlertControllerTextFieldInvalidException
    @@ -156,7 +125,7 @@

    Declaration

    Declaration

    Objective-C

    -
    extern NSString * _Nonnull const VSAlertControllerPresentationAnimationException
    +
    extern NSString *const _Nonnull VSAlertControllerPresentationAnimationException
    @@ -186,9 +155,6 @@

    Declaration

    diff --git a/Documentation/Enums.html b/Documentation/Enums.html new file mode 100644 index 0000000..88d803b --- /dev/null +++ b/Documentation/Enums.html @@ -0,0 +1,232 @@ + + + + Enumerations Reference + + + + + + + + + + +
    +
    +

    + VSAlert Docs + (100% documented) +

    + +

    + + + View on GitHub + +

    + +
    +
    + +
    +
    +
    +
    +
    +

    Enumerations

    +

    The following enumerations are available globally.

    + +
    +
    +
    +
      +
    • +
      + + + + VSAlertActionStyle + +
      +
      +
      +
      +
      +
      +

      An enumeration for the kinds of actions that can be created

      + +
        +
      • VSAlertActionStyleDefault: A normal action
      • +
      • VSAlertActionStyleCancel: An action that indicates to the user that the current process wil be cancelled
      • +
      • VSAlertActionStyleDestructive: An action indicates to the user that an irreversible process is about to happen.
      • +
      + + See more +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      enum VSAlertActionStyle {}
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      An enumeration describing the kinds of alerts that VSAlertController can display

      + +
        +
      • VSAlertControllerStyleAlert: A standard alert, 270pt wide, variable height. Supports texts fields.
      • +
      • VSAlertControllerStyleWalkthroughAlert: A wider alert that stretches to the margins of the device - 18pt in either direction. Supports text fields, useful for onboarding. 500pt wide on iPad.
      • +
      • VSAlertControllerStyleActionSheet: An alert that appears at the bottom of the display, similar to Apple’s action sheet stlye. Does NOT support text fields.
      • +
      + + See more +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      enum VSAlertControllerStyle {}
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      An enumeration describing the kinds of animations that can be used to present and hide an alert

      + +
        +
      • VSAlertControllerAnimationStyleRise: The alert rises from the bottom of the screen and falls down when dismissed.
      • +
      • VSAlertControllerAnimationStyleFall: The alert falls from the top of the screen and rises up when dismissed.
      • +
      • VSAlertControllerAnimationStyleSlide: The alert slides from the left of the screen and slides to the right when dismissed.
      • +
      • VSAlertControllerAnimationStyleFlip: The alert flips from the right, and flips to the left when dismissed.
      • +
      • VSAlertControllerAnimationStyleSticker: The alert page flips from the top, then again from the bottom when dismissed.
      • +
      • VSAlertControllerAnimationStyleCrossDisolve: The alert page fades in, then fades out dismissed.
      • +
      • VSAlertControllerAnimationStyleAutomatic: The alert chooses its presentation and dismissal styles automatically.
      • +
      + + See more +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      enum VSAlertControllerAnimationStyle {}
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + + +
    + + + diff --git a/Documentation/Enums/VSAlertActionStyle.html b/Documentation/Enums/VSAlertActionStyle.html new file mode 100644 index 0000000..4187004 --- /dev/null +++ b/Documentation/Enums/VSAlertActionStyle.html @@ -0,0 +1,215 @@ + + + + VSAlertActionStyle Enumeration Reference + + + + + + + + + + +
    +
    +

    + VSAlert Docs + (100% documented) +

    + +

    + + + View on GitHub + +

    + +
    +
    + +
    +
    +
    +
    +
    +

    VSAlertActionStyle

    +
    +
    +
    enum VSAlertActionStyle {}
    + +
    +
    +

    An enumeration for the kinds of actions that can be created

    + +
      +
    • VSAlertActionStyleDefault: A normal action
    • +
    • VSAlertActionStyleCancel: An action that indicates to the user that the current process wil be cancelled
    • +
    • VSAlertActionStyleDestructive: An action indicates to the user that an irreversible process is about to happen.
    • +
    + +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      A normal action

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertActionStyleDefault
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      An action that indicates to the user that the current process wil be cancelled

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertActionStyleCancel
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      An action indicates to the user that an irreversible process is about to happen.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertActionStyleDestructive
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + + +
    + + + diff --git a/Documentation/Enums/VSAlertControllerAnimationStyle.html b/Documentation/Enums/VSAlertControllerAnimationStyle.html new file mode 100644 index 0000000..9e94b82 --- /dev/null +++ b/Documentation/Enums/VSAlertControllerAnimationStyle.html @@ -0,0 +1,327 @@ + + + + VSAlertControllerAnimationStyle Enumeration Reference + + + + + + + + + + +
    +
    +

    + VSAlert Docs + (100% documented) +

    + +

    + + + View on GitHub + +

    + +
    +
    + +
    +
    +
    +
    +
    +

    VSAlertControllerAnimationStyle

    +
    +
    +
    enum VSAlertControllerAnimationStyle {}
    + +
    +
    +

    An enumeration describing the kinds of animations that can be used to present and hide an alert

    + +
      +
    • VSAlertControllerAnimationStyleRise: The alert rises from the bottom of the screen and falls down when dismissed.
    • +
    • VSAlertControllerAnimationStyleFall: The alert falls from the top of the screen and rises up when dismissed.
    • +
    • VSAlertControllerAnimationStyleSlide: The alert slides from the left of the screen and slides to the right when dismissed.
    • +
    • VSAlertControllerAnimationStyleFlip: The alert flips from the right, and flips to the left when dismissed.
    • +
    • VSAlertControllerAnimationStyleSticker: The alert page flips from the top, then again from the bottom when dismissed.
    • +
    • VSAlertControllerAnimationStyleCrossDisolve: The alert page fades in, then fades out dismissed.
    • +
    • VSAlertControllerAnimationStyleAutomatic: The alert chooses its presentation and dismissal styles automatically.
    • +
    + +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      The alert rises from the bottom of the screen and falls down when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleRise
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert falls from the top of the screen and rises up when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleFall
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert slides from the left of the screen and slides to the right when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleSlide
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert flips from the right, and flips to the left when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleFlip
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert page flips from the top, then again from the bottom when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleSticker
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert page fades in, then fades out dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleCrossDisolve
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert chooses its presentation and dismissal styles automatically.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleAutomatic
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + + +
    + + + diff --git a/Documentation/Enums/VSAlertControllerStyle.html b/Documentation/Enums/VSAlertControllerStyle.html new file mode 100644 index 0000000..ccf38dd --- /dev/null +++ b/Documentation/Enums/VSAlertControllerStyle.html @@ -0,0 +1,215 @@ + + + + VSAlertControllerStyle Enumeration Reference + + + + + + + + + + +
    +
    +

    + VSAlert Docs + (100% documented) +

    + +

    + + + View on GitHub + +

    + +
    +
    + +
    +
    +
    +
    +
    +

    VSAlertControllerStyle

    +
    +
    +
    enum VSAlertControllerStyle {}
    + +
    +
    +

    An enumeration describing the kinds of alerts that VSAlertController can display

    + +
      +
    • VSAlertControllerStyleAlert: A standard alert, 270pt wide, variable height. Supports texts fields.
    • +
    • VSAlertControllerStyleWalkthroughAlert: A wider alert that stretches to the margins of the device - 18pt in either direction. Supports text fields, useful for onboarding. 500pt wide on iPad.
    • +
    • VSAlertControllerStyleActionSheet: An alert that appears at the bottom of the display, similar to Apple’s action sheet stlye. Does NOT support text fields.
    • +
    + +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      A standard alert, 270pt wide, variable height. Supports text fields

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerStyleAlert
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      A wider alert that stretches to the margins of the device - 18pt in either direction. Supports text fields, useful for onboarding. 500pt wide on iPad.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerStyleWalkthroughAlert
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      An alert that appears at the bottom of the display, similar to Apple’s action sheet stlye. Does NOT support text fields.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerStyleActionSheet
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + + +
    + + + diff --git a/Documentation/Functions.html b/Documentation/Functions.html deleted file mode 100644 index 5ccb077..0000000 --- a/Documentation/Functions.html +++ /dev/null @@ -1,152 +0,0 @@ - - - - Functions Reference - - - - - - - - - - -
    -
    -

    - VSAlert Docs - (76% documented) -

    - -

    - - - View on GitHub - -

    - -
    -
    - -
    -
    -
    -
    -
    -

    Functions

    -

    The following functions are available globally.

    - -
    -
    -
    -
      -
    • -
      - - - - NS_ENUM - -
      -
      -
      -
      -
      -
      -

      An enumeration for the kinds of actions that can be created

      - -
        -
      • VSAlertActionStyleDefault: A normal action
      • -
      • VSAlertActionStyleCancel: An action that indicates to the user that the current process wil be cancelled
      • -
      • VSAlertActionStyleDestructive: An action indicates to the user that an irreversible process is about to happen.
      • -
      - -
      -
      -

      Declaration

      -
      -

      Objective-C

      -
      int NS_ENUM(NSInteger, VSAlertActionStyle)
      - -
      -
      -
      -
      -
    • -
    -
    -
    -
    -
    -
    - - -
    - - - diff --git a/Documentation/Protocols.html b/Documentation/Protocols.html index ed3f104..cbd8dcd 100644 --- a/Documentation/Protocols.html +++ b/Documentation/Protocols.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -72,7 +72,7 @@

    Protocols

    Declaration

    Objective-C

    -
    @protocol VSAlertControllerDelegate
    +
    @protocol VSAlertControllerDelegate <NSObject>
    @@ -102,9 +102,6 @@

    Declaration

    diff --git a/Documentation/Protocols/VSAlertControllerDelegate.html b/Documentation/Protocols/VSAlertControllerDelegate.html index cf45507..21898ee 100644 --- a/Documentation/Protocols/VSAlertControllerDelegate.html +++ b/Documentation/Protocols/VSAlertControllerDelegate.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -47,7 +47,7 @@

    VSAlertControllerDelegate

    -
    @protocol VSAlertControllerDelegate
    +
    @protocol VSAlertControllerDelegate <NSObject>
    @@ -325,9 +325,6 @@

    Parameters

    diff --git a/Documentation/badge.svg b/Documentation/badge.svg index 91e5a07..a096fec 100644 --- a/Documentation/badge.svg +++ b/Documentation/badge.svg @@ -1,15 +1,15 @@ - + - + - - + + @@ -18,11 +18,11 @@ documentation - - 76% + + 100% - - 76% + + 100% diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes.html index 4a7d539..b422471 100644 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes.html +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -72,7 +72,7 @@

    Classes

    Declaration

    Objective-C

    -
    @interface VSAlertAction
    +
    @interface VSAlertAction : UIButton <UIAppearance>
    @@ -104,7 +104,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @interface VSAlertController
    +
    @interface VSAlertController : UIViewController <UIAppearance>
    @@ -134,9 +134,6 @@

    Declaration

    diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes/VSAlertAction.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes/VSAlertAction.html index 554a2db..f7c03fc 100644 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes/VSAlertAction.html +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes/VSAlertAction.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -47,7 +47,7 @@

    VSAlertAction

    -
    @interface VSAlertAction
    +
    @interface VSAlertAction : UIButton <UIAppearance>
    @@ -85,8 +85,8 @@

    Declaration

    Objective-C

    + (nullable instancetype)
    -alertActionWithTitle:(id)title
    -               style:(id)style
    +alertActionWithTitle:(nonnull NSString *)title
    +               style:(VSAlertActionStyle)style
                   action:(void (^_Nullable)(VSAlertAction *_Nonnull))action;
    @@ -162,8 +162,8 @@

    Declaration

    Objective-C

    - (nullable instancetype)
    -initWithTitle:(id)title
    -        style:(id)style
    +initWithTitle:(nonnull NSString *)title
    +        style:(VSAlertActionStyle)style
            action:(void (^_Nullable)(VSAlertAction *_Nonnull))action;
    @@ -249,7 +249,7 @@

    Configuring Action Appearance

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *actionTextColor;
    +
    @property (readwrite, strong, nonatomic, nonnull) UIColor *actionTextColor;
    @@ -276,7 +276,8 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *destructiveActionTextColor;
    +
    @property (readwrite, strong, nonatomic, nonnull)
    +    UIColor *destructiveActionTextColor;
    @@ -303,7 +304,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *actionTextFont;
    +
    @property (readwrite, strong, nonatomic, nonnull) UIFont *actionTextFont;
    @@ -330,7 +331,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *cancelActionTextFont;
    +
    @property (readwrite, strong, nonatomic, nonnull) UIFont *cancelActionTextFont;
    @@ -368,7 +369,7 @@

    Interacting with Actions

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *alertTitle;
    +
    @property (readonly, copy, nonatomic, nullable) NSString *alertTitle;
    @@ -395,7 +396,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int style;
    +
    @property (readonly, assign, nonatomic) VSAlertActionStyle style;
    @@ -422,7 +423,8 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) void (^)(VSAlertAction *_Nonnull) action;
    +
    @property (readonly, copy, nonatomic, nullable) void (^)(VSAlertAction *_Nonnull)
    +    action;
    @@ -452,9 +454,6 @@

    Declaration

    diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes/VSAlertController.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes/VSAlertController.html index 7fc095c..37bbceb 100644 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes/VSAlertController.html +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Classes/VSAlertController.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -47,7 +47,7 @@

    VSAlertController

    -
    @interface VSAlertController
    +
    @interface VSAlertController : UIViewController <UIAppearance>
    @@ -84,10 +84,11 @@

    Creating Alerts

    Declaration

    Objective-C

    -
    + (nullable instancetype)alertControllerWithTitle:(id)title
    -                                          message:(id)message
    -                                            image:(id)image
    -                                   preferredStyle:(id)preferredStyle;
    +
    + (nullable instancetype)alertControllerWithTitle:(nullable NSString *)title
    +                                          message:(nullable NSString *)message
    +                                            image:(nullable UIImage *)image
    +                                   preferredStyle:
    +                                       (VSAlertControllerStyle)preferredStyle;
    @@ -173,9 +174,10 @@

    Return Value

    Declaration

    Objective-C

    -
    + (nullable instancetype)alertControllerWithTitle:(id)title
    -                                          message:(id)message
    -                                   preferredStyle:(id)preferredStyle;
    +
    + (nullable instancetype)alertControllerWithTitle:(nullable NSString *)title
    +                                          message:(nullable NSString *)message
    +                                   preferredStyle:
    +                                       (VSAlertControllerStyle)preferredStyle;
    @@ -249,10 +251,10 @@

    Return Value

    Declaration

    Objective-C

    -
    - (nullable instancetype)initWithTitle:(id)title
    -                               message:(id)message
    -                                 image:(id)image
    -                        preferredStyle:(id)preferredStyle;
    +
    - (nullable instancetype)initWithTitle:(nullable NSString *)title
    +                               message:(nullable NSString *)message
    +                                 image:(nullable UIImage *)image
    +                        preferredStyle:(VSAlertControllerStyle)preferredStyle;
    @@ -349,7 +351,7 @@

    Configuring Alert Appearance

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *alertTitleTextColor;
    +
    @property (readwrite, strong, nonatomic, nonnull) UIColor *alertTitleTextColor;
    @@ -376,7 +378,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *alertMessageTextColor;
    +
    @property (readwrite, strong, nonatomic, nonnull) UIColor *alertMessageTextColor;
    @@ -403,7 +405,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *alertTitleTextFont;
    +
    @property (readwrite, strong, nonatomic, nonnull) UIFont *alertTitleTextFont;
    @@ -430,7 +432,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *alertMessageTextFont;
    +
    @property (readwrite, strong, nonatomic, nonnull) UIFont *alertMessageTextFont;
    @@ -457,7 +459,8 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int alertMessageTextAlignment;
    +
    @property (assign, readwrite, nonatomic)
    +    NSTextAlignment alertMessageTextAlignment;
    @@ -484,7 +487,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *alertBackgroundColor;
    +
    @property (readwrite, strong, nonatomic, nonnull) UIColor *alertBackgroundColor;
    @@ -568,7 +571,7 @@

    Parameters

    Declaration

    Objective-C

    -
    - (void)addTextField:(void (^_Nullable)(int *_Nonnull))configuration;
    +
    - (void)addTextField:(void (^_Nullable)(UITextField *_Nonnull))configuration;
    @@ -625,7 +628,8 @@

    Configure Alert Behavior

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int dismissOnBackgroundTap;
    +
    @property (getter=shouldDismissOnBackgroundTap, assign, readwrite, nonatomic)
    +    BOOL dismissOnBackgroundTap;
    @@ -652,7 +656,8 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int animationStyle;
    +
    @property (assign, readwrite, nonatomic)
    +    VSAlertControllerAnimationStyle animationStyle;
    @@ -697,6 +702,34 @@

    Declaration

    +
  • +
    + + + + textFields + +
    +
    +
    +
    +
    +
    +

    Returns the array of text field objects that are displayed in the alert, so you can interact with the user’s inputs.

    + +
    +
    +

    Declaration

    +
    +

    Objective-C

    +
    @property (readonly, strong, nonatomic, nonnull)
    +    NSArray<UITextField *> *textFields;
    + +
    +
    +
    +
    +
  • @@ -717,7 +750,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int style;
    +
    @property (readonly, assign, nonatomic) VSAlertControllerStyle style;
    @@ -744,7 +777,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *message;
    +
    @property (readonly, copy, nonatomic, nonnull) NSString *message;
    @@ -771,7 +804,7 @@

    Declaration

    Declaration

    Objective-C

    -
    @property (assign, readwrite, atomic) int *image;
    +
    @property (readonly, strong, nonatomic, nullable) UIImage *image;
    @@ -801,9 +834,6 @@

    Declaration

  • diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Constants.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Constants.html index 0eceb05..6965dbb 100644 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Constants.html +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Constants.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -49,37 +49,6 @@

    Constants

    -
    -
      -
    • - -
      -
      -
      -
      -
      -

      Undocumented

      - -
      -
      -

      Declaration

      -
      -

      Objective-C

      -
      UI_APPEARANCE_SELECTOR
      - -
      -
      -
      -
      -
    • -
    -
    • @@ -102,7 +71,7 @@

      Declaration

      Declaration

      Objective-C

      -
      extern NSString * _Nonnull const VSAlertControllerNotImplementedException
      +
      extern NSString *const _Nonnull VSAlertControllerNotImplementedException
    @@ -129,7 +98,7 @@

    Declaration

    Declaration

    Objective-C

    -
    extern NSString * _Nonnull const VSAlertControllerTextFieldInvalidException
    +
    extern NSString *const _Nonnull VSAlertControllerTextFieldInvalidException
    @@ -156,7 +125,7 @@

    Declaration

    Declaration

    Objective-C

    -
    extern NSString * _Nonnull const VSAlertControllerPresentationAnimationException
    +
    extern NSString *const _Nonnull VSAlertControllerPresentationAnimationException
    @@ -186,9 +155,6 @@

    Declaration

    diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums.html new file mode 100644 index 0000000..88d803b --- /dev/null +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums.html @@ -0,0 +1,232 @@ + + + + Enumerations Reference + + + + + + + + + + +
    +
    +

    + VSAlert Docs + (100% documented) +

    + +

    + + + View on GitHub + +

    + +
    +
    + +
    +
    +
    +
    +
    +

    Enumerations

    +

    The following enumerations are available globally.

    + +
    +
    +
    +
      +
    • +
      + + + + VSAlertActionStyle + +
      +
      +
      +
      +
      +
      +

      An enumeration for the kinds of actions that can be created

      + +
        +
      • VSAlertActionStyleDefault: A normal action
      • +
      • VSAlertActionStyleCancel: An action that indicates to the user that the current process wil be cancelled
      • +
      • VSAlertActionStyleDestructive: An action indicates to the user that an irreversible process is about to happen.
      • +
      + + See more +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      enum VSAlertActionStyle {}
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      An enumeration describing the kinds of alerts that VSAlertController can display

      + +
        +
      • VSAlertControllerStyleAlert: A standard alert, 270pt wide, variable height. Supports texts fields.
      • +
      • VSAlertControllerStyleWalkthroughAlert: A wider alert that stretches to the margins of the device - 18pt in either direction. Supports text fields, useful for onboarding. 500pt wide on iPad.
      • +
      • VSAlertControllerStyleActionSheet: An alert that appears at the bottom of the display, similar to Apple’s action sheet stlye. Does NOT support text fields.
      • +
      + + See more +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      enum VSAlertControllerStyle {}
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      An enumeration describing the kinds of animations that can be used to present and hide an alert

      + +
        +
      • VSAlertControllerAnimationStyleRise: The alert rises from the bottom of the screen and falls down when dismissed.
      • +
      • VSAlertControllerAnimationStyleFall: The alert falls from the top of the screen and rises up when dismissed.
      • +
      • VSAlertControllerAnimationStyleSlide: The alert slides from the left of the screen and slides to the right when dismissed.
      • +
      • VSAlertControllerAnimationStyleFlip: The alert flips from the right, and flips to the left when dismissed.
      • +
      • VSAlertControllerAnimationStyleSticker: The alert page flips from the top, then again from the bottom when dismissed.
      • +
      • VSAlertControllerAnimationStyleCrossDisolve: The alert page fades in, then fades out dismissed.
      • +
      • VSAlertControllerAnimationStyleAutomatic: The alert chooses its presentation and dismissal styles automatically.
      • +
      + + See more +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      enum VSAlertControllerAnimationStyle {}
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + + +
    + + + diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertActionStyle.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertActionStyle.html new file mode 100644 index 0000000..4187004 --- /dev/null +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertActionStyle.html @@ -0,0 +1,215 @@ + + + + VSAlertActionStyle Enumeration Reference + + + + + + + + + + +
    +
    +

    + VSAlert Docs + (100% documented) +

    + +

    + + + View on GitHub + +

    + +
    +
    + +
    +
    +
    +
    +
    +

    VSAlertActionStyle

    +
    +
    +
    enum VSAlertActionStyle {}
    + +
    +
    +

    An enumeration for the kinds of actions that can be created

    + +
      +
    • VSAlertActionStyleDefault: A normal action
    • +
    • VSAlertActionStyleCancel: An action that indicates to the user that the current process wil be cancelled
    • +
    • VSAlertActionStyleDestructive: An action indicates to the user that an irreversible process is about to happen.
    • +
    + +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      A normal action

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertActionStyleDefault
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      An action that indicates to the user that the current process wil be cancelled

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertActionStyleCancel
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      An action indicates to the user that an irreversible process is about to happen.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertActionStyleDestructive
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + + +
    + + + diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertControllerAnimationStyle.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertControllerAnimationStyle.html new file mode 100644 index 0000000..9e94b82 --- /dev/null +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertControllerAnimationStyle.html @@ -0,0 +1,327 @@ + + + + VSAlertControllerAnimationStyle Enumeration Reference + + + + + + + + + + +
    +
    +

    + VSAlert Docs + (100% documented) +

    + +

    + + + View on GitHub + +

    + +
    +
    + +
    +
    +
    +
    +
    +

    VSAlertControllerAnimationStyle

    +
    +
    +
    enum VSAlertControllerAnimationStyle {}
    + +
    +
    +

    An enumeration describing the kinds of animations that can be used to present and hide an alert

    + +
      +
    • VSAlertControllerAnimationStyleRise: The alert rises from the bottom of the screen and falls down when dismissed.
    • +
    • VSAlertControllerAnimationStyleFall: The alert falls from the top of the screen and rises up when dismissed.
    • +
    • VSAlertControllerAnimationStyleSlide: The alert slides from the left of the screen and slides to the right when dismissed.
    • +
    • VSAlertControllerAnimationStyleFlip: The alert flips from the right, and flips to the left when dismissed.
    • +
    • VSAlertControllerAnimationStyleSticker: The alert page flips from the top, then again from the bottom when dismissed.
    • +
    • VSAlertControllerAnimationStyleCrossDisolve: The alert page fades in, then fades out dismissed.
    • +
    • VSAlertControllerAnimationStyleAutomatic: The alert chooses its presentation and dismissal styles automatically.
    • +
    + +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      The alert rises from the bottom of the screen and falls down when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleRise
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert falls from the top of the screen and rises up when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleFall
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert slides from the left of the screen and slides to the right when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleSlide
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert flips from the right, and flips to the left when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleFlip
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert page flips from the top, then again from the bottom when dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleSticker
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert page fades in, then fades out dismissed.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleCrossDisolve
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      The alert chooses its presentation and dismissal styles automatically.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerAnimationStyleAutomatic
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + + +
    + + + diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertControllerStyle.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertControllerStyle.html new file mode 100644 index 0000000..ccf38dd --- /dev/null +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Enums/VSAlertControllerStyle.html @@ -0,0 +1,215 @@ + + + + VSAlertControllerStyle Enumeration Reference + + + + + + + + + + +
    +
    +

    + VSAlert Docs + (100% documented) +

    + +

    + + + View on GitHub + +

    + +
    +
    + +
    +
    +
    +
    +
    +

    VSAlertControllerStyle

    +
    +
    +
    enum VSAlertControllerStyle {}
    + +
    +
    +

    An enumeration describing the kinds of alerts that VSAlertController can display

    + +
      +
    • VSAlertControllerStyleAlert: A standard alert, 270pt wide, variable height. Supports texts fields.
    • +
    • VSAlertControllerStyleWalkthroughAlert: A wider alert that stretches to the margins of the device - 18pt in either direction. Supports text fields, useful for onboarding. 500pt wide on iPad.
    • +
    • VSAlertControllerStyleActionSheet: An alert that appears at the bottom of the display, similar to Apple’s action sheet stlye. Does NOT support text fields.
    • +
    + +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      A standard alert, 270pt wide, variable height. Supports text fields

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerStyleAlert
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      A wider alert that stretches to the margins of the device - 18pt in either direction. Supports text fields, useful for onboarding. 500pt wide on iPad.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerStyleWalkthroughAlert
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      An alert that appears at the bottom of the display, similar to Apple’s action sheet stlye. Does NOT support text fields.

      + +
      +
      +

      Declaration

      +
      +

      Objective-C

      +
      VSAlertControllerStyleActionSheet
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + + +
    + + + diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Functions.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Functions.html deleted file mode 100644 index 5ccb077..0000000 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Functions.html +++ /dev/null @@ -1,152 +0,0 @@ - - - - Functions Reference - - - - - - - - - - -
    -
    -

    - VSAlert Docs - (76% documented) -

    - -

    - - - View on GitHub - -

    - -
    -
    - -
    -
    -
    -
    -
    -

    Functions

    -

    The following functions are available globally.

    - -
    -
    -
    -
      -
    • -
      - - - - NS_ENUM - -
      -
      -
      -
      -
      -
      -

      An enumeration for the kinds of actions that can be created

      - -
        -
      • VSAlertActionStyleDefault: A normal action
      • -
      • VSAlertActionStyleCancel: An action that indicates to the user that the current process wil be cancelled
      • -
      • VSAlertActionStyleDestructive: An action indicates to the user that an irreversible process is about to happen.
      • -
      - -
      -
      -

      Declaration

      -
      -

      Objective-C

      -
      int NS_ENUM(NSInteger, VSAlertActionStyle)
      - -
      -
      -
      -
      -
    • -
    -
    -
    -
    -
    -
    - - -
    - - - diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Protocols.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Protocols.html index ed3f104..cbd8dcd 100644 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Protocols.html +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Protocols.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -72,7 +72,7 @@

    Protocols

    Declaration

    Objective-C

    -
    @protocol VSAlertControllerDelegate
    +
    @protocol VSAlertControllerDelegate <NSObject>
    @@ -102,9 +102,6 @@

    Declaration

    diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Protocols/VSAlertControllerDelegate.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Protocols/VSAlertControllerDelegate.html index cf45507..21898ee 100644 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Protocols/VSAlertControllerDelegate.html +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/Protocols/VSAlertControllerDelegate.html @@ -16,7 +16,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -47,7 +47,7 @@

    VSAlertControllerDelegate

    -
    @protocol VSAlertControllerDelegate
    +
    @protocol VSAlertControllerDelegate <NSObject>
    @@ -325,9 +325,6 @@

    Parameters

    diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/index.html b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/index.html index c9fd3c3..f54a452 100644 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/index.html +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/index.html @@ -15,7 +15,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -87,9 +87,6 @@

    Community Guidelines

    diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/search.json b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/search.json index 7fe5040..6d7f7a0 100644 --- a/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/search.json +++ b/Documentation/docsets/VSAlert.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Functions.html#/c:@F@NS_ENUM":{"name":"NS_ENUM","abstract":"

    An enumeration for the kinds of actions that can be created

    "},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerWillAppear:":{"name":"-alertControllerWillAppear:","abstract":"

    Sent to the delegate just before the view controller appears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerDidAppear:":{"name":"-alertControllerDidAppear:","abstract":"

    Sent to teh delegate just after the view controller appears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerWillDisappear:":{"name":"-alertControllerWillDisappear:","abstract":"

    Sent to the delegate just before the view controller disappears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerDidDisappear:":{"name":"-alertControllerDidDisappear:","abstract":"

    Sent to teh delegate just after the view controller disappears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertController:didSelectAction:":{"name":"-alertController:didSelectAction:","abstract":"

    Sent to the delegate when the user taps on an action. Message is sent before the action block is executed.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html":{"name":"VSAlertControllerDelegate","abstract":"

    VSAlertControllerDelegate is a protocol used to inform an object about user intractions with alerts

    "},"Constants.html#/c:@UI_APPEARANCE_SELECTOR":{"name":"UI_APPEARANCE_SELECTOR","abstract":"

    Undocumented

    "},"Constants.html#/c:@VSAlertControllerNotImplementedException":{"name":"VSAlertControllerNotImplementedException","abstract":"

    An exception thrown when an unimplemented feature is encountered at runtime.

    "},"Constants.html#/c:@VSAlertControllerTextFieldInvalidException":{"name":"VSAlertControllerTextFieldInvalidException","abstract":"

    An exception thrown when a text field is added to an alert controller which doesn’t support text fields

    "},"Constants.html#/c:@VSAlertControllerPresentationAnimationException":{"name":"VSAlertControllerPresentationAnimationException","abstract":"

    An exception thrown when a view controller presentation animation fails

    "},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(cm)alertControllerWithTitle:message:image:preferredStyle:":{"name":"+alertControllerWithTitle:message:image:preferredStyle:","abstract":"

    A factory method to create an instance of VSAlertController. This is the preffered way to instantiate alerts

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(cm)alertControllerWithTitle:message:preferredStyle:":{"name":"+alertControllerWithTitle:message:preferredStyle:","abstract":"

    A factory method to create an instance of VSAlertController.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)initWithTitle:message:image:preferredStyle:":{"name":"-initWithTitle:message:image:preferredStyle:","abstract":"

    Create an instance of VSAlertController

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertTitleTextColor":{"name":"alertTitleTextColor","abstract":"

    The color of the alert title. The default value is black.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextColor":{"name":"alertMessageTextColor","abstract":"

    The color of the alert message (description). The default value is black.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertTitleTextFont":{"name":"alertTitleTextFont","abstract":"

    The font of the alert title. The default value is the system font size 17 weight medium.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextFont":{"name":"alertMessageTextFont","abstract":"

    The font of the alert message (description). The default value is the system font size 15 weight regular.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextAlignment":{"name":"alertMessageTextAlignment","abstract":"

    The text alignment of the alert message

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertBackgroundColor":{"name":"alertBackgroundColor","abstract":"

    The background color of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)addAction:":{"name":"-addAction:","abstract":"

    Add an action to an alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)addTextField:":{"name":"-addTextField:","abstract":"

    Add a text field to the alert. Rather than instantiating a UITextField object yourself, VSAlertController instantiates one for you. You can configure it using the optional configuration block

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)dismissOnBackgroundTap":{"name":"dismissOnBackgroundTap","abstract":"

    Set to YES if you want the alert to dismiss itself when the user taps on the background of the alert. Default is NO.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)animationStyle":{"name":"animationStyle","abstract":"

    Change the animation used when the alert is presented AND dismissed. Default is VSAlertControllerAnimationStyleRise.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)delegate":{"name":"delegate","abstract":"

    The delegate object to handle alert action interactions

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)style":{"name":"style","abstract":"

    The style of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)message":{"name":"message","abstract":"

    The message of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)image":{"name":"image","abstract":"

    The image of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(cm)alertActionWithTitle:style:action:":{"name":"+alertActionWithTitle:style:action:","abstract":"

    A factory method to create an instance of UIAlertAction. This is the prefered way to create alert actions.

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(im)initWithTitle:style:action:":{"name":"-initWithTitle:style:action:","abstract":"

    Create an instance of UIAlertAction

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)actionTextColor":{"name":"actionTextColor","abstract":"

    The color of the title text used in non-desctructive actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)destructiveActionTextColor":{"name":"destructiveActionTextColor","abstract":"

    The color of the title text used in destructive actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)actionTextFont":{"name":"actionTextFont","abstract":"

    The font of the title used in non-cancel actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)cancelActionTextFont":{"name":"cancelActionTextFont","abstract":"

    The font of the title used in cancel actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)alertTitle":{"name":"alertTitle","abstract":"

    The title of the alert

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)style":{"name":"style","abstract":"

    The display style of the alert

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)action":{"name":"action","abstract":"

    The block that will be executed when the user interacts with the action. The block is called on the main thread always, and begins executed before the alert is dismissed

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html":{"name":"VSAlertAction","abstract":"

    VSAlertAction is a specialized subclass of UIButton that is used to populate and provide interactive controls to an instance of VSAlertController.

    "},"Classes/VSAlertController.html":{"name":"VSAlertController","abstract":"

    VSAlertController is a drop-in replacement for UIAlertController with more features. It is created using the +alertControllerWithTitle:message:image:style: class method, and configured using instances of VSAlertAction. You can add text fields by calling -addTextField: on an instance of VSAlertController. Instantiate the controller, add your actions and textfieds. and any other configuration you might need. Present the controller modally using UIViewController’s -presentViewController:animated:completion: method. VSAlertController respects the animation paramater of this call, and you configure the animation in question by setting your instances animationStyle property before presentation. You can also change this property in the handler of an action to use a different animation on dismissal.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "}} \ No newline at end of file +{"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerWillAppear:":{"name":"-alertControllerWillAppear:","abstract":"

    Sent to the delegate just before the view controller appears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerDidAppear:":{"name":"-alertControllerDidAppear:","abstract":"

    Sent to teh delegate just after the view controller appears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerWillDisappear:":{"name":"-alertControllerWillDisappear:","abstract":"

    Sent to the delegate just before the view controller disappears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerDidDisappear:":{"name":"-alertControllerDidDisappear:","abstract":"

    Sent to teh delegate just after the view controller disappears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertController:didSelectAction:":{"name":"-alertController:didSelectAction:","abstract":"

    Sent to the delegate when the user taps on an action. Message is sent before the action block is executed.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html":{"name":"VSAlertControllerDelegate","abstract":"

    VSAlertControllerDelegate is a protocol used to inform an object about user intractions with alerts

    "},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleRise":{"name":"VSAlertControllerAnimationStyleRise","abstract":"

    The alert rises from the bottom of the screen and falls down when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleFall":{"name":"VSAlertControllerAnimationStyleFall","abstract":"

    The alert falls from the top of the screen and rises up when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleSlide":{"name":"VSAlertControllerAnimationStyleSlide","abstract":"

    The alert slides from the left of the screen and slides to the right when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleFlip":{"name":"VSAlertControllerAnimationStyleFlip","abstract":"

    The alert flips from the right, and flips to the left when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleSticker":{"name":"VSAlertControllerAnimationStyleSticker","abstract":"

    The alert page flips from the top, then again from the bottom when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleCrossDisolve":{"name":"VSAlertControllerAnimationStyleCrossDisolve","abstract":"

    The alert page fades in, then fades out dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleAutomatic":{"name":"VSAlertControllerAnimationStyleAutomatic","abstract":"

    The alert chooses its presentation and dismissal styles automatically.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerStyle.html#/c:@E@VSAlertControllerStyle@VSAlertControllerStyleAlert":{"name":"VSAlertControllerStyleAlert","abstract":"

    A standard alert, 270pt wide, variable height. Supports text fields

    ","parent_name":"VSAlertControllerStyle"},"Enums/VSAlertControllerStyle.html#/c:@E@VSAlertControllerStyle@VSAlertControllerStyleWalkthroughAlert":{"name":"VSAlertControllerStyleWalkthroughAlert","abstract":"

    A wider alert that stretches to the margins of the device - 18pt in either direction. Supports text fields, useful for onboarding. 500pt wide on iPad.

    ","parent_name":"VSAlertControllerStyle"},"Enums/VSAlertControllerStyle.html#/c:@E@VSAlertControllerStyle@VSAlertControllerStyleActionSheet":{"name":"VSAlertControllerStyleActionSheet","abstract":"

    An alert that appears at the bottom of the display, similar to Apple’s action sheet stlye. Does NOT support text fields.

    ","parent_name":"VSAlertControllerStyle"},"Enums/VSAlertActionStyle.html#/c:@E@VSAlertActionStyle@VSAlertActionStyleDefault":{"name":"VSAlertActionStyleDefault","abstract":"

    A normal action

    ","parent_name":"VSAlertActionStyle"},"Enums/VSAlertActionStyle.html#/c:@E@VSAlertActionStyle@VSAlertActionStyleCancel":{"name":"VSAlertActionStyleCancel","abstract":"

    An action that indicates to the user that the current process wil be cancelled

    ","parent_name":"VSAlertActionStyle"},"Enums/VSAlertActionStyle.html#/c:@E@VSAlertActionStyle@VSAlertActionStyleDestructive":{"name":"VSAlertActionStyleDestructive","abstract":"

    An action indicates to the user that an irreversible process is about to happen.

    ","parent_name":"VSAlertActionStyle"},"Enums/VSAlertActionStyle.html":{"name":"VSAlertActionStyle","abstract":"

    An enumeration for the kinds of actions that can be created

    "},"Enums/VSAlertControllerStyle.html":{"name":"VSAlertControllerStyle","abstract":"

    An enumeration describing the kinds of alerts that VSAlertController can display

    "},"Enums/VSAlertControllerAnimationStyle.html":{"name":"VSAlertControllerAnimationStyle","abstract":"

    An enumeration describing the kinds of animations that can be used to present and hide an alert

    "},"Constants.html#/c:@VSAlertControllerNotImplementedException":{"name":"VSAlertControllerNotImplementedException","abstract":"

    An exception thrown when an unimplemented feature is encountered at runtime.

    "},"Constants.html#/c:@VSAlertControllerTextFieldInvalidException":{"name":"VSAlertControllerTextFieldInvalidException","abstract":"

    An exception thrown when a text field is added to an alert controller which doesn’t support text fields

    "},"Constants.html#/c:@VSAlertControllerPresentationAnimationException":{"name":"VSAlertControllerPresentationAnimationException","abstract":"

    An exception thrown when a view controller presentation animation fails

    "},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(cm)alertControllerWithTitle:message:image:preferredStyle:":{"name":"+alertControllerWithTitle:message:image:preferredStyle:","abstract":"

    A factory method to create an instance of VSAlertController. This is the preffered way to instantiate alerts

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(cm)alertControllerWithTitle:message:preferredStyle:":{"name":"+alertControllerWithTitle:message:preferredStyle:","abstract":"

    A factory method to create an instance of VSAlertController.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)initWithTitle:message:image:preferredStyle:":{"name":"-initWithTitle:message:image:preferredStyle:","abstract":"

    Create an instance of VSAlertController

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertTitleTextColor":{"name":"alertTitleTextColor","abstract":"

    The color of the alert title. The default value is black.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextColor":{"name":"alertMessageTextColor","abstract":"

    The color of the alert message (description). The default value is black.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertTitleTextFont":{"name":"alertTitleTextFont","abstract":"

    The font of the alert title. The default value is the system font size 17 weight medium.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextFont":{"name":"alertMessageTextFont","abstract":"

    The font of the alert message (description). The default value is the system font size 15 weight regular.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextAlignment":{"name":"alertMessageTextAlignment","abstract":"

    The text alignment of the alert message

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertBackgroundColor":{"name":"alertBackgroundColor","abstract":"

    The background color of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)addAction:":{"name":"-addAction:","abstract":"

    Add an action to an alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)addTextField:":{"name":"-addTextField:","abstract":"

    Add a text field to the alert. Rather than instantiating a UITextField object yourself, VSAlertController instantiates one for you. You can configure it using the optional configuration block

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)dismissOnBackgroundTap":{"name":"dismissOnBackgroundTap","abstract":"

    Set to YES if you want the alert to dismiss itself when the user taps on the background of the alert. Default is NO.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)animationStyle":{"name":"animationStyle","abstract":"

    Change the animation used when the alert is presented AND dismissed. Default is VSAlertControllerAnimationStyleRise.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)delegate":{"name":"delegate","abstract":"

    The delegate object to handle alert action interactions

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)textFields":{"name":"textFields","abstract":"

    Returns the array of text field objects that are displayed in the alert, so you can interact with the user’s inputs.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)style":{"name":"style","abstract":"

    The style of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)message":{"name":"message","abstract":"

    The message of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)image":{"name":"image","abstract":"

    The image of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(cm)alertActionWithTitle:style:action:":{"name":"+alertActionWithTitle:style:action:","abstract":"

    A factory method to create an instance of UIAlertAction. This is the prefered way to create alert actions.

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(im)initWithTitle:style:action:":{"name":"-initWithTitle:style:action:","abstract":"

    Create an instance of UIAlertAction

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)actionTextColor":{"name":"actionTextColor","abstract":"

    The color of the title text used in non-desctructive actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)destructiveActionTextColor":{"name":"destructiveActionTextColor","abstract":"

    The color of the title text used in destructive actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)actionTextFont":{"name":"actionTextFont","abstract":"

    The font of the title used in non-cancel actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)cancelActionTextFont":{"name":"cancelActionTextFont","abstract":"

    The font of the title used in cancel actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)alertTitle":{"name":"alertTitle","abstract":"

    The title of the alert

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)style":{"name":"style","abstract":"

    The display style of the alert

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)action":{"name":"action","abstract":"

    The block that will be executed when the user interacts with the action. The block is called on the main thread always, and begins executed before the alert is dismissed

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html":{"name":"VSAlertAction","abstract":"

    VSAlertAction is a specialized subclass of UIButton that is used to populate and provide interactive controls to an instance of VSAlertController.

    "},"Classes/VSAlertController.html":{"name":"VSAlertController","abstract":"

    VSAlertController is a drop-in replacement for UIAlertController with more features. It is created using the +alertControllerWithTitle:message:image:style: class method, and configured using instances of VSAlertAction. You can add text fields by calling -addTextField: on an instance of VSAlertController. Instantiate the controller, add your actions and textfieds. and any other configuration you might need. Present the controller modally using UIViewController’s -presentViewController:animated:completion: method. VSAlertController respects the animation paramater of this call, and you configure the animation in question by setting your instances animationStyle property before presentation. You can also change this property in the handler of an action to use a different animation on dismissal.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "}} \ No newline at end of file diff --git a/Documentation/docsets/VSAlert.docset/Contents/Resources/docSet.dsidx b/Documentation/docsets/VSAlert.docset/Contents/Resources/docSet.dsidx index 4d886b09cac5b5cf3a797767c16fa6af4f8c2b5d..e0cfb7130c57d5a9ec1c830eefa1de051fb79952 100644 GIT binary patch literal 28672 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 F`@c5}E*1a) delta 1317 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 zyVL|=r>_M!a|FCrp0000000000000000000000000 S00000X#4@iDaix?umk`jTRwyU diff --git a/Documentation/index.html b/Documentation/index.html index c9fd3c3..f54a452 100644 --- a/Documentation/index.html +++ b/Documentation/index.html @@ -15,7 +15,7 @@

    VSAlert Docs - (76% documented) + (100% documented)

    @@ -87,9 +87,6 @@

    Community Guidelines

    diff --git a/Documentation/search.json b/Documentation/search.json index 7fe5040..6d7f7a0 100644 --- a/Documentation/search.json +++ b/Documentation/search.json @@ -1 +1 @@ -{"Functions.html#/c:@F@NS_ENUM":{"name":"NS_ENUM","abstract":"

    An enumeration for the kinds of actions that can be created

    "},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerWillAppear:":{"name":"-alertControllerWillAppear:","abstract":"

    Sent to the delegate just before the view controller appears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerDidAppear:":{"name":"-alertControllerDidAppear:","abstract":"

    Sent to teh delegate just after the view controller appears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerWillDisappear:":{"name":"-alertControllerWillDisappear:","abstract":"

    Sent to the delegate just before the view controller disappears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerDidDisappear:":{"name":"-alertControllerDidDisappear:","abstract":"

    Sent to teh delegate just after the view controller disappears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertController:didSelectAction:":{"name":"-alertController:didSelectAction:","abstract":"

    Sent to the delegate when the user taps on an action. Message is sent before the action block is executed.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html":{"name":"VSAlertControllerDelegate","abstract":"

    VSAlertControllerDelegate is a protocol used to inform an object about user intractions with alerts

    "},"Constants.html#/c:@UI_APPEARANCE_SELECTOR":{"name":"UI_APPEARANCE_SELECTOR","abstract":"

    Undocumented

    "},"Constants.html#/c:@VSAlertControllerNotImplementedException":{"name":"VSAlertControllerNotImplementedException","abstract":"

    An exception thrown when an unimplemented feature is encountered at runtime.

    "},"Constants.html#/c:@VSAlertControllerTextFieldInvalidException":{"name":"VSAlertControllerTextFieldInvalidException","abstract":"

    An exception thrown when a text field is added to an alert controller which doesn’t support text fields

    "},"Constants.html#/c:@VSAlertControllerPresentationAnimationException":{"name":"VSAlertControllerPresentationAnimationException","abstract":"

    An exception thrown when a view controller presentation animation fails

    "},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(cm)alertControllerWithTitle:message:image:preferredStyle:":{"name":"+alertControllerWithTitle:message:image:preferredStyle:","abstract":"

    A factory method to create an instance of VSAlertController. This is the preffered way to instantiate alerts

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(cm)alertControllerWithTitle:message:preferredStyle:":{"name":"+alertControllerWithTitle:message:preferredStyle:","abstract":"

    A factory method to create an instance of VSAlertController.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)initWithTitle:message:image:preferredStyle:":{"name":"-initWithTitle:message:image:preferredStyle:","abstract":"

    Create an instance of VSAlertController

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertTitleTextColor":{"name":"alertTitleTextColor","abstract":"

    The color of the alert title. The default value is black.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextColor":{"name":"alertMessageTextColor","abstract":"

    The color of the alert message (description). The default value is black.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertTitleTextFont":{"name":"alertTitleTextFont","abstract":"

    The font of the alert title. The default value is the system font size 17 weight medium.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextFont":{"name":"alertMessageTextFont","abstract":"

    The font of the alert message (description). The default value is the system font size 15 weight regular.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextAlignment":{"name":"alertMessageTextAlignment","abstract":"

    The text alignment of the alert message

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertBackgroundColor":{"name":"alertBackgroundColor","abstract":"

    The background color of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)addAction:":{"name":"-addAction:","abstract":"

    Add an action to an alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)addTextField:":{"name":"-addTextField:","abstract":"

    Add a text field to the alert. Rather than instantiating a UITextField object yourself, VSAlertController instantiates one for you. You can configure it using the optional configuration block

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)dismissOnBackgroundTap":{"name":"dismissOnBackgroundTap","abstract":"

    Set to YES if you want the alert to dismiss itself when the user taps on the background of the alert. Default is NO.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)animationStyle":{"name":"animationStyle","abstract":"

    Change the animation used when the alert is presented AND dismissed. Default is VSAlertControllerAnimationStyleRise.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)delegate":{"name":"delegate","abstract":"

    The delegate object to handle alert action interactions

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)style":{"name":"style","abstract":"

    The style of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)message":{"name":"message","abstract":"

    The message of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)image":{"name":"image","abstract":"

    The image of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(cm)alertActionWithTitle:style:action:":{"name":"+alertActionWithTitle:style:action:","abstract":"

    A factory method to create an instance of UIAlertAction. This is the prefered way to create alert actions.

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(im)initWithTitle:style:action:":{"name":"-initWithTitle:style:action:","abstract":"

    Create an instance of UIAlertAction

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)actionTextColor":{"name":"actionTextColor","abstract":"

    The color of the title text used in non-desctructive actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)destructiveActionTextColor":{"name":"destructiveActionTextColor","abstract":"

    The color of the title text used in destructive actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)actionTextFont":{"name":"actionTextFont","abstract":"

    The font of the title used in non-cancel actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)cancelActionTextFont":{"name":"cancelActionTextFont","abstract":"

    The font of the title used in cancel actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)alertTitle":{"name":"alertTitle","abstract":"

    The title of the alert

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)style":{"name":"style","abstract":"

    The display style of the alert

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)action":{"name":"action","abstract":"

    The block that will be executed when the user interacts with the action. The block is called on the main thread always, and begins executed before the alert is dismissed

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html":{"name":"VSAlertAction","abstract":"

    VSAlertAction is a specialized subclass of UIButton that is used to populate and provide interactive controls to an instance of VSAlertController.

    "},"Classes/VSAlertController.html":{"name":"VSAlertController","abstract":"

    VSAlertController is a drop-in replacement for UIAlertController with more features. It is created using the +alertControllerWithTitle:message:image:style: class method, and configured using instances of VSAlertAction. You can add text fields by calling -addTextField: on an instance of VSAlertController. Instantiate the controller, add your actions and textfieds. and any other configuration you might need. Present the controller modally using UIViewController’s -presentViewController:animated:completion: method. VSAlertController respects the animation paramater of this call, and you configure the animation in question by setting your instances animationStyle property before presentation. You can also change this property in the handler of an action to use a different animation on dismissal.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

    "}} \ No newline at end of file +{"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerWillAppear:":{"name":"-alertControllerWillAppear:","abstract":"

    Sent to the delegate just before the view controller appears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerDidAppear:":{"name":"-alertControllerDidAppear:","abstract":"

    Sent to teh delegate just after the view controller appears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerWillDisappear:":{"name":"-alertControllerWillDisappear:","abstract":"

    Sent to the delegate just before the view controller disappears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertControllerDidDisappear:":{"name":"-alertControllerDidDisappear:","abstract":"

    Sent to teh delegate just after the view controller disappears.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html#/c:objc(pl)VSAlertControllerDelegate(im)alertController:didSelectAction:":{"name":"-alertController:didSelectAction:","abstract":"

    Sent to the delegate when the user taps on an action. Message is sent before the action block is executed.

    ","parent_name":"VSAlertControllerDelegate"},"Protocols/VSAlertControllerDelegate.html":{"name":"VSAlertControllerDelegate","abstract":"

    VSAlertControllerDelegate is a protocol used to inform an object about user intractions with alerts

    "},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleRise":{"name":"VSAlertControllerAnimationStyleRise","abstract":"

    The alert rises from the bottom of the screen and falls down when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleFall":{"name":"VSAlertControllerAnimationStyleFall","abstract":"

    The alert falls from the top of the screen and rises up when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleSlide":{"name":"VSAlertControllerAnimationStyleSlide","abstract":"

    The alert slides from the left of the screen and slides to the right when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleFlip":{"name":"VSAlertControllerAnimationStyleFlip","abstract":"

    The alert flips from the right, and flips to the left when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleSticker":{"name":"VSAlertControllerAnimationStyleSticker","abstract":"

    The alert page flips from the top, then again from the bottom when dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleCrossDisolve":{"name":"VSAlertControllerAnimationStyleCrossDisolve","abstract":"

    The alert page fades in, then fades out dismissed.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerAnimationStyle.html#/c:@E@VSAlertControllerAnimationStyle@VSAlertControllerAnimationStyleAutomatic":{"name":"VSAlertControllerAnimationStyleAutomatic","abstract":"

    The alert chooses its presentation and dismissal styles automatically.

    ","parent_name":"VSAlertControllerAnimationStyle"},"Enums/VSAlertControllerStyle.html#/c:@E@VSAlertControllerStyle@VSAlertControllerStyleAlert":{"name":"VSAlertControllerStyleAlert","abstract":"

    A standard alert, 270pt wide, variable height. Supports text fields

    ","parent_name":"VSAlertControllerStyle"},"Enums/VSAlertControllerStyle.html#/c:@E@VSAlertControllerStyle@VSAlertControllerStyleWalkthroughAlert":{"name":"VSAlertControllerStyleWalkthroughAlert","abstract":"

    A wider alert that stretches to the margins of the device - 18pt in either direction. Supports text fields, useful for onboarding. 500pt wide on iPad.

    ","parent_name":"VSAlertControllerStyle"},"Enums/VSAlertControllerStyle.html#/c:@E@VSAlertControllerStyle@VSAlertControllerStyleActionSheet":{"name":"VSAlertControllerStyleActionSheet","abstract":"

    An alert that appears at the bottom of the display, similar to Apple’s action sheet stlye. Does NOT support text fields.

    ","parent_name":"VSAlertControllerStyle"},"Enums/VSAlertActionStyle.html#/c:@E@VSAlertActionStyle@VSAlertActionStyleDefault":{"name":"VSAlertActionStyleDefault","abstract":"

    A normal action

    ","parent_name":"VSAlertActionStyle"},"Enums/VSAlertActionStyle.html#/c:@E@VSAlertActionStyle@VSAlertActionStyleCancel":{"name":"VSAlertActionStyleCancel","abstract":"

    An action that indicates to the user that the current process wil be cancelled

    ","parent_name":"VSAlertActionStyle"},"Enums/VSAlertActionStyle.html#/c:@E@VSAlertActionStyle@VSAlertActionStyleDestructive":{"name":"VSAlertActionStyleDestructive","abstract":"

    An action indicates to the user that an irreversible process is about to happen.

    ","parent_name":"VSAlertActionStyle"},"Enums/VSAlertActionStyle.html":{"name":"VSAlertActionStyle","abstract":"

    An enumeration for the kinds of actions that can be created

    "},"Enums/VSAlertControllerStyle.html":{"name":"VSAlertControllerStyle","abstract":"

    An enumeration describing the kinds of alerts that VSAlertController can display

    "},"Enums/VSAlertControllerAnimationStyle.html":{"name":"VSAlertControllerAnimationStyle","abstract":"

    An enumeration describing the kinds of animations that can be used to present and hide an alert

    "},"Constants.html#/c:@VSAlertControllerNotImplementedException":{"name":"VSAlertControllerNotImplementedException","abstract":"

    An exception thrown when an unimplemented feature is encountered at runtime.

    "},"Constants.html#/c:@VSAlertControllerTextFieldInvalidException":{"name":"VSAlertControllerTextFieldInvalidException","abstract":"

    An exception thrown when a text field is added to an alert controller which doesn’t support text fields

    "},"Constants.html#/c:@VSAlertControllerPresentationAnimationException":{"name":"VSAlertControllerPresentationAnimationException","abstract":"

    An exception thrown when a view controller presentation animation fails

    "},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(cm)alertControllerWithTitle:message:image:preferredStyle:":{"name":"+alertControllerWithTitle:message:image:preferredStyle:","abstract":"

    A factory method to create an instance of VSAlertController. This is the preffered way to instantiate alerts

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(cm)alertControllerWithTitle:message:preferredStyle:":{"name":"+alertControllerWithTitle:message:preferredStyle:","abstract":"

    A factory method to create an instance of VSAlertController.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)initWithTitle:message:image:preferredStyle:":{"name":"-initWithTitle:message:image:preferredStyle:","abstract":"

    Create an instance of VSAlertController

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertTitleTextColor":{"name":"alertTitleTextColor","abstract":"

    The color of the alert title. The default value is black.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextColor":{"name":"alertMessageTextColor","abstract":"

    The color of the alert message (description). The default value is black.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertTitleTextFont":{"name":"alertTitleTextFont","abstract":"

    The font of the alert title. The default value is the system font size 17 weight medium.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextFont":{"name":"alertMessageTextFont","abstract":"

    The font of the alert message (description). The default value is the system font size 15 weight regular.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertMessageTextAlignment":{"name":"alertMessageTextAlignment","abstract":"

    The text alignment of the alert message

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)alertBackgroundColor":{"name":"alertBackgroundColor","abstract":"

    The background color of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)addAction:":{"name":"-addAction:","abstract":"

    Add an action to an alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(im)addTextField:":{"name":"-addTextField:","abstract":"

    Add a text field to the alert. Rather than instantiating a UITextField object yourself, VSAlertController instantiates one for you. You can configure it using the optional configuration block

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)dismissOnBackgroundTap":{"name":"dismissOnBackgroundTap","abstract":"

    Set to YES if you want the alert to dismiss itself when the user taps on the background of the alert. Default is NO.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)animationStyle":{"name":"animationStyle","abstract":"

    Change the animation used when the alert is presented AND dismissed. Default is VSAlertControllerAnimationStyleRise.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)delegate":{"name":"delegate","abstract":"

    The delegate object to handle alert action interactions

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)textFields":{"name":"textFields","abstract":"

    Returns the array of text field objects that are displayed in the alert, so you can interact with the user’s inputs.

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)style":{"name":"style","abstract":"

    The style of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)message":{"name":"message","abstract":"

    The message of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertController.html#/c:objc(cs)VSAlertController(py)image":{"name":"image","abstract":"

    The image of the alert

    ","parent_name":"VSAlertController"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(cm)alertActionWithTitle:style:action:":{"name":"+alertActionWithTitle:style:action:","abstract":"

    A factory method to create an instance of UIAlertAction. This is the prefered way to create alert actions.

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(im)initWithTitle:style:action:":{"name":"-initWithTitle:style:action:","abstract":"

    Create an instance of UIAlertAction

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)actionTextColor":{"name":"actionTextColor","abstract":"

    The color of the title text used in non-desctructive actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)destructiveActionTextColor":{"name":"destructiveActionTextColor","abstract":"

    The color of the title text used in destructive actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)actionTextFont":{"name":"actionTextFont","abstract":"

    The font of the title used in non-cancel actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)cancelActionTextFont":{"name":"cancelActionTextFont","abstract":"

    The font of the title used in cancel actions

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)alertTitle":{"name":"alertTitle","abstract":"

    The title of the alert

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)style":{"name":"style","abstract":"

    The display style of the alert

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html#/c:objc(cs)VSAlertAction(py)action":{"name":"action","abstract":"

    The block that will be executed when the user interacts with the action. The block is called on the main thread always, and begins executed before the alert is dismissed

    ","parent_name":"VSAlertAction"},"Classes/VSAlertAction.html":{"name":"VSAlertAction","abstract":"

    VSAlertAction is a specialized subclass of UIButton that is used to populate and provide interactive controls to an instance of VSAlertController.

    "},"Classes/VSAlertController.html":{"name":"VSAlertController","abstract":"

    VSAlertController is a drop-in replacement for UIAlertController with more features. It is created using the +alertControllerWithTitle:message:image:style: class method, and configured using instances of VSAlertAction. You can add text fields by calling -addTextField: on an instance of VSAlertController. Instantiate the controller, add your actions and textfieds. and any other configuration you might need. Present the controller modally using UIViewController’s -presentViewController:animated:completion: method. VSAlertController respects the animation paramater of this call, and you configure the animation in question by setting your instances animationStyle property before presentation. You can also change this property in the handler of an action to use a different animation on dismissal.

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Constants.html":{"name":"Constants","abstract":"

    The following constants are available globally.

    "},"Enums.html":{"name":"Enumerations","abstract":"

    The following enumerations are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "}} \ No newline at end of file diff --git a/Documentation/undocumented.json b/Documentation/undocumented.json index 18373ca..0296c4d 100644 --- a/Documentation/undocumented.json +++ b/Documentation/undocumented.json @@ -1,89 +1,6 @@ { "warnings": [ - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertAction.h", - "line": 34, - "symbol": "", - "symbol_kind": "sourcekitten.source.lang.objc.decl.unexposed", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertAction.h", - "line": 72, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertAction.h", - "line": 77, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertAction.h", - "line": 82, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertAction.h", - "line": 87, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertController.h", - "line": 51, - "symbol": "", - "symbol_kind": "sourcekitten.source.lang.objc.decl.unexposed", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertController.h", - "line": 101, - "symbol": "", - "symbol_kind": "sourcekitten.source.lang.objc.decl.unexposed", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertController.h", - "line": 198, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertController.h", - "line": 203, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertController.h", - "line": 208, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertController.h", - "line": 213, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - }, - { - "file": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert/VSAlert/VSAlertController.h", - "line": 223, - "symbol": "UI_APPEARANCE_SELECTOR", - "symbol_kind": "sourcekitten.source.lang.objc.decl.constant", - "warning": "undocumented" - } + ], "source_directory": "/Users/vsanthanam/Documents/Dev/Users/Varun/VSAlert" } \ No newline at end of file