Nueva Clase: TFolderEx

Nueva Clase: TFolderEx

Postby Daniel Garcia-Gil » Sun Aug 08, 2010 7:07 pm

New Class TFolderEx, is a new folder class, fivewin own without Window API
Nueva clase, es una nueva clase TFolder, propia de fivewin, sin el uso del api de window

Download Sample

Algunas caracterisicas (parametrizables):
* Tabs Multilineas
* Bitmaps, desde archivos y recursos
* Alpha Bitmpas
* Separacion entre tabs
Image

* Ajuste de posicion automatico
Image

* Data bPopUp, codeblock que se evalua por cada tabs
Image

* Enable / Disable Tabs
* Show / Hide Tabs

Image

* Alpha Level Ajuste

Image

* Colors Tabs y Texto

Image

* Ajuste de alturas y bordes redondos

Image

* Bitmap Align
Image

*Accion (ON CHANGE)

Image

Download Sample

Code sample
Code: Select all  Expand view

function main()
   local oWnd
   local oFld, oFld1
   local aMonths := {"January", "February", "March", ;
                     "April", "May", "June", ;
                     "July", "August", "September", ;
                     "October", "November", "December"}
   
    DEFINE WINDOW oWnd TITLE "TFolderex - Testing -"
     
   @ 3, 3 FOLDEREX oFld PIXEL ADJUST;
          PROMPT  "Social", "OS", "Games", "Movies", "Email", "Months", "Setting", "Exit";
          BITMAPS "facebook.bmp", "windows.bmp", "game.bmp", "viddler.bmp", "mail.bmp", "call.bmp", "settings.bmp", "logout.bmp";
          ON PAINT TAB PaintTab( Self, nOption );
          POPUP MenuTabs( Self, nOption );
          ON CHANGE ( If( nOption == 8, If( MsgYesNo( "Do you want exit??" ), ;
                                           oWnd:End(), ( ::SetOption( nOldOption ), ::Refresh() ) ), ) )
         

   //Dialog Social
   @ 3,10 FOLDEREX OF oFld:aDialogs[ 1 ] PIXEL SIZE 450, 190 ;
         PROMPT "Facebook", "MySpace", "Twitter" ;
         BITMAPS "Facebook.bmp", "myspace.bmp", "Twitter.bmp";
         SEPARATOR 20


   //Dialog OS
   @ 3,10 FOLDEREX OF oFld:aDialogs[ 2 ] PIXEL SIZE 450, 190 ;
         PROMPT "", "", "";
         BITMAPS "windows.bmp", "apple.bmp", "ubuntu.bmp";
         ALIGN AL_LEFT, AL_CENTER, AL_RIGHT
         
   //Dialog Mail
   @ 3,10 FOLDEREX OF oFld:aDialogs[ 5 ] PIXEL SIZE 450, 190 ;
         PROMPT "Gamil", "Outlook", "Yahoo";
         BITMAPS "gmail.bmp", "Outlook.bmp", "yahoo.bmp";
         TAB HEIGHT 45 ROUND 5
         
   //Dialog Months
   // Suport Arrays and list
   @ 3,10 FOLDEREX OF oFld:aDialogs[ 6 ] PIXEL SIZE 450, 190 ;
         PROMPT aMonths ;
         TAB HEIGHT 18 ROUND 0;
         ON PAINT TAB ChangeClr( Self, nOption );
         ON PAINT TEXT ChangeTxtClr( Self, nOption )
         
   ACTIVATE WINDOW oWnd;
            ON INIT oFld:Resize()
   
RETURN NIL

FUNCTION PaintTab( o, nOption )

   IF nOption == o:nOver .OR. nOption == o:nOption
      o:SetAlphaLevel( nOption, 255 )
   ELSE
      o:SetAlphaLevel( nOption, 50 )
   ENDIF
   
RETURN o:SetFldColors( o, nOption )      


