Commit Graph

577 Commits

Author SHA1 Message Date
joshua 0d90defcfe Remove unused include 2022-09-28 21:54:02 +02:00
joshua ea1ede9cb3 Remove unnecessary assert
Just call :
void DynamicTextFieldEditor::disconnectConnections()
instead of use an assert if there is an active connection.
2022-09-28 21:53:30 +02:00
joshua ffc2a7a7d7 Fix warning 2022-09-26 21:48:08 +02:00
joshua 3e75bedef0 Fix crash
https://qelectrotech.org/forum/viewtopic.php?pid=16647#p16647
2022-09-26 21:40:47 +02:00
joshua d6e8a1c133 Element editor : improve deletion speed 2022-08-13 13:06:46 +02:00
joshua eee1c7fff7 Element editor : Improve responsiveness when several shapes are selected. 2022-08-13 12:40:59 +02:00
joshua 02769fe881 Improve opening time of dxf 2022-08-03 13:54:39 +02:00
joshua 31466a65ba Fix fail to build from sources
Fix ftbfs for :
ubuntu 18.04 bionic beaver
ubuntu 20.04 focal fossa
debian 11 bullseye
2022-07-27 14:15:32 +02:00
joshua 57695bbbea Element editor : improve code
Better use of signal partsAdded and partsRemoved
2022-07-26 17:03:18 +02:00
joshua 5a497cd6b5 Element editor : improve code
Better use of signal partsAdded and partsRemoved
2022-07-26 16:17:47 +02:00
joshua cae7cbdbd8 Import dxf is managed by undo command 2022-07-24 20:58:00 +02:00
joshua 6e81451b46 Add import dxf feature
Use dxf2elmt to import dxf.
See https://github.com/antonioaja/dxf2elmt
2022-07-23 21:54:23 +02:00
Tadeáš Pilař 1a2fea84ff Add 'Other' option for slave device contact type
This option alows for displaying XRef without contact drawing.
This is useful for spliting one physical part into multiple
logical elements when the slave element is not a switch.
2022-06-23 05:41:33 +02:00
joshua a2b73ea2bc Definitely fix the rotation problem :)
Only use space for every rotation
2022-05-25 21:47:31 +02:00
Laurent Trinques bf32219154 Fix previous workaround
Now the shortcut for the rotate action is key_space and use key_R to
rotate terminal on the fly before placing it in the drawing.
2022-05-25 17:39:49 +02:00
Laurent Trinques 6a669f1399 Fix previous workaround
Because strange behaviour with Qt::key_space if used for keyPressEvent
and also in shortcut.
Now the shortcut for the rotate action is ctrl + R and key_space to
rotate terminal on the fly before placing it in the drawing.
2022-05-25 13:47:22 +02:00
joshua 4ab1ed7fc9 Fix previous workaround
The rotate action shortcut was 'space' before this commit and so the
keyPressEvent with space key was never propagated because always grabbed
by the rotate action.
Now the shortcut for the rotate action is ctrl + space.
Note that even if rotate exist in element editor, this doesn't work well
because the rotation is not well managed by the save/load from elmt
file.
2022-05-22 21:05:54 +02:00
Laurent Trinques 89d03e5503 Element editor : Workaround for Qt::Key_Space event not working
Use of ALT key as a replacement to rotate terminal on the fly before
placing it in the drawing.
Fix bug #262
https://qelectrotech.org/bugtracker/view.php?id=262
2022-05-21 23:28:44 +02:00
Laurent Trinques 9a6e1d2a61 Editor commands: change the rotation with the space key on the keyboard
from 90° to 15° for more precision for part lines, polygons, texts, arcs
and circles.
2022-05-20 10:18:37 +02:00
Laurent Trinques daeec311b2 Element::Thumbnail WIP 2022-05-16 08:59:25 +02:00
Laurent Trinques db8c76c184 Element::Thumbnail WIP 2022-05-15 14:29:01 +02:00
joshua 021aea1d8b Add the new element type : thumbnail
This type must be used for element who goal is to display a
thumbnail/front view of an element, notably used for cabinet contents
view and placement.
2022-05-13 20:02:29 +02:00
Peter Keresztes Schmidt de80d10f5e Build fix for non-C++17 compatible systems
std::variant/std::visit was only introduced with C++17. Remove its usage.
We don't even need it in these cases since QColor has an implicit constructor accepting Qt::GlobalColor.

