()
| 4156 | } |
| 4157 | |
| 4158 | String doDialog() { |
| 4159 | interp.getToken(); |
| 4160 | if (interp.token!='.') |
| 4161 | interp.error("'.' expected"); |
| 4162 | interp.getToken(); |
| 4163 | if (!(interp.token==WORD || interp.token==STRING_FUNCTION || interp.token==NUMERIC_FUNCTION || interp.token==PREDEFINED_FUNCTION)) |
| 4164 | interp.error("Function name expected: "); |
| 4165 | String name = interp.tokenString; |
| 4166 | try { |
| 4167 | if (name.equals("create")) { |
| 4168 | gd = new GenericDialog(getStringArg()); |
| 4169 | return null; |
| 4170 | } else if (name.equals("createNonBlocking")) { |
| 4171 | gd = new NonBlockingGenericDialog(getStringArg()); |
| 4172 | return null; |
| 4173 | } |
| 4174 | if (gd==null) { |
| 4175 | interp.error("No dialog created with Dialog.create()"); |
| 4176 | return null; |
| 4177 | } |
| 4178 | if (name.equals("addString")) { |
| 4179 | String label = getFirstString(); |
| 4180 | String defaultStr = getNextString(); |
| 4181 | int columns = 8; |
| 4182 | if (interp.nextToken()==',') |
| 4183 | columns = (int)getNextArg(); |
| 4184 | interp.getRightParen(); |
| 4185 | gd.addStringField(label, defaultStr, columns); |
| 4186 | } else if (name.equals("addDirectory")) { |
| 4187 | int columns = 0; |
| 4188 | String label = getFirstString(); |
| 4189 | String defaultDir = getNextString(); |
| 4190 | if (interp.nextToken()==',') |
| 4191 | columns = (int)getNextArg(); |
| 4192 | interp.getRightParen(); |
| 4193 | if (columns==0) |
| 4194 | gd.addDirectoryField(label, defaultDir); |
| 4195 | else |
| 4196 | gd.addDirectoryField(label, defaultDir, columns); |
| 4197 | } else if (name.equals("addImageChoice")) { |
| 4198 | String label = getFirstString(); |
| 4199 | String defaultImage = null; |
| 4200 | if (interp.nextToken()==',') |
| 4201 | defaultImage = getLastString(); |
| 4202 | else |
| 4203 | interp.getRightParen(); |
| 4204 | if (WindowManager.getImageCount()==0) |
| 4205 | interp.error("No images"); |
| 4206 | gd.addImageChoice(label, defaultImage); |
| 4207 | } else if (name.equals("addFile")) { |
| 4208 | int columns = 0; |
| 4209 | String label = getFirstString(); |
| 4210 | String defaultPath = getNextString(); |
| 4211 | if (interp.nextToken()==',') |
| 4212 | columns = (int)getNextArg(); |
| 4213 | interp.getRightParen(); |
| 4214 | if (columns==0) |
| 4215 | gd.addFileField(label, defaultPath); |
no test coverage detected