URI: 
       entry.h - ltk - GUI toolkit for X11 (WIP)
  HTML git clone git://lumidify.org/ltk.git (fast, but not encrypted)
  HTML git clone https://lumidify.org/ltk.git (encrypted, but very slow)
  HTML git clone git://4kcetb7mo7hj6grozzybxtotsub5bempzo4lirzc3437amof2c2impyd.onion/ltk.git (over tor)
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
       entry.h (1365B)
       ---
            1 /*
            2  * Copyright (c) 2022-2024 lumidify <nobody@lumidify.org>
            3  *
            4  * Permission to use, copy, modify, and/or distribute this software for any
            5  * purpose with or without fee is hereby granted, provided that the above
            6  * copyright notice and this permission notice appear in all copies.
            7  *
            8  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
            9  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
           10  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
           11  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
           12  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
           13  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
           14  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
           15  */
           16 
           17 #ifndef LTK_ENTRY_H
           18 #define LTK_ENTRY_H
           19 
           20 #include <stddef.h>
           21 #include "config.h"
           22 #include "graphics.h"
           23 #include "widget.h"
           24 #include "window.h"
           25 #include "text.h"
           26 
           27 #define LTK_ENTRY_SIGNAL_INVALID -1
           28 
           29 typedef struct {
           30         ltk_widget widget;
           31         ltk_text_line *tl;
           32         char *text;
           33         size_t len, alloc, pos, sel_start, sel_end;
           34         int cur_offset;
           35         /* 0 when side of selection that is expanded by cursor keys
           36            is left, 1 when it is right */
           37         char sel_side;
           38         char selecting;
           39 } ltk_entry;
           40 
           41 ltk_entry *ltk_entry_create(ltk_window *window, const char *text);
           42 
           43 #endif /* LTK_ENTRY_H */