[Linux] PB 5.42 LTS ExplorerListGadget & SetGadgetAttribute

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
Benutzeravatar
Makke
Beiträge: 156
Registriert: 24.08.2011 18:00
Computerausstattung: AMD Ryzen 7 5700X - AMD Radeon RX 6800 XT - 32 GB DDR4 SDRAM
Wohnort: Ruhrpott
Kontaktdaten:

[Linux] PB 5.42 LTS ExplorerListGadget & SetGadgetAttribute

Beitrag von Makke »

Fehler:

Die Funktion "SetGadgetAttribute" funktioniert unter Linux mit einem "ExplorerListGadget" nicht (siehe Beispiel).

Beispielcode:

Code: Alles auswählen

If OpenWindow(0, 0, 0, 1000, 800, "PBFM", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget )
  
  If ContainerGadget(0, 0, 0, 300, 800)
    
    ExplorerListGadget(2, 5, 5, GadgetWidth(0) - 10, GadgetHeight(0) - 10, "",  #PB_Explorer_AlwaysShowSelection | 
                                                                                #PB_Explorer_NoFiles |
                                                                                #PB_Explorer_NoFolders |
                                                                                #PB_Explorer_NoParentFolder |
                                                                                #PB_Explorer_NoDirectoryChange |
                                                                                #PB_Explorer_NoDriveRequester |
                                                                                #PB_Explorer_NoSort |
                                                                                #PB_Explorer_AutoSort )
    CloseGadgetList()
    SetGadgetAttribute(2, #PB_Explorer_DisplayMode, #PB_Explorer_SmallIcon)
    
  EndIf
  
  If ContainerGadget(1, 0, 0, 700, 800)
    
    ExplorerListGadget(3, 5, 5, GadgetWidth(1) - 10, GadgetHeight(1) - 10, "", #PB_Explorer_AlwaysShowSelection | 
                                                                               #PB_Explorer_NoParentFolder |
                                                                               #PB_Explorer_AutoSort)
    SetGadgetAttribute(3, #PB_Explorer_DisplayMode, #PB_Explorer_LargeIcon)
    CloseGadgetList()
    
  EndIf
  
  SplitterGadget(4, 0, 0, WindowWidth(0), WindowHeight(0), 0, 1, #PB_Splitter_Vertical | #PB_Splitter_Separator)
  
EndIf


Repeat
  
  windowEvt.i = WaitWindowEvent()
  
Until windowEvt = #PB_Event_CloseWindow

End

Code: Alles auswählen

    PB-Version: PureBasic 5.42 LTS (Linux - x64)
    OS: Xubuntu 16.04 64 Bit
    Compilereinstellungen:
        [x] Unicode-Executable erstellen
        [ ] Thread-sicheres Executable erstellen
        [ ] OnError-Unterstützung einschalten
        [x] Moderne Themen-Unterstützung aktivieren (für Windows XP und höher)
        [ ] Administrator-Modus für Windows Vista und höher anfordern
        [ ] User-Modus für Windows Vista und höher anfordern (keine Virtualisierung)
        Library Subsystem: keines oder gtk2
---
Windows 11 (64 bit)
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8675
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: [Linux] PB 5.42 LTS ExplorerListGadget & SetGadgetAttrib

Beitrag von NicTheQuick »

Bei mir funktioniert nicht mal das SplitterGadget wie es soll...
Bild
Benutzeravatar
Shardik
Beiträge: 738
Registriert: 25.01.2005 12:19

Re: [Linux] PB 5.42 LTS ExplorerListGadget & SetGadgetAttrib

Beitrag von Shardik »

Makke hat geschrieben:Fehler:

Die Funktion "SetGadgetAttribute" funktioniert unter Linux mit einem "ExplorerListGadget" nicht (siehe Beispiel).
Hierbei handelt es sich lediglich um eine fehlende Information in der Linux-Hilfe für die SetGadgetAttribute-Funktion beim ExplorerListGadget, denn diese Funktion ist nur in der Windows-Version von PB implementiert (das zu Grunde liegende GTK-API von Linux und das Cocoa-Framework API von MacOS X bieten diese Möglichkeit nicht, sodass eine Implementierung für Linux und MacOS X sehr aufwändig wäre!).

In der Linux-Hilfe für die SetGadgetAttribute-Funktion beim eng verwandten ListIconGadget ist dies korrekt angemerkt:
Linux PB-Hilfe für SetGadgetAttribute beim ListIconGadget hat geschrieben:- GetGadgetAttribute() / SetGadgetAttribute(): Mit den folgenden Attributen:
#PB_ListIcon_DisplayMode : Ermittelt bzw. ändert den Anzeigemodus des Gadgets. Kann eine der folgenden Konstanten sein (nur auf Windows):
#PB_ListIcon_LargeIcon : großer Icon-Modus
#PB_ListIcon_SmallIcon : kleiner Icon-Modus
#PB_ListIcon_List : Listen-Icon-Modus
#PB_ListIcon_Report : Report-Modus (Spalten, Standardmodus)
Antworten