public LoginViewController(bool enterprise)
     : base("LoginViewController", null)
 {
     Title       = "Login".t();
     _enterprise = enterprise;
     NavigationItem.LeftBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Theme.CurrentTheme.BackButton, () => NavigationController.PopViewControllerAnimated(true)));
 }
Example #2
0
        public EditGistController(GistModel gist)
            : base(true)
        {
            Title         = "Edit Gist";
            Style         = UITableViewStyle.Grouped;
            _originalGist = gist;

            NavigationItem.LeftBarButtonItem  = new UIBarButtonItem(NavigationButton.Create(CodeFramework.Theme.CurrentTheme.CancelButton, Discard));
            NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(CodeFramework.Theme.CurrentTheme.SaveButton, Save));

            _model             = new GistEditModel();
            _model.Description = gist.Description;
            _model.Files       = new Dictionary <string, GistEditModel.File>();

            if (gist.Files != null)
            {
                foreach (var f in gist.Files)
                {
                    _model.Files.Add(f.Key, new GistEditModel.File()
                    {
                        Content = f.Value.Content
                    });
                }
            }
        }
Example #3
0
    void OnNavigationButtonEvent(NavigationButton button, NavigationButton.Event evt)
    {
        Debug.LogFormat("OnNavigationButtonEvent {0} {1}", button.name, evt);
        if (evt != NavigationButton.Event.Clicked)
        {
            return;
        }

        if (VideoControl.Instance.CurrentState == VideoControl.State.Interactive &&
            VideoControl.Instance.currentScene.Value.label == VideoControl.SCENE_TOP_MIDDLE)
        {
            if (button.name == "Top")
            {
                VideoControl.Instance.GotoScene(VideoControl.SCENE_TOP_MIDDLE);
            }
            else
            {
                VideoControl.Instance.GotoScene(VideoControl.SCENE_UNDER);
            }

            // enable interactive controls
            foreach (var but in navigationButtons)
            {
                but.Hide();
            }
        }
    }
 /// <summary>
 /// Initializes a new instance of the <see cref="BaseDialogViewController"/> class.
 /// </summary>
 /// <param name="push">If set to <c>true</c> push.</param>
 /// <param name="backButtonText">Back button text.</param>
 public BaseDialogViewController(bool push, string backButtonText)
     : base(new RootElement(""), push)
 {
     NavigationItem.LeftBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Back, () => NavigationController.PopViewControllerAnimated(true)));
     SearchPlaceholder = "Search";
     Autorotate        = true;
 }
Example #5
0
        public AccountGistsViewController(string username)
            : base(new AccountGistsViewModel(username))
        {
            if (username != null)
            {
                if (Application.Accounts.ActiveAccount.Username.Equals(username))
                {
                    Title = "My Gists";
                }
                else
                {
                    if (username.EndsWith("s"))
                    {
                        Title = username + "' Gists";
                    }
                    else
                    {
                        Title = username + "'s Gists";
                    }
                }
            }
            else
            {
                Title = "Gists";
            }

            NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(CodeFramework.Theme.CurrentTheme.AddButton, NewGist));
        }
Example #6
0
        public Composer() : base(null, null)
        {
            Title = "New Comment";

            // Navigation Bar
            _navigationBar = new UINavigationBar(new RectangleF(0, 0, UIScreen.MainScreen.Bounds.Width, 44))
            {
                AutoresizingMask = UIViewAutoresizing.FlexibleWidth, AutosizesSubviews = true
            };
            _navItem = new UINavigationItem("");
            var close = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Cancel, CloseComposer));

            _navItem.LeftBarButtonItem = close;
            SendItem = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Save, PostCallback));
            _navItem.RightBarButtonItem = SendItem;

            _navigationBar.PushNavigationItem(_navItem, false);

            // Composer
            _composerView = new ComposerView(ComputeComposerSize(RectangleF.Empty), this);

            // Add the views
            View.AddSubview(_composerView);
            View.AddSubview(_navigationBar);
        }
Example #7
0
        public RepositoryViewController(string username, string slug, string name)
        {
            Title     = name;
            ViewModel = new RepositoryViewModel(username, slug);

            _header = new HeaderView(View.Bounds.Width)
            {
                Title = name, ShadowImage = false
            };

            NavigationItem.RightBarButtonItem         = new UIBarButtonItem(NavigationButton.Create(Theme.CurrentTheme.GearButton, ShowExtraMenu));
            NavigationItem.RightBarButtonItem.Enabled = false;

            ViewModel.Bind(x => x.Repository, x => {
                NavigationItem.RightBarButtonItem.Enabled = true;
                Render(x);
            });

            ViewModel.Bind(x => x.Readme, () => {
                // Not very efficient but it'll work for now.
                if (ViewModel.Repository != null)
                {
                    Render(ViewModel.Repository);
                }
            });
        }
