1. Список говнокодов пользователя Shumway

    Всего: 5

  2. C++ / Говнокод #5324

    +174

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    BOOL CAnalysisWindow::OnControlStatus(void* msg)
    {
      TypeControlStatus* ControlStatus = (TypeControlStatus*)msg;
    
      if (ControlStatus->Total > 12)
      {
        m_ProgressBar.ShowWindow(0);
        m_ProgressBar2.ShowWindow(0);
        ...
        m_ProgressBar12.ShowWindow(0);
      }
      else
      {
        m_ProgressBar.ShowWindow(ControlStatus->Total > 0);
        m_ProgressBar2.ShowWindow(ControlStatus->Total > 1);
        ...
        m_ProgressBar12.ShowWindow(ControlStatus->Total > 11);
      }
    
      if (ControlStatus->Current == 1)
      {
        m_ProgressBar.SetRange(0, ControlStatus->Total);
      }
      m_ProgressBar.SetPos(ControlStatus->Current);
    
      if (ControlStatus->Current == 2)
      {
        m_ProgressBar2.SetRange(1, ControlStatus->Total);
      }
      m_ProgressBar2.SetPos(ControlStatus->Current);
    
      ...
    
      if (ControlStatus->Current == 12)
      {
        m_ProgressBar12.SetRange(11, ControlStatus->Total);
      }
      m_ProgressBar12.SetPos(ControlStatus->Current);
    
      return TRUE;
    }

    Как сделать прогресс бар c 12-ю делениями? Ответ прост: воспользоваться 12-ю прогресс барами, по одному на каждое деление.
    Самое интересное, как отрисовывается общий прогресс на 12 маленьких прогресс барах.

    Shumway, 18 Января 2011

    Комментарии (21)
  3. C++ / Говнокод #4729

    +174

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    // used to set or reset batch mode
    void SetIsBatch(bool bSet)
    {
        if(bSet)
        {
            if(m_Chart.GetIsBatched())
                return;
            else
            {
                m_Chart.SetIsBatched(TRUE);
            }
        }
        else
        {
           if(m_Chart.GetIsBatched())
           {
               m_Chart.SetIsBatched(FALSE);
           }
           else
               return;
        }
    }

    Shumway, 24 Ноября 2010

    Комментарии (21)
  4. C++ / Говнокод #4723

    +179

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if(
        (s.Find("/0")!=-1)||
        (s.Find("Log10(-")!=-1)||
        (s.Find("Log10(0")!=-1))//stupid user error
    {
    }

    Проверка, есть ли в формуле, введенной пользователем, деление на 0, логарифм от отрицательного числа или логарифм от нуля. Стиль и комментарии автора сохранены.

    Shumway, 23 Ноября 2010

    Комментарии (13)
  5. C++ / Говнокод #4722

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    //Set different text depending on how long on progressbar progress is
    if (dwStepPercent < 25)
        byText=0;
    else if (dwStepPercent < 50)
        byText=1;
    else if (dwStepPercent < 75)
        byText=2;
    else
        byText=3;

    Отличный способ не делить.

    Shumway, 23 Ноября 2010

    Комментарии (2)
  6. C++ / Говнокод #4704

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    GetFirstFieldWithName(CString szElemName)
    {
        int i = -1;
    
        for (i = 0; i < m_FieldValues.GetSize(); i ++)
        {
            if (m_FieldValues[i]->m_szElemName == szElemName)
                break;
        }
    
        if ((i > 0) && (i < m_FieldValues.GetSize()))
            return m_FieldValues[i];
        else
            return NULL;
    }

    Shumway, 22 Ноября 2010

    Комментарии (6)