Consulta FreeImage.dll

Consulta FreeImage.dll

Postby MOISES » Wed Apr 22, 2020 9:55 am

Hola:

¿Sigue siendo necesaria en la versión actual de FWH?

Gracias.
Saludos / Regards,

FWH 20.04, Harbour 3.2.0 dev (r1909261630) y BCC 7.40
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am

Re: Consulta FreeImage.dll

Postby cnavarro » Wed Apr 22, 2020 3:09 pm

Creo recordar que solo si usas el control IMAGE, pero no si utilizas el control XIMAGE, pruébalo
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Consulta FreeImage.dll

Postby MOISES » Wed Apr 22, 2020 3:30 pm

Ok, gracias. No sabía si ya habíais migrado todo a GDIPlus.
Saludos / Regards,

FWH 20.04, Harbour 3.2.0 dev (r1909261630) y BCC 7.40
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am

Re: Consulta FreeImage.dll

Postby cnavarro » Wed Apr 22, 2020 9:14 pm

Precisamente para mantener compatibilidad con código de usuarios que utilizaran otras versiones se hizo otra clase XIMAGE
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Consulta FreeImage.dll

Postby MOISES » Sat Apr 25, 2020 3:16 pm

Cristóbal:

En el REDEFINE faltan las cláusulas UPDATE, ON CLICK, ADJUST y WHEN.
Saludos / Regards,

FWH 20.04, Harbour 3.2.0 dev (r1909261630) y BCC 7.40
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am

Re: Consulta FreeImage.dll

Postby cnavarro » Sun Apr 26, 2020 12:51 am

Moisés, te refieres a la clase TIMAGE ?
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Consulta FreeImage.dll

Postby MOISES » Sun Apr 26, 2020 8:11 am

No, me refiero al REDEFINE DE XIMAGE.

Lo he solucionado así, pero sería bueno para facilitar la migración de IMAGE a XIMAGE que el redefine fuera el mismo.

Code: Select all  Expand view
  oImage:bWhen  := { || .F.}
   oImage:bRClicked := { || mifuncion()}


Lo que si es más importante es que el menú METHOD PopupMenu( nRow, nCol, nFlags ) CLASS TXImage use FWStrings, y esté con la cláusula 2015 por favor.

Gracias.
Saludos / Regards,

FWH 20.04, Harbour 3.2.0 dev (r1909261630) y BCC 7.40
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am

Re: Consulta FreeImage.dll

Postby cnavarro » Sun Apr 26, 2020 2:36 pm

Moises, claúsulas hay muchas y es posible que en todos los controles no estén implementadas en su COMANDOS, pero como bien has hecho, para eso están sus codeblocks asociados ( yo suelo trabajar así, con el WITH OBJECT y definiendo sus propiedades, digo en general con cualquier objeto, no sólo con éste )
En cuanto a lo que comentas de cambiar el estilo del menu, prueba lo siguiente:
- Cambia el método POPUPMENU en la class XIMAGE
Code: Select all  Expand view

//----------------------------------------------------------------------------//

METHOD PopupMenu( nRow, nCol, nFlags ) CLASS TXImage

   local oMenu, oClp

   if PCount() > 0 .and. ! ::lFocused
      ::SetFocus()
   endif

   if ::l2007
      MENU oMenu POPUP 2007
   endif
   if ::l2010
      MENU oMenu POPUP 2010
   endif
   if ::l2013
      MENU oMenu POPUP 2013
   endif
   if ::l2015
      MENU oMenu POPUP 2015
   endif
      MENUITEM "Center"       ACTION ::Center()
      MENUITEM "Fit Width"    ACTION ::FitWidth()
      MENUITEM "Fit Height"   ACTION ::FitHeight()
      MENUITEM "Fit In Rect"  ACTION ::FitRect()
      SEPARATOR
      MENUITEM "Crop"         ACTION ( ::lCrop := .t. )
      //SEPARATOR
      if ::lCanPaste
         SEPARATOR
         MENUITEM "Paste"        ACTION ::Paste() ;
            WHEN ::Paste( .t. )
      endif
      if ::lMnuSave
         SEPARATOR
         MENUITEM "Copy To ClipBoard"
         MENU
            MENUITEM "As Viewed"       ACTION ::CopyToClipBoard( .t. )
            MENUITEM "Original Image"  ACTION ::CopyToClipBoard( .f. )
         ENDMENU
         SEPARATOR
         MENUITEM "Save To File"
         MENU
            MENUITEM "As Viewed"       ACTION ::Save( .t. )
            MENUITEM "Original Image"  ACTION ::Save( .f. )
         ENDMENU
      endif
   ENDMENU

   If PCount() > 0
      ACTIVATE POPUP oMenu AT nRow, nCol OF Self
   endif

return oMenu

//----------------------------------------------------------------------------//
 


y en tu código sólo tendrás que hacer

