summaryrefslogtreecommitdiff
path: root/beagle/debian-rfs/usr/share/perl5/Debconf/FrontEnd/Kde.pm
diff options
context:
space:
mode:
Diffstat (limited to 'beagle/debian-rfs/usr/share/perl5/Debconf/FrontEnd/Kde.pm')
-rw-r--r--beagle/debian-rfs/usr/share/perl5/Debconf/FrontEnd/Kde.pm212
1 files changed, 212 insertions, 0 deletions
diff --git a/beagle/debian-rfs/usr/share/perl5/Debconf/FrontEnd/Kde.pm b/beagle/debian-rfs/usr/share/perl5/Debconf/FrontEnd/Kde.pm
new file mode 100644
index 0000000..5483568
--- /dev/null
+++ b/beagle/debian-rfs/usr/share/perl5/Debconf/FrontEnd/Kde.pm
@@ -0,0 +1,212 @@
+#!/usr/bin/perl -w
+# This file was preprocessed, do not edit!
+
+
+package Debconf::FrontEnd::Kde;
+use strict;
+use utf8;
+use Debconf::Gettext;
+use Debconf::Config;
+BEGIN {
+ eval { require QtCore4 };
+ die "Unable to load QtCore -- is libqtcore4-perl installed?\n" if $@;
+ eval { require QtGui4 };
+ die "Unable to load QtGui -- is libqtgui4-perl installed?\n" if $@;
+}
+use Debconf::FrontEnd::Kde::Wizard;
+use Debconf::Log ':all';
+use base qw{Debconf::FrontEnd};
+use Debconf::Encoding qw(to_Unicode);
+
+
+
+our @ARGV_KDE=();
+
+sub init {
+ my $this=shift;
+
+ $this->SUPER::init(@_);
+ $this->interactive(1);
+ $this->cancelled(0);
+ $this->createdelements([]);
+ $this->dupelements([]);
+ $this->capb('backup');
+ $this->need_tty(0);
+
+ if (fork) {
+ wait(); # for child
+ if ($? != 0) {
+ die "DISPLAY problem?\n";
+ }
+ }
+ else {
+ $this->qtapp(Qt::Application(\@ARGV_KDE));
+ exit(0); # success
+ }
+
+ $this->window_initted(0);
+ $this->kde_initted(0);
+}
+
+sub init_kde {
+ my $this=shift;
+
+ return if $this->kde_initted;
+
+ debug frontend => "QTF: initializing app";
+ $this->qtapp(Qt::Application(\@ARGV_KDE));
+ $this->kde_initted(1);
+}
+
+sub init_window {
+ my $this=shift;
+ $this->init_kde();
+ return if $this->window_initted;
+ $this->{vbox} = Qt::VBoxLayout;
+
+ debug frontend => "QTF: initializing wizard";
+ $this->win(Debconf::FrontEnd::Kde::Wizard(undef,undef, $this));
+ debug frontend => "QTF: setting size";
+ $this->win->resize(620, 430);
+ my $hostname = `hostname`;
+ chomp $hostname;
+ $this->hostname($hostname);
+ debug frontend => "QTF: setting title";
+ $this->win->setTitle(to_Unicode(sprintf(gettext("Debconf on %s"), $this->hostname)));
+ debug frontend => "QTF: initializing main widget";
+ $this->{toplayout} = Qt::HBoxLayout();
+ $this->win->setMainFrameLayout($this->toplayout);
+ $this->win->setTitle(to_Unicode(sprintf(gettext("Debconf on %s"), $this->hostname)));
+ $this->window_initted(1);
+}
+
+
+sub go {
+ my $this=shift;
+ my @elements=@{$this->elements};
+
+
+ $this->init_window;
+
+
+ my $interactive='';
+ debug frontend => "QTF: -- START ------------------";
+ foreach my $element (@elements) {
+ next unless $element->can("create");
+
+ $element->create($this->frame);
+ $interactive=1;
+ debug frontend => "QTF: ADD: " . $element->question->description;
+ $this->{vbox}->addWidget($element->top);
+ }
+
+ if ($interactive) {
+ foreach my $element (@elements) {
+ next unless $element->top;
+ debug frontend => "QTF: SHOW: " . $element->question->description;
+ $element->top->show;
+ }
+ my $scroll = Qt::ScrollArea($this->win);
+ my $widget = Qt::Widget($scroll);
+ $widget->setLayout($this->{vbox});
+ $scroll->setWidget($widget);
+ $this->toplayout->addWidget($scroll);
+
+
+ if ($this->capb_backup) {
+ $this->win->setBackEnabled(1);
+ }
+ else {
+ $this->win->setBackEnabled(0);
+ }
+ $this->win->setNextEnabled(1);
+
+ $this->win->show;
+ debug frontend => "QTF: -- ENTER EVENTLOOP --------";
+ $this->qtapp->exec;
+ $this->qtapp->exit;
+ debug frontend => "QTF: -- LEFT EVENTLOOP --------";
+
+ $this->win->destroy();
+ $this->window_initted(0);
+
+
+ } else {
+ foreach my $element (@elements) {
+ $element->show;
+ }
+ }
+
+ debug frontend => "QTF: -- END --------------------";
+ if ($this->cancelled) {
+ exit 1;
+ }
+ return '' if $this->goback;
+ return 1;
+}
+
+sub progress_start {
+ my $this=shift;
+ $this->init_window;
+ $this->SUPER::progress_start(@_);
+
+ my $element=$this->progress_bar;
+ $this->{vbox}->addWidget($element->top);
+ $element->top->show;
+ my $scroll = Qt::ScrollArea($this->win);
+ my $widget = Qt::Widget($scroll);
+ $widget->setLayout($this->{vbox});
+ $scroll->setWidget($widget);
+ $this->toplayout->addWidget($scroll);
+ $this->win->setBackEnabled(0);
+ $this->win->setNextEnabled(0);
+ $this->win->show;
+ $this->qtapp->processEvents;
+}
+
+sub progress_set {
+ my $this=shift;
+ my $ret=$this->SUPER::progress_set(@_);
+
+ $this->qtapp->processEvents;
+
+ return $ret;
+}
+
+sub progress_info {
+ my $this=shift;
+ my $ret=$this->SUPER::progress_info(@_);
+
+ $this->qtapp->processEvents;
+
+ return $ret;
+}
+
+sub progress_stop {
+ my $this=shift;
+ my $element=$this->progress_bar;
+ $this->SUPER::progress_stop(@_);
+
+ $this->qtapp->processEvents;
+
+ $this->win->setAttribute(Qt::WA_DeleteOnClose());
+ $this->win->close;
+ $this->window_initted(0);
+
+ if ($this->cancelled) {
+ exit 1;
+ }
+}
+
+
+sub shutdown {
+ my $this = shift;
+ if ($this->kde_initted) {
+ if($this->win) {
+ $this->win->destroy;
+ }
+ }
+}
+
+
+1