Module: Rabbit::Renderer::Display::DrawingAreaBase
- Includes:
- ButtonHandler, DrawingAreaPrimitive, Gesture, Graffiti, Info, KeyHandler, Magnifier, Mask, Menu, Progress, ScrollHandler, Search, Spotlight
- Included in:
- DrawingArea
- Defined in:
- lib/rabbit/renderer/display/drawing-area-base.rb
Constant Summary
ButtonHandler::BUTTON_PRESS_ACCEPTING_TIME
Constants included
from Mask
Mask::MASK_SIZE_STEP
Constants included
from DirtyCount
DirtyCount::TOO_DIRTY
Constants included
from GetText
GetText::DOMAIN
Instance Attribute Summary
#filename
Attributes included from Base
#adjustment_x, #adjustment_y, #base_height, #base_width, #draw_scaled_image, #gl_quaternion, #gl_scale, #graffiti_color, #graffiti_line_width, #margin_bottom, #margin_left, #margin_right, #margin_top, #page_margin_bottom, #page_margin_left, #page_margin_right, #page_margin_top, #paper_height, #paper_width, #progress_background, #progress_foreground, #slides_per_page
Instance Method Summary
collapse
Methods included from Magnifier
#toggle_magnifier
Methods included from Spotlight
#toggle_spotlight
Methods included from Info
#hide_info_window, #post_move_in_slide, #show_info_window, #toggle_info_window
Methods included from KeyHandler
#connect_key, #disconnect_key, #post_terminal, #pre_terminal
Methods included from Search
#search_slide, #searching?, #stop_slide_search
Methods included from Mask
#expand_hole, #narrow_hole, #set_hole
Methods included from Graffiti
#can_undo_graffiti?, #change_graffiti_color, #clear_graffiti, #graffiti_mode?, #have_graffiti?, #toggle_graffiti_mode, #undo_graffiti
#clear_slide, #display?, #post_move_in_slide, #widget
Methods included from Base
#create_pango_context, #create_pango_layout, #height, #make_layout, #redraw, #size, #update_title, #width
#add_button_press_hook, #add_button_release_hook, #add_motion_notify_hook, #add_scroll_hook, #call_hook_procs, #clear_button_press_hook, #clear_button_release_hook, #clear_hooks, #clear_motion_notify_hook, #clear_scroll_hook
Methods included from Base
#add_gesture_action, #blackouting?, #can_undo_graffiti?, #change_graffiti_color, #clean, #clean_if_dirty, #clear_slide, #clear_theme, #connect_key, #create_pango_context, #disconnect_key, #display?, #each_slide_pixbuf, #expand_hole, #font_families, #gl_available?, #graffiti_mode?, #have_graffiti?, #hiding?, #narrow_hole, #offscreen_canvas, #post_terminal, #pre_terminal, #print, #printable?, #redraw, #search_slide, #searching?, #setup_event, #stop_slide_search, #toggle_info_window, #toggle_spotlight, #whiteouting?
Methods included from DirtyCount
#bit_dirty, #dirty, #dirty?, #dirty_count_clean, #very_dirty
Methods included from GetText
included
Instance Method Details
permalink
#attach_to(window, container = nil, &block) ⇒ Object
[View source]
219
220
221
222
223
224
225
226
227
228
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 219
def attach_to(window, container=nil, &block)
super
init_gesture_actions
add_widgets_to_container(@container, &block)
widget.show
(@window)
attach_key(@window)
end
|
permalink
#cache_all_slides ⇒ Object
[View source]
157
158
159
160
161
162
163
164
165
166
167
168
169
170
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 157
def cache_all_slides
pre_cache_all_slides(@canvas.slide_size)
canceled = false
@canvas.slides.each_with_index do |slide, i|
@canvas.change_current_index(i) do
compile_slide(slide)
end
unless caching_all_slides(i)
canceled = true
break
end
end
post_cache_all_slides(canceled)
end
|
permalink
#caching_all_slides(i) ⇒ Object
[View source]
178
179
180
181
182
183
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 178
def caching_all_slides(i)
update_progress(i)
continue = @caching_size == [width, height] &&
!@canvas.quitted? && !@canvas.applying?
continue
end
|
permalink
#confirm(message) ⇒ Object
[View source]
196
197
198
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 196
def confirm(message)
confirm_dialog(message) == Gtk::ResponseType::OK
end
|
[View source]
230
231
232
233
234
235
236
237
238
239
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 230
def detach
detach_key(@window)
(@window)
widget.hide
unless @window.destroyed?
remove_widgets_from_container(@container)
end
super
end
|
permalink
#draw_slide(slide, simulation, &block) ⇒ Object
[View source]
259
260
261
262
263
264
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 259
def draw_slide(slide, simulation, &block)
super do |*args|
block.call(*args)
magnify {block.call(*args)} unless simulation
end
end
|
permalink
#index_mode_off ⇒ Object
[View source]
109
110
111
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 109
def index_mode_off
super
end
|
permalink
#index_mode_on ⇒ Object
[View source]
105
106
107
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 105
def index_mode_on
super
end
|
permalink
#initialize(canvas) ⇒ Object
[View source]
50
51
52
53
54
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 50
def initialize(canvas)
@caching = nil
@need_reload_theme = false
super
end
|
permalink
#post_apply_theme ⇒ Object
[View source]
56
57
58
59
60
61
62
63
64
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 56
def post_apply_theme
if @need_reload_theme
@need_reload_theme = false
reload_theme
else
super
end
end
|
permalink
#post_cache_all_slides(canceled) ⇒ Object
[View source]
185
186
187
188
189
190
191
192
193
194
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 185
def post_cache_all_slides(canceled)
end_progress
@caching = false
return if @canvas.quitted?
if canceled
reload_theme
else
@area.queue_draw
end
end
|
permalink
#post_fullscreen ⇒ Object
[View source]
74
75
76
77
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 74
def post_fullscreen
super
end
|
permalink
#post_iconify ⇒ Object
[View source]
84
85
86
87
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 84
def post_iconify
super
end
|
permalink
#post_init_gui ⇒ Object
[View source]
256
257
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 256
def post_init_gui
end
|
permalink
#post_move(old_index, index) ⇒ Object
[View source]
66
67
68
69
70
71
72
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 66
def post_move(old_index, index)
update_title
reset_adjustment
clear_graffiti
super
end
|
permalink
#post_parse ⇒ Object
[View source]
94
95
96
97
98
99
100
101
102
103
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 94
def post_parse
super
clear_button_handler
update_title
if @need_reload_theme
@need_reload_theme = false
reload_theme
end
end
|
permalink
#post_print(canceled) ⇒ Object
[View source]
135
136
137
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 135
def post_print(canceled)
end_progress
end
|
permalink
#post_to_pixbuf(canceled) ⇒ Object
[View source]
152
153
154
155
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 152
def post_to_pixbuf(canceled)
super
end_progress
end
|
permalink
#post_toggle_index_mode ⇒ Object
[View source]
118
119
120
121
122
123
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 118
def post_toggle_index_mode
@canvas.activate("ClearGraffiti")
update_title
super
end
|
permalink
#post_unfullscreen ⇒ Object
[View source]
79
80
81
82
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 79
def post_unfullscreen
super
end
|
permalink
#pre_cache_all_slides(slide_size) ⇒ Object
[View source]
172
173
174
175
176
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 172
def pre_cache_all_slides(slide_size)
@caching = true
@caching_size = [width, height]
start_progress(slide_size)
end
|
permalink
#pre_parse ⇒ Object
[View source]
89
90
91
92
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 89
def pre_parse
super
end
|
permalink
#pre_print(slide_size) ⇒ Object
[View source]
125
126
127
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 125
def pre_print(slide_size)
start_progress(slide_size)
end
|
permalink
#pre_to_pixbuf(slide_size) ⇒ Object
[View source]
139
140
141
142
143
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 139
def pre_to_pixbuf(slide_size)
super
start_progress(slide_size)
@pixbufing_size = [width, height]
end
|
permalink
#printing(i) ⇒ Object
[View source]
129
130
131
132
133
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 129
def printing(i)
update_progress(i)
continue = !@canvas.quitted?
continue
end
|
permalink
#reload_source(&callback) ⇒ Object
[View source]
208
209
210
211
212
213
214
215
216
217
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 208
def reload_source(&callback)
if @canvas.need_reload_source?
callback ||= Utils.process_pending_events_proc
begin
super(callback)
rescue
@canvas.logger.error($!)
end
end
end
|
permalink
#reload_theme(&callback) ⇒ Object
[View source]
200
201
202
203
204
205
206
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 200
def reload_theme(&callback)
if @canvas.applying?
@need_reload_theme = true
else
super
end
end
|
permalink
#reset_adjustment ⇒ Object
[View source]
251
252
253
254
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 251
def reset_adjustment
super
@area.queue_draw
end
|
permalink
#to_pixbufing(i) ⇒ Object
[View source]
145
146
147
148
149
150
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 145
def to_pixbufing(i)
update_progress(i)
continue = @pixbufing_size == [width, height] &&
!@canvas.quitted? && !@canvas.applying?
super or continue
end
|
permalink
#toggle_blackout ⇒ Object
[View source]
246
247
248
249
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 246
def toggle_blackout
super
@area.queue_draw
end
|
permalink
#toggle_whiteout ⇒ Object
[View source]
241
242
243
244
|
# File 'lib/rabbit/renderer/display/drawing-area-base.rb', line 241
def toggle_whiteout
super
@area.queue_draw
end
|