kword

KWordDocIface.cpp
1/* This file is part of the KDE project
2 Copyright (C) 2001, 2002 Laurent MONTEL <lmontel@mandrakesoft.com>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18*/
19#include "KWordDocIface.h"
20#include "KWTextFrameSet.h"
21#include "KWordFrameSetIface.h"
22#include "KWDocument.h"
23#include "KWVariable.h"
24#include "KWPageManager.h"
25
26#include <tdeapplication.h>
27#include <dcopclient.h>
28#include <KoVariable.h>
29#include <KoAutoFormat.h>
30
31KWordDocIface::KWordDocIface( KWDocument *doc_ )
32 : KoDocumentIface( doc_ )
33{
34 doc = doc_;
35}
36
37DCOPRef KWordDocIface::textFrameSet( int num )
38{
39 if( num>= (int)doc->frameSetCount())
40 return DCOPRef();
41 return DCOPRef( kapp->dcopClient()->appId(),
42 doc->textFrameSet( num)->dcopObject()->objId() );
43}
44
45DCOPRef KWordDocIface::frameSet( int num )
46{
47 if( num>= (int)doc->frameSetCount())
48 return DCOPRef();
49 return DCOPRef( kapp->dcopClient()->appId(),
50 doc->frameSet( num)->dcopObject()->objId() );
51}
52
53int KWordDocIface::numFrameSets()const
54{
55 return doc->frameSetCount();
56}
57
58int KWordDocIface::frameSetCount()const
59{
60 return doc->frameSetCount();
61}
62
63unsigned int KWordDocIface::nbColumns()const
64{
65 return doc->numColumns();
66}
67
68double KWordDocIface::ptPageTop( int pgNum )const
69{
70 return doc->pageManager()->topOfPage(pgNum);
71}
72
73TQString KWordDocIface::unitName()const
74{
75 return doc->unitName();
76}
77
78void KWordDocIface::recalcAllVariables()
79{
80 //recalc all variable
81 doc->recalcVariables(VT_ALL);
82}
83
84void KWordDocIface::recalcVariables(int _var)
85{
86 doc->recalcVariables(_var);
87}
88
89void KWordDocIface::recalcVariables(const TQString &varName)
90{
91 if(varName=="VT_DATE")
92 doc->recalcVariables(0);
93 else if(varName=="VT_TIME")
94 doc->recalcVariables(2);
95 else if(varName=="VT_PGNUM")
96 doc->recalcVariables(4);
97 else if(varName=="VT_CUSTOM")
98 doc->recalcVariables(6);
99 else if(varName=="VT_MAILMERGE")
100 doc->recalcVariables(7);
101 else if(varName=="VT_FIELD")
102 doc->recalcVariables(8);
103 else if(varName=="VT_LINK")
104 doc->recalcVariables(9);
105 else if(varName=="VT_NOTE")
106 doc->recalcVariables(10);
107 else if(varName=="VT_FOOTNOTE")
108 doc->recalcVariables(11);
109 else if(varName=="VT_ALL")
110 doc->recalcVariables(256);
111}
112
113
114bool KWordDocIface::showRuler() const
115{
116 return doc->showRuler();
117}
118
119bool KWordDocIface::showdocStruct() const
120{
121 return doc->showdocStruct();
122}
123
124bool KWordDocIface::viewFrameBorders() const
125{
126 return doc->viewFrameBorders();
127}
128
129void KWordDocIface::setHeaderVisible( bool b)
130{
131 doc->setHeaderVisible(b);
132 doc->refreshGUIButton();
133}
134
135void KWordDocIface::setFooterVisible( bool b)
136{
137 doc->setFooterVisible( b);
138 doc->refreshGUIButton();
139}
140
141void KWordDocIface::setViewFrameBorders( bool b )
142{
143 doc->setViewFrameBorders( b );
144 doc->refreshGUIButton();
145}
146
147void KWordDocIface::setShowRuler(bool b)
148{
149 doc->setShowRuler(b);
150 doc->refreshGUIButton();
151 doc->reorganizeGUI();
152}
153
154bool KWordDocIface::viewFormattingChars() const
155{
156 return doc->viewFormattingChars();
157}
158
159void KWordDocIface::setViewFormattingChars(bool b)
160{
161 doc->setViewFormattingChars(b);
162 doc->refreshGUIButton();
163}
164
165void KWordDocIface::setShowDocStruct(bool b)
166{
167 doc->setShowDocStruct(b);
168 doc->refreshGUIButton();
169 doc->reorganizeGUI();
170}
171
172
173bool KWordDocIface::showStatusBar() const
174{
175 return doc->showStatusBar();
176}
177
178void KWordDocIface::setShowStatusBar( bool _status )
179{
180 doc->setShowStatusBar(_status);
181 doc->reorganizeGUI();
182}
183
184int KWordDocIface::startingPage()const
185{
186 return doc->variableCollection()->variableSetting()->startingPageNumber();
187}
188
189void KWordDocIface::setStartingPage(int nb)
190{
191 doc->variableCollection()->variableSetting()->setStartingPageNumber(nb);
192 doc->recalcVariables(VT_PGNUM);
193}
194
195bool KWordDocIface::displayLink()const
196{
197 return doc->variableCollection()->variableSetting()->displayLink();
198}
199
200void KWordDocIface::setDisplayLink(bool b)
201{
202 doc->variableCollection()->variableSetting()->setDisplayLink(b);
203 doc->recalcVariables(VT_LINK);
204}
205
206bool KWordDocIface::setCustomVariableValue(const TQString & varname, const TQString & value)
207{
208 bool exist=doc->variableCollection()->customVariableExist(varname);
209 if(exist)
210 {
211 doc->variableCollection()->setVariableValue( varname, value );
212 doc->recalcVariables(VT_CUSTOM);
213 }
214 else
215 return false;
216 return true;
217}
218
219
220TQString KWordDocIface::customVariableValue(const TQString & varname)const
221{
222 if(doc->variableCollection()->customVariableExist(varname))
223 return doc->variableCollection()->getVariableValue( varname );
224 return TQString();
225}
226
227void KWordDocIface::initConfig()
228{
229 doc->initConfig();
230}
231
232void KWordDocIface::saveConfig()
233{
234 doc->saveConfig();
235}
236
237bool KWordDocIface::isHeaderVisible() const
238{
239 return doc->isHeaderVisible();
240}
241
242bool KWordDocIface::isFooterVisible() const
243{
244 return doc->isFooterVisible();
245}
246
247bool KWordDocIface::backgroundSpellCheckEnabled() const
248{
249 return doc->backgroundSpellCheckEnabled();
250}
251
252void KWordDocIface::enableBackgroundSpellCheck( bool b )
253{
254 doc->enableBackgroundSpellCheck(b);
255}
256
257void KWordDocIface::startBackgroundSpellCheck()
258{
259 doc->startBackgroundSpellCheck();
260}
261
262void KWordDocIface::reactivateBgSpellChecking()
263{
264 doc->reactivateBgSpellChecking();
265}
266
267void KWordDocIface::setConfigUpperCase( bool _uc )
268{
269 doc->autoFormat()->configUpperCase(_uc);
270}
271
272void KWordDocIface::setConfigUpperUpper( bool _uu )
273{
274 doc->autoFormat()->configUpperUpper(_uu);
275}
276
277void KWordDocIface::setConfigAdvancedAutocorrect( bool _aa )
278{
279 doc->autoFormat()->configAdvancedAutocorrect( _aa );
280
281}
282
283void KWordDocIface::setConfigAutoDetectUrl(bool _au)
284{
285 doc->autoFormat()->configAutoDetectUrl(_au);
286}
287
288void KWordDocIface::setConfigIgnoreDoubleSpace( bool _ids)
289{
290 doc->autoFormat()->configIgnoreDoubleSpace(_ids);
291}
292
293bool KWordDocIface::configUpperCase() const
294{
295 return doc->autoFormat()->getConfigUpperCase();
296}
297
298bool KWordDocIface::configUpperUpper() const
299{
300 return doc->autoFormat()->getConfigUpperUpper();
301}
302
303bool KWordDocIface::configAdvancedAutoCorrect() const
304{
305 return doc->autoFormat()->getConfigAdvancedAutoCorrect();
306
307}
308bool KWordDocIface::configAutoDetectUrl() const
309{
310 return doc->autoFormat()->getConfigAutoDetectUrl();
311
312}
313
314bool KWordDocIface::configIgnoreDoubleSpace() const
315{
316 return doc->autoFormat()->getConfigIgnoreDoubleSpace();
317}
318
319bool KWordDocIface::configRemoveSpaceBeginEndLine() const
320{
321 return doc->autoFormat()->getConfigIgnoreDoubleSpace();
322}
323
324bool KWordDocIface::configUseBulletSyle() const
325{
326 return doc->autoFormat()->getConfigUseBulletSyle();
327}
328
329void KWordDocIface::setConfigRemoveSpaceBeginEndLine( bool _space)
330{
331 doc->autoFormat()->configRemoveSpaceBeginEndLine(_space);
332}
333
334void KWordDocIface::setConfigUseBulletStyle( bool _ubs)
335{
336 doc->autoFormat()->configUseBulletStyle(_ubs);
337}
338
339bool KWordDocIface::configAutoChangeFormat() const
340{
341 return doc->autoFormat()->getConfigAutoChangeFormat();
342}
343
344void KWordDocIface::setConfigAutoChangeFormat( bool _auto)
345{
346 doc->autoFormat()->configAutoChangeFormat(_auto);
347}
348
349bool KWordDocIface::configAutoReplaceNumber() const
350{
351 return doc->autoFormat()->getConfigAutoReplaceNumber();
352}
353
354void KWordDocIface::setConfigAutoReplaceNumber( bool b )
355{
356 doc->autoFormat()->configAutoReplaceNumber(b);
357}
358
359void KWordDocIface::setConfigAutoNumberStyle( bool b )
360{
361 doc->autoFormat()->configAutoNumberStyle(b);
362}
363
364bool KWordDocIface::configAutoNumberStyle() const
365{
366 return doc->autoFormat()->getConfigAutoNumberStyle();
367}
368
369void KWordDocIface::setConfigCompletion( bool b )
370{
371 doc->autoFormat()->configCompletion( b );
372}
373
374bool KWordDocIface::configCompletion() const
375{
376 return doc->autoFormat()->getConfigCompletion();
377}
378
379void KWordDocIface::setConfigToolTipCompletion( bool b )
380{
381 doc->autoFormat()->configToolTipCompletion( b );
382}
383
384bool KWordDocIface::configToolTipCompletion() const
385{
386 return doc->autoFormat()->getConfigToolTipCompletion();
387}
388
389void KWordDocIface::setConfigAppendSpace( bool b)
390{
391 doc->autoFormat()->configAppendSpace( b );
392}
393
394bool KWordDocIface::configAppendSpace() const
395{
396 return doc->autoFormat()->getConfigAppendSpace();
397}
398
399void KWordDocIface::setConfigMinWordLength( uint val )
400{
401 doc->autoFormat()->configMinWordLength( val );
402}
403
404uint KWordDocIface::configMinWordLength() const
405{
406 return doc->autoFormat()->getConfigMinWordLength();
407}
408
409void KWordDocIface::setConfigNbMaxCompletionWord( uint val )
410{
411 doc->autoFormat()->configNbMaxCompletionWord( val );
412}
413
414uint KWordDocIface::configNbMaxCompletionWord() const
415{
416 return doc->autoFormat()->getConfigNbMaxCompletionWord();
417}
418
419void KWordDocIface::setConfigAddCompletionWord( bool b )
420{
421 doc->autoFormat()->configAddCompletionWord( b );
422}
423
424bool KWordDocIface::configAddCompletionWord() const
425{
426 return doc->autoFormat()->getConfigAddCompletionWord();
427}
428
429bool KWordDocIface::configIncludeTwoUpperUpperLetterException() const
430{
431 return doc->autoFormat()->getConfigIncludeTwoUpperUpperLetterException();
432}
433
434void KWordDocIface::setConfigIncludeTwoUpperUpperLetterException( bool b)
435{
436 doc->autoFormat()->configIncludeTwoUpperUpperLetterException( b );
437}
438
439bool KWordDocIface::configIncludeAbbreviation() const
440{
441 return doc->autoFormat()->getConfigIncludeAbbreviation();
442}
443
444void KWordDocIface::setConfigIncludeAbbreviation( bool b)
445{
446 doc->autoFormat()->configIncludeAbbreviation( b );
447}
448
449bool KWordDocIface::displayComment() const
450{
451 return doc->variableCollection()->variableSetting()->displayComment();
452}
453
454void KWordDocIface::setDisplayComment( bool b)
455{
456 doc->variableCollection()->variableSetting()->setDisplayComment( b );
457 doc->recalcVariables(VT_NOTE);
458}
459
460
461bool KWordDocIface::displayFieldCode()const
462{
463 return doc->variableCollection()->variableSetting()->displayFieldCode();
464}
465
466void KWordDocIface::setDisplayFieldCode( bool b)
467{
468 doc->variableCollection()->variableSetting()->setDisplayFieldCode( b );
469 doc->recalcVariables(VT_ALL);
470}
471
472bool KWordDocIface::configAutoSuperScript() const
473{
474 return doc->autoFormat()->getConfigAutoSuperScript();
475}
476
477void KWordDocIface::setConfigAutoSuperScript( bool b)
478{
479 doc->autoFormat()->configAutoSuperScript( b );
480}
481
482void KWordDocIface::addIgnoreWordAll( const TQString &word )
483{
484 doc->addSpellCheckIgnoreWord( word );
485}
486
487void KWordDocIface::clearIgnoreWordAll( )
488{
489 doc->setSpellCheckIgnoreList( TQStringList() );
490}
491
492TQStringList KWordDocIface::spellListIgnoreAll() const
493{
494 return doc->spellCheckIgnoreList();
495}
496
497
498bool KWordDocIface::showScrollBar()const
499{
500 return doc->showScrollBar();
501}
502
503void KWordDocIface::setShowScrollBar( bool _status )
504{
505 doc->setShowScrollBar(_status );
506 doc->reorganizeGUI();
507}
508
509double KWordDocIface::ptTabStopValue() const
510{
511 return doc->tabStopValue();
512}
513
514void KWordDocIface::setPtTabStopValue ( double _tabStop )
515{
516 doc->setTabStopValue (_tabStop );
517}
518
519int KWordDocIface::footNoteSeparatorLineLength() const
520{
521 return doc->footNoteSeparatorLineLength();
522}
523
524void KWordDocIface::setFootNoteSeparatorLineLength( int _length)
525{
526 doc->setFootNoteSeparatorLineLength( _length );
527 doc->repaintAllViews();
528}
529
530void KWordDocIface::setFootNoteSeparatorLinePosition( const TQString &pos)
531{
532 SeparatorLinePos tmp=SLP_LEFT;
533 if ( pos.lower()=="left")
534 tmp=SLP_LEFT;
535 else if ( pos.lower()=="centered")
536 tmp=SLP_CENTERED;
537 else if ( pos.lower()=="right")
538 tmp=SLP_RIGHT;
539 doc->setFootNoteSeparatorLinePosition( tmp);
540 doc->repaintAllViews();
541}
542
543TQString KWordDocIface::footNoteSeparatorLinePosition()const
544{
545 TQString tmp=TQString();
546 switch( doc->footNoteSeparatorLinePosition() )
547 {
548 case SLP_LEFT:
549 return TQString("left");
550 case SLP_RIGHT:
551 return TQString("right");
552 case SLP_CENTERED:
553 return TQString("centered");
554 }
555 return tmp;
556}
557
558double KWordDocIface::footNoteSeparatorLineWidth() const
559{
560 return doc->footNoteSeparatorLineWidth();
561}
562
563void KWordDocIface::setFootNoteSeparatorLineWidth( double _width)
564{
565 doc->setFootNoteSeparatorLineWidth( _width );
566 doc->repaintAllViews();
567}
568
569void KWordDocIface::deleteBookMark(const TQString &_name)
570{
571 doc->deleteBookmark( _name );
572}
573
574void KWordDocIface::renameBookMark(const TQString &_oldname, const TQString &_newName)
575{
576 doc->renameBookmark( _oldname, _newName);
577}
578
579TQStringList KWordDocIface::listOfBookmarkName()const
580{
581 //return all list
582 return doc->listOfBookmarkName(0L);
583}
584
585TQString KWordDocIface::configAutoFormatLanguage( )const
586{
587 return doc->autoFormat()->getConfigAutoFormatLanguage( );
588}
589
590bool KWordDocIface::configCapitalizeNameOfDays() const
591{
592 return doc->autoFormat()->getConfigCapitalizeNameOfDays();
593}
594
595void KWordDocIface::setConfigCapitalizeNameOfDays( bool b)
596{
597 doc->autoFormat()->configCapitalizeNameOfDays( b );
598}
599
600bool KWordDocIface::showGrid() const
601{
602 return doc->showGrid();
603}
604
605bool KWordDocIface::snapToGrid() const
606{
607 return doc->snapToGrid();
608}
609
610double KWordDocIface::gridX() const
611{
612 return doc->gridX();
613}
614
615double KWordDocIface::gridY() const
616{
617 return doc->gridY();
618}
619
620void KWordDocIface::setGridX( double _gridX )
621{
622
623 doc->setGridX( TQMAX( 0.1, _gridX ) );
624}
625
626void KWordDocIface::setGridY( double _gridY )
627{
628 doc->setGridY( TQMAX( 0.1, _gridY ) );
629}
630
631void KWordDocIface::setShowGrid( bool _b )
632{
633 doc->setShowGrid( _b );
634}
635
636void KWordDocIface::setSnapToGrid( bool _b )
637{
638 doc->setSnapToGrid( _b );
639}