Example #8
0
        /// <summary>
        /// Add a navigation button to the main menu, using the config to
        /// determine their positioning and other properties.
        /// </summary>
        /// <param name="screen">The Screen the nav button will move to.</param>
        /// <param name="typeName">The "typeName" of the button, or the prefix in the config.</param>
        private void AddNavButton(PulsarcScreen screen, string typeName)
        {
            // Find variables for TDE
            string  textStr    = GetSkinnablePropertyString($"{typeName}Text");                                 // string text
            Vector2 position   = Skin.GetConfigStartPosition("main_menu", "Properties", $"{typeName}StartPos"); // Vector2 position;
            int     fontSize   = GetSkinnablePropertyInt($"{typeName}TextFontSize");
            Anchor  textAnchor = GetSkinnablePropertyAnchor($"{typeName}TextAnchor");                           // Anchor textAnchor;
            Color   textColor  = Skin.GetConfigColor("main_menu", "Properties", $"{typeName}TextColor");        // Color textColor;

            // Make TDE
            TextDisplayElement text = new TextDisplayElement(textStr, position, fontSize, textAnchor, textColor);

            // Make NavButton that uses the TDE
            NavigationButton navButton = new NavigationButton(screen, GetSkinnablePropertyInt($"{typeName}Type"), position, text);

            // Offset the button
            Vector2 offset = new Vector2(
                GetSkinnablePropertyInt($"{typeName}X"),
                GetSkinnablePropertyInt($"{typeName}Y"));

            navButton.Move(offset);

            // Add the button
            navButtons.Add(navButton);
        }
Example #9
0
        public ModifyGistFileController(string name = null, string content = null)
            : base("ModifyGistFileController", null)
        {
            _name    = name;
            _content = content;

            Title = "New File";
            NavigationItem.LeftBarButtonItem  = new UIBarButtonItem(NavigationButton.Create(CodeFramework.Theme.CurrentTheme.BackButton, () => NavigationController.PopViewControllerAnimated(true)));
            NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(CodeFramework.Theme.CurrentTheme.SaveButton, () => {
                var newName    = Name.Text;
                var newContent = Text.Text;

                if (String.IsNullOrEmpty(newContent))
                {
                    MonoTouch.Utilities.ShowAlert("No Content", "You cannot save a file without content!");
                    return;
                }

                try
                {
                    if (Save != null)
                    {
                        Save(newName, newContent);
                    }
                    NavigationController.PopViewControllerAnimated(true);
                }
                catch (Exception e)
                {
                    MonoTouch.Utilities.ShowAlert("Error", e.Message);
                    return;
                }
            }));
        }
Example #10
0
 public RawContentViewController(string rawUrl, string githubUrl)
 {
     _rawUrl    = rawUrl;
     _githubUrl = githubUrl;
     Title      = rawUrl.Substring(rawUrl.LastIndexOf('/') + 1);
     NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Theme.CurrentTheme.GearButton, ShowExtraMenu));
 }
Example #11
0
 public DmpController(ICurtinUserService lookupService, IProjectRepository projectRepository, ITimerRepository timerRepository)
     : base(lookupService)
 {
     _projectRepository       = projectRepository;
     _timerRepository         = timerRepository;
     _navigationText          = new NavigationButton();
     ViewBag.NavigationButton = _navigationText;
 }
Example #12
0
        private void NavigationButton_OnSelectionChanged(object sender, EventArgs e)
        {
            NavigationButton button = sender as NavigationButton;

            if (button != null)
            {
                navigator.SelectionChanged(button);
            }
        }
 public IssueEditViewController(string username, string repoSlug)
     : base(true)
 {
     Title = "New Issue";
     NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Theme.CurrentTheme.SaveButton, SaveIssue));
     Username        = username;
     RepoSlug        = repoSlug;
     _selectedLabels = new List <LabelModel>();
 }
Example #14
0
        public GistViewableFileController(GistFileModel model, string gistUrl)
            : base(true)
        {
            _model = model;
            Title  = model.Filename;

            NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Theme.CurrentTheme.ViewButton, () => {
                NavigationController.PushViewController(new GistFileViewController(model, gistUrl, _rawContent), true);
            }));
        }
Example #15
0
        public WebViewController()
        {
            Web = new UIWebView {
                ScalesPageToFit = true
            };
            Web.LoadFinished += OnLoadFinished;
            Web.LoadStarted  += OnLoadStarted;
            Web.LoadError    += OnLoadError;

            NavigationItem.LeftBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Back, () => NavigationController.PopViewControllerAnimated(true)));
        }
Example #16
0
        protected override void ProfileButtonClicked(object sender, System.EventArgs e)
        {
            var accounts = new AccountsViewController();
            var nav      = new UINavigationController(accounts);

            accounts.NavigationItem.LeftBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Theme.CurrentTheme.CancelButton, () => {
                var appDelegate = UIApplication.SharedApplication.Delegate as AppDelegate;
                Transitions.Transition(appDelegate.Slideout, UIViewAnimationOptions.TransitionFlipFromRight);
            }));
            Transitions.Transition(nav, UIViewAnimationOptions.TransitionFlipFromLeft);
        }
Example #17
0
 public void ChangeButtonStatus(NavigationButton button, bool enabled)
 {
     if ( button == NavigationButton.Prev )
     {
         button_Prev.Enabled = enabled;
     }
     else if (button == NavigationButton.Next)
     {
         button_Next.Enabled = enabled;
     }
 }
Example #18
0
 /// <summary>
 /// This method leads on button
 /// </summary>
 /// <param name="locator"></param>
 public void NavigateOnButton(By locator)
 {
     try
     {
         Wait.Until(t => WebDriver.FindElement(locator).Displayed);
         NavigationButton = WebDriver.FindElement(locator);
         NavigationButton.Click();
     }
     catch (UnhandledAlertException)
     {
     }
 }
Example #19
0
        public GistFileController(GistFileModel model)
        {
            Title  = model.Filename;
            _model = model;

            //We can view markdown!
            if (model.Language != null && (model.Language.Equals("Markdown") || model.Language.Equals("HTML")))
            {
                NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.View, () => {
                    NavigationController.PushViewController(new GistViewableFileController(model, _content), true);
                }));
            }
        }
Example #20
0
 private void NextTestcase()
 {
     _pressButton = NavigationButton.Next;
     if (!ManualTest.IsConfirmed())
     {
         _tsettings.TCResult = StrResult.NOTRUN;
         ManualTest.Confirm();
     }
     else
     {
         Next();
     }
 }
Example #21
0
 private void PreviousTestcase()
 {
     _pressButton = NavigationButton.Previous;
     if (!ManualTest.IsConfirmed())
     {
         _tsettings.TCResult = StrResult.NOTRUN;
         ManualTest.Confirm();
     }
     else
     {
         Previous();
     }
 }
Example #22
0
        private async void ShowcaseButton_OnClick(object sender, RoutedEventArgs e)
        {
            await Task.WhenAll(
                AnimationTrigger.AnimateClose(),
                ShowcaseButton.AnimateAsync(new FlipAnimation()),
                ShowcaseButton.AnimateAsync(new BounceOutDownAnimation()),
                NavigationButton.AnimateAsync(new BounceOutDownAnimation()),
                ExperimentsButton.AnimateAsync(new BounceOutDownAnimation()),
                SponsorText.AnimateAsync(new LightSpeedOutLeftAnimation())
                );

            NavigationService.Navigate(new Uri("/ShowcasePage.xaml", UriKind.Relative));
        }
        public CreateGistViewController()
            : base(true)
        {
            Title = "Create Gist";
            Style = UITableViewStyle.Grouped;

            NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(CodeFramework.Theme.CurrentTheme.SaveButton, Save));

            _model = new GistCreateModel()
            {
                Public = true
            };
            _model.Files = new Dictionary <string, GistCreateModel.File>();
        }
Example #24
0
        public IssuesViewController(string user, string slug)
        {
            ViewModel = new IssuesViewModel(user, slug);
            BindCollection(ViewModel.Issues, CreateElement);

            NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Theme.CurrentTheme.AddButton, () => {
                var b = new IssueEditViewController(ViewModel.User, ViewModel.Slug)
                {
                    Success = (issue) => ViewModel.CreateIssue(issue)
                };
                NavigationController.PushViewController(b, true);
            }));

            ViewModel.Bind(x => x.IsLoading, Loading);
        }
Example #25
0
        public CreateGistController()
            : base(true)
        {
            Title = "Create Gist";
            Style = UITableViewStyle.Grouped;

            NavigationItem.LeftBarButtonItem  = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Cancel, Discard));
            NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Save, Save));

            _model = new GistCreateModel()
            {
                Public = true
            };
            _model.Files = new Dictionary <string, GistCreateModel.File>();
        }
