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

List:       kde-devel
Subject:    Re: RFC: new KPanel application menu
From:       Frugal <frugal () fysh ! org>
Date:       1999-07-13 9:09:59
[Download RAW message or body]

Pietro Iglio wrote:
> 
> I'm thinking about an alternative way to generate the application menu in
> kpanel. The idea is to unify the global and personal menus and to allow
> full user customization.
> 
> Here are the requirements:
> 
> - there is a single application menu (no personal/global);
> 
> - the user can completely customize his/her menu without any extra privilege;
>   by customizing I mean: it is possible to change item properties (icon,
>   name, etc.), move an item, delete an item, add a new item, create/remove
>   folders;
> 
> - privileged users (= user with write access in $KDEDIR/share/applnk) can
>   publish items; published items will be visible in all users menu;

Wouldn't it be far easier to keep the two area (global/personal) to save
replicating all of the files. A directory containing 200 global files on
a system with 100 users will generate 20,000 extra files which are not
required. I feel that 99% of the time the user will not want or need to
change the settings.

I feel that we should read from two places, but only write to one.

The read phase could be done in one of three ways:

1 - Read all of the global entries. Then read in the personal entries
overwriting the corresponding global entry

2 - Read in the personal entries first, and then the global entries.
When reading in the global entries, dot not read in any entry for which
we have read in a corresponding Personal entry.


Then let the user change the settings to their hearts content. When the
properties are written back always write them to the personal directory.




e.g..
Global: Utils/bar
        Utils/foo
Personal: Utils/fred
          Utils/wilma

Menu: Utils/bar
      Utils/foo
      Utils/fred
      Utils/wilma

When the user edits the properties of Utils/bar they will save it to
their own directory, so they will get:

Global: Utils/bar
        Utils/foo
Personal: Utils/bar
          Utils/fred
          Utils/wilma

If you really want to keep a track of changes to the global directory
you could try this: When reading in the entries if you get an entry
which is in both the personal and global directories and the global copy
is newer than the personal copy you ask the user to 'use global', 'use
personal', or 'merge'. 'Use global' will delete the personal settings.
'Use Personal' will just keep the personal settings as they are. 'Merge'
will try to do some intelligent move (note I do not think that this is
really possible, I just wanted to put in in here for completeness).

-- 
Frugal                       + The two secrets to success:
                             +   1- Don't tell anyone everything.
frugal@fysh.org              +
frugal@lspace.org            +                                      -13

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

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