File indexing completed on 2025-02-23 04:11:15
0001 /* 0002 * SPDX-FileCopyrightText: 2015 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "TestNodeView.h" 0008 0009 #include <QTest> 0010 #include <QDialog> 0011 #include <QVBoxLayout> 0012 #include <QGridLayout> 0013 #include <QLabel> 0014 0015 #include <NodeView.h> 0016 0017 #include "KisDocument.h" 0018 #include "KisPart.h" 0019 #include "kis_name_server.h" 0020 #include "flake/kis_shape_controller.h" 0021 #include "kis_undo_adapter.h" 0022 #include "kis_node_model.h" 0023 #include "kis_color_filter_combo.h" 0024 0025 #include <testresources.h> 0026 0027 void NodeViewTest::init() 0028 { 0029 m_doc = KisPart::instance()->createDocument(); 0030 0031 m_nameServer = new KisNameServer(); 0032 m_shapeController = new KisShapeController(m_nameServer, m_doc->undoStack()); 0033 0034 initBase(); 0035 } 0036 0037 void NodeViewTest::cleanup() 0038 { 0039 cleanupBase(); 0040 0041 delete m_shapeController; 0042 delete m_nameServer; 0043 delete m_doc; 0044 } 0045 0046 0047 void NodeViewTest::testLayers() 0048 { 0049 #ifndef ENABLE_GUI_TESTS 0050 return; 0051 #endif 0052 0053 QDialog dlg; 0054 0055 QFont font; 0056 font.setPointSizeF(8); 0057 dlg.setFont(font); 0058 0059 KisNodeModel *model = new KisNodeModel(0); 0060 NodeView *view = new NodeView(&dlg); 0061 0062 view->setModel(model); 0063 0064 constructImage(); 0065 addSelectionMasks(); 0066 m_shapeController->setImage(m_image); 0067 0068 model->setDummiesFacade(m_shapeController, m_image, m_shapeController, 0, 0); 0069 0070 QVBoxLayout *layout = new QVBoxLayout(&dlg); 0071 KisColorFilterCombo *cb = new KisColorFilterCombo(&dlg); 0072 0073 QSet<int> labels; 0074 for (int i = 0; i < 6; i++) { 0075 labels.insert(i); 0076 } 0077 cb->updateAvailableLabels(labels); 0078 0079 QHBoxLayout *hbox = new QHBoxLayout(&dlg); 0080 hbox->addStretch(1); 0081 hbox->addWidget(cb); 0082 layout->addLayout(hbox); 0083 layout->addWidget(view); 0084 0085 dlg.resize(280, 400); 0086 view->expandAll(); 0087 0088 dlg.exec(); 0089 } 0090 0091 #include "kis_color_label_selector_widget.h" 0092 0093 void NodeViewTest::testColorLabels() 0094 { 0095 #ifndef ENABLE_GUI_TESTS 0096 return; 0097 #endif 0098 0099 0100 QDialog dlg; 0101 0102 QFont font; 0103 font.setPointSizeF(8); 0104 dlg.setFont(font); 0105 0106 KisColorLabelSelectorWidget *widget = new KisColorLabelSelectorWidget(&dlg); 0107 QSizePolicy policy(QSizePolicy::Preferred, QSizePolicy::Preferred); 0108 widget->setSizePolicy(policy); 0109 0110 QVBoxLayout *layout = new QVBoxLayout(&dlg); 0111 layout->addWidget(widget); 0112 layout->addStretch(1); 0113 0114 dlg.resize(280, 400); 0115 dlg.exec(); 0116 } 0117 0118 KISTEST_MAIN(NodeViewTest)