> when you program with EasyPtr, it is very easy to create
drag&drop-routines
> where you do as if you'd really move the contents of a menuitem by
setting
> the
> pointer to a sprite.
I have done this in Launchpad with the Icon Move routines.

> If the contents of the menuitem is already a sprite, this is no
problem at
> all.
> Different when there is only a string.
>
> Isn't there a possibility to "make" a sprite out of the string "on
the
> fly"?
> Possibly with a background-system-colour?
> I know that there is something like blobs and patterns but I have
never
> understood how this works.
>
> I'd like that very much and think it would make drag&drop routines
much
> more attractive and clear.
The easy alternative is to make a 'text' sprite which is made into the
pointer sprite when the item to be dragged is text. This could be as
simple as a sprite which looks like the letters 'TEXT' with a black
border around it! (This is what I do in my programs).

The format of blobs and patterns are documented in pages 107-109 of
the QPTR guide. Unfortunately, I never had much success using them
with Easyptr and I don't know why.

Reading text items from the screen is not very easy as they don't
exist as objects as such on the screen, although Simon Goodwin wrote
DIY Toolkit procedures to read text from the screen on a mode 4
screen. It compares the bit patterns on the screen to the bit patterns
of text characters in the channel's text font and returns as a string
any text it thinks it has found in the area specified of the screen.

It might be possible to do something like this:

If mouse button held down
  drag a rectangle on the screen until button released
  read the area within the rectangle as a partial save area into
memory
  if mouse button held down again
    convert the top left of the area into a suitably sized patterns
and blob or sprite
    make this the current pointer for that channel
    drop it when button released again
  else
    release partial save area
    go back to normal
  end if
else
  normal actions
end if

--
Dilwyn Jones

Reply via email to