diff options
author | Mathias Gumz <akira at fluxbox dot org> | 2010-09-08 18:17:21 (GMT) |
---|---|---|
committer | Mathias Gumz <akira at fluxbox dot org> | 2010-09-08 18:17:21 (GMT) |
commit | 690d926ac444243611cd875fb84fabb4e6db2cf2 (patch) | |
tree | c8ef84056b295071f9a9207ffea5393c6cf4ad4d /src/Focusable.hh | |
parent | 1e8fe2bc14856fa16508686a28a85e72cb0e422c (diff) | |
download | fluxbox_pavel-690d926ac444243611cd875fb84fabb4e6db2cf2.zip fluxbox_pavel-690d926ac444243611cd875fb84fabb4e6db2cf2.tar.bz2 |
introduced FbTk::BidiString
a 'BidiString' holds both the logical content and the visual reordered
version of the content of a string. this helps to reduce the number of
calls to reorder the string before drawing it (as introduced in the patch
from Ken Bloom) and to be more consistent in menus and textboxes (drawing
cursors and underlining text).
Diffstat (limited to 'src/Focusable.hh')
-rw-r--r-- | src/Focusable.hh | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/Focusable.hh b/src/Focusable.hh index 8434a97..47f14d3 100644 --- a/src/Focusable.hh +++ b/src/Focusable.hh | |||
@@ -26,8 +26,7 @@ | |||
26 | #include "FbTk/ITypeAheadable.hh" | 26 | #include "FbTk/ITypeAheadable.hh" |
27 | #include "FbTk/Subject.hh" | 27 | #include "FbTk/Subject.hh" |
28 | #include "FbTk/Signal.hh" | 28 | #include "FbTk/Signal.hh" |
29 | 29 | #include "FbTk/FbString.hh" | |
30 | #include <string> | ||
31 | 30 | ||
32 | class BScreen; | 31 | class BScreen; |
33 | class FluxboxWindow; | 32 | class FluxboxWindow; |
@@ -83,9 +82,9 @@ public: | |||
83 | FluxboxWindow *fbwindow() { return m_fbwin; } | 82 | FluxboxWindow *fbwindow() { return m_fbwin; } |
84 | 83 | ||
85 | /// @return WM_CLASS class string (for pattern matching) | 84 | /// @return WM_CLASS class string (for pattern matching) |
86 | virtual const std::string &getWMClassClass() const { return m_class_name; } | 85 | virtual const FbTk::FbString &getWMClassClass() const { return m_class_name; } |
87 | /// @return WM_CLASS name string (for pattern matching) | 86 | /// @return WM_CLASS name string (for pattern matching) |
88 | virtual const std::string &getWMClassName() const { return m_instance_name; } | 87 | virtual const FbTk::FbString &getWMClassName() const { return m_instance_name; } |
89 | /// @return wm role string (for pattern matching) | 88 | /// @return wm role string (for pattern matching) |
90 | virtual std::string getWMRole() const { return "Focusable"; } | 89 | virtual std::string getWMRole() const { return "Focusable"; } |
91 | 90 | ||
@@ -96,9 +95,9 @@ public: | |||
96 | /// @return icon pixmap of the focusable | 95 | /// @return icon pixmap of the focusable |
97 | virtual const FbTk::PixmapWithMask &icon() const { return m_icon; } | 96 | virtual const FbTk::PixmapWithMask &icon() const { return m_icon; } |
98 | /// @return title string | 97 | /// @return title string |
99 | virtual const std::string &title() const { return m_title; } | 98 | virtual const FbTk::BiDiString &title() const { return m_title; } |
100 | /// @return type ahead string | 99 | /// @return type ahead string |
101 | const std::string &iTypeString() const { return title(); } | 100 | const std::string &iTypeString() const { return title().logical(); } |
102 | /** | 101 | /** |
103 | * Signaling object to attatch observers to. | 102 | * Signaling object to attatch observers to. |
104 | */ | 103 | */ |
@@ -139,7 +138,10 @@ protected: | |||
139 | BScreen &m_screen; //< the screen in which it works | 138 | BScreen &m_screen; //< the screen in which it works |
140 | FluxboxWindow *m_fbwin; //< the working fluxbox window | 139 | FluxboxWindow *m_fbwin; //< the working fluxbox window |
141 | 140 | ||
142 | std::string m_title, m_instance_name, m_class_name; | 141 | FbTk::BiDiString m_title; |
142 | FbTk::FbString m_instance_name; | ||
143 | FbTk::FbString m_class_name; | ||
144 | |||
143 | bool m_focused; //< whether or not it has focus | 145 | bool m_focused; //< whether or not it has focus |
144 | bool m_attention_state; //< state of icon button while demanding attention | 146 | bool m_attention_state; //< state of icon button while demanding attention |
145 | FbTk::PixmapWithMask m_icon; //< icon pixmap with mask | 147 | FbTk::PixmapWithMask m_icon; //< icon pixmap with mask |