1409 Commits

Author SHA1 Message Date
Arjan Molenaar
e8e514b1af Selection no longer needs a view reference
It can emit events instead.
2020-10-21 21:43:02 +02:00
Arjan Molenaar
ab8d67674d Change view.py into a package with multiple smaller files 2020-10-21 21:42:50 +02:00
Arjan Molenaar
afe6366b73 Move most selection logic to GtkView 2020-10-21 21:30:22 +02:00
Arjan Molenaar
0fa1873127 Move more logic into Selection 2020-10-21 21:13:11 +02:00
Arjan Molenaar
ab4ff83733 Move all selection related state to a separate Selection object 2020-10-21 21:13:11 +02:00
Arjan Molenaar
4e2f483cb1 Add test to ensure constraints set handlers as late as possible
They only need to register when there's something listening on changes.
2020-10-21 20:14:21 +02:00
Arjan Molenaar
b37fc45886 Move examples out of the main library 2020-10-21 15:26:30 +02:00
Arjan Molenaar
c085a649a6 Add tests for @solvable descriptor 2020-10-21 15:25:58 +02:00
Arjan Molenaar
aaf3cbee52 Update tests for solver 2020-10-21 12:44:18 +02:00
Arjan Molenaar
a0a2017e05 Add missing tests for Variable 2020-10-21 12:21:49 +02:00
Arjan Molenaar
1533c2d5be Add missing tests for Quadtree 2020-10-21 11:50:12 +02:00
Arjan Molenaar
1010cb2c4a Test default case for constraint.solve() 2020-10-21 11:23:28 +02:00
dependabot[bot]
465f102a33
Bump toolmantim/release-drafter from v5.12.0 to v5.12.1 (#134)
Bumps [toolmantim/release-drafter](https://github.com/toolmantim/release-drafter) from v5.12.0 to v5.12.1.
- [Release notes](https://github.com/toolmantim/release-drafter/releases)
- [Commits](https://github.com/toolmantim/release-drafter/compare/v5.12.0...3782ccd1a495040818a9e5d0e8bc4ed22d3b1361)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-21 11:08:08 +02:00
sourcery-ai[bot]
406c60fa09
'Refactored by Sourcery' (#132)
Co-authored-by: Sourcery AI <>
2020-10-21 11:07:08 +02:00
Arjan Molenaar
e207286a5c Add a matrix_i2c to Item
This way we can update constraints on nested items.

I hope this is a temporary solution, but at least the canvas is fully
functional again.
2020-10-21 10:28:11 +02:00
Arjan Molenaar
e0d742ba86 Add type information to Quadtree
And some left over typing fixes. Use latest version of Mypy.
2020-10-21 10:08:52 +02:00
Arjan Molenaar
6d530df8ef Add type hints to Item.constraint 2020-10-21 08:43:24 +02:00
Arjan Molenaar
10f850da4c Move constraint factory function to constraint module 2020-10-20 19:29:43 +02:00
Dan Yeaw
3d1f5f9510
Merge pull request #133 from gaphor/dependabot/github_actions/toolmantim/release-drafter-v5.12.0
Bump toolmantim/release-drafter from v5.11.0 to v5.12.0
2020-10-20 12:46:08 -04:00
Arjan Molenaar
3128bbf129 Matrix now produces only Matrix instances
Can do an explicit "cast" to cairo matrix.
2020-10-20 09:10:09 +02:00
Arjan Molenaar
84af43913a New method Matrix.inverse() 2020-10-20 07:41:39 +02:00
Arjan Molenaar
891e86cbf2 Matrix can no longer be set
Only use methods to modify matrix.
2020-10-20 07:41:39 +02:00
Arjan Molenaar
ef9668a66d Variable is not hashable
So it is not confused with an ordinary number.
2020-10-20 07:41:39 +02:00
Arjan Molenaar
cd3d49c3a5 Bump version to 3.0.0 2020-10-20 07:41:39 +02:00
Arjan Molenaar
ca9a0ae445 Remove Projection and friends
If you need to map coordinates from one system to another, use a
MatrixProjection with the correct mapping matrix.
2020-10-20 07:41:39 +02:00
Arjan Molenaar
3d8d5d635b Define LinePort constraints with MatrixProjection and MultiConstraint
Now they work again.
2020-10-20 07:41:39 +02:00
Arjan Molenaar
6ab60d4a75 Point Port now uses the new matrix projection 2020-10-20 07:41:39 +02:00
Arjan Molenaar
6d21363246 Remove unused deprecated function 2020-10-20 07:41:39 +02:00
Arjan Molenaar
976102b362 Add test for multi-constraint 2020-10-20 07:41:39 +02:00
Arjan Molenaar
0a62cc8e7d Move Position and MatrixProjection to a separate module 2020-10-20 07:41:39 +02:00
Arjan Molenaar
1f827cee99 Ignore Mypy error from importlib_metadata 2020-10-20 07:41:39 +02:00
Arjan Molenaar
dd9240b628 Update Poetry to 1.0.10 2020-10-20 07:41:39 +02:00
Arjan Molenaar
702ea07a2e Drop 3.6 support. Add 3.9
"from __future__ import annotations" is supported as of 3.7.
2020-10-20 07:41:39 +02:00
Arjan Molenaar
48ad883bdd Add line to avoid lint error
???
2020-10-20 07:41:39 +02:00
Arjan Molenaar
37d77373be update constraint
Deal with variables: most recent changed always at the end of the list

Deal with identity vs equality checks for variables (which behaves like
a number in many ways).
2020-10-20 07:41:39 +02:00
Arjan Molenaar
b6f31b05ad Handle constraint updates on matrix change 2020-10-20 07:41:39 +02:00
Arjan Molenaar
18edaa5905 Model MatrixProjection as a constraint
This looks really neat, since now the constraint can be registered with
the solver and we do not have to manage it separately.
2020-10-20 07:41:39 +02:00
Arjan Molenaar
26af1f19d4 Can perform two-way matrix transformation 2020-10-20 07:41:39 +02:00
Arjan Molenaar
f2e8410d5d Make Variable.strength a read-only property
Now Constraints can know upfront the variable strengths and optimize for
that.
2020-10-20 07:41:39 +02:00
Arjan Molenaar
0184c2f262 Solver logic no longer maintains state on other objects 2020-10-20 07:41:39 +02:00
Arjan Molenaar
b6e0487723 Do dirty variable notification via callbacks 2020-10-20 07:41:39 +02:00
Arjan Molenaar
f6ebe52dc2 Order Variable members 2020-10-20 07:41:39 +02:00
Arjan Molenaar
04371bb2d4 Move gaphas.solver to a package
Separate the classes in their own files.
2020-10-20 07:41:39 +02:00
Arjan Molenaar
a190341875 Variable is observable now 2020-10-20 07:41:39 +02:00
Arjan Molenaar
048b6765bd Remove picklers module 2020-10-20 07:41:14 +02:00
dependabot[bot]
a261d6447d
Bump toolmantim/release-drafter from v5.11.0 to v5.12.0
Bumps [toolmantim/release-drafter](https://github.com/toolmantim/release-drafter) from v5.11.0 to v5.12.0.
- [Release notes](https://github.com/toolmantim/release-drafter/releases)
- [Commits](https://github.com/toolmantim/release-drafter/compare/v5.11.0...b9f2371793e8304920e7b5f28d0b1d762ad0757e)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-20 05:29:44 +00:00
Dan Yeaw
4244c46462
Merge pull request #126 from gaphor/remove-cache-variables
Remove cache variables
2020-10-18 20:12:18 -04:00
Arjan Molenaar
ad3b2cbeb4 Update pre-commit config 2020-10-18 17:51:27 +02:00
Dan Yeaw
d110f96c46
Merge pull request #127 from gaphor/sourcery/remove-cache-variables
Remove cache variables (Sourcery refactored)
2020-10-14 15:02:19 -04:00
Sourcery AI
a91a87b7d6 'Refactored by Sourcery' 2020-10-13 19:25:41 +00:00