Salome HOME
c22828f46e1bf274c874f8b9ac9542861ac0cf48
[modules/geom.git] / src / DlgRef / DlgRef.cxx
1 //  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
2 //
3 //  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 //
6 //  This library is free software; you can redistribute it and/or
7 //  modify it under the terms of the GNU Lesser General Public
8 //  License as published by the Free Software Foundation; either
9 //  version 2.1 of the License.
10 //
11 //  This library is distributed in the hope that it will be useful,
12 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 //  Lesser General Public License for more details.
15 //
16 //  You should have received a copy of the GNU Lesser General Public
17 //  License along with this library; if not, write to the Free Software
18 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 //
20 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 //
22 // File   : DlgRef.cxx
23 // Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
24 //
25 #include "DlgRef.h"
26
27 //////////////////////////////////////////
28 // DlgRef_1List1Spin1Btn
29 //////////////////////////////////////////
30
31 DlgRef_1List1Spin1Btn::DlgRef_1List1Spin1Btn( QWidget* parent, Qt::WindowFlags f )
32 : QWidget( parent, f )
33 {
34   setupUi( this );
35 }
36
37 DlgRef_1List1Spin1Btn::~DlgRef_1List1Spin1Btn()
38 {
39 }
40
41 //////////////////////////////////////////
42 // DlgRef_1Sel1Check1List
43 //////////////////////////////////////////
44
45 DlgRef_1Sel1Check1List::DlgRef_1Sel1Check1List( QWidget* parent, Qt::WindowFlags f )
46 : QWidget( parent, f )
47 {
48   setupUi( this );
49 }
50
51 DlgRef_1Sel1Check1List::~DlgRef_1Sel1Check1List()
52 {
53 }
54
55 //////////////////////////////////////////
56 // DlgRef_1Sel1Check1Sel
57 //////////////////////////////////////////
58
59 DlgRef_1Sel1Check1Sel::DlgRef_1Sel1Check1Sel( QWidget* parent, Qt::WindowFlags f )
60 : QWidget( parent, f )
61 {
62   setupUi( this );
63 }
64
65 DlgRef_1Sel1Check1Sel::~DlgRef_1Sel1Check1Sel()
66 {
67 }
68
69 //////////////////////////////////////////
70 // DlgRef_1Sel1Check
71 //////////////////////////////////////////
72
73 DlgRef_1Sel1Check::DlgRef_1Sel1Check( QWidget* parent, Qt::WindowFlags f )
74 : QWidget( parent, f )
75 {
76   setupUi( this );
77 }
78
79 DlgRef_1Sel1Check::~DlgRef_1Sel1Check()
80 {
81 }
82
83 //////////////////////////////////////////
84 // DlgRef_1Sel1List1Check3Btn
85 //////////////////////////////////////////
86
87 DlgRef_1Sel1List1Check3Btn::DlgRef_1Sel1List1Check3Btn( QWidget* parent, Qt::WindowFlags f )
88 : QWidget( parent, f )
89 {
90   setupUi( this );
91 }
92
93 DlgRef_1Sel1List1Check3Btn::~DlgRef_1Sel1List1Check3Btn()
94 {
95 }
96
97 //////////////////////////////////////////
98 // DlgRef_1Sel1Spin1Check
99 //////////////////////////////////////////
100
101 DlgRef_1Sel1Spin1Check::DlgRef_1Sel1Spin1Check( QWidget* parent, Qt::WindowFlags f )
102 : QWidget( parent, f )
103 {
104   setupUi( this );
105 }
106
107 DlgRef_1Sel1Spin1Check::~DlgRef_1Sel1Spin1Check()
108 {
109 }
110
111 //////////////////////////////////////////
112 // DlgRef_1Sel1Spin
113 //////////////////////////////////////////
114
115 DlgRef_1Sel1Spin::DlgRef_1Sel1Spin( QWidget* parent, Qt::WindowFlags f )
116 : QWidget( parent, f )
117 {
118   setupUi( this );
119 }
120
121 DlgRef_1Sel1Spin::~DlgRef_1Sel1Spin()
122 {
123 }
124
125 //////////////////////////////////////////
126 // DlgRef_1Sel2Spin1View1Check
127 //////////////////////////////////////////
128
129 DlgRef_1Sel2Spin1View1Check::DlgRef_1Sel2Spin1View1Check( QWidget* parent, Qt::WindowFlags f )
130 : QWidget( parent, f )
131 {
132   setupUi( this );
133 }
134
135 DlgRef_1Sel2Spin1View1Check::~DlgRef_1Sel2Spin1View1Check()
136 {
137 }
138
139 //////////////////////////////////////////
140 // DlgRef_1Sel2Spin
141 //////////////////////////////////////////
142
143 DlgRef_1Sel2Spin::DlgRef_1Sel2Spin( QWidget* parent, Qt::WindowFlags f )
144 : QWidget( parent, f )
145 {
146   setupUi( this );
147 }
148
149 DlgRef_1Sel2Spin::~DlgRef_1Sel2Spin()
150 {
151 }
152
153 //////////////////////////////////////////
154 // DlgRef_1Sel3Check
155 //////////////////////////////////////////
156
157 DlgRef_1Sel3Check::DlgRef_1Sel3Check( QWidget* parent, Qt::WindowFlags f )
158 : QWidget( parent, f )
159 {
160   setupUi( this );
161 }
162
163 DlgRef_1Sel3Check::~DlgRef_1Sel3Check()
164 {
165 }
166
167 //////////////////////////////////////////
168 // DlgRef_1Sel3Spin
169 //////////////////////////////////////////
170
171 DlgRef_1Sel3Spin::DlgRef_1Sel3Spin( QWidget* parent, Qt::WindowFlags f )
172 : QWidget( parent, f )
173 {
174   setupUi( this );
175 }
176
177 DlgRef_1Sel3Spin::~DlgRef_1Sel3Spin()
178 {
179 }
180
181 //////////////////////////////////////////
182 // DlgRef_1Sel3Spin1Check
183 //////////////////////////////////////////
184
185 DlgRef_1Sel3Spin1Check::DlgRef_1Sel3Spin1Check( QWidget* parent, Qt::WindowFlags f )
186 : QWidget( parent, f )
187 {
188   setupUi( this );
189 }
190
191 DlgRef_1Sel3Spin1Check::~DlgRef_1Sel3Spin1Check()
192 {
193 }
194
195 //////////////////////////////////////////
196 // DlgRef_1Sel4Spin
197 //////////////////////////////////////////
198
199 DlgRef_1Sel4Spin::DlgRef_1Sel4Spin( QWidget* parent, Qt::WindowFlags f )
200 : QWidget( parent, f )
201 {
202   setupUi( this );
203 }
204
205 DlgRef_1Sel4Spin::~DlgRef_1Sel4Spin()
206 {
207 }
208
209 //////////////////////////////////////////
210 // DlgRef_1Sel5Spin1Check
211 //////////////////////////////////////////
212
213 DlgRef_1Sel5Spin1Check::DlgRef_1Sel5Spin1Check( QWidget* parent, Qt::WindowFlags f )
214 : QWidget( parent, f )
215 {
216   setupUi( this );
217 }
218
219 DlgRef_1Sel5Spin1Check::~DlgRef_1Sel5Spin1Check()
220 {
221 }
222
223 //////////////////////////////////////////
224 // DlgRef_1Sel5Spin
225 //////////////////////////////////////////
226
227 DlgRef_1Sel5Spin::DlgRef_1Sel5Spin( QWidget* parent, Qt::WindowFlags f )
228 : QWidget( parent, f )
229 {
230   setupUi( this );
231 }
232
233 DlgRef_1Sel5Spin::~DlgRef_1Sel5Spin()
234 {
235 }
236
237 //////////////////////////////////////////
238 // DlgRef_1Spin
239 //////////////////////////////////////////
240
241 DlgRef_1Spin::DlgRef_1Spin( QWidget* parent, Qt::WindowFlags f )
242 : QWidget( parent, f )
243 {
244   setupUi( this );
245 }
246
247 DlgRef_1Spin::~DlgRef_1Spin()
248 {
249 }
250
251 //////////////////////////////////////////
252 // DlgRef_1Sel
253 //////////////////////////////////////////
254
255 DlgRef_1Sel::DlgRef_1Sel( QWidget* parent, Qt::WindowFlags f )
256 : QWidget( parent, f )
257 {
258   setupUi( this );
259 }
260
261 DlgRef_1Sel::~DlgRef_1Sel()
262 {
263 }
264
265 //////////////////////////////////////////
266 // DlgRef_1SelExt
267 //////////////////////////////////////////
268
269 DlgRef_1SelExt::DlgRef_1SelExt( QWidget* parent, Qt::WindowFlags f )
270 : QWidget( parent, f )
271 {
272   setupUi( this );
273 }
274
275 DlgRef_1SelExt::~DlgRef_1SelExt()
276 {
277 }
278
279 //////////////////////////////////////////
280 // DlgRef_2Sel1List1Check
281 //////////////////////////////////////////
282
283 DlgRef_2Sel1List1Check::DlgRef_2Sel1List1Check( QWidget* parent, Qt::WindowFlags f )
284 : QWidget( parent, f )
285 {
286   setupUi( this );
287 }
288
289 DlgRef_2Sel1List1Check::~DlgRef_2Sel1List1Check()
290 {
291 }
292
293 //////////////////////////////////////////
294 // DlgRef_2Sel1List
295 //////////////////////////////////////////
296
297 DlgRef_2Sel1List::DlgRef_2Sel1List( QWidget* parent, Qt::WindowFlags f )
298 : QWidget( parent, f )
299 {
300   setupUi( this );
301 }
302
303 DlgRef_2Sel1List::~DlgRef_2Sel1List()
304 {
305 }
306
307 //////////////////////////////////////////
308 // DlgRef_2Sel1Spin2Check
309 //////////////////////////////////////////
310
311 DlgRef_2Sel1Spin2Check::DlgRef_2Sel1Spin2Check( QWidget* parent, Qt::WindowFlags f )
312 : QWidget( parent, f )
313 {
314   setupUi( this );
315 }
316
317 DlgRef_2Sel1Spin2Check::~DlgRef_2Sel1Spin2Check()
318 {
319 }
320
321 //////////////////////////////////////////
322 // DlgRef_2Sel1Spin
323 //////////////////////////////////////////
324
325 DlgRef_2Sel1Spin::DlgRef_2Sel1Spin( QWidget* parent, Qt::WindowFlags f )
326 : QWidget( parent, f )
327 {
328   setupUi( this );
329 }
330
331 DlgRef_2Sel1Spin::~DlgRef_2Sel1Spin()
332 {
333 }
334
335 //////////////////////////////////////////
336 // DlgRef_2Sel2List
337 //////////////////////////////////////////
338
339 DlgRef_2Sel2List::DlgRef_2Sel2List( QWidget* parent, Qt::WindowFlags f )
340 : QWidget( parent, f )
341 {
342   setupUi( this );
343 }
344
345 DlgRef_2Sel2List::~DlgRef_2Sel2List()
346 {
347 }
348
349 //////////////////////////////////////////
350 // DlgRef_2Sel2Spin1Check
351 //////////////////////////////////////////
352
353 DlgRef_2Sel2Spin1Check::DlgRef_2Sel2Spin1Check( QWidget* parent, Qt::WindowFlags f )
354 : QWidget( parent, f )
355 {
356   setupUi( this );
357 }
358
359 DlgRef_2Sel2Spin1Check::~DlgRef_2Sel2Spin1Check()
360 {
361 }
362
363 //////////////////////////////////////////
364 // DlgRef_2Sel2Spin
365 //////////////////////////////////////////
366
367 DlgRef_2Sel2Spin::DlgRef_2Sel2Spin( QWidget* parent, Qt::WindowFlags f )
368 : QWidget( parent, f )
369 {
370   setupUi( this );
371 }
372
373 DlgRef_2Sel2Spin::~DlgRef_2Sel2Spin()
374 {
375 }
376
377 //////////////////////////////////////////
378 // DlgRef_2Sel3Spin2Rb
379 //////////////////////////////////////////
380
381 DlgRef_2Sel3Spin2Rb::DlgRef_2Sel3Spin2Rb( QWidget* parent, Qt::WindowFlags f )
382 : QWidget( parent, f )
383 {
384   setupUi( this );
385 }
386
387 DlgRef_2Sel3Spin2Rb::~DlgRef_2Sel3Spin2Rb()
388 {
389 }
390
391 //////////////////////////////////////////
392 // DlgRef_2Sel3Spin
393 //////////////////////////////////////////
394
395 DlgRef_2Sel3Spin::DlgRef_2Sel3Spin( QWidget* parent, Qt::WindowFlags f )
396 : QWidget( parent, f )
397 {
398   setupUi( this );
399 }
400
401 DlgRef_2Sel3Spin::~DlgRef_2Sel3Spin()
402 {
403 }
404
405 //////////////////////////////////////////
406 // DlgRef_2Sel4Spin1Check
407 //////////////////////////////////////////
408
409 DlgRef_2Sel4Spin1Check::DlgRef_2Sel4Spin1Check( QWidget* parent, Qt::WindowFlags f )
410 : QWidget( parent, f )
411 {
412   setupUi( this );
413 }
414
415 DlgRef_2Sel4Spin1Check::~DlgRef_2Sel4Spin1Check()
416 {
417 }
418
419 //////////////////////////////////////////
420 // DlgRef_2Sel
421 //////////////////////////////////////////
422
423 DlgRef_2Sel::DlgRef_2Sel( QWidget* parent, Qt::WindowFlags f )
424 : QWidget( parent, f )
425 {
426   setupUi( this );
427 }
428
429 DlgRef_2Sel::~DlgRef_2Sel()
430 {
431 }
432
433 //////////////////////////////////////////
434 // DlgRef_2SelExt
435 //////////////////////////////////////////
436
437 DlgRef_2SelExt::DlgRef_2SelExt( QWidget* parent, Qt::WindowFlags f )
438 : QWidget( parent, f )
439 {
440   setupUi( this );
441 }
442
443 DlgRef_2SelExt::~DlgRef_2SelExt()
444 {
445 }
446
447 //////////////////////////////////////////
448 // DlgRef_2Spin
449 //////////////////////////////////////////
450
451 DlgRef_2Spin::DlgRef_2Spin( QWidget* parent, Qt::WindowFlags f )
452 : QWidget( parent, f )
453 {
454   setupUi( this );
455 }
456
457 DlgRef_2Spin::~DlgRef_2Spin()
458 {
459 }
460
461 //////////////////////////////////////////
462 // DlgRef_3Check
463 //////////////////////////////////////////
464
465 DlgRef_3Check::DlgRef_3Check( QWidget* parent, Qt::WindowFlags f )
466 : QWidget( parent, f )
467 {
468   setupUi( this );
469 }
470
471 DlgRef_3Check::~DlgRef_3Check()
472 {
473 }
474
475 //////////////////////////////////////////
476 // DlgRef_3Radio
477 //////////////////////////////////////////
478
479 DlgRef_3Radio::DlgRef_3Radio( QWidget* parent, Qt::WindowFlags f )
480 : QWidget( parent, f )
481 {
482   setupUi( this );
483 }
484
485 DlgRef_3Radio::~DlgRef_3Radio()
486 {
487 }
488
489 //////////////////////////////////////////
490 // DlgRef_3Radio1Sel1Spin
491 //////////////////////////////////////////
492
493 DlgRef_3Radio1Sel1Spin::DlgRef_3Radio1Sel1Spin( QWidget* parent, Qt::WindowFlags f )
494 : QWidget( parent, f )
495 {
496   setupUi( this );
497 }
498
499 DlgRef_3Radio1Sel1Spin::~DlgRef_3Radio1Sel1Spin()
500 {
501 }
502
503 //////////////////////////////////////////
504 // DlgRef_3Sel1Check
505 //////////////////////////////////////////
506
507 DlgRef_3Sel1Check::DlgRef_3Sel1Check( QWidget* parent, Qt::WindowFlags f )
508 : QWidget( parent, f )
509 {
510   setupUi( this );
511 }
512
513 DlgRef_3Sel1Check::~DlgRef_3Sel1Check()
514 {
515 }
516
517 //////////////////////////////////////////
518 // DlgRef_3Sel1Spin
519 //////////////////////////////////////////
520
521 DlgRef_3Sel1Spin::DlgRef_3Sel1Spin( QWidget* parent, Qt::WindowFlags f )
522 : QWidget( parent, f )
523 {
524   setupUi( this );
525 }
526
527 DlgRef_3Sel1Spin::~DlgRef_3Sel1Spin()
528 {
529 }
530
531 //////////////////////////////////////////
532 // DlgRef_3Sel3Spin1Check
533 //////////////////////////////////////////
534
535 DlgRef_3Sel3Spin1Check::DlgRef_3Sel3Spin1Check( QWidget* parent, Qt::WindowFlags f )
536 : QWidget( parent, f )
537 {
538   setupUi( this );
539 }
540
541 DlgRef_3Sel3Spin1Check::~DlgRef_3Sel3Spin1Check()
542 {
543 }
544
545 void DlgRef_3Sel3Spin1Check::ShowRows( int fromRow, int toRow, bool toShow )
546 {
547   const int maxRows = 7;
548   
549   if ( toRow >= fromRow && fromRow >= 0 && toRow <= maxRows ) {
550     int c = gridLayout1->count();
551     for ( int i = 0; i < c; i++ ) {
552       QWidget* w = gridLayout1->itemAt( i )->widget();
553       int row, col, rowspan, colspan;
554       gridLayout1->getItemPosition( i, &row, &col, &rowspan, &colspan );
555       if ( w && row >= fromRow && row <= toRow )
556         w->setVisible( toShow );
557     }
558   }
559 }
560
561 //////////////////////////////////////////
562 // DlgRef_3Sel3Spin2Check
563 //////////////////////////////////////////
564
565 DlgRef_3Sel3Spin2Check::DlgRef_3Sel3Spin2Check( QWidget* parent, Qt::WindowFlags f )
566 : QWidget( parent, f )
567 {
568   setupUi( this );
569 }
570
571 DlgRef_3Sel3Spin2Check::~DlgRef_3Sel3Spin2Check()
572 {
573 }
574
575 void DlgRef_3Sel3Spin2Check::ShowRows( int fromRow, int toRow, bool toShow )
576 {
577   const int maxRows = 8;
578   
579   if ( toRow >= fromRow && fromRow >= 0 && toRow <= maxRows ) {
580     int c = gridLayout1->count();
581     for ( int i = 0; i < c; i++ ) {
582       QWidget* w = gridLayout1->itemAt( i )->widget();
583       int row, col, rowspan, colspan;
584       gridLayout1->getItemPosition( i, &row, &col, &rowspan, &colspan );
585       if ( w && row >= fromRow && row <= toRow )
586         w->setVisible( toShow );
587     }
588   }
589 }
590
591 //////////////////////////////////////////
592 // DlgRef_3Sel4Spin2Check
593 //////////////////////////////////////////
594
595 DlgRef_3Sel4Spin2Check::DlgRef_3Sel4Spin2Check( QWidget* parent, Qt::WindowFlags f )
596 : QWidget( parent, f )
597 {
598   setupUi( this );
599 }
600
601 DlgRef_3Sel4Spin2Check::~DlgRef_3Sel4Spin2Check()
602 {
603 }
604
605 //////////////////////////////////////////
606 // DlgRef_3Sel
607 //////////////////////////////////////////
608
609 DlgRef_3Sel::DlgRef_3Sel( QWidget* parent, Qt::WindowFlags f )
610 : QWidget( parent, f )
611 {
612   setupUi( this );
613 }
614
615 DlgRef_3Sel::~DlgRef_3Sel()
616 {
617 }
618
619 //////////////////////////////////////////
620 // DlgRef_3Spin1Check
621 //////////////////////////////////////////
622
623 DlgRef_3Spin1Check::DlgRef_3Spin1Check( QWidget* parent, Qt::WindowFlags f )
624 : QWidget( parent, f )
625 {
626   setupUi( this );
627 }
628
629 DlgRef_3Spin1Check::~DlgRef_3Spin1Check()
630 {
631 }
632
633 //////////////////////////////////////////
634 // DlgRef_3Spin
635 //////////////////////////////////////////
636
637 DlgRef_3Spin::DlgRef_3Spin( QWidget* parent, Qt::WindowFlags f )
638 : QWidget( parent, f )
639 {
640   setupUi( this );
641 }
642
643 DlgRef_3Spin::~DlgRef_3Spin()
644 {
645 }
646
647 //////////////////////////////////////////
648 // DlgRef_4Sel1List1Check
649 //////////////////////////////////////////
650
651 DlgRef_4Sel1List1Check::DlgRef_4Sel1List1Check( QWidget* parent, Qt::WindowFlags f )
652 : QWidget( parent, f )
653 {
654   setupUi( this );
655 }
656
657 DlgRef_4Sel1List1Check::~DlgRef_4Sel1List1Check()
658 {
659 }
660
661 //////////////////////////////////////////
662 // DlgRef_4Sel1List
663 //////////////////////////////////////////
664
665 DlgRef_4Sel1List::DlgRef_4Sel1List( QWidget* parent, Qt::WindowFlags f )
666 : QWidget( parent, f )
667 {
668   setupUi( this );
669 }
670
671 DlgRef_4Sel1List::~DlgRef_4Sel1List()
672 {
673 }
674
675 //////////////////////////////////////////
676 // DlgRef_4Sel1Spin2Check
677 //////////////////////////////////////////
678
679 DlgRef_4Sel1Spin2Check::DlgRef_4Sel1Spin2Check( QWidget* parent, Qt::WindowFlags f )
680 : QWidget( parent, f )
681 {
682   setupUi( this );
683 }
684
685 DlgRef_4Sel1Spin2Check::~DlgRef_4Sel1Spin2Check()
686 {
687 }
688
689 void DlgRef_4Sel1Spin2Check::ShowRows( int fromRow, int toRow, bool toShow )
690 {
691   const int maxRows = 6;
692   
693   if ( toRow >= fromRow && fromRow >= 0 && toRow <= maxRows ) {
694     int c = gridLayout1->count();
695     for ( int i = 0; i < c; i++ ) {
696       QWidget* w = gridLayout1->itemAt( i )->widget();
697       int row, col, rowspan, colspan;
698       gridLayout1->getItemPosition( i, &row, &col, &rowspan, &colspan );
699       if ( w && row >= fromRow && row <= toRow )
700         w->setVisible( toShow );
701     }
702   }
703 }
704
705 //////////////////////////////////////////
706 // DlgRef_4Sel1Spin3Check
707 //////////////////////////////////////////
708
709 DlgRef_4Sel1Spin3Check::DlgRef_4Sel1Spin3Check( QWidget* parent, Qt::WindowFlags f )
710 : QWidget( parent, f )
711 {
712   setupUi( this );
713 }
714
715 DlgRef_4Sel1Spin3Check::~DlgRef_4Sel1Spin3Check()
716 {
717 }
718
719 //////////////////////////////////////////
720 // DlgRef_6Sel
721 //////////////////////////////////////////
722
723 DlgRef_6Sel::DlgRef_6Sel( QWidget* parent, Qt::WindowFlags f )
724 : QWidget( parent, f )
725 {
726   setupUi( this );
727 }
728
729 DlgRef_6Sel::~DlgRef_6Sel()
730 {
731 }
732
733 //////////////////////////////////////////
734 // DlgRef_Skeleton
735 //////////////////////////////////////////
736
737 DlgRef_Skeleton::DlgRef_Skeleton( QWidget* parent, Qt::WindowFlags f )
738 : QWidget( parent, f )
739 {
740   setupUi( this );
741 }
742
743 DlgRef_Skeleton::~DlgRef_Skeleton()
744 {
745 }
746
747 //////////////////////////////////////////
748 // Utility functions
749 //////////////////////////////////////////
750
751 QString DlgRef::PrintDoubleValue( double theValue, int thePrecision )
752 {
753   const double prec = 1e-12;
754   
755   if ( abs(theValue) < thePrecision)
756     return "0";
757
758   QString aRes;
759   aRes.setNum( theValue, 'g', thePrecision );
760
761   if ( prec > 0 ) {
762     int p = 0;
763     while ( p < thePrecision ) {
764       aRes.setNum( theValue, 'g', p++ );
765       double v = aRes.toDouble();
766       double err = qAbs( theValue - v );
767       if ( err > 0 && err <= prec )
768         break;
769     }
770   }
771
772   // remove trailing zeroes
773   QString delim( "." );
774
775   int idx = aRes.lastIndexOf( delim );
776   if ( idx == -1 )
777     return aRes;
778
779   QString iPart = aRes.left( idx );
780   QString fPart = aRes.mid( idx + 1 );
781
782   while ( !fPart.isEmpty() && fPart.at( fPart.length() - 1 ) == '0' )
783     fPart.remove( fPart.length() - 1, 1 );
784
785   aRes = iPart;
786   if ( !fPart.isEmpty() )
787     aRes += delim + fPart;
788
789   return aRes;
790 }