diff options
| author | syrja <mikko@3d-system.fi> | 2019-07-25 15:39:57 +0300 |
|---|---|---|
| committer | syrja <mikko@3d-system.fi> | 2019-07-25 15:39:57 +0300 |
| commit | c4f3f55469858998105c5d35e4c905bc4dd59eff (patch) | |
| tree | 2dbdd4fcd5537a50060bd3950e6d3b85dc39238b | |
| parent | 7202148aeeaac7e5ed0dce3bfc501b5200314757 (diff) | |
| download | symedit-c4f3f55469858998105c5d35e4c905bc4dd59eff.tar.gz symedit-c4f3f55469858998105c5d35e4c905bc4dd59eff.zip | |
Added text and symbol size handling.
| -rw-r--r-- | Editor.qml | 35 | ||||
| -rw-r--r-- | help/eng/tools.rst | 11 | ||||
| -rw-r--r-- | help/fin/tools.rst | 12 | ||||
| -rw-r--r-- | locale/symedit.en_GB.qm | bin | 8084 -> 8157 bytes | |||
| -rw-r--r-- | locale/symedit.en_GB.ts | 8 | ||||
| -rw-r--r-- | locale/symedit.fi_FI.qm | bin | 8810 -> 8887 bytes | |||
| -rw-r--r-- | locale/symedit.fi_FI.ts | 8 | ||||
| -rw-r--r-- | locale/symedit.ts | 6 | ||||
| -rwxr-xr-x | lrelease.sh | 2 | ||||
| -rw-r--r-- | main.qml | 33 | ||||
| -rw-r--r-- | symbol.cpp | 49 | ||||
| -rw-r--r-- | symbol.h | 7 | ||||
| -rw-r--r-- | symedit.cpp | 45 | ||||
| -rw-r--r-- | symedit.h | 6 |
14 files changed, 162 insertions, 60 deletions
@@ -59,14 +59,15 @@ Rectangle { mousex = Math.round((mouse.x - canvas.x) / scalexy / snapgrid) * snapgrid - max - offsetx mousey = max - Math.round((mouse.y - canvas.y) / scalexy / snapgrid) * snapgrid + offsety - if ( mousex < -max) - mousex = -max - else if ( mousex > max ) - mousex = max - if ( mousey < -max ) - mousey = -max - else if ( mousey > max ) - mousey = max + + if ( mousex < -units ) + mousex = -units + else if ( mousex > units ) + mousex = units + if ( mousey < -units ) + mousey = -units + else if ( mousey > units ) + mousey = units if ( down ) canvas.requestPaint() @@ -97,7 +98,7 @@ Rectangle { if ( tool === Editor.Tool.TextHorizontal ) { - if ( manager.addTextItem(Operation.Text, Qt.point(endx, endy), Qt.point(endx, endy), textvalue, colorindex, alignment) ) + if ( manager.addTextItem(Operation.Text, Qt.point(endx, endy), Qt.point(endx, endy), textvalue, textsize, colorindex, alignment) ) { symbol = manager.getSymbol(true) canvas.requestPaint() @@ -161,7 +162,7 @@ Rectangle } else if ( tool === Editor.Tool.TextRotated ) { - if ( manager.addTextItem(Operation.Text, Qt.point(startx, starty), Qt.point(endx, endy), textvalue, colorindex, alignment) ) + if ( manager.addTextItem(Operation.Text, Qt.point(startx, starty), Qt.point(endx, endy), textvalue, textsize, colorindex, alignment) ) symbol = manager.getSymbol(true) } } @@ -262,11 +263,12 @@ Rectangle } } - function painttext(context, string, point, end, active) + function painttext(context, string, point, end, size, active) { var currentwidth = context.lineWidth - context.lineWidth = textsize * (preview ? zoommin : zoomscale) / 2 - var fontsize = 30 * textsize * (preview ? zoommin : zoomscale) + size = Math.abs(size ? size : 2.5) * (preview ? zoommin : zoomscale) / symbolsize + context.lineWidth = size * 10 + var fontsize = 300 * size context.font = fontsize.toString() + "px sans-serif" var position = Qt.point((point.x + max + offsetx) * scalexy, (max - point.y + offsety) * scalexy) context.translate(position.x, position.y) @@ -361,9 +363,10 @@ Rectangle } else if ( operation === Operation.Text ) { + var size = manager.getItemSize(index); point = manager.getItemPoint(index) setalignment(context, manager.getItemAlign(index)) - painttext(context, manager.getItemText(index), position, point, index === active) + painttext(context, manager.getItemText(index), position, point, size, index === active) } } } @@ -453,9 +456,9 @@ Rectangle { setalignment(context, alignment) if ( tool === Editor.Tool.TextHorizontal ) - painttext(context, textvalue, Qt.point(mousex, mousey), Qt.point(mousex, mousey), true) + painttext(context, textvalue, Qt.point(mousex, mousey), Qt.point(mousex, mousey), textsize, true) else if ( tool === Editor.Tool.TextRotated ) - painttext(context, textvalue, Qt.point(startx, starty), Qt.point(mousex, mousey), true) + painttext(context, textvalue, Qt.point(startx, starty), Qt.point(mousex, mousey), textsize, true) } } diff --git a/help/eng/tools.rst b/help/eng/tools.rst index 64ec2c3..bd3d00e 100644 --- a/help/eng/tools.rst +++ b/help/eng/tools.rst @@ -108,10 +108,10 @@ Line width Line width in editing. -Text size -^^^^^^^^^ +Symbol size +^^^^^^^^^^^ -Text size in editing. +Symbol size in editing. Language ^^^^^^^^ @@ -137,6 +137,11 @@ Text Alignment Text alignment value 1-12. +Text size +^^^^^^^^^ + +Text size. + Text ^^^^ diff --git a/help/fin/tools.rst b/help/fin/tools.rst index 25d3218..22e530b 100644 --- a/help/fin/tools.rst +++ b/help/fin/tools.rst @@ -108,10 +108,10 @@ Viivan leveys Viivan leveys editoinnissa. -Tekstin koko -^^^^^^^^^^^^ +Symbolin koko +^^^^^^^^^^^^^ -Tekstin koko editoinnissa. +Symbolin koko editoinnissa. Kieli ^^^^^ @@ -137,8 +137,12 @@ Tekstin asemointi Tekstin asemointi 1-12. +Tekstin koko +^^^^^^^^^^^^ + +Tekstin koko. + Teksti ^^^^^^ Symbolin teksti. - diff --git a/locale/symedit.en_GB.qm b/locale/symedit.en_GB.qm Binary files differindex 0f5d2f6..b6d26dc 100644 --- a/locale/symedit.en_GB.qm +++ b/locale/symedit.en_GB.qm diff --git a/locale/symedit.en_GB.ts b/locale/symedit.en_GB.ts index 412444d..0a461bf 100644 --- a/locale/symedit.en_GB.ts +++ b/locale/symedit.en_GB.ts @@ -273,9 +273,9 @@ <source></source> <translation>Line Width</translation> </message> - <message id="id_toolbar_text_size"> + <message id="id_toolbar_symbol_size"> <source></source> - <translation>Text Size</translation> + <translation>Symbol Size</translation> </message> <message id="id_toolbar_language"> <source></source> @@ -381,6 +381,10 @@ <source></source> <translation>12 Middle left</translation> </message> + <message id="id_toolbar_text_size"> + <source></source> + <translation>Text Size</translation> + </message> <message id="id_toolbar_text_field"> <source></source> <translation>Text</translation> diff --git a/locale/symedit.fi_FI.qm b/locale/symedit.fi_FI.qm Binary files differindex 571b972..af413ca 100644 --- a/locale/symedit.fi_FI.qm +++ b/locale/symedit.fi_FI.qm diff --git a/locale/symedit.fi_FI.ts b/locale/symedit.fi_FI.ts index b6823e2..29152f4 100644 --- a/locale/symedit.fi_FI.ts +++ b/locale/symedit.fi_FI.ts @@ -273,9 +273,9 @@ <source></source> <translation>Viivan leveys</translation> </message> - <message id="id_toolbar_text_size"> + <message id="id_toolbar_symbol_size"> <source></source> - <translation>Tekstin koko</translation> + <translation>Symbolin koko</translation> </message> <message id="id_toolbar_language"> <source></source> @@ -381,6 +381,10 @@ <source></source> <translation>12 Puolivälissä vasemmalla</translation> </message> + <message id="id_toolbar_text_size"> + <source></source> + <translation>Tekstin koko</translation> + </message> <message id="id_toolbar_text_field"> <source></source> <translation>Teksti</translation> diff --git a/locale/symedit.ts b/locale/symedit.ts index 0ec4982..de92f40 100644 --- a/locale/symedit.ts +++ b/locale/symedit.ts @@ -233,7 +233,7 @@ <source></source> <translation type="unfinished"></translation> </message> - <message id="id_toolbar_text_size"> + <message id="id_toolbar_symbol_size"> <source></source> <translation type="unfinished"></translation> </message> @@ -341,6 +341,10 @@ <source></source> <translation type="unfinished"></translation> </message> + <message id="id_toolbar_text_size"> + <source></source> + <translation type="unfinished"></translation> + </message> <message id="id_toolbar_text_field"> <source></source> <translation type="unfinished"></translation> diff --git a/lrelease.sh b/lrelease.sh index 339cbf8..159233b 100755 --- a/lrelease.sh +++ b/lrelease.sh @@ -1,3 +1,5 @@ +# C:\Users\Mikko\Code\Qt\5.12.4\msvc2017_64\bin\lrelease.exe -idbased locale\symedit.fi_FI.ts + /home/mikko/Code/Qt5.12.2/5.12.2/gcc_64/bin/lrelease -idbased locale/symedit.*.ts if [ $? -ne 0 ]; then @@ -18,12 +18,13 @@ ApplicationWindow property int snapgrid: 1 property real linewidth: 1 - property int textsize: 1 + property real symbolsize: 5.0 property string language: "eng" property int colorindex: 1 property int fillitem: 0 property int alignment: 1 + property real textsize: 2.5 property string textvalue: textfield.text property int tool: 0 @@ -214,14 +215,14 @@ ApplicationWindow function setWidth() { currentIndex = linewidth - 1 } } BarSeparator { } - Text { text: qsTrId("id_toolbar_text_size") } + Text { text: qsTrId("id_toolbar_symbol_size") } ComboBox { - id: sizelist + id: symbollist implicitWidth: 60 - model: [ 1, 2, 3, 4, 5 ] - onCurrentIndexChanged: { textsize = currentIndex + 1; editor.update() } - function setSize() { currentIndex = textsize - 1 } + model: [ "1.0", "2.0", "3.0", "4.0", "5.0", "6.0", "7.0", "8.0", "9.0", "10.0" ] + onCurrentIndexChanged: { symbolsize = currentIndex + 1; editor.update() } + function setSize() { currentIndex = symbolsize - 1 } } BarSeparator { } Text { text: qsTrId("id_toolbar_language") } @@ -292,6 +293,17 @@ ApplicationWindow function setAlign() { currentIndex = alignment - 1 } } BarSeparator { } + Text { text: qsTrId("id_toolbar_text_size") } + ComboBox + { + id: sizelist + implicitWidth: 60 + model: [ "-5.0", "-4.5", "-4.0", "-3.5", "-3.0", "-2.5", "-2.0", "-1.5", "-1.0", "-0.5", + "0.0", "0.5", "1.0", "1.5", "2.0", "2.5", "3.0", "3.5", "4.0", "4.5", "5.0" ] + onCurrentIndexChanged: { textsize = currentIndex / 2 - 5; editor.update() } + function setSize() { currentIndex = textsize * 2 + 10 } + } + BarSeparator { } Text { text: qsTrId("id_toolbar_text_field") } TextField { @@ -349,12 +361,13 @@ ApplicationWindow onSnapgridChanged: { manager.setIntSetting("SnapGrid", snapgrid); editor.update() } onLinewidthChanged: { manager.setIntSetting("LineWidth", linewidth) } - onTextsizeChanged: { manager.setIntSetting("TextSize", textsize) } + onSymbolsizeChanged: { manager.setRealSetting("SymbolSize", symbolsize) } onLanguageChanged: { manager.setTextSetting("Language", language) } onColorindexChanged: { manager.setIntSetting("ColorIndex", colorindex) } onFillitemChanged: { manager.setIntSetting("FillItem", fillitem) } onAlignmentChanged: { manager.setIntSetting("Alignment", alignment) } + onTextsizeChanged: { manager.setRealSetting("TextSize", textsize) } onTextvalueChanged: { manager.setTextSetting("TextValue", textvalue) } onToolChanged: { manager.setIntSetting("Tool", tool) } @@ -368,24 +381,26 @@ ApplicationWindow snapgrid = manager.getIntSetting("SnapGrid") linewidth = manager.getIntSetting("LineWidth") - textsize = manager.getIntSetting("TextSize") + symbolsize = manager.getRealSetting("SymbolSize") language = manager.getTextSetting("Language") colorindex = manager.getIntSetting("ColorIndex") fillitem = manager.getIntSetting("FillItem") alignment = manager.getIntSetting("Alignment") + textsize = manager.getRealSetting("TextSize") textfield.text = manager.getTextSetting("TextValue") tool = manager.getIntSetting("Tool") snaplist.setSnap() widthlist.setWidth() - sizelist.setSize() + symbollist.setSize() langlist.setLang() colorlist.setColor() filllist.setFill() alignlist.setAlign() + sizelist.setSize() symbol = manager.getSymbol(true) @@ -23,7 +23,6 @@ SymEditSymbol::Item::Item() : Operation(Operation::None), Fill(0), Align(9) } -//@{ //! Constructor. /*! \param operation Item operation. @@ -34,16 +33,26 @@ SymEditSymbol::Item::Item() : Operation(Operation::None), Fill(0), Align(9) \param fill Item area fill. */ SymEditSymbol::Item::Item(Operation::Type operation, QPoint point, QPoint end, int value, int color, int fill) - : Operation(operation), Point(point), End(end), Value(value), Color(color), Fill(fill), Align(0) + : Operation(operation), Point(point), End(end), Size(0.0), Value(value), Color(color), Fill(fill), Align(0) { } -SymEditSymbol::Item::Item(Operation::Type operation, QPoint point, QPoint end, QString value, int color, int align) - : Operation(operation), Point(point), End(end), Value(0), Text(value), Color(color), Fill(0), Align(align) + +//! Constructor. +/*! + \param operation Item operation. + \param point Item position. + \param end End position. + \param text Text string. + \param size Text size. + \param color Item color index. + \param align Text alignment. +*/ +SymEditSymbol::Item::Item(Operation::Type operation, QPoint point, QPoint end, QString text, double size, int color, int align) + : Operation(operation), Point(point), End(end), Text(text), Size(size), Value(0), Color(color), Fill(0), Align(align) { } -//@} // // symbol functions @@ -62,6 +71,7 @@ void SymEditSymbol::Load(const QString& buffer) { Items.clear(); QPoint position(0, 0); + double size = 0.0; int color = 1, fill = 0, align = 9, angle = 0; for ( const auto& string : buffer.split(';', QString::SkipEmptyParts) ) { @@ -88,6 +98,8 @@ void SymEditSymbol::Load(const QString& buffer) fill = value; else if ( type == 'J' ) align = value; + else if ( type == 'S' ) + size = string.mid(1).toDouble(); else if ( type == 'G' ) angle = value; else if ( type == 'R' ) @@ -100,7 +112,7 @@ void SymEditSymbol::Load(const QString& buffer) double radian = angle / 200.0 * ConstPi; end = QPoint(static_cast<int>(cos(radian) * 100.0), static_cast<int>(sin(radian) * 100.0)); } - Items.push_back(Item(Operation::Text, position, end, type == '!' ? string.mid(1) : string, color, align)); + Items.push_back(Item(Operation::Text, position, end, type == '!' ? string.mid(1) : string, size, color, align)); } } } @@ -132,6 +144,7 @@ QString& SymEditSymbol::Save(QString& buffer, bool rich) const buffer.clear(); QPoint position(0, 0); + double size = 0.0; int index = 0, color = 1, fill = 0, align = 9, angle = 0; for ( const auto& item : Items ) { @@ -175,6 +188,13 @@ QString& SymEditSymbol::Save(QString& buffer, bool rich) const color = appendoption('C', buffer, item.Color); if ( item.Align != align ) align = appendoption('J', buffer, item.Align); + if ( item.Size != size ) + { +// size = appendoption('S', buffer, item.Size); + QString value; + size = item.Size; + buffer.append('S').append(value.setNum(size)).append(';'); + } if ( item.Point != position ) appendpoint(buffer.append('U'), item.Point, 2); if ( item.Text.front() != '$' && item.Text.front() != '#' ) @@ -212,7 +232,6 @@ void SymEditSymbol::Clear() Items.clear(); } -//@{ //! Add symbol item. /*! \param operation Item operation. @@ -230,14 +249,24 @@ SymEditSymbol::Item& SymEditSymbol::AddItem(Operation::Type operation, QPoint po Items.push_back(item); return Items.back(); } -SymEditSymbol::Item& SymEditSymbol::AddItem(Operation::Type operation, QPoint point, QPoint end, QString value, int color, int align) + +//! Add symbol item. +/*! + \param operation Item operation. + \param point Start position. + \param end End position. + \param value Item value. + \param color Item color index. + \param fill Item area fill. + \return Reference to item. +*/ +SymEditSymbol::Item& SymEditSymbol::AddItem(Operation::Type operation, QPoint point, QPoint end, QString text, double size, int color, int align) { - Item item(operation, point, end, value, color, align); + Item item(operation, point, end, text, size, color, align); ActiveIndex = static_cast<int>(Items.size()); Items.push_back(item); return Items.back(); } -//@} //! Remove item. /*! @@ -33,13 +33,14 @@ public: public: Item(); Item(Operation::Type operation, QPoint point, QPoint end, int value, int color, int fill); - Item(Operation::Type operation, QPoint point, QPoint end, QString value, int color, int align); + Item(Operation::Type operation, QPoint point, QPoint end, QString text, double size, int color, int align); Operation::Type Operation; //!< Item operation. QPoint Point; //!< Item coordinates. QPoint End; //!< End coordinates. - int Value; //!< Item value. QString Text; //!< Text string. + double Size; //!< Text size. + int Value; //!< Item value. int Color; //!< Color index. int Fill; //!< Fill area. int Align; //!< Text alignment. @@ -50,7 +51,7 @@ public: void Clear(); Item& AddItem(Operation::Type operation, QPoint point, QPoint end, int value, int color, int fill); - Item& AddItem(Operation::Type operation, QPoint point, QPoint end, QString value, int color, int align); + Item& AddItem(Operation::Type operation, QPoint point, QPoint end, QString text, double size, int color, int align); bool RemoveItem(int index); int SelectItem(QPoint point) const; diff --git a/symedit.cpp b/symedit.cpp index 8030ddf..6e0b6f5 100644 --- a/symedit.cpp +++ b/symedit.cpp @@ -18,12 +18,14 @@ SymEditSettings::SymEditSettings() { IntValues.emplace("SnapGrid", 5); IntValues.emplace("LineWidth", 1); - IntValues.emplace("TextSize", 1); IntValues.emplace("ColorIndex", 1); IntValues.emplace("FillItem", 0); IntValues.emplace("Alignment", 9); IntValues.emplace("Tool", 1); + RealValues.emplace("SymbolSize", 5.0); + RealValues.emplace("TextSize", 0.0); + TextValues.emplace("Language", ""); TextValues.emplace("TextValue", ""); TextValues.emplace("Directory", ""); @@ -43,14 +45,16 @@ void SymEditSettings::Load() IntValues.at("SnapGrid") = settings.value("editor/snap", 5).toInt(); IntValues.at("LineWidth") = settings.value("editor/width", 1).toInt(); - IntValues.at("TextSize") = settings.value("editor/size", 1).toInt(); + RealValues.at("SymbolSize") = settings.value("editor/symbol", 5.0).toDouble(); TextValues.at("Language") = settings.value("editor/lang").toString(); // IntValues.at("ColorIndex") = settings.value("editor/color", 1).toInt(); // IntValues.at("FillItem") = settings.value("editor/fill", 0).toInt(); +// RealValues.at("TextSize") = settings.value("editor/size", 0.0).toDouble(); IntValues.at("Alignment") = settings.value("editor/align", 9).toInt(); - IntValues.at("Tool") = settings.value("editor/tool", 1).toInt(); + TextValues.at("TextValue") = settings.value("editor/text").toString(); + IntValues.at("Tool") = settings.value("editor/tool", 1).toInt(); } //! Save settings. @@ -67,14 +71,16 @@ void SymEditSettings::Save() const settings.setValue("editor/snap", IntValues.at("SnapGrid")); settings.setValue("editor/width", IntValues.at("LineWidth")); - settings.setValue("editor/size", IntValues.at("TextSize")); + settings.setValue("editor/symbol", RealValues.at("SymbolSize")); settings.setValue("editor/lang", TextValues.at("Language")); settings.setValue("editor/color", IntValues.at("ColorIndex")); settings.setValue("editor/fill", IntValues.at("FillItem")); + settings.setValue("editor/size", RealValues.at("TextSize")); settings.setValue("editor/align", IntValues.at("Alignment")); - settings.setValue("editor/tool", IntValues.at("Tool")); + settings.setValue("editor/text", TextValues.at("TextValue")); + settings.setValue("editor/tool", IntValues.at("Tool")); } // @@ -155,6 +161,11 @@ void SymEditManager::setIntSetting(QString name, int value) if ( Settings.IntValues.find(name) != Settings.IntValues.end() ) Settings.IntValues.at(name) = value; } +void SymEditManager::setRealSetting(QString name, double value) +{ + if ( Settings.RealValues.find(name) != Settings.RealValues.end() ) + Settings.RealValues.at(name) = value; +} void SymEditManager::setTextSetting(QString name, QString value) { if ( Settings.TextValues.find(name) != Settings.TextValues.end() ) @@ -174,6 +185,12 @@ int SymEditManager::getIntSetting(QString name) const return Settings.IntValues.at(name); return 0; } +double SymEditManager::getRealSetting(QString name) const +{ + if ( Settings.RealValues.find(name) != Settings.RealValues.end() ) + return Settings.RealValues.at(name); + return 0; +} QString SymEditManager::getTextSetting(QString name) const { if ( Settings.TextValues.find(name) != Settings.TextValues.end() ) @@ -231,17 +248,18 @@ bool SymEditManager::addLineItem(int operation, QPoint point, QPoint end, int va \param operation Item operation. \param point Text position. \param point End position. - \param value Text value. + \param text Text string. + \param size Text size. \param color Color index. \param align Text alignment. \return True for success. */ -bool SymEditManager::addTextItem(int operation, QPoint point, QPoint end, QString value, int color, int align) +bool SymEditManager::addTextItem(int operation, QPoint point, QPoint end, QString text, double size, int color, int align) { - if ( !value.isEmpty() ) + if ( !text.isEmpty() ) { undosave(); - Symbol.AddItem(static_cast<Operation::Type>(operation), point, end, value, color, align); + Symbol.AddItem(static_cast<Operation::Type>(operation), point, end, text, size, color, align); return true; } return false; @@ -366,6 +384,15 @@ int SymEditManager::getItemAlign(int index) const } return 0; } +double SymEditManager::getItemSize(int index) const +{ + if ( Symbol.GetItemCount() ) + { + const auto& item = Symbol.GetItem(index); + return item.Size; + } + return 0.0; +} //@} //! Select item nearest to point. @@ -28,6 +28,7 @@ private: QSize Size; //!< Window size. std::map<QString, int> IntValues; //!< Integer setting values. + std::map<QString, double> RealValues; //!< Real setting values. std::map<QString, QString> TextValues; //!< String setting values. }; @@ -51,6 +52,8 @@ public: Q_INVOKABLE void setIntSetting(QString name, int value); Q_INVOKABLE int getIntSetting(QString name) const; + Q_INVOKABLE void setRealSetting(QString name, double value); + Q_INVOKABLE double getRealSetting(QString name) const; Q_INVOKABLE void setTextSetting(QString name, QString value); Q_INVOKABLE QString getTextSetting(QString name) const; @@ -58,7 +61,7 @@ public: Q_INVOKABLE bool addPointItem(int operation, QPoint point, int value, int color, int fill); Q_INVOKABLE bool addLineItem(int operation, QPoint point, QPoint end, int value, int color, int fill); - Q_INVOKABLE bool addTextItem(int operation, QPoint point, QPoint end, QString value, int color, int align); + Q_INVOKABLE bool addTextItem(int operation, QPoint point, QPoint end, QString text, double size, int color, int align); Q_INVOKABLE bool removeItem(); Q_INVOKABLE int getItemCount() const; @@ -70,6 +73,7 @@ public: Q_INVOKABLE int getItemColor(int index) const; Q_INVOKABLE int getItemFill(int index) const; Q_INVOKABLE int getItemAlign(int index) const; + Q_INVOKABLE double getItemSize(int index) const; Q_INVOKABLE int selectItem(QPoint point) const; Q_INVOKABLE bool setActiveIndex(int index); |
