AnyEvent-Mac-Pasteboard

 view release on metacpan or  search on metacpan

README.md  view on Meta::CPAN


    or

        # 1st 0.5 second, 2nd 0.5 too, 3rd, 1 second, ...
        # and last per 5 seconds interval.
        interval => [0.5, 0.5, 1, 2, 3, 4, 5],

    This key is optional.
    Default interval is defined by $AnyEvent::Mac::Pasteboard::DEFAULT\_INTERVAL.

        perl -MAnyEvent::Mac::Pasteboard -E 'say $AnyEvent::Mac::Pasteboard::DEFAULT_INTERVAL;'

- on\_change => CALLBACK

        on_change => sub {
           my $pb_content = shift;
           print qq(Run on_change. pasteboard content is "$pb_content"\n);
        },

    While this module observates per specified interval,
    if it detects pasteboard changing at per observation,

lib/AnyEvent/Mac/Pasteboard.pm  view on Meta::CPAN


or

 # 1st 0.5 second, 2nd 0.5 too, 3rd, 1 second, ...
 # and last per 5 seconds interval.
 interval => [0.5, 0.5, 1, 2, 3, 4, 5],

This key is optional.
Default interval is defined by $AnyEvent::Mac::Pasteboard::DEFAULT_INTERVAL.

 perl -MAnyEvent::Mac::Pasteboard -E 'say $AnyEvent::Mac::Pasteboard::DEFAULT_INTERVAL;'

=item * on_change => CALLBACK

 on_change => sub {
    my $pb_content = shift;
    print qq(Run on_change. pasteboard content is "$pb_content"\n);
 },

While this module observates per specified interval,
if it detects pasteboard changing at per observation,

t/01_construct.t  view on Meta::CPAN

use lib qw(lib);

use Test::More tests => 2;
use AnyEvent;
use AnyEvent::Mac::Pasteboard;

my $TIMEOUT_SEC = 3;

diag("wait $TIMEOUT_SEC seconds for test.");

sub say { print @_, "\n"; }

my $cv = AE::cv;

my $paste_tick1 = new_ok( 'AnyEvent::Mac::Pasteboard', [
    multibyte => 1,
    interval  => 3,
    on_change => sub {
        my $content = shift;
        #say "on_change execute";
        #say qq(content is "$content");
    },
    on_unchange => sub {
        my $content = shift;
        #say "on_unchange execute";
        #say qq(content is "$content");
    },
    on_error => sub {
        #say "on_error execute. throw process.";
        $cv->send;
    },
], "interval simple digit version");

my $paste_tick2 = new_ok( 'AnyEvent::Mac::Pasteboard', [
    multibyte => 1,
    interval  => [1,1,2,2,3,4,5],
    on_change => sub {
        my $content = shift;
        #say "on_change execute";
        #say qq(content is "$content");
    },
    on_unchange => sub {
        my $content = shift;
        #say "on_unchange execute";
        #say qq(content is "$content");
    },
    on_error => sub {
        #say "on_error execute. throw process.";
        $cv->send;
    },
], "interval arrayref that contains some digits version");

my $timeout = AE::timer $TIMEOUT_SEC, 0, sub { $cv->send(); };

$cv->recv;



( run in 0.695 second using v1.01-cache-2.11-cpan-d7a12ab2c7f )