summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/apps/textedit/textedit.cpp49
1 files changed, 26 insertions, 23 deletions
diff --git a/core/apps/textedit/textedit.cpp b/core/apps/textedit/textedit.cpp
index c7273c5..26b907b 100644
--- a/core/apps/textedit/textedit.cpp
+++ b/core/apps/textedit/textedit.cpp
@@ -291,285 +291,288 @@ TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f )
291 desktopAction->setToggleAction(true); 291 desktopAction->setToggleAction(true);
292 desktopAction->addTo( advancedMenu); 292 desktopAction->addTo( advancedMenu);
293 293
294 filePermAction = new QAction( tr("File Permissions"), 294 filePermAction = new QAction( tr("File Permissions"),
295 QString::null, 0, this, 0 ); 295 QString::null, 0, this, 0 );
296 connect( filePermAction, SIGNAL( toggled(bool) ), 296 connect( filePermAction, SIGNAL( toggled(bool) ),
297 this, SLOT( doFilePerms(bool) ) ); 297 this, SLOT( doFilePerms(bool) ) );
298 filePermAction->setToggleAction(true); 298 filePermAction->setToggleAction(true);
299 filePermAction->addTo( advancedMenu); 299 filePermAction->addTo( advancedMenu);
300 300
301 searchBarAction = new QAction( tr("Search Bar Open"), 301 searchBarAction = new QAction( tr("Search Bar Open"),
302 QString::null, 0, this, 0 ); 302 QString::null, 0, this, 0 );
303 connect( searchBarAction, SIGNAL( toggled(bool) ), 303 connect( searchBarAction, SIGNAL( toggled(bool) ),
304 this, SLOT( setSearchBar(bool) ) ); 304 this, SLOT( setSearchBar(bool) ) );
305 searchBarAction->setToggleAction(true); 305 searchBarAction->setToggleAction(true);
306 searchBarAction->addTo( advancedMenu); 306 searchBarAction->addTo( advancedMenu);
307 307
308 nAutoSave = new QAction( tr("Auto Save 5 min."), 308 nAutoSave = new QAction( tr("Auto Save 5 min."),
309 QString::null, 0, this, 0 ); 309 QString::null, 0, this, 0 );
310 connect( nAutoSave, SIGNAL( toggled(bool) ), 310 connect( nAutoSave, SIGNAL( toggled(bool) ),
311 this, SLOT( doTimer(bool) ) ); 311 this, SLOT( doTimer(bool) ) );
312 nAutoSave->setToggleAction(true); 312 nAutoSave->setToggleAction(true);
313 nAutoSave->addTo( advancedMenu); 313 nAutoSave->addTo( advancedMenu);
314 314
315 315
316 //font->insertSeparator(); 316 //font->insertSeparator();
317 317
318 //font->insertItem(tr("About"), this, SLOT( doAbout()) ); 318 //font->insertItem(tr("About"), this, SLOT( doAbout()) );
319 319
320 mb->insertItem( tr( "File" ), file ); 320 mb->insertItem( tr( "File" ), file );
321 mb->insertItem( tr( "Edit" ), edit ); 321 mb->insertItem( tr( "Edit" ), edit );
322 mb->insertItem( tr( "View" ), font ); 322 mb->insertItem( tr( "View" ), font );
323 323
324 searchBar = new QToolBar(this); 324 searchBar = new QToolBar(this);
325 addToolBar( searchBar, "Search", QMainWindow::Top, true ); 325 addToolBar( searchBar, "Search", QMainWindow::Top, true );
326 326
327 searchBar->setHorizontalStretchable( true ); 327 searchBar->setHorizontalStretchable( true );
328 328
329 searchEdit = new QLineEdit( searchBar, "searchEdit" ); 329 searchEdit = new QLineEdit( searchBar, "searchEdit" );
330 searchBar->setStretchableWidget( searchEdit ); 330 searchBar->setStretchableWidget( searchEdit );
331 connect( searchEdit, SIGNAL( textChanged(const QString&) ), 331 connect( searchEdit, SIGNAL( textChanged(const QString&) ),
332 this, SLOT( search() ) ); 332 this, SLOT( search() ) );
333 333
334 a = new QAction( tr( "Find Next" ), Resource::loadPixmap( "next" ), 334 a = new QAction( tr( "Find Next" ), Resource::loadPixmap( "next" ),
335 QString::null, 0, this, 0 ); 335 QString::null, 0, this, 0 );
336 connect( a, SIGNAL( activated() ), this, SLOT( findNext() ) ); 336 connect( a, SIGNAL( activated() ), this, SLOT( findNext() ) );
337 a->addTo( searchBar ); 337 a->addTo( searchBar );
338 a->addTo( edit ); 338 a->addTo( edit );
339 339
340 a = new QAction( tr( "Close Find" ), Resource::loadPixmap( "close" ), 340 a = new QAction( tr( "Close Find" ), Resource::loadPixmap( "close" ),
341 QString::null, 0, this, 0 ); 341 QString::null, 0, this, 0 );
342 connect( a, SIGNAL( activated() ), this, SLOT( findClose() ) ); 342 connect( a, SIGNAL( activated() ), this, SLOT( findClose() ) );
343 a->addTo( searchBar ); 343 a->addTo( searchBar );
344 344
345 edit->insertSeparator(); 345 edit->insertSeparator();
346 a = new QAction( tr( "Delete" ), Resource::loadPixmap( "close" ), 346 a = new QAction( tr( "Delete" ), Resource::loadPixmap( "close" ),
347 QString::null, 0, this, 0 ); 347 QString::null, 0, this, 0 );
348 connect( a, SIGNAL( activated() ), this, SLOT( editDelete() ) ); 348 connect( a, SIGNAL( activated() ), this, SLOT( editDelete() ) );
349 a->addTo( edit ); 349 a->addTo( edit );
350 350
351 searchBar->hide(); 351 searchBar->hide();
352 352
353 editor = new QpeEditor( this ); 353 editor = new QpeEditor( this );
354 setCentralWidget( editor ); 354 setCentralWidget( editor );
355 editor->setFrameStyle( QFrame::Panel | QFrame::Sunken ); 355 editor->setFrameStyle( QFrame::Panel | QFrame::Sunken );
356 connect( editor, SIGNAL( textChanged() ), 356 connect( editor, SIGNAL( textChanged() ),
357 this, SLOT( editorChanged() ) ); 357 this, SLOT( editorChanged() ) );
358 358
359 QPEApplication::setStylusOperation( editor, QPEApplication::RightOnHold); 359 QPEApplication::setStylusOperation( editor, QPEApplication::RightOnHold);
360 360
361 Config cfg("TextEdit"); 361 Config cfg("TextEdit");
362 cfg. setGroup ( "Font" ); 362 cfg. setGroup ( "Font" );
363 363
364 QFont defaultFont = editor-> font ( ); 364 QFont defaultFont = editor-> font ( );
365 365
366 QString family = cfg. readEntry ( "Family", defaultFont. family ( )); 366 QString family = cfg. readEntry ( "Family", defaultFont. family ( ));
367 int size = cfg. readNumEntry ( "Size", defaultFont. pointSize ( )); 367 int size = cfg. readNumEntry ( "Size", defaultFont. pointSize ( ));
368 int weight = cfg. readNumEntry ( "Weight", defaultFont. weight ( )); 368 int weight = cfg. readNumEntry ( "Weight", defaultFont. weight ( ));
369 bool italic = cfg. readBoolEntry ( "Italic", defaultFont. italic ( )); 369 bool italic = cfg. readBoolEntry ( "Italic", defaultFont. italic ( ));
370 370
371 defaultFont = QFont ( family, size, weight, italic ); 371 defaultFont = QFont ( family, size, weight, italic );
372 editor-> setFont ( defaultFont ); 372 editor-> setFont ( defaultFont );
373// updateCaption(); 373// updateCaption();
374 374
375 cfg.setGroup ( "View" ); 375 cfg.setGroup ( "View" );
376 376
377 promptExit = cfg.readBoolEntry ( "PromptExit", false ); 377 promptExit = cfg.readBoolEntry ( "PromptExit", false );
378 openDesktop = cfg.readBoolEntry ( "OpenDesktop", true ); 378 openDesktop = cfg.readBoolEntry ( "OpenDesktop", true );
379 filePerms = cfg.readBoolEntry ( "FilePermissions", false ); 379 filePerms = cfg.readBoolEntry ( "FilePermissions", false );
380 useSearchBar = cfg.readBoolEntry ( "SearchBar", false ); 380 useSearchBar = cfg.readBoolEntry ( "SearchBar", false );
381 startWithNew = cfg.readBoolEntry ( "startNew", true); 381 startWithNew = cfg.readBoolEntry ( "startNew", true);
382 featureAutoSave = cfg.readBoolEntry( "autosave", false); 382 featureAutoSave = cfg.readBoolEntry( "autosave", false);
383 383
384 if(useSearchBar) searchBarAction->setOn(true); 384 if(useSearchBar) searchBarAction->setOn(true);
385 if(promptExit) nAdvanced->setOn( true ); 385 if(promptExit) nAdvanced->setOn( true );
386 if(openDesktop) desktopAction->setOn( true ); 386 if(openDesktop) desktopAction->setOn( true );
387 if(filePerms) filePermAction->setOn( true ); 387 if(filePerms) filePermAction->setOn( true );
388 if(startWithNew) nStart->setOn( true ); 388 if(startWithNew) nStart->setOn( true );
389 if(featureAutoSave) nAutoSave->setOn(true); 389 if(featureAutoSave) nAutoSave->setOn(true);
390 390
391// { 391// {
392// doTimer(true); 392// doTimer(true);
393// } 393// }
394 394
395 bool wrap = cfg. readBoolEntry ( "Wrap", true ); 395 bool wrap = cfg. readBoolEntry ( "Wrap", true );
396 wa-> setOn ( wrap ); 396 wa-> setOn ( wrap );
397 setWordWrap ( wrap ); 397 setWordWrap ( wrap );
398 398
399///////////////// 399/////////////////
400 if( qApp->argc() > 1) { 400 if( qApp->argc() > 1) {
401 currentFileName=qApp->argv()[1]; 401 currentFileName=qApp->argv()[1];
402 402
403 QFileInfo fi(currentFileName); 403 QFileInfo fi(currentFileName);
404 404
405 if(fi.baseName().left(1) == "") { 405 if(fi.baseName().left(1) == "") {
406 openDotFile(currentFileName); 406 openDotFile(currentFileName);
407 } else { 407 } else {
408 openFile(currentFileName); 408 openFile(currentFileName);
409 } 409 }
410 } else { 410 } else {
411 edited1=false; 411 edited1=false;
412 openDotFile(""); 412 openDotFile("");
413 } 413 }
414 414
415 viewSelection = cfg.readNumEntry( "FileView", 0 ); 415 viewSelection = cfg.readNumEntry( "FileView", 0 );
416} 416}
417 417
418TextEdit::~TextEdit() { 418TextEdit::~TextEdit() {
419 owarn << "textedit d'tor" << oendl; 419 if( edited1 && !promptExit) {
420 switch( savePrompt() ) {
421 case 1: {
422 saveAs();
423 }
424 break;
425 };
426 }
427
420 delete editor; 428 delete editor;
421} 429}
422 430
423void TextEdit::closeEvent(QCloseEvent *) { 431void TextEdit::closeEvent(QCloseEvent *) {
424 if( edited1 && promptExit) 432 if( promptExit) {
425 { 433 switch( savePrompt() ) {
426 switch( savePrompt() ) 434 case 1: {
427 { 435 saveAs();
428 case 1: 436 qApp->quit();
429 { 437 }
430 saveAs(); 438 break;
431 qApp->quit(); 439
432 } 440 case 2: {
433 break; 441 qApp->quit();
434 442 }
435 case 2: 443 break;
436 { 444
437 qApp->quit(); 445 case -1:
438 } 446 break;
439 break; 447 };
440 448 }
441 case -1:
442 break;
443 };
444 }
445 else 449 else
446 qApp->quit(); 450 qApp->quit();
447
448} 451}
449 452
450void TextEdit::cleanUp() { 453void TextEdit::cleanUp() {
451 454
452 Config cfg ( "TextEdit" ); 455 Config cfg ( "TextEdit" );
453 cfg. setGroup ( "Font" ); 456 cfg. setGroup ( "Font" );
454 QFont f = editor->font(); 457 QFont f = editor->font();
455 cfg.writeEntry ( "Family", f. family ( )); 458 cfg.writeEntry ( "Family", f. family ( ));
456 cfg.writeEntry ( "Size", f. pointSize ( )); 459 cfg.writeEntry ( "Size", f. pointSize ( ));
457 cfg.writeEntry ( "Weight", f. weight ( )); 460 cfg.writeEntry ( "Weight", f. weight ( ));
458 cfg.writeEntry ( "Italic", f. italic ( )); 461 cfg.writeEntry ( "Italic", f. italic ( ));
459 462
460 cfg.setGroup ( "View" ); 463 cfg.setGroup ( "View" );
461 cfg.writeEntry ( "Wrap", editor->wordWrap() == QMultiLineEdit::WidgetWidth ); 464 cfg.writeEntry ( "Wrap", editor->wordWrap() == QMultiLineEdit::WidgetWidth );
462 cfg.writeEntry ( "FileView", viewSelection ); 465 cfg.writeEntry ( "FileView", viewSelection );
463 466
464 cfg.writeEntry ( "PromptExit", promptExit ); 467 cfg.writeEntry ( "PromptExit", promptExit );
465 cfg.writeEntry ( "OpenDesktop", openDesktop ); 468 cfg.writeEntry ( "OpenDesktop", openDesktop );
466 cfg.writeEntry ( "FilePermissions", filePerms ); 469 cfg.writeEntry ( "FilePermissions", filePerms );
467 cfg.writeEntry ( "SearchBar", useSearchBar ); 470 cfg.writeEntry ( "SearchBar", useSearchBar );
468 cfg.writeEntry ( "startNew", startWithNew ); 471 cfg.writeEntry ( "startNew", startWithNew );
469 472
470} 473}
471 474
472 475
473void TextEdit::accept() { 476void TextEdit::accept() {
474 if( edited1) 477 if( edited1)
475 saveAs(); 478 saveAs();
476 qApp->quit(); 479 qApp->quit();
477} 480}
478 481
479void TextEdit::zoomIn() { 482void TextEdit::zoomIn() {
480 setFontSize(editor->font().pointSize()+1,false); 483 setFontSize(editor->font().pointSize()+1,false);
481} 484}
482 485
483void TextEdit::zoomOut() { 486void TextEdit::zoomOut() {
484 setFontSize(editor->font().pointSize()-1,true); 487 setFontSize(editor->font().pointSize()-1,true);
485} 488}
486 489
487 490
488void TextEdit::setFontSize(int sz, bool round_down_not_up) { 491void TextEdit::setFontSize(int sz, bool round_down_not_up) {
489 int s=10; 492 int s=10;
490 for (int i=0; i<nfontsizes; i++) { 493 for (int i=0; i<nfontsizes; i++) {
491 if ( fontsize[i] == sz ) { 494 if ( fontsize[i] == sz ) {
492 s = sz; 495 s = sz;
493 break; 496 break;
494 } else if ( round_down_not_up ) { 497 } else if ( round_down_not_up ) {
495 if ( fontsize[i] < sz ) 498 if ( fontsize[i] < sz )
496 s = fontsize[i]; 499 s = fontsize[i];
497 } else { 500 } else {
498 if ( fontsize[i] > sz ) { 501 if ( fontsize[i] > sz ) {
499 s = fontsize[i]; 502 s = fontsize[i];
500 break; 503 break;
501 } 504 }
502 } 505 }
503 } 506 }
504 507
505 QFont f = editor->font(); 508 QFont f = editor->font();
506 f.setPointSize(s); 509 f.setPointSize(s);
507 editor->setFont(f); 510 editor->setFont(f);
508 511
509 zin->setEnabled(s != fontsize[nfontsizes-1]); 512 zin->setEnabled(s != fontsize[nfontsizes-1]);
510 zout->setEnabled(s != fontsize[0]); 513 zout->setEnabled(s != fontsize[0]);
511} 514}
512 515
513void TextEdit::setBold(bool y) { 516void TextEdit::setBold(bool y) {
514 QFont f = editor->font(); 517 QFont f = editor->font();
515 f.setBold(y); 518 f.setBold(y);
516 editor->setFont(f); 519 editor->setFont(f);
517} 520}
518 521
519void TextEdit::setItalic(bool y) { 522void TextEdit::setItalic(bool y) {
520 QFont f = editor->font(); 523 QFont f = editor->font();
521 f.setItalic(y); 524 f.setItalic(y);
522 editor->setFont(f); 525 editor->setFont(f);
523} 526}
524 527
525void TextEdit::setWordWrap(bool y) { 528void TextEdit::setWordWrap(bool y) {
526 bool state = editor->edited(); 529 bool state = editor->edited();
527 QString captionStr = caption(); 530 QString captionStr = caption();
528 bool b1 = edited1; 531 bool b1 = edited1;
529 bool b2 = edited; 532 bool b2 = edited;
530 533
531 editor->setWordWrap(y ? QMultiLineEdit::WidgetWidth : QMultiLineEdit::NoWrap ); 534 editor->setWordWrap(y ? QMultiLineEdit::WidgetWidth : QMultiLineEdit::NoWrap );
532 editor->setEdited( state ); 535 editor->setEdited( state );
533 edited1=b1; 536 edited1=b1;
534 edited=b2; 537 edited=b2;
535 setCaption(captionStr); 538 setCaption(captionStr);
536} 539}
537 540
538void TextEdit::setSearchBar(bool b) { 541void TextEdit::setSearchBar(bool b) {
539 useSearchBar=b; 542 useSearchBar=b;
540 Config cfg("TextEdit"); 543 Config cfg("TextEdit");
541 cfg.setGroup("View"); 544 cfg.setGroup("View");
542 cfg.writeEntry ( "SearchBar", b ); 545 cfg.writeEntry ( "SearchBar", b );
543 searchBarAction->setOn(b); 546 searchBarAction->setOn(b);
544 if(b) 547 if(b)
545 searchBar->show(); 548 searchBar->show();
546 else 549 else
547 searchBar->hide(); 550 searchBar->hide();
548 editor->setFocus(); 551 editor->setFocus();
549} 552}
550 553
551void TextEdit::fileNew() { 554void TextEdit::fileNew() {
552// if( !bFromDocView ) { 555// if( !bFromDocView ) {
553// saveAs(); 556// saveAs();
554// } 557// }
555 newFile(DocLnk()); 558 newFile(DocLnk());
556} 559}
557 560
558void TextEdit::fileOpen() { 561void TextEdit::fileOpen() {
559 Config cfg("TextEdit"); 562 Config cfg("TextEdit");
560 cfg. setGroup ( "View" ); 563 cfg. setGroup ( "View" );
561 QMap<QString, QStringList> map; 564 QMap<QString, QStringList> map;
562 map.insert(tr("All"), QStringList() ); 565 map.insert(tr("All"), QStringList() );
563 QStringList text; 566 QStringList text;
564 text << "text/*"; 567 text << "text/*";
565 map.insert(tr("Text"), text ); 568 map.insert(tr("Text"), text );
566 text << "*"; 569 text << "*";
567 map.insert(tr("All"), text ); 570 map.insert(tr("All"), text );
568 QString str = OFileDialog::getOpenFileName( 2, 571 QString str = OFileDialog::getOpenFileName( 2,
569 QString::null , 572 QString::null ,
570 QString::null, map); 573 QString::null, map);
571 if( !str.isEmpty() && QFile(str).exists() && !QFileInfo(str).isDir() ) 574 if( !str.isEmpty() && QFile(str).exists() && !QFileInfo(str).isDir() )
572 { 575 {
573 openFile( str ); 576 openFile( str );
574 } 577 }
575 else 578 else