Skip to content

Commit 90ae870

Browse files
author
pipeline
committed
feature(EJ2-425): Context menu included
1 parent 158eb88 commit 90ae870

File tree

6 files changed

+259
-0
lines changed

6 files changed

+259
-0
lines changed

src/common/samplelist.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import { tooltipAppRoutes } from '../tooltip/tooltip.module';
2020
import { maskedTextBoxAppRoutes } from '../maskedtextbox/maskedtextbox.module';
2121
import { timePickerAppRoutes } from '../timepicker/timepicker.module';
2222
import { multiselectAppRoutes } from '../multiselect/multiselect.module';
23+
import { contextMenuAppRoutes } from '../contextmenu/contextmenu.module';
2324
export let samplesList: any = [
2425
{
2526
'name': 'Chart', 'category': 'Datavisualization', 'order': '01', 'path': 'chart', 'samples': chartAppRoutes, 'type': 'update'
@@ -86,5 +87,8 @@ export let samplesList: any = [
8687
},
8788
{
8889
'name': 'MaskedTextBox', 'category': 'Editors', 'order': '03', 'path': 'maskedtextbox', 'samples': maskedTextBoxAppRoutes, "type": "new"
90+
},
91+
{
92+
'name': 'ContextMenu', 'category': 'Navigation', 'order': '05', 'path': 'contextmenu', 'samples': contextMenuAppRoutes, "type": "new"
8993
}
9094
];

src/contextmenu/contextmenu.css

Lines changed: 151 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
/**
2+
* ej2 Context Menu styles
3+
*/
4+
@font-face {
5+
font-family: 'e-context-menu';
6+
src:
7+
url(data:application/x-font-ttf;charset=utf-8;base64,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) format('truetype');
8+
font-weight: normal;
9+
font-style: normal;
10+
}
11+
12+
.e-cm-icons {
13+
font-family: 'e-context-menu';
14+
font-style: normal;
15+
font-variant: normal;
16+
font-weight: normal;
17+
line-height: 1;
18+
text-transform: none;
19+
}
20+
21+
#target {
22+
border: 1px dashed;
23+
height: 250px;
24+
padding: 10px;
25+
position: relative;
26+
text-align: center;
27+
color: gray;
28+
line-height: 16;
29+
}
30+
31+
#contextmenu-control {
32+
margin: 5% 25%;
33+
width: auto;
34+
-webkit-touch-callout: none; /* iOS Safari */
35+
-webkit-user-select: none; /* Safari */
36+
}
37+
38+
@media only screen and (max-width: 500px) {
39+
#contextmenu-control {
40+
margin: 5% 10%;
41+
width: auto;
42+
}
43+
44+
#target {
45+
line-height: 17;
46+
}
47+
}
48+
49+
.e-cut::before {
50+
content: '\e264';
51+
}
52+
53+
.e-paste::before {
54+
content: '\e959';
55+
}
56+
57+
.e-font::before {
58+
content: '\e262';
59+
}
60+
61+
.e-copy::before {
62+
content: '\e263';
63+
}
64+
65+
.e-link::before {
66+
content: '\e265';
67+
}
68+
69+
.e-comment::before {
70+
content: '\e267';
71+
}
72+
73+
.e-pastetext::before {
74+
content: '\e261';
75+
}
76+
77+
.e-pastespecial::before {
78+
content: '\e260';
79+
}
80+
81+
.fabric .e-cut::before {
82+
content: '\e251';
83+
}
84+
85+
.fabric .e-paste::before {
86+
content: '\e940';
87+
}
88+
89+
.fabric .e-font::before {
90+
content: '\e252';
91+
}
92+
93+
.fabric .e-copy::before {
94+
content: '\e255';
95+
}
96+
97+
.fabric .e-link::before {
98+
content: '\e254';
99+
}
100+
101+
.fabric .e-comment::before {
102+
content: '\e253';
103+
}
104+
105+
.fabric .e-pastetext::before {
106+
content: '\e258';
107+
}
108+
109+
.fabric .e-pastespecial::before {
110+
content: '\e256';
111+
}
112+
113+
.bootstrap .e-cut::before {
114+
content: '\e248';
115+
}
116+
117+
.bootstrap .e-paste::before {
118+
content: '\e95a';
119+
}
120+
121+
.bootstrap .e-font::before {
122+
content: '\e247';
123+
}
124+
125+
.bootstrap .e-copy::before {
126+
content: '\e249';
127+
}
128+
129+
.bootstrap .e-link::before {
130+
content: '\e245';
131+
}
132+
133+
.bootstrap .e-comment::before {
134+
content: '\e246';
135+
}
136+
137+
.bootstrap .e-pastetext::before {
138+
content: '\e257';
139+
}
140+
141+
.bootstrap .e-pastespecial::before {
142+
content: '\e259';
143+
}
144+
145+
.e-contextmenu-wrapper ul.e-contextmenu {
146+
width: 176px;
147+
}
148+
149+
.e-bigger .e-contextmenu-wrapper ul.e-contextmenu {
150+
width: 186px;
151+
}

