comparison libinterp/corefcn/graphics.in.h @ 18557:ca1648b2e673 gui-release

set default toolkit when registering toolkits (bug #41665). * graphics.in.h, graphics.cc (gtk_manager::gtk_manager): Don't set default toolkit. (gtk_manager::do_register_toolkit): Set default toolkit here. (gtk_manager::do_unregister_toolkit): If removing default toolkit, reset it using same rules as in do_register_toolkit.
author Michael C. Grant <mcg@cvxr.com> and John W. Eaton <jwe@octave.org>
date Mon, 10 Mar 2014 10:46:37 -0500
parents ebb3ef964372
children cd83730e5e38 b314efd58072
comparison
equal deleted inserted replaced
18556:4daf647c86c3 18557:ca1648b2e673
2271 return instance_ok () ? instance->do_default_toolkit () : std::string (); 2271 return instance_ok () ? instance->do_default_toolkit () : std::string ();
2272 } 2272 }
2273 2273
2274 private: 2274 private:
2275 2275
2276 gtk_manager (void); 2276 gtk_manager (void) { }
2277 2277
2278 ~gtk_manager (void) { } 2278 ~gtk_manager (void) { }
2279 2279
2280 OCTINTERP_API static void create_instance (void); 2280 OCTINTERP_API static void create_instance (void);
2281 2281
2320 typedef std::map<std::string, graphics_toolkit>::const_iterator 2320 typedef std::map<std::string, graphics_toolkit>::const_iterator
2321 const_loaded_toolkits_iterator; 2321 const_loaded_toolkits_iterator;
2322 2322
2323 graphics_toolkit do_get_toolkit (void) const; 2323 graphics_toolkit do_get_toolkit (void) const;
2324 2324
2325 void do_register_toolkit (const std::string& name) 2325 void do_register_toolkit (const std::string& name);
2326 { 2326
2327 available_toolkits.insert (name); 2327 void do_unregister_toolkit (const std::string& name);
2328 }
2329
2330 void do_unregister_toolkit (const std::string& name)
2331 {
2332 available_toolkits.erase (name);
2333 }
2334 2328
2335 void do_load_toolkit (const graphics_toolkit& tk) 2329 void do_load_toolkit (const graphics_toolkit& tk)
2336 { 2330 {
2337 loaded_toolkits[tk.get_name ()] = tk; 2331 loaded_toolkits[tk.get_name ()] = tk;
2338 } 2332 }