UNIXworkcode

1 /* 2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. 3 * 4 * Copyright 2017 Olaf Wintermann. All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are met: 8 * 9 * 1. Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 26 * POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29 #ifndef UIC_TYPES_H 30 #define UIC_TYPES_H 31 32 #include "../ui/toolkit.h" 33 34 #ifdef __cplusplus 35 extern "C" { 36 #endif 37 38 39 void uic_int_copy(UiInteger *from, UiInteger *to); 40 void uic_double_copy(UiDouble *from, UiDouble *to); 41 void uic_string_copy(UiString *from, UiString *to); 42 void uic_text_copy(UiText *from, UiText *to); 43 void uic_range_copy(UiRange *from, UiRange *to); 44 void uic_list_copy(UiList *from, UiList *to); 45 void uic_generic_copy(UiGeneric *from, UiGeneric *to); 46 47 void uic_int_save(UiInteger *i); 48 void uic_double_save(UiDouble *d); 49 void uic_string_save(UiString *s); 50 void uic_text_save(UiText *t); 51 void uic_range_save(UiRange *r); 52 void uic_generic_save(UiGeneric *g); 53 54 void uic_int_unbind(UiInteger *i); 55 void uic_double_unbind(UiDouble *d); 56 void uic_string_unbind(UiString *s); 57 void uic_text_unbind(UiText *t); 58 void uic_range_unbind(UiRange *r); 59 void uic_list_unbind(UiList *l); 60 void uic_generic_unbind(UiGeneric *g); 61 62 void uic_list_register_observer_destructor(UiContext *ctx, UiList *list, UiObserver *observer); 63 64 #ifdef __cplusplus 65 } 66 #endif 67 68 #endif /* UIC_TYPES_H */ 69 70