src/contextmenu/contextmenu.module.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { NgModule, ModuleWithProviders, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2+
import { RouterModule } from '@angular/router';
3+
import { DefaultContextMenuController } from './default.component';
4+
import { ContextMenuModule } from '@syncfusion/ej2-ng-navigations';
5+
import { SharedModule } from '../common/shared.module';
6+
7+
export const contextMenuAppRoutes: Object[] = [
8+
{ path: ':theme/contextmenu/default', component: DefaultContextMenuController, name: 'Default Functionalities', category: 'ContextMenu' }
9+
];
10+
11+
export const contextMenuRouter: ModuleWithProviders = RouterModule.forChild(contextMenuAppRoutes);
12+
13+
@NgModule({
14+
imports: [contextMenuRouter, ContextMenuModule, SharedModule],
15+
declarations: [
16+
DefaultContextMenuController
17+
],
18+
schemas: [CUSTOM_ELEMENTS_SCHEMA]
19+
})
20+
export class MenuModule { }

src/contextmenu/default-plnkr.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

src/contextmenu/default.component.ts

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
import { Component, ViewEncapsulation } from '@angular/core';
2+
import { Browser } from '@syncfusion/ej2-base';
3+
import { MenuAnimationSettings } from '@syncfusion/ej2-navigations';
4+
/**
5+
* Default ContextMenu Controller
6+
*/
7+
@Component({
8+
selector: 'control-content',
9+
templateUrl: 'default.html',
10+
styleUrls: ['contextmenu.css'],
11+
encapsulation: ViewEncapsulation.None
12+
})
13+
14+
export class DefaultContextMenuController {
15+
public content: string = '';
16+
public animationSettings: MenuAnimationSettings = {};
17+
public addDisabled (args: any) {
18+
if (args.data.text === 'Link') {
19+
args.item.classList.add('e-disabled');
20+
}
21+
}
22+
public menuItems: { [key: string]: Object }[] = [
23+
{
24+
text: 'Cut',
25+
iconCss: 'e-cm-icons e-cut'
26+
},
27+
{
28+
text: 'Copy',
29+
iconCss: 'e-cm-icons e-copy'
30+
},
31+
{
32+
text: 'Paste',
33+
iconCss: 'e-cm-icons e-paste',
34+
items: [
35+
{
36+
text: 'Paste Text',
37+
iconCss: 'e-cm-icons e-pastetext'
38+
},
39+
{
40+
text: 'Paste Special',
41+
iconCss: 'e-cm-icons e-pastespecial'
42+
}
43+
]
44+
},
45+
{
46+
separator: true
47+
},
48+
{
49+
text: 'Link',
50+
iconCss: 'e-cm-icons e-link'
51+
},
52+
{
53+
text: 'New Comment',
54+
iconCss: 'e-cm-icons e-comment'
55+
}];
56+
57+
ngOnInit(): void {
58+
if (Browser.isDevice) {
59+
this.content = 'Touch hold to open the ContextMenu';
60+
this.animationSettings.effect = 'ZoomIn';
61+
} else {
62+
this.content = 'Right click / Touch hold to open the ContextMenu';
63+
this.animationSettings.effect = 'SlideDown';
64+
}
65+
}
66+
}

src/contextmenu/default.html

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<div class="contextmenu-section">
2+
<div id="contextmenu-control">
3+
<div id="target">{{content}}</div>
4+
<ej-contextmenu target='#target' [items]='menuItems' [animationSettings]='animationSettings' (beforeItemRender)='addDisabled($event)'></ej-contextmenu>
5+
</div>
6+
</div>
7+
<div id="description">
8+
<p>
9+
ContextMenu is a graphical user interface that appears on user right click / touch hold action. It has support to provide a single level/ multiple levels of ContextMenu.
10+
</p>
11+
<p>
12+
In this demo, <b>target</b> property is set as <b>'#target'</b>. Hence, on right clicking the target element, ContextMenu will open.
13+
</p>
14+
<p>
15+
More information about ContextMenu can be found in this <a target="_blank" href="http://ej2.syncfusion.com/angular/documentation/context-menu/getting-started.html"> documentation section</a>.
16+
</p>
17+
</div>

0 commit comments

Comments
 (0)