PACKAGE=openbox
-VERSION=1.1.1
+VERSION=1.2.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
enableval="$enable_debug"
if test x$enableval = "xyes"; then
echo "$ac_t""yes" 1>&6
- DEBUG="-DDEBUG"
+ DEBUG="-DDEBUG -Wall -W -pedantic"
else
echo "$ac_t""no" 1>&6
fi
dnl configure.in for Openbox
dnl Initialize autoconf and automake
AC_INIT(src/openbox.cc)
-AM_INIT_AUTOMAKE(openbox,1.1.1,no-define)
+AM_INIT_AUTOMAKE(openbox,1.2.0,no-define)
dnl Determine default prefix
test x$prefix = "xNONE" && prefix="$ac_default_prefix"
[ --enable-debug include verbose debugging code [default=no]],
if test x$enableval = "xyes"; then
AC_MSG_RESULT([yes])
- DEBUG="-DDEBUG"
+ DEBUG="-DDEBUG -Wall -W -pedantic"
else
AC_MSG_RESULT([no])
fi,
#endif // NEWWMSPEC
- inline ScreenInfo *getScreenInfo(int s) {
+ inline ScreenInfo *getScreenInfo(unsigned int s) {
ASSERT(s < screenInfoList.size());
return screenInfoList[s];
}
int Basemenu::remove(int index) {
- if (index < 0 || index > menuitems.size()) return -1;
+ if (index < 0 || index > (signed)menuitems.size()) return -1;
BasemenuItem *item = menuitems[index];
menuitems.erase(menuitems.begin() + index);
if (title_vis && visible) redrawTitle();
- for (int i = 0; visible && i < menuitems.size(); i++) {
+ for (int i = 0; visible && i < (signed)menuitems.size(); i++) {
if (i == which_sub) {
drawItem(i, True, 0);
drawSubmenu(i);
itmp->submenu()->internal_hide();
}
- if (index >= 0 && index < menuitems.size()) {
+ if (index >= 0 && index < (signed)menuitems.size()) {
BasemenuItem *item = menuitems[index];
if (item->submenu() && visible && (! item->submenu()->isTorn()) &&
item->isEnabled()) {
}
-Bool Basemenu::hasSubmenu(int index) {
- if ((index >= 0) && (index < menuitems.size()))
- if (menuitems[index]->submenu())
- return True;
-
- return False;
+bool Basemenu::hasSubmenu(int index) {
+ if (index < 0 | index >= (signed)menuitems.size())
+ return false;
+ return (menuitems[index]->submenu());
}
void Basemenu::drawItem(int index, Bool highlight, Bool clear,
int x, int y, unsigned int w, unsigned int h)
{
- if (index < 0 || index > menuitems.size()) return;
+ if (index < 0 || index > (signed)menuitems.size()) return;
BasemenuItem *item = menuitems[index];
if (! item) return;
}
-void Basemenu::setItemSelected(int index, Bool sel) {
- if (index < 0 || index >= menuitems.size()) return;
+void Basemenu::setItemSelected(int index, bool sel) {
+ if (index < 0 || index >= (signed)menuitems.size()) return;
BasemenuItem *item = find(index);
if (! item) return;
}
-Bool Basemenu::isItemSelected(int index) {
- if (index < 0 || index >= menuitems.size()) return False;
+bool Basemenu::isItemSelected(int index) {
+ if (index < 0 || index >= (signed)menuitems.size()) return false;
BasemenuItem *item = find(index);
- if (! item) return False;
+ if (! item) return false;
return item->isSelected();
}
-void Basemenu::setItemEnabled(int index, Bool enable) {
- if (index < 0 || index >= menuitems.size()) return;
+void Basemenu::setItemEnabled(int index, bool enable) {
+ if (index < 0 || index >= (signed)menuitems.size()) return;
BasemenuItem *item = find(index);
if (! item) return;
}
-Bool Basemenu::isItemEnabled(int index) {
- if (index < 0 || index >= menuitems.size()) return False;
+bool Basemenu::isItemEnabled(int index) {
+ if (index < 0 || index >= (signed)menuitems.size()) return false;
BasemenuItem *item = find(index);
if (! item) return False;
int sbl = (be->x / menu.item_w), i = (be->y / menu.item_h);
int w = (sbl * menu.persub) + i;
- if (w < menuitems.size() && w >= 0) {
+ if (w < (signed)menuitems.size() && w >= 0) {
which_press = i;
which_sbl = sbl;
w = (sbl * menu.persub) + i,
p = (which_sbl * menu.persub) + which_press;
- if (w < menuitems.size() && w >= 0) {
+ if (w < (signed)menuitems.size() && w >= 0) {
drawItem(p, (p == which_sub), True);
if (p == w && isItemEnabled(w)) {
w = (sbl * menu.persub) + i;
if ((i != which_press || sbl != which_sbl) &&
- (w < menuitems.size() && w >= 0)) {
+ (w < (signed)menuitems.size() && w >= 0)) {
if (which_press != -1 && which_sbl != -1) {
int p = (which_sbl * menu.persub) + which_press;
BasemenuItem *item = menuitems[p];
int insert(const char *, Basemenu *, int = -1);
int remove(int);
- inline const int &getX(void) const { return menu.x; }
- inline const int &getY(void) const { return menu.y; }
- inline int getCount(void) { return menuitems.size(); }
- inline const int &getCurrentSubmenu(void) const { return which_sub; }
+ inline int getX(void) const { return menu.x; }
+ inline int getY(void) const { return menu.y; }
+ inline unsigned int getCount(void) { return menuitems.size(); }
+ inline int getCurrentSubmenu(void) const { return which_sub; }
- inline const unsigned int &getWidth(void) const { return menu.width; }
- inline const unsigned int &getHeight(void) const { return menu.height; }
- inline const unsigned int &getTitleHeight(void) const
- { return menu.title_h; }
+ inline unsigned int getWidth(void) const { return menu.width; }
+ inline unsigned int getHeight(void) const { return menu.height; }
+ inline unsigned int getTitleHeight(void) const { return menu.title_h; }
inline void setInternalMenu(void) { internal_menu = True; }
inline void setAlignment(int a) { alignment = a; }
inline void removeParent(void)
{ if (internal_menu) parent = (Basemenu *) 0; }
- Bool hasSubmenu(int);
- Bool isItemSelected(int);
- Bool isItemEnabled(int);
+ bool hasSubmenu(int);
+ bool isItemSelected(int);
+ bool isItemEnabled(int);
void buttonPressEvent(XButtonEvent *);
void buttonReleaseEvent(XButtonEvent *);
void setLabel(const char *n);
void move(int, int);
void update(void);
- void setItemSelected(int, Bool);
- void setItemEnabled(int, Bool);
+ void setItemSelected(int, bool);
+ void setItemEnabled(int, bool);
virtual void drawSubmenu(int);
virtual void show(void);
#include "Netizen.h"
#include "Screen.h"
-Netizen::Netizen(BScreen &scr, Window win) : screen(scr),
- basedisplay(scr.getBaseDisplay()), window(win)
+Netizen::Netizen(BScreen &scr, Window win) :basedisplay(scr.getBaseDisplay()),
+ screen(scr), window(win)
{
event.type = ClientMessage;
event.xclient.message_type = basedisplay.getOpenboxStructureMessagesAtom();
#endif // MAXPATHLEN
-Rootmenu::Rootmenu(BScreen &scrn) : Basemenu(scrn), screen(scrn),
- openbox(scrn.getOpenbox())
+Rootmenu::Rootmenu(BScreen &scrn) : Basemenu(scrn), openbox(scrn.getOpenbox()),
+ screen(scrn)
{
}
#ifdef SLIT
int slit_x = slit->autoHide() ? slit->hiddenOrigin().x() : slit->area().x(),
slit_y = slit->autoHide() ? slit->hiddenOrigin().y() : slit->area().y();
- int tbarh = resource.hide_toolbar ? 0 :
+ unsigned int tbarh = resource.hide_toolbar ? 0 :
toolbar->getExposedHeight() + resource.border_width * 2;
bool tbartop;
switch (toolbar->placement()) {
// load bevel, border and handle widths
if (conf.getValue("handleWidth", "HandleWidth", l)) {
- if (l <= size().w() / 2 && l != 0)
+ if (l <= (signed)size().w() / 2 && l != 0)
resource.handle_width = l;
else
resource.handle_width = 6;
resource.border_width = 1;
if (conf.getValue("bevelWidth", "BevelWidth", l)) {
- if (l <= size().w() / 2 && l != 0)
+ if (l <= (signed)size().w() / 2 && l != 0)
resource.bevel_width = l;
else
resource.bevel_width = 3;
resource.bevel_width = 3;
if (conf.getValue("frameWidth", "FrameWidth", l)) {
- if (l <= size().w() / 2)
+ if (l <= (signed)size().w() / 2)
resource.frame_width = l;
else
resource.frame_width = resource.bevel_width;
OpenboxWindow *BScreen::getIcon(int index) {
- if (index < 0 || index >= iconList.size())
+ if (index < 0 || index >= (signed)iconList.size())
return (OpenboxWindow *) 0;
winList::iterator it = iconList.begin();
void BScreen::removeNetizen(Window w) {
netList::iterator it;
- int i = 0;
for (it = netizenList.begin(); it != netizenList.end(); ++it)
if ((*it)->getWindowID() == w) {
const char *BScreen::getNameOfWorkspace(int id) {
- if (id < 0 || id >= workspaceNames.size())
+ if (id < 0 || id >= (signed)workspaceNames.size())
return (const char *) 0;
return workspaceNames[id].c_str();
}
Rect availableArea() const;
- inline Workspace *getWorkspace(int w) {
+ inline Workspace *getWorkspace(unsigned int w) {
ASSERT(w < workspacesList.size());
return workspacesList[w];
}
#include <string>
using std::ends;
-Slit::Slit(BScreen &scr, Resource &conf) : screen(scr),
- openbox(scr.getOpenbox()), config(conf)
+Slit::Slit(BScreen &scr, Resource &conf) : openbox(scr.getOpenbox()),
+ screen(scr), config(conf)
{
load();
#include <string>
using std::ends;
-Toolbar::Toolbar(BScreen &scrn, Resource &conf) : screen(scrn),
- openbox(scrn.getOpenbox()), config(conf)
+Toolbar::Toolbar(BScreen &scrn, Resource &conf) : openbox(scrn.getOpenbox()),
+ screen(scrn), config(conf)
{
load();
} hide_handler;
Openbox &openbox;
+ BScreen &screen;
Resource &config;
BImageControl *image_ctrl;
- BScreen &screen;
BTimer *clock_timer, *hide_timer;
Toolbarmenu *toolbarmenu;
}
-void OpenboxWindow::positionButtons(Bool redecorate_label) {
+void OpenboxWindow::positionButtons() {
const char *format = openbox.getTitleBarLayout();
const unsigned int bw = frame.bevel_w + 1;
const unsigned int by = frame.bevel_w + 1;
}
}
- if (!hasclose) {
- openbox.removeWindowSearch(frame.close_button);
- XDestroyWindow(display, frame.close_button);
- frame.close_button = None;
+ if (!hasclose && frame.close_button) {
+ openbox.removeWindowSearch(frame.close_button);
+ XDestroyWindow(display, frame.close_button);
}
- if (!hasiconify) {
- openbox.removeWindowSearch(frame.iconify_button);
- XDestroyWindow(display, frame.iconify_button);
- frame.iconify_button = None;
+ if (!hasiconify && frame.iconify_button) {
+ openbox.removeWindowSearch(frame.iconify_button);
+ XDestroyWindow(display, frame.iconify_button);
}
- if (!hasmaximize) {
- openbox.removeWindowSearch(frame.maximize_button);
- XDestroyWindow(display, frame.maximize_button);
- frame.maximize_button = None;
+ if (!hasmaximize && frame.iconify_button) {
+ openbox.removeWindowSearch(frame.maximize_button);
+ XDestroyWindow(display, frame.maximize_button);
}
- if (redecorate_label)
- decorateLabel();
+
redrawLabel();
redrawAllButtons();
}
XMoveWindow(display, frame.window, frame.x, frame.y);
+ setFocusFlag(flags.focused);
positionWindows();
decorate();
- setFocusFlag(flags.focused);
- redrawAllButtons();
} else {
frame.x = dx;
frame.y = dy;
openbox_attrib.premax_x = openbox_attrib.premax_y = 0;
openbox_attrib.premax_w = openbox_attrib.premax_h = 0;
- redrawAllButtons();
+ redrawMaximizeButton(flags.maximized);
setState(current_state);
return;
}
configure(dx, dy, dw, dh);
screen->getWorkspace(workspace_number)->raiseWindow(this);
- redrawAllButtons();
+ redrawMaximizeButton(flags.maximized);
setState(current_state);
}
openbox.grab();
if (! validateClient()) return;
- if (decorations.titlebar) positionButtons();
-
setState(NormalState);
- redrawAllButtons();
-
if (flags.transient || screen->focusNew())
setInputFocus();
else
if (decorations.close && (! frame.close_button)) {
createCloseButton();
- if (decorations.titlebar) positionButtons(True);
+ if (decorations.titlebar) {
+ positionButtons();
+ decorateLabel();
+ }
if (windowmenu) windowmenu->reconfigure();
}
}
void associateClientWindow();
void decorate();
void decorateLabel();
- void positionButtons(Bool redecorate_label = False);
+ void positionButtons();
void positionWindows();
void createCloseButton();
void createIconifyButton();
}
-const int Workspace::addWindow(OpenboxWindow *w, Bool place) {
+int Workspace::addWindow(OpenboxWindow *w, bool place) {
if (! w) return -1;
if (place) placeWindow(*w);
}
-const int Workspace::removeWindow(OpenboxWindow *w) {
+int Workspace::removeWindow(OpenboxWindow *w) {
if (! w) return -1;
_zorder.remove(w);
Workspace *wkspc;
win = bottom;
- while (True) {
+ while (true) {
*(curr++) = win->getFrameWindow();
screen.updateNetizenWindowRaise(win->getClientWindow());
Window *nstack = new Window[i], *curr = nstack;
Workspace *wkspc;
- while (True) {
+ while (true) {
*(curr++) = win->getFrameWindow();
screen.updateNetizenWindowLower(win->getClientWindow());
OpenboxWindow *Workspace::getWindow(int index) {
- if ((index >= 0) && (index < _windows.size()))
+ if ((index >= 0) && (index < (signed)_windows.size()))
return _windows[index];
else
return (OpenboxWindow *) 0;
}
-const int Workspace::getCount(void) {
- return _windows.size();
+int Workspace::getCount(void) {
+ return (signed)_windows.size();
}
void Workspace::update(void) {
clientmenu->update();
- screen.getToolbar()->redrawWindowLabel(True);
+ screen.getToolbar()->redrawWindowLabel(true);
}
-Bool Workspace::isCurrent(void) {
+bool Workspace::isCurrent(void) {
return (id == screen.getCurrentWorkspaceID());
}
inline BScreen &getScreen(void) { return screen; }
inline Clientmenu *getMenu(void) { return clientmenu; }
inline const char *getName(void) const { return name; }
- inline const int &getWorkspaceID(void) const { return id; }
+ inline int getWorkspaceID(void) const { return id; }
inline OpenboxWindow *focusedWindow() { return _focused; }
inline OpenboxWindow *lastFocusedWindow() { return _last; }
void focusWindow(OpenboxWindow *win);
OpenboxWindow *getWindow(int);
- Bool isCurrent(void);
- const int addWindow(OpenboxWindow *, Bool = False);
- const int removeWindow(OpenboxWindow *);
- const int getCount(void);
+ bool isCurrent(void);
+ int addWindow(OpenboxWindow *, bool = false);
+ int removeWindow(OpenboxWindow *);
+ int getCount(void);
void showAll(void);
void hideAll(void);
void removeAll(void);