Редактор TextEdit

...
  • В связи с созданием программы msgbox даю новую версию текстового редактора.

    Убрал 3 глюка:
    1) при сохранении файла дописывался лишний символ (было не правильное условие выхода из цикла)
    2) при открытии программы не ставил "чистку" памяти, в связи с чем могли быть ошибки (одна из таких ошибок проявлялась в том, что не всегда проявлялся глюк N1)
    3) функция GetPosByParam при некоторых условиях, вела себя не правильно
    Доработки:
    в 2-х случаях выдается сообщение (открытие большого файла, создание нового файла)
  • новая версия т. редактора 24.03.2009
    изменения на рисунках, цвета берутся из файла test.syn , думаю сделать интерфейс для выбора файла, но пока оно (имя файла) только одно
    убрал несколько небольших глюков
  • не могу понять куда-то пропадают последние файлы, наверное потому что я им имена даю похожие
  • 1. Хотелось бы функцию включения и выключения подсветки синтаксиса.
    2. Сейчас, я так понимаю, вначале рисуется синяя полоса с цифрами слева, а потом уже чёрный фон с текстом. Можно сделать лучше, чтобы перерисовка была менее видна. Должно быть так: рисуется полоса синего, цифра, полоса чёрного справа от неё, текст. И т.д.
    Программа всё больше радует, так держать!)))
    Из хаоса в космос
  • Замечание по поводу подсветки: допустим мне захочется завести метку, например, xorjgeeaxabc: ...
    Хотя, в принципе, четырехцветная метка - это прикольно =)
  • версия от 30 марта 2009:
    1) на последней кнопке сделал включение и выключение подсветки (хотя поначалу я ее задумывал для других целей)
    2) изменил алгоритм рисования полосы с номерами строк
    3) метка с именем xorjgeeaxabc: ... теперь будет двухцветной, потому что немного доработан алгоритм выделения слов цветом (определенные слова не выделяются, если слева стоит буква или цифра)
  • Немного улутшил программу:
    1) Доработал алгоритм разметки слов. Выделяются комментарии и строки в кавычках. Более корректно выделяются слова.
    2) По нажатии одной из кнопок на панели выделяется слово (по цвету), стоящее под курсором.
    3) Изменил рисунки 3-х кнопок на панели
    Читал что вроди макрос новый сделали для загрузки библиотек ?
  • Запускаю программу, тыкаю мышью в середину текствого поля, начинаю печатать. Текст печатается в левом верхнем углу текстового поля, а курсор при этом двигается там, куда я ткнул вначале.
  • IgorA
    Болеее подробно смотри тут:
    viewtopic.php?f=2&t=1220&p=23033#p23033
  • Insolor
    У меня та же проблема.
  • Запускаю программу, тыкаю мышью в середину текствого поля, начинаю печатать.
    Для исправления нужно доработать функцию TextAdd из файла t_work.asm . Дело втом что при добавлении текста за пределы документа нужно прежде добавить знаки перехода строки и пробелы. При открытии программы документ пустой, при попытке добавить текст за пределами файла - он (текст) добавляется в конец пустого документа, т. е. левый верхний угол.
    Будет время постараюсь исправить, но пока недоделок много.
  • Вчера пытался разбираться с исходниками и нашел опечатку в файле t_work.inc в функции TextFSColor:

    Code: Select all

    mov dword[ebp-4],1
    mov dword[ebp-4],1
    mov byte[ebp-12],0
    mov byte[ebp-13],1
    
    По идее во второй строке должно быть mov dword[ebp-8],1. Т.е. одна переменная остается неинициализированной.

    Еще идея появилась, что в "моем" баге проще не текст подтягивать к курсору, а курсор подтянуть к тексту. Хотя, создателю программы, конечно, виднее.
  • <Lrz>
    Интересный баг, пока такого не видел. Может ли он быть связан с каким-либо не правильным подключением (или использованием) элемента EditBox ? Если происходит затирание данных самой программой, то это будет сложнее найти...
    Insolor
    Т.е. одна переменная остается неинициализированной
    В эту переменную я планировал записать количество добавляемых символов новой строки.
    проще не текст подтягивать к курсору, а курсор подтянуть к тексту
    И так тоже можно сделать, просто хочется что-бы текст под курсор подстраивался а не наоборот. Если за пределом строки добавлять текст то он дополняется лидирующими пробелами. Потому думаю что надо будет дополнять и в данном случае. Хотя предложенный вариант с курсором легче реализовать.
  • Who is online

    Users browsing this forum: No registered users and 9 guests