LiVES 3.2.0
ldvcallbacks.c
Go to the documentation of this file.
1// ldvcallbacks.c
2// LiVES
3// (c) G. Finch 2006 - 2015 <salsaman@gmail.com>
4// released under the GNU GPL 3 or later
5// see file ../COPYING for licensing details
6
7#include "main.h"
8#include "ldvcallbacks.h"
9#include "ldvinterface.h"
10
11void on_camgrab_clicked(LiVESButton *button, livespointer user_data) {
12 s_cam *cam = (s_cam *)user_data;
13
14 char *msg;
15
18 if (!dvgrabw->filename) return;
19
22
23 if (!dvgrabw->playing) on_camplay_clicked(NULL, user_data);
24
26 dvgrabw->dirname = lives_strdup(lives_entry_get_text(LIVES_ENTRY(dvgrabw->dirent)));
27
28 msg = lives_strdup_printf(_("Recording to %s/%s"), dvgrabw->dirname, dvgrabw->filename);
29 lives_entry_set_text(LIVES_ENTRY(dvgrabw->status_entry), msg);
30 lives_free(msg);
31
32 if (cam->format == CAM_FORMAT_DV) {
33 dvgrabw->filename = lives_strdup(lives_entry_get_text(LIVES_ENTRY(dvgrabw->filent)));
34 }
35 rec(cam);
36 cam->grabbed_clips = TRUE;
37}
38
39
40void on_camstop_clicked(LiVESButton *button, livespointer user_data) {
41 s_cam *cam = (s_cam *)user_data;
42
45
46 if (cam->format == CAM_FORMAT_DV) {
47 if (cam->pgid != 0) lives_killpg(cam->pgid, LIVES_SIGTERM);
48 cam->pgid = 0;
49 }
50
52
53 camstop(cam);
54
57 lives_entry_set_text(LIVES_ENTRY(dvgrabw->status_entry), _("Status: Ready"));
58}
59
60
61void on_camplay_clicked(LiVESButton *button, livespointer user_data) {
62 s_cam *cam = (s_cam *)user_data;
63
64 camplay(cam);
66 if (dvgrabw->playing) {
68 } else {
70 }
72}
73
74
75void on_camrew_clicked(LiVESButton *button, livespointer user_data) {
76 s_cam *cam = (s_cam *)user_data;
77 camrew(cam);
79}
80
81
82void on_camff_clicked(LiVESButton *button, livespointer user_data) {
83 s_cam *cam = (s_cam *)user_data;
84 camff(cam);
86}
87
88
89void on_cameject_clicked(LiVESButton *button, livespointer user_data) {
90 s_cam *cam = (s_cam *)user_data;
91 cameject(cam);
92}
93
94
95void on_camquit_clicked(LiVESButton *button, livespointer user_data) {
96 s_cam *cam = (s_cam *)user_data;
97
98 on_camstop_clicked(button, user_data);
99 //if (cam->format==CAM_FORMAT_HDV) close_raw1394(cam->rec_handle);
105 (_("\nClips grabbed from the device can now be loaded with File|Open File/Directory.\n"),
107
108 if (mainw->multitrack) {
111 }
112}
113
LiVESResponseType do_error_dialog_with_check(const char *text, uint64_t warn_mask_number)
Definition: dialogs.c:800
void on_camrew_clicked(LiVESButton *button, livespointer user_data)
Definition: ldvcallbacks.c:75
void on_cameject_clicked(LiVESButton *button, livespointer user_data)
Definition: ldvcallbacks.c:89
void on_camquit_clicked(LiVESButton *button, livespointer user_data)
Definition: ldvcallbacks.c:95
void on_camgrab_clicked(LiVESButton *button, livespointer user_data)
Definition: ldvcallbacks.c:11
void on_camplay_clicked(LiVESButton *button, livespointer user_data)
Definition: ldvcallbacks.c:61
void on_camstop_clicked(LiVESButton *button, livespointer user_data)
Definition: ldvcallbacks.c:40
void on_camff_clicked(LiVESButton *button, livespointer user_data)
Definition: ldvcallbacks.c:82
void camstop(s_cam *cam)
Definition: ldvgrab.c:184
void cameject(s_cam *cam)
Definition: ldvgrab.c:205
void camplay(s_cam *cam)
Definition: ldvgrab.c:179
void camrew(s_cam *cam)
Definition: ldvgrab.c:190
char * find_free_camfile(int format)
Definition: ldvgrab.c:212
boolean rec(s_cam *cam)
Definition: ldvgrab.c:248
void camff(s_cam *cam)
Definition: ldvgrab.c:195
struct _dvgrabw * dvgrabw
Definition: ldvgrab.h:61
#define CAM_FORMAT_DV
Definition: ldvgrab.h:14
#define lives_free
Definition: machinestate.h:52
mainwindow * mainw
Definition: main.c:103
int lives_killpg(lives_pgid_t pgrp, int sig)
Definition: utils.c:1432
#define LIVES_SIGTERM
Definition: mainwindow.h:1862
uint32_t mt_idle_add(lives_mt *mt)
Definition: multitrack.c:901
void mt_sensitise(lives_mt *mt)
Definition: multitrack.c:17052
#define WARN_MASK_AFTER_DVGRAB
Definition: preferences.h:108
LiVESWidget * filent
Definition: ldvgrab.h:45
LiVESXCursor * cursor
Definition: ldvgrab.h:53
LiVESWidget * status_entry
Definition: ldvgrab.h:51
LiVESWidget * dirent
Definition: ldvgrab.h:46
LiVESWidget * play
Definition: ldvgrab.h:49
char * filename
Definition: ldvgrab.h:56
LiVESWidget * stop
Definition: ldvgrab.h:47
char * dirname
Definition: ldvgrab.h:55
boolean playing
Definition: ldvgrab.h:54
LiVESWidget * dialog
Definition: ldvgrab.h:44
LiVESWidget * grab
Definition: ldvgrab.h:48
lives_mt * multitrack
holds a pointer to the entire multitrack environment; NULL in Clip Edit mode
Definition: mainwindow.h:1087
Definition: ldvgrab.h:17
lives_pgid_t pgid
Definition: ldvgrab.h:23
boolean grabbed_clips
Definition: ldvgrab.h:22
int format
Definition: ldvgrab.h:21
#define lives_strdup_printf(fmt,...)
Definition: support.c:27
#define _(String)
Definition: support.h:44
#define TRUE
Definition: videoplugin.h:59
#define FALSE
Definition: videoplugin.h:60
void lives_set_cursor_style(lives_cursor_t cstyle, LiVESWidget *widget)
WIDGET_HELPER_GLOBAL_INLINE boolean lives_cursor_unref(LiVESXCursor *cursor)
WIDGET_HELPER_GLOBAL_INLINE const char * lives_entry_get_text(LiVESEntry *entry)
WIDGET_HELPER_GLOBAL_INLINE boolean lives_widget_set_sensitive(LiVESWidget *widget, boolean state)
LIVES_GLOBAL_INLINE boolean lives_widget_destroy(LiVESWidget *widget)
WIDGET_HELPER_GLOBAL_INLINE boolean lives_entry_set_text(LiVESEntry *entry, const char *text)
WIDGET_HELPER_GLOBAL_INLINE boolean lives_button_set_label(LiVESButton *button, const char *label)
@ LIVES_CURSOR_NORMAL
must be zero
@ LIVES_CURSOR_BUSY
char LIVES_STOCK_LABEL_MEDIA_PAUSE[32]
char LIVES_STOCK_LABEL_MEDIA_PLAY[32]