Follow-up for b69c7b1027
2021-09-23 21:50:37 +02:00
Peter Keresztes Schmidt b69c7b1027 Refactor deeply nested statements
Compilation using MSVC fails with a C1061 error since MSVC has a hard limit on block nesting.
Refactor the code in question to use map lookups instead.
2021-09-22 21:53:21 +02:00
Adrien Allain ccfb46b354 Implemented QET coding style (replaced 4 space with tab) 2021-09-14 09:35:14 +02:00
Adrien Allain c640d96bca * Added the m_rotate_action to qetelementeditor.ui * Adding QAction to qetelementeditor.cpp and connecting it to new slot RotateElementsCommand defined in editorcommands.cpp
* Some types of elements need to specialize the setRotation method in order to behave correctly :
- PartTerminal needs to call setOrientation
- PartLine, PartRectangle and PartPolygon need a different rotation center.
2021-09-14 09:35:14 +02:00
joshua fdbfca9a8c Change ElementData enum
Change enum value 'ground' from enum 'function' to enum 'type'
2021-05-21 19:15:26 +02:00
joshua 12c0dbd8d1 Minor gui change 2021-05-11 18:20:19 +02:00
joshua 74dcf96e4b Element editor: make element text option "keep visual rotation" editable. 2021-05-08 22:14:15 +02:00
joshua 09c0929040 Element editor gui fix
When select a primitive an unparented windows appear and can't be
deleted. Fix it.
2021-04-30 20:27:24 +02:00
joshua 7cb47f3b9e Fix unwanted moving part in element editor.
Fix an unwanted behavior when the properties dock widget is displayed :

1 there is no selection
2 the dock widget width is set to minimum
3 select a part, the dock widget gain new widgets used to edit the
current selected part and the width of the dock grow so the width of the
QGraphicsView is reduced and cause a mouse move event.
When this case occur the part is moved but they should not.
2021-04-07 12:56:43 +02:00
joshua 9db15f91e7 Improve gui layout for low resolution screen 2021-04-07 12:34:56 +02:00
joshua 11b8ef927b Revert "Merge branch 'XMLPropertiesNew'"
**Break a lot of thing.**

This reverts commit 1db1800572, reversing
changes made to 4c563821e8.
2021-03-11 19:52:50 +01:00
joshua 1db1800572 Merge branch 'XMLPropertiesNew' 2021-03-09 19:09:31 +01:00
joshua 001e93bc6f Forgoten revert ToXml() 2021-03-09 18:43:03 +01:00
Simon De Backer 4c563821e8 [Qt6] ad QCloseEvent to Widgets 2021-03-07 20:23:07 +01:00
joshua 38a825865c Fix ftbfs on debian buster 2021-03-07 12:18:30 +01:00
Martin Marmsoler 5d3710c4b2 copy all toXML() from master commit 4b82c3a0c4 into the current branch, because the new concept will be used only for user properties 2021-03-07 10:09:45 +01:00
Martin Marmsoler 058824f29a move all static xml functions to qetxml 2021-03-06 20:01:31 +01:00
Martin Marmsoler ea793125a5 move m_change_connections to ElementItemEditor, so it must not be defined by every editor it self 2021-03-05 20:59:36 +01:00
Martin bc88f2ec2e reimplement Priv function, so the ElementEditor gets called automatically 2021-03-05 17:38:51 +01:00
Martin Marmsoler 51ed21f9ef Merge commit 'b021ac3e1fb98a56810773c7c701e3329efb3148'
Conflicts:
	sources/qetgraphicsitem/element.h
2021-03-04 21:31:55 +01:00
Martin Marmsoler 9d4b90da1a Add userProperties 2021-03-04 19:18:28 +01:00
joshua faf4235bed Terminal element info
Provide only useful information for terminal
2021-03-03 21:28:22 +01:00
Martin 5430692359 remove not needed declaration, because the definition was already deleted. And so a linker error occured 2021-02-24 19:04:14 +01:00
Martin 02b7ead041 fix compile issues 2021-02-24 18:48:59 +01:00
Martin ea364f9c4e merge 2021-02-23 17:35:55 +01:00
joshua be2067148e Element editor : add terminal properties editable 2021-02-21 19:40:33 +01:00
joshua 8f85cacb06 QetElementEditor : Use elementData class 2021-02-21 19:40:33 +01:00
joshua dea926e4b4 Remove unnecessary method 2021-02-21 19:40:33 +01:00