MyXaml is making available a free designer that generates MyXaml compatible markup. You can lay out controls in the designer, switch to the MyXaml view, edit the markup, switch back to the designer view and see your markup changes. This is an early prototype, so quite a few features are missing, but we’re moving forward with a fully functional MyXaml Studio. Our Take: I would also like to see the MyXaml technologies ported to Mono in association with Novell.
I think it would be interesting if KDE and Gnome could agree on some kind of XML gui markup that could be compiled down to use qt/kde or gtk/gnome at install time. There could also be tools that would scan source files to produce xml gui markup, so that existing code could produce markup. I would guess that most gtk/gnome apps already use glade which outputs xml, so converting that to some common format shouldn’t be too hard.
I have no idea of the technicalities involved in this. But I think the holy grail is to have apps use whatever underlying toolkit it wants and also to have a common interprocess communication mechanism, XCOM, DCOP, whatever.
Is MyXaml compatiable with the release Longhorn XAML?
What I meant to ask is MyXaml 100% compatability with Microsoft’s XAML?
One problem still remains, gui guidelines and expected behaviour of an application on different platforms.
The preferences menu item belongs under the application menu in mac os x, under the edit menu under gnome, and extra(?) on windows, where it is more often called “settings”. To switch between several preferences panes, you normally have a toolbar in osx, several rows of tabs in windows, or the left pane in kde.
What do you put on the toolbar, and what not? On windows users expect a new icon, save icon, print icon, .. where on osx you expect as little icons as possible. KDE tends to prefer lots of icons too, while gnome has a tendency to keep the number of icons in the toolbar low.
Do you use inspector palettes or not? How do you hide and unhide them? What keyboard shortcuts are you going to use,..
Again, for every platform you basically have to rewrite the large parts of the gui if you want to fit in.
Why not describe the GUI at a much higher level? I mean, we have standard open, save, print panels. Each platform implements them in their own unique way. Why not also a standardized preferences window? As an application developer you basically say: “these are the options, grouped like this, this option is very important, this one is basically fluff..”. Then the platform can decide on how to display those options, which ones to show,…
Gui designers wouldn’t have to fix all the little applications, they would basically fix “the platform”, and all the applications would get the improved gui.
It is basically the difference between LaTeX and Word for GUI design.
What I meant to ask is MyXaml 100% compatability with Microsoft’s XAML?
Well, there is no other “XAML” except Microsoft’s, is there? I would assume it’s compatible.
Like support for XUL, QT and other interface systems.
Why not describe the GUI at a much higher level? I mean, we have standard open, save, print panels. Each platform implements them in their own unique way. Why not also a standardized preferences window? As an application developer you basically say: “these are the options, grouped like this, this option is very important, this one is basically fluff..”. Then the platform can decide on how to display those options, which ones to show,…
Yeah, good point. You basically have to raise the abstraction level and let the platform figure out the best way to implement it. Probably something that is not very easy.
I just don’t see Gnome or KDE going away anytime, so the only hope I see is for something like this and a standard desktop object communications protocol.
Well, QT designer uses XML to generate QT so I think it is just a matter of GTK catching up in that area. Really, a lot of people think this is so great what Microsoft is doing, but they are just playing catch up, as usual.
“Why not describe the GUI at a much higher level?”
I was thinking about something like this a while ago, basically modifying the QT-GTK engine. So the the engine detects wether you have KDE or GNOME/XFCE installed, if only KDE is installed you use make all GTK apps use QT for drawing. Now if GNOME/XFCE is installed, make all QT apps use GTK for drawing. If both are installed, detect whether you are currently running KDE or GNOME/XFCE and pick the right format. If neither is installed, let the user pick how the apps should look. The only thing would be to improve the QT-GTK engine so that it can make QT applications use GTK for drawing, and select which way to do it.
(an interesting side-note is that you could have it switch them up so that all GTK apps use QT and all QT apps use GTK, now that would be something!)
From MyXAML’s website:
“Is It The Same As Longhorn’s Markup ?
No. There are many similarities, but there are a few differences also. Depending on our customer feedback, we may continue to remain divergent, or make efforts to converge with Longhorn’s markup. However, keep in mind that Longhorn’s markup is still in a state of flux, so don’t count your chickens until they hatch”
So, no, MyXAML isn’t the same as Longhorn’s markup.
Checked out SWT? It’s not exactly what you’re talking about, but very close. It’s a window toolkit used primarily with Java that essentially wraps native toolkits. I’m sure there’ll be a runtime eventually for XAML.
Is there any talk about integrating MyXaml into Mozilla much like how XUL is implemented in Mozilla currently?
the .net designer window looks very similar to kate/kdevelop
the only issue I see is that the different API’s don’t have identical tools. In a recent project, I switched from using GTK to Qt simply for the QTable widget; GTK doesn’t have a good spreadsheet widget. To unify these, they’d have to have comparable widget sets. Not something I see happening in the near future.
I think you answered yourself, though you may not see it. The Mozilla team put a lot of effort in to XUL and they try stay with open standards. XUL is an open standard, XAML is not. They are cringing at the thought of including ActiveX and Internet Explorer extended HTML, and other such Microsoft only stuff. They are relenting to this because many developers make IE only pages so people can’t completely switch to Mozilla for certain pages. (It reminds me of the WINE project actually, ween people off windows over time…) But XAML does not have as large a user base (does really have a user base since it isn’t yet available?) so why would they need to?
But XAML does not have as large a user base (does really have a user base since it isn’t yet available?) so why would they need to?
But then again, there is a two way problem. If you don’t create a compatible implementation and it takes off, then the result will be that you’re behind the eighth ball, on the other hand, by the OSS community embracing XAML, it may end up legimising something that would have been ignored had the OSS version not been created.
With that being said, if programmers can move away from hard coding directly to the toolkit and thus push the necessary things into XML, the issues of backwards compatibility would become a none-issue as programmes will no longer be programmed for that particular version of a toolkit. It would provide a level of abstraction which would allow the toolkit maintainers to tweak and change things at whim without needing to worry about things like backwards compatibility.
Please try and read the links before you go commenting on thingswithout actually knowing.
Read the FAQ http://www.myxaml.com/faq.htm.
Clearly this is not the XAML in Longhorn, but his own myXAML. It is also open source and therefore, open.
I agree with Eugenia. This seems like something which could easily work with mono or other open source tehcnologies and perhaps could be improved with the help of the OSS community
So basically it does the same as glade for gtk+ ?
An xml-File that describes the GUI, und it’s loaded at runtime.
I belive that mono already supports glade, therefore Mono already has a similar Technologie, but it’d be interesting to somehow make these formats compatible.
I haven’t used Glade so i don’t know if it is any good, but their website could use a makeover. Imho it looks rather amateurish and that is not good for a program that does GUI building.
I wasn’t talking about the GUI-Builder, but about libglade, or whatever it’s called, a library you can link to your program, to use this xml for UI stuff.
GTK+/# only, though.
Wouldn’t it be neat to feed an .XML file into a .NET runtime, and have it spawn S.W.F on Windows, GTK# on Mono under Gnome, and QT# on Mono under KDE?
Checked out SWT? It’s not exactly what you’re talking about, but very close. It’s a window toolkit used primarily with Java that essentially wraps native toolkits. I’m sure there’ll be a runtime eventually for XAML.”
actually SWT is not only for windows, but it exists for linux and (i suppose) mac osx too. it’s something different from AWT, that has a LCD (lowest common denominator) approach to components, and Swing, that creates all the components bit-a-bit and is much slower. SWT uses native API if they are present, if they’re not, they create the high-level components using low-level components.
The advantage is native look and feel and fast gui, the disadvantage is that you need to compile for every platform (and you must use SWT DLL on windows and i-dont-know-how-its-called on linux and mac)
Actually it doesnt use XML as markup but i hope they’ll implement something using XUL or similar