Hi Antonio,

This brings up my e-mail to you about SDL and IUP. Does the same hold
true? I'm more interested in the Linux IUP / SDL_gfx direction myself.

John

On Mon, 2015-05-25 at 14:02 -0300, Antonio Scuri wrote:
>   Yes, a dialog can have any set of controls. For instance, when you
> run Word or Notepad, if they where implemented using IUP, that main
> interface is a IupDialog, it contains lots of buttons an the text
> editor area. When you want to configure a Paragraph with more
> parameters that are available o the main interface, it appears another
> windows, that also would be an IupDialog. Inside the dialog will be
> buttons, labels, text boxes and in some cases plots of data. A IupPlot
> is a control just like IupButton is.
> 
> 
>   The TransparencyIndex attribute is optional. If that line fails,
> then it seems the image parameter may not be an imImage as expected.
> Can tell what's going on just by the code you sent.
> 
> 
> Best,
> Scuri
> 
> 
> 
> On Sat, May 23, 2015 at 5:41 PM, Joaquim Luis <jl...@ualg.pt> wrote:
>         
>                   A IupDialog is a system window. The Notepad window
>                 and the Mathlab window are examples. In every
>                 graphical user interface toolkit this is the main
>                 element where others elements are placed.
>                 
>         
>         
>         So, I can think of it as equivalent to the handle of a Matlab
>         Fig?
>         Can a IupDialog have more than one IupPlot visible at the same
>         time? Who would be the containers of those IupPlots?
>         
>         
>                   What is the result of your test code now? Does at
>                 least your data set is ploted?
>                 
>         
>         
>         Yes it does (I meant that when I said before that "it
>         worked"). But I face a lot of new issues.
>         I found about IupImageFromImImage() but it crashes IUP when I
>         use it with my manually constructed imImages, which work well
>         when I use them as background of cvCanvas. 
>         From the crashing error messages in Julia I deduce that the
>         problem comes from this line (#464) in  Ihandle*
>         IupImageFromImImage(const imImage* image)
>         
>         
>         transp_index = imImageGetAttribute(image, "TransparencyIndex",
>         NULL, NULL);
>         
>         
>         In fact the "image" I create have no such attribute. And even
>         when I try to set it with   imImageSetAttribute() I get this
>         strange error
>         
>         
>         imImageSetAttribute(image,"TransparencyIndex",0,21901,C_NULL)
>         ERROR: DivideError: integer division error
>         
>         
>         Ideally the IupPlot should accept both iIupImages and
>         imImages 
>                 Scuri
>                 
>                 Em 23/05/2015 13:25, "Joaquim Luis" <jl...@ualg.pt>
>                 escreveu:
>                         António,
>                         
>                         
>                         I guess that your code should work. I
>                         basically had the same in my working version
>                         pasted bellow. But that doesn't address my
>                         main questions that i raised in previous
>                         message on what are dialogs, how to put plots
>                         side by side, etc... 
>                         I'm afraid that without understanding those
>                         I'll be hitting my head on the wall next time
>                         I try to do something different (well, I'm
>                         actually there already).
>                         
>                         
>                         Thanks
>                         
>                         
>                         Joaquim
>                         
>                         
>                         using IUP
>                         using IUP_IM
>                         using IUP_CD
>                         
>                         function axes()
>                         
>                         IupOpen() #Initializes IUP
>                         
>                         IupPlotOpen(); # init IupPlot library
>                         
>                         # create plot
>                         plot = IupPlot()
>                         hbox = IupHbox(plot);
>                         IupSetAttribute(hbox, "MARGIN", "10x10");
>                         IupSetAttribute(hbox, "GAP", "10");
>                         
>                         dlg = IupDialog(hbox);
>                         
>                         IupSetAttributes(dlg, "SIZE=500x240" );
>                         IupSetAttribute(dlg, "TITLE", "IupPlot
>                         Example");
>                         
>                         IupSetAttribute(plot, "TITLE", "AutoScale")
>                         IupSetAttribute(plot, "MARGINTOP", "40")
>                         IupSetAttribute(plot, "MARGINLEFT", "40")
>                         IupSetAttribute(plot, "MARGINBOTTOM", "50")
>                         IupSetAttribute(plot, "TITLEFONTSIZE", "16")
>                         IupSetAttribute(plot, "AXS_XLABEL", "gnu
>                         (Foo)")
>                         IupSetAttribute(plot, "AXS_YLABEL", "Space
>                         (m^3)")
>                         IupSetAttribute(plot, "AXS_YFONTSIZE", "7")
>                         IupSetAttribute(plot, "AXS_YTICKFONTSIZE",
>                         "7")
>                         #IupSetAttribute(plot, "LEGENDSHOW", "YES");
>                         IupSetAttribute(plot, "AXS_XFONTSIZE", "10");
>                         IupSetAttribute(plot, "AXS_YFONTSIZE", "10");
>                         IupSetAttribute(plot, "AXS_XLABELCENTERED",
>                         "NO");
>                         IupSetAttribute(plot, "AXS_YLABELCENTERED",
>                         "NO");
>                         IupSetAttribute(plot, "AXS_XARROW", "NO");
>                         IupSetAttribute(plot, "VIEWPORTSQUARE")
>                         
>                         error = pointer([0])
>                         im = imFileImageLoadBitmap("V://Capture.PNG",
>                         0, error)
>                         error = unsafe_load(error)
>                         image = IupImageFromImImage(im)
>                         
>                         #image = IupLoadImage("V://Capture.PNG")
>                         IupSetAttributeHandle(plot, "BACKIMAGE",
>                         image)
>                         IupSetAttribute(plot, "BACKIMAGE_XMIN",
>                         "-100");
>                         IupSetAttribute(plot, "BACKIMAGE_XMAX",
>                         "150");
>                         IupSetAttribute(plot, "BACKIMAGE_YMIN", "-2");
>                         IupSetAttribute(plot, "BACKIMAGE_YMAX", "2");
>                         
>                         IupPlotBegin(plot, 0)
>                         IupPlotAdd(plot, -100., -2.)
>                         IupPlotAdd(plot, 150., 2.)
>                         IupPlotEnd(plot)
>                         IupSetAttribute(plot, "DS_MODE", "MARK")
>                         IupSetAttribute(plot, "DS_MARKSIZE", "1")
>                         
>                         IupShowXY(dlg, IUP_CENTER, IUP_CENTER);
>                         
>                         IupMainLoop()
>                         IupClose()
>                         
>                         return
>                         
>                         end
>                         
>                         
>                         
>                         
>                         
>                                   I think it should be this (not sure,
>                                 never programmed in Julia):
>                                 
>                                 
>                                 IupOpen();
>                                 
>                                 IupPlotOpen(); # init IupPlot library
>                                 
>                                 # create plots
>                                 plot = IupPlot()
>                                 
>                                 # dialog
>                                 hbox = IupHbox(plot, C_NULL);
>                                 IupSetAttribute(hbox, "MARGIN",
>                                 "4x4");
>                                 IupSetAttribute(hbox, "GAP", "10");
>                                 
>                                 dlg = IupDialog(hbox);
>                                 IupSetAttributes(dlg, "SIZE=500x240"
>                                 );
>                                 IupSetAttribute(dlg, "TITLE", "IupPlot
>                                 Example");
>                                 
>                                 InitPlots(); # It must be able to be
>                                 done independent of dialog Mapping
>                                 
>                                 IupShowXY(dlg, IUP_CENTER,
>                                 IUP_CENTER);
>                                 IupSetAttribute(dlg, "SIZE", C_NULL);
>                                 
>                                 IupMainLoop()
>                                 IupClose()
>                                 
>                                 
>                                 
>                                   It this showing a dialog with at
>                                 least a white canvas in the center
>                                 surrounded by 4x4 margins?
>                                 
>                                 
>                                 Best,
>                                 Scuri
>                                 
>                                 
>                                 
>                                 On Sat, May 23, 2015 at 12:04 PM,
>                                 Joaquim Luis <jl...@ualg.pt> wrote:
>                                         No, the vboxr was NULL
>                                         terminated (see line:
>                                         vboxr[2] = C_NULL # mark end
>                                         of vector) and I kept the
>                                         vector out of pure laziness.
>                                         It turned out that this didn't
>                                         work
>                                         
>                                         
>                                         plot = IupPlot()
>                                          dlg = IupDialog(hbox);
>                                         
>                                         
>                                         
>                                         because I had an issue on the
>                                         porting of IupPlot that
>                                         returned a pointer to int
>                                         instead of a pointer to
>                                         Ihandle (a void *). When I
>                                         fixed this it started to work.
>                                         But my basic incomprehension
>                                         of what a dialog is still
>                                         remains. I know the doc says
>                                         
>                                         
>                                         "... It manages user
>                                         interaction with the interface
>                                         elements"
>                                         
>                                         
>                                         but sorry, this too vague for
>                                         me. Can I think of it as a
>                                         similar to the Matlab handle
>                                         to a Figure?
>                                         Why can't I create a dialog by
>                                         calling it on a IupCanvas.
>                                         That is, why doesn't this
>                                         work?
>                                         
>                                         
>                                         dlg = IupDialog( IupCanvas())
>                                         
>                                         
>                                         And a IupPlot object, can I
>                                         think of it as a ML equivalent
>                                         to an axes handle? How can I
>                                         put more than one IupPlot plot
>                                         side by side?
>                                         
>                                         
>                                         Well, sorry. Lots of questions
>                                         but I still don't understand
>                                         the "mechanics of the IUP
>                                         ensemble"
>                                         
>                                         
>                                         Joaquim
>                                         
>                                         
>                                                   Hi,
>                                                 
>                                                   I think there is a
>                                                 misunderstanding about
>                                                 the vbox terminator.
>                                                 When you pass a list
>                                                 of controls for a box
>                                                 you end that list with
>                                                 a null, for instance
>                                                 vbox(but1, but2,
>                                                 null).
>                                                 
>                                                   This is not what you
>                                                 are doing. First, if
>                                                 you don't want a tabs,
>                                                 remove it from your
>                                                 test. Make it simpler.
>                                                 You also don't need an
>                                                 array of plots, you
>                                                 will use just one.
>                                                 Eliminate that too.
>                                                 
>                                                   Then we start from
>                                                 there. 
>                                                 
>                                                   And send me the full
>                                                 Julia file so I can
>                                                 also see what you are
>                                                 doing in InitPlot.
>                                                 
>                                                 Best,
>                                                 Scuri
>                                                 
>                                                 Em 22/05/2015 16:55,
>                                                 "Joaquim Luis"
>                                                 <jl...@ualg.pt>
>                                                 escreveu:
>                                                         Thanks,
>                                                         
>                                                         
>                                                         I managed to
>                                                         make it work
>                                                         in a stripped
>                                                         down version
>                                                         of the pplot
>                                                         example. 
>                                                         But now I
>                                                         don't want to
>                                                         plot it in a
>                                                         Tab, I just
>                                                         want a simple
>                                                         plot with an
>                                                         image. I
>                                                         understand
>                                                         that the
>                                                         solution must
>                                                         be in what is
>                                                         used to
>                                                         generate the
>                                                         IupDialog()
>                                                         bellow, but
>                                                         everything
>                                                         else that I
>                                                         try just
>                                                         brings an
>                                                         empty figure.
>                                                         This is so
>                                                         painful by
>                                                         trial and
>                                                         error. I guess
>                                                         that I simply
>                                                         don't
>                                                         understand
>                                                         what a dialog
>                                                         (the return of
>                                                         IupDialog(...)) is 
> and the importance of its input argument.
>                                                         
>                                                         
>                                                         Joaquim
>                                                         
>                                                         
>                                                         IupControlsOpen(); # 
> init the addicional controls library (we use IupTabs)
>                                                         IupPlotOpen();
>                                                         # init IupPlot
>                                                         library
>                                                         
>                                                         # create plots
>                                                         plot[1] =
>                                                         IupPlot()
>                                                         
>                                                         # right panel:
>                                                         tabs with
>                                                         plots
>                                                         vboxr[1] =
>                                                         IupVbox(plot[1]); # 
> each plot a tab
>                                                         s =
>                                                         @sprintf("Plot
>                                                         %d", 1)
>                                                         
> IupSetAttribute(vboxr[1], "TABTITLE", s); # name each tab
>                                                         vboxr[2] =
>                                                         C_NULL # mark
>                                                         end of vector
>                                                         
>                                                         tabs =
>                                                         
> IupTabsv(pointer(vboxr)) # create tabs
>                                                         
>                                                         # dialog
>                                                         hbox =
>                                                         IupHbox(tabs);
>                                                         IupSetAttribute(hbox, 
> "MARGIN", "4x4");
>                                                         IupSetAttribute(hbox, 
> "GAP", "10");
>                                                         
>                                                         dlg =
>                                                         IupDialog(hbox);
>                                                         IupSetAttributes(dlg, 
> "SIZE=500x240" );
>                                                         IupSetAttribute(dlg, 
> "TITLE", "IupPlot Example");
>                                                         
>                                                         InitPlots(); #
>                                                         It must be
>                                                         able to be
>                                                         done
>                                                         independent of
>                                                         dialog Mapping
>                                                         
>                                                         IupShowXY(dlg,
>                                                         IUP_CENTER,
>                                                         IUP_CENTER);
>                                                         IupSetAttribute(dlg, 
> "SIZE", C_NULL);
>                                                         
>                                                         IupMainLoop()
>                                                         IupClose()
>                                                         
>                                                         
>                                                         
>                                                         
>                                                         
>                                                                   Hi,
>                                                                 
>                                                                 
>                                                                   No,
>                                                                 only
>                                                                 IupImage is 
> accepted as an image handle in a control. So instead of using 
> imFileImageLoadBitmap, use IupLoadImage. It will use imFileImageLoadBitmap 
> internally and it will return an IupImage Ihandle* so you can use it in 
> IupSetAttributeHandle.
>                                                                 
>                                                                 
>                                                                 Best,
>                                                                 Scuri
>                                                                 
>                                                                 
>                                                                 
>                                                                 On
>                                                                 Wed,
>                                                                 May
>                                                                 20,
>                                                                 2015
>                                                                 at
>                                                                 11:24
>                                                                 AM,
>                                                                 Joaquim Luis 
> <jl...@ualg.pt> wrote:
>                                                                         Hi,
>                                                                         
>                                                                         How 
> can I plot an image in an axes with coordinates?
>                                                                         I 
> tried with IupPlot and attribute "BACKIMAGE", as in (in Julia)
>                                                                         
>                                                                         
>                                                                         error 
> = pointer([0])
>                                                                         
>                                                                         image 
> = imFileImageLoadBitmap("V://Capture.PNG", 0, error)
>                                                                         
>                                                                         
> IupSetAttributeHandle(plot[1], "BACKIMAGE", convert(Ptr{Void}, image));
>                                                                         
>                                                                         
>                                                                         but 
> get crashes from the C side saying
>                                                                         
>                                                                         
> Exception: EXCEPTION_ACCESS_VIOLATION at 0x7ffdca48afd2 -- iupTableGet at
>                                                                         
> C:\programs\compa_libs\iup\iup.DLL (unknown line)
>                                                                         
> iupTableGet at C:\programs\compa_libs\iup\iup.DLL (unknown line)
>                                                                         
> cdIupDrawImage at C:\programs\compa_libs\iup\iupcd.dll (unknown line)
>                                                                         ...
>                                                                         
>                                                                         Thanks
>                                                                         
>                                                                         
> Joaquim
>                                                                         
>                                                                         
> ------------------------------------------------------------------------------
>                                                                         One 
> dashboard for servers and applications across Physical-Virtual-Cloud
>                                                                         
> Widest out-of-the-box monitoring support with 50+ applications
>                                                                         
> Performance metrics, stats and reports that give you Actionable Insights
>                                                                         Deep 
> dive visibility with transaction tracing using APM Insight.
>                                                                         
> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>                                                                         
> _______________________________________________
>                                                                         
> Iup-users mailing list
>                                                                         
> Iup-users@lists.sourceforge.net
>                                                                         
> https://lists.sourceforge.net/lists/listinfo/iup-users
>                                                                         
>                                                                 
>                                                                 
>                                                         
>                                                         
>                                                         
>                                                         
>                                         
>                                         
>                                         
>                                         
>                                 
>                                 
>                         
>                         
>                         
>                         
>         
>         
>         
>         
> 
> 
> ------------------------------------------------------------------------------
> One dashboard for servers and applications across Physical-Virtual-Cloud 
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable Insights
> Deep dive visibility with transaction tracing using APM Insight.
> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________
> Iup-users mailing list
> Iup-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/iup-users



------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Iup-users mailing list
Iup-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/iup-users

Reply via email to