Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[Cross-platform] non-intrusive GUI op meerdere OS

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik weet niet of jullie hier ervaring mee hebben, maar ik wil een tool maken die op meerdere verschillende platforms op vergelijkbare manier gaat werken. De applicatie gaat grotendeels als server-client structuur werken, dus ik kan erg veel van de functionaliteit op de server regelen.

Echter is dit voor de user interface een andere zaak. Dat moet een dynamische interface zijn, misschien een beetje een widget-idee.
De grootste deel van de tijd zal deze op de achtergrond draaien (non-intrusive) maar de gebruiker moet ergens wel de mogelijk hebben om zelf een pop-up te openen met daarin een aantal opties. Maar ook moet de applicatie zelf in staat zijn om af en toe een venster met wat opties te tonen aan de gebruiker (waarschuwingen, input-request).

M.a.w. de applicatie moet net iets meer zijn dan puur de interface, de interface bevat toch vrij specifieke eisen (draaien op de achtergrond, mogelijkheid voor non-focussed pop-ups). Maar ook moet het mogelijk zijn met deze techniek om te communiceren met de server.

Nu heb ik zelf natuurlijk al wat technieken in mijn hoofd gehad, maar ik heb nog bij geen enkel het idee dat deze voor mij geschikt zijn. Enkele voorbeelden zijn: air/appolo/flash/flex, java/eclipse, tcl-tk etc etc etc

Iemand die mij goede/slechte ervaring kan vertellen met dit soort cross-platform GUIs en/of andere technieken. Of simpelweg mijn idee lek kan prikken en dat ik meerdere clients moet schrijven?

p.s. momenteel ben ik erg tevreden als het draait op mac-os en windows

  • ATS
  • Registratie: September 2001
  • Laatst online: 28-11 20:56

ATS

Ik heb naar grote tevredenheid dit soort dingen gemaakt met behulp van Qt. Die kan volgens mij alles wat je hierboven beschrijft. Je compileert je software opnieuw voor elk platform, waar het dan vervolgens gewoon native op draait. Je kan het gebruiken met python of Java, maar native is het C++. Ik gebruik het om software te ontwikkelen op linux en uiteindelijk te gebruiken op windows. Je kan het als open source gebruiken, maar je kan ook een commerciële licentie nemen als je dat beter uit komt.

My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant


  • PolarBear
  • Registratie: Februari 2001
  • Niet online
Wellicht is het een idee om een webinterface achtig iets te gebruiken? Op basis van iets als http://www.appwebserver.o.../embedded-web-server.html

  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 13-09 00:05
Webinterfaces vallen eigenlijk af. Qt en wxWidgets zijn de logische keuzes. Wil je toch iets web-achtigs, dan kom je bij XULrunner uit.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


Verwijderd

Topicstarter
Dank jullie wel voor de reacties! Ik zal er binnenkort weer in verdiepen.

Gisteren schoot het me echter te binnen dat het misschien ook mogelijk was om in flex/flash een applicatie te maken die het meeste werk doet, en dan die aan te roepen op de client specifieke machine... Dan hoeft het OS specifieke programma eigenlijk alleen maar de tray-icon en timer opties te implementeren....

Alhoewel mijn voorkeur uiteraard uitgaat naar het uitbreiden van mijn kennis, t.b.v. cross-platform, dus volledige client-implementatie, ipv flash... ((echter is eye-candy misschien wel weer goed voor de user-experience?))

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 30-11 00:17
Verwijderd schreef op dinsdag 04 september 2007 @ 12:02:
((echter is eye-candy misschien wel weer goed voor de user-experience?))
Ligt aan je doelgroep denk ik. Eyecandy en non-intrusive gaan iha niet goed samen heb ik het idee, wat voor mij vaak een reden is om de software links te laten liggen :)

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • netvor
  • Registratie: September 2000
  • Laatst online: 08-04-2024
Ik zou ook voor Qt gaan. Ik heb eventjes in de docs gekeken en er is support voor trayicons aanwezig, dus dat op de achtergrond draaien gaat crossplatform wel lukken.

Het eerste nadeel van Qt: de library is gratis en open-source via een GPL-achtige licentie. Dit betekent echter dat je de uiteindelijke applicatie ook onder een GPL-achtige licentie moet uitgeven. Wil je dat liever niet, dan moet je voor de library betalen (zie bijvoorbeeld Skype, een proprietary applicatie op de Qt library).

Het tweede nadeel van Qt: je moet je code eerst door een (speciale, onderdeel van Qt) preprocessor halen, en daarna pas door je compiler heen. Het is soms wat lastig om dit samen te laten werken met sommige compilers (Borland, MSVC).
Maar wees niet bang, ik heb zelf meerdere programma's geschreven met Qt, werkend in Eclipse-CDT (=crossplatform IDE) met GCC (=crossplatform compiler).

Computer Science: describing our world with boxes and arrows.


  • ATS
  • Registratie: September 2001
  • Laatst online: 28-11 20:56

ATS

netvor schreef op dinsdag 04 september 2007 @ 14:08:Het eerste nadeel van Qt: de library is gratis en open-source via een GPL-achtige licentie.
De Open Source editie van Qt is zelf inderdaad uitgegeven onder GPL-v2, maar merk echter op dat ze een grote lijst met uitzonderingen hebben. Dat wil zeggen dat je de library mag linken met code die onder deze lijst van andere licenties vallen. Dit zijn wel allemaal "vrije" licenties trouwens. Je hebt dus wel nog altijd wat keuzevrijheid voor je eigen code. Als je het gesloten wil houden dan moet je natuurlijk wel een commerciële licentie nemen, en die kost best een hoop geld (wat niet hetzelfde is als "duur", naar mijn mening). Overigens: als het voor in-house gebruik maakt de licentie eigenlijk geen donder uit, en kan je dus de Open Source editie pakken als je wil.

My opinions may have changed, but not the fact that I am right. -- Ashleigh Brilliant

Pagina: 1