X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=mod_query%2Fwmessage.c;h=096fdcf3888769c678b0700371d62b4f13f61f1d;hb=0c733f17d41080cd8240eecc5251d08a1776cdc5;hp=b8c5fa4bf24e400ab7f8b8e5ee6e32fa56640a7e;hpb=471a5e5f9928e2d324b2e10422a420f458bd63ff;p=ion3.git diff --git a/mod_query/wmessage.c b/mod_query/wmessage.c index b8c5fa4..096fdcf 100644 --- a/mod_query/wmessage.c +++ b/mod_query/wmessage.c @@ -1,22 +1,21 @@ /* * ion/mod_query/wmessage.c * - * Copyright (c) Tuomo Valkonen 1999-2007. + * Copyright (c) Tuomo Valkonen 1999-2009. * - * Ion is free software; you can redistribute it and/or modify it under - * the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation; either version 2.1 of the License, or - * (at your option) any later version. + * See the included file LICENSE for details. */ #include -#include #include +#include #include #include #include #include +#include +#include #include "wmessage.h" #include "inputp.h" @@ -72,6 +71,22 @@ static void wmsg_calc_size(WMessage *wmsg, WRectangle *geom) } +void wmsg_size_hints(WMessage *wmsg, WSizeHints *hints_ret) +{ + int w=1, h=1; + + if(WMSG_BRUSH(wmsg)!=NULL){ + mod_query_get_minimum_extents(WMSG_BRUSH(wmsg), FALSE, &w, &h); + + w+=grbrush_get_text_width(WMSG_BRUSH(wmsg), "xxxxx", 5); + } + + hints_ret->min_set=TRUE; + hints_ret->min_width=w; + hints_ret->min_height=h; +} + + /*}}}*/ @@ -233,12 +248,12 @@ static const char *wmsg_style(WMessage *wmsg) static DynFunTab wmsg_dynfuntab[]={ - {window_draw, wmsg_draw}, - {input_calc_size, wmsg_calc_size}, - {input_scrollup, wmsg_scrollup}, - {input_scrolldown, wmsg_scrolldown}, - {(DynFun*)input_style, - (DynFun*)wmsg_style}, + {window_draw, wmsg_draw}, + {input_calc_size, wmsg_calc_size}, + {input_scrollup, wmsg_scrollup}, + {input_scrolldown, wmsg_scrolldown}, + {(DynFun*)input_style, (DynFun*)wmsg_style}, + {region_size_hints, wmsg_size_hints}, END_DYNFUNTAB };