Seite 12 von 16

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 29.06.2013 08:16
von Derren
ts-soft hat geschrieben:ein DisableExplicit am Ende behebt diese Einschränkung nicht, sondern führt eine Änderung bei denjenigen aus, die EnableExplicit nutzen möchten.
Hä?

Code: Alles auswählen

EnableExplicit
;Include
DisableExplicit

Code: Alles auswählen

IncludeFile "include.pbi"
EnableExplicit
;Rest
Wo ist das Problem? Wer EnableExplicit nutzen möchte, muss es so oder so an den Anfang seines Codes stellen, ob er jetzt
eine Include benutzt oder nicht.

@Stargate, ja gut, aber meistens wird doch ein Lib-Präfix benutzt. zB. PBOSL_CreateWhatEver(). Das meinte ich. Da ändert sich ja nicht viel wenn es in Zukunft heißt: PBOSL::CreateWhatEVer()^^

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 29.06.2013 10:27
von RSBasic
Lass es wie es ist. Deine Include-Datei funktioniert und ich finde eine Umstrukturierung nicht so sinnvoll, weil jeder User, der deine Include-Datei bereits verwendet, alles anpassen muss (wegen Umbenennung) und nicht jeder hat Bock drauf.

Ansonsten wären Module in zukünftigen Projekten sehr angebracht, selbstverständlich auch in Includes.

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 29.06.2013 13:34
von computerfreak
Hallo,
ich finde es hat alles Vor- und Nachteile.
Module finde ich gerade in Includes sinnvoll.
klar - bei dem Tabbar ist das wohl nicht das problem , aber stell dir mal vor , jemand nutzt 2 verschiedene mp3 encoder (doofes Bsp. , ich weiß )
und beide nennen ihre Funktionen "mp3_load() , mp3_play()" usw.
Will man da kollisionen vermeiden , muss man alle Procezeduren (und evtl. Variablen , Arrays ... ) umbenennen.
Bei Modulen muss maln lediglich das Modul umbenennnen z.B. von "mp3" zu "mp3_1".Somit wären alle Kollisionen vermieden , da man die Funktionen nun mit
"mp3::load()" und "mp3_1::load()" aufrufen kann.
jetzt sagen vllt. einige "das ist nicht mehr PB" , ich finde es jedoch gut , dass PB vorangeht und neue "sachen" hinzufügt.

Und - was ist das Problem mit der umbenennung ? (einfach bereich markieren , suchen-ersetzen ,fertig :D )

Also ich würde auf Module umstellen , jedoch noch darauf warten , dass die PB 5.20 Final rauskommt , da viele hier ja die Betas meiden.
Aber - du bist der Chef , dein Include , das (^^) ist nur meine Meinung

Ach ja ... danke , das Include ist super :)

Grüße Computerfreak

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 01.07.2013 17:16
von STARGÅTE
Ich möchte euch hier die dritte Beta zu Version 1.4 geben:
TabBarGadgetBeta3a.zip

Dismal ist nur das Include und ein Beispiel dabei.
Hilfe wird in der finalen Version aktualisiert.

Update 1.4 Beta 3 (1. Juli 2013)
  • Bug-Fix für PB 5.20
  • vertikale Registerkartenleisten nun immer in Leserichtung orientiert (Wunsch von Lord)
  • Tabs mit gedrückter Maus auf Navi-Pfeile durchscrollbar (Wunsch von NicTheQuick)
  • Beim verschieben eines Tabs, scrollt die TabBar automatisch wenn man über Navigation ist.(Wunsch von NicTheQuick)
  • Neues Attribut: #TabBarGadget_CheckBox, zeigt eine kleine CheckBox in jedem Tab an (um zB bestimmte Tabs zu markieren, ohne sie auszuwählen)
Wäre nett wenn ihr vorallem die auto-Scroll-Funktionen testen könnt (Beispiel ist bereit gestellt).
Sie sind threadbasierend, sollten aber ohne Thread-Safe fehlerfrei laufen.
Im Beispiel ist auch #TabBarGadget_Editable eingeschaltet, bitte dort auch den Texteditor in den Tabs testen (Doppelklick in Tab)

