private void WriteAllListBoxes()
{
writer.Write(GUIListBoxes.Count);
foreach (GUIListBox listBox in GUIListBoxes)
{
int flags = (listBox.Translated ? NativeConstants.GUIF_TRANSLATED : 0);
WriteGUIControl(listBox, flags, new string[] { listBox.OnSelectionChanged });
writer.Write(0); // numItems
writer.Write(0); // selected
writer.Write(0); // topItem
writer.Write(0); // mousexp
writer.Write(0); // mouseyp
writer.Write(0); // rowheight
writer.Write(0); // num_items_fit
writer.Write(listBox.Font);
writer.Write(listBox.TextColor);
writer.Write(listBox.SelectedTextColor);
int exflags = (listBox.ShowBorder ? 0 : NativeConstants.GLF_NOBORDER);
exflags |= (listBox.ShowScrollArrows ? 0 : NativeConstants.GLF_NOARROWS);
writer.Write(exflags);
writer.Write((int)listBox.TextAlignment);
writer.Write(0); // reserved1
writer.Write(listBox.SelectedBackgroundColor);
}
}