Re: using ktexteditor as a base for a disassembly viewer
Dominik Haumann <[email protected]>
| Newsgroups | gmane.comp.kde.devel.kwrite |
|---|---|
| Message-ID | <CALi_srBUN9cqh4JynPYBEt_QQuVwisJOMWvBZmf2KU0j3YxQLQ@mail.gmail.com> |
I also believe that using KSyntaxHighlighting directly is the best approach with custom delegate. This way you'll also get the Background colors you want etc. Best regards Dominik Christoph Cullmann <[email protected]> schrieb am Fr., 11. Dez. 2020, 20:25: > On 2020-12-11 20:19, Milian Wolff wrote: > > On Freitag, 11. Dezember 2020 16:52:25 CET Sven Brauch wrote: > >> Hi, > >> > >> > PS: How would one even use KSyntaxHighlighting for rendering into a > >> > QAbstractItemView? That also sounds somewhat nasty hmmm > >> > >> That doesn't sound too complicated, or maybe I'm mistaken? For one of > >> my > >> applications, I needed HTML rendering once, which I implemented by > >> creating > >> a delegate holding a QTextDocument. The delegate just sets the text on > >> the > >> document and then draws its contents. The same should work when you > >> set a > >> highlighter. Like this (sorry, not the cleanest code, it's already a > >> few > >> years old): http://pastie.org/p/6yTw8HZl47KcgvrjSBaDG8 > > > > Yes, that's obviously an easy approach to take, and for the amount of > > data I'm > > expecting should probably work out fine. But note that this approach > > requires > > a re-layouting for every paint. A better approach would store the > > layout (i.e. > > the text document) per item somehow. Maybe I can just put that into the > > model > > itself, next to the highlighting... > > > > Anyhow, probably premature optimization, and a KISS approach should > > work out > > fine for now. > > > >> Otherwise, I'm not sure either. I personally think it will be easier > >> if you > >> just use a QTableView, unless you need column-wise text selection. I > >> think > >> you could hook everything you need into KTextEditor as well (by e.g. > >> setting custom context menus depending on the column that was clicked > >> etc) > >> but it will require more lines of hacks than you would otherwise need > >> to > >> re-create the needed functionality yourself ;) Some applications use > >> the > >> text editor for a lot of stuff, maybe that can serve you as > >> inspiration -- > >> e.g. sublime text comes to mind, which presents its search results > >> (and > >> probably other things) as an interactive text document. > > > > Right, that could work. But it would let the disassembly view stand out > > a lot > > from the other hotspot views. > > > > Thank you, unless someone else chimes in with an awesome idea, I really > > think > > that we'll have to try the KSyntaxHighlighter + custom delegate > > approach. > > I guess that is the most pragmatic way to go. > > Greetings > Christoph > > -- > Ignorance is bliss... > https://cullmann.io | https://kate-editor.org >