Automated update from Qt3

pull/1/head
Timothy Pearson 11 years ago
parent ab9c0372a3
commit e193e01404

@ -1,189 +0,0 @@
#!/usr/bin/perl -w
# vi:wrap:
# See Qt I18N documentation for usage information.
use POSIX qw(strftime);
$projectid='PROJECT VERSION';
$datetime = strftime "%Y-%m-%d %X %Z", localtime;
$charset='iso-8859-1';
$translator='FULLNAME <EMAIL@ADDRESS>';
$revision_date='YYYY-MM-DD';
$real_mark = "tr";
$noop_mark = "QT_TR_NOOP";
$scoped_mark = "qApp->translate";
$noop_scoped_mark = "QT_TRANSLATE_NOOP";
$header=
'# This is a Qt message file in .po format. Each msgid starts with
# a scope. This scope should *NOT* be translated - eg. translating
# from French to English, "Foo::Bar" would be translated to "Pub",
# not "Foo::Pub".
msgid ""
msgstr ""
"Project-Id-Version: '.$projectid.'\n"
"POT-Creation-Date: '.$datetime.'\n"
"PO-Revision-Date: '.$revision_date.'\n"
"Last-Translator: '.$translator.'\n"
"Content-Type: text/plain; charset='.$charset.'\n"
';
$scope = "";
if ( $#ARGV < 0 ) {
print STDERR "Usage: findtr sourcefile ... >project.po\n";
exit 1;
}
sub outmsg {
my ($file, $line, $scope, $msgid) = @_;
# unesc
$msgid =~ s/$esc:$esc:$esc/::/gs;
$msgid =~ s|$esc/$esc/$esc|//|gs;
# Remove blank lines
$msgid =~ s/\n\n+/\n/gs;
$msgid = "\"\"\n$msgid" if $msgid =~ /\n/s;
print "#: $file:$line\n";
$msgid =~ s/^"//; #"emacs bug
print "msgid \"${scope}::$msgid\n";
#print "msgstr \"$msgid\n";
print "msgstr \"\"\n";
print "\n";
}
sub justlines {
my $l = @_;
$l =~ tr|\n||dc;
return $l;
}
print $header;
foreach $file ( @ARGV ) {
next unless open( I, "< $file" );
$source = join( "", <I> );
# Find esc. Avoid bad case 1/// -> 1/1/1/1 -> ///1
$esc = 1;
while ( $source =~ m!(?:$esc/$esc/$esc)|(?:$esc///)
|(?:$esc:$esc:$esc)|(?:$esc:\:\:)! ) {
$esc++;
}
# Hide quoted :: in practically all strings
$source =~ s/\"([^"\n]*)::([^"\n]*)\"/\"$1$esc:$esc:$esc$2\"/g;
# Hide quoted // in practically all strings
$source =~ s|\"([^"\n]*)//([^"\n]*)\"|\"$1$esc/$esc/$esc$2\"|g;
# strip comments -- does not handle "/*" in strings
while( $source =~ s|/\*(.*?)\*/|justlines($1)|ges ) { }
while( $source =~ s|//(.*?)\n|\n|g ) { }
while( $source =~ /
(?:
# Some doublequotes are "escaped" to help vim syntax highlight
# $1 = scope; $2 = parameters etc.
(?:
# Scoped function name ($1 is scope).
(\w+)::(?:\w+)
\s*
# Parameters etc up to open-curly - no semicolons
\(([^();]*)\)
\s*
(?:\{|:)
)
|
# $3 - one-argument msgid
(?:\b
# One of the marks
(?:$real_mark|$noop_mark)
\s*
# The parameter
\(\s*((?:"(?:[^"]|[^\\]\\")*"\s*)+)\)
)
|
# $4,$5 - two-argument msgid
(?:\b
# One of the scoped marks
(?:$scoped_mark|$noop_scoped_mark)
\s*
# The parameters
\(
# The scope parameter
\s*"([^\"]*)"
\s*,\s*
# The msgid parameter
\s*((?:\"(?:[^"]|[^\\]\\")*"\s*)+) #"emacs
\)
)
|
# $6,$7 - scoped one-argument msgid
(?:\b
# The scope
(\w+)::
# One of the marks
(?:$real_mark)
\s*
# The parameter
\(\s*((?:"(?:[^"]|[^\\]\\")*"\s*)+)\)
)
)/gsx )
{
@lines = split /^/m, "$`";
$line = @lines;
if ( defined( $1 ) ) {
if ( $scope ne $1 ) {
$sc=$1;
$etc=$2;
# remove strings
$etc =~ s/"(?:[^"]|[^\\]\\")"//g;
# count ( and )
@open = split /\(/m, $etc;
@close = split /\)/m, $etc;
if ( $#open == $#close ) {
$scope = $sc;
}
}
next;
}
if ( defined( $3 ) ) {
$this_scope = $scope;
$msgid = $3;
} elsif ( defined( $4 ) ) {
$this_scope = $4;
$msgid = $5;
} elsif ( defined( $6 ) ) {
$this_scope = $6;
$msgid = $7;
} else {
next;
}
$msgid =~ s/^\s*//;
$msgid =~ s/\s*$//;
# Might still be non-unique eg. tr("A" "B") vs. tr("A" "B").
$location{"${this_scope}::${msgid}"} = "$file:$line";
}
}
for $scoped_msgid ( sort keys %location ) {
($scope,$msgid) = $scoped_msgid =~ m/([^:]*)::(.*)/s;
($file,$line) = $location{$scoped_msgid} =~ m/([^:]*):(.*)/s;
outmsg($file,$line,$scope,$msgid);
}

@ -1,259 +0,0 @@
#!/usr/bin/perl -w
#
# in sh/bash/zsh:
# make 2>&1 | .../qt/bin/qt20fix
# in csh/tcsh
# make |& .../qt/bin/qt20fix
#
# repeat as long as qt20fix says to. if your make supports the -k
# flag, that speeds up the process a bit.
#
# qt20fix tends to fix a bit over half of the remaining problems in
# each run.
#
# if you don't use gcc, you will need to change parseline.
#
# this function must accept one line, which is presumed to be an error
# message, and return an array of three strings: the file name, the
# line number and the variable that is undefined.
#
# it may also return an empty list, if the line isn't an error message.
#
# the function is called on each line in turn and only once on each
# line, so it's possible to save state.
#
sub parseline{
my( $line ) = @_;
chomp $line;
if ( $line =~ m%^([-a-zA-Z0-9_\./]+\.[a-zA-Z]+):(\d+):\s*\`(.+)\' undeclared% ) {
@r = ($1,$2,$3);
$r[0] = $currentdir . $r[0] if ( defined($currentdir) &&
$r[0] =~ m%^[^/]% );
return @r;
} elsif ( $line =~ m%^([-a-zA-Z0-9_\./]+\.[a-zA-Z]+):(\d+):\s*\`(.+)\' was not declared% ) {
@r = ($1,$2,$3);
$r[0] = $currentdir . $r[0] if ( defined($currentdir) &&
$r[0] =~ m%^[^/]% );
return @r;
} elsif ( $line =~ m%^g?make\[(\d+)\]: Entering directory \`(.*)\'% ) {
# make[1]: Entering directory `/home/agulbra/2x/src/ui'
my( $l, $c ) = ( $1, $2 );
$c =~ s-/?$-/-;
$dirs[$l] = $c;
$currentdir = $c;
print "$line\n";
} elsif ( $line =~ m%make\[(\d+)\]: Leaving directory \`.*\'$% ) {
# make[1]: Leaving directory `/home/agulbra/2x/src/ui'
$currentdir = defined( $dirs[$1 - 1] ) ? $dirs[$1 - 1] : "";
print "$line\n";
} elsif ( $line =~ m%^\S+:(?:\d+:)?\s+\S% ) {
# other compiler message - skip it
} else {
print "$line\n";
}
return ();
}
#
# this is the big array of globals and their replacements. add stuff
# at will.
#
%globals =
(
"Event_None" => "QEvent::None",
"Event_Timer" => "QEvent::Timer",
"Event_MouseButtonPress" => "QEvent::MouseButtonPress",
"Event_MouseButtonRelease" => "QEvent::MouseButtonRelease",
"Event_MouseButtonDblClick" => "QEvent::MouseButtonDblClick",
"Event_MouseMove" => "QEvent::MouseMove",
"Event_KeyPress" => "QEvent::KeyPress",
"Event_KeyRelease" => "QEvent::KeyRelease",
"Event_FocusIn" => "QEvent::FocusIn",
"Event_FocusOut" => "QEvent::FocusOut",
"Event_Enter" => "QEvent::Enter",
"Event_Leave" => "QEvent::Leave",
"Event_Paint" => "QEvent::Paint",
"Event_Move" => "QEvent::Move",
"Event_Resize" => "QEvent::Resize",
"Event_Create" => "QEvent::Create",
"Event_Destroy" => "QEvent::Destroy",
"Event_Show" => "QEvent::Show",
"Event_Hide" => "QEvent::Hide",
"Event_Close" => "QEvent::Close",
"Event_Quit" => "QEvent::Quit",
"Event_Accel" => "QEvent::Accel",
"Event_Clipboard" => "QEvent::Clipboard",
"Event_SockAct" => "QEvent::SockAct",
"Event_DragEnter" => "QEvent::DragEnter",
"Event_DragMove" => "QEvent::DragMove",
"Event_DragLeave" => "QEvent::DragLeave",
"Event_Drop" => "QEvent::Drop",
"Event_DragResponse" => "QEvent::DragResponse",
"Event_ChildInserted" => "QEvent::ChildInserted",
"Event_ChildRemoved" => "QEvent::ChildRemoved",
"Event_LayoutHint" => "QEvent::LayoutHint",
"Event_User" => "QEvent::User",
"color0" => "Qt::color0",
"color1" => "Qt::color1",
"black" => "Qt::black",
"white" => "Qt::white",
"darkGray" => "Qt::darkGray",
"gray" => "Qt::gray",
"lightGray" => "Qt::lightGray",
"red" => "Qt::red",
"green" => "Qt::green",
"blue" => "Qt::blue",
"cyan" => "Qt::cyan",
"magenta" => "Qt::magenta",
"yellow" => "Qt::yellow",
"darkRed" => "Qt::darkRed",
"darkGreen" => "Qt::darkGreen",
"darkBlue" => "Qt::darkBlue",
"darkCyan" => "Qt::darkCyan",
"darkMagenta" => "Qt::darkMagenta",
"darkYellow" => "Qt::darkYellow",
"AlignLeft" => "Qt::AlignLeft",
"AlignRight" => "Qt::AlignRight",
"AlignHCenter" => "Qt::AlignHCenter",
"AlignTop" => "Qt::AlignTop",
"AlignBottom" => "Qt::AlignBottom",
"AlignVCenter" => "Qt::AlignVCenter",
"AlignCenter" => "Qt::AlignCenter",
"SingleLine" => "Qt::SingleLine",
"DontClip" => "Qt::DontClip",
"ExpandTabs" => "Qt::ExpandTabs",
"ShowPrefix" => "Qt::ShowPrefix",
"WordBreak" => "Qt::WordBreak",
"DontPrint" => "Qt::DontPrint",
"TransparentMode" => "Qt::TransparentMode",
"OpaqueMode" => "Qt::OpaqueMode",
"PixelUnit" => "Qt::PixelUnit",
"LoMetricUnit" => "Qt::LoMetricUnit",
"HiMetricUnit" => "Qt::HiMetricUnit",
"LoEnglishUnit" => "Qt::LoEnglishUnit",
"HiEnglishUnit" => "Qt::HiEnglishUnit",
"TwipsUnit" => "Qt::TwipsUnit",
"WindowsStyle" => "Qt::WindowsStyle",
"MotifStyle" => "Qt::MotifStyle",
"Horizontal" => "Qt::Horizontal",
"Vertical" => "Qt::Vertical",
"PenStyle" => "Qt::PenStyle",
"NoPen" => "Qt::NoPen",
"SolidLine" => "Qt::SolidLine",
"DashLine" => "Qt::DashLine",
"DotLine" => "Qt::DotLine",
"DashDotLine" => "Qt::DashDotLine",
"DashDotDotLine" => "Qt::DashDotDotLine",
"BrushStyle" => "Qt::BrushStyle",
"NoBrush" => "Qt::NoBrush",
"SolidPattern" => "Qt::SolidPattern",
"Dense1Pattern" => "Qt::Dense1Pattern",
"Dense2Pattern" => "Qt::Dense2Pattern",
"Dense3Pattern" => "Qt::Dense3Pattern",
"Dense4Pattern" => "Qt::Dense4Pattern",
"Dense5Pattern" => "Qt::Dense5Pattern",
"Dense6Pattern" => "Qt::Dense6Pattern",
"Dense7Pattern" => "Qt::Dense7Pattern",
"HorPattern" => "Qt::HorPattern",
"VerPattern" => "Qt::VerPattern",
"CrossPattern" => "Qt::CrossPattern",
"BDiagPattern" => "Qt::BDiagPattern",
"FDiagPattern" => "Qt::FDiagPattern",
"DiagCrossPattern" => "Qt::DiagCrossPattern",
"CustomPattern" => "Qt::CustomPattern",
"arrowCursor" => "Qt::arrowCursor",
"upArrowCursor" => "Qt::upArrowCursor",
"crossCursor" => "Qt::crossCursor",
"waitCursor" => "Qt::waitCursor",
"ibeamCursor" => "Qt::ibeamCursor",
"sizeVerCursor" => "Qt::sizeVerCursor",
"sizeHorCursor" => "Qt::sizeHorCursor",
"sizeBDiagCursor" => "Qt::sizeBDiagCursor",
"sizeFDiagCursor" => "Qt::sizeFDiagCursor",
"sizeAllCursor" => "Qt::sizeAllCursor",
"blankCursor" => "Qt::blankCursor",
"splitVCursor" => "Qt::splitVCursor",
"splitHCursor" => "Qt::splitHCursor",
"pointingHandCursor" => "Qt::pointingHandCursor"
);
if ( defined( $ENV{"QTDIR"} ) &&
open( I, "< ". $ENV{"QTDIR"} . "/src/kernel/ntq1xcompatibility.h" ) ) {
while( <I> ) {
if ( /\#define\s+([a-zA-Z0-9_]+)\s+(\S+)/ ) {
if ( !defined( $globals{$1} ) ) {
$globals{$1} = $2;
} elsif ( $globals{$1} ne $2 ) {
#print "conflict: $1 is mapped to $2 and $globals{$1}\n";
}
}
}
close I;
}
#
# do the do
#
while( <STDIN> ) {
@r = parseline($_);
next unless @r;
($file, $line, $variable) = @r;
if ( defined( $variable ) && defined($globals{$variable}) ) {
if ( !defined($lastfile) || ($file ne $lastfile) ) {
$lastfile = undef if ( !$changes );
if ( defined( $lastfile ) ) {
open( O, "> $lastfile" ) ||
die "cannot write to $lastfile, stopped";
print "qt20fix: writing $lastfile (changes: $changes)\n";
print O @currentfile;
close O;
}
open( I, "< $file" ) || die "cannot read $file, stopped";
@currentfile = <I>;
close I;
$lastfile = $file;
$changes = 0;
}
next unless ( defined( $currentfile[$line-1] ) );
next unless ( $currentfile[$line-1] =~ /\b$variable\b/ );
if ( $currentfile[$line-1] =~ s/([^a-zA-Z0-9])::$variable\b/$1$globals{$variable}/ ||
$currentfile[$line-1] =~ s/([^a-zA-Z0-9:])$variable\b/$1$globals{$variable}/ ) {
print "$file:$line:replaced \`$variable\' with \`$globals{$variable}\'\n";
$changes++;
$totalchanges++
}
} elsif ( defined( $variable ) ) {
print "$file:$line: unknown undefined variable $variable\n";
}
}
if ( defined( $changes) && $changes > 0 && defined( $lastfile ) ) {
open( O, "> $lastfile" ) ||
die "cannot write to $lastfile, stopped";
print "qt20fix: writing $lastfile (changes: $changes)\n";
print O @currentfile;
close O;
}
if ( defined( $totalchanges) && $totalchanges > 0 ) {
print "qt20fix: total changes: $totalchanges\nqt20fix: rerun recommended\n";
}

