
Welcome to the this-is-another-kcontrol-reorganization-attempt-but-this-time-it-will-be-good file! 

This file contain a list of various major changes for KControl(reorganization, broad technical changes etc.) planned for KDE4. I think it is a good idea if small changes in each KCM is not listed(if they not have a meaning in the bigger picture) otherwise this list will grow too big. 
Feel free to discuss the ideas on kde-usability.
Of course, nothing in this file is set in stone, or is "correct" or "true" for that matter. It is only ideas.

---------- Various reorganization/renaming stuff ---------------
* Rename "KDE Wallet" to "Wallet"(people can't differentiate nor care about what is KDE and what's not. It is also irrelevant for the context).

* Rename "Vim Component Configuration" to "Vim Embedding"

* Rename "k3bsetup2" to "CD & DVD Writing". Get it out of KControl!

* Rename "Sony Vaio Laptop Hardware Configuration" to "Sony Vaio Laptop"

* Rename "Display" to "Monitor", see the KCM guidelines

* Rename "Peripherals" to "Hardware". The category X-KDE-settings-hardware is already added and KCMs needs to be converted to it.

* Remove old categories, for example X-KDE-settings-peripherals.

* As William points out, in a lot of cases there's an unnecessary use of 
"Manager" and "Configuration". We should not state the obvious and remove those parts.

* Move "Power Control/Laptop Battery" to "Hardware"(the only KCM left in that category).

* Convert all options in "Internet & Network/Preferences" to KConfigXT and then remove the KCM.

* Move the laptop KCMs to "Hardware", from "System Administration".

* Rename "System Administration" to "System".

* Move "KDE Components/File Manager" out of KControl. It's Konqueror specific.

* Remove "KDE Components" and put the KCMs elsewhere, most of them in "System". Wake up: a non KDE hacker can't differentiate between KDE and other parts of the system.

* Move "KDE Performance"(err.. that is Konqueror Performance) out of KControl.

* Move "Internet & Network/Web Browser" out of KControl. Those apps(such as Quanta) which needs the configuration functionality can load the specific KCMs into their own configuration dialogs.

* We must stop differentiating between KDE and System/whatever. People *can't* tell the difference and it only clutters up the interface. KDE is THE computer/system.

* The following container: 
KCMODULECONTAINER("kded, componentchooser, kresources, kcmvim", resources )
The desktop file is called "kcm_software_components" with "Name=Software Components" and "Categories=X-KDE-settings-system"

* The following container:
KCMODULECONTAINER("kcmfontinst, fonts", fonts )
The desktop file is called "kcm_fonts" with "Name=Fonts" and "Categories=X-KDE-settings-appearance"

* Remove "System Administration/Paths", convert the values to KConfEdit.

* Remove "Sound & Multimedia/Bell" since it is a duplicate of the accessibility KCM. How on earth does such a thing slip through? :)

* Remove "Internet & Network/Email". It is replaced by the new kcm_useraccount

* Remove "System Administration/User Info". It is replaced by the new kcm_useraccount

* Remove "Privacy & Crypto/Passwords". It is replaced by the new kcm_useraccount. Probably. (awaiting comment from Aaron)

* With the above changes top level category "KDE Components" is gone, or nearly gone. Nuke it fully.

* (top level category "Power Control" is gone)

* Tell Konqi to go burn the 11 tabs of keyboard options(5 KCMs). Because it is.. bizarre. Two KCMs with two tabs each is absolute maximum. One KCM with three tabs is quite ok too.

* Put some common sense into phrases used here and there, Comments fields for example. Don't use "...", "etc", paranteses, exlamation marks, smilies(haven't found any though). Don't phrase things like "Y configurates code part X"......