Example #26
0
        private void UpdateOwned()
        {
            var owned = false;

            if (Model != null && Model.User != null)
            {
                if (Model.User.Login.ToLower().Equals(Application.Account.Username.ToLower()))
                {
                    owned = true;
                }
            }

            if (owned)
            {
                NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Edit, () => {
                    //We need to make sure we have the FULL gist
                    this.DoWork(() => {
                        var gist = Application.Client.API.GetGist(Id).Data;
                        InvokeOnMainThread(() => {
                            var gistController     = new EditGistController(gist);
                            gistController.Created = (id) => {
                                Model = null;
                                Refresh();
                            };
                            var navController = new UINavigationController(gistController);
                            PresentViewController(navController, true, null);
                        });
                    });
                }));
            }
            else
            {
                NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Fork, () => {
                    NavigationItem.RightBarButtonItem.Enabled = false;

                    this.DoWork(() => {
                        var forkedGist = Application.Client.API.ForkGist(Id);
                        InvokeOnMainThread(delegate {
                            NavigationController.PushViewController(new GistInfoController(forkedGist.Data.Id), true);
                        });
                    }, null, () => {
                        NavigationItem.RightBarButtonItem.Enabled = true;
                    });
                }));
            }
        }
        private void UpdateNavigationBar()
        {
            if (_navigationBar == null)
            {
                return;
            }

            bool wasLayoutLocked = _navigationBar.IsLayoutLocked;

            _navigationBar.IsLayoutLocked = true;

            // Remove previous buttons
            _navigationBar.DisposeChildren();

            // Spawn buttons
            List <ContentTreeNode> nodes = new List <ContentTreeNode>(8);
            ContentTreeNode        node  = SelectedNode;

            while (node != null)
            {
                nodes.Add(node);
                node = node.ParentNode;
            }
            float x = NavigationBar.DefaultButtonsMargin;
            float h = _toolStrip.ItemsHeight - 2 * ToolStrip.DefaultMarginV;

            for (int i = nodes.Count - 1; i >= 0; i--)
            {
                var button = new NavigationButton(nodes[i], x, ToolStrip.DefaultMarginV, h);
                button.PerformLayout();
                x += button.Width + NavigationBar.DefaultButtonsMargin;
                _navigationBar.AddChild(button);
            }

            // Update
            _navigationBar.IsLayoutLocked = wasLayoutLocked;
            _navigationBar.PerformLayout();
        }
Example #28
0
        public IssueViewController(string user, string slug, ulong id)
            : base(false)
        {
            Title     = "Issue #" + id;
            ViewModel = new IssueViewModel(user, slug, id);

            NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(Theme.CurrentTheme.EditButton, () => {
                var editController = new IssueEditViewController(ViewModel.Username, ViewModel.Repository)
                {
                    ExistingIssue = ViewModel.Issue,
                    Title         = "Edit Issue",
                    Success       = EditingComplete,
                };
                NavigationController.PushViewController(editController, true);
            }));
            NavigationItem.RightBarButtonItem.Enabled = false;

            ViewModel.Bind(x => x.Issue, RenderIssue);
            ViewModel.BindCollection(x => x.Comments, (e) => RenderComments());

            var path = System.IO.Path.Combine(NSBundle.MainBundle.BundlePath, "Issue.html");

            LoadFile(path);
        }
Example #29
0
        private void UpdateOwned()
        {
            //Is it owned?
            if (string.Equals(Application.Account.Username, ViewModel.Gist.User.Login, StringComparison.OrdinalIgnoreCase))
            {
                NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(CodeFramework.Theme.CurrentTheme.EditButton, () => {
                    //We need to make sure we have the FULL gist
                    this.DoWork(() => {
                        var gist = Application.Client.Execute(Application.Client.Gists[ViewModel.Id].Get()).Data;
                        InvokeOnMainThread(() => {
                            var gistController     = new EditGistController(gist);
                            gistController.Created = (editedGist) => {
                                ViewModel.Gist = editedGist;
                            };
                            var navController = new UINavigationController(gistController);
                            PresentViewController(navController, true, null);
                        });
                    });
                }));
            }
            else
            {
                NavigationItem.RightBarButtonItem = new UIBarButtonItem(NavigationButton.Create(CodeFramework.Theme.CurrentTheme.ForkButton, () => {
                    NavigationItem.RightBarButtonItem.Enabled = false;

                    this.DoWork(() => {
                        var forkedGist = Application.Client.Execute(Application.Client.Gists[ViewModel.Id].ForkGist()).Data;
                        InvokeOnMainThread(delegate {
                            NavigationController.PushViewController(new GistViewController(forkedGist), true);
                        });
                    }, null, () => {
                        NavigationItem.RightBarButtonItem.Enabled = true;
                    });
                }));
            }
        }
 private void toolboxBar_MouseMove(object sender, MouseEventArgs e)
 {
     hilitedButton = toolboxBar.GetButtonAt(new Point(e.X, e.Y));
 }
Example #31
0
        /// <summary>
        /// Create first, prev, next or last button.
        /// </summary>
        /// <param name="writer">A <see cref="System.Web.UI.HtmlTextWriter"/> that represents the output stream to render HTML content on the client.</param>
        /// <param name="btn">the navigation button</param>
        private void CreateNavigationButton(HtmlTextWriter writer, NavigationButton btn)
        {
            if (!ShowFirstLast && (btn == NavigationButton.First || btn == NavigationButton.Last))
            {
                return;
            }
            if (!ShowPrevNext && (btn == NavigationButton.Prev || btn == NavigationButton.Next))
            {
                return;
            }

            if (PagingButtonLayoutType != PagingButtonLayoutType.None)             //add css class and style attribute to pager item directly
            {
                if (btn == NavigationButton.First || btn == NavigationButton.Last) //first page or last page button
                {
                    AddClassAndStyle(FirstLastButtonsClass, FirstLastButtonsStyle, writer);
                }
                else
                {
                    AddClassAndStyle(PrevNextButtonsClass, PrevNextButtonsStyle, writer);//next page or prevous page button
                }
            }

            string linktext;
            bool   disabled;
            int    pageIndex;
            string btnname  = btn.ToString().ToLower();
            bool   isImgBtn = (//PagingButtonType == PagingButtonType.Image &&
                NavigationButtonType == PagingButtonType.Image);

            if (btn == NavigationButton.First || btn == NavigationButton.Prev)
            {
                disabled = (CurrentPageIndex <= 1) | !Enabled;
                if (!ShowDisabledButtons && disabled)
                {
                    return;
                }
                AddPagingButtonLayoutTag(writer); //<li> or <span>
                pageIndex = (btn == NavigationButton.First) ? 1 : (CurrentPageIndex - 1);
                writeSpacingStyle(writer);
                if (PagingButtonLayoutType == PagingButtonLayoutType.None)             //add css class and style attribute to pager item directly
                {
                    if (btn == NavigationButton.First || btn == NavigationButton.Last) //first page or last page button
                    {
                        AddClassAndStyle(FirstLastButtonsClass, FirstLastButtonsStyle, writer);
                    }
                    else
                    {
                        AddClassAndStyle(PrevNextButtonsClass, PrevNextButtonsStyle, writer);//next page or prevous page button
                    }
                }
                if (isImgBtn)
                {
                    if (!disabled)
                    {
                        writer.AddAttribute("href", GetHrefString(pageIndex), false);
                        AddToolTip(writer, pageIndex);
                        AddHyperlinkTarget(writer);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.AddAttribute(HtmlTextWriterAttribute.Src,
                                            String.Concat(ImagePath, btnname, ButtonImageNameExtension,
                                                          ButtonImageExtension));
                        writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
                        if (ButtonImageAlign != ImageAlign.NotSet)
                        {
                            writer.AddAttribute(HtmlTextWriterAttribute.Align, ButtonImageAlign.ToString());
                        }
                        writer.RenderBeginTag(HtmlTextWriterTag.Img);
                        writer.RenderEndTag();
                        writer.RenderEndTag();
                    }
                    else
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Src,
                                            String.Concat(ImagePath, btnname, DisabledButtonImageNameExtension,
                                                          ButtonImageExtension));
                        writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
                        if (ButtonImageAlign != ImageAlign.NotSet)
                        {
                            writer.AddAttribute(HtmlTextWriterAttribute.Align, ButtonImageAlign.ToString());
                        }
                        writer.RenderBeginTag(HtmlTextWriterTag.Img);
                        writer.RenderEndTag();
                    }
                }
                else
                {
                    linktext = (btn == NavigationButton.Prev) ? PrevPageText : FirstPageText;
                    if (disabled)
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Disabled, "disabled");
                    }
                    else
                    {
                        //WriteCssClass(writer);
                        AddToolTip(writer, pageIndex);
                        AddHyperlinkTarget(writer);
                        writer.AddAttribute("href", GetHrefString(pageIndex), false);
                    }
                    writer.RenderBeginTag(HtmlTextWriterTag.A);
                    writer.Write(linktext);
                    writer.RenderEndTag();
                }
            }
            else
            {
                disabled = (CurrentPageIndex >= PageCount) | !Enabled;
                if (!ShowDisabledButtons && disabled)
                {
                    return;
                }
                AddPagingButtonLayoutTag(writer); //<li> or <span>
                pageIndex = (btn == NavigationButton.Last) ? PageCount : (CurrentPageIndex + 1);
                writeSpacingStyle(writer);
                if (PagingButtonLayoutType == PagingButtonLayoutType.None)             //add css class and style attribute to pager item directly
                {
                    if (btn == NavigationButton.First || btn == NavigationButton.Last) //first page or last page button
                    {
                        AddClassAndStyle(FirstLastButtonsClass, FirstLastButtonsStyle, writer);
                    }
                    else
                    {
                        AddClassAndStyle(PrevNextButtonsClass, PrevNextButtonsStyle, writer);//next page or prevous page button
                    }
                }
                if (isImgBtn)
                {
                    if (!disabled)
                    {
                        writer.AddAttribute("href", GetHrefString(pageIndex), false);
                        AddToolTip(writer, pageIndex);
                        AddHyperlinkTarget(writer);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.AddAttribute(HtmlTextWriterAttribute.Src,
                                            String.Concat(ImagePath, btnname, ButtonImageNameExtension,
                                                          ButtonImageExtension));
                        writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
                        if (ButtonImageAlign != ImageAlign.NotSet)
                        {
                            writer.AddAttribute(HtmlTextWriterAttribute.Align, ButtonImageAlign.ToString());
                        }
                        writer.RenderBeginTag(HtmlTextWriterTag.Img);
                        writer.RenderEndTag();
                        writer.RenderEndTag();
                    }
                    else
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Src,
                                            String.Concat(ImagePath, btnname, DisabledButtonImageNameExtension,
                                                          ButtonImageExtension));
                        writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
                        if (ButtonImageAlign != ImageAlign.NotSet)
                        {
                            writer.AddAttribute(HtmlTextWriterAttribute.Align, ButtonImageAlign.ToString());
                        }
                        writer.RenderBeginTag(HtmlTextWriterTag.Img);
                        writer.RenderEndTag();
                    }
                }
                else
                {
                    linktext = (btn == NavigationButton.Next) ? NextPageText : LastPageText;
                    if (disabled)
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Disabled, "disabled");
                    }
                    else
                    {
                        //WriteCssClass(writer);
                        AddToolTip(writer, pageIndex);
                        writer.AddAttribute("href", GetHrefString(pageIndex), false);
                        AddHyperlinkTarget(writer);
                    }
                    writer.RenderBeginTag(HtmlTextWriterTag.A);
                    writer.Write(linktext);
                    writer.RenderEndTag();
                }
            }
            if (PagingButtonLayoutType != PagingButtonLayoutType.None)
            {
                writer.RenderEndTag(); //</li> or </span>
            }
        }
 // Store the button's text color, so that when we reset it, we can put it back correctly
 public static void MouseEnter(NavigationButton button)
 {
     currentlySelectedObject = button;
 }
