A simple network editor for Mininet.
| 1089 | tw.destroy() |
| 1090 | |
| 1091 | class MiniEdit( Frame ): |
| 1092 | |
| 1093 | "A simple network editor for Mininet." |
| 1094 | |
| 1095 | def __init__( self, parent=None, cheight=600, cwidth=1000 ): |
| 1096 | |
| 1097 | self.defaultIpBase='10.0.0.0/8' |
| 1098 | |
| 1099 | self.nflowDefaults = {'nflowTarget':'', |
| 1100 | 'nflowTimeout':'600', |
| 1101 | 'nflowAddId':'0'} |
| 1102 | self.sflowDefaults = {'sflowTarget':'', |
| 1103 | 'sflowSampling':'400', |
| 1104 | 'sflowHeader':'128', |
| 1105 | 'sflowPolling':'30'} |
| 1106 | |
| 1107 | self.appPrefs={ |
| 1108 | "ipBase": self.defaultIpBase, |
| 1109 | "startCLI": "0", |
| 1110 | "terminalType": 'xterm', |
| 1111 | "switchType": 'ovs', |
| 1112 | "dpctl": '', |
| 1113 | 'sflow':self.sflowDefaults, |
| 1114 | 'netflow':self.nflowDefaults, |
| 1115 | 'openFlowVersions':{'ovsOf10':'1', |
| 1116 | 'ovsOf11':'0', |
| 1117 | 'ovsOf12':'0', |
| 1118 | 'ovsOf13':'0'} |
| 1119 | |
| 1120 | } |
| 1121 | |
| 1122 | |
| 1123 | Frame.__init__( self, parent ) |
| 1124 | self.action = None |
| 1125 | self.appName = 'MiniEdit' |
| 1126 | self.fixedFont = tkFont.Font ( family="DejaVu Sans Mono", size="14" ) |
| 1127 | |
| 1128 | # Style |
| 1129 | self.font = ( 'Geneva', 9 ) |
| 1130 | self.smallFont = ( 'Geneva', 7 ) |
| 1131 | self.bg = 'white' |
| 1132 | |
| 1133 | # Title |
| 1134 | self.top = self.winfo_toplevel() |
| 1135 | self.top.title( self.appName ) |
| 1136 | |
| 1137 | # Menu bar |
| 1138 | self.createMenubar() |
| 1139 | |
| 1140 | # Editing canvas |
| 1141 | self.cheight, self.cwidth = cheight, cwidth |
| 1142 | self.cframe, self.canvas = self.createCanvas() |
| 1143 | |
| 1144 | # Toolbar |
| 1145 | self.controllers = {} |
| 1146 | |
| 1147 | # Toolbar |
| 1148 | self.images = miniEditImages() |