Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(971)

Unified Diff: third_party/pkg/route_hierarchical/example/full/company-info.dart

Issue 124053002: Adding Angular and dependent packages for testing (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/pkg/route_hierarchical/example/full/company-info.dart
diff --git a/third_party/pkg/route_hierarchical/example/full/company-info.dart b/third_party/pkg/route_hierarchical/example/full/company-info.dart
new file mode 100644
index 0000000000000000000000000000000000000000..098ff5421b411fff653ca56038235a95b7092eac
--- /dev/null
+++ b/third_party/pkg/route_hierarchical/example/full/company-info.dart
@@ -0,0 +1,63 @@
+library companyinfo;
+
+import 'dart:async';
+import 'dart:html';
+
+import 'package:route_hierarchical/client.dart';
+import 'package:web_ui/web_ui.dart';
+
+import 'index.dart';
+
+
+class CompanyInfoComponent extends WebComponent {
+ var company;
+ RouteHandle route;
+ @observable String section;
+ @observable String infoUrl;
+ @observable String activitiesUrl;
+ @observable String notesUrl;
+
+ inserted() {
+ route.getRoute('info').onRoute.listen((_) => showSection('info'));
+ route.getRoute('activities')
+ .onRoute.listen((_) => showSection('activities'));
+ route.getRoute('notes')
+ ..onRoute.listen((_) => showSection('notes'))
+ ..onLeave.listen(notesLeave);
+
+ infoUrl = router.url('info', startingFrom: route);
+ activitiesUrl = router.url('activities', startingFrom: route);
+ notesUrl = router.url('notes', startingFrom: route);
+ }
+
+ removed() {
+ route.discard();
+ }
+
+ notesLeave(RouteEvent e) {
+ e.allowLeave(new Future.value(window.confirm('Are you sure you want ' +
+ 'to leave?')));
+ }
+
+ showSection(section) {
+ this.section = section;
+ }
+
+ gotoSection(section, e) {
+ if (e != null) {
+ e.preventDefault();
+ }
+ router.go(section, {}, startingFrom: route).then((allowed) {
+ if (allowed) {
+ showSection(section);
+ }
+ });
+ }
+
+ String activeClass(sect) {
+ if (sect == section) {
+ return "active";
+ }
+ return "";
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698