Page 5 of 23

Posted: Fri Jun 01, 2007 2:03 pm
by gnozal
Thanks.

Note that the installer displays version 1.3 in the titlebar :wink:
And still crashes under NT4 at the end of the setup [when you exit the installer] (but files are installed correctly).

Posted: Fri Jun 01, 2007 10:23 pm
by srod
gnozal wrote:Thanks.

Note that the installer displays version 1.3 in the titlebar :wink:
And still crashes under NT4 at the end of the setup [when you exit the installer] (but files are installed correctly).
Still crashes! I wasn't aware that the installer crashed! That's one for Thorsten and EasySetup I reckon! :)

Posted: Mon Jun 04, 2007 11:01 am
by Thorsten1867
gnozal wrote:... still crashes under NT4 at the end of the setup [when you exit the installer] (but files are installed correctly).
Sorry, I'm not able to test EasySetup under Win NT. With WinXP or Win2000 it seems to work correctly.

Posted: Thu Jun 14, 2007 2:25 pm
by srod
Maintenance update - 14th June 2007.

Have altered the internals quite substantially to create a completely threadsafe library. Earlier versions (including the current Purebasic static versions for PB 4.02) were/are not entirely threadsafe (even with the PB threadsafe compiler switch!)

The changes also mean that applications using multiple egrids simultaneously will be more stable than has been the case in the past. Previous versions of the lib could have seen, under some rare circumstances, data corruption due to one egrid's data structures overlapping with another's. This would only have affected one application in a thousand, but better safe than sorry!

Other than this, no other changes have been made and no code should break as a result.

Only upgrade if you are using the dll versions or the static library versions for Purebasic 4.1.

:)

Posted: Thu Jun 14, 2007 4:33 pm
by Thorsten1867
A little problem:
The page cannot be found

Posted: Thu Jun 14, 2007 5:01 pm
by srod
Thorsten1867 wrote:A little problem:
The page cannot be found
More of a major problem really! :)

Found a bug and so removed the download links whilst I worked on the fix.

Fix is now complete, but now have to rebuild all the libs! :roll:

Posted: Thu Jun 14, 2007 5:09 pm
by ts-soft
>> The page cannot be found
I have found, but no time found to install.
One useless action spared :lol:

Posted: Thu Jun 14, 2007 5:15 pm
by DoubleDutch
Same here.... (the 4.1 version)

Posted: Thu Jun 14, 2007 5:53 pm
by srod
Bug fixed and the download links are operational again.

I'll repeat the post above for those who haven't seen it yet:


Maintenance update - 14th June 2007.

Have altered the internals quite substantially to create a completely threadsafe library. Earlier versions (including the current Purebasic static versions for PB 4.02) were/are not entirely threadsafe (even with the PB threadsafe compiler switch!)

The changes also mean that applications using multiple egrids simultaneously will be more stable than has been the case in the past. Previous versions of the lib could have seen, under some rare circumstances, data corruption due to one egrid's data structures overlapping with another's. This would only have affected one application in a thousand, but better safe than sorry!

Other than this, no other changes have been made and no code should break as a result.

Only upgrade if you are using the dll versions or the static library versions for Purebasic 4.1.

:)

Posted: Thu Jun 14, 2007 6:16 pm
by rsts
srod wrote:
Maintenance update - 24th June 2007.

Ten days from now? :)

Posted: Thu Jun 14, 2007 6:19 pm
by srod
Doh! :)

Posted: Thu Jun 14, 2007 6:59 pm
by Thorsten1867
srod wrote:.... no code should break as a result.
:D :wink: :D

Posted: Thu Jun 21, 2007 11:15 am
by srod
Update : 21st June 2007.

egrid 5 version 1.06.

Bug fixed. Applications using listicons alongside egrids would likely crash spectacularly!

Only a minor problem of course! :)

Doh!

Version 1.06 of egrid 5 for Purebasic 4.1 fixes the bug.

Posted: Thu Jul 05, 2007 6:36 pm
by Thorsten1867
Help! The first Egrid no longer update the cells (PB 4.10B2):

Code: Select all

#Gadget_VorgabenSL_L_Pflicht = 1
#Gadget_VorgabenSL_L_AnzahlPU = 2
#Gadget_VorgabenSL_F_KlassePU = 3

Procedure.l eGrid_VorgabeFach(egrid, uMsg, *cellinfo.egridCellInfo)
  Protected result
  Select uMsg
    Case #egrid_CellUpdated ;{ 
      Debug *cellinfo\text
      result = #True ;}
    Case #egrid_SelectCell ;{
      RedrawWindow_(GadgetID(egrid), 0, 0, #RDW_INTERNALPAINT|#RDW_ERASE|#RDW_INVALIDATE)
      result = #True
      If *cellinfo\param = #egrid_LeftClick
        egridID = egrid
        egrid_HideEdit(egrid) ;Hides the selection border. 
        egrid_SelectCell(egrid, *cellinfo\column, *cellinfo\Row, #True) ;Selects the cell in 'edit mode'. 
        result = #False ; No point getting the Egrid to select the cell as well.
      EndIf 
      ;}
    Case #egrid_FormatCell ;{
      If *cellinfo\Row = egrid_SelectedRow(egrid)
        *cellinfo\backcolour = RGB($F0,$F0,$FF)
      EndIf
      Select *cellinfo\column
        Case 0
          *cellinfo\forecolour = RGB(0,64,128)  ; dunkelblauer Text
        Case 1
          *cellinfo\textjustification = #egrid_CenterText
      EndSelect
      ;}
    Case #egrid_LosingFocus ;{ Kein Focus mehr
      result=#True
      RedrawWindow_(GadgetID(egrid), 0, 0, #RDW_INTERNALPAINT|#RDW_ERASE|#RDW_INVALIDATE)
      ;}
    Default 
      result = #True
  EndSelect
  ProcedureReturn result
