summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone/mousedrake
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/standalone/mousedrake')
-rwxr-xr-xperl-install/standalone/mousedrake138
1 files changed, 0 insertions, 138 deletions
diff --git a/perl-install/standalone/mousedrake b/perl-install/standalone/mousedrake
deleted file mode 100755
index 439b24d56..000000000
--- a/perl-install/standalone/mousedrake
+++ /dev/null
@@ -1,138 +0,0 @@
-#!/usr/bin/perl
-
-use lib qw(/usr/lib/libDrakX);
-
-use common qw(:common :system);
-use interactive;
-use standalone;
-use modules;
-use detect_devices;
-use mouse;
-use c;
-
-$::isEmbedded = ($::XID, $::CCPID) = "@ARGV" =~ /--embedded (\w+) (\w+)/;
-local $_ = join '', @ARGV;
-
-/-h/ and die "usage: mousedrake [--auto] [--testing]\n";
-
-$::auto = /-auto/;
-$::testing = /-testing/;
-
-my $in = vnew interactive('su', 'mouse');
-
--r '/etc/modules.conf' and modules::mergein_conf('/etc/modules.conf');
-
-undef $::Plug;
-begin:
-my ($mouse) = mouse::detect() unless $::noauto;
-my $time_tag2;
-
-$::isEmbedded and kill USR2, $::CCPID;
-if (!$mouse || !$::auto) {
- $mouse ||= mouse::fullname2mouse("serial|Generic 2 Button Mouse");
- if ($::isEmbedded && ref($in) =~ /gtk/) {
- require my_gtk;
- my $time_tag = Gtk->timeout_add(100, sub {
- defined $::Plug && defined $::Plug->child or return 1;
- test_mouse($mouse,$::Plug->child);
- 0;
- });
- }
- my $name = $in->ask_from_treelistf('mousedrake', _("Please, choose the type of your mouse."), '|',
- sub { join '|', map { translate($_) } split '\|', $_[0] },
- [ mouse::fullnames ],
- $mouse->{type} . '|' . $mouse->{name});
- Gtk->timeout_remove($time_tag2) if $::isEmbedded && ref($in) =~ /gtk/;
- $name or $::isEmbedded ? do { kill(USR1, $::CCPID); goto begin } : $in->exit(0);
- $mouse = mouse::fullname2mouse($name);
-
- if ($mouse->{device} eq "usbmouse") {
- my ($c) = grep { $_->{driver} =~ /usb-[ou]hci/ } detect_devices::pci_probe(0) or die _("no serial_usb found\n");
- eval { modules::load($c->{driver}, "serial_usb") };
- }
-}
-$mouse->{XEMU3} = 'yes' if $mouse->{nbuttons} < 3 && (!$::noauto || $in->ask_yesorno('', _("Emulate third button?"), 1));
-
-$mouse->{device} =
- $in->ask_from_listf(_("Mouse Port"),
- _("Please choose on which serial port your mouse is connected to."),
- \&mouse::serial_port2text,
- [ mouse::serial_ports ]) || goto begin if $mouse->{type} eq 'serial';
-
-#test_mouse($mouse) if $::isEmbedded;
-mouse::write_conf($mouse);
--e "/var/lock/subsys/gpm" and system "service", "gpm", "restart";
-
-$::isEmbedded ? kill(USR1, $::CCPID) : $in->exit(0);
-goto begin;
-
-
-sub test_mouse {
- my ($mouse, $hbox) = @_;
-
- my ($width, $height, $offset) = (210, round_up(min(350, $::windowheight - 150), 6), 25);
- my ($bw, $bh) = ($width / 3, $height / 3);
-
- my $darea = new Gtk::DrawingArea;
- $darea->set_events([ 'button_press_mask', 'button_release_mask' ]); #$darea must be unrealized.
- my_gtk::gtkpack($hbox, my_gtk::gtkset_border_width(my_gtk::gtkpack(new Gtk::VBox(0,10), my_gtk::gtksize(my_gtk::gtkset_usize($darea, $width+1, $height+1), $width, $height)),10));
- my $draw_rect; $draw_rect = sub {
- my ($black, $fill, $rect) = @_;
- $draw_rect->(0, 1, $rect) if !$fill; #- blank it first
- $darea->window->draw_rectangle($black ? $darea->style->fg_gc('normal') : $darea->style->bg_gc('normal'), $fill, @$rect);
- $darea->draw($rect);
- };
- my $paintWheel = sub {
- my ($x, $y, $w, $h) = ($width / 2 - $bw / 6, $bh / 4, $bw / 3, $bh / 2);
- $mouse->{nbuttons} = max($mouse->{nbuttons}, 5); #- it means, the mouse has more than 3 buttons...
- $draw_rect->(1, 0, [ $x, $y, $w, $h ]);
-
- my $offset = 0 if 0;
- $offset += $_[0] if $_[0];
- my $step = 10;
- for (my $i = $offset % $step; $i < $h; $i += $step) {
- $draw_rect->(1, 1, [ $x, $y + $i, $w, min(2, $h - $i) ]);
- }
- };
- my $paintButton = sub {
- my ($nb, $pressed) = @_;
- my $rect = [ $bw * $nb, 0, $bw, $bh ];
- $draw_rect->(1, $pressed, $rect);
- $paintWheel->(0) if $nb == 1 && $mouse->{nbuttons} > 3;
- };
- my $draw_text = sub {
- my ($t, $y) = @_;
- my $font = $darea->style->font;
- my $w = $font->string_width($t);
- $darea->window->draw_string($font, $darea->style->fg_gc('normal'), ($width - $w) / 2, $y, $t);
- };
- my $default_time = 10;
- my $time = $default_time;
- my $expose1 = 0;
- my $expose2 = 1;
- $darea->signal_connect(button_press_event => sub {
- my $b = $_[1]{button};
- $time = $default_time;
- $b >= 4 ?
- $paintWheel->($b == 4 ? -1 : 1) :
- $paintButton->($b - 1, 1);
- $expose2 = 0;
- });
- $darea->signal_connect(button_release_event => sub {
- my $b = $_[1]{button};
- $paintButton->($b - 1, 0) if $b < 4;
- $expose2 = 1;
- });
- $darea->signal_connect(expose_event => sub { $expose = 1 });
- $time_tag2 = Gtk->timeout_add(100, sub {
- $expose && $expose2 or return 1;
- $expose = 0;
- $draw_rect->(1, 0, [ 0, 0, $width, $height]);
- $draw_text->(_("Test the mouse here."), 2 * $bh - 20);
- $draw_text->(_("To activate the mouse,"), 2 * $bh + 10) if $mouse->{XMOUSETYPE} eq 'IMPS/2';
- $draw_text->(_("MOVE YOUR WHEEL!"), 2 * $bh + 30) if $mouse->{XMOUSETYPE} eq 'IMPS/2';
- $paintButton->($_, 0) foreach 0..2;
- $expose = 0;
- 1;
- });
-}