Commit 6e811eaa4ff2134882145938a2ff799bde7e7a2b
1 parent
36c9ac2a
Exists in
master
and in
3 other branches
Adding method to get "paste-next" state.
Showing
3 changed files
with
30 additions
and
2 deletions
Show diff stats
src/core/paste.c
... | ... | @@ -413,6 +413,14 @@ LIB3270_EXPORT int lib3270_paste_text(H3270 *hSession, const unsigned char *str) |
413 | 413 | return 0; |
414 | 414 | } |
415 | 415 | |
416 | +LIB3270_EXPORT int lib3270_can_paste_next(const H3270 *hSession) | |
417 | +{ | |
418 | + if(!(lib3270_is_connected(hSession) && hSession->paste_buffer)) | |
419 | + return 0; | |
420 | + | |
421 | + return strlen(hSession->paste_buffer); | |
422 | +} | |
423 | + | |
416 | 424 | LIB3270_EXPORT int lib3270_paste_next(H3270 *hSession) |
417 | 425 | { |
418 | 426 | char * ptr; | ... | ... |
src/core/properties/boolean.c
... | ... | @@ -38,6 +38,7 @@ |
38 | 38 | #include <lib3270.h> |
39 | 39 | #include <lib3270/properties.h> |
40 | 40 | #include <lib3270/keyboard.h> |
41 | + #include <lib3270/selection.h> | |
41 | 42 | |
42 | 43 | int lib3270_is_starting(const H3270 *hSession) |
43 | 44 | { |
... | ... | @@ -149,6 +150,13 @@ |
149 | 150 | }, |
150 | 151 | |
151 | 152 | { |
153 | + .name = "can_paste_next", // Property name. | |
154 | + .description = N_( "Still have text to paste" ), // Property description. | |
155 | + .get = lib3270_can_paste_next, // Get value. | |
156 | + .set = NULL // Set value. | |
157 | + }, | |
158 | + | |
159 | + { | |
152 | 160 | .name = "starting", // Property name. |
153 | 161 | .description = N_( "Is starting (no first screen)?" ), // Property description. |
154 | 162 | .get = lib3270_is_starting, // Get value. | ... | ... |
src/include/lib3270/selection.h
... | ... | @@ -117,14 +117,26 @@ |
117 | 117 | /** |
118 | 118 | * @brief Paste remaining string. |
119 | 119 | * |
120 | - * @param h Session handle. | |
120 | + * @param hSession Session handle. | |
121 | 121 | * |
122 | 122 | * @see lib3270_paste_text. |
123 | 123 | * |
124 | 124 | * @return Non 0 if there's more to paste. |
125 | 125 | * |
126 | 126 | */ |
127 | - LIB3270_EXPORT int lib3270_paste_next(H3270 *h); | |
127 | + LIB3270_EXPORT int lib3270_paste_next(H3270 *hSession); | |
128 | + | |
129 | + /** | |
130 | + * @brief Check if can paste next. | |
131 | + * | |
132 | + * @param hSession Session handle. | |
133 | + * | |
134 | + * @see lib3270_paste_next. | |
135 | + * | |
136 | + * @return Non 0 if there's more to paste. | |
137 | + * | |
138 | + */ | |
139 | + LIB3270_EXPORT int lib3270_can_paste_next(const H3270 *hSession); | |
128 | 140 | |
129 | 141 | /** |
130 | 142 | * @brief Move selected box 1 char in the selected direction. | ... | ... |