@ -0,0 +1,259 @@
#!/usr/bin/perl -w
#
# in sh/bash/zsh:
# make 2>&1 | .../qt/bin/tqt20fix
# in csh/tcsh
# make |& .../qt/bin/tqt20fix
#
# repeat as long as tqt20fix says to. if your make supports the -k
# flag, that speeds up the process a bit.
#
# tqt20fix tends to fix a bit over half of the remaining problems in
# each run.
#
# if you don't use gcc, you will need to change parseline.
#
# this function must accept one line, which is presumed to be an error
# message, and return an array of three strings: the file name, the
# line number and the variable that is undefined.
#
# it may also return an empty list, if the line isn't an error message.
#
# the function is called on each line in turn and only once on each
# line, so it's possible to save state.
#
sub parseline{
my( $line ) = @_;
chomp $line;
if ( $line =~ m%^([-a-zA-Z0-9_\./]+\.[a-zA-Z]+):(\d+):\s*\`(.+)\' undeclared% ) {
@r = ($1,$2,$3);
$r[0] = $currentdir . $r[0] if ( defined($currentdir) &&
$r[0] =~ m%^[^/]% );
return @r;
} elsif ( $line =~ m%^([-a-zA-Z0-9_\./]+\.[a-zA-Z]+):(\d+):\s*\`(.+)\' was not declared% ) {
@r = ($1,$2,$3);
$r[0] = $currentdir . $r[0] if ( defined($currentdir) &&
$r[0] =~ m%^[^/]% );
return @r;
} elsif ( $line =~ m%^g?make\[(\d+)\]: Entering directory \`(.*)\'% ) {
# make[1]: Entering directory `/home/agulbra/2x/src/ui'
my( $l, $c ) = ( $1, $2 );
$c =~ s-/?$-/-;
$dirs[$l] = $c;
$currentdir = $c;
print "$line\n";
} elsif ( $line =~ m%make\[(\d+)\]: Leaving directory \`.*\'$% ) {
# make[1]: Leaving directory `/home/agulbra/2x/src/ui'
$currentdir = defined( $dirs[$1 - 1] ) ? $dirs[$1 - 1] : "";
print "$line\n";
} elsif ( $line =~ m%^\S+:(?:\d+:)?\s+\S% ) {
# other compiler message - skip it
} else {
print "$line\n";
}
return ();
}
#
# this is the big array of globals and their replacements. add stuff
# at will.
#
%globals =
(
"Event_None" => "QEvent::None",
"Event_Timer" => "QEvent::Timer",
"Event_MouseButtonPress" => "QEvent::MouseButtonPress",
"Event_MouseButtonRelease" => "QEvent::MouseButtonRelease",
"Event_MouseButtonDblClick" => "QEvent::MouseButtonDblClick",
"Event_MouseMove" => "QEvent::MouseMove",
"Event_KeyPress" => "QEvent::KeyPress",
"Event_KeyRelease" => "QEvent::KeyRelease",
"Event_FocusIn" => "QEvent::FocusIn",
"Event_FocusOut" => "QEvent::FocusOut",
"Event_Enter" => "QEvent::Enter",
"Event_Leave" => "QEvent::Leave",
"Event_Paint" => "QEvent::Paint",
"Event_Move" => "QEvent::Move",
"Event_Resize" => "QEvent::Resize",
"Event_Create" => "QEvent::Create",
"Event_Destroy" => "QEvent::Destroy",
"Event_Show" => "QEvent::Show",
"Event_Hide" => "QEvent::Hide",
"Event_Close" => "QEvent::Close",
"Event_Quit" => "QEvent::Quit",
"Event_Accel" => "QEvent::Accel",
"Event_Clipboard" => "QEvent::Clipboard",
"Event_SockAct" => "QEvent::SockAct",
"Event_DragEnter" => "QEvent::DragEnter",
"Event_DragMove" => "QEvent::DragMove",
"Event_DragLeave" => "QEvent::DragLeave",
"Event_Drop" => "QEvent::Drop",
"Event_DragResponse" => "QEvent::DragResponse",
"Event_ChildInserted" => "QEvent::ChildInserted",
"Event_ChildRemoved" => "QEvent::ChildRemoved",
"Event_LayoutHint" => "QEvent::LayoutHint",
"Event_User" => "QEvent::User",
"color0" => "Qt::color0",
"color1" => "Qt::color1",
"black" => "Qt::black",
"white" => "Qt::white",
"darkGray" => "Qt::darkGray",
"gray" => "Qt::gray",
"lightGray" => "Qt::lightGray",
"red" => "Qt::red",
"green" => "Qt::green",
"blue" => "Qt::blue",
"cyan" => "Qt::cyan",
"magenta" => "Qt::magenta",
"yellow" => "Qt::yellow",
"darkRed" => "Qt::darkRed",
"darkGreen" => "Qt::darkGreen",
"darkBlue" => "Qt::darkBlue",
"darkCyan" => "Qt::darkCyan",
"darkMagenta" => "Qt::darkMagenta",
"darkYellow" => "Qt::darkYellow",
"AlignLeft" => "Qt::AlignLeft",
"AlignRight" => "Qt::AlignRight",
"AlignHCenter" => "Qt::AlignHCenter",
"AlignTop" => "Qt::AlignTop",
"AlignBottom" => "Qt::AlignBottom",
"AlignVCenter" => "Qt::AlignVCenter",
"AlignCenter" => "Qt::AlignCenter",
"SingleLine" => "Qt::SingleLine",
"DontClip" => "Qt::DontClip",
"ExpandTabs" => "Qt::ExpandTabs",
"ShowPrefix" => "Qt::ShowPrefix",
"WordBreak" => "Qt::WordBreak",
"DontPrint" => "Qt::DontPrint",
"TransparentMode" => "Qt::TransparentMode",
"OpaqueMode" => "Qt::OpaqueMode",
"PixelUnit" => "Qt::PixelUnit",
"LoMetricUnit" => "Qt::LoMetricUnit",
"HiMetricUnit" => "Qt::HiMetricUnit",
"LoEnglishUnit" => "Qt::LoEnglishUnit",
"HiEnglishUnit" => "Qt::HiEnglishUnit",
"TwipsUnit" => "Qt::TwipsUnit",
"WindowsStyle" => "Qt::WindowsStyle",
"MotifStyle" => "Qt::MotifStyle",
"Horizontal" => "Qt::Horizontal",
"Vertical" => "Qt::Vertical",
"PenStyle" => "Qt::PenStyle",
"NoPen" => "Qt::NoPen",
"SolidLine" => "Qt::SolidLine",
"DashLine" => "Qt::DashLine",
"DotLine" => "Qt::DotLine",
"DashDotLine" => "Qt::DashDotLine",
"DashDotDotLine" => "Qt::DashDotDotLine",
"BrushStyle" => "Qt::BrushStyle",
"NoBrush" => "Qt::NoBrush",
"SolidPattern" => "Qt::SolidPattern",
"Dense1Pattern" => "Qt::Dense1Pattern",
"Dense2Pattern" => "Qt::Dense2Pattern",
"Dense3Pattern" => "Qt::Dense3Pattern",
"Dense4Pattern" => "Qt::Dense4Pattern",
"Dense5Pattern" => "Qt::Dense5Pattern",
"Dense6Pattern" => "Qt::Dense6Pattern",
"Dense7Pattern" => "Qt::Dense7Pattern",
"HorPattern" => "Qt::HorPattern",
"VerPattern" => "Qt::VerPattern",
"CrossPattern" => "Qt::CrossPattern",
"BDiagPattern" => "Qt::BDiagPattern",
"FDiagPattern" => "Qt::FDiagPattern",
"DiagCrossPattern" => "Qt::DiagCrossPattern",
"CustomPattern" => "Qt::CustomPattern",
"arrowCursor" => "Qt::arrowCursor",
"upArrowCursor" => "Qt::upArrowCursor",
"crossCursor" => "Qt::crossCursor",
"waitCursor" => "Qt::waitCursor",
"ibeamCursor" => "Qt::ibeamCursor",
"sizeVerCursor" => "Qt::sizeVerCursor",
"sizeHorCursor" => "Qt::sizeHorCursor",
"sizeBDiagCursor" => "Qt::sizeBDiagCursor",
"sizeFDiagCursor" => "Qt::sizeFDiagCursor",
"sizeAllCursor" => "Qt::sizeAllCursor",
"blankCursor" => "Qt::blankCursor",
"splitVCursor" => "Qt::splitVCursor",
"splitHCursor" => "Qt::splitHCursor",
"pointingHandCursor" => "Qt::pointingHandCursor"
);
if ( defined( $ENV{"QTDIR"} ) &&
open( I, "< ". $ENV{"QTDIR"} . "/src/kernel/ntq1xcompatibility.h" ) ) {
while( <I> ) {
if ( /\#define\s+([a-zA-Z0-9_]+)\s+(\S+)/ ) {
if ( !defined( $globals{$1} ) ) {
$globals{$1} = $2;
} elsif ( $globals{$1} ne $2 ) {
#print "conflict: $1 is mapped to $2 and $globals{$1}\n";
}
}
}
close I;
}
#
# do the do
#
while( <STDIN> ) {
@r = parseline($_);
next unless @r;
($file, $line, $variable) = @r;
if ( defined( $variable ) && defined($globals{$variable}) ) {
if ( !defined($lastfile) || ($file ne $lastfile) ) {
$lastfile = undef if ( !$changes );
if ( defined( $lastfile ) ) {
open( O, "> $lastfile" ) ||
die "cannot write to $lastfile, stopped";
print "tqt20fix: writing $lastfile (changes: $changes)\n";
print O @currentfile;
close O;
}
open( I, "< $file" ) || die "cannot read $file, stopped";
@currentfile = <I>;
close I;
$lastfile = $file;
$changes = 0;
}
next unless ( defined( $currentfile[$line-1] ) );
next unless ( $currentfile[$line-1] =~ /\b$variable\b/ );
if ( $currentfile[$line-1] =~ s/([^a-zA-Z0-9])::$variable\b/$1$globals{$variable}/ ||
$currentfile[$line-1] =~ s/([^a-zA-Z0-9:])$variable\b/$1$globals{$variable}/ ) {
print "$file:$line:replaced \`$variable\' with \`$globals{$variable}\'\n";
$changes++;
$totalchanges++
}
} elsif ( defined( $variable ) ) {
print "$file:$line: unknown undefined variable $variable\n";
}
}
if ( defined( $changes) && $changes > 0 && defined( $lastfile ) ) {
open( O, "> $lastfile" ) ||
die "cannot write to $lastfile, stopped";
print "tqt20fix: writing $lastfile (changes: $changes)\n";
print O @currentfile;
close O;
}
if ( defined( $totalchanges) && $totalchanges > 0 ) {
print "tqt20fix: total changes: $totalchanges\ntqt20fix: rerun recommended\n";
}

