OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 12:08

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Facepalm
СообщениеДобавлено: Пятница, 09 Апрель, 2010 12:59 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
http://lurkmore.ru/Facepalm
Код:
   LOOP
      IF (tmp = NIL) OR (w.lastLineY > w.client.wy) THEN
         IF last # NIL THEN last.next := NIL END;
         WHILE tmp # NIL DO tmp.Dispose; tmp := tmp.next END;
         IF ~before OR (li = NIL) THEN EXIT END;
         tmp := w.firstLine; w.firstLine := li; li.next := tmp; w.highlight := li;
         li.ItemExtent (li.height); DEC (d, li.height);
         w.Validate (li); InitScan; prev := NIL; chg := TRUE;
      ELSE
         oldSz := tmp.height; tmp.ItemExtent (tmp.height); INC (w.lastLineY, tmp.height);
         IF oldSz # tmp.height THEN
            tmp.Update
         END;
         IF tmp = li THEN before := FALSE; bot := w.lastLineY; w.highlight := li END;
         last := tmp; tmp := tmp.next;
      END; (* if last line *)
   END; (* loop *)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Facepalm
СообщениеДобавлено: Понедельник, 12 Апрель, 2010 06:31 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
viewtopic.php?p=45845#p45845


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Facepalm
СообщениеДобавлено: Понедельник, 12 Апрель, 2010 06:56 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
Сравним:
Код:
li := w.firstLine;
LOOP
   IF li = NIL THEN EXIT ELSIF y1 + li.height >= y THEN RETURN TRUE END;
   INC (y1, li.height); li := li.next;
END;
RETURN FALSE
Код:
li := w.firstLine;
WHILE (li # NIL) & ~(y1 + li.height >= y) DO
   INC (y1, li.height); li := li.next;
END;
RETURN li # NIL


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB