Название: Сделать очень простой плагин для QtCreator Отправлено: titan83 от Октябрь 14, 2017, 22:27 Коллеги, здравствуйте.
У меня случилась боль) Я хочу документировать свой проект, используя QDoc или Doxygen, все вроде бы здорово, но если начинать нормально документировать логику, описание форматов и связи между классами, то исходные тексты превращаются в свалку. В принципе, можно писать в отдельных файлах, но только отвлеченные документы, описание классов вне класса воспринимаются болезненно (и QDoc'ом, и Doxygen'ом), поэтому лучше в cpp-файле. Но читать исходники становится реально неудобно, ручное сворачивание блоков с комментариями возможно, но непродуктивно. Поэтому хочу сделать простейший плагин, который бы сворачивал\разворачивал все блоки в файле (может и проекте, если это возможно), начинающиеся на /*! Читаю документацию, но там довольно объемно, не могу пока найти место, где обрабатываются блоки текста (TextEditor, SyntaxHighlither?). Я слабо верю, что кто-то сходу подскажет, но все: вдруг есть ценитель системы плагинов qtc) Спасибо. Название: Re: Сделать очень простой плагин для QtCreator Отправлено: ViTech от Октябрь 15, 2017, 12:50 Бегло глянул в исходники, искал действие "Toggle Fold All". Возможно нужно начать с TextEditorWidget::unfoldAll() и делать по аналогии.
Название: Re: Сделать очень простой плагин для QtCreator Отправлено: titan83 от Октябрь 15, 2017, 20:08 Бегло глянул в исходники, искал действие "Toggle Fold All". Возможно нужно начать с TextEditorWidget::unfoldAll() и делать по аналогии. Благодарю. Нашел нужный мне код в texteditor.cpp. Попробую сделать нечто похожее. fold() и unfold(), но с условием, что trimmed().startsWith("/*!") == trueНо с документацией было бы проще. Название: Re: Сделать очень простой плагин для QtCreator Отправлено: ViTech от Октябрь 16, 2017, 10:23 Зачастую для написания хорошей документации уходит гораздо больше времени, чем на написание самого кода :). А от документации "в одну строчку" толка мало, с таким же успехом можно исходники смотреть. Похоже Qt'шники не хотят тратить время / не считают нужным документировать внутренности креатора.
Попробую сделать нечто похожее. fold() и unfold(), но с условием, что trimmed().startsWith("/*!") == true В общем случае комментарии Doxygen могут не только с "/*!" начинаться, там ещё и другие сочетания есть. |