Last Friday I did some experiments with using html-like tables to implement interface details using a single Plasma::Label, that simplifies the code and, most important, reduces memory usage. I almost succeed, the result is this:
Another advantage of using html tables is that now we can select which detail to show per interface type. In the current implementation the entries Operator, Signal Quality and Access Technology are only shown for Gsm connections. Monolithic Knm uses a similar code to showing tooltips for the interfaces. One other thing Knm does is let the user select which detail and in which order to present them, that is more flexible than what I have implemented so far. I plan to port that code to Plasma NM in the future as more I progress in MM implementation the more information will be added to interface details, so it would be good to select which detail I want to see. One more thing to the TODO list.
Sometimes I get very stubborn to finish one thing. If you look at the screenshot above you can see the access technology and signal quality beside the connection name at the right side of Plasma NM. I thought I could do that in a couple of hours at most, what naive of me. Yesterday morning I started to dig the code finding how Plasma NM does that for wireless connections. Man, it looks like a labirint, only today morning I finally have got everything working, well almost everything, there are some edges to polish. What took me so much time was the fact the wireless component gets the signal strength througth org.kded.networkmanagement (a kded module), so I had to implemented one interface for org.kded.networkmanagement too, more precisely org.kded.networkmanagement.GsmInterfaceConnection. The implementation adds 13 new files to the source code :-/ and charnges several other files. Well, at least now I can see the signal quality and access technology without having to open the interface details window :-) Yes!!!