@ -0,0 +1,189 @@
#!/usr/bin/perl -w
# vi:wrap:
# See Qt I18N documentation for usage information.
use POSIX qw(strftime);
$projectid='PROJECT VERSION';
$datetime = strftime "%Y-%m-%d %X %Z", localtime;
$charset='iso-8859-1';
$translator='FULLNAME <EMAIL@ADDRESS>';
$revision_date='YYYY-MM-DD';
$real_mark = "tr";
$noop_mark = "QT_TR_NOOP";
$scoped_mark = "qApp->translate";
$noop_scoped_mark = "QT_TRANSLATE_NOOP";
$header=
'# This is a Qt message file in .po format. Each msgid starts with
# a scope. This scope should *NOT* be translated - eg. translating
# from French to English, "Foo::Bar" would be translated to "Pub",
# not "Foo::Pub".
msgid ""
msgstr ""
"Project-Id-Version: '.$projectid.'\n"
"POT-Creation-Date: '.$datetime.'\n"
"PO-Revision-Date: '.$revision_date.'\n"
"Last-Translator: '.$translator.'\n"
"Content-Type: text/plain; charset='.$charset.'\n"
';
$scope = "";
if ( $#ARGV < 0 ) {
print STDERR "Usage: tqtfindtr sourcefile ... >project.po\n";
exit 1;
}
sub outmsg {
my ($file, $line, $scope, $msgid) = @_;
# unesc
$msgid =~ s/$esc:$esc:$esc/::/gs;
$msgid =~ s|$esc/$esc/$esc|//|gs;
# Remove blank lines
$msgid =~ s/\n\n+/\n/gs;
$msgid = "\"\"\n$msgid" if $msgid =~ /\n/s;
print "#: $file:$line\n";
$msgid =~ s/^"//; #"emacs bug
print "msgid \"${scope}::$msgid\n";
#print "msgstr \"$msgid\n";
print "msgstr \"\"\n";
print "\n";
}
sub justlines {
my $l = @_;
$l =~ tr|\n||dc;
return $l;
}
print $header;
foreach $file ( @ARGV ) {
next unless open( I, "< $file" );
$source = join( "", <I> );
# Find esc. Avoid bad case 1/// -> 1/1/1/1 -> ///1
$esc = 1;
while ( $source =~ m!(?:$esc/$esc/$esc)|(?:$esc///)
|(?:$esc:$esc:$esc)|(?:$esc:\:\:)! ) {
$esc++;
}
# Hide quoted :: in practically all strings
$source =~ s/\"([^"\n]*)::([^"\n]*)\"/\"$1$esc:$esc:$esc$2\"/g;
# Hide quoted // in practically all strings
$source =~ s|\"([^"\n]*)//([^"\n]*)\"|\"$1$esc/$esc/$esc$2\"|g;
# strip comments -- does not handle "/*" in strings
while( $source =~ s|/\*(.*?)\*/|justlines($1)|ges ) { }
while( $source =~ s|//(.*?)\n|\n|g ) { }
while( $source =~ /
(?:
# Some doublequotes are "escaped" to help vim syntax highlight
# $1 = scope; $2 = parameters etc.
(?:
# Scoped function name ($1 is scope).
(\w+)::(?:\w+)
\s*
# Parameters etc up to open-curly - no semicolons
\(([^();]*)\)
\s*
(?:\{|:)
)
|
# $3 - one-argument msgid
(?:\b
# One of the marks
(?:$real_mark|$noop_mark)
\s*
# The parameter
\(\s*((?:"(?:[^"]|[^\\]\\")*"\s*)+)\)
)
|
# $4,$5 - two-argument msgid
(?:\b
# One of the scoped marks
(?:$scoped_mark|$noop_scoped_mark)
\s*
# The parameters
\(
# The scope parameter
\s*"([^\"]*)"
\s*,\s*
# The msgid parameter
\s*((?:\"(?:[^"]|[^\\]\\")*"\s*)+) #"emacs
\)
)
|
# $6,$7 - scoped one-argument msgid
(?:\b
# The scope
(\w+)::
# One of the marks
(?:$real_mark)
\s*
# The parameter
\(\s*((?:"(?:[^"]|[^\\]\\")*"\s*)+)\)
)
)/gsx )
{
@lines = split /^/m, "$`";
$line = @lines;
if ( defined( $1 ) ) {
if ( $scope ne $1 ) {
$sc=$1;
$etc=$2;
# remove strings
$etc =~ s/"(?:[^"]|[^\\]\\")"//g;
# count ( and )
@open = split /\(/m, $etc;
@close = split /\)/m, $etc;
if ( $#open == $#close ) {
$scope = $sc;
}
}
next;
}
if ( defined( $3 ) ) {
$this_scope = $scope;
$msgid = $3;
} elsif ( defined( $4 ) ) {
$this_scope = $4;
$msgid = $5;
} elsif ( defined( $6 ) ) {
$this_scope = $6;
$msgid = $7;
} else {
next;
}
$msgid =~ s/^\s*//;
$msgid =~ s/\s*$//;
# Might still be non-unique eg. tr("A" "B") vs. tr("A" "B").
$location{"${this_scope}::${msgid}"} = "$file:$line";
}
}
for $scoped_msgid ( sort keys %location ) {
($scope,$msgid) = $scoped_msgid =~ m/([^:]*)::(.*)/s;
($file,$line) = $location{$scoped_msgid} =~ m/([^:]*):(.*)/s;
outmsg($file,$line,$scope,$msgid);
}

6
configure vendored

@ -226,7 +226,7 @@ while [ "$#" -gt 0 ]; do
VAL=no
;;
#Qt style yes options
-incremental|-qvfb|-profile|-shared|-static|-sm|-thread|-xinerama|-xshape|-tablet|-pch|-stl|-ipv6|-freetype|-big-codecs|-xcursor|-xrandr|-xrender|-xft|-xkb|-nis|-cups|-largefile|-h|-help|-v|-verbose|-debug|-release|-fast|-version-script|-dlopen-opengl|-glibmainloop)
-incremental|-tqvfb|-profile|-shared|-static|-sm|-thread|-xinerama|-xshape|-tablet|-pch|-stl|-ipv6|-freetype|-big-codecs|-xcursor|-xrandr|-xrender|-xft|-xkb|-nis|-cups|-largefile|-h|-help|-v|-verbose|-debug|-release|-fast|-version-script|-dlopen-opengl|-glibmainloop)
VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
VAL=yes
;;
@ -405,9 +405,9 @@ while [ "$#" -gt 0 ]; do
depths)
CFG_QWS_DEPTHS="$VAL"
;;
qvfb) # left for commandline compatibility, not documented
tqvfb) # left for commandline compatibility, not documented
if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
[ "$VAL" = "yes" ] && QMAKE_VARS="$QMAKE_VARS \"gfx-drivers += qvfb\""
[ "$VAL" = "yes" ] && QMAKE_VARS="$QMAKE_VARS \"gfx-drivers += tqvfb\""
else
UNKNOWN_OPT=yes
fi

@ -61,7 +61,7 @@ enabled) can be enabled or disabled independently by using the <a href="emb-feat
support in TQt/Embedded for writing a TQPF font file from any font, so
you can initially enable TTF and BDF formats, save TQPF files for the
fonts and sizes you need, then remove TTF and BDF support.
<p> See <a href="makeqpf.html">tools/makeqpf</a> for a tool that helps
<p> See <a href="maketqpf.html">tools/maketqpf</a> for a tool that helps
produce TQPF files from the TTF and BDF, or just run your application
with the <tt>-savefonts</tt> option.
<p> <h2> Memory Requirements
@ -151,7 +151,7 @@ generate all 4 rotations of fonts would be to run the following at a real frameb
<pre>
for dpy in LinuxFb Transformed:Rot90 Transformed:Rot180 Transformed:Rot270
do
TQWS_DISPLAY=$dpy ./makeqpf "$@"
TQWS_DISPLAY=$dpy ./maketqpf "$@"
done
</pre><p> If programs are only ever run in one orientation on a device, only the one
appropriate set of fonts is needed.

@ -144,7 +144,7 @@ named pipe <tt>/tmp/qtembedded-username/TQtEmbedded-0</tt>; sometimes it may nee
<p> The TQt/Embedded library can be reduced in size by
<a href="emb-features.html">removing unnecessary features</a>.
<p> <li> This document shows how to use TQt/Embedded with the Linux framebuffer. For
development and debugging purposes it is often easier to use the <a href="emb-qvfb.html">TQt/Embedded virtual framebuffer</a> instead.
development and debugging purposes it is often easier to use the <a href="emb-tqvfb.html">TQt/Embedded virtual framebuffer</a> instead.
<p> </ol>
<p>
<!-- eof -->

@ -1,110 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/doc/qvfb.doc:36 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>TQt/Embedded Virtual Framebuffer</title>
<style type="text/css"><!--
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
--></style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
<a href="index.html">
<font color="#004faf">Home</font></a>
| <a href="classes.html">
<font color="#004faf">All&nbsp;Classes</font></a>
| <a href="mainclasses.html">
<font color="#004faf">Main&nbsp;Classes</font></a>
| <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
| <a href="groups.html">
<font color="#004faf">Grouped&nbsp;Classes</font></a>
| <a href="functions.html">
<font color="#004faf">Functions</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>TQt/Embedded Virtual Framebuffer</h1>
<p> The virtual framebuffer allows TQt/Embedded programs to be developed on
a desktop machine, without switching between consoles and X11.
<p> The virtual framebuffer is located in <tt>$QTDIR/tools/qvfb</tt>.
<p> <h2> Using the Virtual Framebuffer
</h2>
<a name="1"></a><p> <ol type=1>
<li> Configure TQt/Embedded with the <tt>-qvfb</tt> argument and compile the library:
<pre>
./configure -qvfb
make
</pre>
<li> Compile <tt>qvfb</tt> as a normal TQt/X11 application and run it. Do <em>not</em>
compile it as a TQt/Embedded application.
<li> Start a TQt/Embedded master application (i.e., construct
<a href="ntqapplication.html">TQApplication</a> with the TQApplication::GuiServer flag or use the <tt>-qws</tt> command line parameter). You can specify to the server that
you wish to use the virtual framebuffer driver, e.g.:
<pre>
masterapp -qws -display TQVFb:0
</pre>
<li> TQt/Embedded will autodetect qvfb, so you can omit the <tt>-display</tt>
command line parameter if you know that qvfb is running, and that
the TQt/Embedded library supports qvfb. (If this is not the case,
TQt/Embedded will write to the real framebuffer, and your X11
display will be corrupted.)
<p> </ol>
<p> <tt>qvfb</tt> supports the following command line options:
<p> <center><table cellpadding="4" cellspacing="2" border="0">
<tr bgcolor="#a2c511"> <th valign="top">Option <th valign="top">Meaning
<tr bgcolor="#f0f0f0">
<td valign="top"><tt>-width</tt> <em>width</em>
<td valign="top">the width of the virtual framebuffer (default: 240).
<tr bgcolor="#d0d0d0">
<td valign="top"><tt>-height</tt> <em>height</em>
<td valign="top">the height of the virtual framebuffer (default: 320).
<tr bgcolor="#f0f0f0">
<td valign="top"><tt>-depth</tt> <em>depth</em>
<td valign="top">the depth of the virtual framebuffer (1, 8 or 32; default: 8).
<tr bgcolor="#d0d0d0">
<td valign="top"><tt>-nocursor</tt>
<td valign="top">do not display the X11 cursor in the framebuffer window.
<tr bgcolor="#f0f0f0">
<td valign="top"><tt>-qwsdisplay</tt> <em>:id</em>
<td valign="top">the TQt/Embedded display id to provide (default: :0).
</table></center>
<p> <h2> Virtual Framebuffer Design
</h2>
<a name="2"></a><p> The virtual framebuffer emulates a framebuffer using a shared memory region
(the virtual frame buffer) and a utility to display the framebuffer in a
window (<tt>qvfb</tt>). The regions of the display that have changed are updated
periodically, so you will see discrete snapshots of the framebuffer rather
than each individual drawing operation. For this reason drawing problems
such as flickering may not be apparent until the program is run using a real
framebuffer.
<p> The target refresh rate can be set via the <b>View|Refresh Rate</b>
menu item. This will cause <tt>qvfb</tt> to check for updated regions more
frequently. The rate is a target only. If little drawing is being
done, the framebuffer will not show any updates between drawing
events. If an application is displaying an animation the updates will
be frequent, then the application and <tt>qvfb</tt> will compete for
processor time.
<p> Mouse and keyboard events are passed to the TQt/Embedded master process via
named pipes.
<p> The virtual framebuffer is a development tool only. No security issues have
been considered in the virtual framebuffer design. It should be avoided
in a production environment; do not configure production libraries with <tt>-qvfb</tt>.
<p>
<!-- eof -->
<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright &copy; 2007
<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
<td align=right><div align=right>TQt 3.3.8</div>
</table></div></address></body>
</html>

@ -43,7 +43,7 @@ command line option.
<p> This document assumes you have the Linux framebuffer configured correctly
and no master process is running. If you do not have a working Linux
framebuffer you can use the
<a href="emb-qvfb.html">TQt/Embedded virtual framebuffer</a>, or you can
<a href="emb-tqvfb.html">TQt/Embedded virtual framebuffer</a>, or you can
run TQt/Embedded as a <a href="emb-vnc.html">VNC server</a>.
<p> Change to a Linux console and select an example to run, e.g. <tt>examples/widgets</tt>. Make sure $QTDIR is set to the directory where you
installed TQt/Embedded and add the $QTDIR/lib directory to

