404

[ Avaa Bypassed ]




Upload:

Command:

botdev@18.190.157.16: ~ $
#!/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

Filemanager

Name Type Size Permission Actions
Kde Folder 0755
Dialog.pm File 7.22 KB 0644
Editor.pm File 2.11 KB 0644
Gnome.pm File 7.34 KB 0644
Kde.pm File 4.31 KB 0644
Noninteractive.pm File 734 B 0644
Passthrough.pm File 6.29 KB 0644
Readline.pm File 3.53 KB 0644
ScreenSize.pm File 881 B 0644
Teletype.pm File 1.54 KB 0644
Text.pm File 155 B 0644
Web.pm File 2.6 KB 0644