Provided by: libui-dialog-perl_1.09-1_all bug

NAME

       UI::Dialog::Backend::Nautilus - wrapper around the data provided by the nautilus(1).

SYNOPSIS

        use UI::Dialog::Backend::Nautilus;
        my $nautilus = new UI::Dialog::Backend::Nautilus ();
        my @paths = $nautilus->paths();

ABSTRACT

       UI::Dialog::Backend::Nautilus is simply an OOPerl wrapper around the data provided by the
       nautilus(1) file manager's scripts feature.

DESCRIPTION

       nautilus(1) is a GNOME file manager that has a "right-click" menu for user made scripts
       (found in the user's ~/.gnome2/nautilus-scripts/ directory). This is an OOPerl interface
       to the environment variables provided to the scripts during runtime by nautilus. When you
       use any of the UI::Dialog meta classes (UI::Dialog, UI::Dialog::GNOME, etc.) access to
       this backend is provided via the $d->nautilus method. ie: replace $nautilus with
       $d->nautilus in the synopsis example (provided you made $d with something like my $d = new
       UI::Dialog...). Also, UI::Dialog and friends only load this module when you first use the
       $d->nautilus method (this may silently fail, but you can test by ref() for success).

EXPORT

        None

INHERITS

        None

CONSTRUCTOR

   new( @options )
       EXAMPLE
            my $nautilus = new UI::Dialog::Backend::Nautilus ();

       DESCRIPTION
                 This is the Class Constructor method. It accepts a list of key => value pairs
                 and uses them as the defaults when interacting with the various widgets.

       RETURNS
                 A blessed object reference of the UI::Dialog::Backend::Nautilus class.

METHODS

   path( )
       EXAMPLE
            my $path = $nautilus->path();

       DESCRIPTION
                 This method examines the NAUTILUS_SCRIPT_CURRENT_URI string uri unescapes and
                 strips it of any prefixing protocol indicators (file://) then returns the
                 modified string.

       RETURNS
            a SCALAR.

   paths( )
       EXAMPLE
            my @paths = $nautilus->paths();

       DESCRIPTION
                 This method splits the NAUTILUS_SCRIPT_SELECTED_FILE_PATHS multiline string and
                 returns the ARRAY of selections in the order provided by nautilus.

       RETURNS
            an ARRAY.

   uri( )
       EXAMPLE
            my $uri = $nautilus->uri();

       DESCRIPTION
                 This simply returns the NAUTILUS_SCRIPT_CURRENT_URI string.

       RETURNS
            a SCALAR.

   uris( )
       EXAMPLE
            my @uris = $nautilus->uris();

       DESCRIPTION
                 This method splits the NAUTILUS_SCRIPT_SELECTED_URIS multiline string and
                 returns the ARRAY of selections in the order provided by nautilus. This does not
                 uri escape or unescape the string.

       RETURNS
            an ARRAY.

   geometry( )
       EXAMPLE
            my ($h,$w,$x,$y) = $nautilus->geometry();

       DESCRIPTION
                 This method splits the NAUTILUS_SCRIPT_WINDOW_GEOMETRY string and returns and
                 ARRAY of the geometry details provided by nautilus. The array returned contains
                 the following (in order):

                  height
                  width
                  X-coordinate
                  Y-coordinate

       RETURNS
            an ARRAY.

   uri_unescape( )
       EXAMPLE
            my $path = $nautilus->uri_unescape( "file:///path/to/somewhere" );
            my @paths = $nautilus->uri_unescape( "file:///path/to/somewhere",
                                                 "file:///yet/another/path" );

       DESCRIPTION
                 This is the method used to unescape the NAUTILUS_SCRIPT_CURRENT_URI in the
                 path() method. This method is derived from the URI::Escape module which is not
                 included in the Perl core modules yet is vitally necessary for the path() method
                 to function in a useful manor.

       RETURNS
                 an ARRAY or a SCALAR depending on the calling arguments.

SEE ALSO

       PERLDOC
          UI::Dialog
          UI::Dialog::Backend

       MAN FILES
          nautilus(1)

BUGS

        Please email the author with any bug reports. Include the name of the
        module in the subject line.

AUTHOR

        Kevin C. Krinke, E<lt>kevin@krinke.caE<gt>

COPYRIGHT AND LICENSE

        Copyright (C) 2013  Kevin C. Krinke <kevin@krinke.ca>

        This library is free software; you can redistribute it and/or
        modify it under the terms of the GNU Lesser General Public
        License as published by the Free Software Foundation; either
        version 2.1 of the License, or (at your option) any later version.

        This library is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
        Lesser General Public License for more details.

        You should have received a copy of the GNU Lesser General Public
        License along with this library; if not, write to the Free Software
        Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA