コード例 #1
0
        public override void paint(object sender, System.Windows.Forms.PaintEventArgs e)
        {
            if (!pAttr.pTransparent)
            {
                //Background
                Int32 tx = (Int32)pAttr.pAbsolutX;
                Int32 ty = (Int32)pAttr.pAbsolutY;
                Int32 tw = (Int32)pAttr.pWidth;
                Int32 th = (Int32)pAttr.pHeight;

                if (((sAttributeListbox)pAttr).pBackgroundPixmap != null)
                {
                    new sGraphicImage(pAttr, ((sAttributeListbox)pAttr).pBackgroundPixmapName).paint(sender, e);
                }
                else
                {
                    new sGraphicRectangel((Int32)(tx > 0 ? tx : 0), (Int32)(ty > 0 ? ty : 0), (Int32)(tw > 0 ? tw : 0), (Int32)(th > 0 ? th : 0), true, (float)1.0, ((sAttributeListbox)pAttr).pListboxBackgroundColor).paint(sender, e);
                }
            }

            //BorderLayout
            Int32 x = pAttr.pAbsolutX, xm = pAttr.pAbsolutX + pAttr.pWidth;

            if (((sAttributeListbox)pAttr).pbpTopLeftName != null)
            {
                new sGraphicImage(pAttr,
                                  ((sAttributeListbox)pAttr).pbpTopLeftName,
                                  x - (Int32)(((sAttributeListbox)pAttr).pbpLeft != null ? ((sAttributeListbox)pAttr).pbpLeft.Width : 0),
                                  pAttr.pAbsolutY - (Int32)((sAttributeListbox)pAttr).pbpTopLeft.Height
                                  ).paint(sender, e);
                //painter.blit(tl, ePoint(x, pos.top()));
                //x += (UInt32)pAttr.pbpTopLeft.Width;
            }

            if (((sAttributeListbox)pAttr).pbpTopRightName != null)
            {
                //xm -= (UInt32)pAttr.pbpTopRight.Width;
                new sGraphicImage(pAttr,
                                  ((sAttributeListbox)pAttr).pbpTopRightName,
                                  xm + (Int32)(((sAttributeListbox)pAttr).pbpRight != null ? ((sAttributeListbox)pAttr).pbpRight.Width : 0) - (Int32)((sAttributeListbox)pAttr).pbpTopRight.Width,
                                  pAttr.pAbsolutY - (Int32)((sAttributeListbox)pAttr).pbpTopRight.Height
                                  ).paint(sender, e);
                //painter.blit(tr, ePoint(xm, pos.top()), pos);
            }

            if (((sAttributeListbox)pAttr).pbpTopName != null)
            {
                x += (Int32)(((sAttributeListbox)pAttr).pbpTopLeft != null ? ((sAttributeListbox)pAttr).pbpTopLeft.Width : 0) - (Int32)(((sAttributeListbox)pAttr).pbpLeft != null ? ((sAttributeListbox)pAttr).pbpLeft.Width : 0);
                int diff = (((sAttributeListbox)pAttr).pbpRight != null ? ((sAttributeListbox)pAttr).pbpRight.Width : 0) - (((sAttributeListbox)pAttr).pbpTopRight != null ? ((sAttributeListbox)pAttr).pbpTopRight.Width : 0);
                xm -= (Int32)(diff > 0 ? diff : -diff);
                while (x < xm)
                {
                    new sGraphicImage(pAttr,
                                      ((sAttributeListbox)pAttr).pbpTopName,
                                      x,
                                      pAttr.pAbsolutY - (Int32)((sAttributeListbox)pAttr).pbpTop.Height,
                                      xm - x,
                                      (Int32)((sAttributeListbox)pAttr).pbpTop.Height
                                      ).paint(sender, e);
                    //painter.blit(t, ePoint(x, pos.top()), eRect(x, pos.top(), xm - x, pos.height()));
                    x += (Int32)((sAttributeListbox)pAttr).pbpTop.Width;
                }
            }

            x  = pAttr.pAbsolutX;
            xm = pAttr.pAbsolutX + pAttr.pWidth;

            if (((sAttributeListbox)pAttr).pbpBottomLeftName != null)
            {
                new sGraphicImage(pAttr,
                                  ((sAttributeListbox)pAttr).pbpBottomLeftName,
                                  x - (Int32)(((sAttributeListbox)pAttr).pbpLeft != null ? ((sAttributeListbox)pAttr).pbpLeft.Width : 0),
                                  pAttr.pAbsolutY + pAttr.pHeight
                                  ).paint(sender, e);
                //painter.blit(bl, ePoint(pos.left(), pos.bottom()-bl->size().height()));
                //x += (UInt32)pAttr.pbpBottomLeft.Width;
            }

            if (((sAttributeListbox)pAttr).pbpBottomRightName != null)
            {
                //xm -= (UInt32)pAttr.pbpBottomRight.Width;
                new sGraphicImage(pAttr,
                                  ((sAttributeListbox)pAttr).pbpBottomRightName,
                                  xm + (Int32)(((sAttributeListbox)pAttr).pbpRight != null ? ((sAttributeListbox)pAttr).pbpRight.Width : 0) - (Int32)((sAttributeListbox)pAttr).pbpBottomRight.Width,
                                  pAttr.pAbsolutY + pAttr.pHeight
                                  ).paint(sender, e);
                //painter.blit(br, ePoint(xm, pos.bottom()-br->size().height()), eRect(x, pos.bottom()-br->size().height(), pos.width() - x, bl->size().height()));
            }

            if (((sAttributeListbox)pAttr).pbpBottomName != null)
            {
                x += (Int32)(((sAttributeListbox)pAttr).pbpBottomLeft != null ? ((sAttributeListbox)pAttr).pbpBottomLeft.Width : 0) - (Int32)(((sAttributeListbox)pAttr).pbpLeft != null ? ((sAttributeListbox)pAttr).pbpLeft.Width : 0);
                int diff = (((sAttributeListbox)pAttr).pbpRight != null ? ((sAttributeListbox)pAttr).pbpRight.Width : 0) - (((sAttributeListbox)pAttr).pbpBottomRight != null ? ((sAttributeListbox)pAttr).pbpBottomRight.Width : 0);
                xm -= (Int32)(diff > 0 ? diff : -diff);
                while (x < xm)
                {
                    new sGraphicImage(pAttr,
                                      ((sAttributeListbox)pAttr).pbpBottomName,
                                      x,
                                      pAttr.pAbsolutY + pAttr.pHeight,
                                      xm - x,
                                      (Int32)((sAttributeListbox)pAttr).pbpBottom.Height
                                      ).paint(sender, e);
                    //painter.blit(b, ePoint(x, pos.bottom()-b->size().height()), eRect(x, pos.bottom()-b->size().height(), xm - x, pos.height()));
                    x += (Int32)((sAttributeListbox)pAttr).pbpBottom.Width;
                }
            }

            Int32 y = 0;

            //if (pAttr.pbpTopLeft != null)
            //    y = (UInt32)pAttr.pbpTopLeft.Height;

            y += pAttr.pAbsolutY;

            Int32 ym = pAttr.pAbsolutY + pAttr.pHeight;

            //if (pAttr.pbpBottomLeft != null)
            //    ym -= (UInt32)pAttr.pbpBottomLeft.Height;

            if (((sAttributeListbox)pAttr).pbpLeftName != null)
            {
                while (y < ym)
                {
                    new sGraphicImage(pAttr,
                                      ((sAttributeListbox)pAttr).pbpLeftName,
                                      pAttr.pAbsolutX - (Int32)((sAttributeListbox)pAttr).pbpLeft.Width,
                                      y,
                                      (Int32)((sAttributeListbox)pAttr).pbpLeft.Width,
                                      ym - y
                                      ).paint(sender, e);
                    //painter.blit(l, ePoint(pos.left(), y), eRect(pos.left(), y, pos.width(), ym - y));
                    y += (Int32)((sAttributeListbox)pAttr).pbpLeft.Height;
                }
            }

            y = 0;

            //if (pAttr.pbpTopRight != null)
            //    y = (UInt32)pAttr.pbpTopRight.Height;

            y += pAttr.pAbsolutY;

            ym = pAttr.pAbsolutY + pAttr.pHeight;
            //if (pAttr.pbpBottomRight != null)
            //    ym -= (UInt32)pAttr.pbpBottomRight.Height;

            if (((sAttributeListbox)pAttr).pbpRightName != null)
            {
                while (y < ym)
                {
                    new sGraphicImage(pAttr,
                                      ((sAttributeListbox)pAttr).pbpRightName,
                                      pAttr.pAbsolutX + pAttr.pWidth,
                                      y,
                                      (Int32)((sAttributeListbox)pAttr).pbpRight.Width,
                                      ym - y
                                      ).paint(sender, e);
                    //painter.blit(r, ePoint(pos.right() - r->size().width(), y), eRect(pos.right()-r->size().width(), y, r->size().width(), ym - y));
                    y += (Int32)((sAttributeListbox)pAttr).pbpRight.Height;
                }
            }

            // scrollbar
            //painter.clip(eRect(m_scrollbar->position() - ePoint(5, 0), eSize(5, m_scrollbar->size().height())));

            // entries
            if (((sAttributeListbox)pAttr).pPreviewEntries != null)
            {
                if (((sAttributeListbox)pAttr).pPreviewEntries.Count >= 1)
                {
                    int itemHeight = ((sAttributeListbox)pAttr).pItemHeight;

                    sFont font     = null;
                    float fontSize = 0;
                    if (((sAttributeListbox)pAttr).pFont != null)
                    {
                        font     = ((sAttributeListbox)pAttr).pFont;
                        fontSize = font.Size;
                    }
                    else
                    {
                        font     = cDataBase.getFont("Regular");
                        fontSize = 20;
                    }


                    cProperty.eHAlign halign     = cProperty.eHAlign.Left;
                    cProperty.eVAlign valign     = cProperty.eVAlign.Top;
                    sColor            foreground = ((sAttributeListbox)pAttr).pListboxSelectedForegroundColor;
                    sColor            background = ((sAttributeListbox)pAttr).pListboxSelectedBackgroundColor;
                    String            entry      = ((sAttributeListbox)pAttr).pPreviewEntries[0];

                    // Selection Pixmap
                    if (((sAttributeListbox)pAttr).pSelectionPixmapName != null)
                    {
                        new sGraphicImage(null, ((sAttributeListbox)pAttr).pSelectionPixmapName, pAttr.pAbsolutX, pAttr.pAbsolutY, pAttr.pWidth, ((sAttributeListbox)pAttr).pItemHeight).paint(sender, e);
                    }
                    else
                    {
                        new sGraphicRectangel(pAttr.pAbsolutX, pAttr.pAbsolutY, pAttr.pWidth, ((sAttributeListbox)pAttr).pItemHeight, true, 1.0F, ((sAttributeListbox)pAttr).pListboxSelectedBackgroundColor).paint(sender, e);
                    }

                    if (pAttr.pTransparent)
                    {
                        new sGraphicFont(null, pAttr.pAbsolutX, pAttr.pAbsolutY, entry, fontSize, font, foreground, halign, valign).paint(sender, e);
                    }
                    else
                    {
                        new sGraphicFont(null, pAttr.pAbsolutX, pAttr.pAbsolutY, entry, fontSize, font, foreground, background == null ? new sColor(Color.Black) : background, halign, valign).paint(sender, e);
                    }

                    if (((sAttributeListbox)pAttr).pPreviewEntries.Count > 1)
                    {
                        foreground = ((sAttributeListbox)pAttr).pListboxForegroundColor;
                        background = ((sAttributeListbox)pAttr).pListboxBackgroundColor;

                        for (int i = 1; i < ((sAttributeListbox)pAttr).pPreviewEntries.Count; i++)
                        {
                            //Listen Einträge
                            if (i * itemHeight >= pAttr.pHeight)
                            {
                                // Abbrechen wenn Höhe der Listen Einträge größer als Höhe der Liste
                                break;
                            }

                            entry = ((sAttributeListbox)pAttr).pPreviewEntries[i];

                            // NonSelection Pixmap
                            if (((sAttributeListbox)pAttr).pBackgroundPixmapName != null)
                            {
                                new sGraphicImage(null, ((sAttributeListbox)pAttr).pBackgroundPixmapName, pAttr.pAbsolutX, pAttr.pAbsolutY + i * itemHeight, pAttr.pWidth, ((sAttributeListbox)pAttr).pItemHeight).paint(sender, e);
                            }
                            else
                            {
                                new sGraphicRectangel(pAttr.pAbsolutX, pAttr.pAbsolutY + i * itemHeight, pAttr.pWidth, ((sAttributeListbox)pAttr).pItemHeight, true, 1.0F, ((sAttributeListbox)pAttr).pListboxBackgroundColor).paint(sender, e);
                            }

                            if (pAttr.pTransparent)
                            {
                                new sGraphicFont(null, pAttr.pAbsolutX, pAttr.pAbsolutY + i * itemHeight, entry, fontSize, font, foreground, halign, valign).paint(sender, e);
                            }
                            else
                            {
                                new sGraphicFont(null, pAttr.pAbsolutX, pAttr.pAbsolutY + i * itemHeight, entry, fontSize, font, foreground, background == null ? new sColor(Color.Black) : background, halign, valign).paint(sender, e);
                            }
                        }
                    }
                }
                else
                {
                    // Selection Pixmap
                    if (((sAttributeListbox)pAttr).pSelectionPixmapName != null)
                    {
                        new sGraphicImage(pAttr, ((sAttributeListbox)pAttr).pSelectionPixmapName).paint(sender, e);
                    }
                    else
                    {
                        new sGraphicRectangel(pAttr.pAbsolutX, pAttr.pAbsolutY, pAttr.pWidth, ((sAttributeListbox)pAttr).pItemHeight, true, 1.0F, ((sAttributeListbox)pAttr).pListboxSelectedBackgroundColor).paint(sender, e);
                    }
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// ///////////////////////////////////////////////////////////////////
        /// </summary>
        /// <param name="parent"></param>
        /// <param name="node"></param>

        public sAttributeLabel(sAttribute parent, XmlNode node)
            : base(parent, node)
        {
            pWindowStyle = (sWindowStyle)cDataBase.pWindowstyles.get();

            if (myNode.Attributes["text"] != null)
            {
                pText = myNode.Attributes["text"].Value;
            }

            if (myNode.Attributes["font"] != null)
            {
                pFont     = cDataBase.getFont(myNode.Attributes["font"].Value);
                pFontSize = pFont.Size;
            }
            else
            {
                pFont     = cDataBase.getFont("Regular");
                pFontSize = 16;
            }

            if (myNode.Attributes["backgroundColor"] != null)
            {
                pBackgroundColor = (sColor)cDataBase.pColors.get(myNode.Attributes["backgroundColor"].Value);
            }
            else if ((sColor)pWindowStyle.pColors["LabelBackground"] != null)
            {
                pBackgroundColor = (sColor)pWindowStyle.pColors["LabelBackground"];
            }
            else
            {
                pBackgroundColor = (sColor)pWindowStyle.pColors["Background"];
            }

            if (myNode.Attributes["foregroundColor"] != null)
            {
                pForegroundColor = (sColor)cDataBase.pColors.get(myNode.Attributes["foregroundColor"].Value);
            }
            else
            {
                pForegroundColor = (sColor)pWindowStyle.pColors["LabelForeground"];
            }

            if (myNode.Attributes["valign"] != null)
            {
                pValign = myNode.Attributes["valign"].Value.ToLower() == "top" ? cProperty.eVAlign.Top :
                          myNode.Attributes["valign"].Value.ToLower() == "center" ? cProperty.eVAlign.Center :
                          cProperty.eVAlign.Bottom;
            }

            if (myNode.Attributes["halign"] != null)
            {
                pHalign = myNode.Attributes["halign"].Value.ToLower() == "left" ? cProperty.eHAlign.Left :
                          myNode.Attributes["halign"].Value.ToLower() == "center" ? cProperty.eHAlign.Center :
                          cProperty.eHAlign.Right;
            }

            if (myNode.Attributes["noWrap"] != null)
            {
                pNoWrap = Convert.ToUInt32(myNode.Attributes["noWrap"].Value.ToLower()) != 0 ? true : false;
            }

            if (pText == null || pText.Length == 0)
            {
                // Show text for elements without render attribute, if they have a font attribute
                if (myNode.Attributes["font"] != null)
                {
                    if (myNode.Attributes["name"] != null && myNode.Attributes["source"] == null)
                    {
                        // show name
                        pText = myNode.Attributes["name"].Value;
                    }
                }
            }

            if (pText == null || pText.Length > 0)
            {
                if (Name.Length > 0)
                {
                    pPreviewText = cPreviewText.getText(parent.Name, Name);
                }
            }
        }
コード例 #3
0
        /// <summary>
        /// ///////////////////////////////////////////////////////////////////
        /// </summary>
        /// <param name="parent"></param>
        /// <param name="node"></param>

        public sAttributeLabel(sAttribute parent, XmlNode node)
            : base(parent, node)
        {
            pWindowStyle = (sWindowStyle)cDataBase.pWindowstyles.get();

            if (myNode.Attributes["text"] != null)
            {
                pText = myNode.Attributes["text"].Value;
            }

            if (myNode.Attributes["font"] != null)
            {
                String tmpfont  = myNode.Attributes["font"].Value;
                float  size     = Convert.ToSingle(tmpfont.Substring(tmpfont.IndexOf(';') + 1));
                String fontname = tmpfont.Substring(0, tmpfont.IndexOf(';'));
                pFont     = cDataBase.getFont(fontname);
                pFontSize = size;
            }
            else
            {
                pFont     = cDataBase.getFont("Regular");
                pFontSize = 16;
            }

            if (myNode.Attributes["backgroundColor"] != null)
            {
                pBackgroundColor = (sColor)cDataBase.pColors.get(myNode.Attributes["backgroundColor"].Value);
            }
            else if ((sColor)pWindowStyle.pColors["LabelBackground"] != null)
            {
                pBackgroundColor = (sColor)pWindowStyle.pColors["LabelBackground"];
            }
            else
            {
                pBackgroundColor = (sColor)pWindowStyle.pColors["Background"];
            }

            if (myNode.Attributes["foregroundColor"] != null)
            {
                pForegroundColor = (sColor)cDataBase.pColors.get(myNode.Attributes["foregroundColor"].Value);
            }
            else
            {
                pForegroundColor = (sColor)pWindowStyle.pColors["LabelForeground"];
            }

            if (myNode.Attributes["valign"] != null)
            {
                pValign = myNode.Attributes["valign"].Value.ToLower() == "top" ? cProperty.eVAlign.Top :
                          myNode.Attributes["valign"].Value.ToLower() == "center" ? cProperty.eVAlign.Center :
                          cProperty.eVAlign.Bottom;
            }

            if (myNode.Attributes["halign"] != null)
            {
                pHalign = myNode.Attributes["halign"].Value.ToLower() == "left" ? cProperty.eHAlign.Left :
                          myNode.Attributes["halign"].Value.ToLower() == "center" ? cProperty.eHAlign.Center :
                          cProperty.eHAlign.Right;
            }

            if (myNode.Attributes["noWrap"] != null)
            {
                pNoWrap = Convert.ToUInt32(myNode.Attributes["noWrap"].Value.ToLower()) != 0 ? true : false;
            }


            if (pText == null || pText.Length > 0)
            {
                if (Name.Length > 0)
                {
                    pPreviewText = cPreviewText.getText(parent.Name, Name);
                }
            }
        }
コード例 #4
0
        /// <summary>
        /// ///////////////////////////////////////////////////////////////////
        /// </summary>
        /// <param name="parent"></param>
        /// <param name="node"></param>

        public sAttributeLabel(sAttribute parent, XmlNode node)
            : base(parent, node)
        {
            pWindowStyle = (sWindowStyle)cDataBase.pWindowstyles.get();

            if (myNode.Attributes["text"] != null)
            {
                pText = myNode.Attributes["text"].Value;
            }

            if (myNode.Attributes["font"] != null)
            {
                sFont[] fonts = cDataBase.getFonts();

                float  size     = 0;
                String fontname = "";

                String tmpfont = myNode.Attributes["font"].Value;
                try
                {
                    size      = Convert.ToSingle(tmpfont.Substring(tmpfont.IndexOf(';') + 1));
                    fontname  = tmpfont.Substring(0, tmpfont.IndexOf(';'));
                    pFont     = cDataBase.getFont(fontname);
                    pFontSize = size;
                }
                catch
                {
                    // In <fonts> suchen
                    sFont query = Array.Find(fonts, x => x.Name.Equals(tmpfont));
                    if (query != null)
                    {
                        size      = query.Size;
                        fontname  = query.FontName;
                        pFont     = cDataBase.getFont(fontname);
                        pFontSize = size;
                    }
                    else
                    {
                        MessageBox.Show("Font '" + tmpfont + "' not found!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            else
            {
                pFont     = cDataBase.getFont("Regular");
                pFontSize = 16;
            }

            if (myNode.Attributes["backgroundColor"] != null)
            {
                pBackgroundColor = (sColor)cDataBase.pColors.get(myNode.Attributes["backgroundColor"].Value);
            }
            else if ((sColor)pWindowStyle.pColors["LabelBackground"] != null)
            {
                pBackgroundColor = (sColor)pWindowStyle.pColors["LabelBackground"];
            }
            else
            {
                pBackgroundColor = (sColor)pWindowStyle.pColors["Background"];
            }

            if (myNode.Attributes["foregroundColor"] != null)
            {
                pForegroundColor = (sColor)cDataBase.pColors.get(myNode.Attributes["foregroundColor"].Value);
            }
            else
            {
                pForegroundColor = (sColor)pWindowStyle.pColors["LabelForeground"];
            }

            if (myNode.Attributes["valign"] != null)
            {
                pValign = myNode.Attributes["valign"].Value.ToLower() == "top" ? cProperty.eVAlign.Top :
                          myNode.Attributes["valign"].Value.ToLower() == "center" ? cProperty.eVAlign.Center :
                          cProperty.eVAlign.Bottom;
            }

            if (myNode.Attributes["halign"] != null)
            {
                pHalign = myNode.Attributes["halign"].Value.ToLower() == "left" ? cProperty.eHAlign.Left :
                          myNode.Attributes["halign"].Value.ToLower() == "center" ? cProperty.eHAlign.Center :
                          cProperty.eHAlign.Right;
            }

            if (myNode.Attributes["noWrap"] != null)
            {
                pNoWrap = Convert.ToUInt32(myNode.Attributes["noWrap"].Value.ToLower()) != 0 ? true : false;
            }

            if (pText == null || pText.Length == 0)
            {
                // Show text for elements without render attribute, if they have a font attribute
                if (myNode.Attributes["font"] != null)
                {
                    if (myNode.Attributes["name"] != null && myNode.Attributes["source"] == null)
                    {
                        // show name
                        pText = myNode.Attributes["name"].Value;
                    }
                }
            }

            if (pText == null || pText.Length > 0)
            {
                if (Name.Length > 0)
                {
                    pPreviewText = cPreviewText.getText(parent.Name, Name);
                }
            }
        }
コード例 #5
0
        public sAttributeListbox(sAttribute parent, XmlNode node)
            : base(parent, node)
        {
            if (node.Attributes["backgroundColor"] != null)
            {
                pListboxBackgroundColor = (sColor)cDataBase.pColors.get(node.Attributes["backgroundColor"].Value);
            }
            else
            {
                pListboxBackgroundColor = (sColor)((sWindowStyle)cDataBase.pWindowstyles.get()).pColors["ListboxBackground"];
            }

            if (node.Attributes["foregroundColor"] != null)
            {
                pListboxForegroundColor = (sColor)cDataBase.pColors.get(node.Attributes["foregroundColor"].Value);
            }
            else
            {
                pListboxForegroundColor = (sColor)((sWindowStyle)cDataBase.pWindowstyles.get()).pColors["ListboxForeground"];
            }

            if (myNode.Attributes["font"] != null)
            {
                pFont     = cDataBase.getFont(myNode.Attributes["font"].Value);
                pFontSize = pFont.Size;
            }

            if (myNode.Attributes["secondfont"] != null)
            {
                pFontSecond     = cDataBase.getFont(myNode.Attributes["secondfont"].Value);
                pFontSecondSize = pFontSecond.Size;
            }

            //if (node.HasChildNodes && node.FirstChild.Attributes["type"] != null && node.FirstChild.Attributes["type"].Value.ToLower() == "templatedmulticontent")
            //{
            //    String input = node.FirstChild.InnerText;
            //    Match match = Regex.Match(input, @"""itemHeight"": (\d+)");
            //    if (match.Success)
            //        pItemHeight = Int16.Parse(match.Groups[1].ToString());

            //    //MessageBox.Show(match.Groups[1].ToString());

            //}

            //if (node.Attributes["backgroundColor"] != null)
            //    pListboxSelectedBackgroundColor = (sColor)cDataBase.pColors.get(node.Attributes["backgroundColor"].Value);
            //else
            pListboxSelectedBackgroundColor = (sColor)((sWindowStyle)cDataBase.pWindowstyles.get()).pColors["ListboxSelectedBackground"];

            //if (node.Attributes["backgroundColor"] != null)
            //    pListboxSelectedForegroundColor = (sColor)cDataBase.pColors.get(node.Attributes["backgroundColor"].Value);
            //else
            pListboxSelectedForegroundColor = (sColor)((sWindowStyle)cDataBase.pWindowstyles.get()).pColors["ListboxSelectedForeground"];


            //if (node.Attributes["backgroundColor"] != null)
            //    pListboxMarkedBackgroundColor = (sColor)cDataBase.pColors.get(node.Attributes["backgroundColor"].Value);
            //else
            pListboxMarkedBackgroundColor = (sColor)((sWindowStyle)cDataBase.pWindowstyles.get()).pColors["ListboxMarkedBackground"];

            //if (node.Attributes["backgroundColor"] != null)
            //    pListboxMarkedForegroundColor = (sColor)cDataBase.pColors.get(node.Attributes["backgroundColor"].Value);
            //else
            pListboxMarkedForegroundColor = (sColor)((sWindowStyle)cDataBase.pWindowstyles.get()).pColors["ListboxMarkedForeground"];


            //if (node.Attributes["backgroundColor"] != null)
            //    pListboxMarkedAndSelectedBackgroundColor = (sColor)cDataBase.pColors.get(node.Attributes["backgroundColor"].Value);
            //else
            pListboxMarkedAndSelectedBackgroundColor = (sColor)((sWindowStyle)cDataBase.pWindowstyles.get()).pColors["ListboxMarkedAndSelectedBackground"];

            //if (node.Attributes["backgroundColor"] != null)
            //    pListboxMarkedAndSelectedForegroundColor = (sColor)cDataBase.pColors.get(node.Attributes["backgroundColor"].Value);
            //else
            pListboxMarkedAndSelectedForegroundColor = (sColor)((sWindowStyle)cDataBase.pWindowstyles.get()).pColors["ListboxMarkedAndSelectedForeground"];


            if (node.Attributes["backgroundPixmap"] != null)
            {
                pBackgroundPixmapName = node.Attributes["backgroundPixmap"].Value;
                try
                {
                    pBackgroundPixmap = Image.FromFile(cDataBase.getPath(pBackgroundPixmapName));
                }
                catch (FileNotFoundException)
                {
                    pBackgroundPixmap = null;
                }
            }
            if (node.Attributes["selectionPixmap"] != null)
            {
                pSelectionPixmapName = node.Attributes["selectionPixmap"].Value;
                try
                {
                    pSelectionPixmap = Image.FromFile(cDataBase.getPath(pSelectionPixmapName));
                }
                catch (FileNotFoundException)
                {
                    pSelectionPixmap = null;
                }
            }

            if (myNode.Attributes["scrollbarMode"] != null)
            {
                pScrollbarMode = myNode.Attributes["scrollbarMode"].Value.ToLower() == "showAlways".ToLower() ? cProperty.eScrollbarMode.showAlways :
                                 myNode.Attributes["scrollbarMode"].Value.ToLower() == "showOnDemand".ToLower() ? cProperty.eScrollbarMode.showOnDemand :
                                 cProperty.eScrollbarMode.showNever;
            }

            sWindowStyle style = (sWindowStyle)cDataBase.pWindowstyles.get();

            sWindowStyle.sBorderSet borderset = (sWindowStyle.sBorderSet)style.pBorderSets["bsListboxEntry"];

            if (borderset != null)
            {
                if (borderset.pbpTopLeftName.Length > 0)
                {
                    pbpTopLeftName = borderset.pbpTopLeftName;
                    pbpTopLeft     = borderset.pbpTopLeft;
                }
                if (borderset.pbpTopName.Length > 0)
                {
                    pbpTopName = borderset.pbpTopName;
                    pbpTop     = borderset.pbpTop;
                }
                if (borderset.pbpTopRightName.Length > 0)
                {
                    pbpTopRightName = borderset.pbpTopRightName;
                    pbpTopRight     = borderset.pbpTopRight;
                }


                if (borderset.pbpLeftName.Length > 0)
                {
                    pbpLeftName = borderset.pbpLeftName;
                    pbpLeft     = borderset.pbpLeft;
                }
                if (borderset.pbpRightName.Length > 0)
                {
                    pbpRightName = borderset.pbpRightName;
                    pbpRight     = borderset.pbpRight;
                }


                if (borderset.pbpBottomLeftName.Length > 0)
                {
                    pbpBottomLeftName = borderset.pbpBottomLeftName;
                    pbpBottomLeft     = borderset.pbpBottomLeft;
                }
                if (borderset.pbpBottomName.Length > 0)
                {
                    pbpBottomName = borderset.pbpBottomName;
                    pbpBottom     = borderset.pbpBottom;
                }
                if (borderset.pbpBottomRightName.Length > 0)
                {
                    pbpBottomRightName = borderset.pbpBottomRightName;
                    pbpBottomRight     = borderset.pbpBottomRight;
                }
            }


            if (node.Attributes["itemHeight"] != null)
            {
                pItemHeight = Convert.ToInt32(node.Attributes["itemHeight"].Value.Trim());
            }
            else
            if (pItemHeight == 0)
            {
                pItemHeight = 20;
            }


            String entries = cPreviewText.getText(parent.Name, Name);

            if (entries.Length > 0)
            {
                pPreviewEntries = new List <string>(entries.Split('|'));
            }
            else
            {
                for (int i = 1; i < 50; i++)
                {
                    pPreviewEntries.Add("List entry " + i);
                }
            }
        }
コード例 #6
0
        public sGraphicFont(sAttribute attr, Int32 x, Int32 y, String text, float size, sFont font, sColor color, sColor backColor, cProperty.eHAlign hAlignment, cProperty.eVAlign vAlignment)
            : base(attr)
        {
            //pAttr = attr;

            pX = x;
            pY = y;

            pText  = text;
            pSize  = size;
            pFont  = font;
            pColor = color;

            if (backColor != null)
            {
                pTranparent = false;
                pBackColor  = backColor;
            }
            else
            {
                pTranparent = true;
            }

            pHAlignment = hAlignment;
            pVAlignment = vAlignment;
        }
コード例 #7
0
        public sAttributeScreen(XmlNode node)
            : base(node)
        {
            if (node == null)
            {
                return;
            }


            pZPosition = -100;

            if (node.Attributes["title"] != null)
            {
                pTitle = node.Attributes["title"].Value;
            }

            // If screen has not title attribute, fallback to name attribute
            if (pTitle == null || pTitle.Length == 0)
            {
                if (node.Attributes["name"] != null)
                {
                    pTitle = node.Attributes["name"].Value;
                }
            }

            if (node.Attributes["flags"] != null)
            {
                switch (node.Attributes["flags"].Value)
                {
                case "wfNoBorder":
                    pFlags = eFlags.wfNoBorder;
                    break;

                case "wfBorder":
                default:
                    pFlags = eFlags.wfBorder;
                    break;
                }
            }

            pWindowStyle = (sWindowStyle)cDataBase.pWindowstyles.get();

            if (node.Attributes["backgroundColor"] != null)
            {
                pBackgroundColor = (sColor)cDataBase.pColors.get(node.Attributes["backgroundColor"].Value);
            }
            else if (node.Name == "screen" && node.Attributes["position"] == null)
            {
                pBackgroundColor = (sColor)cDataBase.pColors.get("transparent");
            }
            else
            {
                pBackgroundColor = (sColor)pWindowStyle.pColors["Background"];
            }

            if (node.Attributes["labelforeground"] != null)
            {
                pTitle = node.Attributes["labelforeground"].Value;
            }
            else
            {
                pLabelForegroundColor = (sColor)pWindowStyle.pColors["LabelForeground"];
            }

            pTitleFont = pWindowStyle.pFont;
            pTitleSize = pWindowStyle.pTitleSize * (((float)pTitleFont.Scale) / 100.0F);

            pTitleXOff = pWindowStyle.pXOff;
            pTitleYOff = pWindowStyle.pYOff;

            /*pbpTopLeft = ((sWindowStyle.sBorderSet)pWindowStyle.pBorderSets["bsWindow"]).pbpTopLeft;
             * pbpTop = ((sWindowStyle.sBorderSet)pWindowStyle.pBorderSets["bsWindow"]).pbpTop;
             * pbpTopRight = ((sWindowStyle.sBorderSet)pWindowStyle.pBorderSets["bsWindow"]).pbpTopRight;
             * pbpLeft = ((sWindowStyle.sBorderSet)pWindowStyle.pBorderSets["bsWindow"]).pbpLeft;
             * pbpRight = ((sWindowStyle.sBorderSet)pWindowStyle.pBorderSets["bsWindow"]).pbpRight;
             * pbpBottomLeft = ((sWindowStyle.sBorderSet)pWindowStyle.pBorderSets["bsWindow"]).pbpBottomLeft;
             * pbpBottom = ((sWindowStyle.sBorderSet)pWindowStyle.pBorderSets["bsWindow"]).pbpBottom;
             * pbpBottomRight = ((sWindowStyle.sBorderSet)pWindowStyle.pBorderSets["bsWindow"]).pbpBottomRight;*/

            sWindowStyle style = (sWindowStyle)cDataBase.pWindowstyles.get();

            sWindowStyle.sBorderSet borderset = (sWindowStyle.sBorderSet)style.pBorderSets["bsWindow"];

            if (borderset != null)
            {
                if (borderset.pbpTopLeftName.Length > 0)
                {
                    pbpTopLeftName = borderset.pbpTopLeftName;
                    pbpTopLeft     = borderset.pbpTopLeft;
                }
                if (borderset.pbpTopName.Length > 0)
                {
                    pbpTopName = borderset.pbpTopName;
                    pbpTop     = borderset.pbpTop;
                }
                if (borderset.pbpTopRightName.Length > 0)
                {
                    pbpTopRightName = borderset.pbpTopRightName;
                    pbpTopRight     = borderset.pbpTopRight;
                }


                if (borderset.pbpLeftName.Length > 0)
                {
                    pbpLeftName = borderset.pbpLeftName;
                    pbpLeft     = borderset.pbpLeft;
                }
                if (borderset.pbpRightName.Length > 0)
                {
                    pbpRightName = borderset.pbpRightName;
                    pbpRight     = borderset.pbpRight;
                }


                if (borderset.pbpBottomLeftName.Length > 0)
                {
                    pbpBottomLeftName = borderset.pbpBottomLeftName;
                    pbpBottomLeft     = borderset.pbpBottomLeft;
                }
                if (borderset.pbpBottomName.Length > 0)
                {
                    pbpBottomName = borderset.pbpBottomName;
                    pbpBottom     = borderset.pbpBottom;
                }
                if (borderset.pbpBottomRightName.Length > 0)
                {
                    pbpBottomRightName = borderset.pbpBottomRightName;
                    pbpBottomRight     = borderset.pbpBottomRight;
                }
            }
        }