Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2005-11-20 13:04:45 +0300
committerTon Roosendaal <ton@blender.org>2005-11-20 13:04:45 +0300
commit77332fa698fb79cc1d0c1539161e0e85c93b68f7 (patch)
treeb02b7ce3c8245c51ff96eb4f45d4532846e8ff78 /source/blender/include/interface.h
parenta86b0af575c6dad58b8c6ef223d20f5e76a055ed (diff)
Patch by Matt Ebb: upgraded usablitiy of text button.
Textbuttons now allow a selection too (like any textbutton in other UIs). By default, on activating a textbutton, the entire button text is selected when you enter the button. A single arrowkey or LMB click reveils the cursor then. Here's more user notes: LMB click: If inside the button, places the text cursor at the clicked position. If outside the button, confirms/finishes editing LMB drag: Selects the text between the start and end point of the drag. Backspace: Deletes selected text, or backspaces a character Shift Backspace: Deletes all, as before. Delete: Deletes selected text or forward deletes a character Shift LeftArrow: Extends the selection left Shift RightArrow: Extends the selection right LeftArrow: If there's a selection, move the cursor to the left edge of the selection, otherwise move the cursor left a character. RightArrow: If there's a selection, move the cursor to the right edge of the selection, otherwise move the cursor right a character. UpArrow/Home: Move the cursor to the beginning of the line DownArrow/End: Move the cursor to the end of the line Ctrl Left arrow and Ctrl Right arrow to jump between directory separators
Diffstat (limited to 'source/blender/include/interface.h')
-rw-r--r--source/blender/include/interface.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/source/blender/include/interface.h b/source/blender/include/interface.h
index 0b61ed80010..7a45e6566b4 100644
--- a/source/blender/include/interface.h
+++ b/source/blender/include/interface.h
@@ -63,7 +63,11 @@
#define PNL_TABBED 8
#define PNL_OVERLAP 16
-
+/* Button text selection:
+ * extension direction, selextend, inside ui_do_but_TEX */
+#define EXTEND_LEFT 1
+#define EXTEND_RIGHT 2
+#define SELWIDTH (but->selend - but->selsta)
typedef struct {
short xim, yim;
@@ -103,7 +107,7 @@ typedef struct {
struct uiBut {
uiBut *next, *prev;
- short type, pointype, bit, bitnr, retval, strwidth, ofs, pos;
+ short type, pointype, bit, bitnr, retval, strwidth, ofs, pos, selsta, selend;
int flag;
char *str;