Code: Select all  Expand view

   @ 52, 02 XIMAGE oImageT SIZE 410, 200 OF oWndImg NOBORDER  
   oImageT:FitRect()
   oImageT:SetSource( uFile )
   oImageT:l2007 := .F.
   oImageT:l2010 := .F.
   oImageT:l2013 := .F.
   oImageT:l2015 := .T.
 


Dime si te funciona según tus necesidades
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Consulta FreeImage.dll

Postby MOISES » Sun Apr 26, 2020 4:00 pm

Lo primero, muchas gracias por tu ayuda y por tu tiempo.

Creo que para dejarlo perfecto el método debería coger el estilo del menú principal. Me suena que esto lo tenéis implementado, si no lo investigo yo.

Y te paso la implementación de FWString:

Code: Select all  Expand view


   MENU oMenu POPUP 2007

      MENUITEM FWString("Center")       ACTION ::Center()
      MENUITEM FWString("Fit Width")    ACTION ::FitWidth()
      MENUITEM FWString("Fit Height")   ACTION ::FitHeight()
      MENUITEM FWString("Fit In Rect")  ACTION ::FitRect()

      SEPARATOR
      MENUITEM FWString("Crop")         ACTION ( ::lCrop := .t. )

      SEPARATOR
      if ::lCanPaste
         MENUITEM FWString("Paste")        ACTION ::Paste() ;
            WHEN ::Paste( .t. )
      endif

      MENUITEM FWString("Copy To ClipBoard")
      MENU
         MENUITEM FWString("As Viewed")        ACTION ::CopyToClipBoard( .t. )
         MENUITEM FWString("Original Image")  ACTION ::CopyToClipBoard( .f. )
      ENDMENU

      MENUITEM FWString("Save To File")
      MENU
         MENUITEM FWString("As Viewed")        ACTION ::Save( .t. )
         MENUITEM FWString("Original Image")  ACTION ::Save( .f. )
      ENDMENU
   ENDMENU

 


Y las traducciones de las cadenas que faltan:

{ "As Viewed", }, ;
{ "Crop", }, ;
{ "Fit Height", }, ;
{ "Fit In Rect", }, ;
{ "Fit Width", }, ;
{ "Original Image", }, ;
{ "Save To File", } ;
} )

Español:

{ "Como se ve", }, ;
{ "Recortar", }, ;
{ "Ajustar altura", }, ;
{ "Ajustar en rectángulo", }, ;
{ "Ajustar anchura", }, ;
{ "Imagen original", }, ;
{ "Guardar en archivo", } ;
} )

Francés:

{"Tel que vu", }, ;
{" Couper ", }, ;
{"Ajuster la hauteur", }, ;
{"Ajuster au rectangle", }, ;
{"Ajuster la largeur", }, ;
{"Image originale", }, ;
{"Enregistrer dans un fichier", } ;
} )

Alemán

"Wie gesehen",..;
{"Cut",..;
{"Höhe anpassen", }, ;
{"Für Rechteck anpassen", }, ;
{ "Breite anpassen", }, ;
{"Originalbild", },, ;
{ "In Datei speichern", } ;
} )


Va a quedar muy bien rematado.

Un saludo
Saludos / Regards,

FWH 20.04, Harbour 3.2.0 dev (r1909261630) y BCC 7.40
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am

Re: Consulta FreeImage.dll

Postby cnavarro » Sun Apr 26, 2020 4:40 pm

MOISES wrote:Lo primero, muchas gracias por tu ayuda y por tu tiempo.

Creo que para dejarlo perfecto el método debería coger el estilo del menú principal. Me suena que esto lo tenéis implementado, si no lo investigo yo.



Para que coja el estilo del menú de la ventana, sólo tienes que cambiar en el código que te puse lo siguiente
( siempre y cuando la ventana o contenedor del objeto XIMAGE tenga menú claro )
Code: Select all  Expand view

   oImageT:l2007 := oImageT:oWnd:oMenu:l2007
   oImageT:l2010 := oImageT:oWnd:oMenu:l2010
   oImageT:l2013 := oImageT:oWnd:oMenu:l2013
   oImageT:l2015 := oImageT:oWnd:oMenu:l2015
 
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Consulta FreeImage.dll

Postby MOISES » Sun Apr 26, 2020 5:47 pm

Para dejarlo pulido, me gustaría preguntarte si en la clase menú tienes un valor que diga el estilo concreto, o hay que ir estilo por estilo.

Si no, quizás podría quedar algo así:

oImageT:l2007 := if (hb_isnil(oImageT:oWnd:oMenu:l2007),, oImageT:oWnd:oMenu:l2007)

En todo caso, lo que veas mejor y te ayudo a testearlo para evitar errores con la próxima versión de Fivewin.

Muchas gracias.
Saludos / Regards,

FWH 20.04, Harbour 3.2.0 dev (r1909261630) y BCC 7.40
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am

Re: Consulta FreeImage.dll

Postby cnavarro » Sun Apr 26, 2020 7:10 pm

Moisés, las datas de estilos en la clase MENU, creo recordar que siempre están inicializadas en el method new a .F., por lo que no van a valer nil
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 51 guests