std::string for title and icon title in FluxboxWindow
This commit is contained in:
parent
36dcc230a2
commit
70f3639c02
7 changed files with 54 additions and 87 deletions
|
@ -19,7 +19,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: IconBar.cc,v 1.11 2002/03/23 15:14:45 fluxgen Exp $
|
// $Id: IconBar.cc,v 1.12 2002/04/03 23:01:49 fluxgen Exp $
|
||||||
|
|
||||||
#include "IconBar.hh"
|
#include "IconBar.hh"
|
||||||
#include "i18n.hh"
|
#include "i18n.hh"
|
||||||
|
@ -239,8 +239,6 @@ void IconBar::draw(IconBarObj *obj, int width) {
|
||||||
|
|
||||||
FluxboxWindow *fluxboxwin = obj->getFluxboxWin();
|
FluxboxWindow *fluxboxwin = obj->getFluxboxWin();
|
||||||
Window iconwin = obj->getIconWin();
|
Window iconwin = obj->getIconWin();
|
||||||
const char *title = fluxboxwin->getIconTitle();
|
|
||||||
unsigned int title_len = strlen(title);
|
|
||||||
unsigned int title_text_w;
|
unsigned int title_text_w;
|
||||||
|
|
||||||
const int multibyte = I18n::instance()->multibyte();
|
const int multibyte = I18n::instance()->multibyte();
|
||||||
|
@ -248,15 +246,15 @@ void IconBar::draw(IconBarObj *obj, int width) {
|
||||||
if (multibyte) {
|
if (multibyte) {
|
||||||
XRectangle ink, logical;
|
XRectangle ink, logical;
|
||||||
XmbTextExtents(m_screen->getWindowStyle()->font.set,
|
XmbTextExtents(m_screen->getWindowStyle()->font.set,
|
||||||
title, title_len, &ink, &logical);
|
fluxboxwin->getIconTitle().c_str(), fluxboxwin->getIconTitle().size(), &ink, &logical);
|
||||||
title_text_w = logical.width;
|
title_text_w = logical.width;
|
||||||
} else {
|
} else {
|
||||||
title_text_w = XTextWidth(m_screen->getWindowStyle()->font.fontstruct,
|
title_text_w = XTextWidth(m_screen->getWindowStyle()->font.fontstruct,
|
||||||
title, title_len);
|
fluxboxwin->getIconTitle().c_str(), fluxboxwin->getIconTitle().size());
|
||||||
}
|
}
|
||||||
|
|
||||||
int l = title_text_w;
|
int l = title_text_w;
|
||||||
int dlen=title_len;
|
unsigned int dlen=fluxboxwin->getIconTitle().size();
|
||||||
unsigned int bevel_w = m_screen->getBevelWidth();
|
unsigned int bevel_w = m_screen->getBevelWidth();
|
||||||
int dx=bevel_w*2;
|
int dx=bevel_w*2;
|
||||||
|
|
||||||
|
@ -264,12 +262,12 @@ void IconBar::draw(IconBarObj *obj, int width) {
|
||||||
if (multibyte) {
|
if (multibyte) {
|
||||||
XRectangle ink, logical;
|
XRectangle ink, logical;
|
||||||
XmbTextExtents(m_screen->getWindowStyle()->tab.font.set,
|
XmbTextExtents(m_screen->getWindowStyle()->tab.font.set,
|
||||||
title, dlen,
|
fluxboxwin->getIconTitle().c_str(), dlen,
|
||||||
&ink, &logical);
|
&ink, &logical);
|
||||||
l = logical.width;
|
l = logical.width;
|
||||||
} else
|
} else
|
||||||
l = XTextWidth(m_screen->getWindowStyle()->tab.font.fontstruct,
|
l = XTextWidth(m_screen->getWindowStyle()->tab.font.fontstruct,
|
||||||
title, dlen);
|
fluxboxwin->getIconTitle().c_str(), dlen);
|
||||||
l += (bevel_w * 4);
|
l += (bevel_w * 4);
|
||||||
|
|
||||||
if (l < width)
|
if (l < width)
|
||||||
|
@ -295,13 +293,13 @@ void IconBar::draw(IconBarObj *obj, int width) {
|
||||||
XmbDrawString(m_display, iconwin,
|
XmbDrawString(m_display, iconwin,
|
||||||
m_screen->getWindowStyle()->tab.font.set,
|
m_screen->getWindowStyle()->tab.font.set,
|
||||||
m_screen->getWindowStyle()->tab.l_text_focus_gc, dx,
|
m_screen->getWindowStyle()->tab.l_text_focus_gc, dx,
|
||||||
1 - m_screen->getWindowStyle()->tab.font.set_extents->max_ink_extent.y,
|
1 - m_screen->getWindowStyle()->tab.font.set_extents->max_ink_extent.y,
|
||||||
title, dlen);
|
fluxboxwin->getIconTitle().c_str(), dlen);
|
||||||
} else {
|
} else {
|
||||||
XDrawString(m_display, iconwin,
|
XDrawString(m_display, iconwin,
|
||||||
m_screen->getWindowStyle()->tab.l_text_focus_gc, dx,
|
m_screen->getWindowStyle()->tab.l_text_focus_gc, dx,
|
||||||
m_screen->getWindowStyle()->tab.font.fontstruct->ascent + 1,
|
m_screen->getWindowStyle()->tab.font.fontstruct->ascent + 1,
|
||||||
title, dlen);
|
fluxboxwin->getIconTitle().c_str(), dlen);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: Screen.cc,v 1.40 2002/04/02 23:14:54 fluxgen Exp $
|
// $Id: Screen.cc,v 1.41 2002/04/03 23:02:16 fluxgen Exp $
|
||||||
|
|
||||||
//use GNU extensions
|
//use GNU extensions
|
||||||
#ifndef _GNU_SOURCE
|
#ifndef _GNU_SOURCE
|
||||||
|
@ -696,7 +696,7 @@ void BScreen::addIcon(FluxboxWindow *w) {
|
||||||
|
|
||||||
iconList.push_back(w);
|
iconList.push_back(w);
|
||||||
|
|
||||||
iconmenu->insert(w->getIconTitle());
|
iconmenu->insert(w->getIconTitle().c_str());
|
||||||
iconmenu->update();
|
iconmenu->update();
|
||||||
toolbar->addIcon(w);
|
toolbar->addIcon(w);
|
||||||
}
|
}
|
||||||
|
|
12
src/Tab.cc
12
src/Tab.cc
|
@ -19,7 +19,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: Tab.cc,v 1.21 2002/04/03 12:08:54 fluxgen Exp $
|
// $Id: Tab.cc,v 1.22 2002/04/03 23:01:04 fluxgen Exp $
|
||||||
|
|
||||||
#include "Tab.hh"
|
#include "Tab.hh"
|
||||||
|
|
||||||
|
@ -361,33 +361,33 @@ void Tab::draw(bool pressed) {
|
||||||
(!m_win->isShaded() && m_win->getScreen()->isTabRotateVertical())) {
|
(!m_win->isShaded() && m_win->getScreen()->isTabRotateVertical())) {
|
||||||
|
|
||||||
tabtext_w = DrawUtil::XRotTextWidth(m_win->getScreen()->getWindowStyle()->tab.rot_font,
|
tabtext_w = DrawUtil::XRotTextWidth(m_win->getScreen()->getWindowStyle()->tab.rot_font,
|
||||||
m_win->client.title, m_win->client.title_len);
|
m_win->getTitle().c_str(), m_win->getTitle().size());
|
||||||
tabtext_w += (m_win->frame.bevel_w * 4);
|
tabtext_w += (m_win->frame.bevel_w * 4);
|
||||||
|
|
||||||
DrawUtil::DrawRotString(m_display, m_tabwin, gc,
|
DrawUtil::DrawRotString(m_display, m_tabwin, gc,
|
||||||
m_win->getScreen()->getWindowStyle()->tab.rot_font,
|
m_win->getScreen()->getWindowStyle()->tab.rot_font,
|
||||||
m_win->getScreen()->getWindowStyle()->tab.font.justify,
|
m_win->getScreen()->getWindowStyle()->tab.font.justify,
|
||||||
tabtext_w, m_size_w, m_size_h,
|
tabtext_w, m_size_w, m_size_h,
|
||||||
m_win->frame.bevel_w, m_win->client.title);
|
m_win->frame.bevel_w, m_win->getTitle().c_str());
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (I18n::instance()->multibyte()) { // TODO: maybe move this out from here?
|
if (I18n::instance()->multibyte()) { // TODO: maybe move this out from here?
|
||||||
XRectangle ink, logical;
|
XRectangle ink, logical;
|
||||||
XmbTextExtents(m_win->getScreen()->getWindowStyle()->tab.font.set,
|
XmbTextExtents(m_win->getScreen()->getWindowStyle()->tab.font.set,
|
||||||
m_win->client.title, m_win->client.title_len,
|
m_win->getTitle().c_str(), m_win->getTitle().size(),
|
||||||
&ink, &logical);
|
&ink, &logical);
|
||||||
tabtext_w = logical.width;
|
tabtext_w = logical.width;
|
||||||
} else {
|
} else {
|
||||||
tabtext_w = XTextWidth(
|
tabtext_w = XTextWidth(
|
||||||
m_win->getScreen()->getWindowStyle()->tab.font.fontstruct,
|
m_win->getScreen()->getWindowStyle()->tab.font.fontstruct,
|
||||||
m_win->client.title, m_win->client.title_len);
|
m_win->getTitle().c_str(), m_win->getTitle().size());
|
||||||
}
|
}
|
||||||
tabtext_w += (m_win->frame.bevel_w * 4);
|
tabtext_w += (m_win->frame.bevel_w * 4);
|
||||||
|
|
||||||
DrawUtil::DrawString(m_display, m_tabwin, gc,
|
DrawUtil::DrawString(m_display, m_tabwin, gc,
|
||||||
&m_win->getScreen()->getWindowStyle()->tab.font,
|
&m_win->getScreen()->getWindowStyle()->tab.font,
|
||||||
tabtext_w, m_size_w,
|
tabtext_w, m_size_w,
|
||||||
m_win->frame.bevel_w, m_win->client.title);
|
m_win->frame.bevel_w, m_win->getTitle().c_str());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: Toolbar.cc,v 1.17 2002/04/03 12:08:54 fluxgen Exp $
|
// $Id: Toolbar.cc,v 1.18 2002/04/03 23:02:49 fluxgen Exp $
|
||||||
|
|
||||||
// stupid macros needed to access some functions in version 2 of the GNU C
|
// stupid macros needed to access some functions in version 2 of the GNU C
|
||||||
// library
|
// library
|
||||||
|
@ -727,17 +727,17 @@ void Toolbar::redrawWindowLabel(Bool redraw) {
|
||||||
if (foc->getScreen() != screen)
|
if (foc->getScreen() != screen)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int dx = (frame.bevel_w * 2), dlen = strlen(foc->getTitle());
|
int dx = (frame.bevel_w * 2), dlen = foc->getTitle().size();
|
||||||
unsigned int l;
|
unsigned int l;
|
||||||
I18n *i18n = I18n::instance();
|
I18n *i18n = I18n::instance();
|
||||||
|
|
||||||
if (i18n->multibyte()) {
|
if (i18n->multibyte()) {
|
||||||
XRectangle ink, logical;
|
XRectangle ink, logical;
|
||||||
XmbTextExtents(screen->getToolbarStyle()->font.set, foc->getTitle(), dlen,
|
XmbTextExtents(screen->getToolbarStyle()->font.set, foc->getTitle().c_str(), dlen,
|
||||||
&ink, &logical);
|
&ink, &logical);
|
||||||
l = logical.width;
|
l = logical.width;
|
||||||
} else
|
} else
|
||||||
l = XTextWidth(screen->getToolbarStyle()->font.fontstruct, foc->getTitle(), dlen);
|
l = XTextWidth(screen->getToolbarStyle()->font.fontstruct, foc->getTitle().c_str(), dlen);
|
||||||
|
|
||||||
l += (frame.bevel_w * 4);
|
l += (frame.bevel_w * 4);
|
||||||
|
|
||||||
|
@ -746,10 +746,10 @@ void Toolbar::redrawWindowLabel(Bool redraw) {
|
||||||
if (i18n->multibyte()) {
|
if (i18n->multibyte()) {
|
||||||
XRectangle ink, logical;
|
XRectangle ink, logical;
|
||||||
XmbTextExtents(screen->getToolbarStyle()->font.set,
|
XmbTextExtents(screen->getToolbarStyle()->font.set,
|
||||||
foc->getTitle(), dlen, &ink, &logical);
|
foc->getTitle().c_str(), dlen, &ink, &logical);
|
||||||
l = logical.width;
|
l = logical.width;
|
||||||
} else
|
} else
|
||||||
l = XTextWidth(screen->getToolbarStyle()->font.fontstruct, foc->getTitle(), dlen);
|
l = XTextWidth(screen->getToolbarStyle()->font.fontstruct, foc->getTitle().c_str(), dlen);
|
||||||
|
|
||||||
l += (frame.bevel_w * 4);
|
l += (frame.bevel_w * 4);
|
||||||
|
|
||||||
|
@ -774,12 +774,12 @@ void Toolbar::redrawWindowLabel(Bool redraw) {
|
||||||
screen->getToolbarStyle()->font.set,
|
screen->getToolbarStyle()->font.set,
|
||||||
screen->getToolbarStyle()->w_text_gc, dx, 1 -
|
screen->getToolbarStyle()->w_text_gc, dx, 1 -
|
||||||
screen->getToolbarStyle()->font.set_extents->max_ink_extent.y,
|
screen->getToolbarStyle()->font.set_extents->max_ink_extent.y,
|
||||||
foc->getTitle(), dlen);
|
foc->getTitle().c_str(), dlen);
|
||||||
else
|
else
|
||||||
XDrawString(display, frame.window_label,
|
XDrawString(display, frame.window_label,
|
||||||
screen->getToolbarStyle()->w_text_gc, dx,
|
screen->getToolbarStyle()->w_text_gc, dx,
|
||||||
screen->getToolbarStyle()->font.fontstruct->ascent + 1,
|
screen->getToolbarStyle()->font.fontstruct->ascent + 1,
|
||||||
foc->getTitle(), dlen);
|
foc->getTitle().c_str(), dlen);
|
||||||
} else
|
} else
|
||||||
XClearWindow(display, frame.window_label);
|
XClearWindow(display, frame.window_label);
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: Window.cc,v 1.35 2002/03/23 15:14:45 fluxgen Exp $
|
// $Id: Window.cc,v 1.36 2002/04/03 23:01:04 fluxgen Exp $
|
||||||
|
|
||||||
//use GNU extensions
|
//use GNU extensions
|
||||||
#ifndef _GNU_SOURCE
|
#ifndef _GNU_SOURCE
|
||||||
|
@ -152,9 +152,6 @@ tab(0)
|
||||||
|
|
||||||
client.wm_hint_flags = client.normal_hint_flags = 0;
|
client.wm_hint_flags = client.normal_hint_flags = 0;
|
||||||
client.transient_for = client.transient = 0;
|
client.transient_for = client.transient = 0;
|
||||||
client.title = 0;
|
|
||||||
client.title_len = 0;
|
|
||||||
client.icon_title = 0;
|
|
||||||
client.mwm_hint = (MwmHints *) 0;
|
client.mwm_hint = (MwmHints *) 0;
|
||||||
client.blackbox_hint = 0;
|
client.blackbox_hint = 0;
|
||||||
|
|
||||||
|
@ -421,12 +418,6 @@ FluxboxWindow::~FluxboxWindow(void) {
|
||||||
if (windowmenu)
|
if (windowmenu)
|
||||||
delete windowmenu;
|
delete windowmenu;
|
||||||
|
|
||||||
if (client.title)
|
|
||||||
delete [] client.title;
|
|
||||||
|
|
||||||
if (client.icon_title)
|
|
||||||
delete [] client.icon_title;
|
|
||||||
|
|
||||||
if (tab!=0)
|
if (tab!=0)
|
||||||
delete tab;
|
delete tab;
|
||||||
tab = 0;
|
tab = 0;
|
||||||
|
@ -1366,15 +1357,15 @@ void FluxboxWindow::reconfigure(void) {
|
||||||
client.y = frame.y + frame.y_border + frame.mwm_border_w +
|
client.y = frame.y + frame.y_border + frame.mwm_border_w +
|
||||||
screen->getBorderWidth();
|
screen->getBorderWidth();
|
||||||
|
|
||||||
if (client.title) {
|
if (getTitle().size()>0) {
|
||||||
if (I18n::instance()->multibyte()) {
|
if (I18n::instance()->multibyte()) {
|
||||||
XRectangle ink, logical;
|
XRectangle ink, logical;
|
||||||
XmbTextExtents(screen->getWindowStyle()->font.set,
|
XmbTextExtents(screen->getWindowStyle()->font.set,
|
||||||
client.title, client.title_len, &ink, &logical);
|
getTitle().c_str(), getTitle().size(), &ink, &logical);
|
||||||
client.title_text_w = logical.width;
|
client.title_text_w = logical.width;
|
||||||
} else {
|
} else {
|
||||||
client.title_text_w = XTextWidth(screen->getWindowStyle()->font.fontstruct,
|
client.title_text_w = XTextWidth(screen->getWindowStyle()->font.fontstruct,
|
||||||
client.title, client.title_len);
|
getTitle().c_str(), getTitle().size());
|
||||||
}
|
}
|
||||||
|
|
||||||
client.title_text_w += (frame.bevel_w * 4);
|
client.title_text_w += (frame.bevel_w * 4);
|
||||||
|
@ -1447,10 +1438,6 @@ void FluxboxWindow::positionWindows(void) {
|
||||||
|
|
||||||
|
|
||||||
void FluxboxWindow::getWMName(void) {
|
void FluxboxWindow::getWMName(void) {
|
||||||
if (client.title) {
|
|
||||||
delete [] client.title;
|
|
||||||
client.title = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
XTextProperty text_prop;
|
XTextProperty text_prop;
|
||||||
char **list;
|
char **list;
|
||||||
|
@ -1466,44 +1453,32 @@ void FluxboxWindow::getWMName(void) {
|
||||||
if ((XmbTextPropertyToTextList(display, &text_prop,
|
if ((XmbTextPropertyToTextList(display, &text_prop,
|
||||||
&list, &num) == Success) &&
|
&list, &num) == Success) &&
|
||||||
(num > 0) && *list) {
|
(num > 0) && *list) {
|
||||||
client.title = StringUtil::strdup(*list);
|
client.title = static_cast<char *>(*list);
|
||||||
XFreeStringList(list);
|
XFreeStringList(list);
|
||||||
} else
|
} else
|
||||||
client.title = StringUtil::strdup((char *) text_prop.value);
|
client.title = (char *)text_prop.value;
|
||||||
|
|
||||||
} else
|
} else
|
||||||
client.title = StringUtil::strdup((char *) text_prop.value);
|
client.title = (char *)text_prop.value;
|
||||||
|
|
||||||
XFree((char *) text_prop.value);
|
XFree((char *) text_prop.value);
|
||||||
} else
|
} else
|
||||||
client.title = StringUtil::strdup(i18n->getMessage(
|
client.title = i18n->getMessage(
|
||||||
#ifdef NLS
|
WindowSet, WindowUnnamed,
|
||||||
WindowSet, WindowUnnamed,
|
"Unnamed");
|
||||||
#else // !NLS
|
|
||||||
0, 0,
|
|
||||||
#endif //
|
|
||||||
"Unnamed"));
|
|
||||||
} else {
|
} else {
|
||||||
client.title = StringUtil::strdup(i18n->getMessage(
|
client.title = i18n->getMessage(
|
||||||
#ifdef NLS
|
WindowSet, WindowUnnamed,
|
||||||
WindowSet, WindowUnnamed,
|
"Unnamed");
|
||||||
#else // !NLS
|
|
||||||
0, 0,
|
|
||||||
#endif //
|
|
||||||
"Unnamed"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
client.title_len = strlen(client.title);
|
|
||||||
|
|
||||||
if (i18n->multibyte()) {
|
if (i18n->multibyte()) {
|
||||||
XRectangle ink, logical;
|
XRectangle ink, logical;
|
||||||
XmbTextExtents(screen->getWindowStyle()->font.set,
|
XmbTextExtents(screen->getWindowStyle()->font.set,
|
||||||
client.title, client.title_len, &ink, &logical);
|
getTitle().c_str(), getTitle().size(), &ink, &logical);
|
||||||
client.title_text_w = logical.width;
|
client.title_text_w = logical.width;
|
||||||
} else {
|
} else {
|
||||||
client.title_len = strlen(client.title);
|
|
||||||
client.title_text_w = XTextWidth(screen->getWindowStyle()->font.fontstruct,
|
client.title_text_w = XTextWidth(screen->getWindowStyle()->font.fontstruct,
|
||||||
client.title, client.title_len);
|
getTitle().c_str(), getTitle().size());
|
||||||
}
|
}
|
||||||
|
|
||||||
client.title_text_w += (frame.bevel_w * 4);
|
client.title_text_w += (frame.bevel_w * 4);
|
||||||
|
@ -1511,10 +1486,6 @@ void FluxboxWindow::getWMName(void) {
|
||||||
|
|
||||||
|
|
||||||
void FluxboxWindow::getWMIconName(void) {
|
void FluxboxWindow::getWMIconName(void) {
|
||||||
if (client.icon_title) {
|
|
||||||
delete [] client.icon_title;
|
|
||||||
client.icon_title = (char *) 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
XTextProperty text_prop;
|
XTextProperty text_prop;
|
||||||
char **list;
|
char **list;
|
||||||
|
@ -1528,18 +1499,18 @@ void FluxboxWindow::getWMIconName(void) {
|
||||||
if ((XmbTextPropertyToTextList(display, &text_prop,
|
if ((XmbTextPropertyToTextList(display, &text_prop,
|
||||||
&list, &num) == Success) &&
|
&list, &num) == Success) &&
|
||||||
(num > 0) && *list) {
|
(num > 0) && *list) {
|
||||||
client.icon_title = StringUtil::strdup(*list);
|
client.icon_title = (char *)*list;
|
||||||
XFreeStringList(list);
|
XFreeStringList(list);
|
||||||
} else
|
} else
|
||||||
client.icon_title = StringUtil::strdup((char *) text_prop.value);
|
client.icon_title = (char *)text_prop.value;
|
||||||
} else
|
} else
|
||||||
client.icon_title = StringUtil::strdup((char *) text_prop.value);
|
client.icon_title = (char *)text_prop.value;
|
||||||
|
|
||||||
XFree((char *) text_prop.value);
|
XFree((char *) text_prop.value);
|
||||||
} else
|
} else
|
||||||
client.icon_title = StringUtil::strdup(client.title);
|
client.icon_title = getTitle(); //assign title to icon title
|
||||||
} else
|
} else
|
||||||
client.icon_title = StringUtil::strdup(client.title);
|
client.icon_title = getTitle(); //assign title to icon title
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -2829,7 +2800,7 @@ void FluxboxWindow::redrawLabel(void) {
|
||||||
DrawUtil::DrawString(display, frame.label, gc,
|
DrawUtil::DrawString(display, frame.label, gc,
|
||||||
&screen->getWindowStyle()->font,
|
&screen->getWindowStyle()->font,
|
||||||
client.title_text_w, frame.label_w,
|
client.title_text_w, frame.label_w,
|
||||||
frame.bevel_w, client.title);
|
frame.bevel_w, getTitle().c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: Window.hh,v 1.14 2002/03/23 15:14:45 fluxgen Exp $
|
// $Id: Window.hh,v 1.15 2002/04/03 23:01:04 fluxgen Exp $
|
||||||
|
|
||||||
#ifndef WINDOW_HH
|
#ifndef WINDOW_HH
|
||||||
#define WINDOW_HH
|
#define WINDOW_HH
|
||||||
|
@ -146,8 +146,8 @@ public:
|
||||||
|
|
||||||
inline Windowmenu *getWindowmenu(void) { return windowmenu; }
|
inline Windowmenu *getWindowmenu(void) { return windowmenu; }
|
||||||
|
|
||||||
inline const char *getTitle(void) const { return client.title; }
|
inline const std::string &getTitle(void) const { return client.title; }
|
||||||
inline const char *getIconTitle(void) const { return client.icon_title; }
|
inline const std::string &getIconTitle(void) const { return client.icon_title; }
|
||||||
inline const int getXFrame(void) const { return frame.x; }
|
inline const int getXFrame(void) const { return frame.x; }
|
||||||
inline const int getYFrame(void) const { return frame.y; }
|
inline const int getYFrame(void) const { return frame.y; }
|
||||||
inline const int getXClient(void) const { return client.x; }
|
inline const int getXClient(void) const { return client.x; }
|
||||||
|
@ -237,8 +237,8 @@ private:
|
||||||
*transient; // which window is our transient?
|
*transient; // which window is our transient?
|
||||||
Window window, window_group;
|
Window window, window_group;
|
||||||
|
|
||||||
char *title, *icon_title;
|
std::string title, icon_title;
|
||||||
int x, y, old_bw, title_len;
|
int x, y, old_bw;
|
||||||
unsigned int width, height, title_text_w,
|
unsigned int width, height, title_text_w,
|
||||||
min_width, min_height, max_width, max_height, width_inc, height_inc,
|
min_width, min_height, max_width, max_height, width_inc, height_inc,
|
||||||
min_aspect_x, min_aspect_y, max_aspect_x, max_aspect_y,
|
min_aspect_x, min_aspect_y, max_aspect_x, max_aspect_y,
|
||||||
|
@ -384,8 +384,6 @@ protected:
|
||||||
void downsize(void);
|
void downsize(void);
|
||||||
void right_fixsize(int * = 0, int * = 0);
|
void right_fixsize(int * = 0, int * = 0);
|
||||||
void left_fixsize(int * = 0, int * = 0);
|
void left_fixsize(int * = 0, int * = 0);
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: Workspace.cc,v 1.15 2002/04/02 23:14:07 fluxgen Exp $
|
// $Id: Workspace.cc,v 1.16 2002/04/03 23:04:01 fluxgen Exp $
|
||||||
|
|
||||||
// use GNU extensions
|
// use GNU extensions
|
||||||
#ifndef _GNU_SOURCE
|
#ifndef _GNU_SOURCE
|
||||||
|
@ -115,7 +115,7 @@ const int Workspace::addWindow(FluxboxWindow *w, bool place) {
|
||||||
windowList.insert(it, w);
|
windowList.insert(it, w);
|
||||||
}
|
}
|
||||||
|
|
||||||
clientmenu->insert(w->getTitle());
|
clientmenu->insert(w->getTitle().c_str());
|
||||||
clientmenu->update();
|
clientmenu->update();
|
||||||
|
|
||||||
screen->updateNetizenWindowAdd(w->getClientWindow(), id);
|
screen->updateNetizenWindowAdd(w->getClientWindow(), id);
|
||||||
|
|
Loading…
Reference in a new issue