EndProcedure

Procedure.l eGrid_VorgabeAnzahl(egrid, uMsg, *cellinfo.egridCellInfo)
  Protected result
  Select uMsg
    Case #egrid_CellUpdated ;{ 
      result = #True ;}
    Case #egrid_SelectCell ;{ 
      RedrawWindow_(GadgetID(egrid), 0, 0, #RDW_INTERNALPAINT|#RDW_ERASE|#RDW_INVALIDATE)
      result = #True
      If *cellinfo\param = #egrid_LeftClick
        egridID = egrid
        egrid_HideEdit(egrid) ;Hides the selection border. 
        egrid_SelectCell(egrid, *cellinfo\column, *cellinfo\Row, #True) ;Selects the cell in 'edit mode'. 
        result=#False ;No point getting the Egrid to select the cell as well.
      EndIf
      ;}
    Case #egrid_FormatCell ;{ 
      If *cellinfo\Row = egrid_SelectedRow(egrid)
        *cellinfo\backcolour = RGB($F0,$F0,$FF)
      EndIf
      Select *cellinfo\column
        Case 0
          *cellinfo\forecolour = RGB(0,64,128)  ; dunkelblauer Text
      EndSelect
      ;}
    Case #egrid_LosingFocus ;{ Kein Focus mehr
      result=#True
      RedrawWindow_(GadgetID(egrid), 0, 0, #RDW_INTERNALPAINT|#RDW_ERASE|#RDW_INVALIDATE)
      ;}
    Default 
      result = #True
  EndSelect
  ProcedureReturn result
EndProcedure


If OpenWindow(0,211,132,425,390,"Test eGrid",#PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))
  
  egrid_CreateGrid(#Gadget_VorgabenSL_L_Pflicht,10,10,215,305,19, #egrid_GridLines|#egrid_AlwaysShowSelection, #egrid_ResizeColumnsFalse)
  egrid_CreateCellCallback(#Gadget_VorgabenSL_L_Pflicht, @eGrid_VorgabeFach()) ; Callback für Grid
  egrid_SetHeaderHeight(#Gadget_VorgabenSL_L_Pflicht, 21)
  egrid_SetOption(#Gadget_VorgabenSL_L_Pflicht, #egrid_SelectionBorderColour, RGB(0,64,128))
  egrid_AddColumn(#Gadget_VorgabenSL_L_Pflicht, 0, "Fach", 150)
  egrid_AddColumn(#Gadget_VorgabenSL_L_Pflicht, 1, "Abk.", 60)
  egrid_AddColumn(#Gadget_VorgabenSL_L_Pflicht, 2, "Anz.", 0)
  
  egrid_CreateGrid(#Gadget_VorgabenSL_L_AnzahlPU,245,30,135,250,19, #egrid_GridLines|#egrid_AlwaysShowSelection, #egrid_ResizeColumnsFalse)
  egrid_CreateCellCallback(#Gadget_VorgabenSL_L_AnzahlPU, @eGrid_VorgabeAnzahl()) ; Callback für Grid
  egrid_SetHeaderHeight(#Gadget_VorgabenSL_L_AnzahlPU, 21)
  egrid_SetOption(#Gadget_VorgabenSL_L_AnzahlPU, #egrid_SelectionBorderColour, RGB(0,64,128))
  egrid_AddColumn(#Gadget_VorgabenSL_L_AnzahlPU, 0, "Bezeich.", 60)
  egrid_AddColumn(#Gadget_VorgabenSL_L_AnzahlPU, 1, "Schülerzahl", 70)
  
  Frame3DGadget(#Gadget_VorgabenSL_F_KlassePU,235,10,155,305,"Klasse / Gruppe")

  egrid_AddRows(#Gadget_VorgabenSL_L_Pflicht,-1, 5)
  egrid_AddRows(#Gadget_VorgabenSL_L_AnzahlPU,-1, 5)
  
  Repeat
    EventID = WaitWindowEvent()
    Select EventID
      Case #PB_Event_Gadget
    EndSelect
  Until EventID = #PB_Event_CloseWindow
EndIf
End

Posted: Thu Jul 05, 2007 8:36 pm
by srod
What the *@@@*&"^^"^ hell!

:)

That's a serious looking bug!


There's only one thing which can be causing that. Back in a mo...