Сворачивающиеся процедуры

Тема в разделе "WASM.WIN32", создана пользователем calidus, 25 мар 2009.

  1. calidus

    calidus Member

    Публикаций:
    0
    Регистрация:
    27 дек 2005
    Сообщения:
    618
    В данном случае речь пойдет о визуальном эффекте , который присутствует не только в визуал си но и в других редакторах для различных языков программирования. Выглядит как плюсик или минусик , при нажатии на который текст либо сварачивается , либо раскрывается. Вопрос собственно стоит так ... как это можно реализовать и как это реализуется в визуал студии скажем. Сэнкс
     
  2. yurza

    yurza New Member

    Публикаций:
    0
    Регистрация:
    5 мар 2008
    Сообщения:
    69
    Случайно не это
    BOOL AnimateWindow( HWND hwnd,
    DWORD dwTime,
    DWORD dwFlags
    );
     
  3. censored

    censored New Member

    Публикаций:
    0
    Регистрация:
    5 июл 2005
    Сообщения:
    1.615
    Адрес:
    деревня "Анонимные Прокси"
    docking
     
  4. K10

    K10 New Member

    Публикаций:
    0
    Регистрация:
    3 окт 2008
    Сообщения:
    1.590
    yurza
    Точно не это :)

    calidus
    На ум приходит только мысль вырезать/вставлять куски текста, оригинальный текст где-то хранить в памяти...
     
  5. iZzz32

    iZzz32 Sergey Sfeli

    Публикаций:
    0
    Регистрация:
    3 сен 2006
    Сообщения:
    355
    calidus, написать свой компонент для редактирования текста, хранить список строк, пропускаемых при отрисовке. Странный вопрос…
    PS: из готового Scintilla умеет вроде.
     
  6. AsmGuru62

    AsmGuru62 Member

    Публикаций:
    0
    Регистрация:
    12 сен 2002
    Сообщения:
    689
    Адрес:
    Toronto
    Текстовый файл представлен как список (ну или лучше вектор) объектов. Каждый объект - одна строка текста. Естественно, в объекте есть кроме самого текста, некоторые флаги, например, если строка содержит метку - там флаг метки стоит, для навигации. Ну, и т.д. Кроме флагов, каждая строка содержит пойнтер на список свёрнутых строк. Если пойнтер = 0, значит свёртки нет на этой строке. Когда свёртка делается, блок строк отцепляется от главного вектора строк и переносится в пойнтер. Ну и обратная операция - из пойнтера строки опять вставляются в главный вектор а сам пойнтер - в ноль. Единственно, заморочно делать операции со свёрнутым текстом.
     
  7. FatMoon

    FatMoon New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2002
    Сообщения:
    954
    Адрес:
    Russia
    А это не TreeView внутри RTF-поля, часом? Чертовски похоже.
     
  8. calidus

    calidus Member

    Публикаций:
    0
    Регистрация:
    27 дек 2005
    Сообщения:
    618
    =) эх кодеры ... вот пример с сишки
     
  9. calidus

    calidus Member

    Публикаций:
    0
    Регистрация:
    27 дек 2005
    Сообщения:
    618
    iZzz32
    Сэнкс =) я был там уже ... вот тут http://www.scintilla.org/SciTEImage.html
    но малоли есть альтернативный вариант.. там сишка ..лень ее разбирать я на асме чаще сижу