Example #33
0
        /// <summary>
        /// Create first, prev, next or last button.
        /// </summary>
        /// <param name="writer">A <see cref="System.Web.UI.HtmlTextWriter"/> that represents the output stream to render HTML content on the client.</param>
        /// <param name="btn">the navigation button</param>
        private void CreateNavigationButton(HtmlTextWriter writer, NavigationButton btn)
        {
            if (!ShowFirstLast && (btn == NavigationButton.First || btn == NavigationButton.Last))
                return;
            if (!ShowPrevNext && (btn == NavigationButton.Prev || btn == NavigationButton.Next))
                return;

            if (PagingButtonLayoutType != PagingButtonLayoutType.None) //add css class and style attribute to pager item directly
            {
                if (btn == NavigationButton.First || btn == NavigationButton.Last) //first page or last page button
                    AddClassAndStyle(FirstLastButtonsClass, FirstLastButtonsStyle, writer);
                else
                    AddClassAndStyle(PrevNextButtonsClass, PrevNextButtonsStyle, writer);//next page or prevous page button
            }
            AddPagingButtonLayoutTag(writer); //<li> or <span>

            string linktext;
            bool disabled;
            int pageIndex;
            string btnname = btn.ToString().ToLower();
            bool isImgBtn = (//PagingButtonType == PagingButtonType.Image &&
                              NavigationButtonType == PagingButtonType.Image);
            if (btn == NavigationButton.First || btn == NavigationButton.Prev)
            {
                disabled = (CurrentPageIndex <= 1) | !Enabled;
                if (!ShowDisabledButtons && disabled)
                    return;
                pageIndex = (btn == NavigationButton.First) ? 1 : (CurrentPageIndex - 1);
                writeSpacingStyle(writer);
                if (PagingButtonLayoutType == PagingButtonLayoutType.None) //add css class and style attribute to pager item directly
                {
                    if (btn == NavigationButton.First || btn == NavigationButton.Last) //first page or last page button
                        AddClassAndStyle(FirstLastButtonsClass, FirstLastButtonsStyle, writer);
                    else
                        AddClassAndStyle(PrevNextButtonsClass, PrevNextButtonsStyle, writer);//next page or prevous page button
                }
                if (isImgBtn)
                {
                    if (!disabled)
                    {
                        writer.AddAttribute("href", GetHrefString(pageIndex),false);
                        AddToolTip(writer, pageIndex);
                        AddHyperlinkTarget(writer);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.AddAttribute(HtmlTextWriterAttribute.Src,
                                            String.Concat(ImagePath, btnname, ButtonImageNameExtension,
                                                          ButtonImageExtension));
                        writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
                        if (ButtonImageAlign != ImageAlign.NotSet)
                            writer.AddAttribute(HtmlTextWriterAttribute.Align, ButtonImageAlign.ToString());
                        writer.RenderBeginTag(HtmlTextWriterTag.Img);
                        writer.RenderEndTag();
                        writer.RenderEndTag();
                    }
                    else
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Src,
                                            String.Concat(ImagePath, btnname, DisabledButtonImageNameExtension,
                                                          ButtonImageExtension));
                        writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
                        if (ButtonImageAlign != ImageAlign.NotSet)
                            writer.AddAttribute(HtmlTextWriterAttribute.Align, ButtonImageAlign.ToString());
                        writer.RenderBeginTag(HtmlTextWriterTag.Img);
                        writer.RenderEndTag();
                    }
                }
                else
                {
                    linktext = (btn == NavigationButton.Prev) ? PrevPageText : FirstPageText;
                    if (disabled)
                        writer.AddAttribute(HtmlTextWriterAttribute.Disabled, "disabled");
                    else
                    {
                        //WriteCssClass(writer);
                        AddToolTip(writer, pageIndex);
                        AddHyperlinkTarget(writer);
                        writer.AddAttribute("href", GetHrefString(pageIndex),false);
                    }
                    writer.RenderBeginTag(HtmlTextWriterTag.A);
                    writer.Write(linktext);
                    writer.RenderEndTag();
                }
            }
            else
            {
                disabled = (CurrentPageIndex >= PageCount) | !Enabled;
                if (!ShowDisabledButtons && disabled)
                    return;
                pageIndex = (btn == NavigationButton.Last) ? PageCount : (CurrentPageIndex + 1);
                writeSpacingStyle(writer);
                if (PagingButtonLayoutType == PagingButtonLayoutType.None) //add css class and style attribute to pager item directly
                {
                    if (btn == NavigationButton.First || btn == NavigationButton.Last) //first page or last page button
                        AddClassAndStyle(FirstLastButtonsClass, FirstLastButtonsStyle, writer);
                    else
                        AddClassAndStyle(PrevNextButtonsClass, PrevNextButtonsStyle, writer);//next page or prevous page button
                }
                if (isImgBtn)
                {
                    if (!disabled)
                    {
                        writer.AddAttribute("href", GetHrefString(pageIndex),false);
                        AddToolTip(writer, pageIndex);
                        AddHyperlinkTarget(writer);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.AddAttribute(HtmlTextWriterAttribute.Src,
                                            String.Concat(ImagePath, btnname, ButtonImageNameExtension,
                                                          ButtonImageExtension));
                        writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
                        if (ButtonImageAlign != ImageAlign.NotSet)
                            writer.AddAttribute(HtmlTextWriterAttribute.Align, ButtonImageAlign.ToString());
                        writer.RenderBeginTag(HtmlTextWriterTag.Img);
                        writer.RenderEndTag();
                        writer.RenderEndTag();
                    }
                    else
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Src,
                                            String.Concat(ImagePath, btnname, DisabledButtonImageNameExtension,
                                                          ButtonImageExtension));
                        writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
                        if (ButtonImageAlign != ImageAlign.NotSet)
                            writer.AddAttribute(HtmlTextWriterAttribute.Align, ButtonImageAlign.ToString());
                        writer.RenderBeginTag(HtmlTextWriterTag.Img);
                        writer.RenderEndTag();
                    }
                }
                else
                {
                    linktext = (btn == NavigationButton.Next) ? NextPageText : LastPageText;
                    if (disabled)
                        writer.AddAttribute(HtmlTextWriterAttribute.Disabled, "disabled");
                    else
                    {
                        //WriteCssClass(writer);
                        AddToolTip(writer, pageIndex);
                        writer.AddAttribute("href", GetHrefString(pageIndex),false);
                        AddHyperlinkTarget(writer);
                    }
                    writer.RenderBeginTag(HtmlTextWriterTag.A);
                    writer.Write(linktext);
                    writer.RenderEndTag();
                }
            }
            if (PagingButtonLayoutType != PagingButtonLayoutType.None)
                writer.RenderEndTag(); //</li> or </span>
        }