* Why must "Spell Checking" be in KControl? Isn't it enough that it's available in all applications which have spell checking? When would the user turn to KControl and not the app which it is used? (That KSpell is highly integrated between applications is a developers view, not a user's..)

* Split "Sound & Multimedia/Sound System" into two KCMs(it currently consists of two tabs) and combine those two with "System Notifications" with the KCMODULECONTAINER macro into one KCM called "Sound System". Lots of the options in Sound System can be turned into KConfEdit options, mesa thinks.




---------Various technical, broad design shifts: --------------------

* Move the various KCMs in kdebase/kcontrol/* out to their respective app, as per the KCM Guidelines.

* Convert KCMs to use Designer files

* Namespace the KCMs desktop files to "kcm_*.desktop", as per KCM Guidelines.

* A lot, perhaps even the majority, violate the HIG by not displaying 
properly in 800x600. For a start, someone needs to iterate through all KCMs and file bug reports for each missbehaving. See the KDE UI Guidelines.

* KCMs needs to be converted to KConfigXT and use the global kdeglobals KConfigXT object.

* Tons of KCMs and applications have options for selecting binaries which they use(frontends etc.). We need to be a little consistent here and adopt a general policy in this issue.
If a binary is not in $PATH it is the distributors fault and not KDE. The reason we have a GUI is so people don't have to know about this kinds of internals. The options doesn't mean anything because users use KDE, they're not in run level 3("WTF? cdparanoia? diff? What's that?"). PATH options("Where to search for X") should be removed - it is up to the distributor. Options for selecting what binary to use should be moved out to KConfEdit - they have a use but are very rarely used.

* Rewrite kcmshell to the new KCModuleProxy and fix bugs. Move it to kdelibs.



--------------------------------------------------------------------------

Below is some old stuff, which was in this file.




File Browsing -> Filemanager
----------------------------
Appearance (Rik was right here and I was wrong): Getting rid of "Standard Font" and "Normal Text Color" by putting "Filemanager Text" into "Look&Feel -> Colors -> Widget color"
Other: This tab should be removed: "Show network operations in a single window" should go either in "Behaviour" or into "Network -> KDE protocols Information". Also "Terminal program" appears for Konqueror-Settings as well as in the Kicker-Settings. There should only be one place which specifies which terminal should be used for all applications.


Help -> Index
-------------
This looks a bit crowdy. Adding a second Tab "Program Locations" which appears behind the "General tab" might be a good idea as the paths should be set automagically and user-interaction concerning this should only be necessary in case of failure.


Look & Feel -> Desktop
----------------------
Desktop: Looks overcrowded:
"Show Preview for:" should go into a tab "Previews" in File-Browsing -> File Associations. Malte is probably already working on this.
Appearance (Rik was right here): Getting rid of "Standard Font" and "Normal Text Color" by putting "Desktop Text" into "Look&Feel -> Colors -> Widget color"

Groupboxes named "Behaviour", "Clicks on the desktop" and "Paths" would look much more tidy here ("path" could be removed from each item then and would make the dialog look more tidy).

Look & Feel -> System-Notifications
-----------------------------------
The current dialog resembles a very good "advanced"-tab. It would be nice for the newbie if there was a
Tab for newbies in the first place which only shows the available Notification-themes ("Minimalistic", "Visually impaired", "Aureal impaired", "KDE-Standard").
The current dialog should appear as an advanced tab behind the "Theme"-tab.

Network -> Talk Configuration
-----------------------------
Answering Machine: A groupbox around "Address:, Subject:, First Line:" would be nice. That way one wouldn't need to mention "Mail" each time. The Groupbox could be named something like "Anwering Mail".
That way one would have a much cleaner layout and it would be much easier to see at once what the dialog is about.
Forward: Way too much text here. I see the point of having a direct explanation in the dialog. But this could look much friendlier using the following solution:
There should be a Textbox below the "Forward method"-Combobox. This Textbox only contains the information for the Forward-method which is currently selected (So the text changes each time a different Forward-method is selected).

Sound -> Sound Server
---------------------
As soon as more stuff is being added, a tab "Quality" might be a good idea.

Web Browsing -> User Agent
--------------------------
The Dialog suffers from the cockpit-dilemma.
All the new "Add"-checkboxes are only there for finetuning. Most of the time the useragent-strings should work
w/o the need to tune them this way. Better Solution: Remove the Customize-Group-box and simply add a Button "Customize ..." below the Text: "Current User Agent String: Mozilla/5.0 (comp.; Konq.orwhateveritis)".
After pressing the "Customize"-Button a dialog should pop up which contains all the nice
"Add"-checkboxes which have been added recently.

Move Konsole/
-----------------------------------------------
Doesn't change anything system-wide aka require root permission.
Perhaps it is out of place in KControl completely?
