I forgot about the diff link. https://github.com/fariza/matplotlib/compare/tabbed-gtk3-figuremanager
I try to place everything where it is supposed to go (backend_bases) On Wed, Sep 18, 2013 at 8:38 AM, Phil Elson <pelson....@gmail.com> wrote: > > No need to be nervous. We are a friendly bunch and this is cool stuff. > > I haven't looked at your code (a diff link would be useful), but the obvious > first questions would be: > > Can I display multiple tabs at the same time (i.e. tab splitting) At first sight, I do not see why not, the multiFigureBackend just controls adding, removing and switching from one figure to another. Giving the toolbar control to the active figure. > If so, can I programatically control the splitting? I was thinking about this, and I think it is possible to add as many instances of the MultiFigureManager as we want, and place figures in the desired one. Removing and adding them is also possible. > > On that front, did you consider looking at implementing the tabbing in > matplotlib itself? Obviously there is nothing there at the moment, but it is > conceivable that "tab" buttons could be added to a special "figure" which > when clicked change which figure is being rendered in the plot area. Doing so > would mean that your GUI doesn't look like native tabs, but it would mean > that it would instantly work on all interactive backends. Just a thought. > I did not think about this, but to be honest, I do not like the matplotlib widgets :( > Anyway, I'm not sure how we take this forward - I can't imagine we would want > to take on a whole new set of backends for tabbed browsing specifically, but > it could potentially be integrated together with the existing backends I > suppose. As I tried to implement it, if the corresponding MultiFigureBackend is implemented for the selected backend, and matplotlib.rcParams['backend.single_window'] = True This will be loaded if not, the traditional backend work as always. Of course all of these possibilities have to be tested, to see... > > Nice work! > > Phil > > > > > > On 18 September 2013 01:07, Federico Ariza <ariza.feder...@gmail.com> wrote: >> >> Hello everybody: >> >> This is my first post here, I am a little bit nervous, because this is my >> first post :D, and also because I want to talk about a touchy subject.... >> >> In my work I have developped several backends to manage multiple figures at >> the same time, from what I see around, this is something that could be of >> interest for many people. >> I have done it in gtk, wx, tk, and now I am doing it again in gtk3. >> >> So I thought it would be nice to try to run this idea by you. >> If you look at the attached images, you will see what I mean. >> >> The code is in >> https://github.com/fariza/matplotlib/tree/tabbed-gtk3-figuremanager >> >> >> I know I should have done another file for the figure manager, but because >> it sits in between backend_bases.py and backend_gtk3xxx.py It was easier for >> me to test directly inside backend_gtk3.py >> >> Other think that I dislike, is that to extend the current backend, you have >> to get your hands pretty dirty and understand alot of things to make sense >> of how things work. >> >> I modified examples/pylab_examples/multiple_figs_demo.py >> to show it working. >> >> In the example, I added a stupid class, to show how can we attach external >> tools to the toolbar without complex manipulations. >> Also, this could be used to produce a tools library, and keeps things clean, >> in gtk3 backend there is a DialogLineprops, in qt there are other things >> similar, but all of them are separated and can not be reused.... >> >> Take a look and let me know what you think. >> The only think needed to run with other examples is to use (gtk3 agg or >> cairo) and set the rcparam >> >> matplotlib.use('gtk3agg') >> matplotlib.rcParams['backend.gtk3.tabbed'] = True >> >> I tried to comment the code, but not to document it, because I want to have >> feedback before investing time in documenting something that maybe will be >> only for me. >> >> Thanks >> Federico >> >> >> >> >> >> -- >> Y yo que culpa tengo de que ellas se crean todo lo que yo les digo? >> >> -- Antonio Alducin -- >> >> ------------------------------------------------------------------------------ >> LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! >> 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint >> 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack >> includes >> Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. >> http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk >> _______________________________________________ >> Matplotlib-devel mailing list >> Matplotlib-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel >> > -- Y yo que culpa tengo de que ellas se crean todo lo que yo les digo? -- Antonio Alducin - ------------------------------------------------------------------------------ LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk _______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel