NAME
Tk::Mirror - Perl extension for a graphic user interface to up- or download local and remote directories
SYNOPSIS
# in the simplest kind and manner
use Tk::Mirror;
use Tk;
my $mw->MainWindow->new();
$mw->Mirror()->grid();
MainLoop();
# in a detailed kind
use Tk;
use Tk::Mirror;
my $mw = MainWindow->new();
my $mirror = $mw->Mirror(
-localdir => 'D:\\Homepage',
-remotedir => 'www.tiscali.de/name',
-user => 'my_ftp@username.de'
-ftpserver => 'ftp.server.de',
-pass => 'my_password',
-debug => 1, # default = 1
-delete => 'enable', # default = 'disabled'
-exclusions => ["private.txt", "secret.txt"],
-subset => [qr/(?i:HOME)(?i:DOC)?/, '.html'],
-timeout => 60,
-connection => undef, # or a connection to a ftp-server
-overwrite => 'older', # 'none', 'all', 'older', default = 'none'
)->grid();
for(keys(%{$mirror->GetChilds()}))
{
$mirror->Subwidget($_)->configure(
-font => "{Times New Roman} 14 {bold}",
);
}
for(qw/
TreeLocalDir
TreeRemoteDir
/)
{
$mirror->Subwidget($_)->configure(
-background => "#FFFFFF",
-width => 40,
-height => 20,
);
}
for(qw/
bEntryUser
EntryPass
bEntryFtpServer
bEntryLocalDir
bEntryRemoteDir
/)
{
$mirror->Subwidget($_)->configure(
-background => "#FFFFFF",
);
}
MainLoop();
DESCRIPTION
This is a graphic user interface to compare, up- or download local and remote directories.
CONSTRUCTOR and INITIALIZATION
OPTIONS
- -ftpserver the hostname of the ftp-server
- -user the username for authentification
- -pass password for authentification
- -localdir local directory selecting information from, default '.'
- -remotedir remote location selecting information from, default '/'
- -debug set it true for more information about the ftp-process, default 1
- -timeout the timeout for the ftp-serverconnection
- -delete set this to "enable" to allow the deletion of files, default "disabled"
- -connection A Net::FTP-object, you should not use that. default = undef
- -exclusions A reference to a list of strings interpreted as regular-expressios ("regex") matching to something in the pathnames, you do not want to list. default = empty list [ ]
- -subset A reference to a list of strings interpreted as regular-expressios matching to something in the local or remote pathnames, pathnames NOT matching will be ignored. You can also use a regex object [qr/TXT/i, "name", qr/MY_FILES/i, $regex] default = empty list [ ]
- -overwrite Set the behavior for up- and download. 'none', 'all', 'older' default = 'none' The option 'older' will work only correctly, when both the FTP-Server and the computer using the same time-zone.
METHODS
- (ref_hash_all_childs) Tk::MirrorObject->GetChilds (void) returns a hash of all childs used in the put-together widget, on which you can call the "configure" function.
-
KEYS VALUES 'LabelUser' => $label_user, 'bEntryUser' => $m->{bentry_user}, 'LabelFtpServer' => $label_ftpserver, 'bEntryFtpServer' => $m->{bentry_ftpserver}, 'LabelPass' => $label_pass, 'EntryPass' => $m->{entry_pass}, 'LabelLocalDir' => $label_local_dir, 'LabelRemoteDir' => $label_remote_dir, 'bEntryLocalDir' => $m->{bentry_local_dir}, 'bEntryRemoteDir' => $m->{bentry_remote_dir}, 'TreeLocalDir' => $m->{tree_local_dir}, 'TreeRemoteDir' => $m->{tree_remote_dir}, 'LabelOverwrite' => $m->{label_overwrite}, 'rButtonNone' => $m->{rbutton_none}, 'rButtonAll' => $m->{rbutton_all}, 'rButtonOlder' => $m->{rbutton_older}, 'ButtonUpload' => $m->{button_upload}, 'ButtonCompare' => $m->{button_compare}, 'ButtonDownload' => $m->{button_download},
- (ref_scalar_child) MirrorObject->Subwidget(above shown key) returns a reference of a child widget you can call the configure method
You should NOT use the following methods directly!!!
- (1|undef) Tk::MirrorObject->CompareDirectories (void) Compares the localdirectory with the remotedirectory and draws the directory trees.
- (1|undef) Tk::MirrorObject->Download (void) Download the remote directory to local hard disk, and draws the directory trees again.
- (1|undef) Tk::MirrorObject->Upload (void) Upload the local directory from hard disk to the remote FTP-location, and draws the directory trees again.
- (1|undef) Tk::MirrorObject->SetParams (void) Hands over the parameter, entered in the graphic user interface, to the Net::Download- and Net::Upload-Object.
- (1) Tk::MirrorObject->StoreParams (void) Stores the values, entered in the graphic user intervace.
- (1) Tk::MirrorObject->UpdateAccess (attribute, browseentry, value) Called by the BrowseEntry-Widget to update other widgets.
- (1) Tk::MirrorObject->InsertLocalTree (void) Insert the local directory-tree after a call to the Compare() method.
- (1) Tk::MirrorObject->InsertRemoteTree (void) Insert the remote directory-tree after a call to the Compare() method.
- (1) Tk::MirrorObject->InsertStoredValues (void) Insert the stored parameters in the BrowseEntry-Widgets.
- (1) Tk::MirrorObject->InsertPaths (tree-widget, ref_array_paths) Takes a tree-widget and a array-reference of pathnames to insert them in the directory tree.
- (1) Tk::MirrorObject->DeletePaths (tree-widget, ref_array_paths) Takes a tree-widget and a array-reference of pathnames to delete them from the directory tree.
- (1) Tk::MirrorObject->InsertProperties (tree-widget, ref_array_paths, property) Takes a tree-widget, a array-reference of pathnames and a string. The string will be added to all pathnames.
- (1) Tk::MirrorObject->DeleteProperties (tree-widget, ref_array_pahts) Takes a tree-widget and a array-reference of pathnames. All strings, added to the pathnames, will be deleted.
- (1) Tk::MirrorObject->InsertRemoteModifiedTimes (ref_array_remote_files) Takes a array-reference of remote files. The last- and current modified-times from the remote files, will be added.
- (1) Tk::MirrorObject->InsertLocalModifiedTimes (ref_array_local_files) Takes a array-reference of local files. The last- and current modified-times from the local files, will be added.
EXPORT
None by default.
SEE ALSO
Tk
Net::MirrorDir
Net::UploadMirror
Net::DownloadMirror
http://freenet-homepage.de/torstenknorr/index.html
BUGS
Maybe you'll find some. Let me know.
REPORTING BUGS
When reporting bugs/problems please include as much information as possible.
AUTHOR
Torsten Knorr, <create-soft@tiscali.de>
COPYRIGHT AND LICENSE
Copyright (C) 2006 - 2008 by Torsten Knorr
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.9.2 or, at your option, any later version of Perl 5 you may have available.
8 POD Errors
The following errors were encountered while parsing the POD:
- Around line 871:
'=item' outside of any '=over'
- Around line 873:
You forgot a '=back' before '=head2'
- Around line 875:
'=item' outside of any '=over'
- Around line 920:
You forgot a '=back' before '=head2'
- Around line 922:
'=item' outside of any '=over'
- Around line 951:
You forgot a '=back' before '=head2'
- Around line 953:
'=item' outside of any '=over'
- Around line 1008:
You forgot a '=back' before '=head2'