FUNCTION ChangeClr( o, n )
   
   LOCAL nMonth := Month( Date() )
   LOCAL aGrad1 := { { 0.5, nRGB( 255, 255, 255 ), nRGB( 255, 240, 180 ) },;
                     { 0.5,  nRGB( 255, 240, 180 ), nRGB( 255, 200, 140 ) } }

   LOCAL aGrad2 := { { 0.5, nRGB( 255, 255, 255 ), nRGB( 200, 200, 240 ) },;
                     { 0.5,  nRGB( 200, 200, 240 ), nRGB( 100, 100, 240 ) } }

   LOCAL aGrad3 := { { 0.5, nRGB( 255, 255, 255 ), nRGB( 255, 240, 240 ) },;
                     { 0.5,  nRGB( 255, 240, 240 ), nRGB( 255, 200, 200 ) } }

   LOCAL aGradMonth := { { 0.5, nRGB( 255, 255, 255 ), nRGB( 185, 207, 147 ) },;
                         { 0.5,  nRGB( 185, 207, 147 ), nRGB( 85, 107, 47 ) } }
   
   LOCAL hBrush, aGrad
   
   IF n == nMonth
      aGrad = aGradMonth
   ELSE
      IF n > 0 .AND. n < 5
         aGrad = aGrad1
      ELSEIF n > 4 .AND. n < 9
         aGrad = aGrad2
      ELSE
         aGrad = aGrad3
      ENDIF
   ENDIF
   o:aGradUnSel = aGrad
   hBrush = o:SetFldColors( o, n )
     
RETURN hBrush

FUNCTION ChangeTxtClr( o, n )
   
   LOCAL nMonth := Month( Date() )
   LOCAL nClr := CLR_BLACK, ;
         nClr1 := CLR_HRED
   
   IF n > 0 .AND. n < 7
      nClr = nClr1
   ENDIF
     
RETURN nClr
       


FUNCTION MenuTabs( oFld, nOpt )
   LOCAL oMenu

   MENU oMenu POPUP 2007
      MENUITEM oFld:aPrompts[ nOpt ]
      SEPARATOR
      MenuAddItem( "Show", , ;
                    oFld:aVisible[ nOpt ], ,;
                    {|| If( oFld:aVisible[ nOpt ], ;
                            oFld:HideTab( nOpt ), ;
                            oFld:ShowTab( nOpt ) ) } )
      MenuAddItem( "Enabled", , ;
                    oFld:aEnable[ nOpt ], ,;
                    {|| If( oFld:aEnable[ nOpt ], ;
                            oFld:DisableTab( nOpt ), ;
                            oFld:EnableTab( nOpt ) ) } )
   ENDMENU
   
RETURN oMenu
 


Method redefine no esta listo
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Newva Clase: TFolderEx

Postby AIDA » Sun Aug 08, 2010 7:17 pm

Esta super bonito :mrgreen: a si como se ven los folders :shock: me encantaron :D

Saluditos :wink:
Que es mejor que programar? creo que nada :)
Atropellada pero aqui ando :P

I love Fivewin

séʌǝɹ ןɐ ɐʇsǝ opunɯ ǝʇsǝ
User avatar
AIDA
 
Posts: 877
Joined: Fri Jan 12, 2007 8:35 pm

Re: Newva Clase: TFolderEx

Postby FranciscoA » Sun Aug 08, 2010 7:27 pm

Excelente, Daniel. Felicitaciones.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2158
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Newva Clase: TFolderEx

Postby Daniel Garcia-Gil » Mon Aug 09, 2010 2:31 pm

Hay un nuevo ejemplo con algunos ajustes

Alt+Key esta funcionando

Download Here

(me gusta el Tab Movie ;-) )
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Newva Clase: TFolderEx

Postby MGA » Mon Aug 09, 2010 5:03 pm

Muito bom Daniel :D
ubiratanmga@gmail.com

FWH18.02
FWPPC
Harbour/xHarbour
xMate
Pelles´C
TDolphin
MGA
 
Posts: 1238
Joined: Mon Feb 25, 2008 2:54 pm
Location: Brasil/PR/Maringá

Re: Newva Clase: TFolderEx

