Buen dia, espero te sirva de ayuda:
rpreview.prg
El "Archivo" es el tĂtulo de la ventana, que toma el valor de ::oDevice:cDocument (lo que pasaste en PRINT NAME "..."). Eso se hace en BuildWindow(), lĂneas 444-446:
444 if ::oDevice != nil
445 cTitle = ::oDevice:cDocument
446 endif
El "Página X / Y" que ves en la barra de botones de la vista previa se arma en BuildButtonBar(). Está en dos lugares, según el estilo del visor:
Estilo 2007 o superior (lĂneas 554-560 de rpreview.prg):
554 if nStyle >= 2007
555 oBar:bPainted = { || oBar:Say( nRow, nCol, "Factor:",,, ::oFont, .T., .T. ),;
556 oBar:Say( nRow, nCol+100, ::cPageNum + " " + ;
557 LTrim( Str( ::nPage, 4, 0 ) ) + " / " + ;
558 LTrim( Str( Len( ::oDevice:aMeta ) ) ),,, ::oFont, .T., .T. ) }
559
560 endif
Estilo clásico (anterior a 2007) (lĂneas 574-580):
574 if nStyle < 2007
575 @ nRow, nCol + 100 SAY ::oPage PROMPT FWString( "Page number:" ) + ;
576 LTrim( Str( ::nPage, 4, 0 ) ) + " / " + ;
577 LTrim( Str( Len( ::oDevice:aMeta ) ) ) ;
578 SIZE 180, 15 PIXEL OF ::oBar FONT ::oFont
579 ::oPage:lTransparent = .T.
580 endif
Y al cambiar de página, el texto se reescribe en tres métodos más:
GoPage() → lĂneas 813-816
NextPage() → lĂneas 924-927
PrevPage() → lĂneas 960-963
Todos usan el mismo patrĂłn: FWString("Page number:") + LTrim(Str(::nPage,4,0)) + " / " + LTrim(Str(Len(::oDevice:aMeta))).
Clase y lĂnea para modificar
Clase: TPreview (archivo rpreview.prg)
MĂ©todo principal: BuildButtonBar() — lĂneas 556-558 (estilo 2007+) y 575-577 (estilo clásico).
MĂ©todos secundarios a sincronizar: GoPage (lĂneas 814-815), NextPage (925-926) y PrevPage (961-962).
Si solo cambiás BuildButtonBar el texto se verá bien al abrir la vista previa, pero al pasar de página va a volver al formato original — por eso hay que tocar los tres métodos de navegación también.
Sobre el "formato correcto"
Pero necesito que me aclares qué es lo que querés conseguir, porque "formato correcto" puede ser cualquiera de estas cosas:
QuerĂ©s cambiar el texto a español ("Página nĂşmero: 3 / 10" o "Página 3 de 10"): hay que retocar las lĂneas indicadas y, si usás FWString(), lo correcto es agregar la traducciĂłn en tu archivo de idioma, no tocar el .prg.
El texto se ve cortado (por ejemplo solo entran "Página nĂşmero: 3 /" y se corta el total): es el SIZE 180, 15 de la lĂnea 578 — habrĂa que ampliarlo.
Los acentos salen mal ("P�gina"): es problema de codificación/fuente, no del literal.
QuerĂ©s cambiar el separador ("3/10" en vez de "3 / 10", o "3 de 10"): retocar el " / " en las lĂneas 557, 576, 815, 926, 962.
El texto se superpone con otro control de la barra: hay que mover el nCol + 100 (lĂnea 575) o el nCol+100 de la lĂnea 556.
Esta en C:\FWH26\source\classes
saludos Mariano