@ -0,0 +1,110 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/doc/tqvfb.doc:36 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>TQt/Embedded Virtual Framebuffer</title>
<style type="text/css"><!--
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
--></style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
<a href="index.html">
<font color="#004faf">Home</font></a>
| <a href="classes.html">
<font color="#004faf">All&nbsp;Classes</font></a>
| <a href="mainclasses.html">
<font color="#004faf">Main&nbsp;Classes</font></a>
| <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
| <a href="groups.html">
<font color="#004faf">Grouped&nbsp;Classes</font></a>
| <a href="functions.html">
<font color="#004faf">Functions</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>TQt/Embedded Virtual Framebuffer</h1>
<p> The virtual framebuffer allows TQt/Embedded programs to be developed on
a desktop machine, without switching between consoles and X11.
<p> The virtual framebuffer is located in <tt>$QTDIR/tools/tqvfb</tt>.
<p> <h2> Using the Virtual Framebuffer
</h2>
<a name="1"></a><p> <ol type=1>
<li> Configure TQt/Embedded with the <tt>-tqvfb</tt> argument and compile the library:
<pre>
./configure -tqvfb
make
</pre>
<li> Compile <tt>tqvfb</tt> as a normal TQt/X11 application and run it. Do <em>not</em>
compile it as a TQt/Embedded application.
<li> Start a TQt/Embedded master application (i.e., construct
<a href="ntqapplication.html">TQApplication</a> with the TQApplication::GuiServer flag or use the <tt>-qws</tt> command line parameter). You can specify to the server that
you wish to use the virtual framebuffer driver, e.g.:
<pre>
masterapp -qws -display TQVFb:0
</pre>
<li> TQt/Embedded will autodetect tqvfb, so you can omit the <tt>-display</tt>
command line parameter if you know that tqvfb is running, and that
the TQt/Embedded library supports tqvfb. (If this is not the case,
TQt/Embedded will write to the real framebuffer, and your X11
display will be corrupted.)
<p> </ol>
<p> <tt>tqvfb</tt> supports the following command line options:
<p> <center><table cellpadding="4" cellspacing="2" border="0">
<tr bgcolor="#a2c511"> <th valign="top">Option <th valign="top">Meaning
<tr bgcolor="#f0f0f0">
<td valign="top"><tt>-width</tt> <em>width</em>
<td valign="top">the width of the virtual framebuffer (default: 240).
<tr bgcolor="#d0d0d0">
<td valign="top"><tt>-height</tt> <em>height</em>
<td valign="top">the height of the virtual framebuffer (default: 320).
<tr bgcolor="#f0f0f0">
<td valign="top"><tt>-depth</tt> <em>depth</em>
<td valign="top">the depth of the virtual framebuffer (1, 8 or 32; default: 8).
<tr bgcolor="#d0d0d0">
<td valign="top"><tt>-nocursor</tt>
<td valign="top">do not display the X11 cursor in the framebuffer window.
<tr bgcolor="#f0f0f0">
<td valign="top"><tt>-qwsdisplay</tt> <em>:id</em>
<td valign="top">the TQt/Embedded display id to provide (default: :0).
</table></center>
<p> <h2> Virtual Framebuffer Design
</h2>
<a name="2"></a><p> The virtual framebuffer emulates a framebuffer using a shared memory region
(the virtual frame buffer) and a utility to display the framebuffer in a
window (<tt>tqvfb</tt>). The regions of the display that have changed are updated
periodically, so you will see discrete snapshots of the framebuffer rather
than each individual drawing operation. For this reason drawing problems
such as flickering may not be apparent until the program is run using a real
framebuffer.
<p> The target refresh rate can be set via the <b>View|Refresh Rate</b>
menu item. This will cause <tt>tqvfb</tt> to check for updated regions more
frequently. The rate is a target only. If little drawing is being
done, the framebuffer will not show any updates between drawing
events. If an application is displaying an animation the updates will
be frequent, then the application and <tt>tqvfb</tt> will compete for
processor time.
<p> Mouse and keyboard events are passed to the TQt/Embedded master process via
named pipes.
<p> The virtual framebuffer is a development tool only. No security issues have
been considered in the virtual framebuffer design. It should be avoided
in a production environment; do not configure production libraries with <tt>-tqvfb</tt>.
<p>
<!-- eof -->
<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright &copy; 2007
<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
<td align=right><div align=right>TQt 3.3.8</div>
</table></div></address></body>
</html>

@ -54,7 +54,7 @@ can change this by setting the <tt>TQWS_SIZE</tt> environment variable to
another size, e.g. <tt>TQWS_SIZE=240x320</tt>.
<p> VNC clients are available for a vast array of display systems: X11,
Windows, Amiga, DOS, VMS, and dozens of others.
<p> The <a href="emb-qvfb.html">TQt Virtual Framebuffer</a> is an alternative
<p> The <a href="emb-tqvfb.html">TQt Virtual Framebuffer</a> is an alternative
technique. It uses shared memory and thus is much faster and smoother, but
it does not operate over a network.
<p>

@ -347,7 +347,7 @@ file for <em>lupdate</em>; your <tt>qmake</tt> project file will work fine once
you add the <tt>TRANSLATIONS</tt> entry.
<p> In your application, you must <a href="ntqtranslator.html#load">TQTranslator::load</a>() the translation
files appropriate for the user's language, and install them using <a href="ntqapplication.html#installTranslator">TQApplication::installTranslator</a>().
<p> If you have been using the old TQt tools (<tt>findtr</tt>, <tt>msg2qm</tt> and <tt>mergetr</tt>), you can use <em>qm2ts</em> to convert your old <tt>.qm</tt> files.
<p> If you have been using the old TQt tools (<tt>tqtfindtr</tt>, <tt>msg2tqm</tt> and <tt>tqtmergetr</tt>), you can use <em>tqm2ts</em> to convert your old <tt>.qm</tt> files.
<p> <em>linguist</em>, <em>lupdate</em> and <em>lrelease</em> are installed in the <tt>bin</tt>
subdirectory of the base directory TQt is installed into. Click Help|Manual
in <em>TQt Linguist</em> to access the user's manual; it contains a tutorial

@ -8140,7 +8140,7 @@
"Qt's Tools" tools-list.html
"Qt/Embedded Performance Tuning" emb-performance.html
"Qt/Embedded Pointer Handling" emb-pointer.html
"Qt/Embedded Virtual Framebuffer" emb-qvfb.html
"Qt/Embedded Virtual Framebuffer" emb-tqvfb.html
"Qt/Embedded as a VNC Server" emb-vnc.html
"Qt/Embedded environment variables" emb-envvars.html
"Qt/Mac Issues" mac-differences.html
@ -8282,7 +8282,7 @@
"i18n" i18n.html
"images" images.html
"io" io.html
"makeqpf" makeqpf.html
"maketqpf" maketqpf.html
"misc" misc.html
"motif-examples" motif-examples.html
"multimedia" multimedia.html

