1Config::Model::TkUI(3)User Contributed Perl DocumentationConfig::Model::TkUI(3)
2
3
4
6 Config::Model::TkUI - Tk GUI to edit config data through Config::Model
7
9 use Config::Model::TkUI;
10
11 # init trace
12 Log::Log4perl->easy_init($WARN);
13
14 # create configuration instance
15 my $model = Config::Model -> new ;
16 my $inst = $model->instance (root_class_name => 'a_config_class',
17 instance_name => 'test');
18 my $root = $inst -> config_root ;
19
20 # Tk part
21 my $mw = MainWindow-> new ;
22 $mw->withdraw ;
23 $mw->ConfigModelUI (-root => $root) ;
24
25 MainLoop ;
26
28 This class provides a GUI for Config::Model.
29
30 With this class, Config::Model and an actual configuration model (like
31 Config::Model::Xorg), you get a tool to edit configuration files (e.g.
32 "/etc/X11/xorg.conf").
33
34 Be default, only items with "beginner" experience are shown. You can
35 change the "experience" level in "Options -> experience" menu.
36
38 Left side tree
39 · Click on '+' and '-' boxes to open or close content
40
41 · Left-click on item to open a viewer widget.
42
43 · Right-click on any item to open an editor widget
44
45 · Use Ctrl-C to copy configuration data in an internal buffer
46
47 · Use Ctrl-V to copy configuration data from the internal buffer to
48 the configuration tree. Beware, there's no "undo" operation.
49
50 · Pasting cut buffer into a leaf element will store the content of
51 the buffer into the element. This should be used with "string" or
52 "uniline" elements.
53
54 Editor widget
55 The right side of the widget is either a viewer or an editor. When
56 clicking on store in the editor, the new data is stored in the tree
57 represented on the left side of TkUI. The new data will be stored in
58 the configuration file only when "File-"save> menu is invoked.
59
60 Wizard
61 A wizard can be launched either with "File -> Wizard" menu entry or
62 with "Run Wizard" button.
63
64 The wizard will scan the configuration tree and stop on all items
65 flagged as important in the model. It will also stop on all erroneous
66 items (mostly missing mandatory values).
67
69 - Document widget options. (-root_model and -store_sub, -quit) - add
70 better navigation - add tabular view ? - improve look and feel - add
71 search element or search value - expand the whole tree at once - add
72 plug-in mechanism so that dedicated widget
73 can be used for some config Class (Could be handy for
74 Xorg::ServerLayout)
75
77 Dominique Dumont, (ddumont at cpan dot org)
78
80 Copyright (c) 2008-2010 Dominique Dumont.
81
82 This file is part of Config-Model.
83
84 Config-Model is free software; you can redistribute it and/or
85 modify it under the terms of the GNU Lesser Public License as
86 published by the Free Software Foundation; either version 2.1 of
87 the License, or (at your option) any later version.
88
89 Config-Model is distributed in the hope that it will be useful,
90 but WITHOUT ANY WARRANTY; without even the implied warranty of
91 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
92 Lesser Public License for more details.
93
94 You should have received a copy of the GNU Lesser Public License
95 along with Config-Model; if not, write to the Free Software
96 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
97 02110-1301 USA
98
100 This project needs feedback from its users. Please send your feedbacks,
101 comments and ideas to :
102
103 config-mode-users at lists.sourceforge.net
104
105 This projects also needs help to improve its user interfaces:
106
107 · Look and feel of Perl/Tk interface can be improved
108
109 · A nicer logo (maybe a penguin with a wrench...) would be welcomed
110
111 · Config::Model could use a web interface
112
113 · May be also an interface based on Gtk or Wx for better integration
114 in Desktop
115
116 If you want to help, please send a mail to:
117
118 config-mode-devel at lists.sourceforge.net
119
121 · Config::Model
122
123 · http://config-model.wiki.sourceforge.net/
124
125 · Config::Model mailing lists on
126 http://sourceforge.net/mail/?group_id=155650
127
128
129
130perl v5.12.1 2010-06-24 Config::Model::TkUI(3)