Mas funciones para la toolbar

Mas funciones para la toolbar

Postby mastintin » Sun Aug 22, 2010 2:10 pm

Nuevas funciones para la toolbar . La primera añade un separador . la tercera un espacio y la segunda un espacioflex .
Dejo aunsin publicar la funcion de busquedas hasta que quede mas claro la mejor manera de inplementarla .

El código para la lcase :
Code: Select all  Expand view

  METHOD AddSeparator() INLINE  AAdd( ::aButtons, TToolBarBtn():Separator( Self ) )
   METHOD AddSpaceFlex() INLINE  AAdd( ::aButtons, TToolBarBtn():Spaceflex( Self ) )  
   METHOD AddSpace() INLINE  AAdd( ::aButtons, TToolBarBtn():Space( Self ) )
 

para la clase btntoolbar
Code: Select all  Expand view

METHOD SEPARATOR( oToolBar ) CLASS TToolBarBtn

   ::oToolBar = oToolBar
   ::hWnd     = TBRADDSEPARATOR( oToolBar:hWnd, Len( oToolBar:aButtons ) )
   
return Self   
   

METHOD SpaceFlex( oToolBar ) CLASS TToolBarBtn

   ::oToolBar = oToolBar
   ::hWnd     = TBRAddSpaceFlex( oToolBar:hWnd, Len( oToolBar:aButtons ) )
   
return Self

METHOD Space( oToolBar ) CLASS TToolBarBtn

   ::oToolBar = oToolBar
   ::hWnd     = TBRAddSpace( oToolBar:hWnd, Len( oToolBar:aButtons ) )
   
return Self 

 




El codigo para toolbars.m

Code: Select all  Expand view


HB_FUNC( TBRADDSEPARATOR )
{
   
    ToolBar * toolbar = ( ToolBar * ) hb_parnl( 1 );
   
     NSToolbarItem * item;
   
    [ toolbar insertItemWithItemIdentifier : NSToolbarSeparatorItemIdentifier atIndex : hb_parnl( 2 ) ];
    item = [ [ toolbar items ] objectAtIndex : hb_parnl( 2 ) ];
   
    hb_retnl( ( LONG ) item );
}  

HB_FUNC( TBRADDSPACEFLEX )
{
   
    ToolBar * toolbar = ( ToolBar * ) hb_parnl( 1 );
   
    NSToolbarItem * item;
   
    [ toolbar insertItemWithItemIdentifier : NSToolbarFlexibleSpaceItemIdentifier atIndex : hb_parnl( 2 ) ];
    item = [ [ toolbar items ] objectAtIndex : hb_parnl( 2 ) ];
   
    hb_retnl( ( LONG ) item );
}

HB_FUNC( TBRADDSPACE )
{
   
    ToolBar * toolbar = ( ToolBar * ) hb_parnl( 1 );
   
    NSToolbarItem * item;
   
    [ toolbar insertItemWithItemIdentifier : NSToolbarSpaceItemIdentifier atIndex : hb_parnl( 2 ) ];
    item = [ [ toolbar items ] objectAtIndex : hb_parnl( 2 ) ];
   
    hb_retnl( ( LONG ) item );
}
 
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: Mas funciones para la toolbar

Postby mastintin » Mon Aug 23, 2010 4:12 pm

Ampliación del tema con unas cuantas funciones mas :

En toolbtn.prg :
Code: Select all  Expand view

 METHOD Disable() INLINE TbrItemDisable( ::hWnd )
   METHOD Enable() INLINE TbrItemEnable( ::hWnd )  
   METHOD ChangeLabel( cPrompt )
   METHOD ChangeTooltip( cTooltip )


METHOD ChangeLabel( cPrompt ) CLASS TToolBarBtn
    ::cPrompt :=  cPrompt
    TbrChangeItemLabel(::hWnd,cPrompt )
return nil


METHOD ChangeTooltip( cTooltip ) CLASS TToolBarBtn
    ::cTooltip :=  cToolTip
    TbrChangeItemTooltip(::hWnd,cTooltip )
return nil

 


en toolbar.prg

Code: Select all  Expand view

 METHOD GetItem(nAt) INLINE ::aButtons[nAt]
 


en toolbar.m
Code: Select all  Expand view


HB_FUNC( TBRCHANGEITEMLABEL )
{
    NSToolbarItem * item =( NSToolbarItem  * ) hb_parnl( 1 );   
    NSString * label = [ [ [ NSString alloc ] initWithCString: ISCHAR( 2 ) ? hb_parc( 2 ) : "" ] autorelease ];
    [ item setLabel : label ];
}  

HB_FUNC( TBRCHANGEITEMTOOLTIP )
{
    NSToolbarItem * item =( NSToolbarItem  * ) hb_parnl( 1 );   
    NSString * cToolTip = [ [ [ NSString alloc ] initWithCString: ISCHAR( 2 ) ? hb_parc( 2 ) : "" ] autorelease ];
    [ item setToolTip : cToolTip ];
}  

HB_FUNC( TBRITEMDISABLE )
{
    NSToolbarItem * item =( NSToolbarItem  * ) hb_parnl( 1 );
     [  item setEnabled : NO ]
}  

HB_FUNC( TBRITEMENABLE )
{
        NSToolbarItem * item =( NSToolbarItem  * ) hb_parnl( 1 );
        [  item setEnabled : YES ]
}  

 
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: Mas funciones para la toolbar

Postby Antonio Linares » Mon Aug 23, 2010 5:32 pm

Manuel,

Gracias! :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41291
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveMac / FivePhone (iPhone, iPad)

Who is online

Users browsing this forum: No registered users and 4 guests