- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
public void SelectStep(int stepNumber)
{
//1.HTTPCore
//2.find cat
//3find p.cat
//4.find products
//5.parse products info
//6.save
//7.complete
if (stepNumber != 1) ((Label)(this.panel.Controls.Cast<Control>()
.First(c => c.TabIndex == stepNumber - 1))).ForeColor = Color.Black;
((Label)(this.panel.Controls.Cast<Control>()
.First(c => c.TabIndex == stepNumber))).ForeColor = Color.Red;
if (stepNumber == 6)
{
labelStatusSecondLine.ForeColor = Color.Black;
labelStatusFirstLine.Text = "Готово."; buttonStart.Enabled = buttonRefreshCats.Enabled = true; timer.Stop();
}
if (stepNumber == 7)
{
labelStatusSecondLine.Text = "Обновление категорий...";
}
}
Досталось в наследство. Слегка переписано мной (ранее у всех лейблов были имена вроде "label1" – к лейблам аффтар обращался по распарсенным оттуда цифрам).
Декомпилер детектед.
стало: labelStatusSecondLine
labelStatusFirstLine
цифры на буквы заменил, это и называется "слегка переписано мной" ?
>цифры на буквы заменил
Ну, строго говоря, распарсивание названий лейблов было выпилено и заменено на использование TabIndex (что немногим лучше, в общем-то).
Это, конечно, правильно, но тогда меня не беспокоило то, что будет творить компилятор. Стояла задача: поправить говнокод так, чтобы приложение снова работало так, как угодно заказчику. И вдруг мне на глаза попались лейблы с ни о чём не говорящими именами (оттуда, чем-то вроде IndexOf(), парсились порядковые номера лейблов); после того, как я их переименовала, этот метод обвалился – ну и руки зачесались упрятать порядковые номера в TabIndex.
Тогда – не вызывал. Так и родился этот говнокод, собственно.
>оставить цифры в лейбле
>не проще?
>label1
Не проще. Такие названия контролов отвлекают меня от работы.