Class Link
- All Implemented Interfaces:
Drawable
- Styles:
- (none)
- Events:
- Selection
IMPORTANT: This class is not intended to be subclassed.
- Since:
- 3.1
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) Color(package private) intIndex of the currently focused link in the text.(package private) String[](package private) TextLayout(package private) static final RGB(package private) Color(package private) int[](package private) Point[](package private) Point(package private) StringFields inherited from class Control
accessible, autoScale, backgroundAlpha, backgroundImage, cachedNoBackground, checkScaleFactor, cssBackground, cssForeground, cursor, DISABLE_EMOJI, dragDetectionQueue, dragGesture, drawCount, drawRegion, enableWindow, eventRegion, firstFixedHandle, fixedHandle, font, gestureBegin, gestureEnd, gestureRotation, gestureSwipe, gestureZoom, keyController, labelRelation, lastInput, layoutData, menu, mouseDown, panGesture, parent, provider, redrawWindow, region, regionHandle, rotateGesture, toolTipText, zoomGestureFields inherited from class Widget
ACTIVATE, ACTIVATE_INVERSE, AUTO_TEXT_DIRECTION, BACKGROUND, BACKSPACE, BACKSPACE_INVERSE, BUTTON_PRESS_EVENT, BUTTON_PRESS_EVENT_INVERSE, BUTTON_RELEASE_EVENT, BUTTON_RELEASE_EVENT_INVERSE, CANVAS, CHANGE_VALUE, CHANGED, CHECK_SUBWINDOW, CLICKED, CLOSE_REQUEST, COMMIT, COMPUTE_SIZE, CONFIGURE_EVENT, COPY_CLIPBOARD, COPY_CLIPBOARD_INVERSE, CREATE_MENU_PROXY, CUT_CLIPBOARD, CUT_CLIPBOARD_INVERSE, data, DAY_SELECTED, DAY_SELECTED_DOUBLE_CLICK, DECELERATE, DEFAULT_HEIGHT, DEFAULT_WIDTH, DELETE_EVENT, DELETE_FROM_CURSOR, DELETE_FROM_CURSOR_INVERSE, DELETE_RANGE, DELETE_TEXT, DIRECTION_CHANGED, DISABLED, display, DISPOSE_SENT, DISPOSED, DPI_CHANGED, DRAG_DETECT, DRAW, ENTER, ENTER_NOTIFY_EVENT, EVENT, EVENT_AFTER, eventTable, EXPAND_COLLAPSE_CURSOR_ROW, EXPOSE_EVENT, EXPOSE_EVENT_INVERSE, FOCUS, FOCUS_IN, FOCUS_IN_EVENT, FOCUS_OUT, FOCUS_OUT_EVENT, FONT, FOREGROUND, FOREIGN_HANDLE, gdkSeatGrabPrepareFunc, GESTURE_PRESSED, GESTURE_RELEASED, GRAB_FOCUS, handle, HANDLE, HAS_AUTO_DIRECTION, HIDDEN, HIDE, ICON_RELEASE, IM_UPDATE, INPUT, INSERT_TEXT, IS_ACTIVE, KEY_CHECK_SUBWINDOW, KEY_GTK_CSS, KEY_PRESS_EVENT, KEY_PRESSED, KEY_RELEASE_EVENT, KEY_RELEASED, KEYED_DATA, LAST_SIGNAL, LAYOUT_CHANGED, LAYOUT_CHILD, LAYOUT_NEEDED, LEAVE, LEAVE_NOTIFY_EVENT, MAP, MAP_EVENT, MENU, MNEMONIC_ACTIVATE, MONTH_CHANGED, MOTION, MOTION_INVERSE, MOTION_NOTIFY_EVENT, MOTION_NOTIFY_EVENT_INVERSE, MOVE_CURSOR, MOVE_CURSOR_INVERSE, MOVE_FOCUS, MOVED, NOTIFY_DEFAULT_HEIGHT, NOTIFY_DEFAULT_WIDTH, NOTIFY_MAXIMIZED, NOTIFY_STATE, OBSCURED, OUTPUT, PARENT_BACKGROUND, PASTE_CLIPBOARD, PASTE_CLIPBOARD_INVERSE, POPPED_UP, POPULATE_POPUP, POPUP_MENU, PREEDIT_CHANGED, REALIZE, RELEASED, RESIZED, ROW_ACTIVATED, ROW_DELETED, ROW_HAS_CHILD_TOGGLED, ROW_INSERTED, SCROLL, SCROLL_BEGIN, SCROLL_CHILD, SCROLL_END, SCROLL_EVENT, SELECT, SELECTION_DONE, SHOW, SHOW_HELP, SIZE_ALLOCATE, SIZE_ALLOCATE_GTK4, SKIN_NEEDED, START_INTERACTIVE_SEARCH, state, STATUS_ICON_POPUP_MENU, style, STYLE_UPDATED, SWITCH_PAGE, TEST_COLLAPSE_ROW, TEST_EXPAND_ROW, TEXT_BUFFER_INSERT_TEXT, THEME_BACKGROUND, TOGGLED, UNMAP, UNMAP_EVENT, UNREALIZE, VALUE_CHANGED, WINDOW_STATE_EVENT, ZERO_HEIGHT, ZERO_WIDTH -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSelectionListener(SelectionListener listener) Adds the listener to the collection of listeners who will be notified when the control is selected by the user, by sending it one of the messages defined in theSelectionListenerinterface.(package private) PointcomputeSizeInPixels(int wHint, int hHint, boolean changed) (package private) voidcreateHandle(int index) (package private) voidcreateWidget(int index) (package private) voiddrawWidget(GC gc) (package private) voidenableWidget(boolean enabled) (package private) voidfixStyle()Returns the link foreground color.(package private) String(package private) Rectangle[]getRectanglesInPixels(int linkIndex) getText()Returns the receiver's text, which will be an empty string if it has never been set.(package private) longgtk_button_press_event(long widget, long event) (package private) longgtk_button_release_event(long widget, long event) (package private) longgtk_draw(long widget, long cairo) (package private) longgtk_motion_notify_event(long widget, long event) (package private) longgtk3_event_after(long widget, long gdkEvent) (package private) longgtk3_key_press_event(long widget, long eventPtr) (package private) booleangtk4_key_press_event(long controller, int keyval, int keycode, int state, long event) (package private) boolean(package private) void(package private) booleanmnemonicHit(char key) (package private) booleanmnemonicMatch(char key) (package private) String(package private) intparseMnemonics(char[] buffer, int start, int end, StringBuilder result) (package private) voidvoidremoveSelectionListener(SelectionListener listener) Removes the listener from the collection of listeners who will be notified when the control is selected by the user.(package private) intsetBounds(int x, int y, int width, int height, boolean move, boolean resize) (package private) voidsetFontDescription(long font) voidsetLinkForeground(Color color) Sets the link foreground color to the color specified by the argument, or to the default system color for the link if the argument is null.(package private) voidsetOrientation(boolean create) voidSets the receiver's text.(package private) void(package private) void(package private) inttraversalCode(int key, long event) Methods inherited from class Control
_getAccessible, _getShell, addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addRelation, addTouchListener, addTraverseListener, adjustChildClipping, cairoClipRegion, cairoCopyRegion, cairoDisposeRegion, checkBackground, checkBorder, checkBuffered, checkMirrored, checkSubwindow, cleanupEnableWindow, computeNativeSize, computeSize, computeSize, computeSizeInPixels, computeTabGroup, computeTabList, computeTabRoot, containedInRegion, defaultBackground, defaultFont, deregister, destroyWidget, dragDetect, dragDetect, dragDetect, dragDetect, drawBackground, drawGripper, enterExitHandle, eventHandle, eventSurface, eventWindow, filterKey, findBackgroundControl, findMenus, fixChildren, fixFocus, fixGdkEventTypeValues, fixModal, fixParentGdkResource, fixStyle, flushQueueOnDnd, focusHandle, fontHandle, forceFocus, forceFocus, forceResize, gestureBeginProc, gestureEndProc, gestureHandle, getAccessible, getBackground, getBackgroundGdkRGBA, getBackgroundImage, getBaseGdkRGBA, getBgGdkRGBA, getBorderWidth, getBorderWidthInPixels, getBounds, getBoundsInPixels, getClientWidth, getContextBackgroundGdkRGBA, getContextColorGdkRGBA, getControl, getControlOrigin, getCursor, getDragDetect, getEnabled, getFont, getFontDescription, getForeground, getForegroundGdkRGBA, getIMCaretPos, getLayoutData, getLocation, getLocationInPixels, getMenu, getMonitor, getOrientation, getParent, getPath, getRegion, getShell, getSize, getSizeInPixels, getSurfaceOrigin, getTextDirection, getThickness, getToolTipText, getTouchEnabled, getVisible, getWindowOrigin, gtk_button_press_event, gtk_commit, gtk_css_provider_load_from_css, gtk_enter_notify_event, gtk_focus, gtk_focus_in_event, gtk_focus_out_event, gtk_gesture_press_event, gtk_gesture_release_event, gtk_label_set_align, gtk_leave_notify_event, gtk_mnemonic_activate, gtk_preedit_changed, gtk_realize, gtk_scroll_event, gtk_style_context_get_border, gtk_style_context_get_padding, gtk_style_updated, gtk_unrealize, gtk_widget_reparent, gtk_widget_set_align, gtk3_key_release_event, gtk3_popup_menu, gtk3_show_help, gtk4_draw, gtk4_enter_event, gtk4_focus_enter_event, gtk4_focus_leave_event, gtk4_focus_window_event, gtk4_key_release_event, gtk4_leave_event, gtk4_motion_event, gtk4_scroll_event, hasFocus, hookEvents, hoverProc, imHandle, internal_dispose_GC, internal_new_GC, isActive, isAutoScalable, isDescribedByLabel, isEnabled, isFocusAncestor, isFocusControl, isFocusHandle, isReparentable, isShowing, isTabGroup, isTabItem, isVisible, magnifyProc, markLayout, menuShell, moveAbove, moveBelow, moveChildren, moveHandle, mustBeVisibleOnInitBounds, pack, pack, paintHandle, paintSurface, paintWindow, print, printWidget, printWindow, redraw, redraw, redraw, redrawChildren, redrawWidget, register, release, releaseHandle, releaseParent, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeRelation, removeTouchListener, removeTraverseListener, requestLayout, resizeCalculationsGTK3, resizeHandle, restackWindow, rotateProc, sendDragEvent, sendFocusEvent, sendGestureEvent, sendGestureEvent, sendGestureEvent, sendHelpEvent, sendLeaveNotify, sendMouseEvent, sendMouseEvent, setBackground, setBackground, setBackgroundGdkRGBA, setBackgroundGdkRGBA, setBackgroundGdkRGBA, setBackgroundImage, setBackgroundSurface, setBounds, setBounds, setBoundsInPixels, setBoundsInPixels, setCapture, setCursor, setCursor, setDragDetect, setEnabled, setFocus, setFont, setForeground, setForegroundGdkRGBA, setForegroundGdkRGBA, setInitialBounds, setLayoutData, setLocation, setLocation, setLocationInPixels, setLocationInPixels, setMenu, setOrientation, setParent, setParentBackground, setParentGdkResource, setRadioSelection, setRedraw, setRegion, setRelations, setSize, setSize, setSizeInPixels, setSizeInPixels, setTabItemFocus, setTextDirection, setToolTipText, setToolTipText, setTouchEnabled, setVisible, setWidgetBackground, setZOrder, setZOrder, showMenu, showMenu, sort, swipeProc, toControl, toControl, toDisplay, toDisplay, toDisplayInPixels, topHandle, translateMnemonic, translateMnemonic, translateTraversal, traverse, traverse, traverse, traverse, traverse, traverseEscape, traverseGroup, traverseItem, traverseMnemonic, traversePage, traverseReturn, update, update, updateBackgroundMode, updateLayout, wantDragDropDetection, windowProcMethods inherited from class Widget
_addListener, addDisposeListener, addListener, addTypedListener, cellDataProc, checkBits, checkOpen, checkOrientation, checkParent, checkSubclass, checkWidget, convertPangoFontDescriptionToCss, cssHandle, dispose, dpiChanged, enterMotionProc, error, filterProc, filters, fixMnemonic, fixMnemonic, fixMnemonic, focusProc, fontHeight, gdk_event_free, gdk_event_get_state, gdk_event_get_surface_or_window, gdk_pointer_grab, gdk_pointer_ungrab, gdk_surface_get_size, gdk_window_get_size, GdkSeatGrabPrepareFunc, gesturePressReleaseProc, getData, getData, getDisplay, getListeners, getName, getStyle, getTypedListeners, gtk_activate, gtk_adjustment_get, gtk_box_new, gtk_box_pack_end, gtk_box_set_child_packing, gtk_cell_renderer_get_preferred_size, gtk_change_value, gtk_changed, gtk_clicked, gtk_close_request, gtk_configure_event, gtk_container_get_border_width_or_margin, gtk_container_set_border_width, gtk_create_menu_proxy, gtk_day_selected, gtk_day_selected_double_click, gtk_delete_event, gtk_delete_range, gtk_delete_text, gtk_expand_collapse_cursor_row, gtk_grab_focus, gtk_hide, gtk_icon_release, gtk_input, gtk_insert_text, gtk_map, gtk_map_event, gtk_menu_popped_up, gtk_month_changed, gtk_move_focus, gtk_output, gtk_populate_popup, gtk_row_activated, gtk_row_has_child_toggled, gtk_scroll_child, gtk_select, gtk_selection_done, gtk_show, gtk_size_allocate, gtk_start_interactive_search, gtk_status_icon_popup_menu, gtk_switch_page, gtk_test_collapse_row, gtk_test_expand_row, gtk_text_buffer_insert_text, gtk_timer, gtk_toggled, gtk_tree_view_column_cell_get_position, gtk_unmap, gtk_unmap_event, gtk_value_changed, gtk_widget_get_preferred_size, gtk_widget_get_surface, gtk_widget_get_window, gtk_widget_hide, gtk_widget_show, gtk_widget_size_allocate, gtk_window_state_event, hooks, isAutoDirection, isDisposed, isListening, isValidSubclass, isValidThread, keyPressReleaseProc, leaveProc, mnemonicHit, mnemonicMatch, notifyCreationTracker, notifyDisposalTracker, notifyListeners, notifyProc, notifyState, postEvent, postEvent, releaseChildren, removeDisposeListener, removeListener, removeListener, removeListener, removeTypedListener, rendererGetPreferredWidthProc, rendererRenderProc, rendererSnapshotProc, reskin, reskinChildren, reskinWidget, scrollProc, sendEvent, sendEvent, sendEvent, sendEvent, sendIMKeyEvent, sendKeyEvent, sendSelectionEvent, sendSelectionEvent, setButtonState, setData, setData, setFontDescription, setInputState, setKeyState, setLocationState, setTabGroupFocus, setToolTipText, shellMapProc, sizeAllocateProc, sizeRequestProc, snapshotToDraw, timerProc, toString, translateTraversal, windowActiveProc, windowProc, windowProc, windowProc, windowProc
-
Field Details
-
text
String text -
layout
TextLayout layout -
linkColor
Color linkColor -
disabledColor
Color disabledColor -
offsets
Point[] offsets -
selection
Point selection -
ids
String[] ids -
mnemonics
int[] mnemonics -
focusIndex
int focusIndexIndex of the currently focused link in the text. Equals -1, if the text has not been set through setText -
LINK_DISABLED_FOREGROUND
-
-
Constructor Details
-
Link
Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.The style value is either one of the style constants defined in class
SWTwhich is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using theint"|" operator) two or more of thoseSWTstyle constants. The class description lists the style constants that are applicable to the class. Style bits are also inherited from superclasses.- Parameters:
parent- a composite control which will be the parent of the new instance (cannot be null)style- the style of control to construct- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the parent is null
SWTException-- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
- ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass
- See Also:
-
-
Method Details
-
addSelectionListener
Adds the listener to the collection of listeners who will be notified when the control is selected by the user, by sending it one of the messages defined in theSelectionListenerinterface.widgetSelectedis called when the control is selected by the user.widgetDefaultSelectedis not called.- Parameters:
listener- the listener which should be notified- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the listener is null
SWTException-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- See Also:
-
computeSizeInPixels
- Overrides:
computeSizeInPixelsin classControl
-
createHandle
void createHandle(int index) - Overrides:
createHandlein classWidget
-
createWidget
void createWidget(int index) - Overrides:
createWidgetin classControl
-
drawWidget
- Overrides:
drawWidgetin classControl
-
enableWidget
void enableWidget(boolean enabled) - Overrides:
enableWidgetin classControl
-
fixStyle
-
initAccessible
void initAccessible() -
getLinkForeground
Returns the link foreground color.- Returns:
- the receiver's link foreground color.
- Throws:
SWTException-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- Since:
- 3.105
-
getNameText
String getNameText()- Overrides:
getNameTextin classWidget
-
getRectanglesInPixels
-
getText
Returns the receiver's text, which will be an empty string if it has never been set.- Returns:
- the receiver's text
- Throws:
SWTException-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
gtk_button_press_event
long gtk_button_press_event(long widget, long event) - Overrides:
gtk_button_press_eventin classControl
-
gtk_button_release_event
long gtk_button_release_event(long widget, long event) - Overrides:
gtk_button_release_eventin classControl
-
gtk_draw
-
gtk3_event_after
long gtk3_event_after(long widget, long gdkEvent) - Overrides:
gtk3_event_afterin classControl
-
gtk4_key_press_event
boolean gtk4_key_press_event(long controller, int keyval, int keycode, int state, long event) - Overrides:
gtk4_key_press_eventin classControl- Parameters:
controller- the corresponding controller responsible for capturing the eventkeyval- the pressed keykeycode- raw code of the pressed keystate- the bitmask, representing the state of the modifier keys and pointer buttonsevent- the GdkEvent captured- Returns:
- TRUE if the event has been fully/properly handled, otherwise FALSE
-
gtk3_key_press_event
long gtk3_key_press_event(long widget, long eventPtr) - Overrides:
gtk3_key_press_eventin classControl
-
gtk_motion_notify_event
long gtk_motion_notify_event(long widget, long event) - Overrides:
gtk_motion_notify_eventin classControl
-
hooksPaint
boolean hooksPaint()- Overrides:
hooksPaintin classControl
-
mnemonicHit
boolean mnemonicHit(char key) - Overrides:
mnemonicHitin classControl
-
mnemonicMatch
boolean mnemonicMatch(char key) - Overrides:
mnemonicMatchin classControl
-
releaseWidget
void releaseWidget()- Overrides:
releaseWidgetin classControl
-
removeSelectionListener
Removes the listener from the collection of listeners who will be notified when the control is selected by the user.- Parameters:
listener- the listener which should no longer be notified- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the listener is null
SWTException-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- See Also:
-
parse
-
parseMnemonics
-
setBounds
-
setFontDescription
void setFontDescription(long font) - Overrides:
setFontDescriptionin classControl
-
setLinkForeground
Sets the link foreground color to the color specified by the argument, or to the default system color for the link if the argument is null.Note: This operation is a hint and may be overridden by the platform.
- Parameters:
color- the new color (or null)- Throws:
IllegalArgumentException-- ERROR_INVALID_ARGUMENT - if the argument has been disposed
SWTException-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
- Since:
- 3.105
-
setOrientation
void setOrientation(boolean create) - Overrides:
setOrientationin classControl
-
setText
Sets the receiver's text.The string can contain both regular text and hyperlinks. A hyperlink is delimited by an anchor tag, <a> and </a>. Within an anchor, a single HREF attribute is supported. When a hyperlink is selected, the text field of the selection event contains either the text of the hyperlink or the value of its HREF, if one was specified. In the rare case of identical hyperlinks within the same string, the HREF attribute can be used to distinguish between them. The string may include the mnemonic character and line delimiters. The only delimiter the HREF attribute supports is the quotation mark ("). Text containing angle-bracket characters < or > may be escaped using \\, however this operation is a hint and varies from platform to platform.
Mnemonics are indicated by an '&' that causes the next character to be the mnemonic. The receiver can have a mnemonic in the text preceding each link. When the user presses a key sequence that matches the mnemonic, focus is assigned to the link that follows the text. Mnemonics in links and in the trailing text are ignored. On most platforms, the mnemonic appears underlined but may be emphasised in a platform specific manner. The mnemonic indicator character '&' can be escaped by doubling it in the string, causing a single '&' to be displayed.
- Parameters:
string- the new text- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the text is null
SWTException-- ERROR_WIDGET_DISPOSED - if the receiver has been disposed
- ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
-
showWidget
void showWidget()- Overrides:
showWidgetin classControl
-
styleLinkParts
void styleLinkParts() -
traversalCode
int traversalCode(int key, long event) - Overrides:
traversalCodein classControl
-