Столбец, "обрезка"

Нашли баг? Воспользуйтесь поиском чтобы убедиться что его не нашли до вас и если он не упоминается добавьте его описание (желательно пошаговое).
Чем для автора программы отличаются баги, недоработки и фичи.

Модератор: motyara

Аватара пользователя
Alex
Сообщения: 649
Зарегистрирован: Чт окт 18, 2007 6:19 pm

Столбец, "обрезка"

Сообщение Alex »

в Подробном уменьшаем колонку Дата. Дата все равно рисуется(нет места для нее)
Последний раз редактировалось Alex Пт авг 13, 2010 10:19 pm, всего редактировалось 1 раз.
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Alex писал(а):в Подробном. уменьшаем колонку Дата. Дата все равно рисуется(нет места для нее)
Атрибуты- the same
Насколько я помню, в TC тоже так... Не считаю, что это надо менять - лучше видимое наложение текста, чем обрезка - из-за неё можно что-нибудь не так сделать... Вот выбор столбцов пригодился бы (надеюсь, в 0.97 появится)...

Что касается даты, то надо её формат руками написать. При желании даже убрать можно.
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Alex писал(а):в Подробном. уменьшаем колонку Дата. Дата все равно рисуется(нет места для нее)
Атрибуты- the same
Дополнительные команды по измерению ширины текста даты и по подрезанию его скорее всего негативно отразятся на скорости прорисовки панели. Полагаю указанное умение не критично, а потому скорость все-таки приоритетнее.
Аватара пользователя
Alex
Сообщения: 649
Зарегистрирован: Чт окт 18, 2007 6:19 pm

Re: Дата, подробн.

Сообщение Alex »

вывод FillRect скажется на скорости? Нет
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Alex писал(а):вывод FillRect скажется на скорости? Нет
А причем тут FillRect? (но даже он на скорости скажется, вопрос лишь в том насколько сильно)
Аватара пользователя
Alex
Сообщения: 649
Зарегистрирован: Чт окт 18, 2007 6:19 pm

Re: Дата, подробн.

Сообщение Alex »

Чтобы не было текста от пред. колонок, надо для каждой колонки делать Fillrect(потом- TextOut).
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Fillrect используется для всей строки, а не для столбца. Я считаю что смысла в срезании непоместившихся краев даты нет.
Аватара пользователя
Alex
Сообщения: 649
Зарегистрирован: Чт окт 18, 2007 6:19 pm

Re: Дата, подробн.

Сообщение Alex »

смысл такой- уменьшить Дату чтобы было только D.M.YYYY, а H:M было только в status (убрать H.M из формата - не то, не будет в status).
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Alex писал(а):смысл такой- уменьшить Дату чтобы было только D.M.YYYY, а H:M было только в status (убрать H.M из формата - не то, не будет в status).
А ещё при этом скрыть несколько старших цифр размера или хвост расширения...
Расширение и размер.png
Я пользуюсь именно такими столбцами (уменьшил ширину за счёт имени, остальные - без изменения). Наложения текста обычно нет, поэтому я против искусственной обрезки.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Alex
Сообщения: 649
Зарегистрирован: Чт окт 18, 2007 6:19 pm

Re: Дата, подробн.

Сообщение Alex »

Немного странный способ. Можно ini-key (для старого поведения)
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Alex писал(а):Немного странный способ.
Почему странный? Выбрать минимальную (но достаточную) ширину для расширения и размера вполне логично.
Какие файлы могут иметь размер в несколько ГБ? Iso, sys, avi, rar, 7z, bin - все расширения короткие, а файлы с длинными расширениями имеют размер на несколько порядков меньше - как раз место на их расширение.
Alex писал(а):Можно ini-key (для старого поведения)
А вот тут вопрос времени выполнения/дублирования кода. Есть 3 способа реализации.
1. Медленный:

Код: Выделить всё

for(/* each file in files */)
  {
  ... // Какой-то код
  if(needclear) fillrect(...);
  ... // Какой-то код
  }
2. С дублированием кода:

Код: Выделить всё

if(needclear)
  for(/* each file in files */)
    {
    ... // Какой-то код
    fillrect(...);
    ... // Какой-то код
    }
else
  for(/* each file in files */)
    {
    ... // Какой-то код
    ... // Какой-то код
    }
3. C использованием отдельного файла и условной компиляции - поместить функцию в отдельный файл и использовать в нём условную компиляцию для получения двух функций с данным различием с помощью двойного использования #include при разных вариантах раскрытия макроса... Плюсом этого способа является создание функций без проверки лишних условий при отсутствии ручного дублирования кода. А минусом - то, что он является не самым понятным.

Как Вы считаете, насколько такая модификация имеет смысл?
Может, лучше попросить два формата даты - для файловой панели и для строки состояния?
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Qwertiy писал(а):Как Вы считаете, насколько такая модификация имеет смысл?
Может, лучше попросить два формата даты - для файловой панели и для строки состояния?
Что-то нет у меня желания делать разные функции прорисовки лишь для того чтобы опционально подрезалась строка даты... да и два формата даты на мой взгляд перебор.

И честно говоря мне что-то не совсем понятна необходимость в одном случае видеть "H:M", а в другом - нет... насколько мне известно, дата в панели отображается при подробном режиме, а дата в строке статуса - при кратком...
Аватара пользователя
Alex
Сообщения: 649
Зарегистрирован: Чт окт 18, 2007 6:19 pm

Re: Дата, подробн.

Сообщение Alex »

Qwertiy
>Как Вы считаете, насколько такая модификация имеет смысл?
смысла нет. От сравнения (даже в for)что-то изменится- только в asm-программе. Или в архиваторе
Вар-т 1- достаточно

MD
Explorer "подрезает" колонки
Аватара пользователя
Alex
Сообщения: 649
Зарегистрирован: Чт окт 18, 2007 6:19 pm

Re: Дата, подробн.

Сообщение Alex »

Скорость: пока делается fillrect для всей строки. Будет делаться fillrect для каждой колонки. скорость этого та же - вместо всей строки fillrect для отдельных колонок.
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Alex писал(а):Explorer "подрезает" колонки
Неудивительно, ведь TListView делает это по умолчанию...