How to change toolbar's bitmaps in rpreview?

Post Reply
User avatar
richard-service
Posts: 807
Joined: Tue Oct 16, 2007 8:57 am
Location: New Taipei City, Taiwan
Has thanked: 1 time
Contact:

How to change toolbar's bitmaps in rpreview?

Post by richard-service »

HI
I want to change bitmaps when preview report toolbar.
I look rpreview.prg not include prev32.dll, so how to change bitmaps and add in my preview.
Best Regards,

Richard

Harbour 3.2.0dev (r2402101027) => Borland C++ v7.7 32bit
MySQL v8.0 /ADS v10
Harbour 3.2.0dev (r2011030937) => Borland C++ v7.4 64bit
User avatar
Antonio Linares
Site Admin
Posts: 42521
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 31 times
Been thanked: 76 times
Contact:

Re: How to change toolbar's bitmaps in rpreview?

Post by Antonio Linares »

Richard,

You have to review and modify FWH function FWBitmap()
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
richard-service
Posts: 807
Joined: Tue Oct 16, 2007 8:57 am
Location: New Taipei City, Taiwan
Has thanked: 1 time
Contact:

Re: How to change toolbar's bitmaps in rpreview?

Post by richard-service »

Antonio Linares wrote:Richard,

You have to review and modify FWH function FWBitmap()


Yes, I found Bitmaps.c source code. How to Bmp convert to these code?
Best Regards,

Richard

Harbour 3.2.0dev (r2402101027) => Borland C++ v7.7 32bit
MySQL v8.0 /ADS v10
Harbour 3.2.0dev (r2011030937) => Borland C++ v7.4 64bit
User avatar
cnavarro
Posts: 6557
Joined: Wed Feb 15, 2012 8:25 pm
Location: España
Been thanked: 3 times

Re: How to change toolbar's bitmaps in rpreview?

Post by cnavarro »

Look samples folder

Bmptohex.prg and Bmptoc.prg
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
nageswaragunupudi
Posts: 10721
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Been thanked: 8 times
Contact:

Re: How to change toolbar's bitmaps in rpreview?

Post by nageswaragunupudi »

You can use the function

Code: Select all | Expand


RPrevUsrBtns( bUserBtns, nBarStyle, aSize )
 

to customize most (not fully) the buttonbar of preview. You can have your own buttons, replace some bitmaps, have your own style and size of the bar. Even you can have your Chinese prompts for the buttons.

Actually this is the purpose of this function. Once you set this at the beginning of your project, all your previews through out your application will have this look.

This is only an example of how to do. You can use this as a sample and customize to your requirements.

Code: Select all | Expand

#include "fivewin.ch"

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

function Main()

   local oPrn, oFont
   local nOldClr

   FW_SetUnicode( .t. )

   RPrevUserBtns( { |oPreview, oBar| MyPreviewBar( oPreview, oBar ) }, 2007, { 64,64 } )
   TPreview():lListViewHide := .t.

   PRINT oPrn PREVIEW
   DEFINE FONT oFont NAME "ARIAL" SIZE 0,-30 BOLD OF oPrn

   PAGE
      nOldClr  := SetBkColor( oPrn:hDCOut, CLR_BLACK )
      oPrn:Say( 500, 200, "This is Reverse Text", oFont, 5000, CLR_WHITE, 2 )
      SetBkColor( nOldClr )
   ENDPAGE
   ENDPRINT

   RELEASE FONT oFont

return nil

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

function MyPreviewBar( oPreview, oBar )

   local nBtns    := Len( oBar:aControls )


   WITH OBJECT oBar:aControls[ 1 ]
      :SetImages( "\fwh\bitmaps\top.bmp" )
      :cCaption   := "మొదలు"
   END
   WITH OBJECT oBar:aControls[ 2 ]
      :SetImages( "\fwh\bitmaps\prev.bmp" )
      :cCaption   := "ముందు"
   END
   WITH OBJECT oBar:aControls[ 3 ]
      :SetImages( "\fwh\bitmaps\next.bmp" )
      :cCaption   := "పిదప"
   END
   WITH OBJECT oBar:aControls[ 4 ]
      :SetImages( "\fwh\bitmaps\bottom.bmp" )
      :cCaption   := "చివర"
   END


   WITH OBJECT oBar:aControls[ nBtns ]
      :SetImages( "\fwh\bitmaps\print32.bmp" )
      :cCaption   := "ముద్రించు"
   END


   DEFINE BUTTON OF oBar FILE "\fwh\bitmaps\32x32\floppy.bmp" ;
      PROMPT "భద్రము" ACTION MsgInfo( "MySave" )

   DEFINE BUTTON OF oBar FILE "\fwh\bitmaps\sendmail.bmp" ;
      PROMPT "జాబు" ACTION MsgInfo( "MySave" )

return .f.
 


Image
Regards

G. N. Rao.
Hyderabad, India
User avatar
richard-service
Posts: 807
Joined: Tue Oct 16, 2007 8:57 am
Location: New Taipei City, Taiwan
Has thanked: 1 time
Contact:

Re: How to change toolbar's bitmaps in rpreview?

Post by richard-service »

Dear Cristobal Navarro and Mr Rao

Now is working.
Best Regards,

Richard

Harbour 3.2.0dev (r2402101027) => Borland C++ v7.7 32bit
MySQL v8.0 /ADS v10
Harbour 3.2.0dev (r2011030937) => Borland C++ v7.4 64bit
User avatar
richard-service
Posts: 807
Joined: Tue Oct 16, 2007 8:57 am
Location: New Taipei City, Taiwan
Has thanked: 1 time
Contact:

