r55054 - in /trunk/libconfig-model-tkui-perl: ./ debian/ lib/Config/Model/ lib/Config/Model/Tk/ t/
gregoa at users.alioth.debian.org
gregoa at users.alioth.debian.org
Mon Mar 29 19:56:58 UTC 2010
Author: gregoa
Date: Mon Mar 29 19:56:53 2010
New Revision: 55054
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=55054
Log:
New upstream release.
Modified:
trunk/libconfig-model-tkui-perl/Build.PL
trunk/libconfig-model-tkui-perl/ChangeLog
trunk/libconfig-model-tkui-perl/META.yml
trunk/libconfig-model-tkui-perl/README
trunk/libconfig-model-tkui-perl/debian/changelog
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/AnyViewer.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListEditor.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListViewer.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashEditor.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashViewer.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafEditor.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafViewer.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListEditor.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListViewer.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeEditor.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeViewer.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/Wizard.pm
trunk/libconfig-model-tkui-perl/lib/Config/Model/TkUI.pm
trunk/libconfig-model-tkui-perl/t/big_model.pm
trunk/libconfig-model-tkui-perl/t/config-model-ui.t
trunk/libconfig-model-tkui-perl/t/config-model-wizard.t
Modified: trunk/libconfig-model-tkui-perl/Build.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/Build.PL?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/Build.PL (original)
+++ trunk/libconfig-model-tkui-perl/Build.PL Mon Mar 29 19:56:53 2010
@@ -1,8 +1,4 @@
-# $Author: ddumont $
-# $Date: 2010-02-26 14:08:10 +0100 (Fri, 26 Feb 2010) $
-# $Revision: 1098 $
-
-# Copyright (c) 2007-2009 Dominique Dumont.
+# Copyright (c) 2007-2010 Dominique Dumont.
#
# This file is part of Config-Model-TkUI.
#
@@ -32,12 +28,13 @@
dist_abstract => "Tk GUI to edit config data through Config::Model",
dist_author => "Dominique Dumont (ddumont at cpan dot org)",
requires => {
- 'Config::Model' => '0.643',
+ 'Config::Model' => '1.001',
'Exception::Class' => 0,
'Tk' => 0,
'Tk::DirSelect' => 0,
'Tk::Tree' => 0,
'Log::Log4perl' => '1.11', # for TRACE log level
+ 'Pod::POM' => 0,
},
recommends => {
'Tk::ObjScanner' => 0, # for TkUI debug menu
Modified: trunk/libconfig-model-tkui-perl/ChangeLog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/ChangeLog?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/ChangeLog (original)
+++ trunk/libconfig-model-tkui-perl/ChangeLog Mon Mar 29 19:56:53 2010
@@ -1,3 +1,37 @@
+2010-03-29 Dominique Dumont <dominique.dumont at hp.com> 1.306
+
+ * Build.PL: Depends on Config::Model 1.001
+
+ * lib/Config/Model/Tk/*.pm: Put back VERSION number and bumped
+ them all to 1.305 to make CPAN indexer happy
+
+2010-03-27 Dominique Dumont <domi.dumont at free.fr> 1.305
+
+ * Build.PL: depends on Pod::POM
+
+ * lib/Config/Model/TkUI.pm (Populate): bound Ctrl-C and Ctrl-V to
+ copy and paste in configuration tree widget.
+ (Populate): use Pod::POM to display help from pod documentation
+
+2010-03-22 Dominique Dumont <domi.dumont at free.fr>
+
+ * lib/Config/Model/Tk/Wizard.pm: Force tree to show item to edit
+ when displaying the wizard page for the item.
+
+2010-03-16 Dominique Dumont <dominique.dumont at hp.com>
+
+ * lib/Config/Model/TkUI.pm (on_cut_buffer_dump): When button-2 is
+ pressed above a lead, store cut buffer content in the leaf. When
+ pressed above a hash, creates a new hash key for each line in the
+ cut buffer.
+
+ * lib/Config/Model/Tk/AnyViewer.pm (add_info_frame): display
+ config parameter location in the tree on the top of all editor and
+ viewer widgets. This will make the wizard easier to use.
+
+ * lib/Config/Model/Tk/NodeEditor.pm (fill_pane): Stored entered
+ data when widget looses keyboard focus
+
2010-03-12 Dominique Dumont <dominique.dumont at hp.com> 1.304
* lib/Config/Model/TkUI.pm (disp_hash): Fix bug that messed tk
Modified: trunk/libconfig-model-tkui-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/META.yml?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/META.yml (original)
+++ trunk/libconfig-model-tkui-perl/META.yml Mon Mar 29 19:56:53 2010
@@ -13,51 +13,53 @@
provides:
Config::Model::Tk::AnyViewer:
file: lib/Config/Model/Tk/AnyViewer.pm
- version: 1.1061
+ version: 1.305
Config::Model::Tk::CheckListEditor:
file: lib/Config/Model/Tk/CheckListEditor.pm
- version: 1.1009
+ version: 1.305
Config::Model::Tk::CheckListViewer:
file: lib/Config/Model/Tk/CheckListViewer.pm
- version: 1.0910
+ version: 1.305
Config::Model::Tk::HashEditor:
file: lib/Config/Model/Tk/HashEditor.pm
- version: 1.1050
+ version: 1.305
Config::Model::Tk::HashViewer:
file: lib/Config/Model/Tk/HashViewer.pm
- version: 1.1086
+ version: 1.305
Config::Model::Tk::LeafEditor:
file: lib/Config/Model/Tk/LeafEditor.pm
- version: 1.1061
+ version: 1.305
Config::Model::Tk::LeafViewer:
file: lib/Config/Model/Tk/LeafViewer.pm
- version: 1.1061
+ version: 1.305
Config::Model::Tk::ListEditor:
file: lib/Config/Model/Tk/ListEditor.pm
- version: 1.1009
+ version: 1.305
Config::Model::Tk::ListViewer:
file: lib/Config/Model/Tk/ListViewer.pm
- version: 1.1086
+ version: 1.305
Config::Model::Tk::NodeEditor:
file: lib/Config/Model/Tk/NodeEditor.pm
- version: 1.1013
+ version: 1.305
Config::Model::Tk::NodeViewer:
file: lib/Config/Model/Tk/NodeViewer.pm
- version: 1.1050
+ version: 1.305
Config::Model::Tk::Wizard:
file: lib/Config/Model/Tk/Wizard.pm
+ version: 1.305
Config::Model::TkUI:
file: lib/Config/Model/TkUI.pm
- version: 1.304
+ version: 1.306
recommends:
Tk::ObjScanner: 0
requires:
- Config::Model: 0.643
+ Config::Model: 1.001
Exception::Class: 0
Log::Log4perl: 1.11
+ Pod::POM: 0
Tk: 0
Tk::DirSelect: 0
Tk::Tree: 0
resources:
- license: http://opensource.org/licenses/lgpl-license.php
-version: 1.304
+ license: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt
+version: 1.306
Modified: trunk/libconfig-model-tkui-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/README?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/README (original)
+++ trunk/libconfig-model-tkui-perl/README Mon Mar 29 19:56:53 2010
@@ -25,7 +25,7 @@
This projects also needs help to improve its user interfaces:
-- Look and fell of Perl/Tk interface can be improved
+- Look and feel of Perl/Tk interface can be improved
- A nice logo (a penguin with a wrench maybe ) would be welcomed
- Config::Model could use a web interface
- May be also an interface based on Gtk or Wx for better integration
@@ -40,7 +40,7 @@
Legalese:
- Copyright (c) 2008-2009 Dominique Dumont.
+ Copyright (c) 2008-2010 Dominique Dumont.
This file is part of Config-Model-TkUI.
Modified: trunk/libconfig-model-tkui-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/debian/changelog?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/debian/changelog (original)
+++ trunk/libconfig-model-tkui-perl/debian/changelog Mon Mar 29 19:56:53 2010
@@ -1,3 +1,9 @@
+libconfig-model-tkui-perl (1.306-1) UNRELEASED; urgency=low
+
+ * New upstream release.
+
+ -- gregor herrmann <gregoa at debian.org> Mon, 29 Mar 2010 21:55:10 +0200
+
libconfig-model-tkui-perl (1.304-1) unstable; urgency=low
* New upstream release
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/AnyViewer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/AnyViewer.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/AnyViewer.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/AnyViewer.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2010-01-29 14:22:45 +0100 (Fri, 29 Jan 2010) $
-# $Revision: 1061 $
# Copyright (c) 2008-2009 Dominique Dumont.
#
@@ -23,6 +20,7 @@
package Config::Model::Tk::AnyViewer ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
@@ -30,9 +28,8 @@
use Tk::ROText;
use Config::Model::TkUI ;
-use vars qw/$VERSION $icon_path/ ;
+use vars qw/$icon_path/ ;
-$VERSION = sprintf "1.%04d", q$Revision: 1061 $ =~ /(\d+)/;
my @fbe1 = qw/-fill both -expand 1/ ;
my @fxe1 = qw/-fill x -expand 1/ ;
@@ -59,8 +56,10 @@
my $class = defined $parent ? $item->parent->config_class_name
: $item->config_class_name ;
- my $label = "$type: Class $class";
- $label .= "- Element $elt_name" if defined $parent ;
+ $cw->{config_class_name} = $class ;
+
+ my $label = "$type: ";
+ $label .= $item->location || "Class $class" ;
my $f = $cw -> Frame -> pack (@fx);
$f -> Label (-image => $img{lc($type)} , -anchor => 'w')
@@ -77,7 +76,7 @@
sub add_info_frame {
my $cw = shift;
- my @items = @_;
+ my @items = ( "Config class: ". $cw->{config_class_name}, @_ );
my $frame = $cw->Frame()->pack(@fx) ;
$frame -> Label(-text => 'Info', -anchor => 'w' ) ->pack(qw/-fill x/) ;
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListEditor.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListEditor.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListEditor.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListEditor.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2009-07-31 16:37:39 +0200 (Fri, 31 Jul 2009) $
-# $Revision: 1009 $
# Copyright (c) 2008 Dominique Dumont.
#
@@ -23,16 +20,16 @@
package Config::Model::Tk::CheckListEditor ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use base qw/ Tk::Frame Config::Model::Tk::CheckListViewer/;
-use vars qw/$VERSION $icon_path/ ;
+use vars qw/$icon_path/ ;
use subs qw/menu_struct/ ;
use Tk::NoteBook;
-$VERSION = sprintf "1.%04d", q$Revision: 1009 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelCheckListEditor';
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListViewer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListViewer.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListViewer.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/CheckListViewer.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2009-03-31 13:41:21 +0200 (Tue, 31 Mar 2009) $
-# $Revision: 910 $
# Copyright (c) 2008-2009 Dominique Dumont.
#
@@ -23,15 +20,14 @@
package Config::Model::Tk::CheckListViewer ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use base qw/Tk::Frame Config::Model::Tk::AnyViewer/;
-use vars qw/$VERSION/ ;
use subs qw/menu_struct/ ;
use Tk::ROText ;
-$VERSION = sprintf "1.%04d", q$Revision: 910 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelCheckListViewer';
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashEditor.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashEditor.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashEditor.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashEditor.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2010-01-21 14:20:47 +0100 (Thu, 21 Jan 2010) $
-# $Revision: 1050 $
# Copyright (c) 2008-2010 Dominique Dumont.
#
@@ -23,18 +20,18 @@
package Config::Model::Tk::HashEditor ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use Log::Log4perl ;
use base qw/Config::Model::Tk::HashViewer/;
-use vars qw/$VERSION $icon_path/ ;
+use vars qw/$icon_path/ ;
use subs qw/menu_struct/ ;
use Tk::Dialog ;
use Tk::Photo ;
use Tk::Balloon ;
-$VERSION = sprintf "1.%04d", q$Revision: 1050 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelHashEditor';
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashViewer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashViewer.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashViewer.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/HashViewer.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2010-02-18 18:29:48 +0100 (Thu, 18 Feb 2010) $
-# $Revision: 1086 $
# Copyright (c) 2008 Dominique Dumont.
#
@@ -23,14 +20,13 @@
package Config::Model::Tk::HashViewer ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use base qw/Tk::Frame Config::Model::Tk::AnyViewer/;
-use vars qw/$VERSION/ ;
use subs qw/menu_struct/ ;
-$VERSION = sprintf "1.%04d", q$Revision: 1086 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelHashViewer';
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafEditor.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafEditor.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafEditor.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafEditor.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2010-01-29 14:22:45 +0100 (Fri, 29 Jan 2010) $
-# $Revision: 1061 $
# Copyright (c) 2008-2009 Dominique Dumont.
#
@@ -23,14 +20,13 @@
package Config::Model::Tk::LeafEditor ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use Log::Log4perl;
use base qw/Config::Model::Tk::LeafViewer/;
-use vars qw/$VERSION/ ;
-
-$VERSION = sprintf "1.%04d", q$Revision: 1061 $ =~ /(\d+)/;
+
Construct Tk::Widget 'ConfigModelLeafEditor';
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafViewer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafViewer.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafViewer.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/LeafViewer.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2010-01-29 14:22:45 +0100 (Fri, 29 Jan 2010) $
-# $Revision: 1061 $
# Copyright (c) 2008 Dominique Dumont.
#
@@ -23,14 +20,12 @@
package Config::Model::Tk::LeafViewer ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use Log::Log4perl ;
use base qw/Tk::Frame Config::Model::Tk::AnyViewer/;
-use vars qw/$VERSION/ ;
-
-$VERSION = sprintf "1.%04d", q$Revision: 1061 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelLeafViewer';
@@ -92,7 +87,7 @@
$cw->add_info() ;
$cw->add_summary_and_description($leaf) ;
- $cw->add_help(value => $leaf->get_help($cw->{value})) ;
+ $cw->add_help('value help' => $leaf->get_help($cw->{value})) ;
$cw->add_editor_button($path) ;
$cw->ConfigSpecs(
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListEditor.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListEditor.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListEditor.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListEditor.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2009-07-31 16:37:39 +0200 (Fri, 31 Jul 2009) $
-# $Revision: 1009 $
# Copyright (c) 2008 Dominique Dumont.
#
@@ -23,16 +20,15 @@
package Config::Model::Tk::ListEditor ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use Log::Log4perl ;
use base qw/Config::Model::Tk::ListViewer/;
-use vars qw/$VERSION/ ;
use subs qw/menu_struct/ ;
use Tk::Dialog ;
-$VERSION = sprintf "1.%04d", q$Revision: 1009 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelListEditor';
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListViewer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListViewer.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListViewer.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/ListViewer.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2010-02-18 18:29:48 +0100 (Thu, 18 Feb 2010) $
-# $Revision: 1086 $
# Copyright (c) 2008 Dominique Dumont.
#
@@ -23,14 +20,13 @@
package Config::Model::Tk::ListViewer ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use base qw/Tk::Frame Config::Model::Tk::AnyViewer/;
-use vars qw/$VERSION/ ;
use subs qw/menu_struct/ ;
-$VERSION = sprintf "1.%04d", q$Revision: 1086 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelListViewer';
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeEditor.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeEditor.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeEditor.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeEditor.pm Mon Mar 29 19:56:53 2010
@@ -1,8 +1,5 @@
-# $Author: ddumont $
-# $Date: 2009-09-03 14:05:31 +0200 (Thu, 03 Sep 2009) $
-# $Revision: 1013 $
-# Copyright (c) 2009 Dominique Dumont.
+# Copyright (c) 2009-2010 Dominique Dumont.
#
# This file is part of Config-Model-TkUi.
#
@@ -23,6 +20,7 @@
package Config::Model::Tk::NodeEditor ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
@@ -31,15 +29,14 @@
use Text::Wrap;
use base qw/Tk::Frame Config::Model::Tk::AnyViewer/;
-use vars qw/$VERSION/ ;
use subs qw/menu_struct/ ;
-$VERSION = sprintf "1.%04d", q$Revision: 1013 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelNodeEditor';
my @fbe1 = qw/-fill both -expand 1/ ;
my @fxe1 = qw/-fill x -expand 1/ ;
+my @fx = qw/-fill x -expand 0/ ;
my $logger = Log::Log4perl::get_logger(__PACKAGE__);
@@ -108,7 +105,7 @@
my @after = $old_f ? ( -after => $old_f ) : () ;
my $f = $elt_pane->Frame(-relief=> 'groove', -borderwidth => 1)
- ->pack(-side =>'top', at fxe1, at after) ;
+ ->pack(-side =>'top', at fx, at after) ;
$old_f = $f ;
$cw->{elt_widgets}{$c} = $f ;
@@ -131,6 +128,7 @@
my $e = $f->Entry(-textvariable => \$v)
->pack(qw/-side left -anchor w/, at fxe1) ;
$e->bind("<Return>" => $store_sub) ;
+ $e->bind("<FocusOut>" => $store_sub) ;
next ;
}
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeViewer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeViewer.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeViewer.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/NodeViewer.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,3 @@
-# $Author: ddumont $
-# $Date: 2010-01-21 14:20:47 +0100 (Thu, 21 Jan 2010) $
-# $Revision: 1050 $
# Copyright (c) 2008-2009 Dominique Dumont.
#
@@ -23,14 +20,13 @@
package Config::Model::Tk::NodeViewer ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use base qw/Tk::Frame Config::Model::Tk::AnyViewer/;
-use vars qw/$VERSION/ ;
use subs qw/menu_struct/ ;
-$VERSION = sprintf "1.%04d", q$Revision: 1050 $ =~ /(\d+)/;
Construct Tk::Widget 'ConfigModelNodeViewer';
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/Wizard.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/Wizard.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/Wizard.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/Tk/Wizard.pm Mon Mar 29 19:56:53 2010
@@ -1,15 +1,13 @@
-# $Author: ddumont $
-# $Date: 2009-06-24 12:48:54 +0200 (Wed, 24 Jun 2009) $
-# $Revision: 987 $
package Config::Model::Tk::Wizard ;
use strict;
+our $VERSION="1.305";
use warnings ;
use Carp ;
use base qw/Tk::Toplevel/;
-use vars qw/$VERSION $icon_path/ ;
+use vars qw/$icon_path/ ;
use Log::Log4perl;
use Config::Model::Tk::LeafEditor ;
@@ -44,13 +42,14 @@
or croak "Missing $parm arg\n";
}
- foreach my $parm (qw/-from_widget -stop_on_important -store_cb/) {
+ foreach my $parm (qw/-from_widget -stop_on_important -store_cb -show_cb/) {
my $attr = $parm ;
$attr =~ s/^-//;
$cw->{$attr} = delete $args->{$parm} ;
}
$logger->info("Creating wizard widget");
+ $cw->{show_cb} ||= sub {} ;
my $title = delete $args->{'-title'}
|| "config wizard ".$cw->{root}->config_class_name ;
@@ -94,6 +93,7 @@
sub leaf_cb {
my ($cw,$scanner, $data_ref,$node,$element_name,$index, $leaf_object) = @_ ;
# cleanup existing widget contained in this frame
+ $cw->{show_cb}->($leaf_object) ;
$cw->{ed_frame}->ConfigModelLeafEditor(-item => $leaf_object,
-store_cb => $cw->{store_cb},
)->pack(@fbe1) ;
@@ -103,6 +103,7 @@
my ($cw,$scanner, $data_ref,$node,$element_name, at indexes) = @_ ;
# cleanup existing widget contained in this frame
my $obj = $node->fetch_element($element_name) ;
+ $cw->{show_cb}->($obj) ;
$cw->{ed_frame}->ConfigModelListEditor(-item => $obj,
-store_cb => $cw->{store_cb},
)->pack(@fbe1) ;
@@ -112,6 +113,7 @@
my ($cw,$scanner, $data_ref,$node,$element_name, at keys) = @_ ;
# cleanup existing widget contained in this frame
my $obj = $node->fetch_element($element_name) ;
+ $cw->{show_cb}->($obj) ;
$cw->{ed_frame}->ConfigModelHashEditor(-item => $obj,
-store_cb => $cw->{store_cb},
)->pack(@fbe1) ;
@@ -120,6 +122,7 @@
my ($cw,$scanner, $data_ref,$node,$element_name, at items) = @_ ;
# cleanup existing widget contained in this frame
my $obj = $node->fetch_element($element_name) ;
+ $cw->{show_cb}->($obj) ;
$cw->{ed_frame}->ConfigModelCheckListEditor(-item => $obj,
-store_cb => $cw->{store_cb},
)->pack(@fbe1) ;
Modified: trunk/libconfig-model-tkui-perl/lib/Config/Model/TkUI.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/lib/Config/Model/TkUI.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/lib/Config/Model/TkUI.pm (original)
+++ trunk/libconfig-model-tkui-perl/lib/Config/Model/TkUI.pm Mon Mar 29 19:56:53 2010
@@ -1,6 +1,4 @@
-# $Author: ddumont $
-# $Date: 2010-02-26 14:08:10 +0100 (Fri, 26 Feb 2010) $
-# $Revision: 1098 $
+# copyright at the end of the file in the pod section
package Config::Model::TkUI ;
@@ -9,11 +7,14 @@
use Carp ;
use base qw/Tk::Toplevel/;
-use vars qw/$VERSION $icon_path $warn_img/ ;
+use vars qw/$icon_path $warn_img/ ;
use subs qw/menu_struct/ ;
use Scalar::Util qw/weaken/;
use Log::Log4perl;
+use Pod::POM;
+use Pod::POM::View::Text ;
+
use Tk::Photo ;
use Tk::PNG ; # required for Tk::Photo to be able to load pngs
use Tk::DialogBox ;
@@ -37,8 +38,7 @@
use Config::Model::Tk::Wizard ;
-
-$VERSION = '1.304' ;
+our $VERSION = '1.306' ;
Construct Tk::Widget 'ConfigModelUI';
@@ -121,11 +121,12 @@
$cw->add_help_menu($menubar) ;
- my $edit_items = [
- # [ qw/command cut -command/, sub{ $cw->edit_cut }],
- [ qw/command copy -command/, sub{ $cw->edit_copy }],
- [ qw/command paste -command/, sub{ $cw->edit_paste }],
- ];
+ my $edit_items
+ = [
+ # [ qw/command cut -command/, sub{ $cw->edit_cut }],
+ [ command => 'copy (Ctrl-C)', '-command', sub{ $cw->edit_copy }],
+ [ command => 'paste (Ctrl-V)','-command', sub{ $cw->edit_paste }],
+ ];
$menubar->cascade( -label => 'Edit', -menuitems => $edit_items ) ;
my $exp_ref = $cw->{scanner}->get_experience_ref ;
@@ -198,6 +199,19 @@
$cw->on_select($item)} ;
$tree->bind('<Button-3>', $b3_sub) ;
+ # bind button2 to get cut buffer content and try to store cut buffer content
+ my $b2_sub = sub{my $item = $tree->nearest($tree->pointery - $tree->rooty) ;
+ $cw->on_cut_buffer_dump($item)} ;
+ $tree->bind('<Button-2>', $b2_sub) ;
+
+ $tree->bind('<Control-c>', sub{ $cw->edit_copy }) ;
+ $tree->bind('<Control-v>', sub{ $cw->edit_paste }) ;
+
+ # bind button2 to get cut buffer content and try to store cut buffer content
+ #my $key_sub = sub{my $item = $tree->nearest($tree->pointery - $tree->rooty) ;
+ #$cw->on_key_press($item)} ;
+ #$tree->bind('<KeyPress>', $key_sub) ;
+
$args->{-title} = $title;
$cw->SUPER::Populate($args) ;
@@ -220,37 +234,20 @@
}
-my $help_text = << 'EOF' ;
-
-Tree usage (left hand side of widget)
-
-* Click on '+' and '-' boxes to open or close content
-* Left-click on item to open a viewer widget.
-* Right-click on any item to open an editor widget
-
-Editor widget usage
-
-When clicking on store, the new data is stored in the tree represented
-on the left side of TkUI. The new data will be stored in the
-configuration file only when "File->save" menu is invoked.
-
-Copy'n'paste
-
-You copy and paste content from one part of the tree to
-another. Beware, there's no "undo" operation.
-
-EOF
-
-my $todo_text = << 'EOF' ;
-- add better navigation
-- add tabular view ?
-- improve look and feel
-- add search element or search value
-- expand the whole tree at once
-- add plug-in mechanism so that dedicated widget
- can be used for some config Class (Could be handy for
- Xorg::ServerLayout)
-EOF
+
+my $parser = Pod::POM->new();
+
+# parse from my documentation
+my $pom = $parser->parse_file(__FILE__)
+ || die $parser->error();
+
+my $help_text;
+my $todo_text;
+foreach my $head1 ($pom->head1()) {
+ $help_text = Pod::POM::View::Text->view_head1($head1)
+ if $head1->title eq 'USAGE';
+ $todo_text = $head1->content if $head1->title eq 'TODO';
+}
sub add_help_menu {
my ($cw,$menubar) = @_ ;
@@ -258,7 +255,7 @@
my $about_sub = sub {
$cw->Dialog(-title => 'About',
-text => "Config::Model::TkUI \n"
- ."(c) 2008-2009 Dominique Dumont \n"
+ ."(c) 2008-2010 Dominique Dumont \n"
."Licensed under LGPLv2\n"
) -> Show ;
};
@@ -272,7 +269,7 @@
my $help_sub = sub{
my $db = $cw->DialogBox( -title => 'help');
- my $text = $db -> add('ROText')->pack ;
+ my $text = $db -> add('Scrolled','ROText')->pack ;
$text ->insert('end',$help_text) ;
$db-> Show ;
};
@@ -475,6 +472,32 @@
$cw->create_element_widget('edit') ;
}
+sub on_cut_buffer_dump {
+ my ($cw,$tree_path) = @_ ;
+ $cw->update_loc_bar($tree_path) ;
+
+ # get cut buffer content, See Perl/Tk book p297
+ my $sel = eval { $cw->SelectionGet ;} ;
+
+ return if $@ ; # no selection
+
+ my $obj = $cw->{tktree}->infoData($tree_path)->[1];
+
+ if ($obj->isa('Config::Model::Value')) {
+ # if leaf store content
+ $obj->store($sel)
+ }
+ elsif ($obj->isa('Config::Model::HashId')) {
+ # if hash create keys
+ my @keys = ($sel =~ /\n/m) ? split(/\n/,$sel) : ($sel) ;
+ map{ $obj->fetch_with_id($_) } @keys ;
+ }
+ # else ignore
+
+ # display result
+ $cw->reload ;
+ $cw->create_element_widget('view') ;
+}
# replace dot in str by _|_
sub to_path { my $str = shift ; $str =~ s/\./_|_/g; return $str ;}
@@ -865,7 +888,8 @@
$cfg_elt->composite_name,
$type,
$cfg_class ,
- $cfg_elt->dump_as_data()] ;
+ $cfg_elt->dump_as_data()
+ ] ;
}
$cw->{cut_buffer} = \@res ;
@@ -923,10 +947,13 @@
my $cw = shift ;
my $tree = $cw->{tktree} ;
- my $wiz = $cw->ConfigModelWizard (
- -root => $cw->{root},
- -store_cb => sub{ $cw->force_element_display(@_)},
- ) ;
+ my $wiz = $cw->ConfigModelWizard
+ (
+ -root => $cw->{root},
+ -store_cb => sub{ $cw->force_element_display(@_)},
+ -show_cb => sub{ $cw->force_element_display(@_)},
+ ) ;
+
$wiz->start_wizard($cw->{experience}) ;
}
@@ -987,13 +1014,29 @@
Right-click on any item to open an editor widget
+=item *
+
+Use Ctrl-C to copy configuration data in an internal buffer
+
+=item *
+
+Use Ctrl-V to copy configuration data from the internal buffer to the
+configuration tree. Beware, there's no "undo" operation.
+
+=item *
+
+Pasting cut buffer into a leaf element will store the content of the
+buffer into the element. This should be used with C<string> or
+C<uniline> elements.
+
=back
=head2 Editor widget
-When clicking on store, the new data is stored in the tree represented
-on the left side of TkUI. The new data will be stored in the
-configuration file only when C<File->save> menu is invoked.
+The right side of the widget is either a viewer or an editor. When
+clicking on store in the editor, the new data is stored in the tree
+represented on the left side of TkUI. The new data will be stored in
+the configuration file only when C<File->save> menu is invoked.
=head2 Wizard
@@ -1004,9 +1047,17 @@
flagged as important in the model. It will also stop on all erroneous
items (mostly missing mandatory values).
-=head2 TODO
-
-Document widget options. (-root_model and -store_sub, -quit)
+=head1 TODO
+
+- Document widget options. (-root_model and -store_sub, -quit)
+- add better navigation
+- add tabular view ?
+- improve look and feel
+- add search element or search value
+- expand the whole tree at once
+- add plug-in mechanism so that dedicated widget
+ can be used for some config Class (Could be handy for
+ Xorg::ServerLayout)
=head1 AUTHOR
Modified: trunk/libconfig-model-tkui-perl/t/big_model.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/t/big_model.pm?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/t/big_model.pm (original)
+++ trunk/libconfig-model-tkui-perl/t/big_model.pm Mon Mar 29 19:56:53 2010
@@ -1,7 +1,4 @@
# -*- cperl -*-
-# $Author: ddumont $
-# $Date: 2009-09-15 14:00:19 +0200 (Tue, 15 Sep 2009) $
-# $Revision: 1028 $
# this file is used by test script
Modified: trunk/libconfig-model-tkui-perl/t/config-model-ui.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/t/config-model-ui.t?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/t/config-model-ui.t (original)
+++ trunk/libconfig-model-tkui-perl/t/config-model-ui.t Mon Mar 29 19:56:53 2010
@@ -1,7 +1,7 @@
# -*- cperl -*-
-# $Author: ddumont $
-# $Date: 2009-09-04 14:29:16 +0200 (Fri, 04 Sep 2009) $
-# $Revision: 1014 $
+# $Author$
+# $Date$
+# $Revision$
use warnings FATAL => qw(all);
use ExtUtils::testlib;
@@ -19,7 +19,6 @@
my ($log,$show) = (0) x 2 ;
my $trace = $arg =~ /t/ ? 1 : 0 ;
-$::verbose = 1 if $arg =~ /v/;
$::debug = 1 if $arg =~ /d/;
$log = 1 if $arg =~ /l/;
$show = 1 if $arg =~ /s|i/;
Modified: trunk/libconfig-model-tkui-perl/t/config-model-wizard.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-tkui-perl/t/config-model-wizard.t?rev=55054&op=diff
==============================================================================
--- trunk/libconfig-model-tkui-perl/t/config-model-wizard.t (original)
+++ trunk/libconfig-model-tkui-perl/t/config-model-wizard.t Mon Mar 29 19:56:53 2010
@@ -19,7 +19,6 @@
my ($log,$show) = (0) x 2 ;
my $trace = $arg =~ /t/ ? 1 : 0 ;
-$::verbose = 1 if $arg =~ /v/;
$::debug = 1 if $arg =~ /d/;
$log = 1 if $arg =~ /l/;
$show = 1 if $arg =~ /s|i/;
More information about the Pkg-perl-cvs-commits
mailing list