2 * Namespace: System.Web.UI.WebControls
\r
3 * Class: DataGridPagerStyle
\r
5 * Author: Gaurav Vaish
\r
6 * Maintainer: gvaish@iitk.ac.in
\r
7 * Contact: <my_scripts2001@yahoo.com>, <gvaish@iitk.ac.in>
\r
8 * Implementation: yes
\r
11 * (C) Gaurav Vaish (2002)
\r
16 using System.Web.UI;
\r
18 namespace System.Web.UI.WebControls
\r
20 public class DataGridPagerStyle : TableItemStyle
\r
24 private static int MODE = (0x01 << 19);
\r
25 private static int NEXT_PG_TEXT = (0x01 << 20);
\r
26 private static int PG_BTN_COUNT = (0x01 << 21);
\r
27 private static int POSITION = (0x01 << 22);
\r
28 private static int VISIBLE = (0x01 << 23);
\r
29 private static int PREV_PG_TEXT = (0x01 << 24);
\r
31 internal DataGridPagerStyle(DataGrid owner): base()
\r
36 public PagerMode Mode
\r
42 return (PagerMode)ViewState["Mode"];
\r
44 return PagerMode.NextPrev;
\r
48 if(!Enum.IsDefined(typeof(PagerMode), value))
\r
50 throw new NotImplementedException();
\r
52 ViewState["Mode"] = value;
\r
57 public string NextPageText
\r
61 if(IsSet(NEXT_PG_TEXT))
\r
63 return (string)ViewState["NextPageText"];
\r
69 ViewState["NextPageText"] = value;
\r
74 public string PrevPageText
\r
78 if(IsSet(PREV_PG_TEXT))
\r
80 return (string)ViewState["PrevPageText"];
\r
86 ViewState["PrevPageText"] = value;
\r
91 public int PageButtonCount
\r
95 if(IsSet(PG_BTN_COUNT))
\r
97 return (int)ViewState["PageButtonCount"];
\r
103 ViewState["PageButtonCount"] = value;
\r
108 public PagerPosition Position
\r
112 if(IsSet(POSITION))
\r
114 return (PagerPosition)ViewState["Position"];
\r
116 return PagerPosition.Bottom;
\r
120 if(!Enum.IsDefined(typeof(PagerPosition), value))
\r
122 throw new ArgumentException();
\r
124 ViewState["Position"] = value;
\r
129 public bool Visible
\r
135 return (bool)ViewState["Visible"];
\r
141 ViewState["Visible"] = value;
\r
146 public override void CopyFrom(Style s)
\r
148 if(s != null && !s.IsEmpty && s is DataGridPagerStyle)
\r
151 DataGridPagerStyle from = (DataGridPagerStyle)s;
\r
152 if(from.IsSet(MODE))
\r
156 if(from.IsSet(NEXT_PG_TEXT))
\r
158 NextPageText = from.NextPageText;
\r
160 if(from.IsSet(PG_BTN_COUNT))
\r
162 PageButtonCount = from.PageButtonCount;
\r
164 if(from.IsSet(POSITION))
\r
166 Position = from.Position;
\r
168 if(from.IsSet(VISIBLE))
\r
170 Visible = from.Visible;
\r
172 if(from.IsSet(PREV_PG_TEXT))
\r
174 PrevPageText = from.PrevPageText;
\r
179 public override void MergeWith(Style s)
\r
181 if(s != null && !s.IsEmpty && s is DataGridPagerStyle)
\r
184 DataGridPagerStyle with = (DataGridPagerStyle)s;
\r
185 if(with.IsSet(MODE) && !IsSet(MODE))
\r
189 if(with.IsSet(NEXT_PG_TEXT) && !IsSet(NEXT_PG_TEXT))
\r
191 NextPageText = with.NextPageText;
\r
193 if(with.IsSet(PG_BTN_COUNT) && !IsSet(PG_BTN_COUNT))
\r
195 PageButtonCount = with.PageButtonCount;
\r
197 if(with.IsSet(POSITION) && !IsSet(POSITION))
\r
199 Position = with.Position;
\r
201 if(with.IsSet(VISIBLE) && !IsSet(VISIBLE))
\r
203 Visible = with.Visible;
\r
205 if(with.IsSet(PREV_PG_TEXT) && !IsSet(PREV_PG_TEXT))
\r
207 PrevPageText = with.PrevPageText;
\r
212 public override void Reset()
\r
216 ViewState.Remove("Mode");
\r
218 if(IsSet(NEXT_PG_TEXT))
\r
220 ViewState.Remove("NextPageText");
\r
222 if(IsSet(PG_BTN_COUNT))
\r
224 ViewState.Remove("PageButtonCount");
\r
226 if(IsSet(POSITION))
\r
228 ViewState.Remove("Position");
\r
232 ViewState.Remove("Visible");
\r
234 if(IsSet(PREV_PG_TEXT))
\r
236 ViewState.Remove("PrevPageText");
\r