silver-boards.com» Blog » Search for Tag: crosslib

Nach langen Experimenten und ersten Ergebnissen, werde ich meine eigene GUI Bibliothek einstellen. Aktuell überlege ich wie es mit Peopleedit weiter geht. Da gerade alternative Systeme wie Haiku und AmigaOS4 anfangen Qt(>=4.5) zu unterstützen, bin ich am überlegen zukünftige Versionen damit zu entwickeln.

Mein Problem ist nun wirklich, das Systeme wie AROS Qt nicht unterstützen und dagegen die Entwicklung einer eigenen Bibliothek zu aufwendig ist. Daher such ich einen Mittelweg. Bin aber gerne für Ideen aufgeschlossen.

Status Update by stefan 7 Jahre, 1 Monat

Aktuell hab ich leider recht viel im Studium zu tun, das vermiest mir die Stimmung um an den Projekten weiter zu arbeiten.

Grundlegend funktioniert nun die GUI Bibliothek. Aktuell bin ich dabei eine erste Fassung nach Haiku zu portieren, dies soll mir erstmal zeigen das es wirklich portabel ist.

Das nächste Update wird es also erst geben wenn eine erste Testanwendung( ein simpler Taschenrechner) unter Linux und Haiku läuft.

Die ersten Schritte sind nun zumindest für GTK geschafft. Also man kann ein Fenster Anzeigen, Elemente in Boxen Packen und das Programm reagiert auf erste Signale.

[caption id="attachment_60" align="alignnone" width="300" caption="Screenshot der Demo Anwendung"][/caption]

Folgend eine einfache Hello World Anwendung mit zwei Buttons.

#include <iostream>

#include <GUI/Application.h>
#include <GUI/Window.h>
#include <Plattform/GTK/HBox.h>
#include <Plattform/GTK/Button.h>
using namespace std;
using namespace GUI;
void button_clicked(void *button)
{
Plattform::GTK::Button *btn = static_cast<Plattform::GTK::Button*>(button);

cout<<"button title: "<<btn->getTitle().c_str()<<std::endl;
cout<<"method button_clicked was called"<<endl;
}
int main(int argv, char* args[])
{
Application *app = new Application(argv,args);
Window * win = new Window();
Plattform::GTK::HBox *box = new Plattform::GTK::HBox();
Plattform::GTK::Button *button = new Plattform::GTK::Button("my button");
Plattform::GTK::Button *button2 = new Plattform::GTK::Button("my buttonxxxx");
button->connect("button_press_event",button_clicked);
button2->connect("button_press_event",button_clicked);
box->add(button);
box->add(button2);
win->add(box);
win->setTitle("demo app");
win->setDefaultSize(400,300);
win->show();

app->run();
cout << "Hello world!" << endl;
return 0;
}

PeopleEdit zieht um by stefan 7 Jahre, 6 Monate

Da meine aktuelle Projektverwaltung etwas langsam ist und ich gerne weiteren Nutzern einblick in die Entwicklung geben möchte, habe ich mich dazu entschieden das Projekt zu verlegen.

Noch habe ich nicht alles übertragen. Also gerade der Bugtracker ist noch leer und das Wiki genauso, aber ich werde versuchen dies in den nächsten Wochen zu ändern.

Neue Adresse:  http://code.google.com/p/peopleedit/

Zum Projekt selbst. Ich habe mich auf dem Linux Tag mit ein paar OpenSUSE Leuten unterhalten und nun verstanden wie man den Build Service nutzt. Somit wird es mit der nächsten Version von PeopleEdit auch eine SuSE Version geben.

Außerdem experimentiere ich wieder etwas mit Haiku und anderen Betriebssystemen. Das ergebnis ist, dass ich zu PeopleEdit ein kleines Unterprojekt habe in dem ich eine Cross Plattform GUI schreibe. Das ganze ist noch sehr rudimentär aber in den nächsten Wochen werde ich vielleicht die ersten Ergebnisse zeigen können. Das Ziel ist hier das meine Kontaktverwaltung auf jedem Desktop Betriebssystem läuft und das auch wenn GTK nicht vorhanden ist oder dort eher mäßig aussieht(Windows,AmigaOS,AROS, MorphOS und Haiku)