Example #34
0
        private void MakeTestPage()
        {
            _mainLayout = new StackLayout()
            {
                Orientation       = StackOrientation.Vertical,
                IsVisible         = true,
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.FillAndExpand,
                Spacing           = 10,
                Padding           = new Thickness(10),
            };
            _descriptionTitle = new Label()
            {
                Text = "DESCRIPTION:",
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.Start,
                HeightRequest     = 50,
                TextColor         = Color.White
            };
            // layout
            StackLayout functionLayout = new StackLayout()
            {
                Orientation       = StackOrientation.Horizontal,
                IsVisible         = true,
                HorizontalOptions = LayoutOptions.FillAndExpand,
                Spacing           = 10,
                VerticalOptions   = LayoutOptions.End,
            };

            _mainBtn = new Button()
            {
                HorizontalOptions = LayoutOptions.Start,
                Text          = "Home",
                HeightRequest = 80,
            };

            _mainBtn.Clicked += (sender, e) =>
            {
                _pressButton = NavigationButton.Home;
                if (!ManualTest.IsConfirmed())
                {
                    _tsettings.TCResult = StrResult.NOTRUN;
                    ManualTest.Confirm();
                }
                else
                {
                    _navigationPage.PopAsync();
                }
            };

            _prevBtn = new Button()
            {
                HorizontalOptions = LayoutOptions.Start,
                Text          = "<<",
                HeightRequest = 80,
            };

            _prevBtn.Clicked += (sender, e) =>
            {
                PreviousTestcase();
            };

            _nextBtn = new Button()
            {
                Text = ">>",
                HorizontalOptions = LayoutOptions.Start,
                HeightRequest     = 80,
            };

            _nextBtn.Clicked += (sender, e) =>
            {
                NextTestcase();
            };

            _tcResultText = new Label()
            {
                HorizontalOptions       = LayoutOptions.Start,
                VerticalOptions         = LayoutOptions.FillAndExpand,
                HorizontalTextAlignment = TextAlignment.Center,
                VerticalTextAlignment   = TextAlignment.Center,
                HeightRequest           = 80,
            };
            functionLayout.Children.Add(_mainBtn);
            functionLayout.Children.Add(_tcResultText);
            functionLayout.Children.Add(_prevBtn);
            functionLayout.Children.Add(_nextBtn);
            // Show description
            ShowDescription();

            var navigationLayout = new StackLayout()
            {
                Orientation       = StackOrientation.Horizontal,
                IsVisible         = true,
                HorizontalOptions = LayoutOptions.FillAndExpand,
                Spacing           = 10,
                VerticalOptions   = LayoutOptions.End,
            };

            _passBtn = new Button()
            {
                HorizontalOptions = LayoutOptions.Start,
                Text          = "Pass",
                HeightRequest = 80,
                IsEnabled     = false,
            };

            _passBtn.Clicked += (sender, e) =>
            {
                if (!ManualTest.IsConfirmed())
                {
                    _tsettings.TCResult = StrResult.PASS;
                    ManualTest.Confirm();
                }
            };

            _failBtn = new Button()
            {
                HorizontalOptions = LayoutOptions.Start,
                Text          = "Fail",
                HeightRequest = 80,
                IsEnabled     = false,
            };

            _failBtn.Clicked += (sender, e) =>
            {
                if (!ManualTest.IsConfirmed())
                {
                    _tsettings.TCResult = StrResult.FAIL;
                    ManualTest.Confirm();
                }
            };

            _blockBtn = new Button()
            {
                HorizontalOptions = LayoutOptions.Start,
                Text          = "Block",
                HeightRequest = 80,
                IsEnabled     = false,
            };

            _blockBtn.Clicked += (sender, e) =>
            {
                if (!ManualTest.IsConfirmed())
                {
                    _tsettings.TCResult = StrResult.BLOCK;
                    ManualTest.Confirm();
                }
            };

            _runBtn = new Button()
            {
                HorizontalOptions = LayoutOptions.Start,
                Text          = "Run",
                HeightRequest = 80,
            };

            _runBtn.Clicked += (sender, e) =>
            {
                LockUIButton();
                _pressButton           = NavigationButton.NA;
                _tsettings.Testcase_ID = _tcIDList[_tcIndex];
                _tsettings.TCResult    = "";
                _tunitRunner.Execute();
            };

            navigationLayout.Children.Add(_passBtn);
            navigationLayout.Children.Add(_failBtn);
            navigationLayout.Children.Add(_blockBtn);
            navigationLayout.Children.Add(_runBtn);

            _tcUILayout = new StackLayout()
            {
                Orientation       = StackOrientation.Vertical,
                HorizontalOptions = LayoutOptions.FillAndExpand,
                HeightRequest     = 200
            };

            _mainLayout.Children.Add(_summaryLabel);
            _mainLayout.Children.Add(_descriptionTitle);
            _mainLayout.Children.Add(_tcDescriptions);
            _mainLayout.Children.Add(_tcUILayout);
            _mainLayout.Children.Add(navigationLayout);
            _mainLayout.Children.Add(functionLayout);
            _tcContentPage = new ContentPage()
            {
                Content = _mainLayout
            };
            NavigationPage.SetHasNavigationBar(_tcContentPage, false);
        }
 private void SetButtonStatusFromThread(NavigationButton button, bool enabled)
 {
     var action = new Action<NavigationButton, bool>((x, y) =>
     {
         SetButtonStatus(x, y);
     });
     Invoke(action, button, enabled);
 }