Danke.

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 01.07.2013 17:59
von NicTheQuick
Also wenn ich das Beispiel einfach so starte, kommt bei PB 5.11 das leere Hauptfenster und sonst nichts. Gleichzeitig wird ein Core komplett ausgelastet.

Gleich teste ich es mal noch mit der neusten Beta...

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 01.07.2013 18:12
von STARGÅTE
Ubs sry, jo der Thread hatte im Wartemodus kein Delay, bitte noch mal runterladen.
Sollte sowohl mit 5.1 als auch mit 5.2 laufen.

GELÖSCHT

Verfasst: 01.07.2013 18:49
von mirca
GELÖSCHT

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 02.07.2013 20:35
von Kevin
vielleicht klappt es mit diesem Beispiel:

Code: Alles auswählen

XIncludeFile "TabBarGadget.pbi"

Enumeration
  #Window
  #Gadget
  #Directory
EndEnumeration

UsePNGImageDecoder()

OpenWindow(#Window, 0, 0, 800, 200, "TabBarGadget", #PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_SizeGadget)
TabBarGadget(#Gadget, 5, 5, WindowWidth(#Window)-10, 27, #TabBarGadget_CheckBox|#TabBarGadget_CloseButton|#TabBarGadget_Editable, #Window)

If ExamineDirectory(#Directory,  #PB_Compiler_Home+"\PureLibraries", "")
  While NextDirectoryEntry(#Directory)
    If DirectoryEntryName(#Directory) <> "." And DirectoryEntryName(#Directory) <> ".."
      AddTabBarGadgetItem(#Gadget, #PB_Default, DirectoryEntryName(#Directory))
    EndIf
  Wend
  FinishDirectory(#Directory)
EndIf

If CountTabBarGadgetItems(#Gadget) = 0
  Define i.i
  For i.i=0 To 32
    AddTabBarGadgetItem(#Gadget, #PB_Default, "Tab "+Str(i))
  Next
EndIf

Repeat
  Select WaitWindowEvent()
    Case #PB_Event_CloseWindow
      End
    Case #PB_Event_SizeWindow
      ResizeGadget(#Gadget, #PB_Ignore, #PB_Ignore, WindowWidth(#Window)-10, #PB_Ignore)
      UpdateTabBarGadget(#Gadget)
      
    Case #PB_Event_Gadget
      Select EventGadget()
        Case #Gadget
          Select TabBarGadgetEvent(#Gadget)
            Case #TabBarGadgetEvent_CloseTab
              RemoveTabBarGadgetItem(#Gadget, #TabBarGadgetItem_Event)
          EndSelect
      EndSelect
  EndSelect
ForEver
Ich finde deine Include Super!
Aber es wäre toll wenn man nur denn gerade Aktiven Tab schließen kann (wie in Opera)
weil ich komme beim Tabwechsel in PB öfters mal auf Schließen und muss dann die Datei wieder suchen und öffnen...

mfg
kevin

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 02.07.2013 20:48
von STARGÅTE
Danke Kevin, funktioniert denn bei dir das "auto-Scrollen" wenn du die Navigationspfeile gedrückt hältst?

Zu dem Schließenbutton, jo ich wollte da noch n Flag einbauen.

Re: TabBarGadget - Tabs wie im Browser

Verfasst: 02.07.2013 20:58
von Kevin
STARGÅTE hat geschrieben:Danke Kevin, funktioniert denn bei dir das "auto-Scrollen" wenn du die Navigationspfeile gedrückt hältst?
Funktioniert alles. ist nur ein wenig zu schnell
STARGÅTE hat geschrieben:Zu dem Schließenbutton, jo ich wollte da noch n Flag einbauen.
cool dann muss man nur noch Freak dazu bringen es einzubauen...

mfg
kevin