summaryrefslogtreecommitdiffstats
path: root/perl-install/share/theme-editor.pl
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/share/theme-editor.pl')
-rwxr-xr-xperl-install/share/theme-editor.pl164
1 files changed, 0 insertions, 164 deletions
diff --git a/perl-install/share/theme-editor.pl b/perl-install/share/theme-editor.pl
deleted file mode 100755
index 74bd760be..000000000
--- a/perl-install/share/theme-editor.pl
+++ /dev/null
@@ -1,164 +0,0 @@
-#!/usr/bin/perl -w
-
-# Theme editor
-
-# Copyright (C) 1999 damien@mandrakesoft.com
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# 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. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-
-use lib qw(/usr/lib/libDrakX);
-
-use common;
-use ugtk2 qw(:all);
-
-#- languages that can't be displayed with gtk1, so we unset translations
-#- for them until this tool is ported to gtk2
-if ($ENV{LANGUAGE} =~ /\b(ar|he|hi|ta)/) { $ENV{LANGUAGE} = "C" };
-
-
-if ("@ARGV" =~ /-h/) {
- print q(DrakX theme editor by dam's.
-
-Options :
- -f specify the input theme file. Default is themes-mdk.rc
- -o specify the output file. Default is input file.
- -h print this help.
-)
-}
-my ($file) = "@ARGV" =~ /-f (.+)/;
-my ($file2) = "@ARGV" =~ /-o (.+)/;
-$file ||= "themes-mdk.rc";
-$file2 ||= $file;
-my $window1 = new Gtk2::Window -toplevel;
-$window1->signal_connect ( delete_event => sub { Gtk2->exit(0); });
-$window1->set_title(N("Theme editor"));
-$window1->set_border_width(5);
-gtkadd($window1, my $vb = new Gtk2::VBox(0,5));
-$window1->show_all;
-$window1->realize;
-my $f;
-my $vb2;
-my $hb;
-my $style;
-my $ref = 0;
-my %color;
-my $cpt = 0;
-my $do_style;
-foreach (cat_($file)) {
- chomp;
- if(/style "(.*)"/) {
- $style = $1;
- print " -- $style \n";
- $do_style = 1;
- }
- if(/(\w+)\[(\w+)\]\s*=\s*\{\s*([0-9\.]+)\s*,\s*([0-9\.]+)\s*,\s*([0-9\.]+)\s*\}/) {
- my ($a1, $a2) = ($1, $2);
- my $style2 = $style;
- if ($do_style) {
- $cpt == 0 and gtkpack__($vb, $hb = new Gtk2::HBox(0,5));
- $cpt++;
- $cpt == 4 and $cpt = 0;
- gtkpack__($hb,
- gtkadd(gtkset_shadow_type($f = new Gtk2::Frame(" $style "), 'etched_out'),
- $vb2 = gtkset_border_width(new Gtk2::VBox(0,5),5)
- )
- );
- $do_style = 0;
- }
- my $c =ugtk2::gtkcolor($3*65535, $4*65535, $5*65535);
- $color{$style}{$1}{$2} = $c;
- my $gc = new Gtk2::Gdk::GC($window1->window);
- $gc->set_foreground($c);
- gtkpack__($vb2,
- gtkpack_(new Gtk2::HBox(0,0),
- 1, gtkpack__(new Gtk2::HBox(0,0),"$1 [$2] : "),
- 0, gtksignal_connect(gtkset_relief(my $b = new Gtk2::Button(), 'none'), clicked => sub {
- $c = change_color($c);
- $gc->set_foreground($c);
- $color{$style2}{$a1}{$a2} = $c;
- $_[0]->queue_draw;
- })
- )
- );
- $b->add(gtksignal_connect(gtksize(gtkset_size_request(new Gtk2::DrawingArea(), 60, 20), 60, 20), expose_event => sub{ $_[0]->window->draw_rectangle ($gc, 1, 0, 0, 60, 20)} ));
- }
- /\{/ and $ref++;
- if (/\}/) { $ref--; $ref == 0 and undef $style }
-}
-gtkpack__($vb,
- gtkadd(gtkset_layout(new Gtk2::HButtonBox, 'end'),
- gtksignal_connect(new Gtk2::Button(N("OK")), clicked => sub { doit(); Gtk2->main_quit() }),
- gtksignal_connect(new Gtk2::Button(N("Cancel")), clicked => sub { Gtk2->main_quit() }),
- )
- );
-
-$window1->set_position('center');
-$window1->show_all;
-Gtk2->main;
-Gtk2->exit(0);
-
-sub doit {
- system("rm -f /tmp/plop");
- foreach (cat_($file)) {
- my $output;
- chomp;
- if(/style "(.*)"/) {
- $style = $1;
- $do_style = 1;
- }
- if(/(\w+)\[(\w+)\]\s*=\s*\{\s*([0-9\.]+)\s*,\s*([0-9\.]+)\s*,\s*([0-9\.]+)\s*\}/) {
- # print " - $_ - \n" foreach ($1, $2, $3, $4, $5);
- my ($a1, $a2) = ($1, $2);
- my $c = $color{$style}{$1}{$2};
- $output = $1 . "[" . $2 . "] = { " .
- round($c->red()/65535*100)/100 . ", " . round($c->green()/65535*100)/100 . ", " . round($c->blue()/65535*100)/100 . " }";
- }
- /\{/ and $ref++;
- if (/\}/) { $ref--; $ref == 0 and undef $style }
- $output ||= $_;
- $output =~ s/ 1 / 1.0 /;
- $output =~ s/ 1, / 1.0, /;
- $output =~ s/ 1, / 1.0, /;
- system("echo '$output' >> /tmp/plop");
- }
- system("mv -f /tmp/plop $file2");
-}
-
-sub change_color {
- my ($color) = @_;
- my $window = new Gtk2::Window -toplevel;
- my $doit;
- $window->signal_connect ( delete_event => sub { Gtk2->main_quit() });
- $window->set_position('center');
- $window->set_title(N("Color configuration"));
- $window->set_border_width(5);
- gtkadd(gtkset_modal($window,1),
- gtkpack_(new Gtk2::VBox(0,5),
- 1, my $colorsel = new Gtk2::ColorSelection,
- 0, gtkadd(gtkset_layout(new Gtk2::HButtonBox, 'end'),
- gtksignal_connect(new Gtk2::Button(N("OK")), clicked => sub { $doit=1; Gtk2->main_quit() }),
- gtksignal_connect(new Gtk2::Button(N("Cancel")), clicked => sub { Gtk2->main_quit() }),
- )
- )
- );
- $colorsel->set_current_color($color);
- $window->show_all();
- Gtk2->main;
- $window->destroy();
- $doit or return $color;
- my (@color) = $colorsel->get_current_color();
- ugtk2::gtkcolor($color[0]*65535, $color[1]*65535, $color[2]*65535);
-}