summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/skia/debugger/QT/SkInspectorWidget.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/skia/debugger/QT/SkInspectorWidget.h')
-rw-r--r--chromium/third_party/skia/debugger/QT/SkInspectorWidget.h107
1 files changed, 107 insertions, 0 deletions
diff --git a/chromium/third_party/skia/debugger/QT/SkInspectorWidget.h b/chromium/third_party/skia/debugger/QT/SkInspectorWidget.h
new file mode 100644
index 00000000000..96a6da38e17
--- /dev/null
+++ b/chromium/third_party/skia/debugger/QT/SkInspectorWidget.h
@@ -0,0 +1,107 @@
+
+/*
+ * Copyright 2012 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+
+#ifndef SKINSPECTORWIDGET_H_
+#define SKINSPECTORWIDGET_H_
+
+#include "SkMatrix.h"
+
+#include <QWidget>
+#include <QTabWidget>
+#include <QTextEdit>
+#include <QHBoxLayout>
+#include <QLabel>
+#include <QLineEdit>
+
+/** \class SkInspectorWidget
+
+ The InspectorWidget contains the overview and details tab. These contain
+ information about the whole picture and details about each draw command.
+ */
+class SkInspectorWidget : public QWidget {
+ Q_OBJECT
+
+public:
+ enum TabType {
+ kOverview_TabType,
+ kDetail_TabType,
+ kClipStack_TabType,
+ kTotalTabCount,
+ };
+
+ /**
+ Constructs a widget with the specified parent for layout purposes.
+ @param parent The parent container of this widget
+ */
+ SkInspectorWidget();
+
+ void setDisabled(bool isDisabled) {
+ fMatrixAndClipWidget.setDisabled(isDisabled);
+ }
+
+ /**
+ Sets the text in tab at the specified index.
+ @param text
+ */
+ void setText(QString text, TabType type);
+
+ /**
+ Sets the text in the current matrix.
+ @param matrixValues
+ */
+ void setMatrix(const SkMatrix& matrix);
+
+ /**
+ Sets the text in the current clip.
+ @param clipValues
+ */
+ void setClip(const SkIRect& clip);
+
+ class Tab : public QWidget {
+ QWidget fTab;
+ QHBoxLayout fTabLayout;
+ QTextEdit fTabText;
+ QString fName;
+
+ Tab(const char* name) {
+ fTabText.setReadOnly(true);
+ fTabLayout.setSpacing(6);
+ fTabLayout.setContentsMargins(11, 11, 11, 11);
+ fTabLayout.addWidget(&fTabText);
+ fTab.setLayout(&fTabLayout);
+ fName = QString(name);
+ }
+ };
+
+private:
+ QHBoxLayout fHorizontalLayout;
+ QTabWidget fTabWidget;
+
+ QWidget fTabs[kTotalTabCount];
+ QHBoxLayout fTabLayouts[kTotalTabCount];
+ QTextEdit fTabTexts[kTotalTabCount];
+
+ QWidget fMatrixAndClipWidget;
+ QVBoxLayout fVerticalLayout;
+
+ QLabel fMatrixLabel;
+ QVBoxLayout fMatrixLayout;
+ QHBoxLayout fMatrixRow[3];
+ QLineEdit fMatrixEntry[9];
+
+ QLabel fClipLabel;
+ QVBoxLayout fClipLayout;
+ QHBoxLayout fClipRow[2];
+ QLineEdit fClipEntry[4];
+
+ QVBoxLayout* setupMatrix();
+ QVBoxLayout* setupClip();
+};
+
+#endif