+++ /dev/null
-#ifndef __SWINDOW_H__
-#define __SWINDOW_H__
-
-#include <stdio.h>
-#include <stdint.h>
-
-#include "arraylist.h"
-#include "guicast.h"
-#include "mwindow.inc"
-#include "swindow.inc"
-
-class SWindow : public Thread
-{
-public:
- MWindow *mwindow;
- Mutex *window_lock;
- Condition *swin_lock;
- SWindowGUI *gui;
-
- void start();
- void stop();
- void run();
- void run_swin();
- void paste_subttl();
- int update_selection();
- int done, gui_done;
-
- SWindow(MWindow *mwindow);
- ~SWindow();
-};
-
-
-class SWindowOK : public BC_OKButton
-{
-public:
- SWindowGUI *gui;
-
- int button_press_event();
- int keypress_event();
-
- SWindowOK(SWindowGUI *gui, int x, int y);
- ~SWindowOK();
-};
-
-class SWindowCancel : public BC_CancelButton
-{
-public:
- SWindowGUI *gui;
-
- int button_press_event();
-
- SWindowCancel(SWindowGUI *gui, int x, int y);
- ~SWindowCancel();
-};
-
-class SWindowLoadPath : public BC_TextBox
-{
-public:
- SWindowGUI *sw_gui;
- ArrayList<BC_ListBoxItem*> *file_entries;
-
- SWindowLoadPath(SWindowGUI *gui, int x, int y, char *path);
- ~SWindowLoadPath();
-
- int handle_event();
-};
-
-class SWindowLoadFile : public BC_GenericButton
-{
-public:
- SWindowGUI *sw_gui;
-
- int handle_event();
-
- SWindowLoadFile(SWindowGUI *gui, int x, int y);
- ~SWindowLoadFile();
-};
-
-class SWindowSaveFile : public BC_GenericButton
-{
-public:
- SWindowGUI *sw_gui;
-
- int handle_event();
-
- SWindowSaveFile(SWindowGUI *gui, int x, int y);
- ~SWindowSaveFile();
-};
-
-
-class ScriptLines
-{
- int allocated, used;
-public:
- int lines;
- char *text;
- void append(char *cp);
- int size() { return used; }
- int break_lines();
- int get_text_rows();
- char *get_text_row(int n);
-
- ScriptLines();
- ~ScriptLines();
-};
-
-class ScriptScroll : public BC_ScrollBar
-{
-public:
- SWindowGUI *sw_gui;
-
- int handle_event();
-
- ScriptScroll(SWindowGUI *gui, int x, int y, int w);
- ~ScriptScroll();
-};
-
-class ScriptPosition : public BC_TumbleTextBox
-{
-public:
- SWindowGUI *sw_gui;
-
- int handle_event();
-
- ScriptPosition(SWindowGUI *gui, int x, int y, int w, int v=0, int mn=0, int mx=0);
- ~ScriptPosition();
-};
-
-class ScriptEntry : public BC_ScrollTextBox
-{
-public:
- SWindowGUI *sw_gui;
-
- char *ttext;
- void set_text(char *text, int isz=-1);
-
- ScriptEntry(SWindowGUI *gui, int x, int y, int w, int rows, char *text);
- ScriptEntry(SWindowGUI *gui, int x, int y, int w, int rows);
- ~ScriptEntry();
-};
-
-class ScriptPrev : public BC_GenericButton
-{
-public:
- SWindowGUI *sw_gui;
-
- int handle_event();
- ScriptPrev(SWindowGUI *gui, int x, int y);
- ~ScriptPrev();
-};
-
-class ScriptNext : public BC_GenericButton
-{
-public:
- SWindowGUI *sw_gui;
-
- int handle_event();
- ScriptNext(SWindowGUI *gui, int x, int y);
- ~ScriptNext();
-};
-
-class ScriptPaste : public BC_GenericButton
-{
-public:
- SWindowGUI *sw_gui;
-
- int handle_event();
- ScriptPaste(SWindowGUI *gui, int x, int y);
- ~ScriptPaste();
-};
-
-class ScriptClear : public BC_GenericButton
-{
-public:
- SWindowGUI *sw_gui;
-
- int handle_event();
- ScriptClear(SWindowGUI *gui, int x, int y);
- ~ScriptClear();
-};
-
-class SWindowGUI : public BC_Window
-{
- static int max(int a,int b) { return a>b ? a : b; }
-public:
- SWindow *swindow;
- BC_OKButton *ok;
- BC_CancelButton *cancel;
- SWindowLoadPath *load_path;
- SWindowLoadFile *load_file;
- SWindowSaveFile *save_file;
- BC_Title *script_filesz;
- BC_Title *script_lines;
- BC_Title *script_entries;
- BC_Title *script_texts;
- ScriptPrev *prev_script;
- ScriptNext *next_script;
- ScriptPaste *paste_script;
- ScriptClear *clear_script;
- ScriptPosition *script_position;
- ScriptEntry *script_entry;
- ScriptEntry *line_entry;
- ScriptScroll *script_scroll;
- int pad;
- char *blank_line;
-
- char script_path[BCTEXTLEN];
- ArrayList<ScriptLines *> script;
-
- void create_objects();
- void load();
- void stop(int v);
- int translation_event();
- int resize_event(int w, int h);
- void load_defaults();
- void save_defaults();
- void load_script();
- int load_script_line(FILE *fp);
- void set_script_pos(int64_t entry_no, int text_no=0);
- int load_selection();
- int load_selection(int pos, int row);
- int load_prev_selection();
- int load_next_selection();
- int update_selection();
- int paste_text(const char *text, double start, double end);
- int paste_selection();
- int clear_selection();
- void save_spumux_data();
-
- int ok_x, ok_y, ok_w, ok_h;
- int cancel_x, cancel_y, cancel_w, cancel_h;
- int64_t script_entry_no, script_text_no;
- int64_t script_line_no, script_text_lines;
- int text_font, text_rowsz;
-
- SWindowGUI(SWindow *swindow, int x, int y, int w, int h);
- ~SWindowGUI();
-
-};
-
-
-class SubttlSWin : public BC_MenuItem
-{
-public:
- MWindow *mwindow;
- int handle_event();
-
- SubttlSWin(MWindow *mwindow);
- ~SubttlSWin();
-};
-
-
-#endif