-void ContextBox::drawText(const Graphics::Bitmap & bmp, const Font & vFont){
+/* draws the text, fading the items according to the distance from the
+ * current selection.
+ */
+void ContextBox::doDraw(int x, int y, int middle_x, int min_y, int max_y, const Font & font, int current, int selected, const Graphics::Bitmap & area, int direction){
+ while (y < max_y && y > min_y){
+ int pick = current;
+ while (pick < 0){
+ pick += context.size();
+ }
+ pick = pick % context.size();
+
+ ContextItem * option = context[pick];
+ const int startx = middle_x - font.textLength(option->getName().c_str())/2;
+ void doDraw(int x, int y, int middle_x, int min_y, int max_y, const Font & font, int current, int selected, const Graphics::Bitmap & area, int direction);
void drawText(const Graphics::Bitmap &, const Font & font);