Re: How to change toolbar's bitmaps in rpreview?

Post by richard-service »

nageswaragunupudi wrote:You can use the function

Code: Select all | Expand


RPrevUsrBtns( bUserBtns, nBarStyle, aSize )
 

to customize most (not fully) the buttonbar of preview. You can have your own buttons, replace some bitmaps, have your own style and size of the bar. Even you can have your Chinese prompts for the buttons.

Actually this is the purpose of this function. Once you set this at the beginning of your project, all your previews through out your application will have this look.

This is only an example of how to do. You can use this as a sample and customize to your requirements.

Code: Select all | Expand

#include "fivewin.ch"

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

function Main()

   local oPrn, oFont
   local nOldClr

   FW_SetUnicode( .t. )

   RPrevUserBtns( { |oPreview, oBar| MyPreviewBar( oPreview, oBar ) }, 2007, { 64,64 } )
   TPreview():lListViewHide := .t.

   PRINT oPrn PREVIEW
   DEFINE FONT oFont NAME "ARIAL" SIZE 0,-30 BOLD OF oPrn

   PAGE
      nOldClr  := SetBkColor( oPrn:hDCOut, CLR_BLACK )
      oPrn:Say( 500, 200, "This is Reverse Text", oFont, 5000, CLR_WHITE, 2 )
      SetBkColor( nOldClr )
   ENDPAGE
   ENDPRINT

   RELEASE FONT oFont

return nil

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

function MyPreviewBar( oPreview, oBar )

   local nBtns    := Len( oBar:aControls )


   WITH OBJECT oBar:aControls[ 1 ]
      :SetImages( "\fwh\bitmaps\top.bmp" )
      :cCaption   := "మొదలు"
   END
   WITH OBJECT oBar:aControls[ 2 ]
      :SetImages( "\fwh\bitmaps\prev.bmp" )
      :cCaption   := "ముందు"
   END
   WITH OBJECT oBar:aControls[ 3 ]
      :SetImages( "\fwh\bitmaps\next.bmp" )
      :cCaption   := "పిదప"
   END
   WITH OBJECT oBar:aControls[ 4 ]
      :SetImages( "\fwh\bitmaps\bottom.bmp" )
      :cCaption   := "చివర"
   END


   WITH OBJECT oBar:aControls[ nBtns ]
      :SetImages( "\fwh\bitmaps\print32.bmp" )
      :cCaption   := "ముద్రించు"
   END


   DEFINE BUTTON OF oBar FILE "\fwh\bitmaps\32x32\floppy.bmp" ;
      PROMPT "భద్రము" ACTION MsgInfo( "MySave" )

   DEFINE BUTTON OF oBar FILE "\fwh\bitmaps\sendmail.bmp" ;
      PROMPT "జాబు" ACTION MsgInfo( "MySave" )

return .f.
 


Image


Hi Mr.Rao
I want to change all bitmaps in ToolBar, but appear error "BASE/1132 Bound error: array access"

Code: Select all | Expand


WITH OBJECT oBar:aControls[ 1 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\DB-First.bmp" )
//         :cCaption := "第一頁"
      END
      WITH OBJECT oBar:aControls[ 2 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\DB-PREV.bmp" )
//         :cCaption := "上一頁"
      END
      WITH OBJECT oBar:aControls[ 3 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\DB-NEXT.bmp" )
//         :cCaption := "下一頁"
      END
      WITH OBJECT oBar:aControls[ 4 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\DB-LAST.bmp" )
//         :cCaption := "最後一頁"
      END
      WITH OBJECT oBar:aControls[ 5 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\Zoom.bmp" )
//         :cCaption := "放大"
      END
      WITH OBJECT oBar:aControls[ 6 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\TwoPages.bmp" )
//         :cCaption := "兩頁"
      END
      WITH OBJECT oBar:aControls[ 7 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\Printer.bmp" )
//         :cCaption := "列印"
      END
      WITH OBJECT oBar:aControls[ 8 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\Save.bmp" )
//         :cCaption := "儲存"
      END
      WITH OBJECT oBar:aControls[ 9 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\Export Acrobat.bmp" )
//         :cCaption := "儲存"
      END
      WITH OBJECT oBar:aControls[ 10 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\EMail.bmp" )
//         :cCaption := "儲存"
      END
      WITH OBJECT oBar:aControls[ 11 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\Export Word.bmp" )
//         :cCaption := "儲存"
      END
      WITH OBJECT oBar:aControls[ 12 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\Export Excel.bmp" )
//         :cCaption := "儲存"
      END
      WITH OBJECT oBar:aControls[ 13 ]
         :SetImages( "System\C5Menu\BMP\ToolBar\Exit.bmp" )
//         :cCaption := "儲存"
      END
 
Best Regards,

Richard

Harbour 3.2.0dev (r2402101027) => Borland C++ v7.7 32bit
MySQL v8.0 /ADS v10
Harbour 3.2.0dev (r2011030937) => Borland C++ v7.4 64bit
User avatar
nageswaragunupudi
Posts: 10721
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Been thanked: 8 times
Contact:

Re: How to change toolbar's bitmaps in rpreview?

Post by nageswaragunupudi »

By the time this code is executed only 7 buttons are created. We need to add other buttons and actions ourselves. We take over the control of the entire buttonbar
Regards

G. N. Rao.
Hyderabad, India
Post Reply