Mathias Gumz
b8987fc623
code simplification / deduplication
...
* parse the string only once for a bunch of chars to check instead of
starting over again and again from the beginning, created a helper
function to do this (FbTk::StringUtil::findCharFromAlphabetAfterTrigger)
* put same code into a function (setClockModeLabel())
* use much simpler code to switch between 12h and 24h mode and replace
the fmt-switches
2010-08-24 17:30:24 +02:00
Jim Ramsay
a3b063292c
bugfix: another crash when cleaning up signals
...
While 769130f51a
did fix one issue, it introduced another by changing the
logic related to the new SignalTracker. The original logic (introduced in
9ad388c5bf
) was:
-> in 'leave(Signal)', only call 'disconnect'
-> in 'leaveAll()', call 'disconnect' and 'disconnectTracker'
But 769130f51a
inverted this, calling 'disconnectTracker' in both cases but
only 'disconnect' in the 'leaveAll()' case, which would leave unattached signals
around after calling 'leave(Signal)'.
This fix not only repairs the logic, but renames the ambiguous 'disconnect'
boolean to something more explicit: 'withTracker'.
2010-07-14 11:36:00 -04:00
Mathias Gumz
769130f51a
bugfix: do not use invalid iterators while looping thru a container which gets destroyed
2010-05-23 15:58:35 +02:00
Mathias Gumz
fbcdd34b22
mostly cosmetic fixes, mainly discovered by 'clang --analyze'
...
reordering of Resource-related stuff was because of
"error: explicit specialization of 'getString' after instantiation"
complaints.
2010-05-23 12:25:47 +02:00
Mathias Gumz
ff9c68e247
fixed potential memory leak
2010-05-16 14:25:59 +02:00
Mathias Gumz
17b21635a2
cleanup created corner pixmaps, moved the initCorners() function out of the class
2010-05-16 14:25:36 +02:00
Mathias Gumz
04739b2d1f
initialize all member variables, otherwise unclean state in some circumstances
...
(valgrind complained a lot about ::updateGeometry() accessing uninitialized variables)
2010-05-16 14:24:34 +02:00
Mathias Gumz
bca59851f3
bugfix: crash when cleaning up signals
...
22fa5f544b
was not fixing anything, the real cause is that the
SignalHolder still has a reference to a not existing Tracker.
2010-05-07 09:36:30 +02:00
Mathias Gumz
615e9cec32
compile fix: FD_ZERO (sys/select.h) on solaris wants to use memset(); closes #2997117
2010-05-06 21:19:31 +02:00
Mathias Gumz
22fa5f544b
bugfix: added missing 'virtual' keyword, otherwise fluxbox crashes with 'pure virtual method called'
2010-05-06 20:25:47 +02:00
Henrik Kinnunen
9ad388c5bf
Added Tracker interface for SignalHolder.
...
This is used by SignalTracker so Signals can disconnect from it when
they die.
2010-03-26 18:04:58 +01:00
Henrik Kinnunen
1cae9f22f8
Minor fix for argument reference in MemFunSelectArgImpl
2010-03-26 18:00:23 +01:00
Henrik Kinnunen
5bc782561b
Initialize all variables in FbWindow
2010-03-26 17:28:18 +01:00
Henrik Kinnunen
f150f727b2
Added SelectArg.hh to Makefile.am
2010-03-19 02:32:17 +01:00
Henrik Kinnunen
ceff86b794
Added SelectArg and MemFunSelectArg*
...
The MemFunSelectArg* functions can be used to select
a specific argument from a signal. For example this would
select the string argument as argument to the callback:
Signal<void, int, float, string> signal;
signal.connect(MemFunSelectArg2(obj, &Object::takesOneStringArg));
signal.emit(10, 3.14, "hello");
...
void Object::takesOneStringArg(const string& value) {
...
}
2010-03-19 02:23:41 +01:00
Henrik Kinnunen
68e90ab84f
Added missing RelaySignal.hh to Makefile.am
2010-03-18 19:47:14 +01:00
Henrik Kinnunen
02bb93590c
Added FbTk::relaySignal, which relays new signals to old Subject type signals.
2010-03-18 19:35:19 +01:00
Henrik Kinnunen
18570d83a2
minor cleaning in MemFun.hh
2010-03-18 10:56:15 +01:00
Henrik Kinnunen
0504de454a
Added MemFunIgnoreArgs which ignores aditional arguments.
...
For example connecting a function that takes two arguments
to a signal that emits three arguments:
struct Functor {
void show(int a, int b);
};
Functor f;
Signal<void, int, int, int> s3;
s3.connect(MemFunIgnoreArgs(f, &Functor::show));
2010-03-18 10:45:33 +01:00
Mathias Gumz
254bc96daf
fixed little preprocessor error
2010-02-27 10:33:06 +01:00
Mathias Gumz
c65dc30fc2
improved documentation of the code
2010-01-19 20:20:13 +01:00
Mathias Gumz
46261a8284
implemented 'MoveN' and 'ClickN' support in keys file.
...
the hardcoded 'OnTitlebar Mouse1 :Raise' (see Window.cc, FluxboxWindow::buttonPressEvent())
is disabled for now, should be added to fluxbox-update_configs
2009-12-18 08:05:07 +01:00
Mark Tiefenbruck
8def80cec3
reportedly fix compiling on gcc 4.4 on Solaris
2009-10-08 00:18:43 -07:00
Mathias Gumz
6645688880
definition should match declaration
2009-10-03 13:53:13 +02:00
Mathias Gumz
69bf3965b7
compile fixes for sun compiler 5.10: class Layer conflicts with class FbTk/Layer .. so just a little renaming
2009-10-03 13:53:00 +02:00
Mathias Gumz
f2ea245f1d
compile fixes for sun compiler 5.10: complains about 'not beeing able to initialize this from that'
2009-10-03 13:38:41 +02:00
Mathias Gumz
261ba26d27
another little helper for FbTk::StringUtil: extractNumber()
2009-10-01 21:16:46 +02:00
Mathias Gumz
4eeac74a3d
removed unused code
2009-10-01 08:58:56 +02:00
Mathias Gumz
65a45dc65f
compile fix: missing include guards
2009-10-01 08:57:46 +02:00
Mathias Gumz
c4c96ec830
simpler code
2009-10-01 08:57:31 +02:00
Mathias Gumz
078438e993
compile fix: missing headers (sun compiler complained about)
2009-10-01 08:41:04 +02:00
Mathias Gumz
6c0739e889
compile fix: using correct forward declaration for template classes
...
we got this 'Warning (Anachronism): Old syntax for explicit specialization or
instantiation ignored.' with the solaris compiler
2009-10-01 07:34:37 +02:00
Mathias Gumz
38ef6e5155
made code simpler
2009-10-01 07:07:07 +02:00
Mathias Gumz
69de5b5a00
cosmetic fix: removed warning about double ';' after command
...
static xyz inside a anonymous namespace is not really needed, so i removed the namespace
to get rid of the compiler warning. it's more convinient for the developer
to put ';' after that REGISTER_COMMAND_PARSER
2009-09-30 21:08:55 +02:00
Mathias Gumz
f8c61a1ba2
compile fix: use the correct format string to parse the number
2009-09-30 21:05:02 +02:00
Mathias Gumz
12fe9ca7a8
compile fix: sun compiler complains about missing std::mem_fun_t<>
2009-09-30 21:03:25 +02:00
Mathias Gumz
884db973bb
cosmetic fixes: removed redundant ';' + some whitespaces
2009-09-30 21:02:24 +02:00
Mathias Gumz
4663a9591e
bugfix: 'HideMenus' command did not work if the user 'opened' an empty submenu.
...
'openeing' such an empty submenu lead to an already hidden menu referenced by
the 'shown' pointer
2009-09-23 22:21:13 +02:00
Mark Tiefenbruck
ca9e2e0d15
allow navigating multi-column menus with left and right arrows
2009-08-08 10:20:45 -07:00
Mark Tiefenbruck
9f59ce18a2
change default toolbar tools to:
...
prevworkspace, workspacename, nextworkspace, iconbar, systemtray, clock
2009-06-28 10:54:55 -07:00
Mark Tiefenbruck
c1d9ae5068
fix changing iconbar alignment and button width from init file
2009-06-28 09:39:28 -07:00
Mark Tiefenbruck
659af0eb75
allow 'Ctrl' and 'Alt' as modifiers in keys file
2009-06-28 09:12:02 -07:00
Mark Tiefenbruck
4e586cc172
previous fix for reverting iconbar to relative broke external tabs
2009-06-28 08:22:51 -07:00
Mark Tiefenbruck
fe92b6b39b
revert to relative iconbar alignment when too many windows are open
2009-06-28 03:40:50 -07:00
Jim Ramsay
ff6a46391f
Error on incomplete MacroCmd key command
2009-05-26 16:27:31 -04:00
Jim Ramsay
a56e409b1f
Exit loop for unterminated { } pair
2009-05-26 16:27:31 -04:00
Mark Tiefenbruck
e770016660
remove unnecessary xpm.h include in imlib code
2009-02-24 14:22:18 -08:00
Mark Tiefenbruck
9bd6401013
ignore XRandr events that don't actually change the screen size
2008-10-14 19:40:33 -07:00
Mark Tiefenbruck
5b07791ed4
merge menuDelay and menuDelayClose options
2008-10-12 21:55:03 -07:00
Mathias Gumz
93924af160
using namespace instead of a useless class
2008-10-09 09:38:42 +02:00