Mercurial > octave-dspies
comparison libinterp/corefcn/graphics.cc @ 18576:cd83730e5e38
maint: Periodic merge of gui-release to default.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 20 Mar 2014 12:31:19 -0400 |
parents | 5264b0ec9f97 ca1648b2e673 |
children | 2deed6538c72 |
comparison
equal
deleted
inserted
replaced
18571:89a8a90ac850 | 18576:cd83730e5e38 |
---|---|
9730 return retval; | 9730 return retval; |
9731 } | 9731 } |
9732 | 9732 |
9733 gtk_manager *gtk_manager::instance = 0; | 9733 gtk_manager *gtk_manager::instance = 0; |
9734 | 9734 |
9735 gtk_manager::gtk_manager (void) | |
9736 : dtk (), available_toolkits (), loaded_toolkits () | |
9737 { | |
9738 #if defined (HAVE_QT) | |
9739 dtk = display_info::display_available () ? "qt" : "gnuplot"; | |
9740 #elif defined (HAVE_FLTK) | |
9741 dtk = display_info::display_available () ? "fltk" : "gnuplot"; | |
9742 #else | |
9743 dtk = "gnuplot"; | |
9744 #endif | |
9745 } | |
9746 | |
9747 void | 9735 void |
9748 gtk_manager::create_instance (void) | 9736 gtk_manager::create_instance (void) |
9749 { | 9737 { |
9750 instance = new gtk_manager (); | 9738 instance = new gtk_manager (); |
9751 | 9739 |
9784 } | 9772 } |
9785 else | 9773 else |
9786 retval = pl->second; | 9774 retval = pl->second; |
9787 | 9775 |
9788 return retval; | 9776 return retval; |
9777 } | |
9778 | |
9779 void | |
9780 gtk_manager::do_register_toolkit (const std::string& name) | |
9781 { | |
9782 if (dtk.empty () || name == "qt" | |
9783 || (name == "fltk" | |
9784 && available_toolkits.find ("qt") == available_toolkits.end ())) | |
9785 dtk = name; | |
9786 | |
9787 available_toolkits.insert (name); | |
9788 } | |
9789 | |
9790 void | |
9791 gtk_manager::do_unregister_toolkit (const std::string& name) | |
9792 { | |
9793 available_toolkits.erase (name); | |
9794 | |
9795 if (dtk == name) | |
9796 { | |
9797 if (available_toolkits.empty ()) | |
9798 dtk.clear (); | |
9799 else | |
9800 { | |
9801 const_available_toolkits_iterator pa = available_toolkits.begin (); | |
9802 | |
9803 dtk = *pa++; | |
9804 | |
9805 while (pa != available_toolkits.end ()) | |
9806 { | |
9807 std::string name = *pa++; | |
9808 | |
9809 if (name == "qt" | |
9810 || (name == "fltk" | |
9811 && available_toolkits.find ("qt") == available_toolkits.end ())) | |
9812 dtk = name; | |
9813 } | |
9814 } | |
9815 } | |
9789 } | 9816 } |
9790 | 9817 |
9791 DEFUN (available_graphics_toolkits, , , | 9818 DEFUN (available_graphics_toolkits, , , |
9792 "-*- texinfo -*-\n\ | 9819 "-*- texinfo -*-\n\ |
9793 @deftypefn {Built-in Function} {} available_graphics_toolkits ()\n\ | 9820 @deftypefn {Built-in Function} {} available_graphics_toolkits ()\n\ |