Rafael Teixeira wrote:
> Some more info, inline.
>
> On 7/26/07, George Lober <georgelober glowsoftware.ca> wrote:
>
>> Rafael Teixeira wrote:
>> > Hi,
>> >
>> > On 7/24/07, George Lober <georgelober glowsoftware.ca> wrote:
>> >> Rafael Teixeira wrote:
>> >> > You are mixing incompatible graphical
technologies, NPlot and
>> >> > ZedGraph, are WinForms controls, and
currently MonoDevelop has
>> only a
>> >> > designer for GTK#.
>> >>
>> >> I did try the 0.9.9.2 version of NPlot
which according to
>> >> http://www.mono
-project.com/Libraries and
>> >> http://netcontrols
.org/nplot/wiki/ is a GTK# version. ???
>> >
>> > They have both, AFAIR, so you need to use the
right one.
>> >
>> Admittedly I did try other versions because it
wasn't loading into the
>> toolbox, but the gtk version is the
nplot-gtk-0.9.9.2.tar
>> <http://netcontrols.org/nplot/downloads/nplot-gtk
-0.9.9.2.tar> which can
>> be gotten here:
>> http://netcontrols.org/nplot/wiki/index.php?n=Mai
n.DownloadArea among
>> other locations, and this one also does not load. I
assume you are
>> supposed to select the .dll file to load the
widget, thou I have to say
>> that it is kind of strange to me to use dlls in a
Linux environment.
>
> The problem is that Stetic, the GTK# GUI designer
module in
> MonoDevelop, expects controls to expose additional
metadata, like the
> ones you can create with it yourself, and the nplot
control/widget
> probably doesn't have it.
>
> Nevertheless, you can use it, by designing the rest of
the
> form/window, not forgetting to prepare a container for
the control,
> and them adding the control on code, in short, Stetic
will generate
> only part of the code to build the UI. Also someone
could take the
> opportunity to build an Stetic wrapper/adapter around
nplot, so that
> everybody could use this wrapped nplot widget as any
other widget that
> Stetic supports.
>
This looks worrisome. I have searched around and it is
looking like
there isn't much in the way of, for the lack of a better
word, "plug &
play" components/widgets for Stetic from other sources
like there is in
the Delphi environment. For the app I would like to convert,
I need to
find a way to substitute the functionality of a TStringGrid
and
TListView. If there are no third party widgets, correct me
if I'm wrong,
the only thing I see in the toolbox that may be usable for
this purpose
is the TextView widget. Can this display cells/rows/columns
? I also
need a charting widget which displays bars and pies, but as
NPlot and
ZedGraph are the only candidates I have found, this looks
like a
challenge. I also need a DateEdit widget, which I do see in
the Glade
toolbox but not in Stetic. What steps would I need to take
to use that
one under Stetic ?
>>
>> Yes, I have looked at these pages, but these don't
answer all my
>> questions. I guess a certain level of knowledge is
assumed. For example
>> , I know that C#(a C++ copy as I see it) is a
Microsoft created language
>> and is used in .net, and also that C# is mentioned
in mono
>> documentation.
>
> Most code in Mono is written in C#, including our C#
compiler and tens
> of thousands of classes in the core and extended
libraries. A small
> part of the code in Mono is in VB.NET including the
VB.NET compiler,
> and the runtime basic bits are written in C.
>
> So knowing C#, is kind of a prerequisite to better
understand the
> runtime environment and IDE you are using (most of MD
is written in C#
> also, with additional modules in Boo, and some other
languages that
> target the Mono/.NET environment).
>
>> Then there is GTK# which is a wrapper for GTK+,
which
>> uses C/C++.
>
> GTK+, uses only C, as all Gnome things in general,
because things like
> non-standardized C++ name-mangling made it less
portable at those
> ancient times, when the decision was made.
>
> GTK# is a wrapper written in C#, with small bits of C
glue code, to
> offer all GTK+ widgets to programs written with any
Mono/.NET
> language.
>
>> The thing is I don't actually see it saying
anywhere what
>> language GTK# uses. I deduce it must be C#. Is this
correct?
>
> Already answered.
>
> The thing is: you can, in Linux, use Mono with a choice
of languages:
> C# (the best supportted language in Mono and MD).
VB.NET and Boo
> (similar to Python but statically typed) also are well
supported by
> MD. AFAIK also Nemerle, IronPython and maybe IronRuby,
work well in
> Mono but doesn't have direct support in MD (you still
can use it, but
> lots of niceties aren't offered for these other
languages).
>
> The most limiting factor in truth is that, currently,
Stetic only
> generates C# code so if you'd like to use the Designer,
you'll need to
> code the UI in that language, but then you can write
your main logic,
> in any other supported language, as long as you house
it in a library
> project (dll) (or vice-versa, you can put all the UI in
a C# library
> to call from your Boo main program, for instance).
>
> Some support for Java programming was put into MD, a
long time ago,
> because you can run Java programs in Mono, inside a C#
written Java
> VM, called IKVM (or you can convert Java jars to Mono
dlls with
> IKVMC), but I didn't notice it (MD Java support) being
actively
> maintained of lately.
>
> Hope it helps you and some others to sort out the
current "state of
> the nation" in mono/md-land.
All in all a fabulous reply. Much appreciated. As other
people, I have
found the whole .net thing mixing of languages confusing
right from the
beginning, so while this information may seem trivial to the
more
experienced, beginners need this kind of info. It would be
great if you
or someone would post this kind of an overview of things as
it relates
to MonoDevelop/Stetic specifically, on the MonoDevelop or
Stetic web site.
George
_______________________________________________
Monodevelop-list mailing list
Monodevelop-list lists.ximian.com
http://lists.ximian.com/mailman/listinfo/monodevelop-li
st
|
Inline
On 7/26/07, George Lober <georgelober glowsoftware.ca> wrote:
> Rafael Teixeira wrote:
>
> This looks worrisome. I have searched around and it is
looking like
> there isn't much in the way of, for the lack of a
better word, "plug &
> play" components/widgets for Stetic from other
sources like there is in
> the Delphi environment.
Yes, I also feel that more options (working out-of-the-box)
would be
really nice. The main problem is that in GTK#, you don't
have all the
extensibility you need to really build easily reusable new
components.
Currently the wrapping layer doesn't cope with the
GInterface
mechanism, for instance, but hopefully this problem will be
solved in
the near future.
>For the app I would like to convert, I need to
> find a way to substitute the functionality of a
TStringGrid and
> TListView.
Doesn't know these components, I've been away from Delphi
for the last
10 years.
>If there are no third party widgets, correct me if I'm
wrong,
> the only thing I see in the toolbox that may be usable
for this purpose
> is the TextView widget.
I think it should be the TreeView widget. It is kind of a
tree/grid
mixed widget, where the tree can be flat and then it looks
and behaves
like a simple grid.
>Can this display cells/rows/columns ?
TreeView excels at that.
> I also need a charting widget which displays bars and
pies, but as NPlot and
> ZedGraph are the only candidates I have found, this
looks like a
> challenge.
Not really. I think you can easily add the metadata to
NPlot's GTK#
version to make it fully hosteable in Stetic, It maybe
tedious, if
there are many properties/events to map, but it is, AFAIK,
feasible.
>I also need a DateEdit widget, which I do see in the
Glade
> toolbox but not in Stetic. What steps would I need to
take to use that
> one under Stetic ?
I think code (C#or Boo) for a more complete one floated
around in the
lists, but I don't have time now to search it. As for this
that
appears in Glade, if it is already wrapped in GTK# (it may
reside in
some separate native lib that isn't currently wrapped), I
think adding
the metadata is easy, as the number of properties/events is
low. If it
isn't already, wrapped, the GAPI tool that was developed to
help
create such wrappings can used to generate most of the
needed code and
then the metadata can be added.
Sorry, I'm in the middle of a rush for my client these days,
and so I
can't help more just now.
Hope you'll find your way to a solution.
Regards,
--
Rafael "Monoman" Teixeira
---------------------------------------
"I myself am made entirely of flaws, stitched together
with good intentions."
Augusten Burroughs
_______________________________________________
Monodevelop-list mailing list
Monodevelop-list lists.ximian.com
http://lists.ximian.com/mailman/listinfo/monodevelop-li
st
|