mini-stef / core-data-model-editor Goto Github PK
View Code? Open in Web Editor NEWThe place to get help, report problems or request feature on the Core Data Model Editor app.
Home Page: https://github.com/Mini-Stef/Core-Data-Model-Editor
The place to get help, report problems or request feature on the Core Data Model Editor app.
Home Page: https://github.com/Mini-Stef/Core-Data-Model-Editor
If two entities are exactly or roughly above each other, a connecting relationship runs through the lowest entity's box.
This would also apply for relationships between an entity and itself (e.g. parent
to child
relations in a hierarchy of Nodes
).
If EntityL
is on the left and EntityR
is clearly on the right, the rendering of the relationship connects EntityL
.rightSide
to EntityR
.leftSide
. This if fine.
But if EntityB
is on the bottom and EntityT
is on the top (but not clearly on the left or right), relationships should not connect EntityB
.rightSide
to EntitiyT
.leftSide
(or vice versa). Instead, it would be nicer to connect EntityB
.rightSide
and EntitiyT
.rightSide
(or EntityB
.leftSide
to EntityT
.leftSide
).
How to detect this? If the two boxes' x-ranges overlap.
How to choose which side? Choose the side with least amount of existing connections at that time (summed over both entities). In the example below, the connection between the two blue entities would then be on the right side rather than the left side. Global optimisation of avoiding crossing relationships might be possible, but require more work.
Is your feature request related to a problem? Please describe.
When I try to reorder a diagram with many entities it could be easier to do some local ordering of nearby related entities and then drag the whole group towards other part of the diagram for further reordering. Currently I didn't find a way to do that and need to drag the entities one by one to the other part of the diagram.
Describe the solution you'd like
Be able to select a group of entities like drawing a rectangle with the mouse or picking them one by on via e.g. cmd + click and then drag with the mouse to move the whole group together to other part of the diagram.
If you load an xcdatamodel file (set), the XML fields about uniqueness constraints are not visible in the app.
Worse, they are not stored if you Save
an updated version of the file.
Steps to reproduce the behavior:
Name
or UUID
is unique)Expected: constraint is still there in xcode.
Result: constraint is gone.
Is your feature request related to a problem? Please describe.
Need to move entities so that the relationships have minimum intersection and are easy to follow.
Currently this is hard as I need to click on the arrow end, and this isn't easy and takes time.
There are cases where there isn't an arrow end coloured in green, which makes even harder to hit it right, so it can be dragged.
Describe the solution you'd like
I'd like to be able to drag an entity when I click on it, instead of a relationship arrow ending in it.
Describe alternatives you've considered
It could be cmd + click, or whatever, it will resolve the problem.
Additional context
If the initial graph is processed in a way to minimise relationship arrows + entity boxes intersection it would limit greatly the needed entity reordering.
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Trying to see the whole diagram is hard and the only way to see it is to print it, but it doesn't print for some reason
Describe the solution you'd like
A clear and concise description of what you want to happen.
An option to export a JPG, PNG, or even an svg of the diagram
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
There's no other way, not even another app or service
Additional context
Add any other context or screenshots about the feature request here.
The app allows entities to be assigned to Configurations, and configurations to be assigned colors:
Thanks for the v1.2.0 update! I am particularly happy that at some point you plan to support Swift Data as well.
The file .xccurrentversion file is lost when the .xcdatamodeld file is edited by the app.
It contains which version is the current model version, as used by the current version of the app code.
A relationship between entity X.rel1 should not be allowed to select as inverse entity X.rel1
Don't put entity X.rel1 in the pick list when selecting the inverse for entity X.rel1
The data can be saved to disk.
And the saved data can be loaded from disk by the app.
And the data is then shown as above.
Lots of fields are in different order.
This makes it difficult to see changes when committing in say GitHub.
Or any other form of diff between Xcode-saved and app-saved model files.
Workaround: edit in Xcode and use app only as a viewer. But then you probably don’t have control over layout coordinates.
Workaround: edit in App only. But then the app needs to read and write all features provided by Xcode (see issue #3).
"Save..." by convention the 3 dots indicates a menu or more options follow, including the option of canceling.
So this menu item probably should be labelled "Save" as long as there is no dialog box of some sort.
Minor detail. Thanks for the work you put into this app. Really appreciate it. Worth me making a review?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.