EsGRID grid gadget 2.1. Don't post here!

Applications, Games, Tools, User libs and useful stuff coded in PureBasic
gnozal
PureBasic Expert
PureBasic Expert
Posts: 4229
Joined: Sat Apr 26, 2003 8:27 am
Location: Strasbourg / France
Contact:

Post 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).
For free libraries and tools, visit my web site (also home of jaPBe V3 and PureFORM).
srod
PureBasic Expert
PureBasic Expert
Posts: 10589
Joined: Wed Oct 29, 2003 4:35 pm
Location: Beyond the pale...

Post 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! :)
I may look like a mule, but I'm not a complete ass.
User avatar
Thorsten1867
Addict
Addict
Posts: 1372
Joined: Wed Aug 24, 2005 4:02 pm
Location: Germany

Post 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.
Translated with http://www.DeepL.com/Translator

Download of PureBasic - Modules
Download of PureBasic - Programs

[Windows 11 x64] [PB V5.7x]
srod
PureBasic Expert
PureBasic Expert
Posts: 10589
Joined: Wed Oct 29, 2003 4:35 pm
Location: Beyond the pale...

Post 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.

:)
Last edited by srod on Thu Jun 14, 2007 6:18 pm, edited 1 time in total.
I may look like a mule, but I'm not a complete ass.
User avatar
Thorsten1867
Addict
Addict
Posts: 1372
Joined: Wed Aug 24, 2005 4:02 pm
Location: Germany

Post by Thorsten1867 »

A little problem:
The page cannot be found
Translated with http://www.DeepL.com/Translator

Download of PureBasic - Modules
Download of PureBasic - Programs

[Windows 11 x64] [PB V5.7x]
srod
PureBasic Expert
PureBasic Expert
Posts: 10589
Joined: Wed Oct 29, 2003 4:35 pm
Location: Beyond the pale...

Post 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:
I may look like a mule, but I'm not a complete ass.
User avatar
ts-soft
Always Here
Always Here
Posts: 5756
Joined: Thu Jun 24, 2004 2:44 pm
Location: Berlin - Germany

Post by ts-soft »

>> The page cannot be found
I have found, but no time found to install.
One useless action spared :lol:
PureBasic 5.73 | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.
Image
User avatar
DoubleDutch
Addict
Addict
Posts: 3220
Joined: Thu Aug 07, 2003 7:01 pm
Location: United Kingdom
Contact:

Post by DoubleDutch »

Same here.... (the 4.1 version)
https://deluxepixel.com <- My Business website
https://reportcomplete.com <- School end of term reports system
srod
PureBasic Expert
PureBasic Expert
Posts: 10589
Joined: Wed Oct 29, 2003 4:35 pm
Location: Beyond the pale...

Post 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.

:)
Last edited by srod on Thu Jun 14, 2007 6:18 pm, edited 1 time in total.
I may look like a mule, but I'm not a complete ass.
rsts
Addict
Addict
Posts: 2736
Joined: Wed Aug 24, 2005 8:39 am
Location: Southwest OH - USA

Post by rsts »

srod wrote:
Maintenance update - 24th June 2007.

Ten days from now? :)
srod
PureBasic Expert
PureBasic Expert
Posts: 10589
Joined: Wed Oct 29, 2003 4:35 pm
Location: Beyond the pale...

Post by srod »

Doh! :)
I may look like a mule, but I'm not a complete ass.
User avatar
Thorsten1867
Addict
Addict
Posts: 1372
Joined: Wed Aug 24, 2005 4:02 pm
Location: Germany

Post by Thorsten1867 »

srod wrote:.... no code should break as a result.
:D :wink: :D
Translated with http://www.DeepL.com/Translator

Download of PureBasic - Modules
Download of PureBasic - Programs

[Windows 11 x64] [PB V5.7x]
srod
PureBasic Expert
PureBasic Expert
Posts: 10589
Joined: Wed Oct 29, 2003 4:35 pm
Location: Beyond the pale...

Post 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.
I may look like a mule, but I'm not a complete ass.
User avatar
Thorsten1867
Addict
Addict
Posts: 1372
Joined: Wed Aug 24, 2005 4:02 pm
Location: Germany

Post 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
Translated with http://www.DeepL.com/Translator

Download of PureBasic - Modules
Download of PureBasic - Programs

[Windows 11 x64] [PB V5.7x]
srod
PureBasic Expert
PureBasic Expert
Posts: 10589
Joined: Wed Oct 29, 2003 4:35 pm
Location: Beyond the pale...

Post 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...
I may look like a mule, but I'm not a complete ass.
Post Reply