@ -32,7 +32,7 @@ body { background: #ffffff; color: black; }
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><p align="right">[<a href="linguist-manual-1.html">Prev: Introduction</a>] [<a href="linguist-manual.html">Home</a>] [<a href="linguist-manual-3.html">Next: Translators</a>]</p>
<h2 align="center">Release Manager</h2>
<!-- index Release Manager --><p>Two tools are provided for the release manager, <a href="linguist-manual-2.html#2">lupdate</a> and <a href="linguist-manual-2.html#3">lrelease</a>. These tools depend on <em>qmake</em> project files. You don't have to use <em>qmake</em>, though.</p>
<p>A third tool, <tt>qm2ts</tt>, can be used for converting TQt 2.x message files to <tt>.ts</tt> files.</p>
<p>A third tool, <tt>tqm2ts</tt>, can be used for converting TQt 2.x message files to <tt>.ts</tt> files.</p>
<h3><a name="1"></a>TQt Project Files</h3>
<!-- index .pro Files --><!-- index Project Files --><!-- index qmake!Project Files --><p><a href="linguist-manual-2.html#2">lupdate</a> and <a href="linguist-manual-2.html#3">lrelease</a> depend on information in the application's <tt>.pro</tt> TQt project file. There must be an entry in the <tt>TRANSLATIONS</tt> section of the project file for each language that is additional to the native language. A typical entry looks like this:</p>
<!-- index TRANSLATIONS!in Project Files --><pre> TRANSLATIONS = tt2_fr.ts \

@ -1,56 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/doc/makeqpf.doc:36 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>makeqpf</title>
<style type="text/css"><!--
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
--></style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
<a href="index.html">
<font color="#004faf">Home</font></a>
| <a href="classes.html">
<font color="#004faf">All&nbsp;Classes</font></a>
| <a href="mainclasses.html">
<font color="#004faf">Main&nbsp;Classes</font></a>
| <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
| <a href="groups.html">
<font color="#004faf">Grouped&nbsp;Classes</font></a>
| <a href="functions.html">
<font color="#004faf">Functions</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>makeqpf</h1>
<p> Saves TQPF font files by rendering and saving fonts.
<p> <h2> Usage
</h2>
<a name="1"></a><p> <pre>
makeqpf [-A] [-f spec-file] [font ...]
</pre>
<p> <ul>
<li> -A - Render and save all fonts in fontdir
<li> -f - File of lines: fontname character-ranges e.g. "smoothtimes 0-ff,20a0-20af"
<li> font - Font to render and save
</ul>
<p>
<!-- eof -->
<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright &copy; 2007
<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
<td align=right><div align=right>TQt 3.3.8</div>
</table></div></address></body>
</html>

@ -0,0 +1,56 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/doc/maketqpf.doc:36 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>maketqpf</title>
<style type="text/css"><!--
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
--></style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
<a href="index.html">
<font color="#004faf">Home</font></a>
| <a href="classes.html">
<font color="#004faf">All&nbsp;Classes</font></a>
| <a href="mainclasses.html">
<font color="#004faf">Main&nbsp;Classes</font></a>
| <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
| <a href="groups.html">
<font color="#004faf">Grouped&nbsp;Classes</font></a>
| <a href="functions.html">
<font color="#004faf">Functions</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>maketqpf</h1>
<p> Saves TQPF font files by rendering and saving fonts.
<p> <h2> Usage
</h2>
<a name="1"></a><p> <pre>
maketqpf [-A] [-f spec-file] [font ...]
</pre>
<p> <ul>
<li> -A - Render and save all fonts in fontdir
<li> -f - File of lines: fontname character-ranges e.g. "smoothtimes 0-ff,20a0-20af"
<li> font - Font to render and save
</ul>
<p>
<!-- eof -->
<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright &copy; 2007
<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
<td align=right><div align=right>TQt 3.3.8</div>
</table></div></address></body>
</html>

@ -95,7 +95,7 @@ body { background: #ffffff; color: black; }
</ul>
<p> <td valign="top">
<ul>
<li> <a href="emb-qvfb.html">TQVFb tool - virtual framebuffer for TQt/Embedded</a>
<li> <a href="emb-tqvfb.html">TQVFb tool - virtual framebuffer for TQt/Embedded</a>
<p>&nbsp;</p>
<li> <a href="emb-install.html">Installing TQt/Embedded</a>
<li> <a href="emb-features.html">The Feature Definition File</a>

@ -134,7 +134,7 @@ etc. are totally unaffected, but code that is
<em>not</em> in functions of classes inherited from <code>TQt</code>,
you must qualify these identifiers like this: <code>TQt::red,
TQt::LeftButton, TQt::AlignRight</code>, etc.
<p> <p>The <code>qt/bin/qt20fix</code> script helps to fix the code that
<p> <p>The <code>qt/bin/tqt20fix</code> script helps to fix the code that
needs adaption, though most code does not need changing.
<p> Compiling with -DQT1COMPATIBILITY will help you get going with TQt 2.x
- it allows all the old "dirty namespace" identifiers from TQt 1.x to

@ -9984,8 +9984,8 @@
<section ref="tutorial2-04.html" title="Mainly Easy">
<keyword ref="tutorial2-04.html">Mainly Easy</keyword>
</section>
<section ref="makeqpf.html" title="makeqpf">
<keyword ref="makeqpf.html">makeqpf</keyword>
<section ref="maketqpf.html" title="maketqpf">
<keyword ref="maketqpf.html">maketqpf</keyword>
</section>
<section ref="functions.html" title="Member Function Index">
<keyword ref="functions.html">Member Function Index</keyword>
@ -10269,8 +10269,8 @@
<section ref="emb-pointer.html" title="Qt/Embedded Pointer Handling">
<keyword ref="emb-pointer.html">Qt/Embedded Pointer Handling</keyword>
</section>
<section ref="emb-qvfb.html" title="Qt/Embedded Virtual Framebuffer">
<keyword ref="emb-qvfb.html">Qt/Embedded Virtual Framebuffer</keyword>
<section ref="emb-tqvfb.html" title="Qt/Embedded Virtual Framebuffer">
<keyword ref="emb-tqvfb.html">Qt/Embedded Virtual Framebuffer</keyword>
</section>
<section ref="qtmac-as-native.html" title="Qt/Mac is Mac OS X Native">
<keyword ref="qtmac-as-native.html">Qt/Mac is Mac OS X Native</keyword>

@ -1061,7 +1061,7 @@ Qt's Tools | tools-list.html
Qt/Embedded | qws.html
Qt/Embedded Performance Tuning | emb-performance.html
Qt/Embedded Pointer Handling | emb-pointer.html
Qt/Embedded Virtual Framebuffer | emb-qvfb.html
Qt/Embedded Virtual Framebuffer | emb-tqvfb.html
Qt/Embedded as a VNC Server | emb-vnc.html
Qt/Embedded environment variables | emb-envvars.html
Qt/Mac Issues | mac-differences.html
@ -1175,7 +1175,7 @@ chart/setdataform.cpp Example File | chart-setdataform-cpp.html
chart/setdataform.h Example File | chart-setdataform-h.html
iconview/simple_dd/main.cpp Example File | iconview-simple_dd-main-cpp.html
iconview/simple_dd/main.h Example File | iconview-simple_dd-main-h.html
makeqpf | makeqpf.html
maketqpf | maketqpf.html
ntqaccel.h Include File | qaccel-h.html
ntqaccessible.h Include File | qaccessible-h.html
ntqaction.h Include File | qaction-h.html

@ -46,9 +46,9 @@ help you need
<li> <a href="qmake-manual.html">qmake</a> - create Makefiles from
simple platform-independent project files
<li> <a href="qembed.html">qembed</a> - convert data, e.g. images, into C++ code
<li> <a href="emb-qvfb.html">qvfb</a> - run and test embedded
<li> <a href="emb-tqvfb.html">tqvfb</a> - run and test embedded
applications on the desktop
<li> <a href="makeqpf.html">makeqpf</a> - create pre-rendered fonts
<li> <a href="maketqpf.html">maketqpf</a> - create pre-rendered fonts
for embedded devices
<li> <a href="moc.html">moc</a> - the Meta Object Compiler
<li> <a href="uic.html">uic</a> - the User Interface Compiler

@ -372,8 +372,8 @@ In your application, you must \l QTranslator::load() the translation
files appropriate for the user's language, and install them using \l
QApplication::installTranslator().
If you have been using the old Qt tools (\c findtr, \c msg2qm and \c
mergetr), you can use \e qm2ts to convert your old \c .qm files.
If you have been using the old Qt tools (\c tqtfindtr, \c msg2tqm and \c
tqtmergetr), you can use \e tqm2ts to convert your old \c .qm files.
\e linguist, \e lupdate and \e lrelease are installed in the \c bin
subdirectory of the base directory Qt is installed into. Click Help|Manual

@ -1,58 +0,0 @@
/****************************************************************************
**
** Documentation for QPF fonts
**
** Copyright (C) 2005-2008 Trolltech ASA. All rights reserved.
**
** This file is part of the Qt GUI Toolkit.
**
** This file may be used under the terms of the GNU General
** Public License versions 2.0 or 3.0 as published by the Free
** Software Foundation and appearing in the files LICENSE.GPL2
** and LICENSE.GPL3 included in the packaging of this file.
** Alternatively you may (at your option) use any later version
** of the GNU General Public License if such license has been
** publicly approved by Trolltech ASA (or its successors, if any)
** and the KDE Free Qt Foundation.
**
** Please review the following information to ensure GNU General
** Public Licensing requirements will be met:
** http://trolltech.com/products/qt/licenses/licensing/opensource/.
** If you are unsure which license is appropriate for your use, please
** review the following information:
** http://trolltech.com/products/qt/licenses/licensing/licensingoverview
** or contact the sales department at sales@trolltech.com.
**
** This file may be used under the terms of the Q Public License as
** defined by Trolltech ASA and appearing in the file LICENSE.QPL
** included in the packaging of this file. Licensees holding valid Qt
** Commercial licenses may use this file in accordance with the Qt
** Commercial License Agreement provided with the Software.
**
** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted
** herein.
**
**********************************************************************/
/*!
\page makeqpf.html
\title makeqpf
Saves QPF font files by rendering and saving fonts.
\section1 Usage
\code
makeqpf [-A] [-f spec-file] [font ...]
\endcode
\list
\i -A - Render and save all fonts in fontdir
\i -f - File of lines: fontname character-ranges e.g. "smoothtimes 0-ff,20a0-20af"
\i font - Font to render and save
\endlist
*/

@ -0,0 +1,58 @@
/****************************************************************************
**
** Documentation for QPF fonts
**
** Copyright (C) 2005-2008 Trolltech ASA. All rights reserved.
**
** This file is part of the Qt GUI Toolkit.
**
** This file may be used under the terms of the GNU General
** Public License versions 2.0 or 3.0 as published by the Free
** Software Foundation and appearing in the files LICENSE.GPL2
** and LICENSE.GPL3 included in the packaging of this file.
** Alternatively you may (at your option) use any later version
** of the GNU General Public License if such license has been
** publicly approved by Trolltech ASA (or its successors, if any)
** and the KDE Free Qt Foundation.
**
** Please review the following information to ensure GNU General
** Public Licensing requirements will be met:
** http://trolltech.com/products/qt/licenses/licensing/opensource/.
** If you are unsure which license is appropriate for your use, please
** review the following information:
** http://trolltech.com/products/qt/licenses/licensing/licensingoverview
** or contact the sales department at sales@trolltech.com.
**
** This file may be used under the terms of the Q Public License as
** defined by Trolltech ASA and appearing in the file LICENSE.QPL
** included in the packaging of this file. Licensees holding valid Qt
** Commercial licenses may use this file in accordance with the Qt
** Commercial License Agreement provided with the Software.
**
** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted
** herein.
**
**********************************************************************/
/*!
\page maketqpf.html
\title maketqpf
Saves QPF font files by rendering and saving fonts.
\section1 Usage
\code
maketqpf [-A] [-f spec-file] [font ...]
\endcode
\list
\i -A - Render and save all fonts in fontdir
\i -f - File of lines: fontname character-ranges e.g. "smoothtimes 0-ff,20a0-20af"
\i font - Font to render and save
\endlist
*/

@ -36,14 +36,14 @@ Debian distribution
(http://ftp.de.debian.org/debian/pool/main/q/qt-x11-free/)
qt-x11-free_3.3.8b-11.*
qt-x11-free_3.3.8b.orig.tar.gz
man1/createcw.1
man1/tqtcreatecw.1
man1/designer.1
man1/findtr.1
man1/tqtfindtr.1
man1/linguist.1
man1/makeqpf.1
man1/mergetr.1
man1/msg2qm.1
man1/maketqpf.1
man1/tqtmergetr.1
man1/msg2tqm.1
man1/qembed.1
man1/qt20fix.1
man1/tqt20fix.1
man1/qtconfig.1
man1/qvfb.1
man1/tqvfb.1

@ -1,57 +0,0 @@
.TH "createcw" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
createcw \- custom widget description creater for Qt Designer
.SH "SYNTAX"
.LP
createcw <\fIfilename.cw\fP>
.SH "DESCRIPTION"
.LP
This small application makes it much easier to create
custom widget descriptions for the Qt Designer. Using
them you can use custom widgets in the Qt Designer
including their signals, slots and properties.
To do that normally you would have to enter all that
information in the custom widget dialog in the Qt
Designer for each widget. But this small tool can create
for you these description files for your custom widgets
which you then can simply import into the Qt Designer. So
you can use your custom widgets without any additional
work in your forms in the Qt Designer then.
To do that you have to modify the sourcecode (main.cpp) a
bit and recompile it afterwards.
STEP1: Include header files of the widgets for which a
description should be created here. If you have a widget
which is defined in the file mycustomwidget.h in
/home/joedeveloper/src, write here
#include "/home/joedeveloper/src/mycustomwidget.h"
STEP2: Instantiate all widgets for which a description
should be created here and add them to the list wl. If
your custom widget is e.g. called MyCustomWidget you
would write here
Widget w;
w.w = new MyCustomWidget( 0, 0 );
w.include = "mycustomwidget.h";
w.location = "global";
wl.append( w );
After that compile the program, link it with your custom
widget (library or object file) and run it like this:
(unix): ./createcw mywidgets.cw
(win32): createcw mywidgets.cw
After that you can import this description file into the
Qt Designer using the Custom\-Widget Dialog (See
Tools\->Custom\->Edit Custom Widgets... in the Qt Designer)
and use these custom widget there in your forms.
.SH "AUTHORS"
.LP
Troll Tech <http://www.trolltech.com/>

@ -1,25 +0,0 @@
.TH "findtr" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
findtr \- Extracts information about text to be translated
.SH "SYNTAX"
.LP
findtr *.cpp *.h >myapp.po
.SH "DESCRIPTION"
.LP
Extracts information about text to be translated. It
recognizes the tr() constructs described above and
produces a file in ".po" format, a simple text format
that your translation team will copy and edit. For
example, the base .po file might be myapp.po and
translated versions of the file would then be
myapp_de.po, myapp_fr.po, and myapp_ja.po for
translations in German, French and Japanese respectively.
findtr *.cpp *.h >myapp.po
copy myapp.po myapp_de.po
edit myapp_de.po
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -1,26 +0,0 @@
.TH "makeqpf" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
makeqpf \- Create qpf files from TTF and BDF files.
.SH "DESCRIPTION"
.LP
Qt Prerendered Font (QPF) is a light\-weight non\-scalable
font format specific to Qt/Embedded. makeqpf is a tool
that assists producing QPF files from TTF and BDF files.
.SH "SYNTAX"
qembed [ \fIgeneral\-files\fP ] <[ \fI\-\-images image\-files \fP]>
.br
general\-files
These files can be any type of file.
\-\-images image\-files
These files must be in image formats supported by Qt.
.SH "FILES"
.LP
\fI$(QTDIR)/etc/fonts/fontdir\fP
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -0,0 +1,26 @@
.TH "maketqpf" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
maketqpf \- Create qpf files from TTF and BDF files.
.SH "DESCRIPTION"
.LP
Qt Prerendered Font (QPF) is a light\-weight non\-scalable
font format specific to Qt/Embedded. maketqpf is a tool
that assists producing QPF files from TTF and BDF files.
.SH "SYNTAX"
qembed [ \fIgeneral\-files\fP ] <[ \fI\-\-images image\-files \fP]>
.br
general\-files
These files can be any type of file.
\-\-images image\-files
These files must be in image formats supported by Qt.
.SH "FILES"
.LP
\fI$(QTDIR)/etc/fonts/fontdir\fP
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -1,27 +0,0 @@
.TH "mergetr" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
mergetr \- Merge changes in translations
.SH "SYNTAX"
.LP
mergetr myapp_de.po myapp.po
.SH "DESCRIPTION"
.LP
When the texts in your program change as it is developed,
a the base .po file can be regenerated using findtr,
then mergetr can be used to merge the changes into the
other .po files:
mergetr myapp_de.po myapp.po
mergetr myapp_fr.po myapp.po
mergetr myapp_ja.po myapp.po
The translation team then edits the new .po files to
translate the new or changed texts. When texts change,
the old text is included in the .po file as a comment to
guide the new translation (no "fuzzy" matching is done).
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -1,26 +0,0 @@
.TH "msg2qm" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
msg2qm \- Converts translated .po files to a Qt\-specific binary format.
.SH "SYNTAX"
.LP
msg2qm myapp_de.po myapp_de.qm
.SH "DESCRIPTION"
.LP
Converts translated .po files to a Qt\-specific binary
format (".qm" Qt message files). The Qt message files
are platform and locale independent, containing
translations in Unicode and various hash tables to
provide fast look\-up.
msg2qm myapp_de.po myapp_de.qm
msg2qm myapp_fr.po myapp_fr.qm
msg2qm myapp_ja.po myapp_ja.qm
In your application, use QTranslator::load() to load
translation files appropriate for the user's language.
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -0,0 +1,26 @@
.TH "msg2tqm" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
msg2tqm \- Converts translated .po files to a Qt\-specific binary format.
.SH "SYNTAX"
.LP
msg2tqm myapp_de.po myapp_de.qm
.SH "DESCRIPTION"
.LP
Converts translated .po files to a Qt\-specific binary
format (".qm" Qt message files). The Qt message files
are platform and locale independent, containing
translations in Unicode and various hash tables to
provide fast look\-up.
msg2tqm myapp_de.po myapp_de.qm
msg2tqm myapp_fr.po myapp_fr.qm
msg2tqm myapp_ja.po myapp_ja.qm
In your application, use QTranslator::load() to load
translation files appropriate for the user's language.
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -1,32 +0,0 @@
.TH "qt20fix" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
qt20fix \- Helps clean namespace when porting an app from Qt1 to Qt2
.SH "SYNTAX"
.LP
qt20fix myapp.cpp
.SH "DESCRIPTION"
.LP
Qt 2.x is namespace\-clean, unlike 1.x. Qt now uses very
few global identifiers. Identifiers like red, blue,
LeftButton, AlignRight, Key_Up, Key_Down, NoBrush etc.
are now part of a special class Qt (defined in
ntqnamespace.h), which is inherited by most Qt classes.
Member functions of classes that inherit from QWidget,
etc. are totally unaffected, but code that is not in
functions of classes inherited from Qt, you must qualify
these identifiers like this: Qt::red, Qt::LeftButton,
Qt::AlignRight, etc.
The qt/bin/qt20fix script helps to fix the code that
needs adaption, though most code does not need changing.
Compiling with \-DQT1COMPATIBILITY will help you get going
with Qt 2.x \- it allows all the old "dirty namespace"
identifiers from Qt 1.x to continue working. Without it,
you'll get compile errors that can easily be fixed by
searching this page for the clean identifiers.
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -1,66 +0,0 @@
.TH "qvfb" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
qvfb \- Virtual framebuffer for Qt
.SH "DESCRIPTION"
.LP
The virtual framebuffer allows Qt/Embedded programs to be
developed on your desktop machine, without switching
between consoles and X11.
Start a Qt/Embedded master application (i.e., construct
QApplication with QApplication::GuiServer flag or use the
\-qws command line parameter). You will need to specify to
the server that you wish to use the virtual framebuffer
driver, e.g.:
widgets \-qws \-display QVFb:0
You may prefer to set the QWS_DISPLAY environment
variable to be QVFb:0.
qvfb supports the following command line options:
\-width width: the width of the virtual framebuffer
(default: 240).
\-height height: the height of the virtual framebuffer
(default: 320).
\-depth depth: the depth of the virtual framebuffer (1, 8
or 32; default: 8).
\-nocursor: do not display the X11 cursor in the
framebuffer window.
\-qwsdisplay :id the Qt/Embedded display id to provide
(default: 0).
Virtual Framebuffer Design
The virtual framebuffer emulates a framebuffer using a
shared memory region (the virtual frame buffer) and a
utility to display the framebuffer in a window (qvfb).
The regions of the display that have changed are updated
periodically, so you will see discrete snapshots of the
framebuffer rather than each individual drawing
operation. For this reason drawing problems such as
flickering may not be apparent until the program is run
using a real framebuffer.
The target refresh rate can be set via the "View|Refresh
Rate" menu item. This will cause qvfb to check for
updated regions more quickly. The rate is a target only.
If little drawing is being done, the framebuffer will not
show any updates between drawing events. If an
application is displaying an animation the updates will
be frequent, and the application and qvfb will compete
for processor time.
Mouse and keyboard events are passed to the Qt/Embedded
master process via named pipes.
The virtual framebuffer is a development tool only. No
security issues have been considered in the virtual
framebuffer design. It should be avoided in a production
environment; QT_NO_QWS_VFB should always be defined in
production libraries.
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -0,0 +1,32 @@
.TH "tqt20fix" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
tqt20fix \- Helps clean namespace when porting an app from Qt1 to Qt2
.SH "SYNTAX"
.LP
tqt20fix myapp.cpp
.SH "DESCRIPTION"
.LP
Qt 2.x is namespace\-clean, unlike 1.x. Qt now uses very
few global identifiers. Identifiers like red, blue,
LeftButton, AlignRight, Key_Up, Key_Down, NoBrush etc.
are now part of a special class Qt (defined in
ntqnamespace.h), which is inherited by most Qt classes.
Member functions of classes that inherit from QWidget,
etc. are totally unaffected, but code that is not in
functions of classes inherited from Qt, you must qualify
these identifiers like this: Qt::red, Qt::LeftButton,
Qt::AlignRight, etc.
The qt/bin/tqt20fix script helps to fix the code that
needs adaption, though most code does not need changing.
Compiling with \-DQT1COMPATIBILITY will help you get going
with Qt 2.x \- it allows all the old "dirty namespace"
identifiers from Qt 1.x to continue working. Without it,
you'll get compile errors that can easily be fixed by
searching this page for the clean identifiers.
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -0,0 +1,57 @@
.TH "tqtcreatecw" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
tqtcreatecw \- custom widget description creater for Qt Designer
.SH "SYNTAX"
.LP
tqtcreatecw <\fIfilename.cw\fP>
.SH "DESCRIPTION"
.LP
This small application makes it much easier to create
custom widget descriptions for the Qt Designer. Using
them you can use custom widgets in the Qt Designer
including their signals, slots and properties.
To do that normally you would have to enter all that
information in the custom widget dialog in the Qt
Designer for each widget. But this small tool can create
for you these description files for your custom widgets
which you then can simply import into the Qt Designer. So
you can use your custom widgets without any additional
work in your forms in the Qt Designer then.
To do that you have to modify the sourcecode (main.cpp) a
bit and recompile it afterwards.
STEP1: Include header files of the widgets for which a
description should be created here. If you have a widget
which is defined in the file mycustomwidget.h in
/home/joedeveloper/src, write here
#include "/home/joedeveloper/src/mycustomwidget.h"
STEP2: Instantiate all widgets for which a description
should be created here and add them to the list wl. If
your custom widget is e.g. called MyCustomWidget you
would write here
Widget w;
w.w = new MyCustomWidget( 0, 0 );
w.include = "mycustomwidget.h";
w.location = "global";
wl.append( w );
After that compile the program, link it with your custom
widget (library or object file) and run it like this:
(unix): ./tqtcreatecw mywidgets.cw
(win32): tqtcreatecw mywidgets.cw
After that you can import this description file into the
Qt Designer using the Custom\-Widget Dialog (See
Tools\->Custom\->Edit Custom Widgets... in the Qt Designer)
and use these custom widget there in your forms.
.SH "AUTHORS"
.LP
Troll Tech <http://www.trolltech.com/>

@ -0,0 +1,25 @@
.TH "tqtfindtr" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
tqtfindtr \- Extracts information about text to be translated
.SH "SYNTAX"
.LP
tqtfindtr *.cpp *.h >myapp.po
.SH "DESCRIPTION"
.LP
Extracts information about text to be translated. It
recognizes the tr() constructs described above and
produces a file in ".po" format, a simple text format
that your translation team will copy and edit. For
example, the base .po file might be myapp.po and
translated versions of the file would then be
myapp_de.po, myapp_fr.po, and myapp_ja.po for
translations in German, French and Japanese respectively.
tqtfindtr *.cpp *.h >myapp.po
copy myapp.po myapp_de.po
edit myapp_de.po
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -0,0 +1,27 @@
.TH "tqtmergetr" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
tqtmergetr \- Merge changes in translations
.SH "SYNTAX"
.LP
tqtmergetr myapp_de.po myapp.po
.SH "DESCRIPTION"
.LP
When the texts in your program change as it is developed,
a the base .po file can be regenerated using tqtfindtr,
then tqtmergetr can be used to merge the changes into the
other .po files:
tqtmergetr myapp_de.po myapp.po
tqtmergetr myapp_fr.po myapp.po
tqtmergetr myapp_ja.po myapp.po
The translation team then edits the new .po files to
translate the new or changed texts. When texts change,
the old text is included in the .po file as a comment to
guide the new translation (no "fuzzy" matching is done).
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -0,0 +1,66 @@
.TH "tqvfb" "1" "3.0.3" "Troll Tech AS, Norway." ""
.SH "NAME"
.LP
tqvfb \- Virtual framebuffer for Qt
.SH "DESCRIPTION"
.LP
The virtual framebuffer allows Qt/Embedded programs to be
developed on your desktop machine, without switching
between consoles and X11.
Start a Qt/Embedded master application (i.e., construct
QApplication with QApplication::GuiServer flag or use the
\-qws command line parameter). You will need to specify to
the server that you wish to use the virtual framebuffer
driver, e.g.:
widgets \-qws \-display QVFb:0
You may prefer to set the QWS_DISPLAY environment
variable to be QVFb:0.
tqvfb supports the following command line options:
\-width width: the width of the virtual framebuffer
(default: 240).
\-height height: the height of the virtual framebuffer
(default: 320).
\-depth depth: the depth of the virtual framebuffer (1, 8
or 32; default: 8).
\-nocursor: do not display the X11 cursor in the
framebuffer window.
\-qwsdisplay :id the Qt/Embedded display id to provide
(default: 0).
Virtual Framebuffer Design
The virtual framebuffer emulates a framebuffer using a
shared memory region (the virtual frame buffer) and a
utility to display the framebuffer in a window (tqvfb).
The regions of the display that have changed are updated
periodically, so you will see discrete snapshots of the
framebuffer rather than each individual drawing
operation. For this reason drawing problems such as
flickering may not be apparent until the program is run
using a real framebuffer.
The target refresh rate can be set via the "View|Refresh
Rate" menu item. This will cause tqvfb to check for
updated regions more quickly. The rate is a target only.
If little drawing is being done, the framebuffer will not
show any updates between drawing events. If an
application is displaying an animation the updates will
be frequent, and the application and tqvfb will compete
for processor time.
Mouse and keyboard events are passed to the Qt/Embedded
master process via named pipes.
The virtual framebuffer is a development tool only. No
security issues have been considered in the virtual
framebuffer design. It should be avoided in a production
environment; QT_NO_QWS_VFB should always be defined in
production libraries.
.SH "AUTHORS"
.LP
TrollTech <http://www.trolltech.com/>

@ -1 +0,0 @@
.so man3/qaccel.3qt

@ -1 +0,0 @@
.so man3/qaccessible.3qt

@ -1 +0,0 @@
.so man3/qaccessibleinterface.3qt

@ -1 +0,0 @@
.so man3/qaccessibleobject.3qt

@ -1 +0,0 @@
.so man3/qaction.3qt

@ -1 +0,0 @@
.so man3/qactiongroup.3qt

@ -1 +0,0 @@
.so man3/qapplication.3qt

@ -1 +0,0 @@
.so man3/qasciicache.3qt

@ -1 +0,0 @@
.so man3/qasciicacheiterator.3qt

@ -1 +0,0 @@
.so man3/qasciidict.3qt

@ -1 +0,0 @@
.so man3/qasciidictiterator.3qt

@ -1 +0,0 @@
.so man3/qassistantclient.3qt

@ -1 +0,0 @@
.so man3/qaxaggregated.3qt

@ -1 +0,0 @@
.so man3/qaxbase.3qt

@ -1 +0,0 @@
.so man3/qaxbindable.3qt

@ -1 +0,0 @@
.so man3/qaxfactory.3qt

@ -1 +0,0 @@
.so man3/qaxobject.3qt

@ -1 +0,0 @@
.so man3/qaxscript.3qt

@ -1 +0,0 @@
.so man3/qaxscriptengine.3qt

@ -1 +0,0 @@
.so man3/qaxscriptmanager.3qt

@ -1 +0,0 @@
.so man3/qaxwidget.3qt

@ -1 +0,0 @@
.so man3/qbig5codec.3qt

@ -1 +0,0 @@
.so man3/qbig5hkscscodec.3qt

@ -1 +0,0 @@
.so man3/qbitarray.3qt

@ -1 +0,0 @@
.so man3/qbitval.3qt

@ -1 +0,0 @@
.so man3/qbitmap.3qt

@ -1 +0,0 @@
.so man3/qboxlayout.3qt

@ -1 +0,0 @@
.so man3/qbrush.3qt

@ -1 +0,0 @@
.so man3/qbuffer.3qt

@ -1 +0,0 @@
.so man3/qbutton.3qt

@ -1 +0,0 @@
.so man3/qbuttongroup.3qt

@ -1 +0,0 @@
.so man3/qbytearray.3qt

@ -1 +0,0 @@
.so man3/qcdestyle.3qt

@ -1 +0,0 @@
.so man3/qcstring.3qt

@ -1 +0,0 @@
.so man3/qcache.3qt

@ -1 +0,0 @@
.so man3/qcacheiterator.3qt

@ -1 +0,0 @@
.so man3/qcanvas.3qt

@ -1 +0,0 @@
.so man3/qcanvasellipse.3qt

@ -1 +0,0 @@
.so man3/qcanvasitem.3qt

@ -1 +0,0 @@
.so man3/qcanvasitemlist.3qt

@ -1 +0,0 @@
.so man3/qcanvasline.3qt

@ -1 +0,0 @@
.so man3/qcanvaspixmap.3qt

@ -1 +0,0 @@
.so man3/qcanvaspixmaparray.3qt

@ -1 +0,0 @@
.so man3/qcanvaspolygon.3qt

@ -1 +0,0 @@
.so man3/qcanvaspolygonalitem.3qt

@ -1 +0,0 @@
.so man3/qcanvasrectangle.3qt

@ -1 +0,0 @@
.so man3/qcanvasspline.3qt

@ -1 +0,0 @@
.so man3/qcanvassprite.3qt

@ -1 +0,0 @@
.so man3/qcanvastext.3qt

@ -1 +0,0 @@
.so man3/qcanvasview.3qt

@ -1 +0,0 @@
.so man3/qchar.3qt

@ -1 +0,0 @@
.so man3/qcharref.3qt

@ -1 +0,0 @@
.so man3/qcheckbox.3qt

@ -1 +0,0 @@
.so man3/qchecklistitem.3qt

@ -1 +0,0 @@
.so man3/qchecktableitem.3qt

@ -1 +0,0 @@
.so man3/qchildevent.3qt

@ -1 +0,0 @@
.so man3/qclipboard.3qt

@ -1 +0,0 @@
.so man3/qcloseevent.3qt

@ -1 +0,0 @@
.so man3/qcolor.3qt

@ -1 +0,0 @@
.so man3/qcolordialog.3qt

@ -1 +0,0 @@
.so man3/qcolordrag.3qt

@ -1 +0,0 @@
.so man3/qcolorgroup.3qt

@ -1 +0,0 @@
.so man3/qcombobox.3qt

@ -1 +0,0 @@
.so man3/qcombotableitem.3qt

@ -1 +0,0 @@
.so man3/qcommonstyle.3qt

@ -1 +0,0 @@
.so man3/qconststring.3qt

@ -1 +0,0 @@
.so man3/qcontextmenuevent.3qt

@ -1 +0,0 @@
.so man3/qcopchannel.3qt

@ -1 +0,0 @@
.so man3/qcursor.3qt

@ -1 +0,0 @@
.so man3/qcustomevent.3qt

@ -1 +0,0 @@
.so man3/qcustommenuitem.3qt

@ -1 +0,0 @@
.so man3/qdatabrowser.3qt

@ -1 +0,0 @@
.so man3/qdatastream.3qt

@ -1 +0,0 @@
.so man3/qdatatable.3qt

@ -1 +0,0 @@
.so man3/qdataview.3qt

@ -1 +0,0 @@
.so man3/qdate.3qt

@ -1 +0,0 @@
.so man3/qdateedit.3qt

@ -1 +0,0 @@
.so man3/qdatetime.3qt

@ -1 +0,0 @@
.so man3/qdatetimeedit.3qt

@ -1 +0,0 @@
.so man3/qdatetimeeditbase.3qt

@ -1 +0,0 @@
.so man3/qdeepcopy.3qt

@ -1 +0,0 @@
.so man3/qdesktopwidget.3qt

@ -1 +0,0 @@
.so man3/qdial.3qt

@ -1 +0,0 @@
.so man3/qdialog.3qt

@ -1 +0,0 @@
.so man3/qdict.3qt

@ -1 +0,0 @@
.so man3/qdictiterator.3qt

@ -1 +0,0 @@
.so man3/qdir.3qt

@ -1 +0,0 @@
.so man3/qdirectpainter.3qt

@ -1 +0,0 @@
.so man3/qdns.3qt

@ -1 +0,0 @@
.so man3/qdockarea.3qt

@ -1 +0,0 @@
.so man3/qdockwindow.3qt

@ -1 +0,0 @@
.so man3/qdomattr.3qt

@ -1 +0,0 @@
.so man3/qdomcdatasection.3qt

@ -1 +0,0 @@
.so man3/qdomcharacterdata.3qt

@ -1 +0,0 @@
.so man3/qdomcomment.3qt

@ -1 +0,0 @@
.so man3/qdomdocument.3qt

@ -1 +0,0 @@
.so man3/qdomdocumentfragment.3qt

@ -1 +0,0 @@
.so man3/qdomdocumenttype.3qt

@ -1 +0,0 @@
.so man3/qdomelement.3qt

@ -1 +0,0 @@
.so man3/qdomentity.3qt

@ -1 +0,0 @@
.so man3/qdomentityreference.3qt

@ -1 +0,0 @@
.so man3/qdomimplementation.3qt

@ -1 +0,0 @@
.so man3/qdomnamednodemap.3qt

@ -1 +0,0 @@
.so man3/qdomnode.3qt

@ -1 +0,0 @@
.so man3/qdomnodelist.3qt

@ -1 +0,0 @@
.so man3/qdomnotation.3qt

@ -1 +0,0 @@
.so man3/qdomprocessinginstruction.3qt

@ -1 +0,0 @@
.so man3/qdomtext.3qt

@ -1 +0,0 @@
.so man3/qdoublevalidator.3qt

@ -1 +0,0 @@
.so man3/qdragenterevent.3qt

@ -1 +0,0 @@
.so man3/qdragleaveevent.3qt

@ -1 +0,0 @@
.so man3/qdragmoveevent.3qt

@ -1 +0,0 @@
.so man3/qdragobject.3qt

@ -1 +0,0 @@
.so man3/qdropevent.3qt

@ -1 +0,0 @@
.so man3/qeditorfactory.3qt

@ -1 +0,0 @@
.so man3/qerrormessage.3qt

@ -1 +0,0 @@
.so man3/qeucjpcodec.3qt

@ -1 +0,0 @@
.so man3/qeuckrcodec.3qt

@ -1 +0,0 @@
.so man3/qevent.3qt

@ -1 +0,0 @@
.so man3/qeventloop.3qt

@ -1 +0,0 @@
.so man3/qfile.3qt

@ -1 +0,0 @@
.so man3/qfiledialog.3qt

@ -1 +0,0 @@
.so man3/qfileiconprovider.3qt

@ -1 +0,0 @@
.so man3/qfileinfo.3qt

@ -1 +0,0 @@
.so man3/qfilepreview.3qt

@ -1 +0,0 @@
.so man3/qfocusdata.3qt

@ -1 +0,0 @@
.so man3/qfocusevent.3qt

@ -1 +0,0 @@
.so man3/qfont.3qt

@ -1 +0,0 @@
.so man3/qfontdatabase.3qt

@ -1 +0,0 @@
.so man3/qfontdialog.3qt

@ -1 +0,0 @@
.so man3/qfontinfo.3qt

@ -1 +0,0 @@
.so man3/qfontmanager.3qt

@ -1 +0,0 @@
.so man3/qfontmetrics.3qt

@ -1 +0,0 @@
.so man3/qframe.3qt

@ -1 +0,0 @@
.so man3/qftp.3qt

@ -1 +0,0 @@
.so man3/qgl.3qt

@ -1 +0,0 @@
.so man3/qglcolormap.3qt

@ -1 +0,0 @@
.so man3/qglcontext.3qt

@ -1 +0,0 @@
.so man3/qglformat.3qt

@ -1 +0,0 @@
.so man3/qglwidget.3qt

@ -1 +0,0 @@
.so man3/qglayoutiterator.3qt

@ -1 +0,0 @@
.so man3/qgb18030codec.3qt

@ -1 +0,0 @@
.so man3/qgb2312codec.3qt

@ -1 +0,0 @@
.so man3/qgbkcodec.3qt

@ -1 +0,0 @@
.so man3/qgfxdriverfactory.3qt

@ -1 +0,0 @@
.so man3/qgfxdriverplugin.3qt

@ -1 +0,0 @@
.so man3/qgrid.3qt

@ -1 +0,0 @@
.so man3/qgridlayout.3qt

@ -1 +0,0 @@
.so man3/qgridview.3qt

@ -1 +0,0 @@
.so man3/qgroupbox.3qt

@ -1 +0,0 @@
.so man3/qguardedptr.3qt

@ -1 +0,0 @@
.so man3/qhbox.3qt

@ -1 +0,0 @@
.so man3/qhboxlayout.3qt

@ -1 +0,0 @@
.so man3/qhbuttongroup.3qt

@ -1 +0,0 @@
.so man3/qhgroupbox.3qt

@ -1 +0,0 @@
.so man3/qheader.3qt

@ -1 +0,0 @@
.so man3/qhebrewcodec.3qt

@ -1 +0,0 @@
.so man3/qhideevent.3qt

@ -1 +0,0 @@
.so man3/qhostaddress.3qt

@ -1 +0,0 @@
.so man3/qhttp.3qt

@ -1 +0,0 @@
.so man3/qhttpheader.3qt

@ -1 +0,0 @@
.so man3/qhttprequestheader.3qt

@ -1 +0,0 @@
.so man3/qhttpresponseheader.3qt

@ -1 +0,0 @@
.so man3/qimevent.3qt

@ -1 +0,0 @@
.so man3/qiodevice.3qt

@ -1 +0,0 @@
.so man3/qicondrag.3qt

@ -1 +0,0 @@
.so man3/qicondragevent.3qt

@ -1 +0,0 @@
.so man3/qicondragitem.3qt

@ -1 +0,0 @@
.so man3/qiconfactory.3qt

@ -1 +0,0 @@
.so man3/qiconset.3qt

@ -1 +0,0 @@
.so man3/qiconview.3qt

@ -1 +0,0 @@
.so man3/qiconviewitem.3qt

@ -1 +0,0 @@
.so man3/qimage.3qt

@ -1 +0,0 @@
.so man3/qimageconsumer.3qt

@ -1 +0,0 @@
.so man3/qimagedecoder.3qt

@ -1 +0,0 @@
.so man3/qimagedrag.3qt

@ -1 +0,0 @@
.so man3/qimageformat.3qt

@ -1 +0,0 @@
.so man3/qimageformatplugin.3qt

@ -1 +0,0 @@
.so man3/qimageformattype.3qt

@ -1 +0,0 @@
.so man3/qimageio.3qt

@ -1 +0,0 @@
.so man3/qinputdialog.3qt

@ -1 +0,0 @@
.so man3/qintcache.3qt

@ -1 +0,0 @@
.so man3/qintcacheiterator.3qt

@ -1 +0,0 @@
.so man3/qintdict.3qt

@ -1 +0,0 @@
.so man3/qintdictiterator.3qt

@ -1 +0,0 @@
.so man3/qintvalidator.3qt

@ -1 +0,0 @@
.so man3/qjiscodec.3qt

@ -1 +0,0 @@
.so man3/qkbddriverfactory.3qt

@ -1 +0,0 @@
.so man3/qkbddriverplugin.3qt

@ -1 +0,0 @@
.so man3/qkeyevent.3qt

@ -1 +0,0 @@
.so man3/qkeysequence.3qt

@ -1 +0,0 @@
.so man3/qlcdnumber.3qt

@ -1 +0,0 @@
.so man3/qlabel.3qt

@ -1 +0,0 @@
.so man3/qlayout.3qt

@ -1 +0,0 @@
.so man3/qlayoutitem.3qt

@ -1 +0,0 @@
.so man3/qlayoutiterator.3qt

@ -1 +0,0 @@
.so man3/qlibrary.3qt

@ -1 +0,0 @@
.so man3/qlineedit.3qt

@ -1 +0,0 @@
.so man3/qlistbox.3qt

@ -1 +0,0 @@
.so man3/qlistboxitem.3qt

@ -1 +0,0 @@
.so man3/qlistboxpixmap.3qt

@ -1 +0,0 @@
.so man3/qlistboxtext.3qt

@ -1 +0,0 @@
.so man3/qlistview.3qt

@ -1 +0,0 @@
.so man3/qlistviewitem.3qt

@ -1 +0,0 @@
.so man3/qlistviewitemiterator.3qt

@ -1 +0,0 @@
.so man3/qlocalfs.3qt

@ -1 +0,0 @@
.so man3/qlocale.3qt

@ -1 +0,0 @@
.so man3/qmacmime.3qt

@ -1 +0,0 @@
.so man3/qmacstyle.3qt

@ -1 +0,0 @@
.so man3/qmainwindow.3qt

@ -1 +0,0 @@
.so man3/qmap.3qt

@ -1 +0,0 @@
.so man3/qmapconstiterator.3qt

@ -1 +0,0 @@
.so man3/qmapiterator.3qt

@ -1 +0,0 @@
.so man3/qmemarray.3qt

@ -1 +0,0 @@
.so man3/qmenubar.3qt

@ -1 +0,0 @@
.so man3/qmenudata.3qt

@ -1 +0,0 @@
.so man3/qmessagebox.3qt

@ -1 +0,0 @@
.so man3/qmetaobject.3qt

@ -1 +0,0 @@
.so man3/qmetaproperty.3qt

@ -1 +0,0 @@
.so man3/qmimesource.3qt

@ -1 +0,0 @@
.so man3/qmimesourcefactory.3qt

@ -1 +0,0 @@
.so man3/qmotif.3qt

@ -1 +0,0 @@
.so man3/qmotifdialog.3qt

@ -1 +0,0 @@
.so man3/qmotifplusstyle.3qt

@ -1 +0,0 @@
.so man3/qmotifstyle.3qt

@ -1 +0,0 @@
.so man3/qmotifwidget.3qt

@ -1 +0,0 @@
.so man3/qmousedriverfactory.3qt

@ -1 +0,0 @@
.so man3/qmousedriverplugin.3qt

@ -1 +0,0 @@
.so man3/qmouseevent.3qt

@ -1 +0,0 @@
.so man3/qmoveevent.3qt

@ -1 +0,0 @@
.so man3/qmovie.3qt

@ -1 +0,0 @@
.so man3/qmutex.3qt

@ -1 +0,0 @@
.so man3/qmutexlocker.3qt

@ -1 +0,0 @@
.so man3/qnpinstance.3qt

@ -1 +0,0 @@
.so man3/qnpstream.3qt

@ -1 +0,0 @@
.so man3/qnpwidget.3qt

@ -1 +0,0 @@
.so man3/qnplugin.3qt

@ -1 +0,0 @@
.so man3/qnetworkoperation.3qt

@ -1 +0,0 @@
.so man3/qnetworkprotocol.3qt

@ -1 +0,0 @@
.so man3/qobject.3qt

@ -1 +0,0 @@
.so man3/qobjectcleanuphandler.3qt

@ -1 +0,0 @@
.so man3/qobjectlist.3qt

@ -1 +0,0 @@
.so man3/qobjectlistiterator.3qt

@ -1 +0,0 @@
.so man3/qpngimagepacker.3qt

@ -1 +0,0 @@
.so man3/qpaintdevice.3qt

@ -1 +0,0 @@
.so man3/qpaintdevicemetrics.3qt

@ -1 +0,0 @@
.so man3/qpaintevent.3qt

@ -1 +0,0 @@
.so man3/qpainter.3qt

@ -1 +0,0 @@
.so man3/qpair.3qt

@ -1 +0,0 @@
.so man3/qpalette.3qt

@ -1 +0,0 @@
.so man3/qpen.3qt

@ -1 +0,0 @@
.so man3/qpicture.3qt

@ -1 +0,0 @@
.so man3/qpixmap.3qt

@ -1 +0,0 @@
.so man3/qpixmapcache.3qt

@ -1 +0,0 @@
.so man3/qplatinumstyle.3qt

@ -1 +0,0 @@
.so man3/qpoint.3qt

@ -1 +0,0 @@
.so man3/qpointarray.3qt

@ -1 +0,0 @@
.so man3/qpopupmenu.3qt

@ -1 +0,0 @@
.so man3/qprinter.3qt

@ -1 +0,0 @@
.so man3/qprocess.3qt

@ -1 +0,0 @@
.so man3/qprogressbar.3qt

@ -1 +0,0 @@
.so man3/qprogressdialog.3qt

@ -1 +0,0 @@
.so man3/qptrcollection.3qt

@ -1 +0,0 @@
.so man3/qptrdict.3qt

@ -1 +0,0 @@
.so man3/qptrdictiterator.3qt

@ -1 +0,0 @@
.so man3/qptrlist.3qt

@ -1 +0,0 @@
.so man3/qptrlistiterator.3qt

@ -1 +0,0 @@
.so man3/qptrqueue.3qt

@ -1 +0,0 @@
.so man3/qptrstack.3qt

@ -1 +0,0 @@
.so man3/qptrvector.3qt

@ -1 +0,0 @@
.so man3/qpushbutton.3qt

@ -1 +0,0 @@
.so man3/qradiobutton.3qt

@ -1 +0,0 @@
.so man3/qrangecontrol.3qt

@ -1 +0,0 @@
.so man3/qrect.3qt

@ -1 +0,0 @@
.so man3/qregexp.3qt

@ -1 +0,0 @@
.so man3/qregexpvalidator.3qt

@ -1 +0,0 @@
.so man3/qregion.3qt

@ -1 +0,0 @@
.so man3/qresizeevent.3qt

@ -1 +0,0 @@
.so man3/qsgistyle.3qt

@ -1 +0,0 @@
.so man3/qscreen.3qt

@ -1 +0,0 @@
.so man3/qscrollbar.3qt

@ -1 +0,0 @@
.so man3/qscrollview.3qt

@ -1 +0,0 @@
.so man3/qsemaphore.3qt

@ -1 +0,0 @@
.so man3/qserversocket.3qt

@ -1 +0,0 @@
.so man3/qsessionmanager.3qt

@ -1 +0,0 @@
.so man3/qsettings.3qt

@ -1 +0,0 @@
.so man3/qshowevent.3qt

@ -1 +0,0 @@
.so man3/qsignal.3qt

@ -1 +0,0 @@
.so man3/qsignalmapper.3qt

@ -1 +0,0 @@
.so man3/qsimplerichtext.3qt

@ -1 +0,0 @@
.so man3/qsize.3qt

@ -1 +0,0 @@
.so man3/qsizegrip.3qt

@ -1 +0,0 @@
.so man3/qsizepolicy.3qt

@ -1 +0,0 @@
.so man3/qsjiscodec.3qt

@ -1 +0,0 @@
.so man3/qslider.3qt

@ -1 +0,0 @@
.so man3/qsocket.3qt

@ -1 +0,0 @@
.so man3/qsocketdevice.3qt

@ -1 +0,0 @@
.so man3/qsocketnotifier.3qt

@ -1 +0,0 @@
.so man3/qsound.3qt

@ -1 +0,0 @@
.so man3/qspaceritem.3qt

@ -1 +0,0 @@
.so man3/qspinbox.3qt

@ -1 +0,0 @@
.so man3/qsplashscreen.3qt

@ -1 +0,0 @@
.so man3/qsplitter.3qt

@ -1 +0,0 @@
.so man3/qsql.3qt

@ -1 +0,0 @@
.so man3/qsqlcursor.3qt

@ -1 +0,0 @@
.so man3/qsqldatabase.3qt

@ -1 +0,0 @@
.so man3/qsqldriver.3qt

@ -1 +0,0 @@
.so man3/qsqldriverplugin.3qt

@ -1 +0,0 @@
.so man3/qsqleditorfactory.3qt

@ -1 +0,0 @@
.so man3/qsqlerror.3qt

@ -1 +0,0 @@
.so man3/qsqlfield.3qt

@ -1 +0,0 @@
.so man3/qsqlfieldinfo.3qt

@ -1 +0,0 @@
.so man3/qsqlform.3qt

@ -1 +0,0 @@
.so man3/qsqlindex.3qt

@ -1 +0,0 @@
.so man3/qsqlpropertymap.3qt

@ -1 +0,0 @@
.so man3/qsqlquery.3qt

@ -1 +0,0 @@
.so man3/qsqlrecord.3qt

@ -1 +0,0 @@
.so man3/qsqlrecordinfo.3qt

@ -1 +0,0 @@
.so man3/qsqlresult.3qt

@ -1 +0,0 @@
.so man3/qsqlselectcursor.3qt

@ -1 +0,0 @@
.so man3/qstatusbar.3qt

@ -1 +0,0 @@
.so man3/qstoreddrag.3qt

@ -1 +0,0 @@
.so man3/qstrilist.3qt

@ -1 +0,0 @@
.so man3/qstrlist.3qt

@ -1 +0,0 @@
.so man3/qstrlistiterator.3qt

@ -1 +0,0 @@
.so man3/qstring.3qt

@ -1 +0,0 @@
.so man3/qstringlist.3qt

@ -1 +0,0 @@
.so man3/qstyle.3qt

@ -1 +0,0 @@
.so man3/qstylefactory.3qt

@ -1 +0,0 @@
.so man3/qstyleoption.3qt

@ -1 +0,0 @@
.so man3/qstyleplugin.3qt

@ -1 +0,0 @@
.so man3/qstylesheet.3qt

@ -1 +0,0 @@
.so man3/qstylesheetitem.3qt

@ -1 +0,0 @@
.so man3/qsyntaxhighlighter.3qt

@ -1 +0,0 @@
.so man3/qtab.3qt

@ -1 +0,0 @@
.so man3/qtabbar.3qt

@ -1 +0,0 @@
.so man3/qtabdialog.3qt

@ -1 +0,0 @@
.so man3/qtabwidget.3qt

@ -1 +0,0 @@
.so man3/qtable.3qt

@ -1 +0,0 @@
.so man3/qtableitem.3qt

@ -1 +0,0 @@
.so man3/qtableselection.3qt

@ -1 +0,0 @@
.so man3/qtabletevent.3qt

@ -1 +0,0 @@
.so man3/qtextbrowser.3qt

@ -1 +0,0 @@
.so man3/qtextcodec.3qt

@ -1 +0,0 @@
.so man3/qtextcodecplugin.3qt

@ -1 +0,0 @@
.so man3/qtextdecoder.3qt

@ -1 +0,0 @@
.so man3/qtextdrag.3qt

@ -1 +0,0 @@
.so man3/qtextedit.3qt

@ -1 +0,0 @@
.so man3/qtextencoder.3qt

@ -1 +0,0 @@
.so man3/qtextistream.3qt

@ -1 +0,0 @@
.so man3/qtextostream.3qt

@ -1 +0,0 @@
.so man3/qtextstream.3qt

@ -1 +0,0 @@
.so man3/qthread.3qt

@ -1 +0,0 @@
.so man3/qthreadstorage.3qt

@ -1 +0,0 @@
.so man3/qtime.3qt

@ -1 +0,0 @@
.so man3/qtimeedit.3qt

@ -1 +0,0 @@
.so man3/qtimer.3qt

@ -1 +0,0 @@
.so man3/qtimerevent.3qt

@ -1 +0,0 @@
.so man3/qtoolbar.3qt

@ -1 +0,0 @@
.so man3/qtoolbox.3qt

@ -1 +0,0 @@
.so man3/qtoolbutton.3qt

@ -1 +0,0 @@
.so man3/qtooltip.3qt

@ -1 +0,0 @@
.so man3/qtooltipgroup.3qt

@ -1 +0,0 @@
.so man3/qtranslator.3qt

@ -1 +0,0 @@
.so man3/qtranslatormessage.3qt

@ -1 +0,0 @@
.so man3/qtsciicodec.3qt

@ -1 +0,0 @@
.so man3/quridrag.3qt

@ -1 +0,0 @@
.so man3/qurl.3qt

@ -1 +0,0 @@
.so man3/qurlinfo.3qt

@ -1 +0,0 @@
.so man3/qurloperator.3qt

@ -1 +0,0 @@
.so man3/quuid.3qt

@ -1 +0,0 @@
.so man3/qvbox.3qt

@ -1 +0,0 @@
.so man3/qvboxlayout.3qt

@ -1 +0,0 @@
.so man3/qvbuttongroup.3qt

@ -1 +0,0 @@
.so man3/qvgroupbox.3qt

@ -1 +0,0 @@
.so man3/qvalidator.3qt

@ -1 +0,0 @@
.so man3/qvaluelist.3qt

@ -1 +0,0 @@
.so man3/qvaluelistconstiterator.3qt

@ -1 +0,0 @@
.so man3/qvaluelistiterator.3qt

@ -1 +0,0 @@
.so man3/qvaluestack.3qt

@ -1 +0,0 @@
.so man3/qvaluevector.3qt

@ -1 +0,0 @@
.so man3/qvariant.3qt

@ -1 +0,0 @@
.so man3/qwmatrix.3qt

@ -1 +0,0 @@
.so man3/qwsdecoration.3qt

@ -1 +0,0 @@
.so man3/qwsinputmethod.3qt

@ -1 +0,0 @@
.so man3/qwskeyboardhandler.3qt

@ -1 +0,0 @@
.so man3/qwsmousehandler.3qt

@ -1 +0,0 @@
.so man3/qwsserver.3qt

@ -1 +0,0 @@
.so man3/qwswindow.3qt

@ -1 +0,0 @@
.so man3/qwaitcondition.3qt

@ -1 +0,0 @@
.so man3/qwhatsthis.3qt

@ -1 +0,0 @@
.so man3/qwheelevent.3qt

@ -1 +0,0 @@
.so man3/qwidget.3qt

@ -1 +0,0 @@
.so man3/qwidgetfactory.3qt

@ -1 +0,0 @@
.so man3/qwidgetitem.3qt

@ -1 +0,0 @@
.so man3/qwidgetplugin.3qt

@ -1 +0,0 @@
.so man3/qwidgetstack.3qt

@ -1 +0,0 @@
.so man3/qwindowsmime.3qt

@ -1 +0,0 @@
.so man3/qwindowsstyle.3qt

@ -1 +0,0 @@
.so man3/qwizard.3qt

@ -1 +0,0 @@
.so man3/qworkspace.3qt

@ -1 +0,0 @@
.so man3/qxmlattributes.3qt

@ -1 +0,0 @@
.so man3/qxmlcontenthandler.3qt

@ -1 +0,0 @@
.so man3/qxmldtdhandler.3qt

@ -1 +0,0 @@
.so man3/qxmldeclhandler.3qt

@ -1 +0,0 @@
.so man3/qxmldefaulthandler.3qt

@ -1 +0,0 @@
.so man3/qxmlentityresolver.3qt

@ -1 +0,0 @@
.so man3/qxmlerrorhandler.3qt

@ -1 +0,0 @@
.so man3/qxmlinputsource.3qt

@ -1 +0,0 @@
.so man3/qxmllexicalhandler.3qt

@ -1 +0,0 @@
.so man3/qxmllocator.3qt

@ -1 +0,0 @@
.so man3/qxmlnamespacesupport.3qt

@ -1 +0,0 @@
.so man3/qxmlparseexception.3qt

@ -1 +0,0 @@
.so man3/qxmlreader.3qt

@ -1 +0,0 @@
.so man3/qxmlsimplereader.3qt

@ -1 +0,0 @@
.so man3/qt.3qt

@ -0,0 +1 @@
.so man3/tqaccel.3qt

@ -0,0 +1 @@
.so man3/tqaccessible.3qt

@ -0,0 +1 @@
.so man3/tqaccessibleinterface.3qt

@ -0,0 +1 @@
.so man3/tqaccessibleobject.3qt

@ -0,0 +1 @@
.so man3/tqaction.3qt

@ -0,0 +1 @@
.so man3/tqactiongroup.3qt

@ -0,0 +1 @@
.so man3/tqapplication.3qt

@ -0,0 +1 @@
.so man3/tqasciicache.3qt

@ -0,0 +1 @@
.so man3/tqasciicacheiterator.3qt

@ -0,0 +1 @@
.so man3/tqasciidict.3qt

@ -0,0 +1 @@
.so man3/tqasciidictiterator.3qt

@ -0,0 +1 @@
.so man3/tqassistantclient.3qt

@ -0,0 +1 @@
.so man3/tqaxaggregated.3qt

@ -0,0 +1 @@
.so man3/tqaxbase.3qt

@ -0,0 +1 @@
.so man3/tqaxbindable.3qt

@ -0,0 +1 @@
.so man3/tqaxfactory.3qt

@ -0,0 +1 @@
.so man3/tqaxobject.3qt

@ -0,0 +1 @@
.so man3/tqaxscript.3qt

@ -0,0 +1 @@
.so man3/tqaxscriptengine.3qt

@ -0,0 +1 @@
.so man3/tqaxscriptmanager.3qt

@ -0,0 +1 @@
.so man3/tqaxwidget.3qt

@ -0,0 +1 @@
.so man3/tqbig5codec.3qt

@ -0,0 +1 @@
.so man3/tqbig5hkscscodec.3qt

@ -0,0 +1 @@
.so man3/tqbitarray.3qt

@ -0,0 +1 @@
.so man3/tqbitval.3qt

@ -0,0 +1 @@
.so man3/tqbitmap.3qt

@ -0,0 +1 @@
.so man3/tqboxlayout.3qt

@ -0,0 +1 @@
.so man3/tqbrush.3qt

@ -0,0 +1 @@
.so man3/tqbuffer.3qt

@ -0,0 +1 @@
.so man3/tqbutton.3qt

@ -0,0 +1 @@
.so man3/tqbuttongroup.3qt

@ -0,0 +1 @@
.so man3/tqbytearray.3qt

@ -0,0 +1 @@
.so man3/tqcdestyle.3qt

@ -0,0 +1 @@
.so man3/tqcstring.3qt

@ -0,0 +1 @@
.so man3/tqcache.3qt

@ -0,0 +1 @@
.so man3/tqcacheiterator.3qt

@ -0,0 +1 @@
.so man3/tqcanvas.3qt

@ -0,0 +1 @@
.so man3/tqcanvasellipse.3qt

@ -0,0 +1 @@
.so man3/tqcanvasitem.3qt

@ -0,0 +1 @@
.so man3/tqcanvasitemlist.3qt

@ -0,0 +1 @@
.so man3/tqcanvasline.3qt

@ -0,0 +1 @@
.so man3/tqcanvaspixmap.3qt

@ -0,0 +1 @@
.so man3/tqcanvaspixmaparray.3qt

@ -0,0 +1 @@
.so man3/tqcanvaspolygon.3qt

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save