Seite 2 von 5

Re: Ribbon Menü

Verfasst: 16.03.2021 19:52
von mk-soft
Und einen dicken Hinweis auf "#PB_EventType_FirstCustomValue", da auch in anderen Module dieser verwendet sein könnte und eventuell angepasst werden muss!

Re: Ribbon Menü

Verfasst: 16.03.2021 20:24
von jacdelad
Ah verstehe. Fred denkt an alles, aber da fehlt eine Funktion, dass man den FirstCustomValue-Wert für andere Module automatisch anheben lassen kann.

Re: Ribbon Menü

Verfasst: 16.03.2021 20:41
von STARGÅTE
Ja das stimmt, es war auch schon im Gespräch, diese #PB_Event_FirstCustomValue Konstante ähnlich wie MacroExpandedCount arbeiten zu lassen, die sich ja mit jedem Aufruf erhöht.
Das Problem bleibt aber bestehen, wenn "kreuz und quer" seine eigenen Event-Konstanten setzt, wie sollen sich die Module da "absprechen".

Abhilfe:
Da du ja für dein Ribbon eh ein echtes Gadget benutzt, könnte man auch normal das #PB_Event_Gadget nutzen und dann bei besonderen Event lieber mit dem Custom EventType und #PB_EventType_FirstCustomValue arbeiten.
Da das Gadget ja "dir gehört" wird da auch kein anderes Modul reinfuchteln und wenn sich #PB_EventType Konstanten überschneiden, die aber gar nicht im selben "Arbeitsbereich" angesprochen werden, ist das ja wurscht.

Re: Ribbon Menü

Verfasst: 16.03.2021 20:51
von jacdelad
Ja, das leuchtet ein. Irgendwie. Die Umsetzung mit normalen Events und EventTypes mache ich noch, aber das dauert bei mir etwas länger.

Re: Ribbon Menü

Verfasst: 16.03.2021 23:19
von ts-soft
Hier meine Lösung: An den Anfang des Codes:

Code: Alles auswählen

CompilerIf Defined(CommonConstants, #PB_Module) = 0
  DeclareModule CommonConstants
    ; Form
    Enumeration FormWindow
    EndEnumeration
    Enumeration FormGadget
    EndEnumeration
    Enumeration FormMenu
    EndEnumeration
    Enumeration FormImage
    EndEnumeration
    Enumeration FormFont
    EndEnumeration
    ; Event
    Enumeration EventCustom #PB_Event_FirstCustomValue
    EndEnumeration
    Enumeration EventTypeCustom #PB_EventType_FirstCustomValue
    EndEnumeration
  EndDeclareModule
  
  Module CommonConstants
  EndModule
CompilerEndIf

UseModule CommonConstants

Re: Ribbon Menü

Verfasst: 17.03.2021 14:31
von mk-soft
@ts-soft

das Thema hatten wird schon :wink:
das geht gut, für eigene Projekte. Damit es auch für Fremd Projekte funktioniert, müsten sich alle daran halten.
Tut nur keiner ...

Re: Ribbon Menü

Verfasst: 17.03.2021 17:08
von HeX0R
Ich bekomme das Projekt irgendwie von hier nicht heruntergeladen, aber müssen denn da tatsächlich Events innerhalb des Moduls verschickt werden?
Also ich mache das i.d.R. so, dass im Hauptcode die Events definiert werden (da ist ja üblicherweise auch die Eventschleife), und beim Erstellen des Gadgets (über das Modul), werden diese Events dort einfach mit übergeben.

Re: Ribbon Menü

Verfasst: 17.03.2021 17:21
von jacdelad
Hab's gerade probiert, der Download geht. Sonst vielleicht mal den Link abtippen, in einem anderen Browser hatte ich auch Probleme.

Ich hatte auch schon überlegt vielleicht mittels eines Initialisierungsbefehls dem Benutzer freie Hand zu geben ab wo die definierten Events gesendet werden.

Re: Ribbon Menü

Verfasst: 17.03.2021 18:00
von HeX0R
Ja, sorry, ich wollte damit nicht sagen, dass Dein Link nicht funktioniert, mit "hier" meinte ich aus dem Firmennetz heraus.

Re: Ribbon Menü

Verfasst: 17.03.2021 19:41
von jacdelad
Ach so. Hm, da hilft nur kündigen und neuen Job suchen.