File tree Expand file tree Collapse file tree 2 files changed +64
-1
lines changed Expand file tree Collapse file tree 2 files changed +64
-1
lines changed Original file line number Diff line number Diff line change
1
+ var selectedNode ,
2
+ writing = false ;
3
+
4
+ function writeLabel ( evt ) {
5
+ //Enable writing labels for the node we are hovering over
6
+ selectedNode = evt . target ;
7
+ writing = true ;
8
+ }
9
+
10
+ function stopWrite ( evt ) {
11
+ //Disable writing labels after we move off the node
12
+ writing = false ;
13
+ }
14
+
15
+
16
+ $ ( document ) . on ( 'keyup' , function ( key ) {
17
+ /*
18
+ Listen for when we press a key and change a node's label if
19
+ we are hovering over it.
20
+
21
+ INPUT
22
+ key: A jquery keyup event
23
+ */
24
+ if ( ! writing ) return ;
25
+
26
+ //Detect backspace and otherwise input characters
27
+ if ( key . keyCode === 8 ) {
28
+ //Check if our label is already empty
29
+ if ( selectedNode . style ( 'label' ) . length === 0 ) return ;
30
+
31
+ //Remove the last character
32
+ selectedNode . style ( 'label' , selectedNode . style ( 'label' ) . slice ( 0 , - 1 ) ) ;
33
+ }
34
+ else if ( key . keyCode >= 32 && key . keyCode < 127 ) {
35
+ selectedNode . style ( 'label' ,
36
+ selectedNode . style ( 'label' ) + String . fromCharCode ( key . keyCode ) . toLowerCase ( ) ) ;
37
+ }
38
+ } ) ;
39
+ //************************************************************************
40
+ //BASIC GRAPH MANIPULATION
41
+ //************************************************************************
42
+
1
43
var selected = [ ] ;
2
44
3
45
function addEdge ( evt ) {
Original file line number Diff line number Diff line change @@ -4,14 +4,32 @@ var cy;
4
4
function renderGraph ( img ) {
5
5
cy = cytoscape ( {
6
6
'container' : $ ( '#container' ) ,
7
+ 'userZoomingEnabled' : false ,
8
+ 'userPanningEnabled' : false ,
7
9
'style' : [ {
8
10
'selector' : 'edge' ,
9
11
'style' : {
10
- 'line-color' : '#ff0000' ,
12
+ 'line-color' : '#3399ff' ,
13
+ 'opacity' : 0.7 ,
11
14
'curve-style' : 'bezier' ,
12
15
'control-point-step-size' : '50px'
13
16
}
17
+ } ,
18
+ {
19
+ 'selector' : 'node' ,
20
+ 'style' : {
21
+ 'border-color' : '#ff0000' ,
22
+ 'width' : 25 ,
23
+ 'height' : 25 ,
24
+ 'background-opacity' : 0 ,
25
+ 'border-opacity' : 1 ,
26
+ 'border-width' : 3 ,
27
+ 'shape' : 'ellipse' ,
28
+ 'font-size' : 20 ,
29
+ 'label' : ''
30
+ }
14
31
} ]
32
+
15
33
} ) ;
16
34
17
35
//Set our background image
@@ -22,5 +40,8 @@ function renderGraph(img){
22
40
cy . on ( 'tap' , 'node' , removeNode ) ;
23
41
cy . on ( 'tap' , addNode ) ;
24
42
cy . on ( 'tap' , 'node' , addEdge ) ;
43
+
44
+ cy . on ( 'mouseover' , 'node' , writeLabel ) ;
45
+ cy . on ( 'mouseout' , 'node' , stopWrite ) ;
25
46
}
26
47
You can’t perform that action at this time.
0 commit comments