示例#1
0
                public int Compare(object a, object b)
                {
                    if (!(a is TokenContributer) || !(b is TokenContributer))
                    {
                        return(0);
                    }
                    TokenContributer contributera = (TokenContributer)a;
                    TokenContributer contributerb = (TokenContributer)b;

                    if (contributera.Amount > contributerb.Amount)
                    {
                        return(-1);
                    }
                    else if (contributera.Amount < contributerb.Amount)
                    {
                        return(1);
                    }
                    else if (contributera.Date > contributerb.Date)
                    {
                        return(-1);
                    }
                    else if (contributera.Date < contributerb.Date)
                    {
                        return(1);
                    }
                    else
                    {
                        return(0);
                    }
                }
示例#2
0
            public TokenContributersGump(TokenFundRaiser raiser, Mobile from) : base(30, 30)
            {
                m_TokenFundRaiser = raiser;
                m_Mobile          = from;

                AddPage(0);
                AddBackground(0, 0, 250, 360, 9270);
                AddAlphaRegion(0, 0, 250, 360);

                m_TokenFundRaiser.TokenContributers.Sort(new TokenContributionComparer());

                AddLabel(50, 10, 2401, String.Format("Top {0} Contributors", m_TokenFundRaiser.TokenContributers.Count > 20 ? 20 : m_TokenFundRaiser.TokenContributers.Count));

                for (int i = 0; i < m_TokenFundRaiser.TokenContributers.Count && i < 20; i++)
                {
                    TokenContributer contributer = (TokenContributer)m_TokenFundRaiser.TokenContributers[i];
                    AddLabel(30, 30 + i * 15, 2401, (i + 1).ToString());
                    AddLabel(50, 30 + i * 15, 2401, contributer.Mobile.Name);
                    AddLabel(170, 30 + i * 15, 2401, contributer.Amount.ToString());
                }

                if (m_Mobile.AccessLevel >= AccessLevel.GameMaster)
                {
                    AddLabel(280, 10, 2401, "Clear");
                    AddButton(250, 10, 4023, 4024, 1, GumpButtonType.Reply, 0);
                    AddLabel(280, 30, 2401, "Full List");
                    AddButton(250, 30, 4023, 4024, 2, GumpButtonType.Reply, 0);
                }
            }
示例#3
0
            public TokenContributersStaffGump(ArrayList contributers, int page)
                : base(500, 30)
            {
                m_Page = page;
                m_TokenContributers = contributers;

                AddImageTiled(0, 0, 300, 425, 0xA40);
                AddAlphaRegion(1, 1, 298, 423);

                AddHtml(10, 10, 280, 20, "<basefont color=#A0A0FF><center>Fund Raiser [Staff View]</center></basefont>", false, false);

                int lastPage = (m_TokenContributers.Count - 1) / MaxEntriesPerPage;

                string sLog;

                if (page < 0 || page > lastPage)
                {
                    sLog = "";
                }
                else
                {
                    int max = m_TokenContributers.Count - (lastPage - page) * MaxEntriesPerPage;
                    int min = Math.Max(max - MaxEntriesPerPage, 0);

                    StringBuilder builder = new StringBuilder();

                    for (int i = min; i < max; i++)
                    {
                        TokenContributer contributer = contributers[i] as TokenContributer;

                        if (contributer != null && contributer.Mobile != null && contributer.Mobile.Account != null)
                        {
                            if (i != min)
                            {
                                builder.Append("<br>");
                            }
                            builder.AppendFormat("{0} (<i>{1}</i>): {2}", contributer.Mobile.Name, contributer.Mobile.Account, contributer.Amount);
                        }
                    }

                    sLog = builder.ToString();
                }

                AddHtml(10, 40, 280, 350, sLog, false, true);

                if (page > 0)
                {
                    AddButton(10, 395, 0xFAE, 0xFB0, 1, GumpButtonType.Reply, 0); // Previous page
                }
                AddLabel(45, 395, 0x481, String.Format("Current page: {0}/{1}", page + 1, lastPage + 1));

                if (page < lastPage)
                {
                    AddButton(261, 395, 0xFA5, 0xFA7, 2, GumpButtonType.Reply, 0); // Next page
                }
            }