src/actionsEdit.cc

changeset 806
4240f47aa2d4
parent 805
d88c0354de97
child 840
d077dd19bf9a
equal deleted inserted replaced
805:d88c0354de97 806:4240f47aa2d4
68 return num; 68 return num;
69 } 69 }
70 70
71 // ============================================================================= 71 // =============================================================================
72 // 72 //
73 DEFINE_ACTION (Cut, CTRL (X)) 73 void MainWindow::slot_actionCut()
74 { 74 {
75 int num = copyToClipboard(); 75 int num = copyToClipboard();
76 deleteSelection(); 76 deleteSelection();
77 print (tr ("%1 objects cut"), num); 77 print (tr ("%1 objects cut"), num);
78 } 78 }
79 79
80 // ============================================================================= 80 // =============================================================================
81 // 81 //
82 DEFINE_ACTION (Copy, CTRL (C)) 82 void MainWindow::slot_actionCopy()
83 { 83 {
84 int num = copyToClipboard(); 84 int num = copyToClipboard();
85 print (tr ("%1 objects copied"), num); 85 print (tr ("%1 objects copied"), num);
86 } 86 }
87 87
88 // ============================================================================= 88 // =============================================================================
89 // 89 //
90 DEFINE_ACTION (Paste, CTRL (V)) 90 void MainWindow::slot_actionPaste()
91 { 91 {
92 const QString clipboardText = qApp->clipboard()->text(); 92 const QString clipboardText = qApp->clipboard()->text();
93 int idx = getInsertionPoint(); 93 int idx = getInsertionPoint();
94 getCurrentDocument()->clearSelection(); 94 getCurrentDocument()->clearSelection();
95 int num = 0; 95 int num = 0;
107 scrollToSelection(); 107 scrollToSelection();
108 } 108 }
109 109
110 // ============================================================================= 110 // =============================================================================
111 // 111 //
112 DEFINE_ACTION (Delete, KEY (Delete)) 112 void MainWindow::slot_actionDelete()
113 { 113 {
114 int num = deleteSelection(); 114 int num = deleteSelection();
115 print (tr ("%1 objects deleted"), num); 115 print (tr ("%1 objects deleted"), num);
116 } 116 }
117 117
147 } 147 }
148 148
149 g_win->refresh(); 149 g_win->refresh();
150 } 150 }
151 151
152 DEFINE_ACTION (Inline, CTRL (I)) 152 void MainWindow::slot_actionInline()
153 { 153 {
154 doInline (false); 154 doInline (false);
155 } 155 }
156 156
157 DEFINE_ACTION (InlineDeep, CTRL_SHIFT (I)) 157 void MainWindow::slot_actionInlineDeep()
158 { 158 {
159 doInline (true); 159 doInline (true);
160 } 160 }
161 161
162 // ============================================================================= 162 // =============================================================================
163 // 163 //
164 DEFINE_ACTION (SplitQuads, 0) 164 void MainWindow::slot_actionSplitQuads()
165 { 165 {
166 int num = 0; 166 int num = 0;
167 167
168 for (LDObjectPtr obj : selection()) 168 for (LDObjectPtr obj : selection())
169 { 169 {
189 refresh(); 189 refresh();
190 } 190 }
191 191
192 // ============================================================================= 192 // =============================================================================
193 // 193 //
194 DEFINE_ACTION (EditRaw, KEY (F9)) 194 void MainWindow::slot_actionEditRaw()
195 { 195 {
196 if (selection().size() != 1) 196 if (selection().size() != 1)
197 return; 197 return;
198 198
199 LDObjectPtr obj = selection()[0]; 199 LDObjectPtr obj = selection()[0];
220 refresh(); 220 refresh();
221 } 221 }
222 222
223 // ============================================================================= 223 // =============================================================================
224 // 224 //
225 DEFINE_ACTION (SetColor, KEY (C)) 225 void MainWindow::slot_actionSetColor()
226 { 226 {
227 if (selection().isEmpty()) 227 if (selection().isEmpty())
228 return; 228 return;
229 229
230 LDObjectList objs = selection(); 230 LDObjectList objs = selection();
247 } 247 }
248 } 248 }
249 249
250 // ============================================================================= 250 // =============================================================================
251 // 251 //
252 DEFINE_ACTION (Borders, CTRL_SHIFT (B)) 252 void MainWindow::slot_actionBorders()
253 { 253 {
254 LDObjectList objs = selection(); 254 LDObjectList objs = selection();
255 int num = 0; 255 int num = 0;
256 256
257 for (LDObjectPtr obj : objs) 257 for (LDObjectPtr obj : objs)
295 refresh(); 295 refresh();
296 } 296 }
297 297
298 // ============================================================================= 298 // =============================================================================
299 // 299 //
300 DEFINE_ACTION (CornerVerts, 0) 300 void MainWindow::slot_actionCornerVerts()
301 { 301 {
302 int num = 0; 302 int num = 0;
303 303
304 for (LDObjectPtr obj : selection()) 304 for (LDObjectPtr obj : selection())
305 { 305 {
331 g_win->buildObjList(); 331 g_win->buildObjList();
332 } 332 }
333 333
334 // ============================================================================= 334 // =============================================================================
335 // 335 //
336 DEFINE_ACTION (MoveUp, KEY (PageUp)) 336 void MainWindow::slot_actionMoveUp()
337 { 337 {
338 doMoveSelection (true); 338 doMoveSelection (true);
339 } 339 }
340 340
341 DEFINE_ACTION (MoveDown, KEY (PageDown)) 341 void MainWindow::slot_actionMoveDown()
342 { 342 {
343 doMoveSelection (false); 343 doMoveSelection (false);
344 } 344 }
345 345
346 // ============================================================================= 346 // =============================================================================
347 // 347 //
348 DEFINE_ACTION (Undo, CTRL (Z)) 348 void MainWindow::slot_actionUndo()
349 { 349 {
350 getCurrentDocument()->undo(); 350 getCurrentDocument()->undo();
351 } 351 }
352 352
353 DEFINE_ACTION (Redo, CTRL_SHIFT (Z)) 353 void MainWindow::slot_actionRedo()
354 { 354 {
355 getCurrentDocument()->redo(); 355 getCurrentDocument()->redo();
356 } 356 }
357 357
358 // ============================================================================= 358 // =============================================================================
368 g_win->refresh(); 368 g_win->refresh();
369 } 369 }
370 370
371 // ============================================================================= 371 // =============================================================================
372 // 372 //
373 DEFINE_ACTION (MoveXNeg, KEY (Left)) 373 void MainWindow::slot_actionMoveXNeg()
374 { 374 {
375 doMoveObjects ({-1, 0, 0}); 375 doMoveObjects ({-1, 0, 0});
376 } 376 }
377 377
378 DEFINE_ACTION (MoveYNeg, KEY (Home)) 378 void MainWindow::slot_actionMoveYNeg()
379 { 379 {
380 doMoveObjects ({0, -1, 0}); 380 doMoveObjects ({0, -1, 0});
381 } 381 }
382 382
383 DEFINE_ACTION (MoveZNeg, KEY (Down)) 383 void MainWindow::slot_actionMoveZNeg()
384 { 384 {
385 doMoveObjects ({0, 0, -1}); 385 doMoveObjects ({0, 0, -1});
386 } 386 }
387 387
388 DEFINE_ACTION (MoveXPos, KEY (Right)) 388 void MainWindow::slot_actionMoveXPos()
389 { 389 {
390 doMoveObjects ({1, 0, 0}); 390 doMoveObjects ({1, 0, 0});
391 } 391 }
392 392
393 DEFINE_ACTION (MoveYPos, KEY (End)) 393 void MainWindow::slot_actionMoveYPos()
394 { 394 {
395 doMoveObjects ({0, 1, 0}); 395 doMoveObjects ({0, 1, 0});
396 } 396 }
397 397
398 DEFINE_ACTION (MoveZPos, KEY (Up)) 398 void MainWindow::slot_actionMoveZPos()
399 { 399 {
400 doMoveObjects ({0, 0, 1}); 400 doMoveObjects ({0, 0, 1});
401 } 401 }
402 402
403 // ============================================================================= 403 // =============================================================================
404 // 404 //
405 DEFINE_ACTION (Invert, CTRL_SHIFT (W)) 405 void MainWindow::slot_actionInvert()
406 { 406 {
407 for (LDObjectPtr obj : selection()) 407 for (LDObjectPtr obj : selection())
408 obj->invert(); 408 obj->invert();
409 409
410 refresh(); 410 refresh();
482 g_win->refresh(); 482 g_win->refresh();
483 } 483 }
484 484
485 // ============================================================================= 485 // =============================================================================
486 // 486 //
487 DEFINE_ACTION (RotateXPos, CTRL (Right)) 487 void MainWindow::slot_actionRotateXPos()
488 { 488 {
489 doRotate (1, 0, 0); 489 doRotate (1, 0, 0);
490 } 490 }
491 DEFINE_ACTION (RotateYPos, CTRL (End)) 491 void MainWindow::slot_actionRotateYPos()
492 { 492 {
493 doRotate (0, 1, 0); 493 doRotate (0, 1, 0);
494 } 494 }
495 DEFINE_ACTION (RotateZPos, CTRL (Up)) 495 void MainWindow::slot_actionRotateZPos()
496 { 496 {
497 doRotate (0, 0, 1); 497 doRotate (0, 0, 1);
498 } 498 }
499 DEFINE_ACTION (RotateXNeg, CTRL (Left)) 499 void MainWindow::slot_actionRotateXNeg()
500 { 500 {
501 doRotate (-1, 0, 0); 501 doRotate (-1, 0, 0);
502 } 502 }
503 DEFINE_ACTION (RotateYNeg, CTRL (Home)) 503 void MainWindow::slot_actionRotateYNeg()
504 { 504 {
505 doRotate (0, -1, 0); 505 doRotate (0, -1, 0);
506 } 506 }
507 DEFINE_ACTION (RotateZNeg, CTRL (Down)) 507 void MainWindow::slot_actionRotateZNeg()
508 { 508 {
509 doRotate (0, 0, -1); 509 doRotate (0, 0, -1);
510 } 510 }
511 511
512 DEFINE_ACTION (RotationPoint, (0)) 512 void MainWindow::slot_actionRotationPoint()
513 { 513 {
514 configRotationPoint(); 514 configRotationPoint();
515 } 515 }
516 516
517 // ============================================================================= 517 // =============================================================================
518 // 518 //
519 DEFINE_ACTION (RoundCoordinates, 0) 519 void MainWindow::slot_actionRoundCoordinates()
520 { 520 {
521 setlocale (LC_ALL, "C"); 521 setlocale (LC_ALL, "C");
522 int num = 0; 522 int num = 0;
523 523
524 for (LDObjectPtr obj : selection()) 524 for (LDObjectPtr obj : selection())
555 refresh(); 555 refresh();
556 } 556 }
557 557
558 // ============================================================================= 558 // =============================================================================
559 // 559 //
560 DEFINE_ACTION (Uncolor, 0) 560 void MainWindow::slot_actionUncolor()
561 { 561 {
562 int num = 0; 562 int num = 0;
563 563
564 for (LDObjectPtr obj : selection()) 564 for (LDObjectPtr obj : selection())
565 { 565 {
574 refresh(); 574 refresh();
575 } 575 }
576 576
577 // ============================================================================= 577 // =============================================================================
578 // 578 //
579 DEFINE_ACTION (ReplaceCoords, CTRL (R)) 579 void MainWindow::slot_actionReplaceCoords()
580 { 580 {
581 QDialog* dlg = new QDialog (g_win); 581 QDialog* dlg = new QDialog (g_win);
582 Ui::ReplaceCoordsUI ui; 582 Ui::ReplaceCoordsUI ui;
583 ui.setupUi (dlg); 583 ui.setupUi (dlg);
584 584
626 refresh(); 626 refresh();
627 } 627 }
628 628
629 // ============================================================================= 629 // =============================================================================
630 // 630 //
631 DEFINE_ACTION (Flip, CTRL_SHIFT (F)) 631 void MainWindow::slot_actionFlip()
632 { 632 {
633 QDialog* dlg = new QDialog; 633 QDialog* dlg = new QDialog;
634 Ui::FlipUI ui; 634 Ui::FlipUI ui;
635 ui.setupUi (dlg); 635 ui.setupUi (dlg);
636 636
662 refresh(); 662 refresh();
663 } 663 }
664 664
665 // ============================================================================= 665 // =============================================================================
666 // 666 //
667 DEFINE_ACTION (Demote, 0) 667 void MainWindow::slot_actionDemote()
668 { 668 {
669 LDObjectList sel = selection(); 669 LDObjectList sel = selection();
670 int num = 0; 670 int num = 0;
671 671
672 for (LDObjectPtr obj : sel) 672 for (LDObjectPtr obj : sel)
695 return false; 695 return false;
696 } 696 }
697 697
698 // ============================================================================= 698 // =============================================================================
699 // 699 //
700 DEFINE_ACTION (Autocolor, 0) 700 void MainWindow::slot_actionAutocolor()
701 { 701 {
702 int colnum = 0; 702 int colnum = 0;
703 LDColor color; 703 LDColor color;
704 704
705 for (colnum = 0; colnum < numLDConfigColors() && ((color = LDColor::fromIndex (colnum)) == null || isColorUsed (color)); colnum++) 705 for (colnum = 0; colnum < numLDConfigColors() && ((color = LDColor::fromIndex (colnum)) == null || isColorUsed (color)); colnum++)
717 continue; 717 continue;
718 718
719 obj->setColor (color); 719 obj->setColor (color);
720 } 720 }
721 721
722 print (tr ("Auto-colored: new color is [%1] %2"), colnum, color->name()); 722 print (tr ("Auto-colored: new color is [%1] %2"), colnum, color.name());
723 refresh(); 723 refresh();
724 } 724 }
725 725
726 // ============================================================================= 726 // =============================================================================
727 // 727 //
728 DEFINE_ACTION (AddHistoryLine, 0) 728 void MainWindow::slot_actionAddHistoryLine()
729 { 729 {
730 LDObjectPtr obj; 730 LDObjectPtr obj;
731 bool ishistory = false, 731 bool ishistory = false,
732 prevIsHistory = false; 732 prevIsHistory = false;
733 733
779 779
780 buildObjList(); 780 buildObjList();
781 delete ui; 781 delete ui;
782 } 782 }
783 783
784 DEFINE_ACTION (SplitLines, 0) 784 void MainWindow::slot_actionSplitLines()
785 { 785 {
786 bool ok; 786 bool ok;
787 int segments = QInputDialog::getInt (g_win, APPNAME, "Amount of segments:", cfg::splitLinesSegments, 0, 787 int segments = QInputDialog::getInt (g_win, APPNAME, "Amount of segments:", cfg::splitLinesSegments, 0,
788 std::numeric_limits<int>::max(), 1, &ok); 788 std::numeric_limits<int>::max(), 1, &ok);
789 789

mercurial