1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
|
package Demeter::UI::Atoms::Config;
=for Copyright
.
Copyright (c) 2006-2019 Bruce Ravel (http://bruceravel.github.io/home).
All rights reserved.
.
This file is free software; you can redistribute it and/or
modify it under the same terms as Perl itself. See The Perl
Artistic License.
.
This program 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.
=cut
use strict;
use warnings;
use Carp;
use Xray::Absorption;
use Wx qw( :everything );
use base 'Demeter::UI::Wx::Config';
sub new {
my ($class, $page, $parent) = @_;
my $top = $page->GetParent->GetParent; ## (really!)
my $self = $class->SUPER::new($page, \&target, $top);
$self->{parent} = $parent;
$self->{statusbar} = $parent->{statusbar};
$self->populate(['atoms', 'feff', 'pathfinder']);
$self->{params}->Expand($self->{params}->GetRootItem);
return $self;
};
sub target {
my ($self, $parent, $param, $value, $save) = @_;
SWITCH: {
($param eq 'plotwith') and do {
Demeter->plot_with($value);
last SWITCH;
};
};
($save)
? $self->{parent}->status("Now using $value for $parent-->$param and an ini file was saved")
: $self->{parent}->status("Now using $value for $parent-->$param");
};
1;
=head1 NAME
Demeter::UI::Atoms::Config - Atoms' configuration utility
=head1 VERSION
This documentation refers to Demeter version 0.9.26.
=head1 DESCRIPTION
This class is used to populate the Configuration tab in the Wx version of Atoms.
=head1 AUTHOR
Bruce Ravel, L<http://bruceravel.github.io/home>
L<http://bruceravel.github.io/demeter/>
=head1 LICENCE AND COPYRIGHT
Copyright (c) 2006-2019 Bruce Ravel (L<http://bruceravel.github.io/home>). All rights reserved.
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself. See L<perlgpl>.
This program 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.
=cut
|