eGUI alpha release

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

eGUI alpha release

2,353 Views
Gargy
NXP Employee
NXP Employee

Hi eGUI fans,

we are still so far to make any official release of new version of eGUI so I decide to put here the latest version of eGUI.

The source code is "as is" and only Kinetis demos are included.

 

The biggest change is that the bitmap drawing structure has been little bit changed to support external bitmaps.

The attached file is renamed exe file.

 

Just enjoy

 

Gargy

0 Kudos
Reply
9 Replies

1,520 Views
Thommi_Tulpe
Contributor IV

Hello Gargy,

thank you for the new release.

I changed my old D4D folder with the new one.

I have a project with the eGUI and the flash driver C90TFS.

When I compile my project I got a error message:

marcro ''READ8' redefind in SSD_FTFL.h.

What do I have to do to use the new version of the eGUI?

I only changed the D4D folder.

 

Best Regards

Thomas

 

0 Kudos
Reply

1,520 Views
Gargy
NXP Employee
NXP Employee

Hi Thommi,

 thank you for valable feedback, you absotelly right that there is possible bug. So I renamed all macros in external support by add prefix D4D_.

 

So this is the reason why I put this version here :smileywink: .

 

Take a modified version

0 Kudos
Reply

1,520 Views
madifazio
Contributor III

Hi Gargy

 

I note in this release, that disabled buttons not show their bitmaps in greyscale.

I modified the following function to acomplish that

 

static void D4D_BtnOnDraw(D4D_MESSAGE* pMsg)

 

i add the following local variable

D4D_BOOL greyScale = (D4D_BOOL)(!pMsg->pObject->flags->bits.bEnabled);

 

and in section when bitmap is drawing i have this code (D4D_ROUND_CORNER_ENABLE == D4D_FALSE)

// Draw the bitmapif(pBmp != NULL){   #if (D4D_ROUND_CORNER_ENABLE != D4D_FALSE) //if Round corners     D4D_DrawRBmpRect(&_calc.ButPos,&_calc.ButSize, pBmp, bmpProp, clrB,0, pBtn->radius);   #else     D4D_DrawBmpRect(&_calc.ButPos,&_calc.ButSize, pBmp, bmpProp, clrB,greyScale);  #endif  pBtn->textBuff.str_properties->font_properties.bits.bTransparent = D4D_TRUE;}

 

Now i have greyscale buttons when they are disabled. 

Not want to not lose this behavior when i replace my D4D folder in next release.

 

Regards

 

0 Kudos
Reply

1,520 Views
Gargy
NXP Employee
NXP Employee

Thank you for your feedback about this bug. I remove it also in main version.

This issue was create during adding of 3D button functionality, we completelly change button drawing function.

 

The final fix is:

#if (D4D_ROUND_CORNER_ENABLE != D4D_FALSE) //if Round corners        D4D_DrawRBmpRect(&_calc.ButPos,&_calc.ButSize, pBmp, bmpProp, clrB, (D4D_BOOL)(!pMsg->pObject->flags->bits.bEnabled), pBtn->radius);        #else        D4D_DrawBmpRect(&_calc.ButPos,&_calc.ButSize, pBmp, bmpProp, clrB, (D4D_BOOL)(!pMsg->pObject->flags->bits.bEnabled));    #endif

 Have a nice day

0 Kudos
Reply

1,520 Views
madifazio
Contributor III

HI Gargy

 

Thanks for this release, im very happy loading bitmaps from SD.

 

I want to comment one thing. In each screen i have a logo. I found a poor performance when the logo is loaded from SD. Each time the EGUI needs to calculate the Screen Header Size, the file is opened.

 

Regards

 

0 Kudos
Reply

1,520 Views
Gargy
NXP Employee
NXP Employee

Hi,

 you right but this is the taxation for flexibility of use :smileysad:.

 

0 Kudos
Reply

1,520 Views
madifazio
Contributor III

Hi Gargy


Gargy wrote:

the taxation for flexibility of use :smileysad:. 



I guessed
As a rule, I decided to embed simple images in code, and upload  from SD the complex images.

 

Thanks again for the release. Is very useful for me.

Regards



0 Kudos
Reply

1,520 Views
Thommi_Tulpe
Contributor IV

Thank You Gargy,

the new version works.

I see you have changed the console.h

static D4D_CNSL_DATA name##_data = { /*line_cnt - 1*/ 0, {0, 0}, D4D_FALSE, 0, 0};

So that the firs line is not written at the end of the array.

I still have a problem with the cursor.

https://community.freescale.com/message/95850#95850

 

When I put the cursor to a special position with

the command

cursor_position.x = 1;
cursor_position.y = 2;
(void) D4D_CnslGoToXY(&scrMain_Cons, cursor_position);

 

The cursor is displayed at the last position of the correct line.

 

After that I insert a character with the command:

(void)D4D_CnslPutString(&scrMain_Cons, "X");

The "X" is on position  1 in line 2, but the cursor is showen at the end of the line.

 

 

I have also a by changing the screen. I have buttons in the screens.

 

 

// Button in the screen register

static void ScrRegister_OnClickBtnConsole (D4D_OBJECT* pThis)

{
  
    D4D_ActivateScreen(&screen_main, D4D_FALSE);
    D4D_RedrawScreen(&screen_main);
 
}

 

// Button in the screen main

static void ScrMain_OnClickBtnMonitor(D4D_OBJECT* pThis)
{
   
    D4D_ActivateScreen(&screen_register, D4D_FALSE);
}

 

I want to change the showen screens from main screen to register screen and back.

This only works two times. After that the buttons are inactive.

Have you got any idea ?

 

 

 

 

Hop you can help

Thomas

 

0 Kudos
Reply

1,520 Views
Thommi_Tulpe
Contributor IV

Hello Gargy,

I solved the prblem with the buttons.:smileyhappy:

 

Thomas

0 Kudos
Reply