Postby Raymundo Islas M. » Mon Aug 09, 2010 7:05 pm

Daniel,

Excelente clase !!

La pregunta del millon : Tendra la opcion para quitar las solapas/pestañas ??

Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
Raymundo Islas M.
 
Posts: 592
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: Newva Clase: TFolderEx

Postby Daniel Garcia-Gil » Mon Aug 09, 2010 7:33 pm

Raymundo Islas M. wrote:Daniel,

Excelente clase !!

La pregunta del millon : Tendra la opcion para quitar las solapas/pestañas ??

Saludos


Actualmente puedes ocultarlas pero no eliminarlas, en el ejemplo lo expuse (* Show / Hide Tabs)

hay cosas que dejare para despues dependiendo de la acojida de la misma y de las necesidades que surgan
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Newva Clase: TFolderEx

Postby Daniel Garcia-Gil » Tue Aug 10, 2010 11:01 am

Ahora podemos decidir si estiramos o no los Tabs

Estirado
Image

No estirado
Image
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Nueva Clase: TFolderEx

Postby Daniel Garcia-Gil » Tue Aug 10, 2010 1:02 pm

Trabajando desde recursos


Image

Code: Select all  Expand view

   REDEFINE FOLDEREX oFld ID 110 PROMPT "New", "Open";
            BITMAPS "new", "open";
            DIALOGS "sub1", "sub2" ;
            ROUND 5
 
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Nueva Clase: TFolderEx

Postby Ruben Fernandez » Tue Aug 10, 2010 2:07 pm

Daniel: Esta ESPECTACULAR, y mas ahora que se puede usar desde recursos.

Una pregunta se podra dar un color a cada pestaña y que cada dialogo tenga ese color ?

Gracias
Gracias y Saludos
Ruben Fernandez - Uruguay
FWH 11.06, Harbour, Borland 5.82
Ruben Fernandez
 
Posts: 366
Joined: Wed Aug 30, 2006 5:25 pm
Location: Uruguay

Re: Nueva Clase: TFolderEx

Postby Daniel Garcia-Gil » Tue Aug 10, 2010 2:29 pm

Ruben Fernandez wrote:Daniel: Esta ESPECTACULAR, y mas ahora que se puede usar desde recursos.

Una pregunta se podra dar un color a cada pestaña y que cada dialogo tenga ese color ?

Gracias


Si los colores del texto y pestañas son cofigurables, y los dialogos pueden tener ese color
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Nueva Clase: TFolderEx

Postby Daniel Garcia-Gil » Tue Aug 10, 2010 4:03 pm

Usando las tecnicas correctas se podrian lograr buenos resultados

Image
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Nueva Clase: TFolderEx

Postby wmormar » Tue Aug 10, 2010 6:16 pm

Daniel Garcia-Gil wrote:Usando las tecnicas correctas se podrian lograr buenos resultados

Image


Daniel,

Y al ocultarlo como se le hace para mostrarlo de nuevo?

en los ejemplos que me enviaste no vi como hacerlo.

y felicidades Daniel, excelente trabajo.
William, Morales
Saludos

méxico.sureste
User avatar
wmormar
 
Posts: 1074
Joined: Fri Oct 07, 2005 10:41 pm
Location: México

Re: Nueva Clase: TFolderEx

Postby Daniel Garcia-Gil » Tue Aug 10, 2010 6:35 pm

William

Los metodos para ocultar y mostrar son:

HideTab( nOption ) / ShowTab( nOption )
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Nueva Clase: TFolderEx

Postby wmormar » Tue Aug 10, 2010 8:08 pm

Daniel Garcia-Gil wrote:William

Los metodos para ocultar y mostrar son:

HideTab( nOption ) / ShowTab( nOption )


Sipi, eso lo entiendo, pero al darle click derecho se oculta, como mostrarlo por ese mismo metodo?
William, Morales
Saludos

méxico.sureste
User avatar
wmormar
 
Posts: 1074
Joined: Fri Oct 07, 2005 10:41 pm
Location: México

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 39 guests