=head1 NAME

Gtk2::UniqueBackend - Backend abstraction

=cut

=for position DESCRIPTION

=head1 DESCRIPTION

Gkt2::UniqueBackend is the base, abstract class implemented by the different IPC
mechanisms used by Gtk2::Unique. Each Gtk2::UniqueApp instance creates a
Gkt2::UniqueBackend to request the name or to send messages.

=cut



=head1 HIERARCHY

  Glib::Object
  +----Gtk2::UniqueBackend



=cut

=for object Gtk2::UniqueBackend - Backend abstraction
=cut




=head1 METHODS

=head2 uniquebackend = Gtk2::UniqueBackend-E<gt>B<create> 


Creates a Gkt2::UniqueBackend using the default backend defined at compile time.
You can override the default backend by setting the UNIQUE_BACKEND environment
variable with the name of the desired backend.


=head2 string = $backend-E<gt>B<get_name> 

=head2 $backend-E<gt>B<set_name> ($name)

=over

=item * $name (string) 

=back

=head2 boolean = $backend-E<gt>B<request_name> 


Requests the name set using C<Gtk2::set_name()> and this backend.


=head2 screen = $backend-E<gt>B<get_screen> 

=head2 $backend-E<gt>B<set_screen> ($screen)

=over

=item * $screen (Gtk2::Gdk::Screen) 

=back

=head2 uniqueresponse = $backend-E<gt>B<send_message> ($command_id, $message_data, $time_)

=over

=item * $command_id (integer) 

=item * $message_data (Gtk2::UniqueMessageData or undef) 

=item * $time_ (integer) 

=back


Sends command_id, and optionally message_data, to a running instance using
backend.


=head2 string = $backend-E<gt>B<get_startup_id> 

=head2 $backend-E<gt>B<set_startup_id> ($startup_id)

=over

=item * $startup_id (string) 

=back

=head2 integer = $backend-E<gt>B<get_workspace> 


Retrieves the current workspace.




=cut


=head1 ENUMS AND FLAGS

=head2 enum Gtk2::UniqueResponse

=over

=item * 'invalid' / 'UNIQUE_RESPONSE_INVALID'

=item * 'ok' / 'UNIQUE_RESPONSE_OK'

=item * 'cancel' / 'UNIQUE_RESPONSE_CANCEL'

=item * 'fail' / 'UNIQUE_RESPONSE_FAIL'

=item * 'passthrough' / 'UNIQUE_RESPONSE_PASSTHROUGH'

=back




=cut


=head1 SEE ALSO

L<Gtk2::Unique>, L<Glib::Object>


=cut


=head1 COPYRIGHT

Copyright (C) 2009-2010 by Emmanuel Rodriguez


=cut

