diff options
-rw-r--r-- | src/Toolbar.cc | 110 |
1 files changed, 55 insertions, 55 deletions
diff --git a/src/Toolbar.cc b/src/Toolbar.cc index 7eba613..d9932fa 100644 --- a/src/Toolbar.cc +++ b/src/Toolbar.cc | |||
@@ -22,7 +22,9 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: Toolbar.cc,v 1.25 2002/07/23 17:11:59 fluxgen Exp $ | 25 | // $Id: Toolbar.cc,v 1.26 2002/08/04 15:12:51 fluxgen Exp $ |
26 | |||
27 | #include "Toolbar.hh" | ||
26 | 28 | ||
27 | // stupid macros needed to access some functions in version 2 of the GNU C | 29 | // stupid macros needed to access some functions in version 2 of the GNU C |
28 | // library | 30 | // library |
@@ -40,7 +42,6 @@ | |||
40 | #include "Icon.hh" | 42 | #include "Icon.hh" |
41 | #include "Rootmenu.hh" | 43 | #include "Rootmenu.hh" |
42 | #include "Screen.hh" | 44 | #include "Screen.hh" |
43 | #include "Toolbar.hh" | ||
44 | #include "Window.hh" | 45 | #include "Window.hh" |
45 | #include "Workspace.hh" | 46 | #include "Workspace.hh" |
46 | #include "Workspacemenu.hh" | 47 | #include "Workspacemenu.hh" |
@@ -72,14 +73,18 @@ | |||
72 | using namespace std; | 73 | using namespace std; |
73 | 74 | ||
74 | Toolbar::Toolbar(BScreen *scrn): | 75 | Toolbar::Toolbar(BScreen *scrn): |
76 | on_top(scrn->isToolbarOnTop()), | ||
77 | editing(false), | ||
78 | hidden(scrn->doToolbarAutoHide()), | ||
79 | do_auto_hide(scrn->doToolbarAutoHide()), | ||
75 | screen(scrn), | 80 | screen(scrn), |
76 | image_ctrl(screen->getImageControl()), | 81 | image_ctrl(scrn->getImageControl()), |
77 | clock_timer(this), // get the clock updating every minute | 82 | clock_timer(this), // get the clock updating every minute |
78 | iconbar(0) | 83 | iconbar(0) { |
79 | { | ||
80 | |||
81 | fluxbox = Fluxbox::instance(); | ||
82 | 84 | ||
85 | |||
86 | |||
87 | fluxbox = Fluxbox::instance(); | ||
83 | 88 | ||
84 | timeval now; | 89 | timeval now; |
85 | gettimeofday(&now, 0); | 90 | gettimeofday(&now, 0); |
@@ -89,12 +94,7 @@ iconbar(0) | |||
89 | hide_handler.toolbar = this; | 94 | hide_handler.toolbar = this; |
90 | hide_timer = new BTimer(&hide_handler); | 95 | hide_timer = new BTimer(&hide_handler); |
91 | hide_timer->setTimeout(fluxbox->getAutoRaiseDelay()); | 96 | hide_timer->setTimeout(fluxbox->getAutoRaiseDelay()); |
92 | hide_timer->fireOnce(True); | 97 | hide_timer->fireOnce(true); |
93 | |||
94 | |||
95 | editing = False; | ||
96 | on_top = screen->isToolbarOnTop(); | ||
97 | hidden = do_auto_hide = screen->doToolbarAutoHide(); | ||
98 | 98 | ||
99 | frame.grab_x = frame.grab_y = 0; | 99 | frame.grab_x = frame.grab_y = 0; |
100 | 100 | ||
@@ -109,7 +109,7 @@ iconbar(0) | |||
109 | attrib.background_pixel = attrib.border_pixel = | 109 | attrib.background_pixel = attrib.border_pixel = |
110 | screen->getBorderColor()->pixel(); | 110 | screen->getBorderColor()->pixel(); |
111 | attrib.colormap = screen->colormap(); | 111 | attrib.colormap = screen->colormap(); |
112 | attrib.override_redirect = True; | 112 | attrib.override_redirect = true; |
113 | attrib.event_mask = ButtonPressMask | ButtonReleaseMask | | 113 | attrib.event_mask = ButtonPressMask | ButtonReleaseMask | |
114 | EnterWindowMask | LeaveWindowMask; | 114 | EnterWindowMask | LeaveWindowMask; |
115 | 115 | ||
@@ -174,7 +174,7 @@ iconbar(0) | |||
174 | } | 174 | } |
175 | 175 | ||
176 | 176 | ||
177 | Toolbar::~Toolbar(void) { | 177 | Toolbar::~Toolbar() { |
178 | XUnmapWindow(display, frame.window); | 178 | XUnmapWindow(display, frame.window); |
179 | 179 | ||
180 | if (frame.base) image_ctrl->removeImage(frame.base); | 180 | if (frame.base) image_ctrl->removeImage(frame.base); |
@@ -217,7 +217,7 @@ void Toolbar::delIcon(FluxboxWindow *w) { | |||
217 | Fluxbox::instance()->removeToolbarSearch(iconbar->delIcon(w)); | 217 | Fluxbox::instance()->removeToolbarSearch(iconbar->delIcon(w)); |
218 | } | 218 | } |
219 | 219 | ||
220 | void Toolbar::reconfigure(void) { | 220 | void Toolbar::reconfigure() { |
221 | int head_x = 0, | 221 | int head_x = 0, |
222 | head_y = 0, | 222 | head_y = 0, |
223 | head_w, | 223 | head_w, |
@@ -531,7 +531,7 @@ void Toolbar::reconfigure(void) { | |||
531 | redrawNextWorkspaceButton(); | 531 | redrawNextWorkspaceButton(); |
532 | redrawPrevWindowButton(); | 532 | redrawPrevWindowButton(); |
533 | redrawNextWindowButton(); | 533 | redrawNextWindowButton(); |
534 | checkClock(True); | 534 | checkClock(true); |
535 | 535 | ||
536 | toolbarmenu->reconfigure(); | 536 | toolbarmenu->reconfigure(); |
537 | 537 | ||
@@ -566,9 +566,9 @@ void Toolbar::reconfigure(void) { | |||
566 | 566 | ||
567 | 567 | ||
568 | #ifdef HAVE_STRFTIME | 568 | #ifdef HAVE_STRFTIME |
569 | void Toolbar::checkClock(Bool redraw) { | 569 | void Toolbar::checkClock(bool redraw) { |
570 | #else // !HAVE_STRFTIME | 570 | #else // !HAVE_STRFTIME |
571 | void Toolbar::checkClock(Bool redraw, Bool date) { | 571 | void Toolbar::checkClock(bool redraw, bool date) { |
572 | #endif // HAVE_STRFTIME | 572 | #endif // HAVE_STRFTIME |
573 | time_t tmp = 0; | 573 | time_t tmp = 0; |
574 | struct tm *tt = 0; | 574 | struct tm *tt = 0; |
@@ -582,7 +582,7 @@ void Toolbar::checkClock(Bool redraw, Bool date) { | |||
582 | frame.hour = tt->tm_hour; | 582 | frame.hour = tt->tm_hour; |
583 | frame.minute = tt->tm_min; | 583 | frame.minute = tt->tm_min; |
584 | XClearWindow(display, frame.clock); | 584 | XClearWindow(display, frame.clock); |
585 | redraw = True; | 585 | redraw = true; |
586 | } | 586 | } |
587 | } else | 587 | } else |
588 | cerr<<__FILE__<<"("<<__LINE__<<"): time(null)<0"<<endl; | 588 | cerr<<__FILE__<<"("<<__LINE__<<"): time(null)<0"<<endl; |
@@ -692,14 +692,13 @@ void Toolbar::checkClock(Bool redraw, Bool date) { | |||
692 | } | 692 | } |
693 | 693 | ||
694 | switch (screen->getToolbarStyle()->font.justify) { | 694 | switch (screen->getToolbarStyle()->font.justify) { |
695 | case DrawUtil::Font::RIGHT: | 695 | case DrawUtil::Font::RIGHT: |
696 | dx += frame.clock_w - l; | 696 | dx += frame.clock_w - l; |
697 | break; | 697 | break; |
698 | 698 | case DrawUtil::Font::CENTER: | |
699 | case DrawUtil::Font::CENTER: | 699 | dx += (frame.clock_w - l) / 2; |
700 | dx += (frame.clock_w - l) / 2; | ||
701 | break; | 700 | break; |
702 | default: //LEFT | 701 | default: //LEFT, no justification |
703 | break; | 702 | break; |
704 | } | 703 | } |
705 | 704 | ||
@@ -718,7 +717,7 @@ void Toolbar::checkClock(Bool redraw, Bool date) { | |||
718 | } | 717 | } |
719 | 718 | ||
720 | 719 | ||
721 | void Toolbar::redrawWindowLabel(Bool redraw) { | 720 | void Toolbar::redrawWindowLabel(bool redraw) { |
722 | if (Fluxbox::instance()->getFocusedWindow()) { | 721 | if (Fluxbox::instance()->getFocusedWindow()) { |
723 | if (redraw) | 722 | if (redraw) |
724 | XClearWindow(display, frame.window_label); | 723 | XClearWindow(display, frame.window_label); |
@@ -785,7 +784,7 @@ void Toolbar::redrawWindowLabel(Bool redraw) { | |||
785 | } | 784 | } |
786 | 785 | ||
787 | 786 | ||
788 | void Toolbar::redrawWorkspaceLabel(Bool redraw) { | 787 | void Toolbar::redrawWorkspaceLabel(bool redraw) { |
789 | if (screen->getCurrentWorkspace()->name().size()>0) { | 788 | if (screen->getCurrentWorkspace()->name().size()>0) { |
790 | 789 | ||
791 | if (redraw) | 790 | if (redraw) |
@@ -863,7 +862,7 @@ void Toolbar::redrawWorkspaceLabel(Bool redraw) { | |||
863 | } | 862 | } |
864 | 863 | ||
865 | 864 | ||
866 | void Toolbar::redrawPrevWorkspaceButton(Bool pressed, Bool redraw) { | 865 | void Toolbar::redrawPrevWorkspaceButton(bool pressed, bool redraw) { |
867 | if (redraw) { | 866 | if (redraw) { |
868 | if (pressed) { | 867 | if (pressed) { |
869 | if (frame.pbutton) | 868 | if (frame.pbutton) |
@@ -891,7 +890,7 @@ void Toolbar::redrawPrevWorkspaceButton(Bool pressed, Bool redraw) { | |||
891 | } | 890 | } |
892 | 891 | ||
893 | 892 | ||
894 | void Toolbar::redrawNextWorkspaceButton(Bool pressed, Bool redraw) { | 893 | void Toolbar::redrawNextWorkspaceButton(bool pressed, bool redraw) { |
895 | if (redraw) { | 894 | if (redraw) { |
896 | if (pressed) { | 895 | if (pressed) { |
897 | if (frame.pbutton) | 896 | if (frame.pbutton) |
@@ -919,7 +918,7 @@ void Toolbar::redrawNextWorkspaceButton(Bool pressed, Bool redraw) { | |||
919 | } | 918 | } |
920 | 919 | ||
921 | 920 | ||
922 | void Toolbar::redrawPrevWindowButton(Bool pressed, Bool redraw) { | 921 | void Toolbar::redrawPrevWindowButton(bool pressed, bool redraw) { |
923 | if (redraw) { | 922 | if (redraw) { |
924 | if (pressed) { | 923 | if (pressed) { |
925 | if (frame.pbutton) | 924 | if (frame.pbutton) |
@@ -947,7 +946,7 @@ void Toolbar::redrawPrevWindowButton(Bool pressed, Bool redraw) { | |||
947 | } | 946 | } |
948 | 947 | ||
949 | 948 | ||
950 | void Toolbar::redrawNextWindowButton(Bool pressed, Bool redraw) { | 949 | void Toolbar::redrawNextWindowButton(bool pressed, bool redraw) { |
951 | if (redraw) { | 950 | if (redraw) { |
952 | if (pressed) { | 951 | if (pressed) { |
953 | if (frame.pbutton) | 952 | if (frame.pbutton) |
@@ -975,11 +974,11 @@ void Toolbar::redrawNextWindowButton(Bool pressed, Bool redraw) { | |||
975 | } | 974 | } |
976 | 975 | ||
977 | 976 | ||
978 | void Toolbar::edit(void) { | 977 | void Toolbar::edit() { |
979 | Window window; | 978 | Window window; |
980 | int foo; | 979 | int foo; |
981 | 980 | ||
982 | editing = True; //mark for editing | 981 | editing = true; //mark for editing |
983 | 982 | ||
984 | //workspace labe already got intput focus ? | 983 | //workspace labe already got intput focus ? |
985 | if (XGetInputFocus(display, &window, &foo) && | 984 | if (XGetInputFocus(display, &window, &foo) && |
@@ -993,9 +992,9 @@ void Toolbar::edit(void) { | |||
993 | 992 | ||
994 | XClearWindow(display, frame.workspace_label); //clear workspace text | 993 | XClearWindow(display, frame.workspace_label); //clear workspace text |
995 | 994 | ||
996 | fluxbox->setNoFocus(True); | 995 | fluxbox->setNoFocus(true); |
997 | if (fluxbox->getFocusedWindow()) //disable focus on current focused window | 996 | if (fluxbox->getFocusedWindow()) //disable focus on current focused window |
998 | fluxbox->getFocusedWindow()->setFocusFlag(False); | 997 | fluxbox->getFocusedWindow()->setFocusFlag(false); |
999 | 998 | ||
1000 | XDrawRectangle(display, frame.workspace_label, | 999 | XDrawRectangle(display, frame.workspace_label, |
1001 | screen->getWindowStyle()->l_text_focus_gc, | 1000 | screen->getWindowStyle()->l_text_focus_gc, |
@@ -1008,13 +1007,13 @@ void Toolbar::buttonPressEvent(XButtonEvent *be) { | |||
1008 | FluxboxWindow *fluxboxwin=0; | 1007 | FluxboxWindow *fluxboxwin=0; |
1009 | if (be->button == 1) { | 1008 | if (be->button == 1) { |
1010 | if (be->window == frame.psbutton) | 1009 | if (be->window == frame.psbutton) |
1011 | redrawPrevWorkspaceButton(True, True); | 1010 | redrawPrevWorkspaceButton(true, true); |
1012 | else if (be->window == frame.nsbutton) | 1011 | else if (be->window == frame.nsbutton) |
1013 | redrawNextWorkspaceButton(True, True); | 1012 | redrawNextWorkspaceButton(true, true); |
1014 | else if (be->window == frame.pwbutton) | 1013 | else if (be->window == frame.pwbutton) |
1015 | redrawPrevWindowButton(True, True); | 1014 | redrawPrevWindowButton(true, true); |
1016 | else if (be->window == frame.nwbutton) | 1015 | else if (be->window == frame.nwbutton) |
1017 | redrawNextWindowButton(True, True); | 1016 | redrawNextWindowButton(true, true); |
1018 | else if ( iconbar ) { | 1017 | else if ( iconbar ) { |
1019 | if ( (fluxboxwin = iconbar->findWindow(be->window)) ) | 1018 | if ( (fluxboxwin = iconbar->findWindow(be->window)) ) |
1020 | fluxboxwin->deiconify(); | 1019 | fluxboxwin->deiconify(); |
@@ -1022,7 +1021,7 @@ void Toolbar::buttonPressEvent(XButtonEvent *be) { | |||
1022 | #ifndef HAVE_STRFTIME | 1021 | #ifndef HAVE_STRFTIME |
1023 | else if (be->window == frame.clock) { | 1022 | else if (be->window == frame.clock) { |
1024 | XClearWindow(display, frame.clock); | 1023 | XClearWindow(display, frame.clock); |
1025 | checkClock(True, True); | 1024 | checkClock(true, true); |
1026 | } | 1025 | } |
1027 | #endif // HAVE_STRFTIME | 1026 | #endif // HAVE_STRFTIME |
1028 | else if (! on_top) { | 1027 | else if (! on_top) { |
@@ -1061,25 +1060,25 @@ void Toolbar::buttonPressEvent(XButtonEvent *be) { | |||
1061 | void Toolbar::buttonReleaseEvent(XButtonEvent *re) { | 1060 | void Toolbar::buttonReleaseEvent(XButtonEvent *re) { |
1062 | if (re->button == 1) { | 1061 | if (re->button == 1) { |
1063 | if (re->window == frame.psbutton) { | 1062 | if (re->window == frame.psbutton) { |
1064 | redrawPrevWorkspaceButton(False, True); | 1063 | redrawPrevWorkspaceButton(false, true); |
1065 | 1064 | ||
1066 | if (re->x >= 0 && re->x < (signed) frame.button_w && | 1065 | if (re->x >= 0 && re->x < (signed) frame.button_w && |
1067 | re->y >= 0 && re->y < (signed) frame.button_w) | 1066 | re->y >= 0 && re->y < (signed) frame.button_w) |
1068 | screen->prevWorkspace(1); | 1067 | screen->prevWorkspace(1); |
1069 | } else if (re->window == frame.nsbutton) { | 1068 | } else if (re->window == frame.nsbutton) { |
1070 | redrawNextWorkspaceButton(False, True); | 1069 | redrawNextWorkspaceButton(false, true); |
1071 | 1070 | ||
1072 | if (re->x >= 0 && re->x < (signed) frame.button_w && | 1071 | if (re->x >= 0 && re->x < (signed) frame.button_w && |
1073 | re->y >= 0 && re->y < (signed) frame.button_w) | 1072 | re->y >= 0 && re->y < (signed) frame.button_w) |
1074 | screen->nextWorkspace(1); | 1073 | screen->nextWorkspace(1); |
1075 | } else if (re->window == frame.pwbutton) { | 1074 | } else if (re->window == frame.pwbutton) { |
1076 | redrawPrevWindowButton(False, True); | 1075 | redrawPrevWindowButton(false, true); |
1077 | 1076 | ||
1078 | if (re->x >= 0 && re->x < (signed) frame.button_w && | 1077 | if (re->x >= 0 && re->x < (signed) frame.button_w && |
1079 | re->y >= 0 && re->y < (signed) frame.button_w) | 1078 | re->y >= 0 && re->y < (signed) frame.button_w) |
1080 | screen->prevFocus(); | 1079 | screen->prevFocus(); |
1081 | } else if (re->window == frame.nwbutton) { | 1080 | } else if (re->window == frame.nwbutton) { |
1082 | redrawNextWindowButton(False, True); | 1081 | redrawNextWindowButton(false, true); |
1083 | 1082 | ||
1084 | if (re->x >= 0 && re->x < (signed) frame.button_w && | 1083 | if (re->x >= 0 && re->x < (signed) frame.button_w && |
1085 | re->y >= 0 && re->y < (signed) frame.button_w) | 1084 | re->y >= 0 && re->y < (signed) frame.button_w) |
@@ -1089,7 +1088,7 @@ void Toolbar::buttonReleaseEvent(XButtonEvent *re) { | |||
1089 | #ifndef HAVE_STRFTIME | 1088 | #ifndef HAVE_STRFTIME |
1090 | else if (re->window == frame.clock) { | 1089 | else if (re->window == frame.clock) { |
1091 | XClearWindow(display, frame.clock); | 1090 | XClearWindow(display, frame.clock); |
1092 | checkClock(True); | 1091 | checkClock(true); |
1093 | } | 1092 | } |
1094 | #endif // HAVE_STRFTIME | 1093 | #endif // HAVE_STRFTIME |
1095 | } else if (re->button == 4) //mousewheel scroll up | 1094 | } else if (re->button == 4) //mousewheel scroll up |
@@ -1123,7 +1122,8 @@ void Toolbar::leaveNotifyEvent(XCrossingEvent *) { | |||
1123 | 1122 | ||
1124 | 1123 | ||
1125 | void Toolbar::exposeEvent(XExposeEvent *ee) { | 1124 | void Toolbar::exposeEvent(XExposeEvent *ee) { |
1126 | if (ee->window == frame.clock) checkClock(True); | 1125 | if (ee->window == frame.clock) |
1126 | checkClock(true); | ||
1127 | else if (ee->window == frame.workspace_label && (! editing)) | 1127 | else if (ee->window == frame.workspace_label && (! editing)) |
1128 | redrawWorkspaceLabel(); | 1128 | redrawWorkspaceLabel(); |
1129 | else if (ee->window == frame.window_label) redrawWindowLabel(); | 1129 | else if (ee->window == frame.window_label) redrawWindowLabel(); |
@@ -1148,10 +1148,10 @@ void Toolbar::keyPressEvent(XKeyEvent *ke) { | |||
1148 | 1148 | ||
1149 | editing = false; | 1149 | editing = false; |
1150 | 1150 | ||
1151 | fluxbox->setNoFocus(False); | 1151 | fluxbox->setNoFocus(false); |
1152 | if (fluxbox->getFocusedWindow()) { | 1152 | if (fluxbox->getFocusedWindow()) { |
1153 | fluxbox->getFocusedWindow()->setInputFocus(); | 1153 | fluxbox->getFocusedWindow()->setInputFocus(); |
1154 | fluxbox->getFocusedWindow()->setFocusFlag(True); | 1154 | fluxbox->getFocusedWindow()->setFocusFlag(true); |
1155 | } else | 1155 | } else |
1156 | XSetInputFocus(display, PointerRoot, None, CurrentTime); | 1156 | XSetInputFocus(display, PointerRoot, None, CurrentTime); |
1157 | 1157 | ||
@@ -1225,8 +1225,8 @@ void Toolbar::keyPressEvent(XKeyEvent *ke) { | |||
1225 | } | 1225 | } |
1226 | 1226 | ||
1227 | 1227 | ||
1228 | void Toolbar::timeout(void) { | 1228 | void Toolbar::timeout() { |
1229 | checkClock(True); | 1229 | checkClock(true); |
1230 | 1230 | ||
1231 | timeval now; | 1231 | timeval now; |
1232 | gettimeofday(&now, 0); | 1232 | gettimeofday(&now, 0); |
@@ -1234,7 +1234,7 @@ void Toolbar::timeout(void) { | |||
1234 | } | 1234 | } |
1235 | 1235 | ||
1236 | 1236 | ||
1237 | void Toolbar::HideHandler::timeout(void) { | 1237 | void Toolbar::HideHandler::timeout() { |
1238 | toolbar->hidden = ! toolbar->hidden; | 1238 | toolbar->hidden = ! toolbar->hidden; |
1239 | if (toolbar->hidden) | 1239 | if (toolbar->hidden) |
1240 | XMoveWindow(toolbar->display, toolbar->frame.window, | 1240 | XMoveWindow(toolbar->display, toolbar->frame.window, |
@@ -1294,7 +1294,7 @@ Toolbarmenu::Toolbarmenu(Toolbar *tb) : Basemenu(tb->screen) { | |||
1294 | } | 1294 | } |
1295 | 1295 | ||
1296 | 1296 | ||
1297 | Toolbarmenu::~Toolbarmenu(void) { | 1297 | Toolbarmenu::~Toolbarmenu() { |
1298 | delete placementmenu; | 1298 | delete placementmenu; |
1299 | #ifdef XINERAMA | 1299 | #ifdef XINERAMA |
1300 | if (toolbar->screen->hasXinerama()) { | 1300 | if (toolbar->screen->hasXinerama()) { |
@@ -1347,14 +1347,14 @@ void Toolbarmenu::itemSelected(int button, unsigned int index) { | |||
1347 | } | 1347 | } |
1348 | 1348 | ||
1349 | 1349 | ||
1350 | void Toolbarmenu::internal_hide(void) { | 1350 | void Toolbarmenu::internal_hide() { |
1351 | Basemenu::internal_hide(); | 1351 | Basemenu::internal_hide(); |
1352 | if (toolbar->doAutoHide() && ! toolbar->isEditing()) | 1352 | if (toolbar->doAutoHide() && ! toolbar->isEditing()) |
1353 | toolbar->hide_handler.timeout(); | 1353 | toolbar->hide_handler.timeout(); |
1354 | } | 1354 | } |
1355 | 1355 | ||
1356 | 1356 | ||
1357 | void Toolbarmenu::reconfigure(void) { | 1357 | void Toolbarmenu::reconfigure() { |
1358 | placementmenu->reconfigure(); | 1358 | placementmenu->reconfigure(); |
1359 | #ifdef XINERAMA | 1359 | #ifdef XINERAMA |
1360 | if (toolbar->screen->hasXinerama()) { | 1360 | if (toolbar->screen->hasXinerama()) { |