mirror of
https://github.com/aseprite/aseprite.git
synced 2025-02-23 09:41:04 +00:00
Change painting code of some widgets from JM_DRAW to onPaint().
This need future work to avoid using ji_screen and access to the drawable area only through Graphics pointer inside the PaintEvent.
This commit is contained in:
parent
890ec324f9
commit
fe50b6a30a
@ -37,10 +37,6 @@ bool Box::onProcessMessage(JMessage msg)
|
|||||||
box_set_position(&msg->setpos.rect);
|
box_set_position(&msg->setpos.rect);
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
case JM_DRAW:
|
|
||||||
getTheme()->draw_box(this, &msg->draw.rect);
|
|
||||||
return true;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return Widget::onProcessMessage(msg);
|
return Widget::onProcessMessage(msg);
|
||||||
@ -110,6 +106,11 @@ void Box::onPreferredSize(PreferredSizeEvent& ev)
|
|||||||
ev.setPreferredSize(Size(w, h));
|
ev.setPreferredSize(Size(w, h));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Box::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
getTheme()->paintBox(ev);
|
||||||
|
}
|
||||||
|
|
||||||
void Box::box_set_position(JRect rect)
|
void Box::box_set_position(JRect rect)
|
||||||
{
|
{
|
||||||
#define FIXUP(x, y, w, h, l, t, r, b) \
|
#define FIXUP(x, y, w, h, l, t, r, b) \
|
||||||
|
@ -18,6 +18,7 @@ protected:
|
|||||||
// Events
|
// Events
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
void onPreferredSize(PreferredSizeEvent& ev);
|
void onPreferredSize(PreferredSizeEvent& ev);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void box_set_position(JRect rect);
|
void box_set_position(JRect rect);
|
||||||
|
@ -86,15 +86,6 @@ bool ButtonBase::onProcessMessage(JMessage msg)
|
|||||||
{
|
{
|
||||||
switch (msg->type) {
|
switch (msg->type) {
|
||||||
|
|
||||||
case JM_DRAW: {
|
|
||||||
switch (m_drawType) {
|
|
||||||
case JI_BUTTON: getTheme()->draw_button(this, &msg->draw.rect); break;
|
|
||||||
case JI_CHECK: getTheme()->draw_check(this, &msg->draw.rect); break;
|
|
||||||
case JI_RADIO: getTheme()->draw_radio(this, &msg->draw.rect); break;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
case JM_FOCUSENTER:
|
case JM_FOCUSENTER:
|
||||||
case JM_FOCUSLEAVE:
|
case JM_FOCUSLEAVE:
|
||||||
if (this->isEnabled()) {
|
if (this->isEnabled()) {
|
||||||
@ -324,6 +315,15 @@ void ButtonBase::onPreferredSize(PreferredSizeEvent& ev)
|
|||||||
this->border_width.t + jrect_h(&box) + this->border_width.b);
|
this->border_width.t + jrect_h(&box) + this->border_width.b);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ButtonBase::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
switch (m_drawType) {
|
||||||
|
case JI_BUTTON: getTheme()->paintButton(ev); break;
|
||||||
|
case JI_CHECK: getTheme()->paintCheckBox(ev); break;
|
||||||
|
case JI_RADIO: getTheme()->paintRadioButton(ev); break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void ButtonBase::generateButtonSelectSignal()
|
void ButtonBase::generateButtonSelectSignal()
|
||||||
{
|
{
|
||||||
// Deselect
|
// Deselect
|
||||||
|
@ -41,6 +41,7 @@ protected:
|
|||||||
// Events
|
// Events
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
void onPreferredSize(PreferredSizeEvent& ev);
|
void onPreferredSize(PreferredSizeEvent& ev);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
// New events
|
// New events
|
||||||
virtual void onClick(Event& ev);
|
virtual void onClick(Event& ev);
|
||||||
|
@ -166,10 +166,6 @@ bool Entry::onProcessMessage(JMessage msg)
|
|||||||
{
|
{
|
||||||
switch (msg->type) {
|
switch (msg->type) {
|
||||||
|
|
||||||
case JM_DRAW:
|
|
||||||
getTheme()->draw_entry(this, &msg->draw.rect);
|
|
||||||
return true;
|
|
||||||
|
|
||||||
case JM_TIMER:
|
case JM_TIMER:
|
||||||
if (this->hasFocus() &&
|
if (this->hasFocus() &&
|
||||||
msg->timer.timer_id == m_timer_id) {
|
msg->timer.timer_id == m_timer_id) {
|
||||||
@ -384,6 +380,11 @@ void Entry::onPreferredSize(PreferredSizeEvent& ev)
|
|||||||
ev.setPreferredSize(w, h);
|
ev.setPreferredSize(w, h);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Entry::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
getTheme()->paintEntry(ev);
|
||||||
|
}
|
||||||
|
|
||||||
void Entry::onEntryChange()
|
void Entry::onEntryChange()
|
||||||
{
|
{
|
||||||
EntryChange();
|
EntryChange();
|
||||||
|
@ -39,6 +39,7 @@ protected:
|
|||||||
// Events
|
// Events
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
void onPreferredSize(PreferredSizeEvent& ev);
|
void onPreferredSize(PreferredSizeEvent& ev);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
// New Events
|
// New Events
|
||||||
void onEntryChange();
|
void onEntryChange();
|
||||||
|
@ -378,10 +378,6 @@ bool Frame::onProcessMessage(JMessage msg)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case JM_DRAW:
|
|
||||||
getTheme()->draw_frame(this, &msg->draw.rect);
|
|
||||||
return true;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return Widget::onProcessMessage(msg);
|
return Widget::onProcessMessage(msg);
|
||||||
@ -422,6 +418,11 @@ void Frame::onPreferredSize(PreferredSizeEvent& ev)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Frame::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
getTheme()->paintFrame(ev);
|
||||||
|
}
|
||||||
|
|
||||||
void Frame::window_set_position(JRect rect)
|
void Frame::window_set_position(JRect rect)
|
||||||
{
|
{
|
||||||
JWidget child;
|
JWidget child;
|
||||||
|
@ -57,6 +57,7 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
void onPreferredSize(PreferredSizeEvent& ev);
|
void onPreferredSize(PreferredSizeEvent& ev);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void window_set_position(JRect rect);
|
void window_set_position(JRect rect);
|
||||||
|
@ -101,10 +101,6 @@ bool Grid::onProcessMessage(JMessage msg)
|
|||||||
setGridPosition(&msg->setpos.rect);
|
setGridPosition(&msg->setpos.rect);
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
case JM_DRAW:
|
|
||||||
getTheme()->draw_grid(this, &msg->draw.rect);
|
|
||||||
return true;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return Widget::onProcessMessage(msg);
|
return Widget::onProcessMessage(msg);
|
||||||
@ -128,6 +124,11 @@ void Grid::onPreferredSize(PreferredSizeEvent& ev)
|
|||||||
ev.setPreferredSize(Size(w, h));
|
ev.setPreferredSize(Size(w, h));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Grid::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
getTheme()->paintGrid(ev);
|
||||||
|
}
|
||||||
|
|
||||||
void Grid::sumStripSize(const std::vector<Strip>& strip, int& size)
|
void Grid::sumStripSize(const std::vector<Strip>& strip, int& size)
|
||||||
{
|
{
|
||||||
int i, j;
|
int i, j;
|
||||||
|
@ -22,6 +22,7 @@ protected:
|
|||||||
// Events
|
// Events
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
void onPreferredSize(PreferredSizeEvent& ev);
|
void onPreferredSize(PreferredSizeEvent& ev);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
struct Cell {
|
struct Cell {
|
||||||
|
@ -39,21 +39,21 @@ bool ImageView::onProcessMessage(JMessage msg)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
case JM_DRAW: {
|
|
||||||
struct jrect box, text, icon;
|
|
||||||
|
|
||||||
jwidget_get_texticon_info(this, &box, &text, &icon,
|
|
||||||
getAlign(), m_bmp->w, m_bmp->h);
|
|
||||||
|
|
||||||
jdraw_rectexclude(rc, &icon,
|
|
||||||
jwidget_get_bg_color(this));
|
|
||||||
|
|
||||||
blit(m_bmp, ji_screen, 0, 0,
|
|
||||||
icon.x1, icon.y1, jrect_w(&icon), jrect_h(&icon));
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return Widget::onProcessMessage(msg);
|
return Widget::onProcessMessage(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ImageView::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
struct jrect box, text, icon;
|
||||||
|
|
||||||
|
jwidget_get_texticon_info(this, &box, &text, &icon,
|
||||||
|
getAlign(), m_bmp->w, m_bmp->h);
|
||||||
|
|
||||||
|
jdraw_rectexclude(rc, &icon,
|
||||||
|
jwidget_get_bg_color(this));
|
||||||
|
|
||||||
|
blit(m_bmp, ji_screen, 0, 0,
|
||||||
|
icon.x1, icon.y1, jrect_w(&icon), jrect_h(&icon));
|
||||||
|
}
|
||||||
|
@ -18,6 +18,7 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
BITMAP* m_bmp;
|
BITMAP* m_bmp;
|
||||||
|
@ -34,10 +34,12 @@ bool Label::onProcessMessage(JMessage msg)
|
|||||||
msg->reqsize.h += this->border_width.t + this->border_width.b;
|
msg->reqsize.h += this->border_width.t + this->border_width.b;
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
case JM_DRAW:
|
|
||||||
this->getTheme()->draw_label(this, &msg->draw.rect);
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return Widget::onProcessMessage(msg);
|
return Widget::onProcessMessage(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Label::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
getTheme()->paintLabel(ev);
|
||||||
|
}
|
||||||
|
@ -16,6 +16,7 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -44,10 +44,6 @@ bool LinkLabel::onProcessMessage(JMessage msg)
|
|||||||
invalidate();
|
invalidate();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case JM_DRAW:
|
|
||||||
getTheme()->draw_link_label(this, &msg->draw.rect);
|
|
||||||
return true;
|
|
||||||
|
|
||||||
case JM_BUTTONRELEASED:
|
case JM_BUTTONRELEASED:
|
||||||
if (isEnabled()) {
|
if (isEnabled()) {
|
||||||
if (!m_url.empty())
|
if (!m_url.empty())
|
||||||
@ -59,3 +55,8 @@ bool LinkLabel::onProcessMessage(JMessage msg)
|
|||||||
|
|
||||||
return CustomLabel::onProcessMessage(msg);
|
return CustomLabel::onProcessMessage(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void LinkLabel::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
getTheme()->paintLinkLabel(ev);
|
||||||
|
}
|
||||||
|
@ -23,6 +23,7 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -139,26 +139,6 @@ bool PopupFrame::onProcessMessage(JMessage msg)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case JM_DRAW: {
|
|
||||||
JRect pos = jwidget_get_rect(this);
|
|
||||||
int oldt;
|
|
||||||
|
|
||||||
jdraw_rect(pos, makecol(0, 0, 0));
|
|
||||||
|
|
||||||
jrect_shrink(pos, 1);
|
|
||||||
jdraw_rectfill(pos, this->getBgColor());
|
|
||||||
|
|
||||||
oldt = this->border_width.t;
|
|
||||||
this->border_width.t = 3 * jguiscale();
|
|
||||||
_ji_theme_textbox_draw(ji_screen, this, NULL, NULL,
|
|
||||||
this->getBgColor(),
|
|
||||||
ji_color_foreground());
|
|
||||||
this->border_width.t = oldt;
|
|
||||||
|
|
||||||
jrect_free(pos);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return Frame::onProcessMessage(msg);
|
return Frame::onProcessMessage(msg);
|
||||||
@ -192,3 +172,23 @@ void PopupFrame::onPreferredSize(PreferredSizeEvent& ev)
|
|||||||
|
|
||||||
ev.setPreferredSize(resultSize);
|
ev.setPreferredSize(resultSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void PopupFrame::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
JRect pos = jwidget_get_rect(this);
|
||||||
|
int oldt;
|
||||||
|
|
||||||
|
jdraw_rect(pos, makecol(0, 0, 0));
|
||||||
|
|
||||||
|
jrect_shrink(pos, 1);
|
||||||
|
jdraw_rectfill(pos, this->getBgColor());
|
||||||
|
|
||||||
|
oldt = this->border_width.t;
|
||||||
|
this->border_width.t = 3 * jguiscale();
|
||||||
|
_ji_theme_textbox_draw(ji_screen, this, NULL, NULL,
|
||||||
|
this->getBgColor(),
|
||||||
|
ji_color_foreground());
|
||||||
|
this->border_width.t = oldt;
|
||||||
|
|
||||||
|
jrect_free(pos);
|
||||||
|
}
|
||||||
|
@ -20,6 +20,7 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
void onPreferredSize(PreferredSizeEvent& ev);
|
void onPreferredSize(PreferredSizeEvent& ev);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool m_close_on_buttonpressed;
|
bool m_close_on_buttonpressed;
|
||||||
|
@ -12,7 +12,6 @@
|
|||||||
struct BITMAP;
|
struct BITMAP;
|
||||||
struct FONT;
|
struct FONT;
|
||||||
|
|
||||||
class Box;
|
|
||||||
class ButtonBase;
|
class ButtonBase;
|
||||||
class Entry;
|
class Entry;
|
||||||
class PaintEvent;
|
class PaintEvent;
|
||||||
@ -47,19 +46,19 @@ public:
|
|||||||
virtual int color_selected() = 0;
|
virtual int color_selected() = 0;
|
||||||
virtual int color_background() = 0;
|
virtual int color_background() = 0;
|
||||||
|
|
||||||
virtual void draw_box(Box* widget, JRect clip) = 0;
|
virtual void paintBox(PaintEvent& ev) = 0;
|
||||||
virtual void draw_button(ButtonBase* widget, JRect clip) = 0;
|
virtual void paintButton(PaintEvent& ev) = 0;
|
||||||
virtual void draw_check(ButtonBase* widget, JRect clip) = 0;
|
virtual void paintCheckBox(PaintEvent& ev) = 0;
|
||||||
virtual void draw_entry(Entry* widget, JRect clip) = 0;
|
virtual void paintEntry(PaintEvent& ev) = 0;
|
||||||
virtual void draw_grid(JWidget widget, JRect clip) = 0;
|
virtual void paintGrid(PaintEvent& ev) = 0;
|
||||||
virtual void draw_label(JWidget widget, JRect clip) = 0;
|
virtual void paintLabel(PaintEvent& ev) = 0;
|
||||||
virtual void draw_link_label(JWidget widget, JRect clip) = 0;
|
virtual void paintLinkLabel(PaintEvent& ev) = 0;
|
||||||
virtual void draw_listbox(JWidget widget, JRect clip) = 0;
|
virtual void draw_listbox(JWidget widget, JRect clip) = 0;
|
||||||
virtual void draw_listitem(JWidget widget, JRect clip) = 0;
|
virtual void draw_listitem(JWidget widget, JRect clip) = 0;
|
||||||
virtual void draw_menu(JWidget widget, JRect clip) = 0;
|
virtual void draw_menu(JWidget widget, JRect clip) = 0;
|
||||||
virtual void draw_menuitem(JWidget widget, JRect clip) = 0;
|
virtual void draw_menuitem(JWidget widget, JRect clip) = 0;
|
||||||
virtual void draw_panel(JWidget widget, JRect clip) = 0;
|
virtual void draw_panel(JWidget widget, JRect clip) = 0;
|
||||||
virtual void draw_radio(ButtonBase* widget, JRect clip) = 0;
|
virtual void paintRadioButton(PaintEvent& ev) = 0;
|
||||||
virtual void draw_separator(JWidget widget, JRect clip) = 0;
|
virtual void draw_separator(JWidget widget, JRect clip) = 0;
|
||||||
virtual void paintSlider(PaintEvent& ev) = 0;
|
virtual void paintSlider(PaintEvent& ev) = 0;
|
||||||
virtual void draw_combobox_entry(Entry* widget, JRect clip) = 0;
|
virtual void draw_combobox_entry(Entry* widget, JRect clip) = 0;
|
||||||
@ -68,7 +67,7 @@ public:
|
|||||||
virtual void draw_view(JWidget widget, JRect clip) = 0;
|
virtual void draw_view(JWidget widget, JRect clip) = 0;
|
||||||
virtual void draw_view_scrollbar(JWidget widget, JRect clip) = 0;
|
virtual void draw_view_scrollbar(JWidget widget, JRect clip) = 0;
|
||||||
virtual void draw_view_viewport(JWidget widget, JRect clip) = 0;
|
virtual void draw_view_viewport(JWidget widget, JRect clip) = 0;
|
||||||
virtual void draw_frame(Frame* frame, JRect clip) = 0;
|
virtual void paintFrame(PaintEvent& ev) = 0;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void onRegenerate() = 0;
|
virtual void onRegenerate() = 0;
|
||||||
|
@ -255,28 +255,6 @@ bool TipWindow::onProcessMessage(JMessage msg)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case JM_DRAW: {
|
|
||||||
JRect pos = jwidget_get_rect(this);
|
|
||||||
int oldt;
|
|
||||||
|
|
||||||
for (int i=0; i<jguiscale(); ++i) {
|
|
||||||
jdraw_rect(pos, makecol(0, 0, 0));
|
|
||||||
jrect_shrink(pos, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
jdraw_rectfill(pos, this->getBgColor());
|
|
||||||
|
|
||||||
oldt = this->border_width.t;
|
|
||||||
this->border_width.t = 3 * jguiscale();
|
|
||||||
_ji_theme_textbox_draw(ji_screen, this, NULL, NULL,
|
|
||||||
this->getBgColor(),
|
|
||||||
ji_color_foreground());
|
|
||||||
this->border_width.t = oldt;
|
|
||||||
|
|
||||||
jrect_free(pos);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return Frame::onProcessMessage(msg);
|
return Frame::onProcessMessage(msg);
|
||||||
@ -310,3 +288,25 @@ void TipWindow::onPreferredSize(PreferredSizeEvent& ev)
|
|||||||
|
|
||||||
ev.setPreferredSize(resultSize);
|
ev.setPreferredSize(resultSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TipWindow::onPaint(PaintEvent& ev)
|
||||||
|
{
|
||||||
|
JRect pos = jwidget_get_rect(this);
|
||||||
|
int oldt;
|
||||||
|
|
||||||
|
for (int i=0; i<jguiscale(); ++i) {
|
||||||
|
jdraw_rect(pos, makecol(0, 0, 0));
|
||||||
|
jrect_shrink(pos, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
jdraw_rectfill(pos, this->getBgColor());
|
||||||
|
|
||||||
|
oldt = this->border_width.t;
|
||||||
|
this->border_width.t = 3 * jguiscale();
|
||||||
|
_ji_theme_textbox_draw(ji_screen, this, NULL, NULL,
|
||||||
|
this->getBgColor(),
|
||||||
|
ji_color_foreground());
|
||||||
|
this->border_width.t = oldt;
|
||||||
|
|
||||||
|
jrect_free(pos);
|
||||||
|
}
|
||||||
|
@ -25,6 +25,7 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
bool onProcessMessage(JMessage msg);
|
bool onProcessMessage(JMessage msg);
|
||||||
void onPreferredSize(PreferredSizeEvent& ev);
|
void onPreferredSize(PreferredSizeEvent& ev);
|
||||||
|
void onPaint(PaintEvent& ev);
|
||||||
};
|
};
|
||||||
|
|
||||||
void jwidget_add_tooltip_text(Widget* widget, const char *text);
|
void jwidget_add_tooltip_text(Widget* widget, const char *text);
|
||||||
|
@ -616,13 +616,16 @@ int SkinTheme::color_background()
|
|||||||
return COLOR_BACKGROUND;
|
return COLOR_BACKGROUND;
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_box(Box* widget, JRect clip)
|
void SkinTheme::paintBox(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
jdraw_rectfill(clip, BGCOLOR);
|
Widget* widget = static_cast<Widget*>(ev.getSource());
|
||||||
|
Graphics* g = ev.getGraphics();
|
||||||
|
g->fillRect(BGCOLOR, g->getClipBounds());
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_button(ButtonBase* widget, JRect clip)
|
void SkinTheme::paintButton(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
|
ButtonBase* widget = static_cast<ButtonBase*>(ev.getSource());
|
||||||
BITMAP* icon_bmp = widget->getButtonIcon();
|
BITMAP* icon_bmp = widget->getButtonIcon();
|
||||||
int icon_align = widget->getButtonIconAlign();
|
int icon_align = widget->getButtonIconAlign();
|
||||||
struct jrect box, text, icon;
|
struct jrect box, text, icon;
|
||||||
@ -713,8 +716,9 @@ void SkinTheme::draw_button(ButtonBase* widget, JRect clip)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_check(ButtonBase* widget, JRect clip)
|
void SkinTheme::paintCheckBox(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
|
ButtonBase* widget = static_cast<ButtonBase*>(ev.getSource());
|
||||||
struct jrect box, text, icon;
|
struct jrect box, text, icon;
|
||||||
int bg;
|
int bg;
|
||||||
|
|
||||||
@ -754,13 +758,16 @@ void SkinTheme::draw_check(ButtonBase* widget, JRect clip)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_grid(JWidget widget, JRect clip)
|
void SkinTheme::paintGrid(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
jdraw_rectfill(clip, BGCOLOR);
|
Widget* widget = static_cast<Widget*>(ev.getSource());
|
||||||
|
Graphics* g = ev.getGraphics();
|
||||||
|
g->fillRect(BGCOLOR, g->getClipBounds());
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_entry(Entry* widget, JRect clip)
|
void SkinTheme::paintEntry(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
|
Entry* widget = static_cast<Entry*>(ev.getSource());
|
||||||
bool password = widget->isPassword();
|
bool password = widget->isPassword();
|
||||||
int scroll, caret, state, selbeg, selend;
|
int scroll, caret, state, selbeg, selend;
|
||||||
const char *text = widget->getText();
|
const char *text = widget->getText();
|
||||||
@ -831,8 +838,9 @@ void SkinTheme::draw_entry(Entry* widget, JRect clip)
|
|||||||
draw_entry_caret(widget, x, y);
|
draw_entry_caret(widget, x, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_label(JWidget widget, JRect clip)
|
void SkinTheme::paintLabel(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
|
Widget* widget = static_cast<Widget*>(ev.getSource());
|
||||||
int bg = BGCOLOR;
|
int bg = BGCOLOR;
|
||||||
|
|
||||||
jdraw_rectfill(widget->rc, bg);
|
jdraw_rectfill(widget->rc, bg);
|
||||||
@ -840,8 +848,9 @@ void SkinTheme::draw_label(JWidget widget, JRect clip)
|
|||||||
draw_textstring(NULL, -1, bg, false, widget, widget->rc, 0);
|
draw_textstring(NULL, -1, bg, false, widget, widget->rc, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_link_label(JWidget widget, JRect clip)
|
void SkinTheme::paintLinkLabel(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
|
Widget* widget = static_cast<Widget*>(ev.getSource());
|
||||||
int bg = BGCOLOR;
|
int bg = BGCOLOR;
|
||||||
|
|
||||||
jdraw_rectfill(widget->rc, bg);
|
jdraw_rectfill(widget->rc, bg);
|
||||||
@ -1024,8 +1033,9 @@ void SkinTheme::draw_panel(JWidget widget, JRect clip)
|
|||||||
jdraw_rectfill(widget->rc, get_panel_face_color());
|
jdraw_rectfill(widget->rc, get_panel_face_color());
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_radio(ButtonBase* widget, JRect clip)
|
void SkinTheme::paintRadioButton(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
|
ButtonBase* widget = static_cast<ButtonBase*>(ev.getSource());
|
||||||
struct jrect box, text, icon;
|
struct jrect box, text, icon;
|
||||||
int bg = BGCOLOR;
|
int bg = BGCOLOR;
|
||||||
|
|
||||||
@ -1408,8 +1418,9 @@ void SkinTheme::draw_view_viewport(JWidget widget, JRect clip)
|
|||||||
jdraw_rectfill(widget->rc, BGCOLOR);
|
jdraw_rectfill(widget->rc, BGCOLOR);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SkinTheme::draw_frame(Frame* window, JRect clip)
|
void SkinTheme::paintFrame(PaintEvent& ev)
|
||||||
{
|
{
|
||||||
|
Frame* window = static_cast<Frame*>(ev.getSource());
|
||||||
JRect pos = jwidget_get_rect(window);
|
JRect pos = jwidget_get_rect(window);
|
||||||
JRect cpos = jwidget_get_child_rect(window);
|
JRect cpos = jwidget_get_child_rect(window);
|
||||||
|
|
||||||
|
@ -422,19 +422,19 @@ public:
|
|||||||
int color_selected();
|
int color_selected();
|
||||||
int color_background();
|
int color_background();
|
||||||
|
|
||||||
void draw_box(Box* widget, JRect clip);
|
void paintBox(PaintEvent& ev);
|
||||||
void draw_button(ButtonBase* widget, JRect clip);
|
void paintButton(PaintEvent& ev);
|
||||||
void draw_check(ButtonBase* widget, JRect clip);
|
void paintCheckBox(PaintEvent& ev);
|
||||||
void draw_entry(Entry* widget, JRect clip);
|
void paintEntry(PaintEvent& ev);
|
||||||
void draw_grid(JWidget widget, JRect clip);
|
void paintGrid(PaintEvent& ev);
|
||||||
void draw_label(JWidget widget, JRect clip);
|
void paintLabel(PaintEvent& ev);
|
||||||
void draw_link_label(JWidget widget, JRect clip);
|
void paintLinkLabel(PaintEvent& ev);
|
||||||
void draw_listbox(JWidget widget, JRect clip);
|
void draw_listbox(JWidget widget, JRect clip);
|
||||||
void draw_listitem(JWidget widget, JRect clip);
|
void draw_listitem(JWidget widget, JRect clip);
|
||||||
void draw_menu(JWidget widget, JRect clip);
|
void draw_menu(JWidget widget, JRect clip);
|
||||||
void draw_menuitem(JWidget widget, JRect clip);
|
void draw_menuitem(JWidget widget, JRect clip);
|
||||||
void draw_panel(JWidget widget, JRect clip);
|
void draw_panel(JWidget widget, JRect clip);
|
||||||
void draw_radio(ButtonBase* widget, JRect clip);
|
void paintRadioButton(PaintEvent& ev);
|
||||||
void draw_separator(JWidget widget, JRect clip);
|
void draw_separator(JWidget widget, JRect clip);
|
||||||
void paintSlider(PaintEvent& ev);
|
void paintSlider(PaintEvent& ev);
|
||||||
void draw_combobox_entry(Entry* widget, JRect clip);
|
void draw_combobox_entry(Entry* widget, JRect clip);
|
||||||
@ -443,7 +443,7 @@ public:
|
|||||||
void draw_view(JWidget widget, JRect clip);
|
void draw_view(JWidget widget, JRect clip);
|
||||||
void draw_view_scrollbar(JWidget widget, JRect clip);
|
void draw_view_scrollbar(JWidget widget, JRect clip);
|
||||||
void draw_view_viewport(JWidget widget, JRect clip);
|
void draw_view_viewport(JWidget widget, JRect clip);
|
||||||
void draw_frame(Frame* frame, JRect clip);
|
void paintFrame(PaintEvent& ev);
|
||||||
void draw_frame_button(ButtonBase* widget, JRect clip);
|
void draw_frame_button(ButtonBase* widget, JRect clip);
|
||||||
|
|
||||||
int get_button_normal_text_color() const { return makecol(0, 0, 0); }
|
int get_button_normal_text_color() const { return makecol(0, 0, 0); }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user