Comments (8)
This one looks great to me.
from librecad.
Appropriate code is in this repo https://github.com/sand1024/LibreCAD.
All functionality was commited by one large commit - sand1024/LibreCAD@80ed4c2...08dac86
I'm not sure whether it's practical to create pull request at the moment, however, it will be great if somebody may check the implementation and let me know any feedback (both features and implementations).
I think feedback with issues/discussions in that fork's repo will work better rather than directly there? Anyway, I'm more than open for the feedback and suggestions.
from librecad.
Many thanks for your intention to share this feature!
I've cherry picked your commit 80ed4c2, the fix for rs_actiondefault.h
, as this is another issue.
As old as QCAD and unbelievable, that this wasn't found yet 🤣. Nice catch.
I haven't gone through the implementation yet, but I have two recommendations so far.
- To keep your
master
in sync with the main repo, you should move the feature commit into a separate branch. This makes pull request and merging much easier. So you should pull the newmaster
with your fix and on this commit (which is different from yours, SHA de9cb37) create a branch for the feature.
Don't hesitate to ask if you need help withgit
here. - For all the new files please replace the prefix
qg_
bylc_
.qg_
files are QCAD origins and for newly implemented files we uselc_
to keep them apart.
from librecad.
Thank you for your comments. Yes, basically that issue with define was a bit annoying - I've commiteed initilal version of CMakeLists.txt also (yet without plugins build so far) - hope it may be good start for adding support of cmake for the project too.
BTW, when I've tried to achive build of the project via cmake - I've noticed lots of files that are part of repo but are excluded from build.
It seems that they are not needed so far, so probably it's better to move them in to some separate directory (if they are needed, say, for some historical reasons)? Such files are commented in CMakeLists.txt in that repo.
Regarding the prefix - yes, got your point, I'll refactor naming accordingly. Indeed, it was not clear for me why there are different prefixes for classes, so I've just used conventions from List widget.
If there are naming/style etc. conventions that should be followed to keep the overall codebase of the project - please let me know that.
Also, I think there might be another generic issue with my current implementation - tha generic decomposition and organizing of the code. I'll be glad to know your opinion there.
Actually, I've tried to affect the existing codebase as little as possible, and that's a reason why, for example, dialogs are shown not via QG_DialogFactory or why some operations are implemented not as actions but directly as slotts.
Of course, existing code may be reworked in such way and that may be more consistent approach - however, I'm rather concerned thare that it may introduce some regression issues and will require additional testing.
And indeed, good point regarding git - I'll follow the way you've mentioned, thank you.
from librecad.
commit for renamed version is there sand1024@b4ed526#diff-1bb2ab9ac4bfc2228b67aa44a05372fad1349775561b8e6915ad124b462664ff
Hope branch is created fine, yet if something should be changed - please let me know.
from librecad.
Thanks for the changes! I think this is a good base now to inspect code and work on your forks branch until we have it ready to merge.
With nearly 8000 lines added, it may take some time to get behind the code.
Don't worry about code style. Our huge mature code base has so many styles meanwhile that it's not worth the efforts to unify them.
Concerning the unused files I assume they're fragments from earlier features or test code and were forgotten to delete. We have to check them in history, if they were ever used at all. Probably they can be deleted, git remembers them anyway.
Maybe some are only used with specific preprocessor macros defined, that has to be checked too.
But this is additional work for another branch or the main repo itself, we should not mix up separate concerns.
The direct link to the branch: https://github.com/sand1024/LibreCAD/commits/layer_tree_view/
from librecad.
Hi there. This is exactly what I was looking for. How can I get a version with this widget to try it ?
from librecad.
Try to build from source.
I feel we should provide a simple script to build from scratch using any GitHub branch.
from librecad.
Related Issues (20)
- Small yet nice widget to add - pen palette HOT 3
- Layer with Custom color don't preselect "Custom Color" on Edit Layer Property HOT 1
- Librecad disappearing completely from Mac after force quitting HOT 1
- Line types customization
- LibreCAD HATCH misrenders in AutoDesk software HOT 4
- Direct Distance Entry HOT 1
- Command line not working HOT 1
- dwg HOT 1
- segmentation fault when drawing angle lines HOT 3
- Dock Widgets expanded with Pen Palette and Layer Tree HOT 2
- FREE SNAP toll doesn't work when pressing Spacebar HOT 13
- "Exclusive Snap Mode" does not have a shortcut key combination HOT 8
- Print Preview Crashes LibreCAD HOT 15
- v2.2.0.x AppImage does not run on Ubuntu 22.04 HOT 4
- LibreCAD-2.2.1_alpha-389-g91b83aa2-x86_64.AppImage Seg Faults on Startup HOT 3
- is there going to be something similar to solidworks development in this like 3d ? HOT 1
- 'Properties' doesn't show 'By layer' for an entity if so assigned but the end result HOT 6
- Exporting SVG not displaying dimensions HOT 8
- Usability issue? Active action is not finished (and not unchecked in UI) on new document creation HOT 1
- Librecad doesn't cancel 'Close' HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from librecad.