Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | merge with trunk |
---|---|
Timelines: | family | ancestors | descendants | both | wtf-8-experiment |
Files: | files | file ages | folders |
SHA1: |
1ffba5b697d2020467afd1be0511cf4a |
User & Date: | chw 2020-02-14 17:04:20.999 |
Context
2020-02-17
| ||
17:46 | merge with trunk check-in: 3b60f1cc0a user: chw tags: wtf-8-experiment | |
2020-02-14
| ||
17:04 | merge with trunk check-in: 1ffba5b697 user: chw tags: wtf-8-experiment | |
16:52 | add selected SDL2 upstream changes check-in: 732bf61c9c user: chw tags: trunk | |
2020-02-11
| ||
05:59 | merge with trunk check-in: a0f5e59e48 user: chw tags: wtf-8-experiment | |
Changes
Changes to jni/SDL2/src/video/wayland/SDL_waylanddyn.h.
︙ | ︙ | |||
71 72 73 74 75 76 77 78 79 80 81 82 83 84 | */ #define wl_proxy_create (*WAYLAND_wl_proxy_create) #define wl_proxy_destroy (*WAYLAND_wl_proxy_destroy) #define wl_proxy_marshal (*WAYLAND_wl_proxy_marshal) #define wl_proxy_set_user_data (*WAYLAND_wl_proxy_set_user_data) #define wl_proxy_get_user_data (*WAYLAND_wl_proxy_get_user_data) #define wl_proxy_add_listener (*WAYLAND_wl_proxy_add_listener) #define wl_proxy_marshal_constructor (*WAYLAND_wl_proxy_marshal_constructor) #define wl_proxy_marshal_constructor_versioned (*WAYLAND_wl_proxy_marshal_constructor_versioned) #define wl_seat_interface (*WAYLAND_wl_seat_interface) #define wl_surface_interface (*WAYLAND_wl_surface_interface) #define wl_shm_pool_interface (*WAYLAND_wl_shm_pool_interface) | > | 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | */ #define wl_proxy_create (*WAYLAND_wl_proxy_create) #define wl_proxy_destroy (*WAYLAND_wl_proxy_destroy) #define wl_proxy_marshal (*WAYLAND_wl_proxy_marshal) #define wl_proxy_set_user_data (*WAYLAND_wl_proxy_set_user_data) #define wl_proxy_get_user_data (*WAYLAND_wl_proxy_get_user_data) #define wl_proxy_get_version (*WAYLAND_wl_proxy_get_version) #define wl_proxy_add_listener (*WAYLAND_wl_proxy_add_listener) #define wl_proxy_marshal_constructor (*WAYLAND_wl_proxy_marshal_constructor) #define wl_proxy_marshal_constructor_versioned (*WAYLAND_wl_proxy_marshal_constructor_versioned) #define wl_seat_interface (*WAYLAND_wl_seat_interface) #define wl_surface_interface (*WAYLAND_wl_surface_interface) #define wl_shm_pool_interface (*WAYLAND_wl_shm_pool_interface) |
︙ | ︙ |
Changes to jni/SDL2/src/video/wayland/SDL_waylandevents.c.
︙ | ︙ | |||
918 919 920 921 922 923 924 | wl_data_offer_accept(id, serial, (has_mime == SDL_TRUE) ? FILE_MIME : NULL); /* SDL only supports "copy" style drag and drop */ if (has_mime == SDL_TRUE) { dnd_action = WL_DATA_DEVICE_MANAGER_DND_ACTION_COPY; } | > | | > | 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 | wl_data_offer_accept(id, serial, (has_mime == SDL_TRUE) ? FILE_MIME : NULL); /* SDL only supports "copy" style drag and drop */ if (has_mime == SDL_TRUE) { dnd_action = WL_DATA_DEVICE_MANAGER_DND_ACTION_COPY; } if (wl_data_offer_get_version(data_device->drag_offer->offer) >= 3) { wl_data_offer_set_actions(data_device->drag_offer->offer, dnd_action, dnd_action); } } } static void data_device_handle_leave(void *data, struct wl_data_device *wl_data_device) { SDL_WaylandDataDevice *data_device = data; |
︙ | ︙ |
Changes to jni/SDL2/src/video/wayland/SDL_waylandsym.h.
︙ | ︙ | |||
36 37 38 39 40 41 42 43 44 45 46 47 48 49 | SDL_WAYLAND_MODULE(WAYLAND_CLIENT) SDL_WAYLAND_SYM(void, wl_proxy_marshal, (struct wl_proxy *, uint32_t, ...)) SDL_WAYLAND_SYM(struct wl_proxy *, wl_proxy_create, (struct wl_proxy *, const struct wl_interface *)) SDL_WAYLAND_SYM(void, wl_proxy_destroy, (struct wl_proxy *)) SDL_WAYLAND_SYM(int, wl_proxy_add_listener, (struct wl_proxy *, void (**)(void), void *)) SDL_WAYLAND_SYM(void, wl_proxy_set_user_data, (struct wl_proxy *, void *)) SDL_WAYLAND_SYM(void *, wl_proxy_get_user_data, (struct wl_proxy *)) SDL_WAYLAND_SYM(uint32_t, wl_proxy_get_id, (struct wl_proxy *)) SDL_WAYLAND_SYM(const char *, wl_proxy_get_class, (struct wl_proxy *)) SDL_WAYLAND_SYM(void, wl_proxy_set_queue, (struct wl_proxy *, struct wl_event_queue *)) SDL_WAYLAND_SYM(struct wl_display *, wl_display_connect, (const char *)) SDL_WAYLAND_SYM(struct wl_display *, wl_display_connect_to_fd, (int)) SDL_WAYLAND_SYM(void, wl_display_disconnect, (struct wl_display *)) SDL_WAYLAND_SYM(int, wl_display_get_fd, (struct wl_display *)) | > | 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | SDL_WAYLAND_MODULE(WAYLAND_CLIENT) SDL_WAYLAND_SYM(void, wl_proxy_marshal, (struct wl_proxy *, uint32_t, ...)) SDL_WAYLAND_SYM(struct wl_proxy *, wl_proxy_create, (struct wl_proxy *, const struct wl_interface *)) SDL_WAYLAND_SYM(void, wl_proxy_destroy, (struct wl_proxy *)) SDL_WAYLAND_SYM(int, wl_proxy_add_listener, (struct wl_proxy *, void (**)(void), void *)) SDL_WAYLAND_SYM(void, wl_proxy_set_user_data, (struct wl_proxy *, void *)) SDL_WAYLAND_SYM(void *, wl_proxy_get_user_data, (struct wl_proxy *)) SDL_WAYLAND_SYM(uint32_t, wl_proxy_get_version, (struct wl_proxy *)) SDL_WAYLAND_SYM(uint32_t, wl_proxy_get_id, (struct wl_proxy *)) SDL_WAYLAND_SYM(const char *, wl_proxy_get_class, (struct wl_proxy *)) SDL_WAYLAND_SYM(void, wl_proxy_set_queue, (struct wl_proxy *, struct wl_event_queue *)) SDL_WAYLAND_SYM(struct wl_display *, wl_display_connect, (const char *)) SDL_WAYLAND_SYM(struct wl_display *, wl_display_connect_to_fd, (int)) SDL_WAYLAND_SYM(void, wl_display_disconnect, (struct wl_display *)) SDL_WAYLAND_SYM(int, wl_display_get_fd, (struct wl_display *)) |
︙ | ︙ |
Changes to jni/SDL2/src/video/wayland/SDL_waylandvideo.c.
︙ | ︙ | |||
360 361 362 363 364 365 366 | d->shm = wl_registry_bind(registry, id, &wl_shm_interface, 1); d->cursor_theme = WAYLAND_wl_cursor_theme_load(NULL, 32, d->shm); } else if (strcmp(interface, "zwp_relative_pointer_manager_v1") == 0) { Wayland_display_add_relative_pointer_manager(d, id); } else if (strcmp(interface, "zwp_pointer_constraints_v1") == 0) { Wayland_display_add_pointer_constraints(d, id); } else if (strcmp(interface, "wl_data_device_manager") == 0) { | | | 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 | d->shm = wl_registry_bind(registry, id, &wl_shm_interface, 1); d->cursor_theme = WAYLAND_wl_cursor_theme_load(NULL, 32, d->shm); } else if (strcmp(interface, "zwp_relative_pointer_manager_v1") == 0) { Wayland_display_add_relative_pointer_manager(d, id); } else if (strcmp(interface, "zwp_pointer_constraints_v1") == 0) { Wayland_display_add_pointer_constraints(d, id); } else if (strcmp(interface, "wl_data_device_manager") == 0) { d->data_device_manager = wl_registry_bind(d->registry, id, &wl_data_device_manager_interface, SDL_min(3, version)); #ifdef SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH } else if (strcmp(interface, "qt_touch_extension") == 0) { Wayland_touch_create(d, id); } else if (strcmp(interface, "qt_surface_extension") == 0) { d->surface_extension = wl_registry_bind(registry, id, &qt_surface_extension_interface, 1); } else if (strcmp(interface, "qt_windowmanager") == 0) { |
︙ | ︙ |
Changes to jni/SDL2/src/video/windows/SDL_windowsevents.c.
︙ | ︙ | |||
83 84 85 86 87 88 89 90 91 92 93 94 95 96 | #endif static SDL_Scancode VKeytoScancode(WPARAM vkey) { switch (vkey) { case VK_CLEAR: return SDL_SCANCODE_CLEAR; case VK_MODECHANGE: return SDL_SCANCODE_MODE; case VK_SELECT: return SDL_SCANCODE_SELECT; case VK_EXECUTE: return SDL_SCANCODE_EXECUTE; case VK_HELP: return SDL_SCANCODE_HELP; case VK_PAUSE: return SDL_SCANCODE_PAUSE; case VK_NUMLOCK: return SDL_SCANCODE_NUMLOCKCLEAR; | > > > > | 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | #endif static SDL_Scancode VKeytoScancode(WPARAM vkey) { switch (vkey) { case VK_CLEAR: return SDL_SCANCODE_CLEAR; case VK_LEFT: return SDL_SCANCODE_LEFT; case VK_UP: return SDL_SCANCODE_UP; case VK_RIGHT: return SDL_SCANCODE_RIGHT; case VK_DOWN: return SDL_SCANCODE_DOWN; case VK_MODECHANGE: return SDL_SCANCODE_MODE; case VK_SELECT: return SDL_SCANCODE_SELECT; case VK_EXECUTE: return SDL_SCANCODE_EXECUTE; case VK_HELP: return SDL_SCANCODE_HELP; case VK_PAUSE: return SDL_SCANCODE_PAUSE; case VK_NUMLOCK: return SDL_SCANCODE_NUMLOCKCLEAR; |
︙ | ︙ |
Changes to jni/sdl2tk/generic/tkEntry.c.
︙ | ︙ | |||
434 435 436 437 438 439 440 | static void EntryVisibleRange(Entry *entryPtr, double *firstPtr, double *lastPtr); static int EntryWidgetObjCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]); static void EntryWorldChanged(ClientData instanceData); static int GetEntryIndex(Tcl_Interp *interp, Entry *entryPtr, | | | 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 | static void EntryVisibleRange(Entry *entryPtr, double *firstPtr, double *lastPtr); static int EntryWidgetObjCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]); static void EntryWorldChanged(ClientData instanceData); static int GetEntryIndex(Tcl_Interp *interp, Entry *entryPtr, Tcl_Obj *indexObj, int *indexPtr); static int InsertChars(Entry *entryPtr, int index, const char *string); /* * These forward declarations are the spinbox specific ones: */ static int SpinboxWidgetObjCmd(ClientData clientData, |
︙ | ︙ | |||
628 629 630 631 632 633 634 | int index, x, y, width, height; Tcl_Obj *bbox[4]; if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "index"); goto error; } | | | 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 | int index, x, y, width, height; Tcl_Obj *bbox[4]; if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &index) != TCL_OK) { goto error; } if ((index == entryPtr->numChars) && (index > 0)) { index--; } Tk_CharBbox(entryPtr->textLayout, index, &x, &y, &width, &height); |
︙ | ︙ | |||
680 681 682 683 684 685 686 | case COMMAND_DELETE: { int first, last, code; if ((objc < 3) || (objc > 4)) { Tcl_WrongNumArgs(interp, 2, objv, "firstIndex ?lastIndex?"); goto error; } | | | | 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 | case COMMAND_DELETE: { int first, last, code; if ((objc < 3) || (objc > 4)) { Tcl_WrongNumArgs(interp, 2, objv, "firstIndex ?lastIndex?"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &first) != TCL_OK) { goto error; } if (objc == 3) { last = first + 1; } else if (GetEntryIndex(interp, entryPtr, objv[3], &last) != TCL_OK) { goto error; } if ((last >= first) && (entryPtr->state == STATE_NORMAL)) { code = DeleteChars(entryPtr, first, last - first); if (code != TCL_OK) { goto error; |
︙ | ︙ | |||
712 713 714 715 716 717 718 | break; case COMMAND_ICURSOR: if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "pos"); goto error; } | | | | | 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 | break; case COMMAND_ICURSOR: if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "pos"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &entryPtr->insertPos) != TCL_OK) { goto error; } EventuallyRedraw(entryPtr); break; case COMMAND_INDEX: { int index; if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "string"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &index) != TCL_OK) { goto error; } Tcl_SetObjResult(interp, Tcl_NewIntObj(index)); break; } case COMMAND_INSERT: { int index, code; if (objc != 4) { Tcl_WrongNumArgs(interp, 2, objv, "index text"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &index) != TCL_OK) { goto error; } if (entryPtr->state == STATE_NORMAL) { code = InsertChars(entryPtr, index, Tcl_GetString(objv[3])); if (code != TCL_OK) { goto error; |
︙ | ︙ | |||
827 828 829 830 831 832 833 | switch (selIndex) { case SELECTION_ADJUST: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, | | | 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 | switch (selIndex) { case SELECTION_ADJUST: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[3], &index) != TCL_OK) { goto error; } if (entryPtr->selectFirst >= 0) { int half1, half2; half1 = (entryPtr->selectFirst + entryPtr->selectLast)/2; half2 = (entryPtr->selectFirst + entryPtr->selectLast + 1)/2; |
︙ | ︙ | |||
867 868 869 870 871 872 873 | case SELECTION_FROM: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, | | | | | 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 | case SELECTION_FROM: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[3], &index) != TCL_OK) { goto error; } entryPtr->selectAnchor = index; break; case SELECTION_PRESENT: if (objc != 3) { Tcl_WrongNumArgs(interp, 3, objv, NULL); goto error; } Tcl_SetObjResult(interp, Tcl_NewBooleanObj(entryPtr->selectFirst >= 0)); goto done; case SELECTION_RANGE: if (objc != 5) { Tcl_WrongNumArgs(interp, 3, objv, "start end"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[3], &index) != TCL_OK) { goto error; } if (GetEntryIndex(interp, entryPtr, objv[4], &index2) != TCL_OK) { goto error; } if (index >= index2) { entryPtr->selectFirst = -1; entryPtr->selectLast = -1; } else { |
︙ | ︙ | |||
918 919 920 921 922 923 924 | case SELECTION_TO: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, | | | 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 | case SELECTION_TO: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[3], &index) != TCL_OK) { goto error; } EntrySelectTo(entryPtr, index); break; } break; } |
︙ | ︙ | |||
958 959 960 961 962 963 964 | EntryVisibleRange(entryPtr, &first, &last); span[0] = Tcl_NewDoubleObj(first); span[1] = Tcl_NewDoubleObj(last); Tcl_SetObjResult(interp, Tcl_NewListObj(2, span)); goto done; } else if (objc == 3) { | | | 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 | EntryVisibleRange(entryPtr, &first, &last); span[0] = Tcl_NewDoubleObj(first); span[1] = Tcl_NewDoubleObj(last); Tcl_SetObjResult(interp, Tcl_NewListObj(2, span)); goto done; } else if (objc == 3) { if (GetEntryIndex(interp, entryPtr, objv[2], &index) != TCL_OK) { goto error; } } else { double fraction; int count; |
︙ | ︙ | |||
2738 2739 2740 2741 2742 2743 2744 | */ static int GetEntryIndex( Tcl_Interp *interp, /* For error messages. */ Entry *entryPtr, /* Entry for which the index is being * specified. */ | | > | < < | 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 | */ static int GetEntryIndex( Tcl_Interp *interp, /* For error messages. */ Entry *entryPtr, /* Entry for which the index is being * specified. */ Tcl_Obj *indexObj, /* Specifies character in entryPtr. */ int *indexPtr) /* Where to store converted character index */ { const char *string = Tcl_GetString(indexObj); size_t length = indexObj->length; int roundUp = 0; #if TCL_UTF_MAX < 4 int oldInsertPos = entryPtr->insertPos; #endif switch (string[0]) { case 'a': if (strncmp(string, "anchor", length) != 0) { goto badIndex; } *indexPtr = entryPtr->selectAnchor; break; |
︙ | ︙ | |||
2821 2822 2823 2824 2825 2826 2827 | if (roundUp && (*indexPtr < entryPtr->numChars)) { *indexPtr += 1; } break; } default: | | | 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 | if (roundUp && (*indexPtr < entryPtr->numChars)) { *indexPtr += 1; } break; } default: if (Tcl_GetIntFromObj(NULL, indexObj, indexPtr) != TCL_OK) { goto badIndex; } if (*indexPtr < 0){ *indexPtr = 0; } else if (*indexPtr > entryPtr->numChars) { *indexPtr = entryPtr->numChars; } |
︙ | ︙ | |||
3972 3973 3974 3975 3976 3977 3978 | int index, x, y, width, height; Tcl_Obj *bbox[4]; if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "index"); goto error; } | | | 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 | int index, x, y, width, height; Tcl_Obj *bbox[4]; if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &index) != TCL_OK) { goto error; } if ((index == entryPtr->numChars) && (index > 0)) { index--; } Tk_CharBbox(entryPtr->textLayout, index, &x, &y, &width, &height); |
︙ | ︙ | |||
4023 4024 4025 4026 4027 4028 4029 | case SB_CMD_DELETE: { int first, last, code; if ((objc < 3) || (objc > 4)) { Tcl_WrongNumArgs(interp, 2, objv, "firstIndex ?lastIndex?"); goto error; } | | | | 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 | case SB_CMD_DELETE: { int first, last, code; if ((objc < 3) || (objc > 4)) { Tcl_WrongNumArgs(interp, 2, objv, "firstIndex ?lastIndex?"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &first) != TCL_OK) { goto error; } if (objc == 3) { last = first + 1; } else { if (GetEntryIndex(interp, entryPtr, objv[3], &last) != TCL_OK) { goto error; } } if ((last >= first) && (entryPtr->state == STATE_NORMAL)) { code = DeleteChars(entryPtr, first, last - first); if (code != TCL_OK) { |
︙ | ︙ | |||
4057 4058 4059 4060 4061 4062 4063 | break; case SB_CMD_ICURSOR: if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "pos"); goto error; } | | | 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 | break; case SB_CMD_ICURSOR: if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "pos"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &entryPtr->insertPos) != TCL_OK) { goto error; } EventuallyRedraw(entryPtr); break; case SB_CMD_IDENTIFY: { |
︙ | ︙ | |||
4090 4091 4092 4093 4094 4095 4096 | case SB_CMD_INDEX: { int index; if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "string"); goto error; } | | | | 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 | case SB_CMD_INDEX: { int index; if (objc != 3) { Tcl_WrongNumArgs(interp, 2, objv, "string"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &index) != TCL_OK) { goto error; } Tcl_SetObjResult(interp, Tcl_NewIntObj(index)); break; } case SB_CMD_INSERT: { int index, code; if (objc != 4) { Tcl_WrongNumArgs(interp, 2, objv, "index text"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[2], &index) != TCL_OK) { goto error; } if (entryPtr->state == STATE_NORMAL) { code = InsertChars(entryPtr, index, Tcl_GetString(objv[3])); if (code != TCL_OK) { goto error; |
︙ | ︙ | |||
4202 4203 4204 4205 4206 4207 4208 | switch (selIndex) { case SB_SEL_ADJUST: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, | | | 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 | switch (selIndex) { case SB_SEL_ADJUST: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[3], &index) != TCL_OK) { goto error; } if (entryPtr->selectFirst >= 0) { int half1, half2; half1 = (entryPtr->selectFirst + entryPtr->selectLast)/2; half2 = (entryPtr->selectFirst + entryPtr->selectLast + 1)/2; |
︙ | ︙ | |||
4242 4243 4244 4245 4246 4247 4248 | case SB_SEL_FROM: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, | | | | | 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 | case SB_SEL_FROM: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[3], &index) != TCL_OK) { goto error; } entryPtr->selectAnchor = index; break; case SB_SEL_PRESENT: if (objc != 3) { Tcl_WrongNumArgs(interp, 3, objv, NULL); goto error; } Tcl_SetObjResult(interp, Tcl_NewBooleanObj( entryPtr->selectFirst >= 0)); goto done; case SB_SEL_RANGE: if (objc != 5) { Tcl_WrongNumArgs(interp, 3, objv, "start end"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[3], &index) != TCL_OK) { goto error; } if (GetEntryIndex(interp, entryPtr, objv[4],& index2) != TCL_OK) { goto error; } if (index >= index2) { entryPtr->selectFirst = -1; entryPtr->selectLast = -1; } else { entryPtr->selectFirst = index; |
︙ | ︙ | |||
4293 4294 4295 4296 4297 4298 4299 | case SB_SEL_TO: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, | | | 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 | case SB_SEL_TO: if (objc != 4) { Tcl_WrongNumArgs(interp, 3, objv, "index"); goto error; } if (GetEntryIndex(interp, entryPtr, objv[3], &index) != TCL_OK) { goto error; } EntrySelectTo(entryPtr, index); break; case SB_SEL_ELEMENT: if ((objc < 3) || (objc > 4)) { |
︙ | ︙ | |||
4373 4374 4375 4376 4377 4378 4379 | EntryVisibleRange(entryPtr, &first, &last); span[0] = Tcl_NewDoubleObj(first); span[1] = Tcl_NewDoubleObj(last); Tcl_SetObjResult(interp, Tcl_NewListObj(2, span)); goto done; } else if (objc == 3) { | | | 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 | EntryVisibleRange(entryPtr, &first, &last); span[0] = Tcl_NewDoubleObj(first); span[1] = Tcl_NewDoubleObj(last); Tcl_SetObjResult(interp, Tcl_NewListObj(2, span)); goto done; } else if (objc == 3) { if (GetEntryIndex(interp, entryPtr, objv[2], &index) != TCL_OK) { goto error; } } else { double fraction; int count; |
︙ | ︙ |
Changes to jni/sdl2tk/generic/tkFont.c.
︙ | ︙ | |||
937 938 939 940 941 942 943 | #if defined(MAC_OSX_TK) /* * On macOS it is catastrophic to recompute all widgets while the * [NSView drawRect] method is drawing. The best that we can do in * that situation is to abort the recomputation and hope for the best. */ | | | 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 | #if defined(MAC_OSX_TK) /* * On macOS it is catastrophic to recompute all widgets while the * [NSView drawRect] method is drawing. The best that we can do in * that situation is to abort the recomputation and hope for the best. */ if (TkpAppIsDrawing()) { return; } #endif fiPtr->updatePending = 0; RecomputeWidgets(fiPtr->mainPtr->winPtr); } |
︙ | ︙ | |||
3635 3636 3637 3638 3639 3640 3641 | Tk_Window tkwin, /* For display on which font is used. */ Tcl_Obj *objPtr, /* Parseable font description object. */ TkFontAttributes *faPtr) /* Filled with attributes parsed from font * name. Any attributes that were not * specified in font name are filled with * default values. */ { | | | 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 | Tk_Window tkwin, /* For display on which font is used. */ Tcl_Obj *objPtr, /* Parseable font description object. */ TkFontAttributes *faPtr) /* Filled with attributes parsed from font * name. Any attributes that were not * specified in font name are filled with * default values. */ { const char *dash; int objc, result, i, n; Tcl_Obj **objv; const char *string; TkInitFontAttributes(faPtr); string = Tcl_GetString(objPtr); |
︙ | ︙ |
Changes to jni/sdl2tk/generic/tkMenu.c.
︙ | ︙ | |||
2143 2144 2145 2146 2147 2148 2149 | if (GetIndexFromCoords(interp, menuPtr, string, indexPtr) == TCL_OK) { goto success; } } if (isdigit(UCHAR(string[0]))) { | | | 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 | if (GetIndexFromCoords(interp, menuPtr, string, indexPtr) == TCL_OK) { goto success; } } if (isdigit(UCHAR(string[0]))) { if (Tcl_GetIntFromObj(interp, objPtr, &i) == TCL_OK) { if (i >= menuPtr->numEntries) { if (lastOK) { i = menuPtr->numEntries; } else { i = menuPtr->numEntries-1; } } else if (i < 0) { |
︙ | ︙ |
Changes to jni/sdl2tk/generic/tkOption.c.
︙ | ︙ | |||
403 404 405 406 407 408 409 | * with. */ const char *name, /* Name of option. */ const char *className) /* Class of option. NULL means there is no * class for this option: just check for * name. */ { Tk_Uid nameId, classId = NULL; | | | 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 | * with. */ const char *name, /* Name of option. */ const char *className) /* Class of option. NULL means there is no * class for this option: just check for * name. */ { Tk_Uid nameId, classId = NULL; const char *masqName; register Element *elPtr, *bestPtr; register int count; StackLevel *levelPtr; int stackDepth[NUM_STACKS]; ThreadSpecificData *tsdPtr = Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData)); |
︙ | ︙ |
Changes to jni/sdl2tk/generic/tkStyle.c.
︙ | ︙ | |||
605 606 607 608 609 610 611 | * implicitly (by a derived element). */ { ThreadSpecificData *tsdPtr = Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData)); Tcl_HashEntry *entryPtr, *engineEntryPtr; Tcl_HashSearch search; int newEntry, elementId, genericId = -1; | | | 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 | * implicitly (by a derived element). */ { ThreadSpecificData *tsdPtr = Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData)); Tcl_HashEntry *entryPtr, *engineEntryPtr; Tcl_HashSearch search; int newEntry, elementId, genericId = -1; const char *dot; StyleEngine *enginePtr; /* * Find or create the element. */ entryPtr = Tcl_CreateHashEntry(&tsdPtr->elementTable, name, &newEntry); |
︙ | ︙ | |||
686 687 688 689 690 691 692 | Tk_GetElementId( const char *name) /* Name of the element. */ { ThreadSpecificData *tsdPtr = Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData)); Tcl_HashEntry *entryPtr; int genericId = -1; | | | 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 | Tk_GetElementId( const char *name) /* Name of the element. */ { ThreadSpecificData *tsdPtr = Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData)); Tcl_HashEntry *entryPtr; int genericId = -1; const char *dot; /* * Find the element Id. */ entryPtr = Tcl_FindHashEntry(&tsdPtr->elementTable, name); if (entryPtr) { |
︙ | ︙ |
Changes to jni/sdl2tk/generic/ttk/ttkEntry.c.
︙ | ︙ | |||
1516 1517 1518 1519 1520 1521 1522 | * last character to be selected, for example. */ if (roundUp && (*indexPtr < entryPtr->entry.numChars)) { *indexPtr += 1; } } else { | | | 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 | * last character to be selected, for example. */ if (roundUp && (*indexPtr < entryPtr->entry.numChars)) { *indexPtr += 1; } } else { if (Tcl_GetIntFromObj(interp, indexObj, indexPtr) != TCL_OK) { goto badIndex; } if (*indexPtr < 0) { *indexPtr = 0; } else if (*indexPtr > entryPtr->entry.numChars) { *indexPtr = entryPtr->entry.numChars; } |
︙ | ︙ |