#include "mutex.h"
#include "titler.h"
-
-
-
+#include <stdarg.h>
class TitleFontTumble;
class TitleSizeTumble;
class TitleFade;
class TitleFont;
class TitleText;
+class TitleTextChars;
+class TitleTextBfrSz;
class TitleX;
class TitleY;
class TitleW;
int grab_event(XEvent *event);
void update_color();
void update_justification();
+ void update_stats();
void update();
void previous_font();
void next_font();
- void check_style(const char *font_name);
- int insert_ibeam(const char *txt, int adv);
+ void check_style(const char *font_name, int update);
+ int insert_ibeam(const char *txt, int ofs=0);
void done_event(int result);
TitleMain *client;
TitleFade *fade_out;
BC_Title *text_title;
TitleText *text;
+ TitleTextChars *text_chars;
+ TitleTextBfrSz *text_bfrsz;
BC_Title *justify_title;
TitleLeft *left;
TitleCenter *center;
TitleMain *client;
TitleWindow *window;
};
+class TitleTextChars : public BC_Title
+{
+public:
+ int update(int n);
+ TitleTextChars(int x, int y, int w);
+ ~TitleTextChars();
+};
+class TitleTextBfrSz : public BC_Title
+{
+public:
+ int update(int n);
+ TitleTextBfrSz(int x, int y, int w);
+ ~TitleTextBfrSz();
+};
+
class TitleX : public BC_TumbleTextBox
{
public:
TitleMain *client;
TitleWindow *window;
};
-class TitleColorThread : public ColorThread
+class TitleColorThread : public ColorPicker
{
public:
TitleColorThread(TitleMain *client, TitleWindow *window, int is_outline);
TitleCurPopup *popup;
};
+enum { POPUP_OFFSET=-1, POPUP_NONE=0, POPUP_FONT, POPUP_COLOR, POPUP_PNG, };
+
class TitleCurSubMenu : public BC_SubMenu
{
public:
TitleCurSubMenu(TitleCurItem *cur_item);
~TitleCurSubMenu();
-
+ void add_subitemx(int popup_type, va_list ap, const char *fmt);
+ void add_subitem(int popup_type, const char *fmt,...) { va_list ap;
+ va_start(ap, fmt); add_subitemx(popup_type, ap, fmt); va_end(ap);
+ }
+ void add_subitem(const char *fmt,...) { va_list ap;
+ va_start(ap, fmt); add_subitemx(POPUP_NONE, ap, fmt); va_end(ap);
+ }
TitleCurItem *cur_item;
};
class TitleCurSubMenuItem : public BC_MenuItem
{
public:
- TitleCurSubMenuItem(TitleCurSubMenu *submenu, const char *text);
+ TitleCurSubMenuItem(TitleCurSubMenu *submenu, const char *text, int popup_type);
~TitleCurSubMenuItem();
int handle_event();
TitleCurSubMenu *submenu;
+ int popup_type;
};
class TitleFontsPopup : public BC_ListBox
public:
TitleFontsPopup(TitleMain *client, TitleWindow *window);
~TitleFontsPopup();
+ int keypress_event();
int handle_event();
+ int show_tooltip(const char *text, int x,int y, int w,int h) {
+ return gui_tooltip(text);
+ }
TitleMain *client;
TitleWindow *window;
};
-class TitleColorPopup : public ColorThread
+class TitleColorPopup : public ColorPicker
{
public:
TitleColorPopup(TitleMain *client, TitleWindow *window);