Example #1
0
        private void AddText(string tabText, GuiWidget widgetState, RGBA_Bytes textColor, RGBA_Bytes backgroundColor, double pointSize)
        {
            leftToRight = new FlowLayoutWidget();
            tabTitle    = new TextWidget(tabText, pointSize: pointSize, textColor: textColor);
            tabTitle.AutoExpandBoundsToText = true;
            leftToRight.AddChild(tabTitle);

            ImageBuffer popOutImageClick = StaticData.Instance.LoadIcon(Path.Combine("icon_pop_out_32x32.png"));

            if (ActiveTheme.Instance.IsDarkTheme)
            {
                InvertLightness.DoInvertLightness(popOutImageClick);
            }

            ImageBuffer popOutImage = new ImageBuffer(popOutImageClick);

            byte[] buffer = popOutImage.GetBuffer();
            for (int i = 0; i < buffer.Length; i++)
            {
                if ((i & 3) != 3)
                {
                    buffer[i] = textColor.red;
                }
            }

            Button popOut = new Button(0, 0, new ButtonViewStates(new ImageWidget(popOutImage), new ImageWidget(popOutImage), new ImageWidget(popOutImageClick), new ImageWidget(popOutImageClick)));

            popOut.Click += (sender, e) =>
            {
                popOutManager.ShowContentInWindow();
            };
            popOut.Margin  = new BorderDouble(3, 0);
            popOut.VAnchor = VAnchor.ParentTop;
            leftToRight.AddChild(popOut);

            widgetState.AddChild(leftToRight);
            widgetState.SetBoundsToEncloseChildren();
            widgetState.BackgroundColor = backgroundColor;
        }
Example #2
0
 public void ShowInWindow()
 {
     popOutManager.ShowContentInWindow();
 }