#include "mutex.h"
#include "titler.h"
-
-
-
+#include <stdarg.h>
class TitleFontTumble;
class TitleSizeTumble;
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;
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_subitem(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_subitem(popup_type, ap, fmt); va_end(ap);
+ }
+ void add_subitem(const char *fmt,...) { va_list ap;
+ va_start(ap, fmt); add_subitem(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
TitleWindow *window;
};
-class TitleColorPopup : public ColorThread
+class TitleColorPopup : public ColorPicker
{
public:
TitleColorPopup(TitleMain *client, TitleWindow *window);