r125: This commit was manufactured by cvs2svn to create tag 'r1_1_7-last'.
[cinelerra_cv/mob.git] / hvirtual / cinelerra / assetedit.h
blob4266cb90baaeb036f83d30262533ab67007a89a9
1 #ifndef ASSETEDIT_H
2 #define ASSETEDIT_H
4 #include "assets.inc"
5 #include "awindow.inc"
6 #include "guicast.h"
7 #include "bitspopup.inc"
8 #include "browsebutton.h"
9 #include "formatpopup.h"
10 #include "mwindow.h"
11 #include "thread.h"
13 #include <libintl.h>
14 #define _(String) gettext(String)
15 #define gettext_noop(String) String
16 #define N_(String) gettext_noop (String)
18 class AssetEditByteOrderHILO;
19 class AssetEditByteOrderLOHI;
20 class AssetEditPath;
21 class AssetEditPathText;
22 class AssetEditWindow;
24 class AssetEdit : public Thread
26 public:
27 AssetEdit(MWindow *mwindow);
28 ~AssetEdit();
30 void edit_asset(Asset *asset);
31 int set_asset(Asset *asset);
32 void run();
34 Asset *asset, *new_asset;
35 MWindow *mwindow;
36 AssetEditWindow *window;
41 // Pcm is the only format users should be able to fix.
42 // All other formats display information about the file in read-only.
44 class AssetEditWindow : public BC_Window
46 public:
47 AssetEditWindow(MWindow *mwindow, AssetEdit *asset_edit);
48 ~AssetEditWindow();
50 int create_objects();
51 Asset *asset;
52 AssetEditPathText *path_text;
53 AssetEditPath *path_button;
54 AssetEditByteOrderHILO *hilo;
55 AssetEditByteOrderLOHI *lohi;
56 BitsPopup *bitspopup;
57 int allow_edits;
58 MWindow *mwindow;
59 AssetEdit *asset_edit;
63 class AssetEditPath : public BrowseButton
65 public:
66 AssetEditPath(MWindow *mwindow, AssetEditWindow *fwindow, BC_TextBox *textbox, int y, char *text, char *window_title = "2000: Path", char *window_caption = _("Select a file"));
67 ~AssetEditPath();
69 AssetEditWindow *fwindow;
73 class AssetEditPathText : public BC_TextBox
75 public:
76 AssetEditPathText(AssetEditWindow *fwindow, int y);
77 ~AssetEditPathText();
78 int handle_event();
80 AssetEditWindow *fwindow;
85 class AssetEditFormat : public FormatPopup
87 public:
88 AssetEditFormat(AssetEditWindow *fwindow, char* default_, int y);
89 ~AssetEditFormat();
91 int handle_event();
92 AssetEditWindow *fwindow;
96 class AssetEditChannels : public BC_TumbleTextBox
98 public:
99 AssetEditChannels(AssetEditWindow *fwindow, char *text, int x, int y);
101 int handle_event();
103 AssetEditWindow *fwindow;
106 class AssetEditRate : public BC_TextBox
108 public:
109 AssetEditRate(AssetEditWindow *fwindow, char *text, int x, int y);
111 int handle_event();
113 AssetEditWindow *fwindow;
116 class AssetEditFRate : public BC_TextBox
118 public:
119 AssetEditFRate(AssetEditWindow *fwindow, char *text, int x, int y);
121 int handle_event();
123 AssetEditWindow *fwindow;
126 class AssetEditHeader : public BC_TextBox
128 public:
129 AssetEditHeader(AssetEditWindow *fwindow, char *text, int x, int y);
131 int handle_event();
133 AssetEditWindow *fwindow;
136 class AssetEditByteOrderLOHI : public BC_Radial
138 public:
139 AssetEditByteOrderLOHI(AssetEditWindow *fwindow, int value, int x, int y);
141 int handle_event();
143 AssetEditWindow *fwindow;
146 class AssetEditByteOrderHILO : public BC_Radial
148 public:
149 AssetEditByteOrderHILO(AssetEditWindow *fwindow, int value, int x, int y);
151 int handle_event();
153 AssetEditWindow *fwindow;
156 class AssetEditSigned : public BC_CheckBox
158 public:
159 AssetEditSigned(AssetEditWindow *fwindow, int value, int x, int y);
161 int handle_event();
163 AssetEditWindow *fwindow;
166 #endif