Mercurial > octave
annotate libinterp/corefcn/graphics-toolkit.h @ 27734:a9780be9ecbc
move graphics_toolkit class inside octave namespace
* graphics-toolkit.h, graphics-toolkit.cc: Move base_graphics_toolkit
and graphics_toolkit classes inside octave namespace. Change all
uses outside of octave namespace as needed. Provide deprecated
typedefs for old names in global namespace.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 21 Nov 2019 18:41:08 -0500 |
parents | 6dc797df4287 |
children | b442ec6dda5c |
rev | line source |
---|---|
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
1 /* |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
2 |
26376
00f796120a6d
maint: Update copyright dates in all source files.
John W. Eaton <jwe@octave.org>
parents:
25799
diff
changeset
|
3 Copyright (C) 2007-2019 John W. Eaton |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
4 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
5 This file is part of Octave. |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
6 |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
23774
diff
changeset
|
7 Octave is free software: you can redistribute it and/or modify it |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
8 under the terms of the GNU General Public License as published by |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
23774
diff
changeset
|
9 the Free Software Foundation, either version 3 of the License, or |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
10 (at your option) any later version. |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
11 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
12 Octave is distributed in the hope that it will be useful, but |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
13 WITHOUT ANY WARRANTY; without even the implied warranty of |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
15 GNU General Public License for more details. |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
16 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
17 You should have received a copy of the GNU General Public License |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
18 along with Octave; see the file COPYING. If not, see |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
23774
diff
changeset
|
19 <https://www.gnu.org/licenses/>. |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
20 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
21 */ |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
22 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
23 #if ! defined (octave_graphics_toolkit_h) |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
24 #define octave_graphics_toolkit_h 1 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
25 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
26 #include "octave-config.h" |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
27 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
28 #include <map> |
27732
da163456abb3
use std::shared_ptr to manage graphics_toolkit rep
John W. Eaton <jwe@octave.org>
parents:
27446
diff
changeset
|
29 #include <memory> |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
30 #include <string> |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
31 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
32 #include "dMatrix.h" |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
33 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
34 #include "Cell.h" |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
35 #include "error.h" |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
36 #include "graphics-handle.h" |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
37 |
27733
6dc797df4287
* graphics_toolkit.h: Style fixes. Use m_ prefix for member variables.
John W. Eaton <jwe@octave.org>
parents:
27732
diff
changeset
|
38 class graphics_object; |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
39 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
40 namespace octave |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
41 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
42 class graphics_toolkit; |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
43 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
44 class base_graphics_toolkit |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
45 { |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
46 public: |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
47 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
48 friend class graphics_toolkit; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
49 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
50 public: |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
51 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
52 base_graphics_toolkit (const std::string& nm) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
53 : m_name (nm) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
54 { } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
55 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
56 virtual ~base_graphics_toolkit (void) = default; |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
57 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
58 std::string get_name (void) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
59 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
60 return m_name; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
61 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
62 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
63 virtual bool is_valid (void) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
64 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
65 return false; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
66 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
67 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
68 virtual void redraw_figure (const graphics_object&) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
69 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
70 gripe_if_tkit_invalid ("redraw_figure"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
71 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
72 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
73 virtual void show_figure (const graphics_object&) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
74 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
75 gripe_if_tkit_invalid ("show_figure"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
76 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
77 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
78 virtual void print_figure (const graphics_object&, const std::string&, |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
79 const std::string&, |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
80 const std::string& = "") const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
81 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
82 gripe_if_tkit_invalid ("print_figure"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
83 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
84 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
85 virtual uint8NDArray get_pixels (const graphics_object&) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
86 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
87 gripe_if_tkit_invalid ("get_pixels"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
88 return uint8NDArray (); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
89 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
90 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
91 virtual Matrix get_canvas_size (const graphics_handle&) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
92 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
93 gripe_if_tkit_invalid ("get_canvas_size"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
94 return Matrix (1, 2, 0.0); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
95 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
96 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
97 virtual double get_screen_resolution (void) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
98 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
99 gripe_if_tkit_invalid ("get_screen_resolution"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
100 return 72.0; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
101 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
102 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
103 virtual Matrix get_screen_size (void) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
104 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
105 gripe_if_tkit_invalid ("get_screen_size"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
106 return Matrix (1, 2, 0.0); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
107 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
108 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
109 virtual Matrix get_text_extent (const graphics_object&) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
110 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
111 gripe_if_tkit_invalid ("get_text_extent"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
112 return Matrix (); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
113 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
114 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
115 // Callback function executed when the given graphics object |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
116 // changes. This allows the graphics toolkit to act on property |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
117 // changes if needed. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
118 virtual void update (const graphics_object&, int) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
119 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
120 gripe_if_tkit_invalid ("base_graphics_toolkit::update"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
121 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
122 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
123 void update (const graphics_handle&, int); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
124 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
125 // Callback function executed when the given graphics object is |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
126 // created. This allows the graphics toolkit to do toolkit-specific |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
127 // initializations for a newly created object. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
128 virtual bool initialize (const graphics_object&) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
129 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
130 gripe_if_tkit_invalid ("base_graphics_toolkit::initialize"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
131 return false; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
132 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
133 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
134 bool initialize (const graphics_handle&); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
135 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
136 // Callback function executed just prior to deleting the given |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
137 // graphics object. This allows the graphics toolkit to perform |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
138 // toolkit-specific cleanup operations before an object is deleted. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
139 virtual void finalize (const graphics_object&) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
140 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
141 gripe_if_tkit_invalid ("base_graphics_toolkit::finalize"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
142 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
143 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
144 void finalize (const graphics_handle&); |
25799
d04b74f5d02e
make shg and figure (N) activate and raise figure windows (bug #45943)
John W. Eaton <jwe@octave.org>
parents:
25054
diff
changeset
|
145 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
146 // Close the graphics toolkit. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
147 virtual void close (void) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
148 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
149 gripe_if_tkit_invalid ("base_graphics_toolkit::close"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
150 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
151 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
152 private: |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
153 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
154 std::string m_name; |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
155 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
156 private: |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
157 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
158 void gripe_if_tkit_invalid (const std::string& fname) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
159 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
160 if (! is_valid ()) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
161 error ("%s: invalid graphics toolkit", fname.c_str ()); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
162 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
163 }; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
164 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
165 class graphics_toolkit |
27733
6dc797df4287
* graphics_toolkit.h: Style fixes. Use m_ prefix for member variables.
John W. Eaton <jwe@octave.org>
parents:
27732
diff
changeset
|
166 { |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
167 public: |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
168 graphics_toolkit (const std::string& name = "unknown") |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
169 : m_rep (new base_graphics_toolkit (name)) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
170 { } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
171 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
172 // NEW_REP must be dynamically allocated. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
173 graphics_toolkit (base_graphics_toolkit *new_rep) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
174 : m_rep (std::shared_ptr<base_graphics_toolkit> (new_rep)) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
175 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
176 if (! m_rep) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
177 error ("invalid graphics_toolkit!"); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
178 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
179 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
180 graphics_toolkit (const graphics_toolkit& b) = default; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
181 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
182 graphics_toolkit& operator = (const graphics_toolkit& b) = default; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
183 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
184 ~graphics_toolkit (void) = default; |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
185 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
186 operator bool (void) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
187 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
188 return m_rep->is_valid (); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
189 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
190 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
191 std::string get_name (void) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
192 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
193 return m_rep->get_name (); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
194 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
195 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
196 void redraw_figure (const graphics_object& go) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
197 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
198 m_rep->redraw_figure (go); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
199 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
200 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
201 void show_figure (const graphics_object& go) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
202 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
203 m_rep->show_figure (go); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
204 } |
27254
e3d886685813
Let graphics toolkit compute the extent of uicontrol text strings (bug #48446)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26376
diff
changeset
|
205 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
206 void print_figure (const graphics_object& go, const std::string& term, |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
207 const std::string& file, |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
208 const std::string& debug_file = "") const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
209 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
210 m_rep->print_figure (go, term, file, debug_file); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
211 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
212 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
213 uint8NDArray get_pixels (const graphics_object& go) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
214 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
215 return m_rep->get_pixels (go); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
216 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
217 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
218 Matrix get_canvas_size (const graphics_handle& fh) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
219 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
220 return m_rep->get_canvas_size (fh); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
221 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
222 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
223 double get_screen_resolution (void) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
224 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
225 return m_rep->get_screen_resolution (); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
226 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
227 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
228 Matrix get_screen_size (void) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
229 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
230 return m_rep->get_screen_size (); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
231 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
232 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
233 Matrix get_text_extent (const graphics_object& go) const |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
234 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
235 return m_rep->get_text_extent (go); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
236 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
237 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
238 // Notifies graphics toolkit that object't property has changed. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
239 void update (const graphics_object& go, int id) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
240 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
241 m_rep->update (go, id); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
242 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
243 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
244 void update (const graphics_handle& h, int id) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
245 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
246 m_rep->update (h, id); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
247 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
248 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
249 // Notifies graphics toolkit that new object was created. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
250 bool initialize (const graphics_object& go) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
251 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
252 return m_rep->initialize (go); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
253 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
254 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
255 bool initialize (const graphics_handle& h) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
256 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
257 return m_rep->initialize (h); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
258 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
259 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
260 // Notifies graphics toolkit that object was destroyed. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
261 // This is called only for explicitly deleted object. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
262 // Children are deleted implicitly and graphics toolkit isn't notified. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
263 void finalize (const graphics_object& go) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
264 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
265 m_rep->finalize (go); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
266 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
267 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
268 void finalize (const graphics_handle& h) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
269 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
270 m_rep->finalize (h); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
271 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
272 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
273 // Close the graphics toolkit. |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
274 void close (void) |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
275 { |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
276 m_rep->close (); |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
277 } |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
278 |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
279 private: |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
280 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
281 std::shared_ptr<base_graphics_toolkit> m_rep; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
282 }; |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
283 } |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
284 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
285 OCTAVE_DEPRECATED (6, "use 'octave::graphics_toolkit' instead") |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
286 typedef octave::graphics_toolkit graphics_toolkit; |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
287 |
27734
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
288 OCTAVE_DEPRECATED (6, "use 'octave::base_graphics_toolkit' instead") |
a9780be9ecbc
move graphics_toolkit class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
27733
diff
changeset
|
289 typedef octave::base_graphics_toolkit base_graphics_toolkit; |
23774
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
290 |
41795b504a8b
don't use singleton for gtk_manager
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
291 #endif |