public SettingsViewController( ContainerViewController parent )
     : base()
 {
     Parent = parent;
     ConfigurationTemplates = new List<Rock.Client.DefinedValue>();
     Campuses = new List<Rock.Client.Campus>();
 }
        public FamilyInfoViewController( ContainerViewController parent, Rock.Client.Family family )
        {
            SaveResult = new SaveResultView();

            Parent = parent;

            FamilyGroupObject = null;

            // support creating a NEW family by letting them pass null as the
            // family argument
            if ( family != null )
            {
                Family = family;
            }
            else
            {
                GuestFamilies = new List<Rock.Client.GuestFamily>();
                Family = new Rock.Client.Family();
            }

            Dynamic_FamilyControls = new List<IDynamic_UIView>( );
        }
 public PersonInfoViewController( ContainerViewController parent )
 {
     Parent = parent;
 }
 public SearchFamiliesViewController( ContainerViewController parent )
     : base()
 {
     Parent = parent;
 }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            ImageCropViewController = new ImageCropViewController( );
            LoginViewController = new LoginViewController( this );
            ContainerViewController = new ContainerViewController( this );
            FirstRunViewController = new FirstRunViewController( this );

            // load any current cached config
            Config.Instance.LoadFromDevice( );

            // color it with whatever we currently have.
            if ( Config.Instance.VisualSettings.TopHeaderBGColor != null && Config.Instance.VisualSettings.BackgroundColor != null )
            {
                ColorNavBar( Config.Instance.VisualSettings.TopHeaderBGColor );
                View.BackgroundColor = Theme.GetColor( Config.Instance.VisualSettings.BackgroundColor );
            }
            else
            {
                // if either of our colors are null, this is probably our first run, so just use black.

                ColorNavBar( "#000000FF" );
                View.BackgroundColor = Theme.GetColor( "#000000FF" );
            }

            // create a simple centered label (slightly above center, actually) that lets the user know we're trying to connect
            ConnectingLabel = new UILabel();
            ConnectingLabel.Layer.AnchorPoint = CGPoint.Empty;
            ConnectingLabel.Font = ConnectingLabel.Font.WithSize( 32 );
            ConnectingLabel.Text = "Connecting to Rock";
            ConnectingLabel.TextColor = Theme.GetColor( "#6A6A6AFF" );
            ConnectingLabel.SizeToFit( );
            ConnectingLabel.Layer.Position = new CGPoint( ( View.Bounds.Width - ConnectingLabel.Bounds.Width ) / 2,
                                                         ( (View.Bounds.Height - ConnectingLabel.Bounds.Height ) / 2) - ConnectingLabel.Bounds.Height  );
            View.AddSubview( ConnectingLabel );

            // show a spinner so the user feels like there's activity happening
            ProgressIndicator = new UIActivityIndicatorView();
            ProgressIndicator.Layer.AnchorPoint = CGPoint.Empty;
            ProgressIndicator.ActivityIndicatorViewStyle = UIActivityIndicatorViewStyle.WhiteLarge;
            ProgressIndicator.Color = UIColor.Gray;
            ProgressIndicator.StartAnimating( );
            ProgressIndicator.Layer.Position = new CGPoint( ( View.Bounds.Width - ProgressIndicator.Bounds.Width ) / 2, ConnectingLabel.Frame.Bottom + 30 );
            View.AddSubview( ProgressIndicator );

            LockTimer = DateTime.Now;
        }