Seite 1 von 6

Ribbons in PureBasic - WIP

Verfasst: 13.02.2012 13:29
von Morty
Hallo liebe Gemeinde.

Ich will gar nicht viele Worte dazu verlieren. Ich arbeite gerade an einem Ribbon Clone für PureBasic.
Das sieht mittlerweile so aus:
Bild

Und fühlt sich so an:
Ribbon_Test.zip
Sollte bis Win98 abwärtskompatibel sein.

Es ist noch einiges in der Pipeline, was ich integrieren will. Darum WIP!!

Ahh ... ich sehe nur noch blau
Die blauen Fesnter demonstrieren nur die Position von möglichen Zusatzfenstern (wie man es auf Word und Co ja kennt).
Das bleibt aber im Endeffekt dem Benutzer dann selbst überlassen.

Gruß, Morty

Re: Ribbons in PureBasic - WIP

Verfasst: 13.02.2012 13:34
von Kiffi
sieht gut aus! :allright: Weitermachen! Danke! :D

Grüße ... Kiffi

Re: Ribbons in PureBasic - WIP

Verfasst: 13.02.2012 15:13
von Morty
Danke :D

Ich versuche es auch so einfach wie möglich zu halten.
Der Code für das Beispielprogramm sieht so aus (nur als Info)

Code: Alles auswählen

Ribbon_Init()
OpenWindow(#main_win,#PB_Ignore,#PB_Ignore,800,600,"Ribbon Test",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
Ribbon_New(#main_win)
  card1.i=Ribbon_AddRegister(#main_win,"Start")
    ;Container dazu
    con_1.i=Ribbon_AddContainer(card1.i,"Zwischenablage")
      ;Buttons in den Container
      Ribbon_AddFullSizeButton(con_1.i,Button1Image.i,"Einfügen",@Button1_Callback())
      Ribbon_AddFullSizeButton(con_1.i,Button1Image.i,"Ausfügen",@Button1_Callback())
      Ribbon_AddSeparator(con_1.i)
      btn_disabled.i=Ribbon_AddFullSizeButton(con_1.i,Button1Image.i,"Abfügen",@Button1_Callback())
      Ribbon_AddFullSizeButton(con_1.i,Button1Image.i,"Zufügen",@Button1_Callback())
    
    con_2.i=Ribbon_AddContainer(card1.i,"Schriftart")
      Ribbon_AddFullSizeButton(con_2.i,Button1Image.i,"Anzünden",@Button1_Callback())
    
    con_3.i=Ribbon_AddContainer(card1.i,"Bearbeiten")
      ;Buttons vorbereiten
      con_3_btn_1.i=Ribbon_AddButton4Stack(LoadImage(#PB_Any,"find.png"),"Suchen",@Button1_Callback(), @Button1_Callback())
      con_3_btn_2.i=Ribbon_AddButton4Stack(LoadImage(#PB_Any,"text_replace.png"),"Ersetzen",@Button1_Callback())
      con_3_btn_3.i=Ribbon_AddButton4Stack(LoadImage(#PB_Any,"cursor.png"),"Markieren",@Button1_Callback())
      Ribbon_AddButtonStack(con_3,con_3_btn_1.i,con_3_btn_2.i,con_3_btn_3.i)
    
  card2.i=Ribbon_AddRegister(#main_win,"Einfügen")
    con_4.i=Ribbon_AddContainer(card2.i,"Seite 2")
      Ribbon_AddFullSizeButton(con_4.i,Button1Image.i,"Einfügen",@Button1_Callback())
      Ribbon_AddSeparator(con_4.i)
      Ribbon_AddButtonStack(con_4,con_3_btn_1.i,con_3_btn_2.i,con_3_btn_3.i)
      Ribbon_AddSeparator(con_4.i)
    
  card3.i=Ribbon_AddRegister(#main_win,"Seitenlayout")
    
  Ribbon_Register_SetActive(#main_win, card1.i)
Ribbon_Create(#main_win)
Gruß, Morty

Re: Ribbons in PureBasic - WIP

Verfasst: 13.02.2012 15:16
von dige
Stark :allright: Kann mich nur anschliessen - bitte weitermachen!!!

Re: Ribbons in PureBasic - WIP

Verfasst: 13.02.2012 15:36
von NicTheQuick
Ich fände es schön, wenn das Ganze mit Interfaces laufen würde.

Re: Ribbons in PureBasic - WIP

Verfasst: 14.02.2012 09:41
von Kukulkan
Hallo,

schaut schon toll aus. Aber bitte, Cross-Plattform machen (CompilerIf), sonst kann das wieder kaum jemand brauchen. In der Umfrage im englischen Forum kommt klar raus, dass immer mehr Leute gerne Cross-Plattform machen. Wäre super, wenn sich das auch ein bisschen auf diese Art von Projekten auswirkt. Ich finden dieses Ribbon-Include wirklich gut. Wäre schön, das auch unter Linux und MacOS zu nutzen.

Grüße,

Kukulkan

Re: Ribbons in PureBasic - WIP

Verfasst: 14.02.2012 10:52
von Kiffi
Kukulkan hat geschrieben:sonst kann das wieder kaum jemand brauchen.
kann ja sein, dass mehr und mehr Leute Crossplattform programmieren (oder es
zumindest ab und zu probieren wollen), aber IMO ist die große Mehrheit der
Programmierer noch immer mit Windows unterwegs. Deswegen halte ich obige
Aussage für etwas übertrieben. :-)

Grüße ... Kiffi

Re: Ribbons in PureBasic - WIP

Verfasst: 14.02.2012 11:07
von dige
Mac User sind einfach emotionaler ^^

Re: Ribbons in PureBasic - WIP

Verfasst: 14.02.2012 11:14
von Morty
Ich schließe mich da Kiffi an. Die Aussage "sonst kann das wieder kaum jemand brauchen." ist wirklich etwas übertrieben.
Außerdem mache ich es hauptsächlich für mich ... und ich kann es brauchen 8)

Und wo ich einmal hier bin, mache ich auch gleich ein Statement dazu:
Crossplattform - wohl vorerst nicht aus folgendem Grund:
Ich nutze ein paar Dinge aus der Windows API und habe mich NOCH NIE mit Linux oder MacOS beschäftigt. Daher kenne ich weder
die entprechende Funktion auf dem System, noch kann ich es testen.

Aber wer weiß ... man lernt ja nie aus :wink:

Gruß, Morty

Re: Ribbons in PureBasic - WIP

Verfasst: 14.02.2012 19:04
von c4s
Sieht fein aus! :allright:
Morty hat geschrieben:Sollte bis Win98 abwärtskompatibel sein.
Wird eigentlich das System-Design bzw. die -Farben berücksichtigt? Wenn nicht, werden sich die Win98-Anhänger (keine Klicki-Bunti-Grafik™), die es durchaus noch zu geben scheint, bestimmt freuen:
Bild :wink: