1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
#include "conversion.h"
#include <kdebug.h>
#include <tdelocale.h>
TQString Conversion::importAlignment( const TQString& align )
{
if ( align == "center" || align == "justify" )
return align;
if ( align == "start" )
return "left";
if ( align == "end" )
return "right";
kdWarning(30518) << "Conversion::importAlignment unknown alignment " << align << endl;
return "auto";
}
TQString Conversion::exportAlignment( const TQString& align )
{
if ( align == "center" || align == "justify" )
return align;
if ( align == "left" || align == "auto" ) // auto handled by text-auto-align
return "start";
if ( align == "right" )
return "end";
kdWarning(30518) << "Conversion::exportAlignment unknown alignment " << align << endl;
return "auto";
}
TQPair<int,TQString> Conversion::importWrapping( const TQString& oowrap )
{
if ( oowrap == "none" )
// 'no wrap' means 'avoid horizontal space'
return tqMakePair( 2, TQString() );
if ( oowrap == "left" || oowrap == "right" )
// Left and right, no problem
return tqMakePair( 1, oowrap );
if ( oowrap == "run-through" )
return tqMakePair( 0, TQString() );
if ( oowrap == "biggest" ) // OASIS extension
return tqMakePair( 1, TQString::fromLatin1( "biggest" ) );
////if ( oowrap == "parallel" || oowrap == "dynamic" )
// dynamic is called "optimal" in the OO GUI. It's different from biggest because it can lead to parallel.
// Those are not supported in KWord, let's use biggest instead
return tqMakePair( 1, TQString::fromLatin1( "biggest" ) );
}
TQString Conversion::exportWrapping( const TQPair<int,TQString>& runAroundAttribs )
{
switch( runAroundAttribs.first ) {
case 0:
return "run-through";
case 1: // left, right, or biggest -> ok
return runAroundAttribs.second;
case 2:
return "none";
default:
return "ERROR"; // ERROR
}
}
int Conversion::importOverflowBehavior( const TQString& oasisOverflowBehavior )
{
if ( oasisOverflowBehavior == "auto-extend-frame" )
return 0; // AutoExtendFrame
if ( oasisOverflowBehavior == "auto-create-new-frame" )
return 1; // AutoCreateNewFrame
if ( oasisOverflowBehavior == "ignore" )
return 2; // Ignore extra text
kdWarning(30518) << "Invalid overflow behavior " << oasisOverflowBehavior << endl;
return 0;
}
TQString Conversion::exportOverflowBehavior( const TQString& kwordAutoCreateNewFrame )
{
switch ( kwordAutoCreateNewFrame.toInt() ) {
case 1:
return "auto-create-new-frame";
case 2:
return "ignore";
default:
case 0:
return "auto-extend-frame";
}
}
int Conversion::importCounterType( const TQString& numFormat )
{
if ( numFormat == "1" )
return 1;
if ( numFormat == "a" )
return 2;
if ( numFormat == "A" )
return 3;
if ( numFormat == "i" )
return 4;
if ( numFormat == "I" )
return 5;
return 0;
}
TQString Conversion::headerTypeToFramesetName( const TQString& localName, bool hasEvenOdd )
{
if ( localName == "header" )
return hasEvenOdd ? i18n("Odd Pages Header") : i18n( "Header" );
if ( localName == "header-left" )
return i18n("Even Pages Header");
if ( localName == "footer" )
return hasEvenOdd ? i18n("Odd Pages Footer") : i18n( "Footer" );
if ( localName == "footer-left" )
return i18n("Even Pages Footer");
kdWarning(30518) << "Unknown tag in headerTypeToFramesetName: " << localName << endl;
// ######
//return i18n("First Page Header");
//return i18n("First Page Footer");
return TQString();
}
int Conversion::headerTypeToFrameInfo( const TQString& localName, bool /*hasEvenOdd*/ )
{
if ( localName == "header" )
return 3; // odd headers
if ( localName == "header-left" )
return 2; // even headers
if ( localName == "footer" )
return 6; // odd footers
if ( localName == "footer-left" )
return 5; // even footers
// ### return 1; // first header
// ### return 4; // first footer
return 0;
}
|