Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(207)

Side by Side Diff: debugger/QT/SkDebuggerGUI.cpp

Issue 282283002: add pathops to debugger (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: make getAllowSimplifyClip const Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « debugger/QT/SkDebuggerGUI.h ('k') | debugger/QT/SkInspectorWidget.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 Google Inc. 2 * Copyright 2012 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "SkDebuggerGUI.h" 8 #include "SkDebuggerGUI.h"
9 #include "SkForceLinking.h" 9 #include "SkForceLinking.h"
10 #include "SkGraphics.h" 10 #include "SkGraphics.h"
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 connect(&fActionClearDeletes, SIGNAL(triggered()), this, SLOT(actionClearDel etes())); 94 connect(&fActionClearDeletes, SIGNAL(triggered()), this, SLOT(actionClearDel etes()));
95 connect(&fActionClose, SIGNAL(triggered()), this, SLOT(actionClose())); 95 connect(&fActionClose, SIGNAL(triggered()), this, SLOT(actionClose()));
96 connect(&fSettingsWidget, SIGNAL(visibilityFilterChanged()), this, SLOT(acti onCommandFilter())); 96 connect(&fSettingsWidget, SIGNAL(visibilityFilterChanged()), this, SLOT(acti onCommandFilter()));
97 #if SK_SUPPORT_GPU 97 #if SK_SUPPORT_GPU
98 connect(&fSettingsWidget, SIGNAL(glSettingsChanged()), this, SLOT(actionGLWi dget())); 98 connect(&fSettingsWidget, SIGNAL(glSettingsChanged()), this, SLOT(actionGLWi dget()));
99 #endif 99 #endif
100 connect(&fSettingsWidget, SIGNAL(texFilterSettingsChanged()), this, SLOT(act ionTextureFilter())); 100 connect(&fSettingsWidget, SIGNAL(texFilterSettingsChanged()), this, SLOT(act ionTextureFilter()));
101 connect(fSettingsWidget.getRasterCheckBox(), SIGNAL(toggled(bool)), this, SL OT(actionRasterWidget(bool))); 101 connect(fSettingsWidget.getRasterCheckBox(), SIGNAL(toggled(bool)), this, SL OT(actionRasterWidget(bool)));
102 connect(fSettingsWidget.getOverdrawVizCheckBox(), SIGNAL(toggled(bool)), thi s, SLOT(actionOverdrawVizWidget(bool))); 102 connect(fSettingsWidget.getOverdrawVizCheckBox(), SIGNAL(toggled(bool)), thi s, SLOT(actionOverdrawVizWidget(bool)));
103 connect(fSettingsWidget.getMegaVizCheckBox(), SIGNAL(toggled(bool)), this, S LOT(actionMegaVizWidget(bool))); 103 connect(fSettingsWidget.getMegaVizCheckBox(), SIGNAL(toggled(bool)), this, S LOT(actionMegaVizWidget(bool)));
104 connect(fSettingsWidget.getPathOpsCheckBox(), SIGNAL(toggled(bool)), this, S LOT(actionPathOpsWidget(bool)));
104 connect(&fActionPause, SIGNAL(toggled(bool)), this, SLOT(pauseDrawing(bool)) ); 105 connect(&fActionPause, SIGNAL(toggled(bool)), this, SLOT(pauseDrawing(bool)) );
105 connect(&fActionCreateBreakpoint, SIGNAL(activated()), this, SLOT(toggleBrea kpoint())); 106 connect(&fActionCreateBreakpoint, SIGNAL(activated()), this, SLOT(toggleBrea kpoint()));
106 connect(&fActionShowDeletes, SIGNAL(triggered()), this, SLOT(showDeletes())) ; 107 connect(&fActionShowDeletes, SIGNAL(triggered()), this, SLOT(showDeletes())) ;
107 connect(&fCanvasWidget, SIGNAL(hitChanged(int)), this, SLOT(selectCommand(in t))); 108 connect(&fCanvasWidget, SIGNAL(hitChanged(int)), this, SLOT(selectCommand(in t)));
108 connect(&fCanvasWidget, SIGNAL(hitChanged(int)), &fSettingsWidget, SLOT(upda teHit(int))); 109 connect(&fCanvasWidget, SIGNAL(hitChanged(int)), &fSettingsWidget, SLOT(upda teHit(int)));
109 connect(&fCanvasWidget, SIGNAL(scaleFactorChanged(float)), this, SLOT(action Scale(float))); 110 connect(&fCanvasWidget, SIGNAL(scaleFactorChanged(float)), this, SLOT(action Scale(float)));
110 connect(&fCanvasWidget, SIGNAL(commandChanged(int)), &fSettingsWidget, SLOT( updateCommand(int))); 111 connect(&fCanvasWidget, SIGNAL(commandChanged(int)), &fSettingsWidget, SLOT( updateCommand(int)));
111 connect(&fActionSaveAs, SIGNAL(triggered()), this, SLOT(actionSaveAs())); 112 connect(&fActionSaveAs, SIGNAL(triggered()), this, SLOT(actionSaveAs()));
112 connect(&fActionSave, SIGNAL(triggered()), this, SLOT(actionSave())); 113 connect(&fActionSave, SIGNAL(triggered()), this, SLOT(actionSave()));
113 114
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
408 // extract the individual command times from the SkTimedPlaybackPicture 409 // extract the individual command times from the SkTimedPlaybackPicture
409 for (int i = 0; i < picture->count(); ++i) { 410 for (int i = 0; i < picture->count(); ++i) {
410 double temp = picture->time(i); 411 double temp = picture->time(i);
411 412
412 QListWidgetItem* item = fListWidget.item(i); 413 QListWidgetItem* item = fListWidget.item(i);
413 414
414 item->setData(Qt::UserRole + 4, 100.0*temp); 415 item->setData(Qt::UserRole + 4, 100.0*temp);
415 } 416 }
416 417
417 setupOverviewText(picture->typeTimes(), picture->totTime(), kNumRepeats); 418 setupOverviewText(picture->typeTimes(), picture->totTime(), kNumRepeats);
419 setupClipStackText();
418 } 420 }
419 421
420 void SkDebuggerGUI::actionCancel() { 422 void SkDebuggerGUI::actionCancel() {
421 for (int row = 0; row < fListWidget.count(); row++) { 423 for (int row = 0; row < fListWidget.count(); row++) {
422 fListWidget.item(row)->setHidden(false); 424 fListWidget.item(row)->setHidden(false);
423 } 425 }
424 } 426 }
425 427
426 void SkDebuggerGUI::actionClearBreakpoints() { 428 void SkDebuggerGUI::actionClearBreakpoints() {
427 for (int row = 0; row < fListWidget.count(); row++) { 429 for (int row = 0; row < fListWidget.count(); row++) {
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
528 void SkDebuggerGUI::actionOverdrawVizWidget(bool isToggled) { 530 void SkDebuggerGUI::actionOverdrawVizWidget(bool isToggled) {
529 fDebugger.setOverdrawViz(isToggled); 531 fDebugger.setOverdrawViz(isToggled);
530 fCanvasWidget.update(); 532 fCanvasWidget.update();
531 } 533 }
532 534
533 void SkDebuggerGUI::actionMegaVizWidget(bool isToggled) { 535 void SkDebuggerGUI::actionMegaVizWidget(bool isToggled) {
534 fDebugger.setMegaViz(isToggled); 536 fDebugger.setMegaViz(isToggled);
535 fCanvasWidget.update(); 537 fCanvasWidget.update();
536 } 538 }
537 539
540 void SkDebuggerGUI::actionPathOpsWidget(bool isToggled) {
541 fDebugger.setPathOps(isToggled);
542 fCanvasWidget.update();
543 }
544
538 void SkDebuggerGUI::actionTextureFilter() { 545 void SkDebuggerGUI::actionTextureFilter() {
539 SkPaint::FilterLevel level; 546 SkPaint::FilterLevel level;
540 bool enabled = fSettingsWidget.getFilterOverride(&level); 547 bool enabled = fSettingsWidget.getFilterOverride(&level);
541 fDebugger.setTexFilterOverride(enabled, level); 548 fDebugger.setTexFilterOverride(enabled, level);
542 fCanvasWidget.update(); 549 fCanvasWidget.update();
543 } 550 }
544 551
545 void SkDebuggerGUI::actionRewind() { 552 void SkDebuggerGUI::actionRewind() {
546 fListWidget.setCurrentRow(0); 553 fListWidget.setCurrentRow(0);
547 } 554 }
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
655 QString info; 662 QString info;
656 info.append("<b>Parameters: </b><br/>"); 663 info.append("<b>Parameters: </b><br/>");
657 for (int i = 0; i < currInfo->count(); i++) { 664 for (int i = 0; i < currInfo->count(); i++) {
658 665
659 info.append(QString((*currInfo)[i]->c_str())); 666 info.append(QString((*currInfo)[i]->c_str()));
660 info.append("<br/>"); 667 info.append("<br/>");
661 } 668 }
662 fInspectorWidget.setText(info, SkInspectorWidget::kDetail_TabTyp e); 669 fInspectorWidget.setText(info, SkInspectorWidget::kDetail_TabTyp e);
663 fInspectorWidget.setDisabled(false); 670 fInspectorWidget.setDisabled(false);
664 } 671 }
672 setupClipStackText();
665 } 673 }
666 674
667 } 675 }
668 } 676 }
669 677
670 void SkDebuggerGUI::selectCommand(int command) { 678 void SkDebuggerGUI::selectCommand(int command) {
671 if (fPause) { 679 if (fPause) {
672 fListWidget.setCurrentRow(command); 680 fListWidget.setCurrentRow(command);
673 } 681 }
674 } 682 }
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after
1036 } 1044 }
1037 1045
1038 void SkDebuggerGUI::setupOverviewText(const SkTDArray<double>* typeTimes, 1046 void SkDebuggerGUI::setupOverviewText(const SkTDArray<double>* typeTimes,
1039 double totTime, 1047 double totTime,
1040 int numRuns) { 1048 int numRuns) {
1041 SkString overview; 1049 SkString overview;
1042 fDebugger.getOverviewText(typeTimes, totTime, &overview, numRuns); 1050 fDebugger.getOverviewText(typeTimes, totTime, &overview, numRuns);
1043 fInspectorWidget.setText(overview.c_str(), SkInspectorWidget::kOverview_TabT ype); 1051 fInspectorWidget.setText(overview.c_str(), SkInspectorWidget::kOverview_TabT ype);
1044 } 1052 }
1045 1053
1054 void SkDebuggerGUI::setupClipStackText() {
1055 SkString clipStack;
1056 fDebugger.getClipStackText(&clipStack);
1057 fInspectorWidget.setText(clipStack.c_str(), SkInspectorWidget::kClipStack_Ta bType);
1058 }
1059
1046 void SkDebuggerGUI::setupComboBox(SkTArray<SkString>* command) { 1060 void SkDebuggerGUI::setupComboBox(SkTArray<SkString>* command) {
1047 fFilter.clear(); 1061 fFilter.clear();
1048 fFilter.addItem("--Filter By Available Commands--"); 1062 fFilter.addItem("--Filter By Available Commands--");
1049 1063
1050 std::map<std::string, int> map; 1064 std::map<std::string, int> map;
1051 for (int i = 0; i < command->count(); i++) { 1065 for (int i = 0; i < command->count(); i++) {
1052 map[(*command)[i].c_str()]++; 1066 map[(*command)[i].c_str()]++;
1053 } 1067 }
1054 1068
1055 for (std::map<std::string, int>::iterator it = map.begin(); it != map.end(); 1069 for (std::map<std::string, int>::iterator it = map.begin(); it != map.end();
1056 ++it) { 1070 ++it) {
1057 fFilter.addItem((it->first).c_str()); 1071 fFilter.addItem((it->first).c_str());
1058 } 1072 }
1059 1073
1060 // NOTE(chudy): Makes first item unselectable. 1074 // NOTE(chudy): Makes first item unselectable.
1061 QStandardItemModel* model = qobject_cast<QStandardItemModel*>( 1075 QStandardItemModel* model = qobject_cast<QStandardItemModel*>(
1062 fFilter.model()); 1076 fFilter.model());
1063 QModelIndex firstIndex = model->index(0, fFilter.modelColumn(), 1077 QModelIndex firstIndex = model->index(0, fFilter.modelColumn(),
1064 fFilter.rootModelIndex()); 1078 fFilter.rootModelIndex());
1065 QStandardItem* firstItem = model->itemFromIndex(firstIndex); 1079 QStandardItem* firstItem = model->itemFromIndex(firstIndex);
1066 firstItem->setSelectable(false); 1080 firstItem->setSelectable(false);
1067 } 1081 }
OLDNEW
« no previous file with comments | « debugger/QT/SkDebuggerGUI.h ('k') | debugger/QT/SkInspectorWidget.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698