[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kdevelop-devel
Subject:    Improving generic KPart support in KDevelop (by example of Okteta)
From:       "Friedrich W. H. Kossebau" <kossebau () kde ! org>
Date:       2009-08-04 12:35:20
Message-ID: 200908041435.21652.kossebau () kde ! org
[Download RAW message or body]

Hi,

I am the author of Okteta, the KDE 4 Hex Editor^, and currently working on 
integrating Okteta (and maybe more development related tools) as much as 
possible into KDevelop (see ^^ for some blogging about that). Because I \
think  KDevelop is getting great, and I want to add to that my little 
contribution :)

^ http://utils.kde.org/projects/okteta
^^
http://frinring.wordpress.com/2009/07/24/shorttip-viewing-raw-data-of-files-in-konquerorkdevelop/
 http://frinring.wordpress.com/2009/07/29/binspekt-kpart-for-reuse-in-kdevelop/



Which means I am now doing some stress testing to the KPart support in 
KDevelop, I hope you welcome that ;) Thanks to Andreas for already quickly 
fixing a crash on general KPart loading :)

So far things are working quite okay. But they can do better. I haven't \
dived  too much into the KDevelop sources and might not have the time to do \
so,  which means I would be glad if some of you interested in better KPart 
integration could help out in doing the needed changes on the KDevelop side \
 (or point me to where I could try to patch things).

Following are four things that are stoppers for a good show-time of KParts \
in  KDevelop:

Bug: Usage of groups in XMLGUI
------------------------------
What is the reason for all the grouping with e.g. "<DefineGroup 
append="new_merge" name="new_merge"/>" in kdevelopui.rc?
This breaks proper integration of all non-Kate KParts. Just load an image \
and  see "Save As..." and "Properties" added as last items to the "File" \
menu  instead of where "ui_standards.rc" would place them. I for now \
"fixed" the  oktetapartreadwriteui.rc file by also making use of the \
groups, but this is  KDevelop-specific and a broken hack.

Bug: Save/Revert for ReadWriteParts
-----------------------------------
Are there any reasons save/revert actions are not offered out of the box \
for  ReadWriteParts in KDevelop?
A KPart::ReadWritePart implements both a "save()" and a "saveAs(const \
KUrl&)"  method. So I would have expected that KDevelop itself sets up \
these actions.  But it doesn't. And it also doesn't include them in the \
actions "Save All"  and "Revert All". Not what is expected :)

Feature: Embedded tool views
----------------------------
How to support tools which have a small control/tool view that is embedded \
and  not a dialog?
Okteta has a small set of tools like checksum, strings extraction, \
filtering  or statistics (see ^^^ and ^^^^ for pictures). New for KDE 4.4 \
will be also  embedded Go-to, Select, Find/Replace views similar to how \
Kate does it. It  would be good if is possible to also offer access to \
these two kind of tools  from Okteta and other non-Kate parts (perhaps by \
some extension of the KParts  system).

Feature: Statusbar items
------------------------
Could there be an option to show statusbar items like the KPart has for 
row/column?
For Okteta this would be e.g. the offset, but some other status information \
 might be wanted, too. See ^^^ for examples.


^^^
http://frinring.files.wordpress.com/2009/06/okteta-0-3-new-features.png
^^^^
http://frinring.files.wordpress.com/2008/12/okteta-02-new-features1.png
http://frinring.files.wordpress.com/2008/05/oktetastringextract.png


What do you think? Who of you works on these parts of KDevelop? For a \
start,  where would I need to look to solve the Save/Revert problem?

Cheers
Friedrich
-- 
Okteta - KDE 4 Hex Editor - http://utils.kde.org/projects/okteta

_______________________________________________
KDevelop-devel mailing list
KDevelop-devel@kdevelop.org
https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic