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

List:       kfm-devel
Subject:    Re: konqueror
From:       Dawit Alemayehu <adawit () earthlink ! net>
Date:       1999-09-05 16:49:56
[Download RAW message or body]

Greetings,

Opps.  I did not notice the original message had a reply-to set until I read
your mail, David.  So I am resending the relevant part of my reply to Simon
back here ...

On Mon, 06 Sep 1999, David Faure wrote:
> > - cut&paste . I don't have regular access to a windows system, but I
> >   recently saw the way how m$ implements cut&paste for file management,
> >   and I think we might consider implementing this, too: when you cut items
> >   from a iconview, the icons get greyed out. They do not disappear, but
> >   they grey out. When pasting then, they get (of course) deleted.
> >   What do you think about implementing this in Konqueror, too?
> Would look neat. Does cut & paste work already (without this gray-icons feature) ?
> Dawit, I suppose ?

This is actually very simple to implement except perhaps the visual feedback (
greyed out when cut ).  Ummmm ... may be that is not hard either.  In any
case, the only difference between a copy and a cut action is when the user
completes the action i.e the user clicked on or chose "paste".  At this point,
a cut action requires a "move" or a "copy + delete" where as the copy action
only requires a "copy" operation.  Hence, all that is required is a static flag
that is set to indicate the appropriate action and use this flag at when
pasting to perform the correct operation ( move for cut and copy for copy).

Here is a pseudo code for clarification.  Remember, I do not know how copy
operation works in konqueror yet ; so this is from what I have done in kfm. 

XXXX::copySelectionToClipboard()
{
...
}

XXXX::slotCopy()
{
isMarkedForMove = false;
CopySelectionToClipboard();          
}

XXXX::slotCut()
{
isMarkedForMove = true;
CopySelectionToClipboard();          
}

XXXX::slotPaste()
{
....
if ( isMarkedForMove )
{
isMarkedForMove = false;
job->move (...);
// code to clean clipboard since original location has NOW changed
}
else
job->copy (...);
}

Cheers,
Dawit A.

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

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