projects
/
goodguy
/
history.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rework histogram_bezier, init wm icon set_icon(gg), update de.po+msg/txt
[goodguy/history.git]
/
cinelerra-5.1
/
cinelerra
/
canvas.C
diff --git
a/cinelerra-5.1/cinelerra/canvas.C
b/cinelerra-5.1/cinelerra/canvas.C
index 3e7ee0be96c1e6427b9e2f8140cee1d891514368..2b3953002d58cc03f8dc56321dd223baea9ede1e 100644
(file)
--- a/
cinelerra-5.1/cinelerra/canvas.C
+++ b/
cinelerra-5.1/cinelerra/canvas.C
@@
-773,6
+773,10
@@
void Canvas::create_canvas()
if(video_on) get_canvas()->start_video();
if(video_on) get_canvas()->start_video();
+ get_canvas()->lock_window("Canvas::create_canvas 2");
+ get_canvas()->focus();
+ get_canvas()->unlock_window();
+
unlock_canvas();
}
unlock_canvas();
}
@@
-840,7
+844,16
@@
void Canvas::update_refresh(VideoDevice *device, VFrame *output_frame)
// OpenGL does YUV->RGB in the compositing step
if( use_opengl )
best_color_model = BC_RGB888;
// OpenGL does YUV->RGB in the compositing step
if( use_opengl )
best_color_model = BC_RGB888;
-
+ else if( BC_CModels::has_alpha(best_color_model) ) {
+ best_color_model =
+ BC_CModels::is_float(best_color_model ) ?
+ BC_RGB_FLOAT :
+ BC_CModels::is_yuv(best_color_model ) ?
+ ( BC_CModels::calculate_pixelsize(best_color_model) > 8 ?
+ BC_YUV161616 : BC_YUV888 ) :
+ ( BC_CModels::calculate_pixelsize(best_color_model) > 8 ?
+ BC_RGB161616 : BC_RGB888 ) ;
+ }
int out_w = output_frame->get_w();
int out_h = output_frame->get_h();
if( refresh_frame &&
int out_w = output_frame->get_w();
int out_h = output_frame->get_h();
if( refresh_frame &&
@@
-865,7
+878,7
@@
void Canvas::update_refresh(VideoDevice *device, VFrame *output_frame)
get_canvas()->lock_window(" Canvas::output_refresh");
}
else
get_canvas()->lock_window(" Canvas::output_refresh");
}
else
- refresh_frame->
copy_from(output_frame
);
+ refresh_frame->
transfer_from(output_frame, -1
);
}
}
@@
-928,26
+941,8
@@
int CanvasOutput::keypress_event()
-
-
-
-
-
-
-
-
-
-
-CanvasFullScreen::CanvasFullScreen(Canvas *canvas,
- int w,
- int h)
- : BC_FullScreen(canvas->subwindow,
- w,
- h,
- BLACK,
- 0,
- 0,
- 0)
+CanvasFullScreen::CanvasFullScreen(Canvas *canvas, int w, int h)
+ : BC_FullScreen(canvas->subwindow, w, h, BLACK, 0, 0, 0)
{
this->canvas = canvas;
}
{
this->canvas = canvas;
}
@@
-957,32
+952,9
@@
CanvasFullScreen::~CanvasFullScreen()
}
}
-
-
-
-
-
-
-
-
-
-
-
-CanvasXScroll::CanvasXScroll(EDL *edl,
- Canvas *canvas,
- int x,
- int y,
- int length,
- int position,
- int handle_length,
- int pixels)
- : BC_ScrollBar(x,
- y,
- SCROLL_HORIZ,
- pixels,
- length,
- position,
- handle_length)
+CanvasXScroll::CanvasXScroll(EDL *edl, Canvas *canvas, int x, int y,
+ int length, int position, int handle_length, int pixels)
+ : BC_ScrollBar(x, y, SCROLL_HORIZ, pixels, length, position, handle_length)
{
this->canvas = canvas;
}
{
this->canvas = canvas;
}
@@
-1000,25
+972,9
@@
int CanvasXScroll::handle_event()
}
}
-
-
-
-
-CanvasYScroll::CanvasYScroll(EDL *edl,
- Canvas *canvas,
- int x,
- int y,
- int length,
- int position,
- int handle_length,
- int pixels)
- : BC_ScrollBar(x,
- y,
- SCROLL_VERT,
- pixels,
- length,
- position,
- handle_length)
+CanvasYScroll::CanvasYScroll(EDL *edl, Canvas *canvas, int x, int y,
+ int length, int position, int handle_length, int pixels)
+ : BC_ScrollBar(x, y, SCROLL_VERT, pixels, length, position, handle_length)
{
this->canvas = canvas;
}
{
this->canvas = canvas;
}
@@
-1036,10
+992,6
@@
int CanvasYScroll::handle_event()
}
}
-
-
-
-
CanvasFullScreenPopup::CanvasFullScreenPopup(Canvas *canvas)
: BC_PopupMenu(0, 0, 0, "", 0)
{
CanvasFullScreenPopup::CanvasFullScreenPopup(Canvas *canvas)
: BC_PopupMenu(0, 0, 0, "", 0)
{
@@
-1074,12
+1026,6
@@
int CanvasSubWindowItem::handle_event()
}
}
-
-
-
-
-
-
CanvasPopup::CanvasPopup(Canvas *canvas)
: BC_PopupMenu(0, 0, 0, "", 0)
{
CanvasPopup::CanvasPopup(Canvas *canvas)
: BC_PopupMenu(0, 0, 0, "", 0)
{