Changeset 39 for trunk/gui/printer/manager/PRINTOOL.VRX
- Timestamp:
- May 13, 2013, 6:06:52 PM (12 years ago)
- File:
-
- 1 edited
-
trunk/gui/printer/manager/PRINTOOL.VRX (modified) (21 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/gui/printer/manager/PRINTOOL.VRX
r38 r39 156 156 RETURN 157 157 158 /*:VRX CN_DEVICES_KeyPress 159 */ 160 CN_DEVICES_KeyPress: 161 IF VRGet('CN_DEVICES', 'KeyString') == '{Backtab}' THEN 162 CALL VRMethod 'TDL_MAIN', 'SetFocus' 163 return 164 158 165 /*:VRX CN_PORTS_ContextMenu 159 166 */ … … 170 177 171 178 RETURN 179 180 /*:VRX CN_PORTS_KeyPress 181 */ 182 CN_PORTS_KeyPress: 183 IF VRGet('CN_PORTS', 'KeyString') == '{Backtab}' THEN 184 CALL VRMethod 'TDL_MAIN', 'SetFocus' 185 return 172 186 173 187 /*:VRX CN_PRINTERPAKS_ContextMenu … … 210 224 RETURN 211 225 226 /*:VRX CN_PRINTERS_KeyPress 227 */ 228 CN_PRINTERS_KeyPress: 229 IF VRGet('CN_PRINTERS', 'KeyString') == '{Backtab}' THEN 230 CALL VRMethod 'TDL_MAIN', 'SetFocus' 231 RETURN 232 212 233 /*:VRX CupsDeletePrinter 213 234 */ … … 248 269 RETURN rc 249 270 271 /*:VRX DDCB_DEVICE_3RDPARTY_Click 272 */ 273 DDCB_DEVICE_3RDPARTY_Click: PROCEDURE EXPOSE globals. shipped. 274 new_path = TRANSLATE( STRIP( VRGet('DDCB_DEVICE_3RDPARTY', 'SelectedString'))) 275 IF new_path == '' THEN RETURN 276 277 old_path = VRGet('DDCB_DEVICE_3RDPARTY', 'UserData') 278 IF old_path == new_path THEN RETURN 279 280 CALL SetDriverList new_path 281 RETURN 282 283 /*:VRX DDCB_DEVICE_3RDPARTY_Verify 284 */ 285 DDCB_DEVICE_3RDPARTY_Verify: PROCEDURE EXPOSE globals. shipped. 286 old_path = VRGet('DDCB_DEVICE_3RDPARTY', 'UserData') 287 new_path = TRANSLATE( STRIP( VRGet('DDCB_DEVICE_3RDPARTY', 'Value'))) 288 IF new_path == '' THEN DO 289 IF old_path <> '' THEN CALL VRSet 'DDCB_DEVICE_3RDPARTY', 'Value', old_path 290 RETURN 291 END 292 293 new_path = VRExpandFileName( new_path ) 294 IF new_path == '' THEN DO 295 IF old_path <> '' THEN CALL VRSet 'DDCB_DEVICE_3RDPARTY', 'Value', old_path 296 RETURN 297 END 298 299 IF old_path == new_path THEN RETURN 300 301 CALL SetDriverList new_path 302 RETURN 303 250 304 /*:VRX DriverAdd 251 305 */ 252 306 DriverAdd: PROCEDURE EXPOSE globals. 253 307 updated = 0 308 CALL VRLoadSecondary 'SW_DEVICE_ADD', 'W' 309 IF updated == 1 THEN 310 CALL RefreshDevices 254 311 RETURN 255 312 … … 415 472 416 473 RETURN _count 474 475 /*:VRX GetShippedDrivers 476 */ 477 GetShippedDrivers: PROCEDURE EXPOSE globals. shipped. 478 479 count = 0 480 CALL LINEIN globals.!prdesc, 1, 0 481 DO WHILE LINES( globals.!prdesc ) 482 _next = LINEIN( globals.!prdesc ) 483 PARSE VAR _next _desc':' _rest 484 _ppak = SUBSTR( _rest, LASTPOS('(', _rest )) 485 PARSE VAR _ppak '('_drvr')' . 486 count = count + 1 487 shipped.count = ';'_desc';#2;;;NAME;'_desc';DRIVER;'_drvr';' 488 END 489 CALL STREAM globals.!prdesc, 'C', 'CLOSE' 490 shipped.0 = count 491 CALL VRSortStem 'shipped.' 492 493 RETURN count 417 494 418 495 /*:VRX Halt … … 658 735 DO WHILE LINES( globals.!prdesc ) 659 736 _next = LINEIN( globals.!prdesc ) 660 PARSE UPPER VAR _next WITH . ':' . '('_prdrv')' . 737 PARSE UPPER VAR _next . ':' _rest 738 _tail = SUBSTR( _rest, LASTPOS('(', _rest )) 739 PARSE VAR _tail '('_prdrv')' . 661 740 IF _prdrv == driver'.DRV' THEN ITERATE 662 741 count = count + 1 … … 738 817 */ 739 818 Init: 819 /* Hide the VX-REXX console window 820 */ 821 CALL VRSet 'Console', 'WindowListTitle', '' 740 822 741 823 CALL RxFuncAdd 'SysLoadFuncs', 'REXXUTIL', 'SysLoadFuncs' … … 773 855 CALL VRMethod 'Application', 'PostQueue', 0, 1, 'CALL PB_PRINTER_ADD_Click' 774 856 END 775 ELSE 857 ELSE DO 776 858 CALL VRSet window, "Visible", 1 859 CALL VRMethod 'TDL_MAIN', 'SetFocus' 860 END 777 861 drop window 778 862 … … 804 888 LoadSettings: PROCEDURE EXPOSE globals. 805 889 806 globals.!version = '0. 31'890 globals.!version = '0.41' 807 891 globals.!copyright = '2013' 808 892 … … 1171 1255 RETURN 1172 1256 1257 /*:VRX PB_DEVICE_CANCEL_Click 1258 */ 1259 PB_DEVICE_CANCEL_Click: 1260 CALL SW_DEVICE_ADD_Close 1261 RETURN 1262 1263 /*:VRX PB_DEVICE_INSTALL_Click 1264 */ 1265 PB_DEVICE_INSTALL_Click: PROCEDURE EXPOSE globals. updated 1266 updated = 1 1267 1268 ok = VRMethod('CN_DEVICE_LIST', 'GetRecordList', 'Selected', 'recs.') 1269 IF ok == 0 THEN RETURN 1270 IF recs.0 == 0 THEN RETURN 1271 selected = recs.1 1272 1273 dev_name = VRMethod('CN_DEVICE_LIST', 'GetFieldData', selected, 'NAME') 1274 dev_driver = VRMethod('CN_DEVICE_LIST', 'GetFieldData', selected, 'DRIVER') 1275 driver_short = TRANSLATE( VRParseFileName( dev_driver, 'N')) 1276 IF dev_name == '' | dev_driver == '' | driver_short == '' THEN RETURN 1277 1278 /* Shipped drivers don't include the FQ path in dev_driver so we must 1279 * resolve it first. 1280 */ 1281 IF VRGet('RB_DEVICE_SHIPPED', 'Set') == 1 THEN 1282 dev_driver = GetDriverSource( driver_short ) 1283 IF dev_driver == '' THEN RETURN 1284 1285 ok = InstallPrintDriver( driver_short, dev_driver, dev_name ) 1286 1287 IF ok <> 0 THEN DO 1288 CALL VRMessage VRWindow(), NLSGetMessage( 168, driver_short'.'dev_name ), NLSGetMessage( 13 ), 'E' 1289 END 1290 CALL SW_DEVICE_ADD_Close 1291 1292 RETURN 1293 1294 /*:VRX PB_DEVICE_OTHER_Click 1295 */ 1296 PB_DEVICE_OTHER_Click: PROCEDURE EXPOSE globals. shipped. 1297 1298 old_path = VRGet('DDCB_DEVICE_3RDPARTY', 'UserData') 1299 new_path = VRXDirectoryDialog( VRWindow(), old_path, NLSGetMessage( 189 )) 1300 IF new_path == '' THEN RETURN 1301 IF old_path == TRANSLATE( new_path ) THEN RETURN 1302 1303 CALL VRSet 'DDCB_DEVICE_3RDPARTY', 'Value', new_path 1304 CALL SetDriverList new_path 1305 1306 RETURN 1307 1308 /*:VRX PB_DEVICE_REFRESH_Click 1309 */ 1310 PB_DEVICE_REFRESH_Click: PROCEDURE EXPOSE globals. shipped. 1311 CALL SetDriverList 1312 return 1313 1173 1314 /*:VRX PB_DEVICE_REMOVE_Click 1174 1315 */ … … 1176 1317 CALL DriverDelete 1177 1318 RETURN 1319 1320 /*:VRX PB_DEVICE_REMOVE_KeyPress 1321 */ 1322 PB_DEVICE_REMOVE_KeyPress: 1323 IF VRGet('PB_DEVICE_REMOVE', 'KeyString') == '{Tab}' THEN 1324 CALL VRMethod 'TDL_MAIN', 'SetFocus' 1325 return 1178 1326 1179 1327 /*:VRX PB_IMPORTCANCEL_Click … … 1282 1430 PB_PORT_DELETE_Click: 1283 1431 CALL PortDelete 1432 return 1433 1434 /*:VRX PB_PORT_EDIT_Click 1435 */ 1436 PB_PORT_EDIT_Click: 1437 CALL PortProperties 1438 return 1439 1440 /*:VRX PB_PORT_EDIT_KeyPress 1441 */ 1442 PB_PORT_EDIT_KeyPress: 1443 IF VRGet('PB_PORT_EDIT', 'KeyString') == '{Tab}' THEN 1444 CALL VRMethod 'TDL_MAIN', 'SetFocus' 1284 1445 return 1285 1446 … … 1429 1590 PB_PRINTER_DEL_Click: 1430 1591 CALL PrinterDelete 1592 return 1593 1594 /*:VRX PB_PRINTER_EDIT_Click 1595 */ 1596 PB_PRINTER_EDIT_Click: 1597 CALL PrinterProperties 1598 RETURN 1599 1600 /*:VRX PB_PRINTER_EDIT_KeyPress 1601 */ 1602 PB_PRINTER_EDIT_KeyPress: 1603 IF VRGet('PB_PRINTER_EDIT', 'KeyString') == '{Tab}' THEN 1604 CALL VRMethod 'TDL_MAIN', 'SetFocus' 1431 1605 return 1432 1606 … … 1717 1891 RETURN 1718 1892 1893 /*:VRX RB_DEVICE_3RDPARTY_Click 1894 */ 1895 RB_DEVICE_3RDPARTY_Click: PROCEDURE EXPOSE globals. shipped. 1896 CALL VRSet 'DDCB_DEVICE_3RDPARTY', 'Enabled', 1 1897 CALL VRSet 'PB_DEVICE_OTHER', 'Enabled', 1 1898 CALL VRSet 'PB_DEVICE_REFRESH', 'Enabled', 1 1899 CALL SetDriverList 1900 RETURN 1901 1902 /*:VRX RB_DEVICE_SHIPPED_Click 1903 */ 1904 RB_DEVICE_SHIPPED_Click: PROCEDURE EXPOSE globals. shipped. 1905 CALL VRSet 'DDCB_DEVICE_3RDPARTY', 'Enabled', 0 1906 CALL VRSet 'PB_DEVICE_OTHER', 'Enabled', 0 1907 CALL VRSet 'PB_DEVICE_REFRESH', 'Enabled', 0 1908 CALL SetDriverList 1909 RETURN 1910 1911 1719 1912 /*:VRX RefreshDevices 1720 1913 */ … … 1832 2025 RETURN 1833 2026 2027 /*:VRX SetDriverList 2028 */ 2029 SetDriverList: PROCEDURE EXPOSE globals. shipped. 2030 ARG driver_path 2031 2032 CALL VRSet VRWindow(), 'Pointer', 'WAIT' 2033 CALL VRMethod 'CN_DEVICE_LIST', 'RemoveRecord', 'All' 2034 2035 IF VRGet('RB_DEVICE_SHIPPED', 'Set') == 1 THEN DO 2036 CALL VRMethod 'CN_DEVICE_LIST', 'AddRecordList',,, 'shipped.' 2037 END 2038 ELSE DO 2039 IF driver_path == '' THEN 2040 driver_path = TRANSLATE( STRIP( VRGet('DDCB_DEVICE_3RDPARTY', 'Value'))) 2041 IF driver_path <> '' THEN DO 2042 drivers.0 = 0 2043 _total = 0 2044 CALL SysFileTree driver_path'\*.DRV', 'drivers.', 'FO' 2045 DO i = 1 TO drivers.0 2046 list.0 = 0 2047 IF SysGetEA( drivers.i, '.EXPAND', 'eaval') == 0 THEN DO 2048 PARSE VAR eaval 3 ealen 5 models 2049 offs = 1 2050 datalen = C2D( REVERSE( ealen )) 2051 DO WHILE offs <= datalen 2052 start = SUBSTR( models, offs ) 2053 inc = POS('00'x, start ) 2054 IF inc > 1 THEN DO 2055 current_name = STRIP( SUBSTR( start, 1, inc-1 )) 2056 _total = _total + 1 2057 list._total = ';'_desc';#2;;;NAME;'current_name';DRIVER;'|| TRANSLATE( drivers.i ) ||';' 2058 END 2059 offs = offs + inc 2060 END 2061 END 2062 END 2063 2064 list.0 = _total 2065 CALL VRSortStem 'list.' 2066 CALL VRMethod 'CN_DEVICE_LIST', 'AddRecordList',,, 'list.' 2067 CALL VRSet 'DDCB_DEVICE_3RDPARTY', 'UserData', driver_path 2068 END 2069 END 2070 2071 CALL VRSet VRWindow(), 'Pointer', '<default>' 2072 2073 RETURN 2074 1834 2075 /*:VRX SetLanguage 1835 2076 */ … … 1945 2186 /*:VRX SW_ABOUT_Init 1946 2187 */ 1947 SW_ABOUT_Init: 2188 SW_ABOUT_Init: PROCEDURE EXPOSE globals. 1948 2189 1949 2190 IF globals.!is_ecs == 1 THEN … … 1984 2225 return 1985 2226 2227 /*:VRX SW_DEVICE_ADD_Close 2228 */ 2229 SW_DEVICE_ADD_Close: 2230 call SW_DEVICE_ADD_Fini 2231 return 2232 2233 /*:VRX SW_DEVICE_ADD_Create 2234 */ 2235 SW_DEVICE_ADD_Create: 2236 call SW_DEVICE_ADD_Init 2237 return 2238 2239 /*:VRX SW_DEVICE_ADD_Fini 2240 */ 2241 SW_DEVICE_ADD_Fini: 2242 window = VRInfo( "Window" ) 2243 call VRDestroy window 2244 drop window 2245 return 2246 /*:VRX SW_DEVICE_ADD_Init 2247 */ 2248 SW_DEVICE_ADD_Init: PROCEDURE EXPOSE globals. shipped. 2249 2250 fld_name = VRMethod('CN_DEVICE_LIST', 'AddField', 'String', NLSGetMessage( 265 ), 'NAME') 2251 fld_driver = VRMethod('CN_DEVICE_LIST', 'AddField', 'String', NLSGetMessage( 266 ), 'DRIVER') 2252 2253 IF globals.!is_ecs == 1 THEN 2254 _platform = 'eComStation' 2255 ELSE 2256 _platform = 'OS/2' 2257 CALL NLSSetText 'SW_DEVICE_ADD', 'Caption', 260 2258 CALL NLSSetText 'RB_DEVICE_SHIPPED', 'Caption', 261, _platform 2259 CALL NLSSetText 'RB_DEVICE_3RDPARTY', 'Caption', 262, _platform 2260 CALL NLSSetText 'PB_DEVICE_OTHER', 'Caption', 188 2261 CALL NLSSetText 'PB_DEVICE_REFRESH', 'Caption', 63 2262 CALL NLSSetText 'PB_DEVICE_INSTALL', 'Caption', 8 2263 CALL NLSSetText 'PB_DEVICE_CANCEL', 'Caption', 3 2264 2265 window = VRInfo( "Object" ) 2266 CALL VRSet window, 'Pointer', 'WAIT' 2267 2268 extras_num = 0 2269 PARSE UPPER VALUE VRGetIni('PrinterManager', 'LastDriverPath', 'USER') WITH last_path '00'x . 2270 IF last_path <> '' THEN DO 2271 extras_num = extras_num + 1 2272 extras_path.extras_num = last_path 2273 END 2274 PARSE UPPER VALUE VRGetIni('PrinterManager', 'ThirdParty', 'USER') WITH known_3p '00'x . 2275 IF known_3p == '' THEN known_3p = 'ECUPS ECUPS-HP GUTENPRT PSPRINT' 2276 DO i = 1 TO WORDS( known_3p ) 2277 _basename = WORD( known_3p, i ) 2278 _ppdriver = _basename'.DRV' 2279 _ppini = VRGetIni('PM_INSTALL', _basename'_DIR', 'USER') 2280 IF _ppini == '' THEN ITERATE 2281 PARSE VAR _ppini _pppath '00'x . 2282 IF VRFileExists( _pppath'\'_ppdriver ) THEN DO 2283 extras_num = extras_num + 1 2284 extras_name.extras_num = _ppdriver 2285 extras_path.extras_num = _pppath 2286 END 2287 END 2288 extras_name.0 = extras_num 2289 extras_path.0 = extras_num 2290 CALL VRMethod 'DDCB_DEVICE_3RDPARTY', 'AddStringList', 'extras_path.' 2291 IF extras_num > 0 THEN CALL VRSet 'DDCB_DEVICE_3RDPARTY', 'Selected', 1 2292 2293 if( \VRIsChildOf( window, "Notebook" ) ) then do 2294 call VRMethod window, "CenterWindow" 2295 call VRSet window, "Visible", 1 2296 call VRMethod window, "Activate" 2297 end 2298 2299 IF GetShippedDrivers() > 0 THEN DO 2300 /* CALL VRMethod 'CN_DEVICE_LIST', 'AddRecordList',,, 'shipped.' */ 2301 END 2302 2303 CALL VRSet window, 'Pointer', '<default>' 2304 drop window 2305 2306 RETURN 2307 1986 2308 /*:VRX SW_DEVICES_Close 1987 2309 */ … … 2268 2590 2269 2591 CALL NLSSetText 'CN_PORTS', 'Caption', 105 2270 CALL NLSSetText 'PB_PORT_ADD', 'Caption', 5 2271 CALL NLSSetText 'PB_PORT_DELETE', 'Caption', 6 2592 CALL NLSSetText 'PB_PORT_ADD', 'Caption', 8 2593 CALL NLSSetText 'PB_PORT_DELETE', 'Caption', 9 2594 CALL NLSSetText 'PB_PORT_EDIT', 'Caption', 10 2272 2595 2273 2596 CALL RefreshPorts … … 2363 2686 2364 2687 CALL NLSSetText 'CN_PRINTERS', 'Caption', 103 2365 CALL NLSSetText 'PB_PRINTER_ADD', 'Caption', 52366 CALL NLSSetText 'PB_PRINTER_DEL', 'Caption', 62688 CALL NLSSetText 'PB_PRINTER_ADD', 'Caption', 8 2689 CALL NLSSetText 'PB_PRINTER_DEL', 'Caption', 9 2367 2690 CALL NLSSetText 'PB_PRINTER_OPEN', 'Caption', 7 2691 CALL NLSSetText 'PB_PRINTER_EDIT', 'Caption', 10 2368 2692 2369 2693 globals.!hcfPrinters.!icon = VRMethod( "CN_PRINTERS", "AddField", "Icon", "" ) … … 2431 2755 ELSE DO 2432 2756 call VRSet 'WN_MAIN', "Visible", 1 2433 IF globals.!create_mode == '' THEN 2757 IF globals.!create_mode == '' THEN DO 2434 2758 call VRMethod 'WN_MAIN', "Activate" 2759 CALL VRMethod 'TDL_MAIN', 'SetFocus' 2760 END 2435 2761 END 2436 2762 RETURN … … 2497 2823 RETURN 2498 2824 2499 /*:VRX TM_REFRESH_Trigger2500 */2501 TM_REFRESH_Trigger: PROCEDURE EXPOSE globals.2502 CALL RefreshPrinters2503 CALL RefreshPorts2504 CALL RefreshDevices2505 RETURN2506 2507 2825 /*:VRX WN_MAIN_Close 2508 2826 */
Note:
See TracChangeset
for help on using the changeset viewer.
