Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
F
Front-End
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
abdullh.alsoleman
Front-End
Commits
53194ed4
Commit
53194ed4
authored
Oct 02, 2017
by
Ian Hickson
Committed by
GitHub
Oct 02, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ShapeBorder (#12335)
This class lays the groundwork for RTL borders.
parent
437e4c08
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
451 additions
and
18 deletions
+451
-18
borders.dart
packages/flutter/lib/src/painting/borders.dart
+367
-7
border_test.dart
packages/flutter/test/painting/border_test.dart
+11
-11
shape_border_test.dart
packages/flutter/test/painting/shape_border_test.dart
+73
-0
No files found.
packages/flutter/lib/src/painting/borders.dart
View file @
53194ed4
This diff is collapsed.
Click to expand it.
packages/flutter/test/painting/border_test.dart
View file @
53194ed4
...
...
@@ -51,34 +51,34 @@ void main() {
final
BorderSide
yellow2
=
const
BorderSide
(
color:
const
Color
(
0xFFFFFF00
),
width:
2.0
);
final
BorderSide
yellowNone0
=
const
BorderSide
(
color:
const
Color
(
0xFFFFFF00
),
width:
0.0
,
style:
BorderStyle
.
none
);
expect
(
new
Border
(
top:
yellow2
)
.
add
(
new
Border
(
right:
magenta3
)
),
new
Border
(
top:
yellow2
)
+
new
Border
(
right:
magenta3
),
new
Border
(
top:
yellow2
,
right:
magenta3
),
);
expect
(
new
Border
(
bottom:
magenta3
)
.
add
(
new
Border
(
bottom:
magenta3
)
),
new
Border
(
bottom:
magenta3
)
+
new
Border
(
bottom:
magenta3
),
new
Border
(
bottom:
magenta6
),
);
expect
(
new
Border
(
left:
magenta3
,
right:
yellowNone0
)
.
add
(
new
Border
(
right:
yellow2
)
),
new
Border
(
left:
magenta3
,
right:
yellowNone0
)
+
new
Border
(
right:
yellow2
),
new
Border
(
left:
magenta3
,
right:
yellow2
),
);
expect
(
const
Border
()
.
add
(
const
Border
()
),
const
Border
()
+
const
Border
(
),
const
Border
(),
);
expect
(
new
Border
(
left:
magenta3
)
.
add
(
new
Border
(
left:
yellow2
)
),
isN
ull
,
new
Border
(
left:
magenta3
)
+
new
Border
(
left:
yellow2
),
isN
ot
(
const
isInstanceOf
<
Border
>()),
// see shape_border_test.dart for better tests of this case
);
final
Border
b3
=
new
Border
(
top:
magenta3
);
final
Border
b6
=
new
Border
(
top:
magenta6
);
expect
(
b3
.
add
(
b3
)
,
b6
);
expect
(
b3
+
b3
,
b6
);
final
Border
b0
=
new
Border
(
top:
yellowNone0
);
final
Border
bZ
=
const
Border
();
expect
(
b0
.
add
(
b0
)
,
bZ
);
expect
(
bZ
.
add
(
bZ
)
,
bZ
);
expect
(
b0
.
add
(
bZ
)
,
bZ
);
expect
(
bZ
.
add
(
b0
)
,
bZ
);
expect
(
b0
+
b0
,
bZ
);
expect
(
bZ
+
bZ
,
bZ
);
expect
(
b0
+
bZ
,
bZ
);
expect
(
bZ
+
b0
,
bZ
);
});
test
(
'Border.scale'
,
()
{
...
...
packages/flutter/test/painting/shape_border_test.dart
0 → 100644
View file @
53194ed4
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import
'package:flutter/painting.dart'
;
import
'package:flutter_test/flutter_test.dart'
;
import
'../rendering/mock_canvas.dart'
;
void
main
(
)
{
test
(
'Compound borders'
,
()
{
final
Border
b1
=
new
Border
.
all
(
color:
const
Color
(
0xFF00FF00
));
final
Border
b2
=
new
Border
.
all
(
color:
const
Color
(
0xFF0000FF
));
expect
(
(
b1
+
b2
).
toString
(),
'Border.all(BorderSide(Color(0xff00ff00), 1.0, BorderStyle.solid)) + '
'Border.all(BorderSide(Color(0xff0000ff), 1.0, BorderStyle.solid))'
,
);
expect
(
(
b1
+
(
b2
+
b2
)).
toString
(),
'Border.all(BorderSide(Color(0xff00ff00), 1.0, BorderStyle.solid)) + '
'Border.all(BorderSide(Color(0xff0000ff), 2.0, BorderStyle.solid))'
,
);
expect
(
((
b1
+
b2
)
+
b2
).
toString
(),
'Border.all(BorderSide(Color(0xff00ff00), 1.0, BorderStyle.solid)) + '
'Border.all(BorderSide(Color(0xff0000ff), 2.0, BorderStyle.solid))'
,
);
expect
((
b1
+
b2
)
+
b2
,
b1
+
(
b2
+
b2
));
expect
(
(
b1
+
b2
).
scale
(
3.0
).
toString
(),
'Border.all(BorderSide(Color(0xff00ff00), 3.0, BorderStyle.solid)) + '
'Border.all(BorderSide(Color(0xff0000ff), 3.0, BorderStyle.solid))'
,
);
expect
(
(
b1
+
b2
).
scale
(
0.0
).
toString
(),
'Border.all(BorderSide(Color(0xff00ff00), 0.0, BorderStyle.none)) + '
'Border.all(BorderSide(Color(0xff0000ff), 0.0, BorderStyle.none))'
,
);
expect
(
ShapeBorder
.
lerp
(
b2
+
b1
,
b1
+
b2
,
0.0
).
toString
(),
'Border.all(BorderSide(Color(0xff0000ff), 1.0, BorderStyle.solid)) + '
'Border.all(BorderSide(Color(0xff00ff00), 1.0, BorderStyle.solid))'
,
);
expect
(
ShapeBorder
.
lerp
(
b2
+
b1
,
b1
+
b2
,
0.25
).
toString
(),
'Border.all(BorderSide(Color(0xff003fbf), 1.0, BorderStyle.solid)) + '
'Border.all(BorderSide(Color(0xff00bf3f), 1.0, BorderStyle.solid))'
,
);
expect
(
ShapeBorder
.
lerp
(
b2
+
b1
,
b1
+
b2
,
0.5
).
toString
(),
'Border.all(BorderSide(Color(0xff007f7f), 1.0, BorderStyle.solid)) + '
'Border.all(BorderSide(Color(0xff007f7f), 1.0, BorderStyle.solid))'
,
);
expect
(
ShapeBorder
.
lerp
(
b2
+
b1
,
b1
+
b2
,
1.0
).
toString
(),
'Border.all(BorderSide(Color(0xff00ff00), 1.0, BorderStyle.solid)) + '
'Border.all(BorderSide(Color(0xff0000ff), 1.0, BorderStyle.solid))'
);
expect
((
b1
+
b2
).
dimensions
,
const
EdgeInsets
.
all
(
2.0
));
final
Rect
rect
=
new
Rect
.
fromLTRB
(
11.0
,
15.0
,
299.0
,
175.0
);
expect
((
Canvas
canvas
)
=>
(
b1
+
b2
).
paint
(
canvas
,
rect
),
paints
..
rect
(
rect:
rect
.
deflate
(
0.5
),
color:
b2
.
top
.
color
)
..
rect
(
rect:
rect
.
deflate
(
1.5
),
color:
b1
.
top
.
color
)
);
expect
((
b1
+
b2
+
b1
).
dimensions
,
const
EdgeInsets
.
all
(
3.0
));
expect
((
Canvas
canvas
)
=>
(
b1
+
b2
+
b1
).
paint
(
canvas
,
rect
),
paints
..
rect
(
rect:
rect
.
deflate
(
0.5
),
color:
b1
.
top
.
color
)
..
rect
(
rect:
rect
.
deflate
(
1.5
),
color:
b2
.
top
.
color
)
..
rect
(
rect:
rect
.
deflate
(
2.5
),
color:
b1
.
top
.
color
)
);
});
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment