Oh, and I should mention that I tried it using the $widget->SelectionOption() methods as well:
#!/usr/bin/perl use warnings; use strict; use Tk; my $mw = MainWindow->new(); $mw->SelectionHandle( -selection => 'CLIPBOARD', sub { return 'clip' } + ); $mw->SelectionOwn( -selection => 'CLIPBOARD' );
It gives the same error (in xclipboard). :-( Whereas the following works just fine:
#!/usr/bin/perl use warnings; use strict; use Tk; my $mw = MainWindow->new(); $mw->SelectionHandle( -selection => 'PRIMARY', sub { return 'clip' } ) +; $mw->SelectionOwn( -selection => 'PRIMARY' );
Update: Hrm. Upon further testing, I find that the 'PRIMARY' selection was not actually working between applications. It owns the selection ok (ie, whatever was selected before, is no longer), and I can insert the selection properly within my own application but it does not show up in other applications.
Upon further further testing, I find that it all works just fine if I have a MainLoop in my program. Now all I have to do is find a way to get it to execute a single loop and then exit. I thought there was an easy way to do that but I cannot seem to find it. I can always resort to some chicanery involving $mw->after() ...
Does anyone know a function that will execute a single Perl/Tk event loop, and then return?
bbfu
Seasons don't fear The Reaper.
Nor do the wind, the sun, and the rain.
We can be like they are.
In reply to (bbfu) (neither $widget-SelectionHandle()) Re: Tk::Clipboard and the X Windows Clipboard
by bbfu
in thread Tk::Clipboard and the X Windows Clipboard
by bbfu
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |