Changeset 95 for trunk/gui


Ignore:
Timestamp:
Jan 27, 2023, 5:06:21 AM (3 years ago)
Author:
Alex Taylor
Message:

Font scaling logic. Support for CUPS-PDF printer

Location:
trunk/gui/printer/cupswiz
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/gui/printer/cupswiz/cupswiz.VRP

    r91 r95  
    55RunParameters: /debug
    66RunDirectory:
    7 VRXWindow: __VREMainWindow,1,578,2746,5770,9106
    8 VRXWindow: __VRESectionListWindow,1,723,11900,4529,3891
    9 VRXWindow: __VREToolsWindow,1,1650,9973,5468,1669
    10 VRXWindow: __VREWindListWindow,1,5191,11900,2650,3891
     7VRXWindow: __VREMainWindow,1,650,2746,5770,9106
     8VRXWindow: __VRESectionListWindow,1,795,11900,4529,3891
     9VRXWindow: __VREToolsWindow,1,1722,9973,5474,1669
     10VRXWindow: __VREWindListWindow,1,5264,11900,2650,3891
    1111UserFile: 1
    1212UserWindow: WN_MAIN,1
    13 UserWindow: SW_CREATE,1
    14 UserWindow: SW_MODEL,1
    15 UserWindow: SW_ABOUT,1
     13UserWindow: SW_NETWORK,1
  • trunk/gui/printer/cupswiz/cupswiz.VRX

    r91 r95  
    143143                           NLSGetMessage( 78, globals.!bootdrv'\OS2\DLL\CUPS.PDR'),,    /*  78: The required program %1 is not installed... */
    144144                           NLSGetMessage( 79 ), 'E'                                     /*  79: Missing File */
    145             CALL Quit
    146         END
    147         ELSE CALL VRSetIni 'PM_PORT_DRIVER', 'CUPS', cups_pdr, 'System'
     145            RETURN 0
     146        END
     147        ELSE
     148            CALL VRSetIni 'PM_PORT_DRIVER', 'CUPS', cups_pdr, 'System'
    148149    END
    149150
     
    159160                       NLSGetMessage( 78, 'CUPSLPR.EXE'),,
    160161                       NLSGetMessage( 79 ), 'E'
    161         CALL Quit
     162        RETURN 0
    162163    END
    163164
     
    168169    IF gzip_exe == '' THEN DO
    169170        CALL VRMessage VRWindow(), NLSGetMessage( 78, 'GZIP.EXE'), NLSGetMessage( 79 ), 'E'
    170         CALL Quit
     171        RETURN 0
    171172    END
    172173
     
    177178    IF port_exe == '' THEN DO
    178179        CALL VRMessage VRWindow(), NLSGetMessage( 78, 'CUPSPORT.EXE'), NLSGetMessage( 79 ), 'E'
    179         CALL Quit
     180        RETURN 0
    180181    END
    181182
     
    186187    IF prntobj_exe == '' THEN DO
    187188        CALL VRMessage VRWindow(), NLSGetMessage( 78, 'PRNTOBJ.EXE'), NLSGetMessage( 79 ), 'E'
    188         CALL Quit
    189     END
    190 
    191 RETURN
     189        RETURN 0
     190    END
     191
     192RETURN 1
    192193
    193194/*:VRX         CHK_CREATEPM_Click
     
    521522            userid_caption = 86          /* 86: User ID: */
    522523        END
     524        WHEN which == 6 THEN DO     /* CUPS-PDF */
     525            show_queue = 0
     526            show_user  = 0
     527            show_pass  = 0
     528            show_pick  = 0
     529            server_caption = 83          /* 83: Print server name: */
     530            queue_caption  = 84          /* 84: Printer queue name: */
     531            userid_caption = 86          /* 86: User ID: */
     532        END
    523533        OTHERWISE DO                /* CUPS */
    524534            show_queue = 0
     
    644654            ELSE
    645655                devices.i = NLSGetMessage( 33, _protocol, _host _queue )                    /* 33: Detected network printer (%1) at %2 */
     656        END
     657        ELSE IF _type == 'file' & _name == 'cups-pdf:/' THEN DO
     658            globals.!has_pdf = 1
    646659        END
    647660        ELSE IF _type <> 'direct' THEN ITERATE
     
    11681181    CALL LoadSettings
    11691182    CALL SetLanguage
    1170     CALL CheckPrograms
    1171 
    1172     _force_remote = 0
    1173     globals.!prt_ppd = ''
    1174     IF InitArgs.0 > 0 THEN
    1175     DO i = 1 TO InitArgs.0
    1176         InitArgs.i = TRANSLATE( InitArgs.i )
    1177         IF VRIsDir( InitArgs.i ) THEN
    1178             globals.!cupsdir = InitArgs.1
    1179         ELSE IF InitArgs.i == '/R' THEN DO
    1180             globals.!cupsdir = ''
    1181             _force_remote = 1
    1182         END
    1183         ELSE IF VRFileExists( InitArgs.i ) THEN DO
    1184             _filetype = VRParseFileName( InitArgs.i, 'E')
    1185             IF _filetype == 'PPD' THEN
    1186                 globals.!prt_ppd = InitArgs.i
    1187         END
    1188     END
    1189 
    1190     IF globals.!cupsdir == '' & \_force_remote THEN
    1191         CALL VRMessage VRWindow(),,
    1192                        NLSGetMessage( 65, 'CUPSWIZ F:\CUPS') ||,    /* 65: CUPS could not be located ... on the command line to this program (e.g "%1"). */
    1193                        '0d0a0d0a'x || NLSGetMessage( 66 ),,         /* 66: Only remote CUPS queues ... start this program with the /R parameter.) */
    1194                        NLSGetMessage( 28 ), 'E'                     /* 28: CUPS Path Not Found or Not Valid */
    1195 
    1196     /* Delete the error log file each time the program starts.
    1197      */
    1198     IF VRFileExists( globals.!log2 ) THEN
    1199         CALL VRDeleteFile globals.!log2
    1200 
    1201     CALL PrintManCheckIn 'CUPSWIZ INIT'
    1202 
    1203     window = VRWindow()
    1204     call VRMethod window, "CenterWindow"
    1205     call VRSet window, "Visible", 1
    1206     call VRMethod window, "Activate"
    1207     drop window
    1208 
    1209     manufacturers.0 = 0
    1210     CALL SetPage1
     1183    canContinue = CheckPrograms()
     1184
     1185    IF canContinue THEN DO
     1186        _force_remote = 0
     1187        globals.!prt_ppd = ''
     1188        IF InitArgs.0 > 0 THEN
     1189        DO i = 1 TO InitArgs.0
     1190            InitArgs.i = TRANSLATE( InitArgs.i )
     1191            IF VRIsDir( InitArgs.i ) THEN
     1192                globals.!cupsdir = InitArgs.1
     1193            ELSE IF InitArgs.i == '/R' THEN DO
     1194                globals.!cupsdir = ''
     1195                _force_remote = 1
     1196            END
     1197            ELSE IF VRFileExists( InitArgs.i ) THEN DO
     1198                _filetype = VRParseFileName( InitArgs.i, 'E')
     1199                IF _filetype == 'PPD' THEN
     1200                    globals.!prt_ppd = InitArgs.i
     1201            END
     1202        END
     1203
     1204        IF globals.!cupsdir == '' & \_force_remote THEN
     1205            CALL VRMessage VRWindow(),,
     1206                           NLSGetMessage( 65, 'CUPSWIZ F:\CUPS') ||,    /* 65: CUPS could not be located ... on the command line to this program (e.g "%1"). */
     1207                           '0d0a0d0a'x || NLSGetMessage( 66 ),,         /* 66: Only remote CUPS queues ... start this program with the /R parameter.) */
     1208                           NLSGetMessage( 28 ), 'E'                     /* 28: CUPS Path Not Found or Not Valid */
     1209
     1210        /* Delete the error log file each time the program starts.
     1211         */
     1212        IF VRFileExists( globals.!log2 ) THEN
     1213            CALL VRDeleteFile globals.!log2
     1214
     1215        CALL PrintManCheckIn 'CUPSWIZ INIT'
     1216
     1217        window = VRWindow()
     1218        call VRMethod window, "CenterWindow"
     1219        call VRSet window, "Visible", 1
     1220        call VRMethod window, "Activate"
     1221        drop window
     1222
     1223        manufacturers.0 = 0
     1224        CALL SetPage1
     1225    END
     1226    ELSE
     1227        CALL Quit
    12111228
    12121229RETURN
     
    13681385    globals.!log2 = globals.!logdir'\cupswiz.l2'
    13691386
     1387    globals.!has_pdf = 0
     1388
    13701389    /* Get printer-related paths.
    13711390     */
     
    13781397     */
    13791398    globals.!nlsfile = 'cupswz'
     1399
     1400    /* Set the UI font.
     1401     */
     1402    globals.!defaultSize = 9
     1403    PARSE VALUE VRGetIni('PM_SystemFonts', 'WindowText') WITH globals.!windowText '00'x .
     1404    IF globals.!windowText <> '' THEN DO
     1405        CALL VRSet 'WN_MAIN', 'Font', globals.!windowText
     1406        CALL VRSet 'WN_MAIN', 'StatusFont', globals.!windowText
     1407        factor = GetScalingFactor( ParseFontSize( globals.!windowText ))
     1408        CALL RescaleObject 'WN_MAIN', factor, 0
     1409        CALL RescaleObject 'GB_LOGO', factor
     1410        CALL RescaleObject 'PICT_ICON', factor
     1411        CALL RescaleObject 'GB_MAIN', factor
     1412        CALL RescaleObject 'DT_INFO', factor
     1413        CALL RescaleObject 'LB_BRAND', factor
     1414        CALL RescaleObject 'LB_SELECT', factor
     1415        CALL RescaleObject 'GB_INFO', factor
     1416        CALL RescaleObject 'DT_NAME', factor
     1417        CALL RescaleObject 'EF_NAME', factor
     1418        CALL RescaleObject 'DT_LOCATION', factor
     1419        CALL RescaleObject 'EF_LOCATION', factor
     1420        CALL RescaleObject 'DT_DESC', factor
     1421        CALL RescaleObject 'EF_DESC', factor
     1422        CALL RescaleObject 'PB_NEXT', factor
     1423        CALL RescaleObject 'PB_CANCEL', factor
     1424        CALL RescaleObject 'PB_HELP', factor
     1425    END
    13801426
    13811427RETURN 0
     
    15221568            END
    15231569            uri = uri || server'/'pqueue
     1570        END
     1571        WHEN which == 6 THEN DO     /* CUPS-PDF */
     1572            IF server == '' THEN invalid = 1
     1573            ELSE DO
     1574                uri = 'cups-pdf://'
     1575            END
    15241576        END
    15251577        OTHERWISE DO                /* Existing CUPS */
     
    20252077
    20262078    window = VRInfo( "Object" )
     2079
     2080    IF globals.!windowText <> '' THEN DO
     2081        CALL VRSet window, 'Font', globals.!windowText
     2082        CALL VRSet window, 'StatusFont', globals.!windowText
     2083        CALL VRSet 'DT_ABOUT1', 'Font', globals.!windowText || ' Bold'
     2084        factor = GetScalingFactor( ParseFontSize( globals.!windowText ))
     2085        CALL RescaleObject window, factor, 0
     2086        CALL RescaleObject 'PICT_ABOUT', factor
     2087        CALL RescaleObject 'DT_ABOUT1', factor
     2088        CALL RescaleObject 'DT_ABOUT2', factor
     2089        CALL RescaleObject 'DT_ABOUT3', factor
     2090        CALL RescaleObject 'GB_ABOUT1', factor
     2091        CALL VRSet 'GB_ABOUT1', 'Height', 30
     2092        CALL RescaleObject 'GB_ABOUT2', factor
     2093        CALL RescaleObject 'DT_BOOTDRIVE', factor
     2094        CALL RescaleObject 'DT_CUPSPATH', factor
     2095        CALL RescaleObject 'DT_REPOSITORY', factor
     2096        CALL RescaleObject 'PB_ABOUT', factor
     2097    END
     2098
    20272099    if( \VRIsChildOf( window, "Notebook" ) ) then do
    20282100        call VRMethod window, "CenterWindow"
     
    21202192
    21212193    window = VRInfo( "Object" )
     2194    IF globals.!windowText <> '' THEN DO
     2195        CALL VRSet window, 'Font', globals.!windowText
     2196        CALL VRSet window, 'StatusFont', globals.!windowText
     2197        factor = GetScalingFactor( ParseFontSize( globals.!windowText ))
     2198        CALL RescaleObject window, factor, 0
     2199        CALL RescaleObject 'PICT_CICON', factor
     2200        CALL RescaleObject 'DT_CREATE', factor
     2201        CALL RescaleObject 'GB_CREATE', factor
     2202        CALL RescaleObject 'DT_CRMODEL', factor
     2203        CALL RescaleObject 'EF_CRMODEL', factor
     2204        CALL RescaleObject 'DT_CRNAME', factor
     2205        CALL RescaleObject 'EF_CRNAME', factor
     2206        CALL RescaleObject 'DT_CRURI', factor
     2207        CALL RescaleObject 'EF_CRURI', factor
     2208        CALL RescaleObject 'DT_CRLOC', factor
     2209        CALL RescaleObject 'EF_CRLOC', factor
     2210        CALL RescaleObject 'DT_CRDESC', factor
     2211        CALL RescaleObject 'EF_CRDESC', factor
     2212        CALL RescaleObject 'CHK_CREATEPM', factor
     2213        CALL RescaleObject 'DT_PRESDRV', factor
     2214        CALL RescaleObject 'DDCB_PRESDRV', factor
     2215        CALL RescaleObject 'PB_CREATEOK', factor
     2216        CALL RescaleObject 'PB_CREATECANCEL', factor
     2217        CALL RescaleObject 'PB_CREATEHELP', factor
     2218    END
     2219
    21222220    if( \VRIsChildOf( window, "Notebook" ) ) then do
    21232221        call VRMethod window, "CenterWindow"
     
    21752273
    21762274    window = VRInfo( "Object" )
     2275
     2276    IF globals.!windowText <> '' THEN DO
     2277        CALL VRSet window, 'Font', globals.!windowText
     2278        CALL VRSet window, 'StatusFont', globals.!windowText
     2279        factor = GetScalingFactor( ParseFontSize( globals.!windowText ))
     2280        CALL RescaleObject window, factor, 0
     2281        CALL RescaleObject 'DT_MODEL1', factor
     2282        CALL RescaleObject 'DT_MODEL2', factor
     2283        CALL RescaleObject 'LB_OS2MODELS', factor
     2284        CALL RescaleObject 'PB_MODELOK', factor
     2285        CALL RescaleObject 'PB_MODELCANCEL', factor
     2286    END
     2287
    21772288    if( \VRIsChildOf( window, "Notebook" ) ) then do
    21782289        call VRMethod window, "CenterWindow"
     
    22292340    END
    22302341    ELSE DO
     2342        CALL VRSet 'EF_SERVER', 'Value', 'localhost'
    22312343        protos.0 = 5
    22322344        protos.1 = NLSGetMessage( 92 )              /* 92: Internet Printing Protocol (IPP) */
     
    22412353        pnums.4 = 4
    22422354        pnums.5 = 5
     2355        IF globals.!has_pdf THEN DO
     2356            /* CUPS-PDF backend is present */
     2357            protos.0 = 6
     2358            protos.6 = NLSGetMessage( 97 )              /* 97: Virtual PDF printer (CUPS-PDF) */
     2359            pnums.0 = 6
     2360            pnums.6 = 6
     2361        END
    22432362    END
    22442363
     
    22472366
    22482367    window = VRInfo( "Object" )
     2368
     2369    IF globals.!windowText <> '' THEN DO
     2370        CALL VRSet window, 'Font', globals.!windowText
     2371        CALL VRSet window, 'StatusFont', globals.!windowText
     2372        factor = GetScalingFactor( ParseFontSize( globals.!windowText ))
     2373        CALL RescaleObject window, factor, 0
     2374        CALL RescaleObject 'DT_NETWORK', factor
     2375        CALL RescaleObject 'DT_PROTOCOL', factor
     2376        CALL RescaleObject 'DDCB_PROTOCOL', factor
     2377        CALL RescaleObject 'DT_SERVER', factor
     2378        CALL RescaleObject 'EF_SERVER', factor
     2379        CALL RescaleObject 'DT_QUEUE', factor
     2380        CALL RescaleObject 'EF_QUEUE', factor
     2381        CALL RescaleObject 'DT_USERID', factor
     2382        CALL RescaleObject 'EF_USERID', factor
     2383        CALL RescaleObject 'DT_PASSWORD', factor
     2384        CALL RescaleObject 'EF_PASSWORD', factor
     2385        CALL RescaleObject 'DDCB_CUPSQUEUES', factor
     2386        CALL RescaleObject 'PB_NETOK', factor
     2387        CALL RescaleObject 'PB_NETCANCEL', factor
     2388        CALL RescaleObject 'PB_NETHELP', factor
     2389    END
     2390
    22492391    if( \VRIsChildOf( window, "Notebook" ) ) then do
    22502392        call VRMethod window, "CenterWindow"
  • trunk/gui/printer/cupswiz/cupswzde.mkm

    r69 r95  
    1515; Product information dialog
    1616CWZ0010I: Produktinformationen
    17 CWZ0011I: Installationsprogramm fr eCups-Drucker
     17CWZ0011I: Installationsprogramm fr CUPS-Drucker
    1818CWZ0012I: Version %1
    1919CWZ0013I: (C) %1 Alex Taylor
     
    113113CWZ0095I: Windows/SMB-Netzwerk
    114114CWZ0096I: Bestehender CUPS-Drucker
    115 CWZ0097?:
     115CWZ0097I: Virtual PDF printer (CUPS-PDF)
    116116CWZ0098?:
    117117CWZ0099?:
  • trunk/gui/printer/cupswiz/cupswzen.ipf

    r66 r95  
    250250:nt.If CUPS is not locally installed, then this will be the only option
    251251available.:ent.
     252:dt.:hp2.Virtual PDF printer (CUPS-PDF):ehp2.
     253:dd.This option creates a special printer queue that &osq.prints&csq. to
     254a PDF file on disk, instead of to an actual printer.  The file will be placed
     255in the directory specified in the file &osq.cups-pdf.conf&csq. which resides
     256in the CUPS configuration directory (usually %UNIXROOT%\etc\cups).  The
     257normal default location is %UNIXROOT%\var\spool\cups.  (If you specify a server
     258other than the local computer, the file will be created on that server.)
     259:p.This option is only available if the :hp2.cups-pdf:ehp2. module is
     260installed on your system.
    252261:edl.
    253262:p.All network protocols except for :hp2.Existing CUPS printer:ehp2. require
  • trunk/gui/printer/cupswiz/cupswzen.mkm

    r53 r95  
    1515; Product information dialog
    1616CWZ0010I: Product Information
    17 CWZ0011I: eCups Printer Install Utility
     17CWZ0011I: CUPS Printer Install Utility
    1818CWZ0012I: Version %1
    1919CWZ0013I: (C) %1 Alex Taylor
     
    113113CWZ0095I: Windows/SMB network
    114114CWZ0096I: Existing CUPS printer
    115 CWZ0097?:
     115CWZ0097I: Virtual PDF printer (CUPS-PDF)
    116116CWZ0098?:
    117117CWZ0099?:
  • trunk/gui/printer/cupswiz/cupswzes.mkm

    r88 r95  
    1515; Product information dialog
    1616CWZ0010I: Informaci¢n del producto
    17 CWZ0011I: Herramienta de instalaci¢n de impresoras eCups
     17CWZ0011I: Herramienta de instalaci¢n de impresoras CUPS
    1818CWZ0012I: Versi¢n %1
    1919CWZ0013I: ž %1 Alex Taylor
     
    113113CWZ0095I: Red Windows/SMB
    114114CWZ0096I: Impresora CUPS existente
    115 CWZ0097?:
     115CWZ0097I: Virtual PDF printer (CUPS-PDF)
    116116CWZ0098?:
    117117CWZ0099?:
  • trunk/gui/printer/cupswiz/cupswzit.mkm

    r90 r95  
    1515; Product information dialog
    1616CWZ0010I: Informazioni sul Prodotto
    17 CWZ0011I: Programma di Installazione Stampanti eCups
     17CWZ0011I: Programma di Installazione Stampanti CUPS
    1818CWZ0012I: Versione %1
    1919CWZ0013I: (C) %1 Alex Taylor
     
    120120CWZ0095I: Rete Windows/SMB
    121121CWZ0096I: Stampante CUPS esistente
    122 CWZ0097?:
     122CWZ0097I: Virtual PDF printer (CUPS-PDF)
    123123CWZ0098?:
    124124CWZ0099?:
  • trunk/gui/printer/cupswiz/cupswzru.mkm

    r93 r95  
    1515; Product information dialog
    1616CWZ0010I: ˆ­ä®à¬ æšï ® ¯à®€ãªâ¥
    17 CWZ0011I: eCups Printer Install Utility
     17CWZ0011I: CUPS Printer Install Utility
    1818CWZ0012I: ‚¥àášï %1
    1919CWZ0013I: (C) %1 Alex Taylor
     
    115115CWZ0095I: ‘¥âì Windows/SMB
    116116CWZ0096I: ‘ãé¥áâ¢ãîéš© ¯àš­â¥à CUPS
    117 CWZ0097?:
     117CWZ0097I: Virtual PDF printer (CUPS-PDF)
    118118CWZ0098?:
    119119CWZ0099?:
Note: See TracChangeset for help on using the changeset viewer.