diff -Nru nasc-0.2/build/CMakeCache.txt nasc-0.3/build/CMakeCache.txt --- nasc-0.2/build/CMakeCache.txt 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeCache.txt 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,383 @@ +# This is the CMakeCache file. +# For build in directory: /home/pa/Projekte/nascOrg/build +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//Choose the type of build, options are: None(CMAKE_CXX_FLAGS or +// CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//Flags used by the compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the compiler during debug builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the compiler during release builds for minimum +// size. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the compiler during release builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the compiler during release builds with debug info. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//C compiler +CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc + +//Flags used by the compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the compiler during debug builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the compiler during release builds for minimum +// size. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the compiler during release builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the compiler during release builds with debug info. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Flags used by the linker. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF + +//No help, variable specified on the command line. +CMAKE_INSTALL_PREFIX:PATH=/usr + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make + +//Flags used by the linker during the creation of modules. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=nasc + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Flags used by the linker during the creation of dll's. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during debug builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during release minsize builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during release builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during Release with Debug Info builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Compile GSettings Schemas after installation +GSETTINGS_COMPILE:BOOL=ON + +//Install GSettings Schemas locally instead of to the GLib prefix +GSETTINGS_LOCALINSTALL:BOOL=ON + +//Path to a program. +VALA_EXECUTABLE:FILEPATH=/usr/bin/valac + +//Value Computed by CMake +nasc_BINARY_DIR:STATIC=/home/pa/Projekte/nascOrg/build + +//Value Computed by CMake +nasc_SOURCE_DIR:STATIC=/home/pa/Projekte/nascOrg + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/home/pa/Projekte/nascOrg/build +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=5 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_COMPILER +CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/home/pa/Projekte/nascOrg +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.5 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +DEPS_CFLAGS:INTERNAL=-pthread;-I/usr/include/granite;-I/usr/include/gee-0.8;-I/usr/include/libsoup-2.4;-I/usr/include/gtksourceview-3.0;-I/usr/include/gtk-3.0;-I/usr/include/at-spi2-atk/2.0;-I/usr/include/at-spi-2.0;-I/usr/include/dbus-1.0;-I/usr/lib/x86_64-linux-gnu/dbus-1.0/include;-I/usr/include/gtk-3.0;-I/usr/include/gio-unix-2.0/;-I/usr/include/mirclient;-I/usr/include/mircommon;-I/usr/include/mircookie;-I/usr/include/cairo;-I/usr/include/pango-1.0;-I/usr/include/harfbuzz;-I/usr/include/pango-1.0;-I/usr/include/atk-1.0;-I/usr/include/cairo;-I/usr/include/pixman-1;-I/usr/include/freetype2;-I/usr/include/libpng12;-I/usr/include/gdk-pixbuf-2.0;-I/usr/include/libpng12;-I/usr/include/glib-2.0;-I/usr/lib/x86_64-linux-gnu/glib-2.0/include;-I/usr/include/libxml2 +DEPS_CFLAGS_I:INTERNAL= +DEPS_CFLAGS_OTHER:INTERNAL=-pthread +DEPS_FOUND:INTERNAL=1 +DEPS_INCLUDEDIR:INTERNAL= +DEPS_INCLUDE_DIRS:INTERNAL=/usr/include/granite;/usr/include/gee-0.8;/usr/include/libsoup-2.4;/usr/include/gtksourceview-3.0;/usr/include/gtk-3.0;/usr/include/at-spi2-atk/2.0;/usr/include/at-spi-2.0;/usr/include/dbus-1.0;/usr/lib/x86_64-linux-gnu/dbus-1.0/include;/usr/include/gtk-3.0;/usr/include/gio-unix-2.0/;/usr/include/mirclient;/usr/include/mircommon;/usr/include/mircookie;/usr/include/cairo;/usr/include/pango-1.0;/usr/include/harfbuzz;/usr/include/pango-1.0;/usr/include/atk-1.0;/usr/include/cairo;/usr/include/pixman-1;/usr/include/freetype2;/usr/include/libpng12;/usr/include/gdk-pixbuf-2.0;/usr/include/libpng12;/usr/include/glib-2.0;/usr/lib/x86_64-linux-gnu/glib-2.0/include;/usr/include/libxml2 +DEPS_LDFLAGS:INTERNAL=-lgranite;-lgee-0.8;-lgio-2.0;-lsoup-2.4;-lgthread-2.0;-pthread;-lgtksourceview-3.0;-lgtk-3;-lgdk-3;-lpangocairo-1.0;-lpango-1.0;-latk-1.0;-lcairo-gobject;-lcairo;-lgdk_pixbuf-2.0;-lgio-2.0;-lgobject-2.0;-lcln;-lpthread;-lqalculate;-lglib-2.0;-lxml2 +DEPS_LDFLAGS_OTHER:INTERNAL=-pthread +DEPS_LIBDIR:INTERNAL= +DEPS_LIBRARIES:INTERNAL=granite;gee-0.8;gio-2.0;soup-2.4;gthread-2.0;gtksourceview-3.0;gtk-3;gdk-3;pangocairo-1.0;pango-1.0;atk-1.0;cairo-gobject;cairo;gdk_pixbuf-2.0;gio-2.0;gobject-2.0;cln;pthread;qalculate;glib-2.0;xml2 +DEPS_LIBRARY_DIRS:INTERNAL= +DEPS_LIBS:INTERNAL= +DEPS_LIBS_L:INTERNAL= +DEPS_LIBS_OTHER:INTERNAL= +DEPS_LIBS_PATHS:INTERNAL= +DEPS_PREFIX:INTERNAL= +DEPS_STATIC_CFLAGS:INTERNAL=-pthread;-I/usr/include/granite;-I/usr/include/gee-0.8;-I/usr/include/libsoup-2.4;-I/usr/include/gtksourceview-3.0;-I/usr/include/gtk-3.0;-I/usr/include/at-spi2-atk/2.0;-I/usr/include/at-spi-2.0;-I/usr/include/dbus-1.0;-I/usr/lib/x86_64-linux-gnu/dbus-1.0/include;-I/usr/include/gtk-3.0;-I/usr/include/gio-unix-2.0/;-I/usr/include/mirclient;-I/usr/include/mircommon;-I/usr/include/mircookie;-I/usr/include/cairo;-I/usr/include/pango-1.0;-I/usr/include/harfbuzz;-I/usr/include/pango-1.0;-I/usr/include/atk-1.0;-I/usr/include/cairo;-I/usr/include/pixman-1;-I/usr/include/freetype2;-I/usr/include/libpng12;-I/usr/include/gdk-pixbuf-2.0;-I/usr/include/libpng12;-I/usr/include/glib-2.0;-I/usr/lib/x86_64-linux-gnu/glib-2.0/include;-I/usr/include/libxml2 +DEPS_STATIC_CFLAGS_I:INTERNAL= +DEPS_STATIC_CFLAGS_OTHER:INTERNAL=-pthread +DEPS_STATIC_INCLUDE_DIRS:INTERNAL=/usr/include/granite;/usr/include/gee-0.8;/usr/include/libsoup-2.4;/usr/include/gtksourceview-3.0;/usr/include/gtk-3.0;/usr/include/at-spi2-atk/2.0;/usr/include/at-spi-2.0;/usr/include/dbus-1.0;/usr/lib/x86_64-linux-gnu/dbus-1.0/include;/usr/include/gtk-3.0;/usr/include/gio-unix-2.0/;/usr/include/mirclient;/usr/include/mircommon;/usr/include/mircookie;/usr/include/cairo;/usr/include/pango-1.0;/usr/include/harfbuzz;/usr/include/pango-1.0;/usr/include/atk-1.0;/usr/include/cairo;/usr/include/pixman-1;/usr/include/freetype2;/usr/include/libpng12;/usr/include/gdk-pixbuf-2.0;/usr/include/libpng12;/usr/include/glib-2.0;/usr/lib/x86_64-linux-gnu/glib-2.0/include;/usr/include/libxml2 +DEPS_STATIC_LDFLAGS:INTERNAL=-lgranite;-lgee-0.8;-lsoup-2.4;-lgthread-2.0;-pthread;-lgtksourceview-3.0;-lgtk-3;-latk-bridge-2.0;-latspi;-ldbus-1;-lpthread;-lsystemd;-lgdk-3;-lgio-2.0;-lXinerama;-lXi;-lXrandr;-lXcursor;-lXcomposite;-lXdamage;-lXfixes;-lxkbcommon;-lwayland-cursor;-lwayland-egl;-lwayland-client;-lmirclient;-lmircommon;-lprotobuf-lite;-pthread;-lpthread;-lmircookie;-lepoxy;-ldl;-lpangocairo-1.0;-lpangoft2-1.0;-lharfbuzz;-lpango-1.0;-lm;-latk-1.0;-lcairo-gobject;-lcairo;-lz;-lpixman-1;-lfontconfig;-lexpat;-lfreetype;-lexpat;-lfreetype;-lz;-lpng12;-lz;-lm;-lpng12;-lz;-lm;-lxcb-shm;-lxcb-render;-lXrender;-lXext;-lX11;-lpthread;-lxcb;-lXau;-lXdmcp;-lgdk_pixbuf-2.0;-lm;-lpng12;-lz;-lm;-lgio-2.0;-lz;-lresolv;-lselinux;-lgmodule-2.0;-pthread;-ldl;-lgobject-2.0;-lffi;-lcln;-lpthread;-lqalculate;-lglib-2.0;-pthread;-lpcre;-pthread;-lxml2;-licui18n;-licuuc;-licudata;-lz;-llzma;-lm +DEPS_STATIC_LDFLAGS_OTHER:INTERNAL=-pthread +DEPS_STATIC_LIBDIR:INTERNAL= +DEPS_STATIC_LIBRARIES:INTERNAL=granite;gee-0.8;soup-2.4;gthread-2.0;gtksourceview-3.0;gtk-3;atk-bridge-2.0;atspi;dbus-1;pthread;systemd;gdk-3;gio-2.0;Xinerama;Xi;Xrandr;Xcursor;Xcomposite;Xdamage;Xfixes;xkbcommon;wayland-cursor;wayland-egl;wayland-client;mirclient;mircommon;protobuf-lite;pthread;mircookie;epoxy;dl;pangocairo-1.0;pangoft2-1.0;harfbuzz;pango-1.0;m;atk-1.0;cairo-gobject;cairo;z;pixman-1;fontconfig;expat;freetype;expat;freetype;z;png12;z;m;png12;z;m;xcb-shm;xcb-render;Xrender;Xext;X11;pthread;xcb;Xau;Xdmcp;gdk_pixbuf-2.0;m;png12;z;m;gio-2.0;z;resolv;selinux;gmodule-2.0;dl;gobject-2.0;ffi;cln;pthread;qalculate;glib-2.0;pcre;xml2;icui18n;icuuc;icudata;z;lzma;m +DEPS_STATIC_LIBRARY_DIRS:INTERNAL= +DEPS_STATIC_LIBS:INTERNAL= +DEPS_STATIC_LIBS_L:INTERNAL= +DEPS_STATIC_LIBS_OTHER:INTERNAL= +DEPS_STATIC_LIBS_PATHS:INTERNAL= +DEPS_VERSION:INTERNAL= +DEPS_gee-0.8_INCLUDEDIR:INTERNAL=/usr/include +DEPS_gee-0.8_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu +DEPS_gee-0.8_PREFIX:INTERNAL=/usr +DEPS_gee-0.8_VERSION:INTERNAL=0.18.0 +DEPS_glib-2.0_INCLUDEDIR:INTERNAL=/usr/include +DEPS_glib-2.0_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu +DEPS_glib-2.0_PREFIX:INTERNAL=/usr +DEPS_glib-2.0_VERSION:INTERNAL=2.48.1 +DEPS_granite_INCLUDEDIR:INTERNAL=/usr/include +DEPS_granite_LIBDIR:INTERNAL=/usr/lib +DEPS_granite_PREFIX:INTERNAL=/usr +DEPS_granite_VERSION:INTERNAL=0.4.0.1 +DEPS_gthread-2.0_INCLUDEDIR:INTERNAL=/usr/include +DEPS_gthread-2.0_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu +DEPS_gthread-2.0_PREFIX:INTERNAL=/usr +DEPS_gthread-2.0_VERSION:INTERNAL=2.48.1 +DEPS_gtk+-3.0_INCLUDEDIR:INTERNAL=/usr/include +DEPS_gtk+-3.0_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu +DEPS_gtk+-3.0_PREFIX:INTERNAL=/usr +DEPS_gtk+-3.0_VERSION:INTERNAL=3.18.9 +DEPS_gtksourceview-3.0_INCLUDEDIR:INTERNAL=/usr/include +DEPS_gtksourceview-3.0_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu +DEPS_gtksourceview-3.0_PREFIX:INTERNAL=/usr +DEPS_gtksourceview-3.0_VERSION:INTERNAL=3.18.2 +DEPS_libqalculate_INCLUDEDIR:INTERNAL=/usr/include +DEPS_libqalculate_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu +DEPS_libqalculate_PREFIX:INTERNAL=/usr +DEPS_libqalculate_VERSION:INTERNAL=0.9.7 +DEPS_libsoup-2.4_INCLUDEDIR:INTERNAL=/usr/include +DEPS_libsoup-2.4_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu +DEPS_libsoup-2.4_PREFIX:INTERNAL=/usr +DEPS_libsoup-2.4_VERSION:INTERNAL=2.52.2 +//Details about finding PkgConfig +FIND_PACKAGE_MESSAGE_DETAILS_PkgConfig:INTERNAL=[pkg-config][v0.29.1()] +//Details about finding Vala +FIND_PACKAGE_MESSAGE_DETAILS_Vala:INTERNAL=[/usr/bin/valac][v()] +//ADVANCED property for variable: VALA_EXECUTABLE +VALA_EXECUTABLE-ADVANCED:INTERNAL=1 +__pkg_config_checked_DEPS:INTERNAL=1 +prefix_result:INTERNAL=/usr/lib/x86_64-linux-gnu + diff -Nru nasc-0.2/build/CMakeFiles/3.5.1/CMakeCCompiler.cmake nasc-0.3/build/CMakeFiles/3.5.1/CMakeCCompiler.cmake --- nasc-0.2/build/CMakeFiles/3.5.1/CMakeCCompiler.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/3.5.1/CMakeCCompiler.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,67 @@ +set(CMAKE_C_COMPILER "/usr/bin/cc") +set(CMAKE_C_COMPILER_ARG1 "") +set(CMAKE_C_COMPILER_ID "GNU") +set(CMAKE_C_COMPILER_VERSION "5.4.0") +set(CMAKE_C_COMPILER_WRAPPER "") +set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "11") +set(CMAKE_C_COMPILE_FEATURES "c_function_prototypes;c_restrict;c_variadic_macros;c_static_assert") +set(CMAKE_C90_COMPILE_FEATURES "c_function_prototypes") +set(CMAKE_C99_COMPILE_FEATURES "c_restrict;c_variadic_macros") +set(CMAKE_C11_COMPILE_FEATURES "c_static_assert") + +set(CMAKE_C_PLATFORM_ID "Linux") +set(CMAKE_C_SIMULATE_ID "") +set(CMAKE_C_SIMULATE_VERSION "") + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_COMPILER_IS_GNUCC 1) +set(CMAKE_C_COMPILER_LOADED 1) +set(CMAKE_C_COMPILER_WORKS TRUE) +set(CMAKE_C_ABI_COMPILED TRUE) +set(CMAKE_COMPILER_IS_MINGW ) +set(CMAKE_COMPILER_IS_CYGWIN ) +if(CMAKE_COMPILER_IS_CYGWIN) + set(CYGWIN 1) + set(UNIX 1) +endif() + +set(CMAKE_C_COMPILER_ENV_VAR "CC") + +if(CMAKE_COMPILER_IS_MINGW) + set(MINGW 1) +endif() +set(CMAKE_C_COMPILER_ID_RUN 1) +set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m) +set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_C_LINKER_PREFERENCE 10) + +# Save compiler ABI information. +set(CMAKE_C_SIZEOF_DATA_PTR "8") +set(CMAKE_C_COMPILER_ABI "ELF") +set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") + +if(CMAKE_C_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_C_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") +endif() + +if(CMAKE_C_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") +endif() + +set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_C_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + +set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "c") +set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff -Nru nasc-0.2/build/CMakeFiles/3.5.1/CMakeCXXCompiler.cmake nasc-0.3/build/CMakeFiles/3.5.1/CMakeCXXCompiler.cmake --- nasc-0.2/build/CMakeFiles/3.5.1/CMakeCXXCompiler.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/3.5.1/CMakeCXXCompiler.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,68 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "5.4.0") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "98") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_template_template_parameters;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") + +set(CMAKE_CXX_PLATFORM_ID "Linux") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_SIMULATE_VERSION "") + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_COMPILER_IS_GNUCXX 1) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) +set(CMAKE_COMPILER_IS_MINGW ) +set(CMAKE_COMPILER_IS_CYGWIN ) +if(CMAKE_COMPILER_IS_CYGWIN) + set(CYGWIN 1) + set(UNIX 1) +endif() + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +if(CMAKE_COMPILER_IS_MINGW) + set(MINGW 1) +endif() +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;mm;CPP) +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "ELF") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;c") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") Binary files /tmp/tmpfPmVqY/_6EXeFNdsI/nasc-0.2/build/CMakeFiles/3.5.1/CMakeDetermineCompilerABI_C.bin and /tmp/tmpfPmVqY/jqvdyqM0Hs/nasc-0.3/build/CMakeFiles/3.5.1/CMakeDetermineCompilerABI_C.bin differ Binary files /tmp/tmpfPmVqY/_6EXeFNdsI/nasc-0.2/build/CMakeFiles/3.5.1/CMakeDetermineCompilerABI_CXX.bin and /tmp/tmpfPmVqY/jqvdyqM0Hs/nasc-0.3/build/CMakeFiles/3.5.1/CMakeDetermineCompilerABI_CXX.bin differ diff -Nru nasc-0.2/build/CMakeFiles/3.5.1/CMakeSystem.cmake nasc-0.3/build/CMakeFiles/3.5.1/CMakeSystem.cmake --- nasc-0.2/build/CMakeFiles/3.5.1/CMakeSystem.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/3.5.1/CMakeSystem.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-4.4.0-31-generic") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "4.4.0-31-generic") +set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") + + + +set(CMAKE_SYSTEM "Linux-4.4.0-31-generic") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "4.4.0-31-generic") +set(CMAKE_SYSTEM_PROCESSOR "x86_64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) Binary files /tmp/tmpfPmVqY/_6EXeFNdsI/nasc-0.2/build/CMakeFiles/3.5.1/CompilerIdC/a.out and /tmp/tmpfPmVqY/jqvdyqM0Hs/nasc-0.3/build/CMakeFiles/3.5.1/CompilerIdC/a.out differ diff -Nru nasc-0.2/build/CMakeFiles/3.5.1/CompilerIdC/CMakeCCompilerId.c nasc-0.3/build/CMakeFiles/3.5.1/CompilerIdC/CMakeCCompilerId.c --- nasc-0.2/build/CMakeFiles/3.5.1/CompilerIdC/CMakeCCompilerId.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/3.5.1/CompilerIdC/CMakeCCompilerId.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,544 @@ +#ifdef __cplusplus +# error "A C++ compiler has been selected for C." +#endif + +#if defined(__18CXX) +# define ID_VOID_MAIN +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif + /* __INTEL_COMPILER = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_C) +# define COMPILER_ID "SunPro" +# if __SUNPRO_C >= 0x5100 + /* __SUNPRO_C = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# endif + +#elif defined(__HP_cc) +# define COMPILER_ID "HP" + /* __HP_cc = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) + +#elif defined(__DECC) +# define COMPILER_ID "Compaq" + /* __DECC_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) + +#elif defined(__IBMC__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 +# define COMPILER_ID "XL" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version) +# define COMPILER_ID "Fujitsu" + +#elif defined(__TINYC__) +# define COMPILER_ID "TinyCC" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) +# define COMPILER_ID "GNU" +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" + +#elif defined(__ARMCC_VERSION) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(SDCC) +# define COMPILER_ID "SDCC" + /* SDCC = VRP */ +# define COMPILER_VERSION_MAJOR DEC(SDCC/100) +# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) +# define COMPILER_VERSION_PATCH DEC(SDCC % 10) + +#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION) +# define COMPILER_ID "MIPSpro" +# if defined(_SGI_COMPILER_VERSION) + /* _SGI_COMPILER_VERSION = VRP */ +# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100) +# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10) +# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10) +# else + /* _COMPILER_VERSION = VRP */ +# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100) +# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10) +# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__sgi) +# define COMPILER_ID "MIPSpro" + +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXE) || defined(__CRAYXC) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__sgi) || defined(__sgi__) || defined(_SGI) +# define PLATFORM_ID "IRIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# else /* unknown platform */ +# define PLATFORM_ID "" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID "" + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID "" +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number components. */ +#ifdef COMPILER_VERSION_MAJOR +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + + +const char* info_language_dialect_default = "INFO" ":" "dialect_default[" +#if !defined(__STDC_VERSION__) + "90" +#elif __STDC_VERSION__ >= 201000L + "11" +#elif __STDC_VERSION__ >= 199901L + "99" +#else +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXE) || defined(__CRAYXC) + require += info_cray[argc]; +#endif + require += info_language_dialect_default[argc]; + (void)argv; + return require; +} +#endif Binary files /tmp/tmpfPmVqY/_6EXeFNdsI/nasc-0.2/build/CMakeFiles/3.5.1/CompilerIdCXX/a.out and /tmp/tmpfPmVqY/jqvdyqM0Hs/nasc-0.3/build/CMakeFiles/3.5.1/CompilerIdCXX/a.out differ diff -Nru nasc-0.2/build/CMakeFiles/3.5.1/CompilerIdCXX/CMakeCXXCompilerId.cpp nasc-0.3/build/CMakeFiles/3.5.1/CompilerIdCXX/CMakeCXXCompilerId.cpp --- nasc-0.2/build/CMakeFiles/3.5.1/CompilerIdCXX/CMakeCXXCompilerId.cpp 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/3.5.1/CompilerIdCXX/CMakeCXXCompilerId.cpp 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,533 @@ +/* This source file must have a .cpp extension so that all C++ compilers + recognize the extension without flags. Borland does not know .cxx for + example. */ +#ifndef __cplusplus +# error "A C compiler has been selected for C++." +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__COMO__) +# define COMPILER_ID "Comeau" + /* __COMO_VERSION__ = VRR */ +# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) +# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) + +#elif defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif + /* __INTEL_COMPILER = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version) +# define COMPILER_ID "Fujitsu" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) +# define COMPILER_ID "GNU" +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" + +#elif defined(__ARMCC_VERSION) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION) +# define COMPILER_ID "MIPSpro" +# if defined(_SGI_COMPILER_VERSION) + /* _SGI_COMPILER_VERSION = VRP */ +# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100) +# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10) +# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10) +# else + /* _COMPILER_VERSION = VRP */ +# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100) +# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10) +# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__sgi) +# define COMPILER_ID "MIPSpro" + +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXE) || defined(__CRAYXC) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__sgi) || defined(__sgi__) || defined(_SGI) +# define PLATFORM_ID "IRIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# else /* unknown platform */ +# define PLATFORM_ID "" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID "" + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID "" +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number components. */ +#ifdef COMPILER_VERSION_MAJOR +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + + +const char* info_language_dialect_default = "INFO" ":" "dialect_default[" +#if __cplusplus >= 201402L + "14" +#elif __cplusplus >= 201103L + "11" +#else + "98" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXE) || defined(__CRAYXC) + require += info_cray[argc]; +#endif + require += info_language_dialect_default[argc]; + (void)argv; + return require; +} diff -Nru nasc-0.2/build/CMakeFiles/cmake.check_cache nasc-0.3/build/CMakeFiles/cmake.check_cache --- nasc-0.2/build/CMakeFiles/cmake.check_cache 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/cmake.check_cache 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff -Nru nasc-0.2/build/CMakeFiles/CMakeDirectoryInformation.cmake nasc-0.3/build/CMakeFiles/CMakeDirectoryInformation.cmake --- nasc-0.2/build/CMakeFiles/CMakeDirectoryInformation.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/CMakeDirectoryInformation.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/pa/Projekte/nascOrg") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/pa/Projekte/nascOrg/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff -Nru nasc-0.2/build/CMakeFiles/CMakeOutput.log nasc-0.3/build/CMakeFiles/CMakeOutput.log --- nasc-0.2/build/CMakeFiles/CMakeOutput.log 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/CMakeOutput.log 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,554 @@ +The system is: Linux - 4.4.0-31-generic - x86_64 +Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. +Compiler: /usr/bin/cc +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" + +The C compiler identification is GNU, found in "/home/pa/Projekte/nascOrg/build/CMakeFiles/3.5.1/CompilerIdC/a.out" + +Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. +Compiler: /usr/bin/c++ +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + +The CXX compiler identification is GNU, found in "/home/pa/Projekte/nascOrg/build/CMakeFiles/3.5.1/CompilerIdCXX/a.out" + +Determining if the C compiler works passed with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_0f129/fast" +/usr/bin/make -f CMakeFiles/cmTC_0f129.dir/build.make CMakeFiles/cmTC_0f129.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building C object CMakeFiles/cmTC_0f129.dir/testCCompiler.c.o +/usr/bin/cc -o CMakeFiles/cmTC_0f129.dir/testCCompiler.c.o -c /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp/testCCompiler.c +Linking C executable cmTC_0f129 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0f129.dir/link.txt --verbose=1 +/usr/bin/cc CMakeFiles/cmTC_0f129.dir/testCCompiler.c.o -o cmTC_0f129 -rdynamic +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + +Detecting C compiler ABI info compiled with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_ba7d2/fast" +/usr/bin/make -f CMakeFiles/cmTC_ba7d2.dir/build.make CMakeFiles/cmTC_ba7d2.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building C object CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o +/usr/bin/cc -o CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.5/Modules/CMakeCCompilerABI.c +Linking C executable cmTC_ba7d2 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ba7d2.dir/link.txt --verbose=1 +/usr/bin/cc -v CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o -o cmTC_ba7d2 -rdynamic +Using built-in specs. +COLLECT_GCC=/usr/bin/cc +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.2' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2) +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_ba7d2' '-rdynamic' '-mtune=generic' '-march=x86-64' + /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt=-fresolution=/tmp/ccpQc674.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTC_ba7d2 /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + +Parsed C implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command:"/usr/bin/make" "cmTC_ba7d2/fast"] + ignore line: [/usr/bin/make -f CMakeFiles/cmTC_ba7d2.dir/build.make CMakeFiles/cmTC_ba7d2.dir/build] + ignore line: [make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten] + ignore line: [Building C object CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o] + ignore line: [/usr/bin/cc -o CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.5/Modules/CMakeCCompilerABI.c] + ignore line: [Linking C executable cmTC_ba7d2] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ba7d2.dir/link.txt --verbose=1] + ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o -o cmTC_ba7d2 -rdynamic ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/cc] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.2' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] + ignore line: [Thread model: posix] + ignore line: [gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_ba7d2' '-rdynamic' '-mtune=generic' '-march=x86-64'] + link line: [ /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt=-fresolution=/tmp/ccpQc674.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTC_ba7d2 /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/5/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccpQc674.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [--sysroot=/] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [-m] ==> ignore + arg [elf_x86_64] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-export-dynamic] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_ba7d2] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o] ==> ignore + arg [-L/usr/lib/gcc/x86_64-linux-gnu/5] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] + arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../..] + arg [CMakeFiles/cmTC_ba7d2.dir/CMakeCCompilerABI.c.o] ==> ignore + arg [-lgcc] ==> lib [gcc] + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--no-as-needed] ==> ignore + arg [-lc] ==> lib [c] + arg [-lgcc] ==> lib [gcc] + arg [--as-needed] ==> ignore + arg [-lgcc_s] ==> lib [gcc_s] + arg [--no-as-needed] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/crtend.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o] ==> ignore + remove lib [gcc] + remove lib [gcc_s] + remove lib [gcc] + remove lib [gcc_s] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5] ==> [/usr/lib/gcc/x86_64-linux-gnu/5] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../..] ==> [/usr/lib] + implicit libs: [c] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] + implicit fwks: [] + + + + +Detecting C [-std=c11] compiler features compiled with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_05ec9/fast" +/usr/bin/make -f CMakeFiles/cmTC_05ec9.dir/build.make CMakeFiles/cmTC_05ec9.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building C object CMakeFiles/cmTC_05ec9.dir/feature_tests.c.o +/usr/bin/cc -std=c11 -o CMakeFiles/cmTC_05ec9.dir/feature_tests.c.o -c /home/pa/Projekte/nascOrg/build/CMakeFiles/feature_tests.c +Linking C executable cmTC_05ec9 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_05ec9.dir/link.txt --verbose=1 +/usr/bin/cc CMakeFiles/cmTC_05ec9.dir/feature_tests.c.o -o cmTC_05ec9 -rdynamic +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + + Feature record: C_FEATURE:1c_function_prototypes + Feature record: C_FEATURE:1c_restrict + Feature record: C_FEATURE:1c_static_assert + Feature record: C_FEATURE:1c_variadic_macros + + +Detecting C [-std=c99] compiler features compiled with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_cfe02/fast" +/usr/bin/make -f CMakeFiles/cmTC_cfe02.dir/build.make CMakeFiles/cmTC_cfe02.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building C object CMakeFiles/cmTC_cfe02.dir/feature_tests.c.o +/usr/bin/cc -std=c99 -o CMakeFiles/cmTC_cfe02.dir/feature_tests.c.o -c /home/pa/Projekte/nascOrg/build/CMakeFiles/feature_tests.c +Linking C executable cmTC_cfe02 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_cfe02.dir/link.txt --verbose=1 +/usr/bin/cc CMakeFiles/cmTC_cfe02.dir/feature_tests.c.o -o cmTC_cfe02 -rdynamic +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + + Feature record: C_FEATURE:1c_function_prototypes + Feature record: C_FEATURE:1c_restrict + Feature record: C_FEATURE:0c_static_assert + Feature record: C_FEATURE:1c_variadic_macros + + +Detecting C [-std=c90] compiler features compiled with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_1e16a/fast" +/usr/bin/make -f CMakeFiles/cmTC_1e16a.dir/build.make CMakeFiles/cmTC_1e16a.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building C object CMakeFiles/cmTC_1e16a.dir/feature_tests.c.o +/usr/bin/cc -std=c90 -o CMakeFiles/cmTC_1e16a.dir/feature_tests.c.o -c /home/pa/Projekte/nascOrg/build/CMakeFiles/feature_tests.c +Linking C executable cmTC_1e16a +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1e16a.dir/link.txt --verbose=1 +/usr/bin/cc CMakeFiles/cmTC_1e16a.dir/feature_tests.c.o -o cmTC_1e16a -rdynamic +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + + Feature record: C_FEATURE:1c_function_prototypes + Feature record: C_FEATURE:0c_restrict + Feature record: C_FEATURE:0c_static_assert + Feature record: C_FEATURE:0c_variadic_macros +Determining if the CXX compiler works passed with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_2942c/fast" +/usr/bin/make -f CMakeFiles/cmTC_2942c.dir/build.make CMakeFiles/cmTC_2942c.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building CXX object CMakeFiles/cmTC_2942c.dir/testCXXCompiler.cxx.o +/usr/bin/c++ -o CMakeFiles/cmTC_2942c.dir/testCXXCompiler.cxx.o -c /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp/testCXXCompiler.cxx +Linking CXX executable cmTC_2942c +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2942c.dir/link.txt --verbose=1 +/usr/bin/c++ CMakeFiles/cmTC_2942c.dir/testCXXCompiler.cxx.o -o cmTC_2942c -rdynamic +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_42993/fast" +/usr/bin/make -f CMakeFiles/cmTC_42993.dir/build.make CMakeFiles/cmTC_42993.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building CXX object CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -o CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.5/Modules/CMakeCXXCompilerABI.cpp +Linking CXX executable cmTC_42993 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_42993.dir/link.txt --verbose=1 +/usr/bin/c++ -v CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_42993 -rdynamic +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.2' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2) +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_42993' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64' + /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt=-fresolution=/tmp/ccuYIJ5C.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTC_42993 /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + +Parsed CXX implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command:"/usr/bin/make" "cmTC_42993/fast"] + ignore line: [/usr/bin/make -f CMakeFiles/cmTC_42993.dir/build.make CMakeFiles/cmTC_42993.dir/build] + ignore line: [make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten] + ignore line: [Building CXX object CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -o CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.5/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Linking CXX executable cmTC_42993] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_42993.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_42993 -rdynamic ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.2' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] + ignore line: [Thread model: posix] + ignore line: [gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_42993' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] + link line: [ /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt=-fresolution=/tmp/ccuYIJ5C.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTC_42993 /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/5/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccuYIJ5C.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [--sysroot=/] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [-m] ==> ignore + arg [elf_x86_64] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-export-dynamic] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_42993] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o] ==> ignore + arg [-L/usr/lib/gcc/x86_64-linux-gnu/5] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] + arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/5/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../..] + arg [CMakeFiles/cmTC_42993.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lstdc++] ==> lib [stdc++] + arg [-lm] ==> lib [m] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [-lc] ==> lib [c] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [/usr/lib/gcc/x86_64-linux-gnu/5/crtend.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o] ==> ignore + remove lib [gcc_s] + remove lib [gcc] + remove lib [gcc_s] + remove lib [gcc] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5] ==> [/usr/lib/gcc/x86_64-linux-gnu/5] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/5/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;c] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] + implicit fwks: [] + + + + +Detecting CXX [-std=c++14] compiler features compiled with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_95df1/fast" +/usr/bin/make -f CMakeFiles/cmTC_95df1.dir/build.make CMakeFiles/cmTC_95df1.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building CXX object CMakeFiles/cmTC_95df1.dir/feature_tests.cxx.o +/usr/bin/c++ -std=c++14 -o CMakeFiles/cmTC_95df1.dir/feature_tests.cxx.o -c /home/pa/Projekte/nascOrg/build/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_95df1 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_95df1.dir/link.txt --verbose=1 +/usr/bin/c++ CMakeFiles/cmTC_95df1.dir/feature_tests.cxx.o -o cmTC_95df1 -rdynamic +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + + Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers + Feature record: CXX_FEATURE:1cxx_alias_templates + Feature record: CXX_FEATURE:1cxx_alignas + Feature record: CXX_FEATURE:1cxx_alignof + Feature record: CXX_FEATURE:1cxx_attributes + Feature record: CXX_FEATURE:1cxx_attribute_deprecated + Feature record: CXX_FEATURE:1cxx_auto_type + Feature record: CXX_FEATURE:1cxx_binary_literals + Feature record: CXX_FEATURE:1cxx_constexpr + Feature record: CXX_FEATURE:1cxx_contextual_conversions + Feature record: CXX_FEATURE:1cxx_decltype + Feature record: CXX_FEATURE:1cxx_decltype_auto + Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types + Feature record: CXX_FEATURE:1cxx_default_function_template_args + Feature record: CXX_FEATURE:1cxx_defaulted_functions + Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers + Feature record: CXX_FEATURE:1cxx_delegating_constructors + Feature record: CXX_FEATURE:1cxx_deleted_functions + Feature record: CXX_FEATURE:1cxx_digit_separators + Feature record: CXX_FEATURE:1cxx_enum_forward_declarations + Feature record: CXX_FEATURE:1cxx_explicit_conversions + Feature record: CXX_FEATURE:1cxx_extended_friend_declarations + Feature record: CXX_FEATURE:1cxx_extern_templates + Feature record: CXX_FEATURE:1cxx_final + Feature record: CXX_FEATURE:1cxx_func_identifier + Feature record: CXX_FEATURE:1cxx_generalized_initializers + Feature record: CXX_FEATURE:1cxx_generic_lambdas + Feature record: CXX_FEATURE:1cxx_inheriting_constructors + Feature record: CXX_FEATURE:1cxx_inline_namespaces + Feature record: CXX_FEATURE:1cxx_lambdas + Feature record: CXX_FEATURE:1cxx_lambda_init_captures + Feature record: CXX_FEATURE:1cxx_local_type_template_args + Feature record: CXX_FEATURE:1cxx_long_long_type + Feature record: CXX_FEATURE:1cxx_noexcept + Feature record: CXX_FEATURE:1cxx_nonstatic_member_init + Feature record: CXX_FEATURE:1cxx_nullptr + Feature record: CXX_FEATURE:1cxx_override + Feature record: CXX_FEATURE:1cxx_range_for + Feature record: CXX_FEATURE:1cxx_raw_string_literals + Feature record: CXX_FEATURE:1cxx_reference_qualified_functions + Feature record: CXX_FEATURE:1cxx_relaxed_constexpr + Feature record: CXX_FEATURE:1cxx_return_type_deduction + Feature record: CXX_FEATURE:1cxx_right_angle_brackets + Feature record: CXX_FEATURE:1cxx_rvalue_references + Feature record: CXX_FEATURE:1cxx_sizeof_member + Feature record: CXX_FEATURE:1cxx_static_assert + Feature record: CXX_FEATURE:1cxx_strong_enums + Feature record: CXX_FEATURE:1cxx_template_template_parameters + Feature record: CXX_FEATURE:1cxx_thread_local + Feature record: CXX_FEATURE:1cxx_trailing_return_types + Feature record: CXX_FEATURE:1cxx_unicode_literals + Feature record: CXX_FEATURE:1cxx_uniform_initialization + Feature record: CXX_FEATURE:1cxx_unrestricted_unions + Feature record: CXX_FEATURE:1cxx_user_literals + Feature record: CXX_FEATURE:1cxx_variable_templates + Feature record: CXX_FEATURE:1cxx_variadic_macros + Feature record: CXX_FEATURE:1cxx_variadic_templates + + +Detecting CXX [-std=c++11] compiler features compiled with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_330d7/fast" +/usr/bin/make -f CMakeFiles/cmTC_330d7.dir/build.make CMakeFiles/cmTC_330d7.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building CXX object CMakeFiles/cmTC_330d7.dir/feature_tests.cxx.o +/usr/bin/c++ -std=c++11 -o CMakeFiles/cmTC_330d7.dir/feature_tests.cxx.o -c /home/pa/Projekte/nascOrg/build/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_330d7 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_330d7.dir/link.txt --verbose=1 +/usr/bin/c++ CMakeFiles/cmTC_330d7.dir/feature_tests.cxx.o -o cmTC_330d7 -rdynamic +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + + Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers + Feature record: CXX_FEATURE:1cxx_alias_templates + Feature record: CXX_FEATURE:1cxx_alignas + Feature record: CXX_FEATURE:1cxx_alignof + Feature record: CXX_FEATURE:1cxx_attributes + Feature record: CXX_FEATURE:0cxx_attribute_deprecated + Feature record: CXX_FEATURE:1cxx_auto_type + Feature record: CXX_FEATURE:0cxx_binary_literals + Feature record: CXX_FEATURE:1cxx_constexpr + Feature record: CXX_FEATURE:0cxx_contextual_conversions + Feature record: CXX_FEATURE:1cxx_decltype + Feature record: CXX_FEATURE:0cxx_decltype_auto + Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types + Feature record: CXX_FEATURE:1cxx_default_function_template_args + Feature record: CXX_FEATURE:1cxx_defaulted_functions + Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers + Feature record: CXX_FEATURE:1cxx_delegating_constructors + Feature record: CXX_FEATURE:1cxx_deleted_functions + Feature record: CXX_FEATURE:0cxx_digit_separators + Feature record: CXX_FEATURE:1cxx_enum_forward_declarations + Feature record: CXX_FEATURE:1cxx_explicit_conversions + Feature record: CXX_FEATURE:1cxx_extended_friend_declarations + Feature record: CXX_FEATURE:1cxx_extern_templates + Feature record: CXX_FEATURE:1cxx_final + Feature record: CXX_FEATURE:1cxx_func_identifier + Feature record: CXX_FEATURE:1cxx_generalized_initializers + Feature record: CXX_FEATURE:0cxx_generic_lambdas + Feature record: CXX_FEATURE:1cxx_inheriting_constructors + Feature record: CXX_FEATURE:1cxx_inline_namespaces + Feature record: CXX_FEATURE:1cxx_lambdas + Feature record: CXX_FEATURE:0cxx_lambda_init_captures + Feature record: CXX_FEATURE:1cxx_local_type_template_args + Feature record: CXX_FEATURE:1cxx_long_long_type + Feature record: CXX_FEATURE:1cxx_noexcept + Feature record: CXX_FEATURE:1cxx_nonstatic_member_init + Feature record: CXX_FEATURE:1cxx_nullptr + Feature record: CXX_FEATURE:1cxx_override + Feature record: CXX_FEATURE:1cxx_range_for + Feature record: CXX_FEATURE:1cxx_raw_string_literals + Feature record: CXX_FEATURE:1cxx_reference_qualified_functions + Feature record: CXX_FEATURE:0cxx_relaxed_constexpr + Feature record: CXX_FEATURE:0cxx_return_type_deduction + Feature record: CXX_FEATURE:1cxx_right_angle_brackets + Feature record: CXX_FEATURE:1cxx_rvalue_references + Feature record: CXX_FEATURE:1cxx_sizeof_member + Feature record: CXX_FEATURE:1cxx_static_assert + Feature record: CXX_FEATURE:1cxx_strong_enums + Feature record: CXX_FEATURE:1cxx_template_template_parameters + Feature record: CXX_FEATURE:1cxx_thread_local + Feature record: CXX_FEATURE:1cxx_trailing_return_types + Feature record: CXX_FEATURE:1cxx_unicode_literals + Feature record: CXX_FEATURE:1cxx_uniform_initialization + Feature record: CXX_FEATURE:1cxx_unrestricted_unions + Feature record: CXX_FEATURE:1cxx_user_literals + Feature record: CXX_FEATURE:0cxx_variable_templates + Feature record: CXX_FEATURE:1cxx_variadic_macros + Feature record: CXX_FEATURE:1cxx_variadic_templates + + +Detecting CXX [-std=c++98] compiler features compiled with the following output: +Change Dir: /home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp + +Run Build Command:"/usr/bin/make" "cmTC_4689e/fast" +/usr/bin/make -f CMakeFiles/cmTC_4689e.dir/build.make CMakeFiles/cmTC_4689e.dir/build +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird betreten +Building CXX object CMakeFiles/cmTC_4689e.dir/feature_tests.cxx.o +/usr/bin/c++ -std=c++98 -o CMakeFiles/cmTC_4689e.dir/feature_tests.cxx.o -c /home/pa/Projekte/nascOrg/build/CMakeFiles/feature_tests.cxx +Linking CXX executable cmTC_4689e +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_4689e.dir/link.txt --verbose=1 +/usr/bin/c++ CMakeFiles/cmTC_4689e.dir/feature_tests.cxx.o -o cmTC_4689e -rdynamic +make[1]: Verzeichnis „/home/pa/Projekte/nascOrg/build/CMakeFiles/CMakeTmp“ wird verlassen + + + Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers + Feature record: CXX_FEATURE:0cxx_alias_templates + Feature record: CXX_FEATURE:0cxx_alignas + Feature record: CXX_FEATURE:0cxx_alignof + Feature record: CXX_FEATURE:0cxx_attributes + Feature record: CXX_FEATURE:0cxx_attribute_deprecated + Feature record: CXX_FEATURE:0cxx_auto_type + Feature record: CXX_FEATURE:0cxx_binary_literals + Feature record: CXX_FEATURE:0cxx_constexpr + Feature record: CXX_FEATURE:0cxx_contextual_conversions + Feature record: CXX_FEATURE:0cxx_decltype + Feature record: CXX_FEATURE:0cxx_decltype_auto + Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types + Feature record: CXX_FEATURE:0cxx_default_function_template_args + Feature record: CXX_FEATURE:0cxx_defaulted_functions + Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers + Feature record: CXX_FEATURE:0cxx_delegating_constructors + Feature record: CXX_FEATURE:0cxx_deleted_functions + Feature record: CXX_FEATURE:0cxx_digit_separators + Feature record: CXX_FEATURE:0cxx_enum_forward_declarations + Feature record: CXX_FEATURE:0cxx_explicit_conversions + Feature record: CXX_FEATURE:0cxx_extended_friend_declarations + Feature record: CXX_FEATURE:0cxx_extern_templates + Feature record: CXX_FEATURE:0cxx_final + Feature record: CXX_FEATURE:0cxx_func_identifier + Feature record: CXX_FEATURE:0cxx_generalized_initializers + Feature record: CXX_FEATURE:0cxx_generic_lambdas + Feature record: CXX_FEATURE:0cxx_inheriting_constructors + Feature record: CXX_FEATURE:0cxx_inline_namespaces + Feature record: CXX_FEATURE:0cxx_lambdas + Feature record: CXX_FEATURE:0cxx_lambda_init_captures + Feature record: CXX_FEATURE:0cxx_local_type_template_args + Feature record: CXX_FEATURE:0cxx_long_long_type + Feature record: CXX_FEATURE:0cxx_noexcept + Feature record: CXX_FEATURE:0cxx_nonstatic_member_init + Feature record: CXX_FEATURE:0cxx_nullptr + Feature record: CXX_FEATURE:0cxx_override + Feature record: CXX_FEATURE:0cxx_range_for + Feature record: CXX_FEATURE:0cxx_raw_string_literals + Feature record: CXX_FEATURE:0cxx_reference_qualified_functions + Feature record: CXX_FEATURE:0cxx_relaxed_constexpr + Feature record: CXX_FEATURE:0cxx_return_type_deduction + Feature record: CXX_FEATURE:0cxx_right_angle_brackets + Feature record: CXX_FEATURE:0cxx_rvalue_references + Feature record: CXX_FEATURE:0cxx_sizeof_member + Feature record: CXX_FEATURE:0cxx_static_assert + Feature record: CXX_FEATURE:0cxx_strong_enums + Feature record: CXX_FEATURE:1cxx_template_template_parameters + Feature record: CXX_FEATURE:0cxx_thread_local + Feature record: CXX_FEATURE:0cxx_trailing_return_types + Feature record: CXX_FEATURE:0cxx_unicode_literals + Feature record: CXX_FEATURE:0cxx_uniform_initialization + Feature record: CXX_FEATURE:0cxx_unrestricted_unions + Feature record: CXX_FEATURE:0cxx_user_literals + Feature record: CXX_FEATURE:0cxx_variable_templates + Feature record: CXX_FEATURE:0cxx_variadic_macros + Feature record: CXX_FEATURE:0cxx_variadic_templates diff -Nru nasc-0.2/build/CMakeFiles/CMakeRuleHashes.txt nasc-0.3/build/CMakeFiles/CMakeRuleHashes.txt --- nasc-0.2/build/CMakeFiles/CMakeRuleHashes.txt 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/CMakeRuleHashes.txt 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,12 @@ +# Hashes of file build rules. +d81bcc0490ad8c07d62c3a45abb45696 ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build +f912428d918e52d6f5168eb68aad4cfd ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure +ac5f89e7fddd5e17ea182454dd2529d1 ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download +fd4c3477ced9e54dc7883b332ddee679 ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install +fcff1e65299c1a5468e64391d92c102e ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir +a53b1ba234baf2189a17b5755be3f6ef ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch +c1e69af045fd28c276540dd9c4496b10 ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update +6eb3dbc516c4a3137701a685455761a5 CMakeFiles/libqalculatenasc +da5a7f9464bc0423bb8a91f7fba04013 CMakeFiles/libqalculatenasc-complete +6b2b0a0f7eac0d28edb5d1b86ebe8bf1 CMakeFiles/uninstall +5ba6230db81a49be0a15d71b8fbf98d3 src/Nasc.c Binary files /tmp/tmpfPmVqY/_6EXeFNdsI/nasc-0.2/build/CMakeFiles/feature_tests.bin and /tmp/tmpfPmVqY/jqvdyqM0Hs/nasc-0.3/build/CMakeFiles/feature_tests.bin differ diff -Nru nasc-0.2/build/CMakeFiles/feature_tests.c nasc-0.3/build/CMakeFiles/feature_tests.c --- nasc-0.2/build/CMakeFiles/feature_tests.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/feature_tests.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,34 @@ + + const char features[] = {"\n" +"C_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 +"1" +#else +"0" +#endif +"c_function_prototypes\n" +"C_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +"1" +#else +"0" +#endif +"c_restrict\n" +"C_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201000L +"1" +#else +"0" +#endif +"c_static_assert\n" +"C_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +"1" +#else +"0" +#endif +"c_variadic_macros\n" + +}; + +int main(int argc, char** argv) { (void)argv; return features[argc]; } diff -Nru nasc-0.2/build/CMakeFiles/feature_tests.cxx nasc-0.3/build/CMakeFiles/feature_tests.cxx --- nasc-0.2/build/CMakeFiles/feature_tests.cxx 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/feature_tests.cxx 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,405 @@ + + const char features[] = {"\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L +"1" +#else +"0" +#endif +"cxx_aggregate_default_initializers\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_alias_templates\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_alignas\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_alignof\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_attributes\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_attribute_deprecated\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_auto_type\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_binary_literals\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_constexpr\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_contextual_conversions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_decltype\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_decltype_auto\n" +"CXX_FEATURE:" +#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_decltype_incomplete_return_types\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_default_function_template_args\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_defaulted_functions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_defaulted_move_initializers\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_delegating_constructors\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_deleted_functions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_digit_separators\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_enum_forward_declarations\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_explicit_conversions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_extended_friend_declarations\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_extern_templates\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_final\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_func_identifier\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_generalized_initializers\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_generic_lambdas\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_inheriting_constructors\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_inline_namespaces\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_lambdas\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_lambda_init_captures\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_local_type_template_args\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_long_long_type\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_noexcept\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_nonstatic_member_init\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_nullptr\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_override\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_range_for\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_raw_string_literals\n" +"CXX_FEATURE:" +#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_reference_qualified_functions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L +"1" +#else +"0" +#endif +"cxx_relaxed_constexpr\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L +"1" +#else +"0" +#endif +"cxx_return_type_deduction\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_right_angle_brackets\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_rvalue_references\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_sizeof_member\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_static_assert\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_strong_enums\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && __cplusplus +"1" +#else +"0" +#endif +"cxx_template_template_parameters\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_thread_local\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_trailing_return_types\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_unicode_literals\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_uniform_initialization\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_unrestricted_unions\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L +"1" +#else +"0" +#endif +"cxx_user_literals\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L +"1" +#else +"0" +#endif +"cxx_variable_templates\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_variadic_macros\n" +"CXX_FEATURE:" +#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__)) +"1" +#else +"0" +#endif +"cxx_variadic_templates\n" + +}; + +int main(int argc, char** argv) { (void)argv; return features[argc]; } diff -Nru nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/build.make nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/build.make --- nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/build.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/build.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,139 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/pa/Projekte/nascOrg + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/pa/Projekte/nascOrg/build + +# Utility rule file for libqalculatenasc. + +# Include the progress variables for this target. +include CMakeFiles/libqalculatenasc.dir/progress.make + +CMakeFiles/libqalculatenasc: CMakeFiles/libqalculatenasc-complete + + +CMakeFiles/libqalculatenasc-complete: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install +CMakeFiles/libqalculatenasc-complete: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir +CMakeFiles/libqalculatenasc-complete: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download +CMakeFiles/libqalculatenasc-complete: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update +CMakeFiles/libqalculatenasc-complete: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch +CMakeFiles/libqalculatenasc-complete: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure +CMakeFiles/libqalculatenasc-complete: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build +CMakeFiles/libqalculatenasc-complete: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Completed 'libqalculatenasc'" + /usr/bin/cmake -E make_directory /home/pa/Projekte/nascOrg/build/CMakeFiles + /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc-complete + /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-done + +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Performing install step for 'libqalculatenasc'" + cd /home/pa/Projekte/nascOrg/libqalculatenasc && $(MAKE) install + cd /home/pa/Projekte/nascOrg/libqalculatenasc && /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install + +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Creating directories for 'libqalculatenasc'" + /usr/bin/cmake -E make_directory /home/pa/Projekte/nascOrg/libqalculatenasc + /usr/bin/cmake -E make_directory /home/pa/Projekte/nascOrg/libqalculatenasc + /usr/bin/cmake -E make_directory /home/pa/Projekte/nascOrg/libqalculatenasc + /usr/bin/cmake -E make_directory /home/pa/Projekte/nascOrg/libqalculatenasc/tmp + /usr/bin/cmake -E make_directory /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp + /usr/bin/cmake -E make_directory /home/pa/Projekte/nascOrg/libqalculatenasc/src + /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir + +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "No download step for 'libqalculatenasc'" + /usr/bin/cmake -E echo_append + /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download + +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "No update step for 'libqalculatenasc'" + /usr/bin/cmake -E echo_append + /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update + +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "No patch step for 'libqalculatenasc'" + /usr/bin/cmake -E echo_append + /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch + +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure: ../libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Performing configure step for 'libqalculatenasc'" + cd /home/pa/Projekte/nascOrg/libqalculatenasc && /home/pa/Projekte/nascOrg/libqalculatenasc/configure.sh --src=/home/pa/Projekte/nascOrg/libqalculatenasc --prefix=/home/pa/Projekte/nascOrg/build --libdir=/home/pa/Projekte/nascOrg/build + cd /home/pa/Projekte/nascOrg/libqalculatenasc && /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure + +../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Performing build step for 'libqalculatenasc'" + cd /home/pa/Projekte/nascOrg/libqalculatenasc && make all install + cd /home/pa/Projekte/nascOrg/libqalculatenasc && /usr/bin/cmake -E touch /home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build + +libqalculatenasc: CMakeFiles/libqalculatenasc +libqalculatenasc: CMakeFiles/libqalculatenasc-complete +libqalculatenasc: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install +libqalculatenasc: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir +libqalculatenasc: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download +libqalculatenasc: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update +libqalculatenasc: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch +libqalculatenasc: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure +libqalculatenasc: ../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build +libqalculatenasc: CMakeFiles/libqalculatenasc.dir/build.make + +.PHONY : libqalculatenasc + +# Rule to build all files generated by this target. +CMakeFiles/libqalculatenasc.dir/build: libqalculatenasc + +.PHONY : CMakeFiles/libqalculatenasc.dir/build + +CMakeFiles/libqalculatenasc.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/libqalculatenasc.dir/cmake_clean.cmake +.PHONY : CMakeFiles/libqalculatenasc.dir/clean + +CMakeFiles/libqalculatenasc.dir/depend: + cd /home/pa/Projekte/nascOrg/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/pa/Projekte/nascOrg /home/pa/Projekte/nascOrg /home/pa/Projekte/nascOrg/build /home/pa/Projekte/nascOrg/build /home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/libqalculatenasc.dir/depend + diff -Nru nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/cmake_clean.cmake nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/cmake_clean.cmake --- nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/cmake_clean.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/cmake_clean.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,16 @@ +file(REMOVE_RECURSE + "CMakeFiles/libqalculatenasc" + "CMakeFiles/libqalculatenasc-complete" + "../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install" + "../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir" + "../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download" + "../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update" + "../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch" + "../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure" + "../libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/libqalculatenasc.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff -Nru nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/DependInfo.cmake nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/DependInfo.cmake --- nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/DependInfo.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/DependInfo.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,11 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) +# The set of files for implicit dependencies of each language: + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff -Nru nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/depend.internal nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/depend.internal --- nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/depend.internal 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/depend.internal 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,3 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + diff -Nru nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/depend.make nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/depend.make --- nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/depend.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/depend.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,3 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + diff -Nru nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/Labels.json nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/Labels.json --- nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/Labels.json 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/Labels.json 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,43 @@ +{ + "sources" : + [ + { + "file" : "/home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc" + }, + { + "file" : "/home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc.rule" + }, + { + "file" : "/home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc-complete.rule" + }, + { + "file" : "/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install.rule" + }, + { + "file" : "/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir.rule" + }, + { + "file" : "/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download.rule" + }, + { + "file" : "/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update.rule" + }, + { + "file" : "/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch.rule" + }, + { + "file" : "/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure.rule" + }, + { + "file" : "/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build.rule" + } + ], + "target" : + { + "labels" : + [ + "libqalculatenasc" + ], + "name" : "libqalculatenasc" + } +} \ No newline at end of file diff -Nru nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/Labels.txt nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/Labels.txt --- nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/Labels.txt 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/Labels.txt 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,13 @@ +# Target labels + libqalculatenasc +# Source files and their labels +/home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc +/home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc.rule +/home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc-complete.rule +/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-install.rule +/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-mkdir.rule +/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-download.rule +/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-update.rule +/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-patch.rule +/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-configure.rule +/home/pa/Projekte/nascOrg/libqalculatenasc/src/libqalculatenasc-stamp/libqalculatenasc-build.rule diff -Nru nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/progress.make nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/progress.make --- nasc-0.2/build/CMakeFiles/libqalculatenasc.dir/progress.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/libqalculatenasc.dir/progress.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,9 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 +CMAKE_PROGRESS_3 = 3 +CMAKE_PROGRESS_4 = 4 +CMAKE_PROGRESS_5 = 5 +CMAKE_PROGRESS_6 = 6 +CMAKE_PROGRESS_7 = 7 +CMAKE_PROGRESS_8 = 8 + diff -Nru nasc-0.2/build/CMakeFiles/Makefile2 nasc-0.3/build/CMakeFiles/Makefile2 --- nasc-0.2/build/CMakeFiles/Makefile2 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/Makefile2 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,177 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +# Default target executed when no arguments are given to make. +default_target: all + +.PHONY : default_target + +# The main recursive all target +all: + +.PHONY : all + +# The main recursive preinstall target +preinstall: + +.PHONY : preinstall + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/pa/Projekte/nascOrg + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/pa/Projekte/nascOrg/build + +#============================================================================= +# Target rules for target CMakeFiles/libqalculatenasc.dir + +# All Build rule for target. +CMakeFiles/libqalculatenasc.dir/all: + $(MAKE) -f CMakeFiles/libqalculatenasc.dir/build.make CMakeFiles/libqalculatenasc.dir/depend + $(MAKE) -f CMakeFiles/libqalculatenasc.dir/build.make CMakeFiles/libqalculatenasc.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=1,2,3,4,5,6,7,8 "Built target libqalculatenasc" +.PHONY : CMakeFiles/libqalculatenasc.dir/all + +# Include target in all. +all: CMakeFiles/libqalculatenasc.dir/all + +.PHONY : all + +# Build rule for subdir invocation for target. +CMakeFiles/libqalculatenasc.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/pa/Projekte/nascOrg/build/CMakeFiles 8 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/libqalculatenasc.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/pa/Projekte/nascOrg/build/CMakeFiles 0 +.PHONY : CMakeFiles/libqalculatenasc.dir/rule + +# Convenience name for target. +libqalculatenasc: CMakeFiles/libqalculatenasc.dir/rule + +.PHONY : libqalculatenasc + +# clean rule for target. +CMakeFiles/libqalculatenasc.dir/clean: + $(MAKE) -f CMakeFiles/libqalculatenasc.dir/build.make CMakeFiles/libqalculatenasc.dir/clean +.PHONY : CMakeFiles/libqalculatenasc.dir/clean + +# clean rule for target. +clean: CMakeFiles/libqalculatenasc.dir/clean + +.PHONY : clean + +#============================================================================= +# Target rules for target CMakeFiles/nasc.dir + +# All Build rule for target. +CMakeFiles/nasc.dir/all: CMakeFiles/libqalculatenasc.dir/all + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/depend + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26 "Built target nasc" +.PHONY : CMakeFiles/nasc.dir/all + +# Include target in all. +all: CMakeFiles/nasc.dir/all + +.PHONY : all + +# Build rule for subdir invocation for target. +CMakeFiles/nasc.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/pa/Projekte/nascOrg/build/CMakeFiles 26 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/nasc.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/pa/Projekte/nascOrg/build/CMakeFiles 0 +.PHONY : CMakeFiles/nasc.dir/rule + +# Convenience name for target. +nasc: CMakeFiles/nasc.dir/rule + +.PHONY : nasc + +# clean rule for target. +CMakeFiles/nasc.dir/clean: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/clean +.PHONY : CMakeFiles/nasc.dir/clean + +# clean rule for target. +clean: CMakeFiles/nasc.dir/clean + +.PHONY : clean + +#============================================================================= +# Target rules for target CMakeFiles/uninstall.dir + +# All Build rule for target. +CMakeFiles/uninstall.dir/all: + $(MAKE) -f CMakeFiles/uninstall.dir/build.make CMakeFiles/uninstall.dir/depend + $(MAKE) -f CMakeFiles/uninstall.dir/build.make CMakeFiles/uninstall.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num= "Built target uninstall" +.PHONY : CMakeFiles/uninstall.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/uninstall.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/pa/Projekte/nascOrg/build/CMakeFiles 0 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/uninstall.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/pa/Projekte/nascOrg/build/CMakeFiles 0 +.PHONY : CMakeFiles/uninstall.dir/rule + +# Convenience name for target. +uninstall: CMakeFiles/uninstall.dir/rule + +.PHONY : uninstall + +# clean rule for target. +CMakeFiles/uninstall.dir/clean: + $(MAKE) -f CMakeFiles/uninstall.dir/build.make CMakeFiles/uninstall.dir/clean +.PHONY : CMakeFiles/uninstall.dir/clean + +# clean rule for target. +clean: CMakeFiles/uninstall.dir/clean + +.PHONY : clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff -Nru nasc-0.2/build/CMakeFiles/Makefile.cmake nasc-0.3/build/CMakeFiles/Makefile.cmake --- nasc-0.2/build/CMakeFiles/Makefile.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/Makefile.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,132 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "../CMakeLists.txt" + "CMakeFiles/3.5.1/CMakeCCompiler.cmake" + "CMakeFiles/3.5.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.5.1/CMakeSystem.cmake" + "CMakeFiles/feature_tests.c" + "CMakeFiles/feature_tests.cxx" + "../cmake/FindVala.cmake" + "../cmake/GSettings.cmake" + "../cmake/ParseArguments.cmake" + "../cmake/Uninstall.cmake" + "../cmake/ValaPrecompile.cmake" + "../cmake/ValaVersion.cmake" + "../libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt.in" + "../src/config.vala.cmake" + "/usr/share/cmake-3.5/Modules/CMakeCCompiler.cmake.in" + "/usr/share/cmake-3.5/Modules/CMakeCCompilerABI.c" + "/usr/share/cmake-3.5/Modules/CMakeCInformation.cmake" + "/usr/share/cmake-3.5/Modules/CMakeCXXCompiler.cmake.in" + "/usr/share/cmake-3.5/Modules/CMakeCXXCompilerABI.cpp" + "/usr/share/cmake-3.5/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.5/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.5/Modules/CMakeCompilerIdDetection.cmake" + "/usr/share/cmake-3.5/Modules/CMakeDetermineCCompiler.cmake" + "/usr/share/cmake-3.5/Modules/CMakeDetermineCXXCompiler.cmake" + "/usr/share/cmake-3.5/Modules/CMakeDetermineCompileFeatures.cmake" + "/usr/share/cmake-3.5/Modules/CMakeDetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/CMakeDetermineCompilerABI.cmake" + "/usr/share/cmake-3.5/Modules/CMakeDetermineCompilerId.cmake" + "/usr/share/cmake-3.5/Modules/CMakeDetermineSystem.cmake" + "/usr/share/cmake-3.5/Modules/CMakeFindBinUtils.cmake" + "/usr/share/cmake-3.5/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.5/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.5/Modules/CMakeParseArguments.cmake" + "/usr/share/cmake-3.5/Modules/CMakeParseImplicitLinkInfo.cmake" + "/usr/share/cmake-3.5/Modules/CMakeSystem.cmake.in" + "/usr/share/cmake-3.5/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.5/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.5/Modules/CMakeTestCCompiler.cmake" + "/usr/share/cmake-3.5/Modules/CMakeTestCXXCompiler.cmake" + "/usr/share/cmake-3.5/Modules/CMakeTestCompilerCommon.cmake" + "/usr/share/cmake-3.5/Modules/CMakeUnixFindMake.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/ADSP-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Borland-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Clang-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Compaq-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Cray-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/GHS-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/GNU-C-FeatureTests.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/GNU-C.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/GNU-CXX-FeatureTests.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/GNU-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/HP-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/IAR-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Intel-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/MIPSpro-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/MSVC-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/PGI-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/PathScale-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/SCO-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/SDCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/SunPro-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/TI-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/Watcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/XL-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/zOS-C-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.5/Modules/ExternalProject.cmake" + "/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake" + "/usr/share/cmake-3.5/Modules/FindPackageMessage.cmake" + "/usr/share/cmake-3.5/Modules/FindPkgConfig.cmake" + "/usr/share/cmake-3.5/Modules/Internal/FeatureTesting.cmake" + "/usr/share/cmake-3.5/Modules/MultiArchCross.cmake" + "/usr/share/cmake-3.5/Modules/Platform/Linux-CXX.cmake" + "/usr/share/cmake-3.5/Modules/Platform/Linux-GNU-C.cmake" + "/usr/share/cmake-3.5/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.5/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.5/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.5/Modules/Platform/UnixPaths.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/3.5.1/CMakeSystem.cmake" + "CMakeFiles/3.5.1/CMakeCCompiler.cmake" + "CMakeFiles/3.5.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.5.1/CMakeCCompiler.cmake" + "CMakeFiles/3.5.1/CMakeCXXCompiler.cmake" + "../libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt" + "../src/config.vala" + "Uninstall.cmake" + "CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/libqalculatenasc.dir/DependInfo.cmake" + "CMakeFiles/nasc.dir/DependInfo.cmake" + "CMakeFiles/uninstall.dir/DependInfo.cmake" + ) diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/build.make nasc-0.3/build/CMakeFiles/nasc.dir/build.make --- nasc-0.2/build/CMakeFiles/nasc.dir/build.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/build.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,600 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/pa/Projekte/nascOrg + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/pa/Projekte/nascOrg/build + +# Include any dependencies generated for this target. +include CMakeFiles/nasc.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/nasc.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/nasc.dir/flags.make + +src/Nasc.c: ../src/Nasc.vala +src/Nasc.c: ../src/MainWindow.vala +src/Nasc.c: ../src/config.vala +src/Nasc.c: ../src/Calculator.vala +src/Nasc.c: ../src/Controller.vala +src/Nasc.c: ../src/HelpBox.vala +src/Nasc.c: ../src/InputView.vala +src/Nasc.c: ../src/ListFooter.vala +src/Nasc.c: ../src/NascSettings.vala +src/Nasc.c: ../src/OpenBox.vala +src/Nasc.c: ../src/PasteBinDialog.vala +src/Nasc.c: ../src/PeriodicTable.vala +src/Nasc.c: ../src/ResultBoxWidget.vala +src/Nasc.c: ../src/ResultLine.vala +src/Nasc.c: ../src/ResultView.vala +src/Nasc.c: ../src/Tutorial.vala +src/Nasc.c: ../vapi/QalculateNasc.vapi + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating src/Nasc.c, src/MainWindow.c, src/config.c, src/Calculator.c, src/Controller.c, src/HelpBox.c, src/InputView.c, src/ListFooter.c, src/NascSettings.c, src/OpenBox.c, src/PasteBinDialog.c, src/PeriodicTable.c, src/ResultBoxWidget.c, src/ResultLine.c, src/ResultView.c, src/Tutorial.c" + /usr/bin/valac -C -b /home/pa/Projekte/nascOrg -d /home/pa/Projekte/nascOrg/build --pkg=glib-2.0 --pkg=gee-0.8 --pkg=gtk+-3.0 --pkg=granite --pkg=libsoup-2.4 --pkg=gtksourceview-3.0 --pkg=posix --target-glib=2.32 --thread /home/pa/Projekte/nascOrg/src/Nasc.vala /home/pa/Projekte/nascOrg/src/MainWindow.vala /home/pa/Projekte/nascOrg/src/config.vala /home/pa/Projekte/nascOrg/src/Calculator.vala /home/pa/Projekte/nascOrg/src/Controller.vala /home/pa/Projekte/nascOrg/src/HelpBox.vala /home/pa/Projekte/nascOrg/src/InputView.vala /home/pa/Projekte/nascOrg/src/ListFooter.vala /home/pa/Projekte/nascOrg/src/NascSettings.vala /home/pa/Projekte/nascOrg/src/OpenBox.vala /home/pa/Projekte/nascOrg/src/PasteBinDialog.vala /home/pa/Projekte/nascOrg/src/PeriodicTable.vala /home/pa/Projekte/nascOrg/src/ResultBoxWidget.vala /home/pa/Projekte/nascOrg/src/ResultLine.vala /home/pa/Projekte/nascOrg/src/ResultView.vala /home/pa/Projekte/nascOrg/src/Tutorial.vala /home/pa/Projekte/nascOrg/vapi/QalculateNasc.vapi + +src/MainWindow.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/MainWindow.c + +src/config.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/config.c + +src/Calculator.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/Calculator.c + +src/Controller.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/Controller.c + +src/HelpBox.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/HelpBox.c + +src/InputView.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/InputView.c + +src/ListFooter.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/ListFooter.c + +src/NascSettings.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/NascSettings.c + +src/OpenBox.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/OpenBox.c + +src/PasteBinDialog.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/PasteBinDialog.c + +src/PeriodicTable.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/PeriodicTable.c + +src/ResultBoxWidget.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/ResultBoxWidget.c + +src/ResultLine.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/ResultLine.c + +src/ResultView.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/ResultView.c + +src/Tutorial.c: src/Nasc.c + @$(CMAKE_COMMAND) -E touch_nocreate src/Tutorial.c + +CMakeFiles/nasc.dir/src/Nasc.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/Nasc.c.o: src/Nasc.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building C object CMakeFiles/nasc.dir/src/Nasc.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/Nasc.c.o -c /home/pa/Projekte/nascOrg/build/src/Nasc.c + +CMakeFiles/nasc.dir/src/Nasc.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/Nasc.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/Nasc.c > CMakeFiles/nasc.dir/src/Nasc.c.i + +CMakeFiles/nasc.dir/src/Nasc.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/Nasc.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/Nasc.c -o CMakeFiles/nasc.dir/src/Nasc.c.s + +CMakeFiles/nasc.dir/src/Nasc.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/Nasc.c.o.requires + +CMakeFiles/nasc.dir/src/Nasc.c.o.provides: CMakeFiles/nasc.dir/src/Nasc.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Nasc.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/Nasc.c.o.provides + +CMakeFiles/nasc.dir/src/Nasc.c.o.provides.build: CMakeFiles/nasc.dir/src/Nasc.c.o + + +CMakeFiles/nasc.dir/src/MainWindow.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/MainWindow.c.o: src/MainWindow.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building C object CMakeFiles/nasc.dir/src/MainWindow.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/MainWindow.c.o -c /home/pa/Projekte/nascOrg/build/src/MainWindow.c + +CMakeFiles/nasc.dir/src/MainWindow.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/MainWindow.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/MainWindow.c > CMakeFiles/nasc.dir/src/MainWindow.c.i + +CMakeFiles/nasc.dir/src/MainWindow.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/MainWindow.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/MainWindow.c -o CMakeFiles/nasc.dir/src/MainWindow.c.s + +CMakeFiles/nasc.dir/src/MainWindow.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/MainWindow.c.o.requires + +CMakeFiles/nasc.dir/src/MainWindow.c.o.provides: CMakeFiles/nasc.dir/src/MainWindow.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/MainWindow.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/MainWindow.c.o.provides + +CMakeFiles/nasc.dir/src/MainWindow.c.o.provides.build: CMakeFiles/nasc.dir/src/MainWindow.c.o + + +CMakeFiles/nasc.dir/src/config.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/config.c.o: src/config.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building C object CMakeFiles/nasc.dir/src/config.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/config.c.o -c /home/pa/Projekte/nascOrg/build/src/config.c + +CMakeFiles/nasc.dir/src/config.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/config.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/config.c > CMakeFiles/nasc.dir/src/config.c.i + +CMakeFiles/nasc.dir/src/config.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/config.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/config.c -o CMakeFiles/nasc.dir/src/config.c.s + +CMakeFiles/nasc.dir/src/config.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/config.c.o.requires + +CMakeFiles/nasc.dir/src/config.c.o.provides: CMakeFiles/nasc.dir/src/config.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/config.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/config.c.o.provides + +CMakeFiles/nasc.dir/src/config.c.o.provides.build: CMakeFiles/nasc.dir/src/config.c.o + + +CMakeFiles/nasc.dir/src/Calculator.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/Calculator.c.o: src/Calculator.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building C object CMakeFiles/nasc.dir/src/Calculator.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/Calculator.c.o -c /home/pa/Projekte/nascOrg/build/src/Calculator.c + +CMakeFiles/nasc.dir/src/Calculator.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/Calculator.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/Calculator.c > CMakeFiles/nasc.dir/src/Calculator.c.i + +CMakeFiles/nasc.dir/src/Calculator.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/Calculator.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/Calculator.c -o CMakeFiles/nasc.dir/src/Calculator.c.s + +CMakeFiles/nasc.dir/src/Calculator.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/Calculator.c.o.requires + +CMakeFiles/nasc.dir/src/Calculator.c.o.provides: CMakeFiles/nasc.dir/src/Calculator.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Calculator.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/Calculator.c.o.provides + +CMakeFiles/nasc.dir/src/Calculator.c.o.provides.build: CMakeFiles/nasc.dir/src/Calculator.c.o + + +CMakeFiles/nasc.dir/src/Controller.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/Controller.c.o: src/Controller.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building C object CMakeFiles/nasc.dir/src/Controller.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/Controller.c.o -c /home/pa/Projekte/nascOrg/build/src/Controller.c + +CMakeFiles/nasc.dir/src/Controller.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/Controller.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/Controller.c > CMakeFiles/nasc.dir/src/Controller.c.i + +CMakeFiles/nasc.dir/src/Controller.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/Controller.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/Controller.c -o CMakeFiles/nasc.dir/src/Controller.c.s + +CMakeFiles/nasc.dir/src/Controller.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/Controller.c.o.requires + +CMakeFiles/nasc.dir/src/Controller.c.o.provides: CMakeFiles/nasc.dir/src/Controller.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Controller.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/Controller.c.o.provides + +CMakeFiles/nasc.dir/src/Controller.c.o.provides.build: CMakeFiles/nasc.dir/src/Controller.c.o + + +CMakeFiles/nasc.dir/src/HelpBox.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/HelpBox.c.o: src/HelpBox.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building C object CMakeFiles/nasc.dir/src/HelpBox.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/HelpBox.c.o -c /home/pa/Projekte/nascOrg/build/src/HelpBox.c + +CMakeFiles/nasc.dir/src/HelpBox.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/HelpBox.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/HelpBox.c > CMakeFiles/nasc.dir/src/HelpBox.c.i + +CMakeFiles/nasc.dir/src/HelpBox.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/HelpBox.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/HelpBox.c -o CMakeFiles/nasc.dir/src/HelpBox.c.s + +CMakeFiles/nasc.dir/src/HelpBox.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/HelpBox.c.o.requires + +CMakeFiles/nasc.dir/src/HelpBox.c.o.provides: CMakeFiles/nasc.dir/src/HelpBox.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/HelpBox.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/HelpBox.c.o.provides + +CMakeFiles/nasc.dir/src/HelpBox.c.o.provides.build: CMakeFiles/nasc.dir/src/HelpBox.c.o + + +CMakeFiles/nasc.dir/src/InputView.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/InputView.c.o: src/InputView.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building C object CMakeFiles/nasc.dir/src/InputView.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/InputView.c.o -c /home/pa/Projekte/nascOrg/build/src/InputView.c + +CMakeFiles/nasc.dir/src/InputView.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/InputView.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/InputView.c > CMakeFiles/nasc.dir/src/InputView.c.i + +CMakeFiles/nasc.dir/src/InputView.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/InputView.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/InputView.c -o CMakeFiles/nasc.dir/src/InputView.c.s + +CMakeFiles/nasc.dir/src/InputView.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/InputView.c.o.requires + +CMakeFiles/nasc.dir/src/InputView.c.o.provides: CMakeFiles/nasc.dir/src/InputView.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/InputView.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/InputView.c.o.provides + +CMakeFiles/nasc.dir/src/InputView.c.o.provides.build: CMakeFiles/nasc.dir/src/InputView.c.o + + +CMakeFiles/nasc.dir/src/ListFooter.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/ListFooter.c.o: src/ListFooter.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building C object CMakeFiles/nasc.dir/src/ListFooter.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/ListFooter.c.o -c /home/pa/Projekte/nascOrg/build/src/ListFooter.c + +CMakeFiles/nasc.dir/src/ListFooter.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/ListFooter.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/ListFooter.c > CMakeFiles/nasc.dir/src/ListFooter.c.i + +CMakeFiles/nasc.dir/src/ListFooter.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/ListFooter.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/ListFooter.c -o CMakeFiles/nasc.dir/src/ListFooter.c.s + +CMakeFiles/nasc.dir/src/ListFooter.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/ListFooter.c.o.requires + +CMakeFiles/nasc.dir/src/ListFooter.c.o.provides: CMakeFiles/nasc.dir/src/ListFooter.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ListFooter.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/ListFooter.c.o.provides + +CMakeFiles/nasc.dir/src/ListFooter.c.o.provides.build: CMakeFiles/nasc.dir/src/ListFooter.c.o + + +CMakeFiles/nasc.dir/src/NascSettings.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/NascSettings.c.o: src/NascSettings.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building C object CMakeFiles/nasc.dir/src/NascSettings.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/NascSettings.c.o -c /home/pa/Projekte/nascOrg/build/src/NascSettings.c + +CMakeFiles/nasc.dir/src/NascSettings.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/NascSettings.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/NascSettings.c > CMakeFiles/nasc.dir/src/NascSettings.c.i + +CMakeFiles/nasc.dir/src/NascSettings.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/NascSettings.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/NascSettings.c -o CMakeFiles/nasc.dir/src/NascSettings.c.s + +CMakeFiles/nasc.dir/src/NascSettings.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/NascSettings.c.o.requires + +CMakeFiles/nasc.dir/src/NascSettings.c.o.provides: CMakeFiles/nasc.dir/src/NascSettings.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/NascSettings.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/NascSettings.c.o.provides + +CMakeFiles/nasc.dir/src/NascSettings.c.o.provides.build: CMakeFiles/nasc.dir/src/NascSettings.c.o + + +CMakeFiles/nasc.dir/src/OpenBox.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/OpenBox.c.o: src/OpenBox.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building C object CMakeFiles/nasc.dir/src/OpenBox.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/OpenBox.c.o -c /home/pa/Projekte/nascOrg/build/src/OpenBox.c + +CMakeFiles/nasc.dir/src/OpenBox.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/OpenBox.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/OpenBox.c > CMakeFiles/nasc.dir/src/OpenBox.c.i + +CMakeFiles/nasc.dir/src/OpenBox.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/OpenBox.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/OpenBox.c -o CMakeFiles/nasc.dir/src/OpenBox.c.s + +CMakeFiles/nasc.dir/src/OpenBox.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/OpenBox.c.o.requires + +CMakeFiles/nasc.dir/src/OpenBox.c.o.provides: CMakeFiles/nasc.dir/src/OpenBox.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/OpenBox.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/OpenBox.c.o.provides + +CMakeFiles/nasc.dir/src/OpenBox.c.o.provides.build: CMakeFiles/nasc.dir/src/OpenBox.c.o + + +CMakeFiles/nasc.dir/src/PasteBinDialog.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/PasteBinDialog.c.o: src/PasteBinDialog.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Building C object CMakeFiles/nasc.dir/src/PasteBinDialog.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/PasteBinDialog.c.o -c /home/pa/Projekte/nascOrg/build/src/PasteBinDialog.c + +CMakeFiles/nasc.dir/src/PasteBinDialog.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/PasteBinDialog.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/PasteBinDialog.c > CMakeFiles/nasc.dir/src/PasteBinDialog.c.i + +CMakeFiles/nasc.dir/src/PasteBinDialog.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/PasteBinDialog.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/PasteBinDialog.c -o CMakeFiles/nasc.dir/src/PasteBinDialog.c.s + +CMakeFiles/nasc.dir/src/PasteBinDialog.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/PasteBinDialog.c.o.requires + +CMakeFiles/nasc.dir/src/PasteBinDialog.c.o.provides: CMakeFiles/nasc.dir/src/PasteBinDialog.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/PasteBinDialog.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/PasteBinDialog.c.o.provides + +CMakeFiles/nasc.dir/src/PasteBinDialog.c.o.provides.build: CMakeFiles/nasc.dir/src/PasteBinDialog.c.o + + +CMakeFiles/nasc.dir/src/PeriodicTable.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/PeriodicTable.c.o: src/PeriodicTable.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Building C object CMakeFiles/nasc.dir/src/PeriodicTable.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/PeriodicTable.c.o -c /home/pa/Projekte/nascOrg/build/src/PeriodicTable.c + +CMakeFiles/nasc.dir/src/PeriodicTable.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/PeriodicTable.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/PeriodicTable.c > CMakeFiles/nasc.dir/src/PeriodicTable.c.i + +CMakeFiles/nasc.dir/src/PeriodicTable.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/PeriodicTable.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/PeriodicTable.c -o CMakeFiles/nasc.dir/src/PeriodicTable.c.s + +CMakeFiles/nasc.dir/src/PeriodicTable.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/PeriodicTable.c.o.requires + +CMakeFiles/nasc.dir/src/PeriodicTable.c.o.provides: CMakeFiles/nasc.dir/src/PeriodicTable.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/PeriodicTable.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/PeriodicTable.c.o.provides + +CMakeFiles/nasc.dir/src/PeriodicTable.c.o.provides.build: CMakeFiles/nasc.dir/src/PeriodicTable.c.o + + +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o: src/ResultBoxWidget.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_14) "Building C object CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o -c /home/pa/Projekte/nascOrg/build/src/ResultBoxWidget.c + +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/ResultBoxWidget.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/ResultBoxWidget.c > CMakeFiles/nasc.dir/src/ResultBoxWidget.c.i + +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/ResultBoxWidget.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/ResultBoxWidget.c -o CMakeFiles/nasc.dir/src/ResultBoxWidget.c.s + +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o.requires + +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o.provides: CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o.provides + +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o.provides.build: CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o + + +CMakeFiles/nasc.dir/src/ResultLine.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/ResultLine.c.o: src/ResultLine.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_15) "Building C object CMakeFiles/nasc.dir/src/ResultLine.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/ResultLine.c.o -c /home/pa/Projekte/nascOrg/build/src/ResultLine.c + +CMakeFiles/nasc.dir/src/ResultLine.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/ResultLine.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/ResultLine.c > CMakeFiles/nasc.dir/src/ResultLine.c.i + +CMakeFiles/nasc.dir/src/ResultLine.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/ResultLine.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/ResultLine.c -o CMakeFiles/nasc.dir/src/ResultLine.c.s + +CMakeFiles/nasc.dir/src/ResultLine.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/ResultLine.c.o.requires + +CMakeFiles/nasc.dir/src/ResultLine.c.o.provides: CMakeFiles/nasc.dir/src/ResultLine.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultLine.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/ResultLine.c.o.provides + +CMakeFiles/nasc.dir/src/ResultLine.c.o.provides.build: CMakeFiles/nasc.dir/src/ResultLine.c.o + + +CMakeFiles/nasc.dir/src/ResultView.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/ResultView.c.o: src/ResultView.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_16) "Building C object CMakeFiles/nasc.dir/src/ResultView.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/ResultView.c.o -c /home/pa/Projekte/nascOrg/build/src/ResultView.c + +CMakeFiles/nasc.dir/src/ResultView.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/ResultView.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/ResultView.c > CMakeFiles/nasc.dir/src/ResultView.c.i + +CMakeFiles/nasc.dir/src/ResultView.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/ResultView.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/ResultView.c -o CMakeFiles/nasc.dir/src/ResultView.c.s + +CMakeFiles/nasc.dir/src/ResultView.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/ResultView.c.o.requires + +CMakeFiles/nasc.dir/src/ResultView.c.o.provides: CMakeFiles/nasc.dir/src/ResultView.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultView.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/ResultView.c.o.provides + +CMakeFiles/nasc.dir/src/ResultView.c.o.provides.build: CMakeFiles/nasc.dir/src/ResultView.c.o + + +CMakeFiles/nasc.dir/src/Tutorial.c.o: CMakeFiles/nasc.dir/flags.make +CMakeFiles/nasc.dir/src/Tutorial.c.o: src/Tutorial.c + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_17) "Building C object CMakeFiles/nasc.dir/src/Tutorial.c.o" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -o CMakeFiles/nasc.dir/src/Tutorial.c.o -c /home/pa/Projekte/nascOrg/build/src/Tutorial.c + +CMakeFiles/nasc.dir/src/Tutorial.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/nasc.dir/src/Tutorial.c.i" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/pa/Projekte/nascOrg/build/src/Tutorial.c > CMakeFiles/nasc.dir/src/Tutorial.c.i + +CMakeFiles/nasc.dir/src/Tutorial.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/nasc.dir/src/Tutorial.c.s" + /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/pa/Projekte/nascOrg/build/src/Tutorial.c -o CMakeFiles/nasc.dir/src/Tutorial.c.s + +CMakeFiles/nasc.dir/src/Tutorial.c.o.requires: + +.PHONY : CMakeFiles/nasc.dir/src/Tutorial.c.o.requires + +CMakeFiles/nasc.dir/src/Tutorial.c.o.provides: CMakeFiles/nasc.dir/src/Tutorial.c.o.requires + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Tutorial.c.o.provides.build +.PHONY : CMakeFiles/nasc.dir/src/Tutorial.c.o.provides + +CMakeFiles/nasc.dir/src/Tutorial.c.o.provides.build: CMakeFiles/nasc.dir/src/Tutorial.c.o + + +# Object files for target nasc +nasc_OBJECTS = \ +"CMakeFiles/nasc.dir/src/Nasc.c.o" \ +"CMakeFiles/nasc.dir/src/MainWindow.c.o" \ +"CMakeFiles/nasc.dir/src/config.c.o" \ +"CMakeFiles/nasc.dir/src/Calculator.c.o" \ +"CMakeFiles/nasc.dir/src/Controller.c.o" \ +"CMakeFiles/nasc.dir/src/HelpBox.c.o" \ +"CMakeFiles/nasc.dir/src/InputView.c.o" \ +"CMakeFiles/nasc.dir/src/ListFooter.c.o" \ +"CMakeFiles/nasc.dir/src/NascSettings.c.o" \ +"CMakeFiles/nasc.dir/src/OpenBox.c.o" \ +"CMakeFiles/nasc.dir/src/PasteBinDialog.c.o" \ +"CMakeFiles/nasc.dir/src/PeriodicTable.c.o" \ +"CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o" \ +"CMakeFiles/nasc.dir/src/ResultLine.c.o" \ +"CMakeFiles/nasc.dir/src/ResultView.c.o" \ +"CMakeFiles/nasc.dir/src/Tutorial.c.o" + +# External object files for target nasc +nasc_EXTERNAL_OBJECTS = + +nasc: CMakeFiles/nasc.dir/src/Nasc.c.o +nasc: CMakeFiles/nasc.dir/src/MainWindow.c.o +nasc: CMakeFiles/nasc.dir/src/config.c.o +nasc: CMakeFiles/nasc.dir/src/Calculator.c.o +nasc: CMakeFiles/nasc.dir/src/Controller.c.o +nasc: CMakeFiles/nasc.dir/src/HelpBox.c.o +nasc: CMakeFiles/nasc.dir/src/InputView.c.o +nasc: CMakeFiles/nasc.dir/src/ListFooter.c.o +nasc: CMakeFiles/nasc.dir/src/NascSettings.c.o +nasc: CMakeFiles/nasc.dir/src/OpenBox.c.o +nasc: CMakeFiles/nasc.dir/src/PasteBinDialog.c.o +nasc: CMakeFiles/nasc.dir/src/PeriodicTable.c.o +nasc: CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o +nasc: CMakeFiles/nasc.dir/src/ResultLine.c.o +nasc: CMakeFiles/nasc.dir/src/ResultView.c.o +nasc: CMakeFiles/nasc.dir/src/Tutorial.c.o +nasc: CMakeFiles/nasc.dir/build.make +nasc: libqalculatenasc.so +nasc: libqalculatenasc.so +nasc: CMakeFiles/nasc.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/pa/Projekte/nascOrg/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_18) "Linking C executable nasc" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/nasc.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/nasc.dir/build: nasc + +.PHONY : CMakeFiles/nasc.dir/build + +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/Nasc.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/MainWindow.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/config.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/Calculator.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/Controller.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/HelpBox.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/InputView.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/ListFooter.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/NascSettings.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/OpenBox.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/PasteBinDialog.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/PeriodicTable.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/ResultLine.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/ResultView.c.o.requires +CMakeFiles/nasc.dir/requires: CMakeFiles/nasc.dir/src/Tutorial.c.o.requires + +.PHONY : CMakeFiles/nasc.dir/requires + +CMakeFiles/nasc.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/nasc.dir/cmake_clean.cmake +.PHONY : CMakeFiles/nasc.dir/clean + +CMakeFiles/nasc.dir/depend: src/Nasc.c +CMakeFiles/nasc.dir/depend: src/MainWindow.c +CMakeFiles/nasc.dir/depend: src/config.c +CMakeFiles/nasc.dir/depend: src/Calculator.c +CMakeFiles/nasc.dir/depend: src/Controller.c +CMakeFiles/nasc.dir/depend: src/HelpBox.c +CMakeFiles/nasc.dir/depend: src/InputView.c +CMakeFiles/nasc.dir/depend: src/ListFooter.c +CMakeFiles/nasc.dir/depend: src/NascSettings.c +CMakeFiles/nasc.dir/depend: src/OpenBox.c +CMakeFiles/nasc.dir/depend: src/PasteBinDialog.c +CMakeFiles/nasc.dir/depend: src/PeriodicTable.c +CMakeFiles/nasc.dir/depend: src/ResultBoxWidget.c +CMakeFiles/nasc.dir/depend: src/ResultLine.c +CMakeFiles/nasc.dir/depend: src/ResultView.c +CMakeFiles/nasc.dir/depend: src/Tutorial.c + cd /home/pa/Projekte/nascOrg/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/pa/Projekte/nascOrg /home/pa/Projekte/nascOrg /home/pa/Projekte/nascOrg/build /home/pa/Projekte/nascOrg/build /home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/nasc.dir/depend + diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/C.includecache nasc-0.3/build/CMakeFiles/nasc.dir/C.includecache --- nasc-0.2/build/CMakeFiles/nasc.dir/C.includecache 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/C.includecache 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,338 @@ +#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +/home/pa/Projekte/nascOrg/build/src/Calculator.c +glib.h +- +glib-object.h +- +stdlib.h +- +string.h +- +QalculateNasc.h +/home/pa/Projekte/nascOrg/build/src/QalculateNasc.h +gee.h +- +gio/gio.h +- +sys/stat.h +- +time.h +- +stdio.h +- +granite.h +- +gobject/gvaluecollector.h +- + +/home/pa/Projekte/nascOrg/build/src/Controller.c +glib.h +- +glib-object.h +- +granite.h +- +stdlib.h +- +string.h +- +gio/gio.h +- +gtk/gtk.h +- +gee.h +- +gtksourceview/gtksource.h +- +stdio.h +- + +/home/pa/Projekte/nascOrg/build/src/HelpBox.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +cairo.h +- +gdk/gdk.h +- +float.h +- +math.h +- +stdlib.h +- +string.h +- +glib/gi18n-lib.h +- +granite.h +- +gio/gio.h +- +gtksourceview/gtksource.h +- +gee.h +- + +/home/pa/Projekte/nascOrg/build/src/InputView.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +gtksourceview/gtksource.h +- +gee.h +- +stdlib.h +- +string.h +- +gdk/gdk.h +- +pango/pango.h +- +float.h +- +math.h +- +cairo.h +- + +/home/pa/Projekte/nascOrg/build/src/ListFooter.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +glib/gi18n-lib.h +- +gee.h +- +granite.h +- + +/home/pa/Projekte/nascOrg/build/src/MainWindow.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +granite.h +- +gdk/gdk.h +- +glib/gi18n-lib.h +- +gtksourceview/gtksource.h +- +gee.h +- +stdlib.h +- +string.h +- +cairo-pdf.h +- +float.h +- +math.h +- +cairo.h +- + +/home/pa/Projekte/nascOrg/build/src/Nasc.c +glib.h +- +glib-object.h +- +granite.h +- +stdlib.h +- +string.h +- +gtk/gtk.h +- +gio/gio.h +- + +/home/pa/Projekte/nascOrg/build/src/NascSettings.c +glib.h +- +glib-object.h +- +granite.h +- +stdlib.h +- +string.h +- + +/home/pa/Projekte/nascOrg/build/src/OpenBox.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +granite.h +- +gdk/gdk.h +- +gtksourceview/gtksource.h +- +gee.h +- +stdlib.h +- +string.h +- +float.h +- +math.h +- + +/home/pa/Projekte/nascOrg/build/src/PasteBinDialog.c +glib.h +- +glib-object.h +- +stdlib.h +- +string.h +- +libsoup/soup.h +- +gtk/gtk.h +- +glib/gi18n-lib.h +- + +/home/pa/Projekte/nascOrg/build/src/PeriodicTable.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +stdlib.h +- +string.h +- +granite.h +- +gdk/gdk.h +- +cairo.h +- +float.h +- +math.h +- +glib/gi18n-lib.h +- + +/home/pa/Projekte/nascOrg/build/src/ResultBoxWidget.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +stdlib.h +- +string.h +- +cairo.h +- +float.h +- +math.h +- + +/home/pa/Projekte/nascOrg/build/src/ResultLine.c +glib.h +- +glib-object.h +- +stdlib.h +- +string.h +- +cairo.h +- +float.h +- +math.h +- + +/home/pa/Projekte/nascOrg/build/src/ResultView.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +gdk/gdk.h +- +gee.h +- +float.h +- +math.h +- +pango/pango.h +- +string.h +- +cairo.h +- +stdlib.h +- + +/home/pa/Projekte/nascOrg/build/src/Tutorial.c +glib.h +- +glib-object.h +- +gtk/gtk.h +- +stdlib.h +- +string.h +- +float.h +- +math.h +- +gtksourceview/gtksource.h +- +gee.h +- + +/home/pa/Projekte/nascOrg/build/src/config.c +glib.h +- +glib-object.h +- +stdlib.h +- +string.h +- + +QalculateNasc.h + diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/cmake_clean.cmake nasc-0.3/build/CMakeFiles/nasc.dir/cmake_clean.cmake --- nasc-0.2/build/CMakeFiles/nasc.dir/cmake_clean.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/cmake_clean.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,41 @@ +file(REMOVE_RECURSE + "src/Nasc.c" + "src/MainWindow.c" + "src/config.c" + "src/Calculator.c" + "src/Controller.c" + "src/HelpBox.c" + "src/InputView.c" + "src/ListFooter.c" + "src/NascSettings.c" + "src/OpenBox.c" + "src/PasteBinDialog.c" + "src/PeriodicTable.c" + "src/ResultBoxWidget.c" + "src/ResultLine.c" + "src/ResultView.c" + "src/Tutorial.c" + "CMakeFiles/nasc.dir/src/Nasc.c.o" + "CMakeFiles/nasc.dir/src/MainWindow.c.o" + "CMakeFiles/nasc.dir/src/config.c.o" + "CMakeFiles/nasc.dir/src/Calculator.c.o" + "CMakeFiles/nasc.dir/src/Controller.c.o" + "CMakeFiles/nasc.dir/src/HelpBox.c.o" + "CMakeFiles/nasc.dir/src/InputView.c.o" + "CMakeFiles/nasc.dir/src/ListFooter.c.o" + "CMakeFiles/nasc.dir/src/NascSettings.c.o" + "CMakeFiles/nasc.dir/src/OpenBox.c.o" + "CMakeFiles/nasc.dir/src/PasteBinDialog.c.o" + "CMakeFiles/nasc.dir/src/PeriodicTable.c.o" + "CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o" + "CMakeFiles/nasc.dir/src/ResultLine.c.o" + "CMakeFiles/nasc.dir/src/ResultView.c.o" + "CMakeFiles/nasc.dir/src/Tutorial.c.o" + "nasc.pdb" + "nasc" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/nasc.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/DependInfo.cmake nasc-0.3/build/CMakeFiles/nasc.dir/DependInfo.cmake --- nasc-0.2/build/CMakeFiles/nasc.dir/DependInfo.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/DependInfo.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,63 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "C" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_C + "/home/pa/Projekte/nascOrg/build/src/Calculator.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/Calculator.c.o" + "/home/pa/Projekte/nascOrg/build/src/Controller.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/Controller.c.o" + "/home/pa/Projekte/nascOrg/build/src/HelpBox.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/HelpBox.c.o" + "/home/pa/Projekte/nascOrg/build/src/InputView.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/InputView.c.o" + "/home/pa/Projekte/nascOrg/build/src/ListFooter.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/ListFooter.c.o" + "/home/pa/Projekte/nascOrg/build/src/MainWindow.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/MainWindow.c.o" + "/home/pa/Projekte/nascOrg/build/src/Nasc.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/Nasc.c.o" + "/home/pa/Projekte/nascOrg/build/src/NascSettings.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/NascSettings.c.o" + "/home/pa/Projekte/nascOrg/build/src/OpenBox.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/OpenBox.c.o" + "/home/pa/Projekte/nascOrg/build/src/PasteBinDialog.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/PasteBinDialog.c.o" + "/home/pa/Projekte/nascOrg/build/src/PeriodicTable.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/PeriodicTable.c.o" + "/home/pa/Projekte/nascOrg/build/src/ResultBoxWidget.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o" + "/home/pa/Projekte/nascOrg/build/src/ResultLine.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/ResultLine.c.o" + "/home/pa/Projekte/nascOrg/build/src/ResultView.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/ResultView.c.o" + "/home/pa/Projekte/nascOrg/build/src/Tutorial.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/Tutorial.c.o" + "/home/pa/Projekte/nascOrg/build/src/config.c" "/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir/src/config.c.o" + ) +set(CMAKE_C_COMPILER_ID "GNU") + +# Preprocessor definitions for this target. +set(CMAKE_TARGET_DEFINITIONS_C + "GETTEXT_PACKAGE=\"nasc\"" + ) + +# The include file search paths: +set(CMAKE_C_TARGET_INCLUDE_PATH + "../libqalculatenasc/include" + "." + "../" + ) + +# Pairs of files generated by the same build rule. +set(CMAKE_MULTIPLE_OUTPUT_PAIRS + "/home/pa/Projekte/nascOrg/build/src/Calculator.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/Controller.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/HelpBox.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/InputView.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/ListFooter.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/MainWindow.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/NascSettings.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/OpenBox.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/PasteBinDialog.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/PeriodicTable.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/ResultBoxWidget.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/ResultLine.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/ResultView.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/Tutorial.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + "/home/pa/Projekte/nascOrg/build/src/config.c" "/home/pa/Projekte/nascOrg/build/src/Nasc.c" + ) + + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/depend.internal nasc-0.3/build/CMakeFiles/nasc.dir/depend.internal --- nasc-0.2/build/CMakeFiles/nasc.dir/depend.internal 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/depend.internal 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,36 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +CMakeFiles/nasc.dir/src/Calculator.c.o + /home/pa/Projekte/nascOrg/build/src/Calculator.c + QalculateNasc.h +CMakeFiles/nasc.dir/src/Controller.c.o + /home/pa/Projekte/nascOrg/build/src/Controller.c +CMakeFiles/nasc.dir/src/HelpBox.c.o + /home/pa/Projekte/nascOrg/build/src/HelpBox.c +CMakeFiles/nasc.dir/src/InputView.c.o + /home/pa/Projekte/nascOrg/build/src/InputView.c +CMakeFiles/nasc.dir/src/ListFooter.c.o + /home/pa/Projekte/nascOrg/build/src/ListFooter.c +CMakeFiles/nasc.dir/src/MainWindow.c.o + /home/pa/Projekte/nascOrg/build/src/MainWindow.c +CMakeFiles/nasc.dir/src/Nasc.c.o + /home/pa/Projekte/nascOrg/build/src/Nasc.c +CMakeFiles/nasc.dir/src/NascSettings.c.o + /home/pa/Projekte/nascOrg/build/src/NascSettings.c +CMakeFiles/nasc.dir/src/OpenBox.c.o + /home/pa/Projekte/nascOrg/build/src/OpenBox.c +CMakeFiles/nasc.dir/src/PasteBinDialog.c.o + /home/pa/Projekte/nascOrg/build/src/PasteBinDialog.c +CMakeFiles/nasc.dir/src/PeriodicTable.c.o + /home/pa/Projekte/nascOrg/build/src/PeriodicTable.c +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o + /home/pa/Projekte/nascOrg/build/src/ResultBoxWidget.c +CMakeFiles/nasc.dir/src/ResultLine.c.o + /home/pa/Projekte/nascOrg/build/src/ResultLine.c +CMakeFiles/nasc.dir/src/ResultView.c.o + /home/pa/Projekte/nascOrg/build/src/ResultView.c +CMakeFiles/nasc.dir/src/Tutorial.c.o + /home/pa/Projekte/nascOrg/build/src/Tutorial.c +CMakeFiles/nasc.dir/src/config.c.o + /home/pa/Projekte/nascOrg/build/src/config.c diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/depend.make nasc-0.3/build/CMakeFiles/nasc.dir/depend.make --- nasc-0.2/build/CMakeFiles/nasc.dir/depend.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/depend.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,36 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +CMakeFiles/nasc.dir/src/Calculator.c.o: src/Calculator.c +CMakeFiles/nasc.dir/src/Calculator.c.o: QalculateNasc.h + +CMakeFiles/nasc.dir/src/Controller.c.o: src/Controller.c + +CMakeFiles/nasc.dir/src/HelpBox.c.o: src/HelpBox.c + +CMakeFiles/nasc.dir/src/InputView.c.o: src/InputView.c + +CMakeFiles/nasc.dir/src/ListFooter.c.o: src/ListFooter.c + +CMakeFiles/nasc.dir/src/MainWindow.c.o: src/MainWindow.c + +CMakeFiles/nasc.dir/src/Nasc.c.o: src/Nasc.c + +CMakeFiles/nasc.dir/src/NascSettings.c.o: src/NascSettings.c + +CMakeFiles/nasc.dir/src/OpenBox.c.o: src/OpenBox.c + +CMakeFiles/nasc.dir/src/PasteBinDialog.c.o: src/PasteBinDialog.c + +CMakeFiles/nasc.dir/src/PeriodicTable.c.o: src/PeriodicTable.c + +CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o: src/ResultBoxWidget.c + +CMakeFiles/nasc.dir/src/ResultLine.c.o: src/ResultLine.c + +CMakeFiles/nasc.dir/src/ResultView.c.o: src/ResultView.c + +CMakeFiles/nasc.dir/src/Tutorial.c.o: src/Tutorial.c + +CMakeFiles/nasc.dir/src/config.c.o: src/config.c + diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/flags.make nasc-0.3/build/CMakeFiles/nasc.dir/flags.make --- nasc-0.2/build/CMakeFiles/nasc.dir/flags.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/flags.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +# compile C with /usr/bin/cc +C_FLAGS = -w -pthread -I/usr/include/granite -I/usr/include/gee-0.8 -I/usr/include/libsoup-2.4 -I/usr/include/gtksourceview-3.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/mirclient -I/usr/include/mircommon -I/usr/include/mircookie -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libxml2 + +C_DEFINES = -DGETTEXT_PACKAGE=\"nasc\" + +C_INCLUDES = -I/home/pa/Projekte/nascOrg/libqalculatenasc/include -I/home/pa/Projekte/nascOrg/build -I/home/pa/Projekte/nascOrg + diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/link.txt nasc-0.3/build/CMakeFiles/nasc.dir/link.txt --- nasc-0.2/build/CMakeFiles/nasc.dir/link.txt 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/link.txt 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1 @@ +/usr/bin/cc CMakeFiles/nasc.dir/src/Nasc.c.o CMakeFiles/nasc.dir/src/MainWindow.c.o CMakeFiles/nasc.dir/src/config.c.o CMakeFiles/nasc.dir/src/Calculator.c.o CMakeFiles/nasc.dir/src/Controller.c.o CMakeFiles/nasc.dir/src/HelpBox.c.o CMakeFiles/nasc.dir/src/InputView.c.o CMakeFiles/nasc.dir/src/ListFooter.c.o CMakeFiles/nasc.dir/src/NascSettings.c.o CMakeFiles/nasc.dir/src/OpenBox.c.o CMakeFiles/nasc.dir/src/PasteBinDialog.c.o CMakeFiles/nasc.dir/src/PeriodicTable.c.o CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o CMakeFiles/nasc.dir/src/ResultLine.c.o CMakeFiles/nasc.dir/src/ResultView.c.o CMakeFiles/nasc.dir/src/Tutorial.c.o -o nasc -L/home/pa/Projekte/nascOrg/build -rdynamic -lgranite -lgee-0.8 -lgio-2.0 -lsoup-2.4 -lgthread-2.0 -lgtksourceview-3.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lcln -lpthread -lqalculate -lglib-2.0 -lxml2 -lqalculatenasc -lqalculatenasc -lsoup-2.4 -lgthread-2.0 -lgtksourceview-3.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgobject-2.0 -lcln -lpthread -lqalculate -lglib-2.0 -lxml2 -lqalculatenasc -lqalculatenasc -Wl,-rpath,/home/pa/Projekte/nascOrg/build: diff -Nru nasc-0.2/build/CMakeFiles/nasc.dir/progress.make nasc-0.3/build/CMakeFiles/nasc.dir/progress.make --- nasc-0.2/build/CMakeFiles/nasc.dir/progress.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/nasc.dir/progress.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,19 @@ +CMAKE_PROGRESS_1 = 9 +CMAKE_PROGRESS_2 = 10 +CMAKE_PROGRESS_3 = 11 +CMAKE_PROGRESS_4 = 12 +CMAKE_PROGRESS_5 = 13 +CMAKE_PROGRESS_6 = 14 +CMAKE_PROGRESS_7 = 15 +CMAKE_PROGRESS_8 = 16 +CMAKE_PROGRESS_9 = 17 +CMAKE_PROGRESS_10 = 18 +CMAKE_PROGRESS_11 = 19 +CMAKE_PROGRESS_12 = 20 +CMAKE_PROGRESS_13 = 21 +CMAKE_PROGRESS_14 = 22 +CMAKE_PROGRESS_15 = 23 +CMAKE_PROGRESS_16 = 24 +CMAKE_PROGRESS_17 = 25 +CMAKE_PROGRESS_18 = 26 + diff -Nru nasc-0.2/build/CMakeFiles/progress.marks nasc-0.3/build/CMakeFiles/progress.marks --- nasc-0.2/build/CMakeFiles/progress.marks 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/progress.marks 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1 @@ +26 diff -Nru nasc-0.2/build/CMakeFiles/TargetDirectories.txt nasc-0.3/build/CMakeFiles/TargetDirectories.txt --- nasc-0.2/build/CMakeFiles/TargetDirectories.txt 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/TargetDirectories.txt 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,9 @@ +/home/pa/Projekte/nascOrg/build/CMakeFiles/install.dir +/home/pa/Projekte/nascOrg/build/CMakeFiles/list_install_components.dir +/home/pa/Projekte/nascOrg/build/CMakeFiles/rebuild_cache.dir +/home/pa/Projekte/nascOrg/build/CMakeFiles/edit_cache.dir +/home/pa/Projekte/nascOrg/build/CMakeFiles/libqalculatenasc.dir +/home/pa/Projekte/nascOrg/build/CMakeFiles/nasc.dir +/home/pa/Projekte/nascOrg/build/CMakeFiles/uninstall.dir +/home/pa/Projekte/nascOrg/build/CMakeFiles/install/local.dir +/home/pa/Projekte/nascOrg/build/CMakeFiles/install/strip.dir diff -Nru nasc-0.2/build/CMakeFiles/uninstall.dir/build.make nasc-0.3/build/CMakeFiles/uninstall.dir/build.make --- nasc-0.2/build/CMakeFiles/uninstall.dir/build.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/uninstall.dir/build.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,76 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/pa/Projekte/nascOrg + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/pa/Projekte/nascOrg/build + +# Utility rule file for uninstall. + +# Include the progress variables for this target. +include CMakeFiles/uninstall.dir/progress.make + +CMakeFiles/uninstall: + /usr/bin/cmake -P /home/pa/Projekte/nascOrg/build/Uninstall.cmake + +uninstall: CMakeFiles/uninstall +uninstall: CMakeFiles/uninstall.dir/build.make + +.PHONY : uninstall + +# Rule to build all files generated by this target. +CMakeFiles/uninstall.dir/build: uninstall + +.PHONY : CMakeFiles/uninstall.dir/build + +CMakeFiles/uninstall.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/uninstall.dir/cmake_clean.cmake +.PHONY : CMakeFiles/uninstall.dir/clean + +CMakeFiles/uninstall.dir/depend: + cd /home/pa/Projekte/nascOrg/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/pa/Projekte/nascOrg /home/pa/Projekte/nascOrg /home/pa/Projekte/nascOrg/build /home/pa/Projekte/nascOrg/build /home/pa/Projekte/nascOrg/build/CMakeFiles/uninstall.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/uninstall.dir/depend + diff -Nru nasc-0.2/build/CMakeFiles/uninstall.dir/cmake_clean.cmake nasc-0.3/build/CMakeFiles/uninstall.dir/cmake_clean.cmake --- nasc-0.2/build/CMakeFiles/uninstall.dir/cmake_clean.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/uninstall.dir/cmake_clean.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,8 @@ +file(REMOVE_RECURSE + "CMakeFiles/uninstall" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/uninstall.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff -Nru nasc-0.2/build/CMakeFiles/uninstall.dir/DependInfo.cmake nasc-0.3/build/CMakeFiles/uninstall.dir/DependInfo.cmake --- nasc-0.2/build/CMakeFiles/uninstall.dir/DependInfo.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/uninstall.dir/DependInfo.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,11 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) +# The set of files for implicit dependencies of each language: + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff -Nru nasc-0.2/build/CMakeFiles/uninstall.dir/progress.make nasc-0.3/build/CMakeFiles/uninstall.dir/progress.make --- nasc-0.2/build/CMakeFiles/uninstall.dir/progress.make 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/CMakeFiles/uninstall.dir/progress.make 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1 @@ + diff -Nru nasc-0.2/build/cmake_install.cmake nasc-0.3/build/cmake_install.cmake --- nasc-0.2/build/cmake_install.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/cmake_install.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,152 @@ +# Install script for directory: /home/pa/Projekte/nascOrg + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/usr/share/glib-2.0/schemas/net.launchpad.nasc.gschema.xml") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() +file(INSTALL DESTINATION "/usr/share/glib-2.0/schemas" TYPE FILE OPTIONAL FILES "/home/pa/Projekte/nascOrg/net.launchpad.nasc.gschema.xml") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + message (STATUS "Compiling GSettings schemas") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + execute_process (COMMAND /usr/lib/x86_64-linux-gnu/glib-2.0/glib-compile-schemas /usr/share/glib-2.0/schemas/) +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/nasc" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/nasc") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/nasc" + RPATH "") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" TYPE EXECUTABLE FILES "/home/pa/Projekte/nascOrg/build/nasc") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/nasc" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/nasc") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/nasc" + OLD_RPATH "/home/pa/Projekte/nascOrg/build:" + NEW_RPATH "") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/nasc") + endif() + endif() +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/applications" TYPE FILE FILES "/home/pa/Projekte/nascOrg/data/nasc.desktop") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/qalculate" TYPE FILE FILES "/home/pa/Projekte/nascOrg/data/nasc_template.sheets") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/qalculate" TYPE FILE FILES "/home/pa/Projekte/nascOrg/data/datasets/country.xml") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/qalculate" TYPE FILE FILES "/home/pa/Projekte/nascOrg/data/datasets/datasetsNasc.xml") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/16x16/apps" TYPE FILE FILES "/home/pa/Projekte/nascOrg/icons/16/nasc.svg") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/24x24/apps" TYPE FILE FILES "/home/pa/Projekte/nascOrg/icons/24/nasc.svg") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/32x32/apps" TYPE FILE FILES "/home/pa/Projekte/nascOrg/icons/32/nasc.svg") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/48x48/apps" TYPE FILE FILES "/home/pa/Projekte/nascOrg/icons/48/nasc.svg") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/64x64/apps" TYPE FILE FILES "/home/pa/Projekte/nascOrg/icons/64/nasc.svg") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/128x128/apps" TYPE FILE FILES "/home/pa/Projekte/nascOrg/icons/128/nasc.svg") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/usr/lib/libqalculatenasc.so") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() +file(INSTALL DESTINATION "/usr/lib" TYPE FILE FILES "/home/pa/Projekte/nascOrg/build/libqalculatenasc.so") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/qalculate" TYPE DIRECTORY FILES "/home/pa/Projekte/nascOrg/data/styles") +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + execute_process (COMMAND cp -R /usr/share/qalculate/datasetsNasc.xml /usr/share/qalculate/datasets.xml) +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + execute_process (COMMAND rm /usr/share/qalculate/datasetsNasc.xml) +endif() + +if(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") + execute_process (COMMAND gtk-update-icon-cache /usr/share/icons/hicolor) +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/home/pa/Projekte/nascOrg/build/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff -Nru nasc-0.2/build/Makefile nasc-0.3/build/Makefile --- nasc-0.2/build/Makefile 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/Makefile 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,704 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.5 + +# Default target executed when no arguments are given to make. +default_target: all + +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/pa/Projekte/nascOrg + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/pa/Projekte/nascOrg/build + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components + +.PHONY : list_install_components/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache + +.PHONY : rebuild_cache/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache + +.PHONY : edit_cache/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: install/local + +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: install/strip + +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/pa/Projekte/nascOrg/build/CMakeFiles /home/pa/Projekte/nascOrg/build/CMakeFiles/progress.marks + $(MAKE) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /home/pa/Projekte/nascOrg/build/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean + +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named libqalculatenasc + +# Build rule for target. +libqalculatenasc: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 libqalculatenasc +.PHONY : libqalculatenasc + +# fast build rule for target. +libqalculatenasc/fast: + $(MAKE) -f CMakeFiles/libqalculatenasc.dir/build.make CMakeFiles/libqalculatenasc.dir/build +.PHONY : libqalculatenasc/fast + +#============================================================================= +# Target rules for targets named nasc + +# Build rule for target. +nasc: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 nasc +.PHONY : nasc + +# fast build rule for target. +nasc/fast: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/build +.PHONY : nasc/fast + +#============================================================================= +# Target rules for targets named uninstall + +# Build rule for target. +uninstall: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 uninstall +.PHONY : uninstall + +# fast build rule for target. +uninstall/fast: + $(MAKE) -f CMakeFiles/uninstall.dir/build.make CMakeFiles/uninstall.dir/build +.PHONY : uninstall/fast + +src/Calculator.o: src/Calculator.c.o + +.PHONY : src/Calculator.o + +# target to build an object file +src/Calculator.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Calculator.c.o +.PHONY : src/Calculator.c.o + +src/Calculator.i: src/Calculator.c.i + +.PHONY : src/Calculator.i + +# target to preprocess a source file +src/Calculator.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Calculator.c.i +.PHONY : src/Calculator.c.i + +src/Calculator.s: src/Calculator.c.s + +.PHONY : src/Calculator.s + +# target to generate assembly for a file +src/Calculator.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Calculator.c.s +.PHONY : src/Calculator.c.s + +src/Controller.o: src/Controller.c.o + +.PHONY : src/Controller.o + +# target to build an object file +src/Controller.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Controller.c.o +.PHONY : src/Controller.c.o + +src/Controller.i: src/Controller.c.i + +.PHONY : src/Controller.i + +# target to preprocess a source file +src/Controller.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Controller.c.i +.PHONY : src/Controller.c.i + +src/Controller.s: src/Controller.c.s + +.PHONY : src/Controller.s + +# target to generate assembly for a file +src/Controller.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Controller.c.s +.PHONY : src/Controller.c.s + +src/HelpBox.o: src/HelpBox.c.o + +.PHONY : src/HelpBox.o + +# target to build an object file +src/HelpBox.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/HelpBox.c.o +.PHONY : src/HelpBox.c.o + +src/HelpBox.i: src/HelpBox.c.i + +.PHONY : src/HelpBox.i + +# target to preprocess a source file +src/HelpBox.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/HelpBox.c.i +.PHONY : src/HelpBox.c.i + +src/HelpBox.s: src/HelpBox.c.s + +.PHONY : src/HelpBox.s + +# target to generate assembly for a file +src/HelpBox.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/HelpBox.c.s +.PHONY : src/HelpBox.c.s + +src/InputView.o: src/InputView.c.o + +.PHONY : src/InputView.o + +# target to build an object file +src/InputView.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/InputView.c.o +.PHONY : src/InputView.c.o + +src/InputView.i: src/InputView.c.i + +.PHONY : src/InputView.i + +# target to preprocess a source file +src/InputView.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/InputView.c.i +.PHONY : src/InputView.c.i + +src/InputView.s: src/InputView.c.s + +.PHONY : src/InputView.s + +# target to generate assembly for a file +src/InputView.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/InputView.c.s +.PHONY : src/InputView.c.s + +src/ListFooter.o: src/ListFooter.c.o + +.PHONY : src/ListFooter.o + +# target to build an object file +src/ListFooter.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ListFooter.c.o +.PHONY : src/ListFooter.c.o + +src/ListFooter.i: src/ListFooter.c.i + +.PHONY : src/ListFooter.i + +# target to preprocess a source file +src/ListFooter.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ListFooter.c.i +.PHONY : src/ListFooter.c.i + +src/ListFooter.s: src/ListFooter.c.s + +.PHONY : src/ListFooter.s + +# target to generate assembly for a file +src/ListFooter.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ListFooter.c.s +.PHONY : src/ListFooter.c.s + +src/MainWindow.o: src/MainWindow.c.o + +.PHONY : src/MainWindow.o + +# target to build an object file +src/MainWindow.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/MainWindow.c.o +.PHONY : src/MainWindow.c.o + +src/MainWindow.i: src/MainWindow.c.i + +.PHONY : src/MainWindow.i + +# target to preprocess a source file +src/MainWindow.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/MainWindow.c.i +.PHONY : src/MainWindow.c.i + +src/MainWindow.s: src/MainWindow.c.s + +.PHONY : src/MainWindow.s + +# target to generate assembly for a file +src/MainWindow.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/MainWindow.c.s +.PHONY : src/MainWindow.c.s + +src/Nasc.o: src/Nasc.c.o + +.PHONY : src/Nasc.o + +# target to build an object file +src/Nasc.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Nasc.c.o +.PHONY : src/Nasc.c.o + +src/Nasc.i: src/Nasc.c.i + +.PHONY : src/Nasc.i + +# target to preprocess a source file +src/Nasc.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Nasc.c.i +.PHONY : src/Nasc.c.i + +src/Nasc.s: src/Nasc.c.s + +.PHONY : src/Nasc.s + +# target to generate assembly for a file +src/Nasc.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Nasc.c.s +.PHONY : src/Nasc.c.s + +src/NascSettings.o: src/NascSettings.c.o + +.PHONY : src/NascSettings.o + +# target to build an object file +src/NascSettings.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/NascSettings.c.o +.PHONY : src/NascSettings.c.o + +src/NascSettings.i: src/NascSettings.c.i + +.PHONY : src/NascSettings.i + +# target to preprocess a source file +src/NascSettings.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/NascSettings.c.i +.PHONY : src/NascSettings.c.i + +src/NascSettings.s: src/NascSettings.c.s + +.PHONY : src/NascSettings.s + +# target to generate assembly for a file +src/NascSettings.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/NascSettings.c.s +.PHONY : src/NascSettings.c.s + +src/OpenBox.o: src/OpenBox.c.o + +.PHONY : src/OpenBox.o + +# target to build an object file +src/OpenBox.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/OpenBox.c.o +.PHONY : src/OpenBox.c.o + +src/OpenBox.i: src/OpenBox.c.i + +.PHONY : src/OpenBox.i + +# target to preprocess a source file +src/OpenBox.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/OpenBox.c.i +.PHONY : src/OpenBox.c.i + +src/OpenBox.s: src/OpenBox.c.s + +.PHONY : src/OpenBox.s + +# target to generate assembly for a file +src/OpenBox.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/OpenBox.c.s +.PHONY : src/OpenBox.c.s + +src/PasteBinDialog.o: src/PasteBinDialog.c.o + +.PHONY : src/PasteBinDialog.o + +# target to build an object file +src/PasteBinDialog.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/PasteBinDialog.c.o +.PHONY : src/PasteBinDialog.c.o + +src/PasteBinDialog.i: src/PasteBinDialog.c.i + +.PHONY : src/PasteBinDialog.i + +# target to preprocess a source file +src/PasteBinDialog.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/PasteBinDialog.c.i +.PHONY : src/PasteBinDialog.c.i + +src/PasteBinDialog.s: src/PasteBinDialog.c.s + +.PHONY : src/PasteBinDialog.s + +# target to generate assembly for a file +src/PasteBinDialog.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/PasteBinDialog.c.s +.PHONY : src/PasteBinDialog.c.s + +src/PeriodicTable.o: src/PeriodicTable.c.o + +.PHONY : src/PeriodicTable.o + +# target to build an object file +src/PeriodicTable.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/PeriodicTable.c.o +.PHONY : src/PeriodicTable.c.o + +src/PeriodicTable.i: src/PeriodicTable.c.i + +.PHONY : src/PeriodicTable.i + +# target to preprocess a source file +src/PeriodicTable.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/PeriodicTable.c.i +.PHONY : src/PeriodicTable.c.i + +src/PeriodicTable.s: src/PeriodicTable.c.s + +.PHONY : src/PeriodicTable.s + +# target to generate assembly for a file +src/PeriodicTable.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/PeriodicTable.c.s +.PHONY : src/PeriodicTable.c.s + +src/ResultBoxWidget.o: src/ResultBoxWidget.c.o + +.PHONY : src/ResultBoxWidget.o + +# target to build an object file +src/ResultBoxWidget.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultBoxWidget.c.o +.PHONY : src/ResultBoxWidget.c.o + +src/ResultBoxWidget.i: src/ResultBoxWidget.c.i + +.PHONY : src/ResultBoxWidget.i + +# target to preprocess a source file +src/ResultBoxWidget.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultBoxWidget.c.i +.PHONY : src/ResultBoxWidget.c.i + +src/ResultBoxWidget.s: src/ResultBoxWidget.c.s + +.PHONY : src/ResultBoxWidget.s + +# target to generate assembly for a file +src/ResultBoxWidget.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultBoxWidget.c.s +.PHONY : src/ResultBoxWidget.c.s + +src/ResultLine.o: src/ResultLine.c.o + +.PHONY : src/ResultLine.o + +# target to build an object file +src/ResultLine.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultLine.c.o +.PHONY : src/ResultLine.c.o + +src/ResultLine.i: src/ResultLine.c.i + +.PHONY : src/ResultLine.i + +# target to preprocess a source file +src/ResultLine.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultLine.c.i +.PHONY : src/ResultLine.c.i + +src/ResultLine.s: src/ResultLine.c.s + +.PHONY : src/ResultLine.s + +# target to generate assembly for a file +src/ResultLine.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultLine.c.s +.PHONY : src/ResultLine.c.s + +src/ResultView.o: src/ResultView.c.o + +.PHONY : src/ResultView.o + +# target to build an object file +src/ResultView.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultView.c.o +.PHONY : src/ResultView.c.o + +src/ResultView.i: src/ResultView.c.i + +.PHONY : src/ResultView.i + +# target to preprocess a source file +src/ResultView.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultView.c.i +.PHONY : src/ResultView.c.i + +src/ResultView.s: src/ResultView.c.s + +.PHONY : src/ResultView.s + +# target to generate assembly for a file +src/ResultView.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/ResultView.c.s +.PHONY : src/ResultView.c.s + +src/Tutorial.o: src/Tutorial.c.o + +.PHONY : src/Tutorial.o + +# target to build an object file +src/Tutorial.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Tutorial.c.o +.PHONY : src/Tutorial.c.o + +src/Tutorial.i: src/Tutorial.c.i + +.PHONY : src/Tutorial.i + +# target to preprocess a source file +src/Tutorial.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Tutorial.c.i +.PHONY : src/Tutorial.c.i + +src/Tutorial.s: src/Tutorial.c.s + +.PHONY : src/Tutorial.s + +# target to generate assembly for a file +src/Tutorial.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/Tutorial.c.s +.PHONY : src/Tutorial.c.s + +src/config.o: src/config.c.o + +.PHONY : src/config.o + +# target to build an object file +src/config.c.o: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/config.c.o +.PHONY : src/config.c.o + +src/config.i: src/config.c.i + +.PHONY : src/config.i + +# target to preprocess a source file +src/config.c.i: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/config.c.i +.PHONY : src/config.c.i + +src/config.s: src/config.c.s + +.PHONY : src/config.s + +# target to generate assembly for a file +src/config.c.s: + $(MAKE) -f CMakeFiles/nasc.dir/build.make CMakeFiles/nasc.dir/src/config.c.s +.PHONY : src/config.c.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... install" + @echo "... list_install_components" + @echo "... rebuild_cache" + @echo "... edit_cache" + @echo "... libqalculatenasc" + @echo "... nasc" + @echo "... uninstall" + @echo "... install/local" + @echo "... install/strip" + @echo "... src/Calculator.o" + @echo "... src/Calculator.i" + @echo "... src/Calculator.s" + @echo "... src/Controller.o" + @echo "... src/Controller.i" + @echo "... src/Controller.s" + @echo "... src/HelpBox.o" + @echo "... src/HelpBox.i" + @echo "... src/HelpBox.s" + @echo "... src/InputView.o" + @echo "... src/InputView.i" + @echo "... src/InputView.s" + @echo "... src/ListFooter.o" + @echo "... src/ListFooter.i" + @echo "... src/ListFooter.s" + @echo "... src/MainWindow.o" + @echo "... src/MainWindow.i" + @echo "... src/MainWindow.s" + @echo "... src/Nasc.o" + @echo "... src/Nasc.i" + @echo "... src/Nasc.s" + @echo "... src/NascSettings.o" + @echo "... src/NascSettings.i" + @echo "... src/NascSettings.s" + @echo "... src/OpenBox.o" + @echo "... src/OpenBox.i" + @echo "... src/OpenBox.s" + @echo "... src/PasteBinDialog.o" + @echo "... src/PasteBinDialog.i" + @echo "... src/PasteBinDialog.s" + @echo "... src/PeriodicTable.o" + @echo "... src/PeriodicTable.i" + @echo "... src/PeriodicTable.s" + @echo "... src/ResultBoxWidget.o" + @echo "... src/ResultBoxWidget.i" + @echo "... src/ResultBoxWidget.s" + @echo "... src/ResultLine.o" + @echo "... src/ResultLine.i" + @echo "... src/ResultLine.s" + @echo "... src/ResultView.o" + @echo "... src/ResultView.i" + @echo "... src/ResultView.s" + @echo "... src/Tutorial.o" + @echo "... src/Tutorial.i" + @echo "... src/Tutorial.s" + @echo "... src/config.o" + @echo "... src/config.i" + @echo "... src/config.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + Binary files /tmp/tmpfPmVqY/_6EXeFNdsI/nasc-0.2/build/nasc and /tmp/tmpfPmVqY/jqvdyqM0Hs/nasc-0.3/build/nasc differ diff -Nru nasc-0.2/build/QalculateNasc.h nasc-0.3/build/QalculateNasc.h --- nasc-0.2/build/QalculateNasc.h 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/QalculateNasc.h 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,42 @@ +#ifndef __QALCULATENASC_H +#define __QALCULATENASC_H + +#ifdef __cplusplus +extern "C" { +#endif + +void new_calulator(); + +char* Calculator_calculate(const char* string); + +char* Calculator_calculate_store_variable(const char* input, const char* variable); + +void clear_variables(); +void abort(); + +void delete_calculator(); + +int get_function_size(); +int get_variable_size(); +char* get_function_name(int index); +char* get_function_description(int index); +char* get_function_category(int index); +char* get_function_title(int index); +char* get_function_arguments(int index); +char* get_function_arguments_list (int index) ; +char* get_variable_name(int index); +char* get_variable_category(int index); +char* get_variable_title(int index); + +void load_currencies(); +char* get_exchange_rates_url(); +char* get_exchange_rates_filename(); + +#ifdef __cplusplus +} +char* convert_string (std::string str); +std::string intern_calc_wait (std::string input); +std::string intern_calc_terminate (std::string input); +std::string intern_calc (std::string input); +#endif +#endif diff -Nru nasc-0.2/build/src/Calculator.c nasc-0.3/build/src/Calculator.c --- nasc-0.2/build/src/Calculator.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/Calculator.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,3767 @@ +/* Calculator.c generated by valac 0.32.1, the Vala compiler + * generated from Calculator.vala, do not modify */ + +/* + * Copyright (c) 2016 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include "QalculateNasc.h" +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_NASC_ELEMENT (nasc_element_get_type ()) +#define NASC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_ELEMENT, NascElement)) +#define NASC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_ELEMENT, NascElementClass)) +#define IS_NASC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_ELEMENT)) +#define IS_NASC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_ELEMENT)) +#define NASC_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_ELEMENT, NascElementClass)) + +typedef struct _NascElement NascElement; +typedef struct _NascElementClass NascElementClass; +typedef struct _NascElementPrivate NascElementPrivate; +#define _g_free0(var) (var = (g_free (var), NULL)) + +#define TYPE_NASC_FUNCTION (nasc_function_get_type ()) +#define NASC_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_FUNCTION, NascFunction)) +#define NASC_FUNCTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_FUNCTION, NascFunctionClass)) +#define IS_NASC_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_FUNCTION)) +#define IS_NASC_FUNCTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_FUNCTION)) +#define NASC_FUNCTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_FUNCTION, NascFunctionClass)) + +typedef struct _NascFunction NascFunction; +typedef struct _NascFunctionClass NascFunctionClass; +typedef struct _NascFunctionPrivate NascFunctionPrivate; + +#define TYPE_NASC_VARIABEL (nasc_variabel_get_type ()) +#define NASC_VARIABEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_VARIABEL, NascVariabel)) +#define NASC_VARIABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_VARIABEL, NascVariabelClass)) +#define IS_NASC_VARIABEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_VARIABEL)) +#define IS_NASC_VARIABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_VARIABEL)) +#define NASC_VARIABEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_VARIABEL, NascVariabelClass)) + +typedef struct _NascVariabel NascVariabel; +typedef struct _NascVariabelClass NascVariabelClass; +typedef struct _NascVariabelPrivate NascVariabelPrivate; + +#define TYPE_CALCULATION (calculation_get_type ()) +#define CALCULATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CALCULATION, Calculation)) +#define CALCULATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CALCULATION, CalculationClass)) +#define IS_CALCULATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CALCULATION)) +#define IS_CALCULATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CALCULATION)) +#define CALCULATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CALCULATION, CalculationClass)) + +typedef struct _Calculation Calculation; +typedef struct _CalculationClass CalculationClass; +typedef struct _CalculationPrivate CalculationPrivate; + +#define TYPE_CALCULATOR_THREAD (calculator_thread_get_type ()) +#define CALCULATOR_THREAD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CALCULATOR_THREAD, CalculatorThread)) +#define CALCULATOR_THREAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CALCULATOR_THREAD, CalculatorThreadClass)) +#define IS_CALCULATOR_THREAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CALCULATOR_THREAD)) +#define IS_CALCULATOR_THREAD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CALCULATOR_THREAD)) +#define CALCULATOR_THREAD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CALCULATOR_THREAD, CalculatorThreadClass)) + +typedef struct _CalculatorThread CalculatorThread; +typedef struct _CalculatorThreadClass CalculatorThreadClass; +typedef struct _CalculatorThreadPrivate CalculatorThreadPrivate; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL))) +#define _g_async_queue_unref0(var) ((var == NULL) ? NULL : (var = (g_async_queue_unref (var), NULL))) +#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) +#define _calculator_thread_unref0(var) ((var == NULL) ? NULL : (var = (calculator_thread_unref (var), NULL))) +typedef struct _CalculatorThreadLoadFunctionsData CalculatorThreadLoadFunctionsData; +typedef struct _CalculatorThreadLoadVariablesData CalculatorThreadLoadVariablesData; +#define _g_string_free0(var) ((var == NULL) ? NULL : (var = (g_string_free (var, TRUE), NULL))) +typedef struct _ParamSpecCalculatorThread ParamSpecCalculatorThread; + +#define TYPE_UPDATE_THREAD (update_thread_get_type ()) +#define UPDATE_THREAD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_UPDATE_THREAD, UpdateThread)) +#define UPDATE_THREAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_UPDATE_THREAD, UpdateThreadClass)) +#define IS_UPDATE_THREAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_UPDATE_THREAD)) +#define IS_UPDATE_THREAD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_UPDATE_THREAD)) +#define UPDATE_THREAD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_UPDATE_THREAD, UpdateThreadClass)) + +typedef struct _UpdateThread UpdateThread; +typedef struct _UpdateThreadClass UpdateThreadClass; +typedef struct _UpdateThreadPrivate UpdateThreadPrivate; +#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL))) +typedef struct _ParamSpecUpdateThread ParamSpecUpdateThread; + +#define TYPE_CALCULATOR (calculator_get_type ()) +#define CALCULATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CALCULATOR, Calculator)) +#define CALCULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CALCULATOR, CalculatorClass)) +#define IS_CALCULATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CALCULATOR)) +#define IS_CALCULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CALCULATOR)) +#define CALCULATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CALCULATOR, CalculatorClass)) + +typedef struct _Calculator Calculator; +typedef struct _CalculatorClass CalculatorClass; +typedef struct _CalculatorPrivate CalculatorPrivate; +#define _update_thread_unref0(var) ((var == NULL) ? NULL : (var = (update_thread_unref (var), NULL))) +#define _g_thread_unref0(var) ((var == NULL) ? NULL : (var = (g_thread_unref (var), NULL))) + +#define TYPE_NASC_SETTINGS (nasc_settings_get_type ()) +#define NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SETTINGS, NascSettings)) +#define NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SETTINGS, NascSettingsClass)) +#define IS_NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SETTINGS)) +#define IS_NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SETTINGS)) +#define NASC_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SETTINGS, NascSettingsClass)) + +typedef struct _NascSettings NascSettings; +typedef struct _NascSettingsClass NascSettingsClass; +typedef struct _CalculatorCalculateStoreVariableData CalculatorCalculateStoreVariableData; + +struct _NascElement { + GObject parent_instance; + NascElementPrivate * priv; + gint index; + gchar* name; + gchar* title; + gchar* category; + gchar* desc; +}; + +struct _NascElementClass { + GObjectClass parent_class; +}; + +struct _NascFunction { + NascElement parent_instance; + NascFunctionPrivate * priv; + gchar* args; + gchar* args_list; +}; + +struct _NascFunctionClass { + NascElementClass parent_class; +}; + +struct _NascVariabel { + NascElement parent_instance; + NascVariabelPrivate * priv; +}; + +struct _NascVariabelClass { + NascElementClass parent_class; +}; + +struct _Calculation { + GObject parent_instance; + CalculationPrivate * priv; + gchar* input; + gchar* output; + gchar* variable; + gboolean save_variable; +}; + +struct _CalculationClass { + GObjectClass parent_class; +}; + +struct _CalculatorThread { + GTypeInstance parent_instance; + volatile int ref_count; + CalculatorThreadPrivate * priv; + GSourceFunc callback; + gpointer callback_target; + GDestroyNotify callback_target_destroy_notify; +}; + +struct _CalculatorThreadClass { + GTypeClass parent_class; + void (*finalize) (CalculatorThread *self); +}; + +struct _CalculatorThreadPrivate { + GeeList* _functions; + GeeList* _advanced_functions; + GeeList* _variables; + gchar* _currency_update_url; + gchar* _currency_update_filename; + GRegex* digit_regex; + GRegex* pretty_regex; + GAsyncQueue* _calculations; + GAsyncQueue* _results; + GCancellable* cancel; +}; + +struct _CalculatorThreadLoadFunctionsData { + int _state_; + GObject* _source_object_; + GAsyncResult* _res_; + GSimpleAsyncResult* _async_result; + CalculatorThread* self; + gint i; + gboolean _tmp0_; + gint _tmp1_; + gint _tmp2_; + gint _tmp3_; + gchar* category; + gint _tmp4_; + gchar* _tmp5_; + const gchar* _tmp6_; + gboolean _tmp7_; + gboolean _tmp8_; + gboolean _tmp9_; + gboolean _tmp10_; + gboolean _tmp11_; + gboolean _tmp12_; + gboolean _tmp13_; + gboolean _tmp14_; + gboolean _tmp15_; + gboolean _tmp16_; + gboolean _tmp17_; + gboolean _tmp18_; + gboolean _tmp19_; + const gchar* _tmp20_; + const gchar* _tmp21_; + const gchar* _tmp22_; + const gchar* _tmp23_; + gboolean _tmp24_; + const gchar* _tmp25_; + gboolean _tmp26_; + const gchar* _tmp27_; + gboolean _tmp28_; + const gchar* _tmp29_; + const gchar* _tmp30_; + const gchar* _tmp31_; + const gchar* _tmp32_; + const gchar* _tmp33_; + const gchar* _tmp34_; + const gchar* _tmp35_; + const gchar* _tmp36_; + GeeList* _tmp37_; + gint _tmp38_; + const gchar* _tmp39_; + NascFunction* _tmp40_; + NascFunction* _tmp41_; + const gchar* _tmp42_; + gchar* func_name; + gint _tmp43_; + gchar* _tmp44_; + gboolean _tmp45_; + gboolean _tmp46_; + gboolean _tmp47_; + gboolean _tmp48_; + gboolean _tmp49_; + const gchar* _tmp50_; + const gchar* _tmp51_; + const gchar* _tmp52_; + const gchar* _tmp53_; + const gchar* _tmp54_; + const gchar* _tmp55_; + GeeList* _tmp56_; + gint _tmp57_; + const gchar* _tmp58_; + NascFunction* _tmp59_; + NascFunction* _tmp60_; + const gchar* _tmp61_; + gchar* _vala1_func_name; + gint _tmp62_; + gchar* _tmp63_; + gboolean _tmp64_; + gboolean _tmp65_; + gboolean _tmp66_; + gboolean _tmp67_; + gboolean _tmp68_; + const gchar* _tmp69_; + const gchar* _tmp70_; + const gchar* _tmp71_; + const gchar* _tmp72_; + const gchar* _tmp73_; + const gchar* _tmp74_; + GeeList* _tmp75_; + gint _tmp76_; + const gchar* _tmp77_; + NascFunction* _tmp78_; + NascFunction* _tmp79_; + GeeList* _tmp80_; + gint _tmp81_; + const gchar* _tmp82_; + NascFunction* _tmp83_; + NascFunction* _tmp84_; + GeeList* _tmp85_; +}; + +struct _CalculatorThreadLoadVariablesData { + int _state_; + GObject* _source_object_; + GAsyncResult* _res_; + GSimpleAsyncResult* _async_result; + CalculatorThread* self; + gint i; + gboolean _tmp0_; + gint _tmp1_; + gint _tmp2_; + gint _tmp3_; + gchar* category; + gint _tmp4_; + gchar* _tmp5_; + gboolean _tmp6_; + gboolean _tmp7_; + gboolean _tmp8_; + gboolean _tmp9_; + const gchar* _tmp10_; + const gchar* _tmp11_; + const gchar* _tmp12_; + const gchar* _tmp13_; + const gchar* _tmp14_; + GeeList* _tmp15_; + gint _tmp16_; + const gchar* _tmp17_; + NascVariabel* _tmp18_; + NascVariabel* _tmp19_; + GeeList* _tmp20_; +}; + +struct _ParamSpecCalculatorThread { + GParamSpec parent_instance; +}; + +struct _UpdateThread { + GTypeInstance parent_instance; + volatile int ref_count; + UpdateThreadPrivate * priv; +}; + +struct _UpdateThreadClass { + GTypeClass parent_class; + void (*finalize) (UpdateThread *self); +}; + +struct _UpdateThreadPrivate { + gchar* file; + gchar* url; +}; + +struct _ParamSpecUpdateThread { + GParamSpec parent_instance; +}; + +struct _Calculator { + GObject parent_instance; + CalculatorPrivate * priv; +}; + +struct _CalculatorClass { + GObjectClass parent_class; +}; + +struct _CalculatorPrivate { + GCancellable* _cancel; + CalculatorThread* calc_thread; + UpdateThread* update_thread; + GThread* thread; + GThread* thread2; +}; + +struct _CalculatorCalculateStoreVariableData { + int _state_; + GObject* _source_object_; + GAsyncResult* _res_; + GSimpleAsyncResult* _async_result; + Calculator* self; + gchar* input; + gchar* variable; + gchar* result; + CalculatorThread* _tmp0_; + CalculatorThread* _tmp1_; + GAsyncQueue* _tmp2_; + GAsyncQueue* _tmp3_; + const gchar* _tmp4_; + const gchar* _tmp5_; + Calculation* _tmp6_; + CalculatorThread* _tmp7_; + GAsyncQueue* _tmp8_; + GAsyncQueue* _tmp9_; + gpointer _tmp10_; + Calculation* _tmp11_; + const gchar* _tmp12_; + gchar* _tmp13_; + gchar* _tmp14_; +}; + + +static gpointer nasc_element_parent_class = NULL; +static gpointer nasc_function_parent_class = NULL; +static gpointer nasc_variabel_parent_class = NULL; +static gpointer calculation_parent_class = NULL; +static gpointer calculator_thread_parent_class = NULL; +static gpointer update_thread_parent_class = NULL; +static gpointer calculator_parent_class = NULL; + +GType nasc_element_get_type (void) G_GNUC_CONST; +enum { + NASC_ELEMENT_DUMMY_PROPERTY +}; +NascElement* nasc_element_new (void); +NascElement* nasc_element_construct (GType object_type); +static void nasc_element_finalize (GObject* obj); +GType nasc_function_get_type (void) G_GNUC_CONST; +enum { + NASC_FUNCTION_DUMMY_PROPERTY +}; +NascFunction* nasc_function_new (gint index, const gchar* category); +NascFunction* nasc_function_construct (GType object_type, gint index, const gchar* category); +NascFunction* nasc_function_new_nasc (const gchar* name, const gchar* title, const gchar* desc); +NascFunction* nasc_function_construct_nasc (GType object_type, const gchar* name, const gchar* title, const gchar* desc); +static void nasc_function_finalize (GObject* obj); +GType nasc_variabel_get_type (void) G_GNUC_CONST; +enum { + NASC_VARIABEL_DUMMY_PROPERTY +}; +NascVariabel* nasc_variabel_new (gint index, const gchar* category); +NascVariabel* nasc_variabel_construct (GType object_type, gint index, const gchar* category); +static gchar* nasc_variabel_build_desc (NascVariabel* self); +GType calculation_get_type (void) G_GNUC_CONST; +enum { + CALCULATION_DUMMY_PROPERTY +}; +Calculation* calculation_new (const gchar* input); +Calculation* calculation_construct (GType object_type, const gchar* input); +Calculation* calculation_new_with_variable (const gchar* input, const gchar* variable); +Calculation* calculation_construct_with_variable (GType object_type, const gchar* input, const gchar* variable); +static void calculation_finalize (GObject* obj); +gpointer calculator_thread_ref (gpointer instance); +void calculator_thread_unref (gpointer instance); +GParamSpec* param_spec_calculator_thread (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_calculator_thread (GValue* value, gpointer v_object); +void value_take_calculator_thread (GValue* value, gpointer v_object); +gpointer value_get_calculator_thread (const GValue* value); +GType calculator_thread_get_type (void) G_GNUC_CONST; +#define CALCULATOR_THREAD_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CALCULATOR_THREAD, CalculatorThreadPrivate)) +enum { + CALCULATOR_THREAD_DUMMY_PROPERTY +}; +CalculatorThread* calculator_thread_new (GCancellable* cancel); +CalculatorThread* calculator_thread_construct (GType object_type, GCancellable* cancel); +static void calculator_thread_set_functions (CalculatorThread* self, GeeList* value); +static void calculator_thread_set_advanced_functions (CalculatorThread* self, GeeList* value); +static void calculator_thread_set_variables (CalculatorThread* self, GeeList* value); +static void _g_object_unref0_ (gpointer var); +static void calculator_thread_set_calculations (CalculatorThread* self, GAsyncQueue* value); +static void calculator_thread_set_results (CalculatorThread* self, GAsyncQueue* value); +void* calculator_thread_thread_func (CalculatorThread* self); +static void calculator_thread_set_currency_update_url (CalculatorThread* self, const gchar* value); +static void calculator_thread_set_currency_update_filename (CalculatorThread* self, const gchar* value); +static void calculator_thread_load_functions (CalculatorThread* self, GAsyncReadyCallback _callback_, gpointer _user_data_); +static void calculator_thread_load_functions_finish (CalculatorThread* self, GAsyncResult* _res_); +static void calculator_thread_load_variables (CalculatorThread* self, GAsyncReadyCallback _callback_, gpointer _user_data_); +static void calculator_thread_load_variables_finish (CalculatorThread* self, GAsyncResult* _res_); +static void __lambda26_ (CalculatorThread* self); +static void calculator_thread_abort (CalculatorThread* self); +static void ___lambda26__g_cancellable_cancelled (GCancellable* _sender, gpointer self); +GAsyncQueue* calculator_thread_get_calculations (CalculatorThread* self); +static gchar* calculator_thread_post_string (CalculatorThread* self, const gchar* _result_); +static gchar* calculator_thread_prepare_string (CalculatorThread* self, const gchar* input); +GAsyncQueue* calculator_thread_get_results (CalculatorThread* self); +static void calculator_thread_load_functions_data_free (gpointer _data); +static gboolean calculator_thread_load_functions_co (CalculatorThreadLoadFunctionsData* _data_); +GeeList* calculator_thread_get_advanced_functions (CalculatorThread* self); +GeeList* calculator_thread_get_functions (CalculatorThread* self); +static gint __lambda24_ (CalculatorThread* self, NascFunction* a, NascFunction* b); +static gint ___lambda24__gcompare_data_func (gconstpointer a, gconstpointer b, gpointer self); +static void calculator_thread_load_variables_data_free (gpointer _data); +static gboolean calculator_thread_load_variables_co (CalculatorThreadLoadVariablesData* _data_); +GeeList* calculator_thread_get_variables (CalculatorThread* self); +static gint __lambda25_ (CalculatorThread* self, NascVariabel* a, NascVariabel* b); +static gint ___lambda25__gcompare_data_func (gconstpointer a, gconstpointer b, gpointer self); +static gchar* calculator_thread_pretty_print (CalculatorThread* self, const gchar* _result_); +static gchar* calculator_thread_pretty_print2 (CalculatorThread* self, const gchar* str); +const gchar* calculator_thread_get_currency_update_url (CalculatorThread* self); +const gchar* calculator_thread_get_currency_update_filename (CalculatorThread* self); +static void calculator_thread_finalize (CalculatorThread* obj); +gpointer update_thread_ref (gpointer instance); +void update_thread_unref (gpointer instance); +GParamSpec* param_spec_update_thread (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_update_thread (GValue* value, gpointer v_object); +void value_take_update_thread (GValue* value, gpointer v_object); +gpointer value_get_update_thread (const GValue* value); +GType update_thread_get_type (void) G_GNUC_CONST; +#define UPDATE_THREAD_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_UPDATE_THREAD, UpdateThreadPrivate)) +enum { + UPDATE_THREAD_DUMMY_PROPERTY +}; +UpdateThread* update_thread_new (const gchar* file, const gchar* url); +UpdateThread* update_thread_construct (GType object_type, const gchar* file, const gchar* url); +gboolean update_thread_thread_func (UpdateThread* self); +static void update_thread_finalize (UpdateThread* obj); +GType calculator_get_type (void) G_GNUC_CONST; +#define CALCULATOR_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CALCULATOR, CalculatorPrivate)) +enum { + CALCULATOR_DUMMY_PROPERTY, + CALCULATOR_FUNCTIONS, + CALCULATOR_ADVANCED_FUNCTIONS, + CALCULATOR_VARIABLES, + CALCULATOR_CANCEL +}; +Calculator* calculator_new (void); +Calculator* calculator_construct (GType object_type); +static void calculator_set_cancel (Calculator* self, GCancellable* value); +GCancellable* calculator_get_cancel (Calculator* self); +static gpointer _calculator_thread_thread_func_gthread_func (gpointer self); +static gboolean __lambda27_ (Calculator* self); +static gpointer _update_thread_thread_func_gthread_func (gpointer self); +static gboolean ___lambda27__gsource_func (gpointer self); +GeeTreeMap* calculator_category_functions (Calculator* self); +GeeList* calculator_get_functions (Calculator* self); +GType nasc_settings_get_type (void) G_GNUC_CONST; +NascSettings* nasc_settings_get_instance (void); +gboolean nasc_settings_get_advanced_mode (NascSettings* self); +GeeList* calculator_get_advanced_functions (Calculator* self); +gchar* calculator_calculate (Calculator* self, const gchar* input); +static void calculator_calculate_store_variable_data_free (gpointer _data); +void calculator_calculate_store_variable (Calculator* self, const gchar* input, const gchar* variable, GAsyncReadyCallback _callback_, gpointer _user_data_); +gchar* calculator_calculate_store_variable_finish (Calculator* self, GAsyncResult* _res_); +static gboolean calculator_calculate_store_variable_co (CalculatorCalculateStoreVariableData* _data_); +static gboolean _calculator_calculate_store_variable_co_gsource_func (gpointer self); +static void calculator_set_functions (Calculator* self, GeeList* value); +static void calculator_set_advanced_functions (Calculator* self, GeeList* value); +GeeList* calculator_get_variables (Calculator* self); +static void calculator_set_variables (Calculator* self, GeeList* value); +static void calculator_finalize (GObject* obj); +static void _vala_calculator_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec); +static void _vala_calculator_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec); +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func); +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func); +static gint _vala_array_length (gpointer array); + +static const gunichar CALCULATOR_THREAD_superscript_digits[10] = {8304U, 185U, 178U, 179U, 8308U, 8309U, 8310U, 8311U, 8312U, 8313U}; + +NascElement* nasc_element_construct (GType object_type) { + NascElement * self = NULL; + self = (NascElement*) g_object_new (object_type, NULL); + return self; +} + + +NascElement* nasc_element_new (void) { + return nasc_element_construct (TYPE_NASC_ELEMENT); +} + + +static void nasc_element_class_init (NascElementClass * klass) { + nasc_element_parent_class = g_type_class_peek_parent (klass); + G_OBJECT_CLASS (klass)->finalize = nasc_element_finalize; +} + + +static void nasc_element_instance_init (NascElement * self) { +} + + +static void nasc_element_finalize (GObject* obj) { + NascElement * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_NASC_ELEMENT, NascElement); + _g_free0 (self->name); + _g_free0 (self->title); + _g_free0 (self->category); + _g_free0 (self->desc); + G_OBJECT_CLASS (nasc_element_parent_class)->finalize (obj); +} + + +GType nasc_element_get_type (void) { + static volatile gsize nasc_element_type_id__volatile = 0; + if (g_once_init_enter (&nasc_element_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascElement), 0, (GInstanceInitFunc) nasc_element_instance_init, NULL }; + GType nasc_element_type_id; + nasc_element_type_id = g_type_register_static (G_TYPE_OBJECT, "NascElement", &g_define_type_info, 0); + g_once_init_leave (&nasc_element_type_id__volatile, nasc_element_type_id); + } + return nasc_element_type_id__volatile; +} + + +NascFunction* nasc_function_construct (GType object_type, gint index, const gchar* category) { + NascFunction * self = NULL; + gint _tmp0_ = 0; + gint _tmp1_ = 0; + gchar* _tmp2_ = NULL; + gint _tmp3_ = 0; + gchar* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar* _tmp8_ = NULL; + gint _tmp9_ = 0; + gchar* _tmp10_ = NULL; + gint _tmp11_ = 0; + gchar* _tmp12_ = NULL; + g_return_val_if_fail (category != NULL, NULL); + self = (NascFunction*) nasc_element_construct (object_type); + _tmp0_ = index; + ((NascElement*) self)->index = _tmp0_; + _tmp1_ = index; + _tmp2_ = get_function_name (_tmp1_); + _g_free0 (((NascElement*) self)->name); + ((NascElement*) self)->name = _tmp2_; + _tmp3_ = index; + _tmp4_ = get_function_title (_tmp3_); + _g_free0 (((NascElement*) self)->title); + ((NascElement*) self)->title = _tmp4_; + _tmp5_ = category; + _tmp6_ = g_strdup (_tmp5_); + _g_free0 (((NascElement*) self)->category); + ((NascElement*) self)->category = _tmp6_; + _tmp7_ = index; + _tmp8_ = get_function_description (_tmp7_); + _g_free0 (((NascElement*) self)->desc); + ((NascElement*) self)->desc = _tmp8_; + _tmp9_ = index; + _tmp10_ = get_function_arguments (_tmp9_); + _g_free0 (self->args); + self->args = _tmp10_; + _tmp11_ = index; + _tmp12_ = get_function_arguments_list (_tmp11_); + _g_free0 (self->args_list); + self->args_list = _tmp12_; + return self; +} + + +NascFunction* nasc_function_new (gint index, const gchar* category) { + return nasc_function_construct (TYPE_NASC_FUNCTION, index, category); +} + + +NascFunction* nasc_function_construct_nasc (GType object_type, const gchar* name, const gchar* title, const gchar* desc) { + NascFunction * self = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + gchar* _tmp7_ = NULL; + g_return_val_if_fail (name != NULL, NULL); + g_return_val_if_fail (title != NULL, NULL); + g_return_val_if_fail (desc != NULL, NULL); + self = (NascFunction*) nasc_element_construct (object_type); + ((NascElement*) self)->index = -1; + _tmp0_ = name; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (((NascElement*) self)->name); + ((NascElement*) self)->name = _tmp1_; + _tmp2_ = title; + _tmp3_ = g_strdup (_tmp2_); + _g_free0 (((NascElement*) self)->title); + ((NascElement*) self)->title = _tmp3_; + _tmp4_ = g_strdup ("NaSC"); + _g_free0 (((NascElement*) self)->category); + ((NascElement*) self)->category = _tmp4_; + _tmp5_ = desc; + _tmp6_ = g_strdup (_tmp5_); + _g_free0 (((NascElement*) self)->desc); + ((NascElement*) self)->desc = _tmp6_; + _tmp7_ = g_strdup (""); + _g_free0 (self->args); + self->args = _tmp7_; + return self; +} + + +NascFunction* nasc_function_new_nasc (const gchar* name, const gchar* title, const gchar* desc) { + return nasc_function_construct_nasc (TYPE_NASC_FUNCTION, name, title, desc); +} + + +static void nasc_function_class_init (NascFunctionClass * klass) { + nasc_function_parent_class = g_type_class_peek_parent (klass); + G_OBJECT_CLASS (klass)->finalize = nasc_function_finalize; +} + + +static void nasc_function_instance_init (NascFunction * self) { +} + + +static void nasc_function_finalize (GObject* obj) { + NascFunction * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_NASC_FUNCTION, NascFunction); + _g_free0 (self->args); + _g_free0 (self->args_list); + G_OBJECT_CLASS (nasc_function_parent_class)->finalize (obj); +} + + +GType nasc_function_get_type (void) { + static volatile gsize nasc_function_type_id__volatile = 0; + if (g_once_init_enter (&nasc_function_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascFunctionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_function_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascFunction), 0, (GInstanceInitFunc) nasc_function_instance_init, NULL }; + GType nasc_function_type_id; + nasc_function_type_id = g_type_register_static (TYPE_NASC_ELEMENT, "NascFunction", &g_define_type_info, 0); + g_once_init_leave (&nasc_function_type_id__volatile, nasc_function_type_id); + } + return nasc_function_type_id__volatile; +} + + +NascVariabel* nasc_variabel_construct (GType object_type, gint index, const gchar* category) { + NascVariabel * self = NULL; + gint _tmp0_ = 0; + gchar* _tmp1_ = NULL; + gint _tmp2_ = 0; + gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + g_return_val_if_fail (category != NULL, NULL); + self = (NascVariabel*) nasc_element_construct (object_type); + _tmp0_ = index; + _tmp1_ = get_variable_name (_tmp0_); + _g_free0 (((NascElement*) self)->name); + ((NascElement*) self)->name = _tmp1_; + _tmp2_ = index; + _tmp3_ = get_variable_title (_tmp2_); + _g_free0 (((NascElement*) self)->title); + ((NascElement*) self)->title = _tmp3_; + _tmp4_ = category; + _tmp5_ = g_strdup (_tmp4_); + _g_free0 (((NascElement*) self)->category); + ((NascElement*) self)->category = _tmp5_; + _tmp6_ = nasc_variabel_build_desc (self); + _g_free0 (((NascElement*) self)->desc); + ((NascElement*) self)->desc = _tmp6_; + return self; +} + + +NascVariabel* nasc_variabel_new (gint index, const gchar* category) { + return nasc_variabel_construct (TYPE_NASC_VARIABEL, index, category); +} + + +static gchar* nasc_variabel_build_desc (NascVariabel* self) { + gchar* result = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = ((NascElement*) self)->category; + _tmp1_ = g_strdup (_tmp0_); + result = _tmp1_; + return result; +} + + +static void nasc_variabel_class_init (NascVariabelClass * klass) { + nasc_variabel_parent_class = g_type_class_peek_parent (klass); +} + + +static void nasc_variabel_instance_init (NascVariabel * self) { +} + + +GType nasc_variabel_get_type (void) { + static volatile gsize nasc_variabel_type_id__volatile = 0; + if (g_once_init_enter (&nasc_variabel_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascVariabelClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_variabel_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascVariabel), 0, (GInstanceInitFunc) nasc_variabel_instance_init, NULL }; + GType nasc_variabel_type_id; + nasc_variabel_type_id = g_type_register_static (TYPE_NASC_ELEMENT, "NascVariabel", &g_define_type_info, 0); + g_once_init_leave (&nasc_variabel_type_id__volatile, nasc_variabel_type_id); + } + return nasc_variabel_type_id__volatile; +} + + +Calculation* calculation_construct (GType object_type, const gchar* input) { + Calculation * self = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_val_if_fail (input != NULL, NULL); + self = (Calculation*) g_object_new (object_type, NULL); + _tmp0_ = input; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->input); + self->input = _tmp1_; + self->save_variable = FALSE; + return self; +} + + +Calculation* calculation_new (const gchar* input) { + return calculation_construct (TYPE_CALCULATION, input); +} + + +Calculation* calculation_construct_with_variable (GType object_type, const gchar* input, const gchar* variable) { + Calculation * self = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + g_return_val_if_fail (input != NULL, NULL); + g_return_val_if_fail (variable != NULL, NULL); + self = (Calculation*) g_object_new (object_type, NULL); + _tmp0_ = input; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->input); + self->input = _tmp1_; + _tmp2_ = variable; + _tmp3_ = g_strdup (_tmp2_); + _g_free0 (self->variable); + self->variable = _tmp3_; + return self; +} + + +Calculation* calculation_new_with_variable (const gchar* input, const gchar* variable) { + return calculation_construct_with_variable (TYPE_CALCULATION, input, variable); +} + + +static void calculation_class_init (CalculationClass * klass) { + calculation_parent_class = g_type_class_peek_parent (klass); + G_OBJECT_CLASS (klass)->finalize = calculation_finalize; +} + + +static void calculation_instance_init (Calculation * self) { + self->save_variable = TRUE; +} + + +static void calculation_finalize (GObject* obj) { + Calculation * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CALCULATION, Calculation); + _g_free0 (self->input); + _g_free0 (self->output); + _g_free0 (self->variable); + G_OBJECT_CLASS (calculation_parent_class)->finalize (obj); +} + + +GType calculation_get_type (void) { + static volatile gsize calculation_type_id__volatile = 0; + if (g_once_init_enter (&calculation_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (CalculationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) calculation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Calculation), 0, (GInstanceInitFunc) calculation_instance_init, NULL }; + GType calculation_type_id; + calculation_type_id = g_type_register_static (G_TYPE_OBJECT, "Calculation", &g_define_type_info, 0); + g_once_init_leave (&calculation_type_id__volatile, calculation_type_id); + } + return calculation_type_id__volatile; +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static void _g_object_unref0_ (gpointer var) { + (var == NULL) ? NULL : (var = (g_object_unref (var), NULL)); +} + + +CalculatorThread* calculator_thread_construct (GType object_type, GCancellable* cancel) { + CalculatorThread* self = NULL; + GCancellable* _tmp0_ = NULL; + GCancellable* _tmp1_ = NULL; + GeeArrayList* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + GeeArrayList* _tmp6_ = NULL; + GeeArrayList* _tmp7_ = NULL; + GAsyncQueue* _tmp8_ = NULL; + GAsyncQueue* _tmp9_ = NULL; + GAsyncQueue* _tmp10_ = NULL; + GAsyncQueue* _tmp11_ = NULL; + GError * _inner_error_ = NULL; + g_return_val_if_fail (cancel != NULL, NULL); + self = (CalculatorThread*) g_type_create_instance (object_type); + _tmp0_ = cancel; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->cancel); + self->priv->cancel = _tmp1_; + _tmp2_ = gee_array_list_new (TYPE_NASC_FUNCTION, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _tmp3_ = _tmp2_; + calculator_thread_set_functions (self, (GeeList*) _tmp3_); + _g_object_unref0 (_tmp3_); + _tmp4_ = gee_array_list_new (TYPE_NASC_FUNCTION, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _tmp5_ = _tmp4_; + calculator_thread_set_advanced_functions (self, (GeeList*) _tmp5_); + _g_object_unref0 (_tmp5_); + _tmp6_ = gee_array_list_new (TYPE_NASC_VARIABEL, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _tmp7_ = _tmp6_; + calculator_thread_set_variables (self, (GeeList*) _tmp7_); + _g_object_unref0 (_tmp7_); + _tmp8_ = g_async_queue_new_full (_g_object_unref0_); + _tmp9_ = _tmp8_; + calculator_thread_set_calculations (self, _tmp9_); + _g_async_queue_unref0 (_tmp9_); + _tmp10_ = g_async_queue_new_full (_g_object_unref0_); + _tmp11_ = _tmp10_; + calculator_thread_set_results (self, _tmp11_); + _g_async_queue_unref0 (_tmp11_); + { + GRegex* _tmp12_ = NULL; + GRegex* _tmp13_ = NULL; + GRegex* _tmp14_ = NULL; + GRegex* _tmp15_ = NULL; + GRegex* _tmp16_ = NULL; + GRegex* _tmp17_ = NULL; + _tmp13_ = g_regex_new ("\\d", G_REGEX_OPTIMIZE, 0, &_inner_error_); + _tmp12_ = _tmp13_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch1_g_regex_error; + } + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp14_ = _tmp12_; + _tmp12_ = NULL; + _g_regex_unref0 (self->priv->digit_regex); + self->priv->digit_regex = _tmp14_; + _tmp16_ = g_regex_new ("E(\\d|-)", G_REGEX_OPTIMIZE, 0, &_inner_error_); + _tmp15_ = _tmp16_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_regex_unref0 (_tmp12_); + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch1_g_regex_error; + } + _g_regex_unref0 (_tmp12_); + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp17_ = _tmp15_; + _tmp15_ = NULL; + _g_regex_unref0 (self->priv->pretty_regex); + self->priv->pretty_regex = _tmp17_; + _g_regex_unref0 (_tmp15_); + _g_regex_unref0 (_tmp12_); + } + goto __finally1; + __catch1_g_regex_error: + { + GError* ex = NULL; + ex = _inner_error_; + _inner_error_ = NULL; + _g_error_free0 (ex); + } + __finally1: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + return self; +} + + +CalculatorThread* calculator_thread_new (GCancellable* cancel) { + return calculator_thread_construct (TYPE_CALCULATOR_THREAD, cancel); +} + + +static void __lambda26_ (CalculatorThread* self) { + calculator_thread_abort (self); +} + + +static void ___lambda26__g_cancellable_cancelled (GCancellable* _sender, gpointer self) { + __lambda26_ ((CalculatorThread*) self); +} + + +void* calculator_thread_thread_func (CalculatorThread* self) { + void* result = NULL; + gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + GCancellable* _tmp4_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + new_calculator (); + _tmp0_ = get_exchange_rates_url (); + _tmp1_ = _tmp0_; + calculator_thread_set_currency_update_url (self, _tmp1_); + _g_free0 (_tmp1_); + _tmp2_ = get_exchange_rates_filename (); + _tmp3_ = _tmp2_; + calculator_thread_set_currency_update_filename (self, _tmp3_); + _g_free0 (_tmp3_); + calculator_thread_load_functions (self, NULL, NULL); + calculator_thread_load_variables (self, NULL, NULL); + _tmp4_ = self->priv->cancel; + g_signal_connect (_tmp4_, "cancelled", (GCallback) ___lambda26__g_cancellable_cancelled, self); + while (TRUE) { + Calculation* calc = NULL; + GAsyncQueue* _tmp5_ = NULL; + gpointer _tmp6_ = NULL; + Calculation* _tmp7_ = NULL; + gboolean _tmp8_ = FALSE; + _tmp5_ = self->priv->_calculations; + _tmp6_ = g_async_queue_pop (_tmp5_); + calc = (Calculation*) _tmp6_; + _tmp7_ = calc; + _tmp8_ = _tmp7_->save_variable; + if (_tmp8_) { + Calculation* _tmp9_ = NULL; + Calculation* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + Calculation* _tmp14_ = NULL; + const gchar* _tmp15_ = NULL; + gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + GAsyncQueue* _tmp19_ = NULL; + Calculation* _tmp20_ = NULL; + Calculation* _tmp21_ = NULL; + GSourceFunc _tmp22_ = NULL; + void* _tmp22__target = NULL; + GDestroyNotify _tmp22__target_destroy_notify = NULL; + _tmp9_ = calc; + _tmp10_ = calc; + _tmp11_ = _tmp10_->input; + _tmp12_ = calculator_thread_prepare_string (self, _tmp11_); + _tmp13_ = _tmp12_; + _tmp14_ = calc; + _tmp15_ = _tmp14_->variable; + _tmp16_ = Calculator_calculate_store_variable (_tmp13_, _tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = calculator_thread_post_string (self, _tmp17_); + _g_free0 (_tmp9_->output); + _tmp9_->output = _tmp18_; + _g_free0 (_tmp17_); + _g_free0 (_tmp13_); + _tmp19_ = self->priv->_results; + _tmp20_ = calc; + _tmp21_ = _g_object_ref0 (_tmp20_); + g_async_queue_push (_tmp19_, _tmp21_); + _tmp22_ = self->callback; + _tmp22__target = self->callback_target; + _tmp22__target_destroy_notify = self->callback_target_destroy_notify; + self->callback_target_destroy_notify = NULL; + g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, _tmp22_, _tmp22__target, _tmp22__target_destroy_notify); + } else { + Calculation* _tmp23_ = NULL; + Calculation* _tmp24_ = NULL; + const gchar* _tmp25_ = NULL; + gchar* _tmp26_ = NULL; + gchar* _tmp27_ = NULL; + gchar* _tmp28_ = NULL; + gchar* _tmp29_ = NULL; + gchar* _tmp30_ = NULL; + GAsyncQueue* _tmp31_ = NULL; + Calculation* _tmp32_ = NULL; + Calculation* _tmp33_ = NULL; + _tmp23_ = calc; + _tmp24_ = calc; + _tmp25_ = _tmp24_->input; + _tmp26_ = calculator_thread_prepare_string (self, _tmp25_); + _tmp27_ = _tmp26_; + _tmp28_ = Calculator_calculate (_tmp27_); + _tmp29_ = _tmp28_; + _tmp30_ = calculator_thread_post_string (self, _tmp29_); + _g_free0 (_tmp23_->output); + _tmp23_->output = _tmp30_; + _g_free0 (_tmp29_); + _g_free0 (_tmp27_); + _tmp31_ = self->priv->_results; + _tmp32_ = calc; + _tmp33_ = _g_object_ref0 (_tmp32_); + g_async_queue_push (_tmp31_, _tmp33_); + } + _g_object_unref0 (calc); + } + return result; +} + + +static void calculator_thread_abort (CalculatorThread* self) { + g_return_if_fail (self != NULL); + abort (); +} + + +static void calculator_thread_load_functions_data_free (gpointer _data) { + CalculatorThreadLoadFunctionsData* _data_; + _data_ = _data; + _calculator_thread_unref0 (_data_->self); + g_slice_free (CalculatorThreadLoadFunctionsData, _data_); +} + + +static gpointer _calculator_thread_ref0 (gpointer self) { + return self ? calculator_thread_ref (self) : NULL; +} + + +static void calculator_thread_load_functions (CalculatorThread* self, GAsyncReadyCallback _callback_, gpointer _user_data_) { + CalculatorThreadLoadFunctionsData* _data_; + CalculatorThread* _tmp0_ = NULL; + _data_ = g_slice_new0 (CalculatorThreadLoadFunctionsData); + _data_->_async_result = g_simple_async_result_new (NULL, _callback_, _user_data_, calculator_thread_load_functions); + g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, calculator_thread_load_functions_data_free); + _tmp0_ = _calculator_thread_ref0 (self); + _data_->self = _tmp0_; + calculator_thread_load_functions_co (_data_); +} + + +static void calculator_thread_load_functions_finish (CalculatorThread* self, GAsyncResult* _res_) { + CalculatorThreadLoadFunctionsData* _data_; + _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_)); +} + + +static gboolean string_contains (const gchar* self, const gchar* needle) { + gboolean result = FALSE; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (needle != NULL, FALSE); + _tmp0_ = needle; + _tmp1_ = strstr ((gchar*) self, (gchar*) _tmp0_); + result = _tmp1_ != NULL; + return result; +} + + +static gint __lambda24_ (CalculatorThread* self, NascFunction* a, NascFunction* b) { + gint result = 0; + NascFunction* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + NascFunction* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + gint _tmp4_ = 0; + g_return_val_if_fail (a != NULL, 0); + g_return_val_if_fail (b != NULL, 0); + _tmp0_ = a; + _tmp1_ = ((NascElement*) _tmp0_)->title; + _tmp2_ = b; + _tmp3_ = ((NascElement*) _tmp2_)->title; + _tmp4_ = g_utf8_collate (_tmp1_, _tmp3_); + result = _tmp4_; + return result; +} + + +static gint ___lambda24__gcompare_data_func (gconstpointer a, gconstpointer b, gpointer self) { + gint result; + result = __lambda24_ ((CalculatorThread*) self, (NascFunction*) a, (NascFunction*) b); + return result; +} + + +static gboolean calculator_thread_load_functions_co (CalculatorThreadLoadFunctionsData* _data_) { + switch (_data_->_state_) { + case 0: + goto _state_0; + default: + g_assert_not_reached (); + } + _state_0: + { + _data_->i = 0; + { + _data_->_tmp0_ = TRUE; + while (TRUE) { + if (!_data_->_tmp0_) { + _data_->_tmp1_ = 0; + _data_->_tmp1_ = _data_->i; + _data_->i = _data_->_tmp1_ + 1; + } + _data_->_tmp0_ = FALSE; + _data_->_tmp2_ = 0; + _data_->_tmp2_ = _data_->i; + _data_->_tmp3_ = 0; + _data_->_tmp3_ = get_function_size (); + if (!(_data_->_tmp2_ < _data_->_tmp3_)) { + break; + } + _data_->_tmp4_ = 0; + _data_->_tmp4_ = _data_->i; + _data_->_tmp5_ = NULL; + _data_->_tmp5_ = get_function_category (_data_->_tmp4_); + _data_->category = _data_->_tmp5_; + _data_->_tmp6_ = NULL; + _data_->_tmp6_ = _data_->category; + if (g_strcmp0 (_data_->_tmp6_, "") == 0) { + _g_free0 (_data_->category); + continue; + } + _data_->_tmp20_ = NULL; + _data_->_tmp20_ = _data_->category; + if (g_strcmp0 (_data_->_tmp20_, "Utilities") == 0) { + _data_->_tmp19_ = TRUE; + } else { + _data_->_tmp21_ = NULL; + _data_->_tmp21_ = _data_->category; + _data_->_tmp19_ = g_strcmp0 (_data_->_tmp21_, "Trigonometry") == 0; + } + if (_data_->_tmp19_) { + _data_->_tmp18_ = TRUE; + } else { + _data_->_tmp22_ = NULL; + _data_->_tmp22_ = _data_->category; + _data_->_tmp18_ = g_strcmp0 (_data_->_tmp22_, "Step Functions") == 0; + } + if (_data_->_tmp18_) { + _data_->_tmp17_ = TRUE; + } else { + _data_->_tmp23_ = NULL; + _data_->_tmp23_ = _data_->category; + _data_->_tmp24_ = FALSE; + _data_->_tmp24_ = string_contains (_data_->_tmp23_, "Statistics/"); + _data_->_tmp17_ = _data_->_tmp24_; + } + if (_data_->_tmp17_) { + _data_->_tmp16_ = TRUE; + } else { + _data_->_tmp25_ = NULL; + _data_->_tmp25_ = _data_->category; + _data_->_tmp26_ = FALSE; + _data_->_tmp26_ = string_contains (_data_->_tmp25_, "Economics/"); + _data_->_tmp16_ = _data_->_tmp26_; + } + if (_data_->_tmp16_) { + _data_->_tmp15_ = TRUE; + } else { + _data_->_tmp27_ = NULL; + _data_->_tmp27_ = _data_->category; + _data_->_tmp28_ = FALSE; + _data_->_tmp28_ = string_contains (_data_->_tmp27_, "Geometry/"); + _data_->_tmp15_ = _data_->_tmp28_; + } + if (_data_->_tmp15_) { + _data_->_tmp14_ = TRUE; + } else { + _data_->_tmp29_ = NULL; + _data_->_tmp29_ = _data_->category; + _data_->_tmp14_ = g_strcmp0 (_data_->_tmp29_, "Combinatorics") == 0; + } + if (_data_->_tmp14_) { + _data_->_tmp13_ = TRUE; + } else { + _data_->_tmp30_ = NULL; + _data_->_tmp30_ = _data_->category; + _data_->_tmp13_ = g_strcmp0 (_data_->_tmp30_, "Logical") == 0; + } + if (_data_->_tmp13_) { + _data_->_tmp12_ = TRUE; + } else { + _data_->_tmp31_ = NULL; + _data_->_tmp31_ = _data_->category; + _data_->_tmp12_ = g_strcmp0 (_data_->_tmp31_, "Date & Time") == 0; + } + if (_data_->_tmp12_) { + _data_->_tmp11_ = TRUE; + } else { + _data_->_tmp32_ = NULL; + _data_->_tmp32_ = _data_->category; + _data_->_tmp11_ = g_strcmp0 (_data_->_tmp32_, "Miscellaneous") == 0; + } + if (_data_->_tmp11_) { + _data_->_tmp10_ = TRUE; + } else { + _data_->_tmp33_ = NULL; + _data_->_tmp33_ = _data_->category; + _data_->_tmp10_ = g_strcmp0 (_data_->_tmp33_, "Number Theory/Arithmetics") == 0; + } + if (_data_->_tmp10_) { + _data_->_tmp9_ = TRUE; + } else { + _data_->_tmp34_ = NULL; + _data_->_tmp34_ = _data_->category; + _data_->_tmp9_ = g_strcmp0 (_data_->_tmp34_, "Number Theory/Integers") == 0; + } + if (_data_->_tmp9_) { + _data_->_tmp8_ = TRUE; + } else { + _data_->_tmp35_ = NULL; + _data_->_tmp35_ = _data_->category; + _data_->_tmp8_ = g_strcmp0 (_data_->_tmp35_, "Number Theory/Number Bases") == 0; + } + if (_data_->_tmp8_) { + _data_->_tmp7_ = TRUE; + } else { + _data_->_tmp36_ = NULL; + _data_->_tmp36_ = _data_->category; + _data_->_tmp7_ = g_strcmp0 (_data_->_tmp36_, "Number Theory/Polynomials") == 0; + } + if (_data_->_tmp7_) { + _data_->_tmp37_ = NULL; + _data_->_tmp37_ = _data_->self->priv->_advanced_functions; + _data_->_tmp38_ = 0; + _data_->_tmp38_ = _data_->i; + _data_->_tmp39_ = NULL; + _data_->_tmp39_ = _data_->category; + _data_->_tmp40_ = NULL; + _data_->_tmp40_ = nasc_function_new (_data_->_tmp38_, _data_->_tmp39_); + _data_->_tmp41_ = NULL; + _data_->_tmp41_ = _data_->_tmp40_; + gee_collection_add ((GeeCollection*) _data_->_tmp37_, _data_->_tmp41_); + _g_object_unref0 (_data_->_tmp41_); + _g_free0 (_data_->category); + continue; + } else { + _data_->_tmp42_ = NULL; + _data_->_tmp42_ = _data_->category; + if (g_strcmp0 (_data_->_tmp42_, "Exponents & Logarithms") == 0) { + _data_->_tmp43_ = 0; + _data_->_tmp43_ = _data_->i; + _data_->_tmp44_ = NULL; + _data_->_tmp44_ = get_function_name (_data_->_tmp43_); + _data_->func_name = _data_->_tmp44_; + _data_->_tmp50_ = NULL; + _data_->_tmp50_ = _data_->func_name; + if (g_strcmp0 (_data_->_tmp50_, "lambertw") == 0) { + _data_->_tmp49_ = TRUE; + } else { + _data_->_tmp51_ = NULL; + _data_->_tmp51_ = _data_->func_name; + _data_->_tmp49_ = g_strcmp0 (_data_->_tmp51_, "cis") == 0; + } + if (_data_->_tmp49_) { + _data_->_tmp48_ = TRUE; + } else { + _data_->_tmp52_ = NULL; + _data_->_tmp52_ = _data_->func_name; + _data_->_tmp48_ = g_strcmp0 (_data_->_tmp52_, "sqrtpi") == 0; + } + if (_data_->_tmp48_) { + _data_->_tmp47_ = TRUE; + } else { + _data_->_tmp53_ = NULL; + _data_->_tmp53_ = _data_->func_name; + _data_->_tmp47_ = g_strcmp0 (_data_->_tmp53_, "pow") == 0; + } + if (_data_->_tmp47_) { + _data_->_tmp46_ = TRUE; + } else { + _data_->_tmp54_ = NULL; + _data_->_tmp54_ = _data_->func_name; + _data_->_tmp46_ = g_strcmp0 (_data_->_tmp54_, "exp10") == 0; + } + if (_data_->_tmp46_) { + _data_->_tmp45_ = TRUE; + } else { + _data_->_tmp55_ = NULL; + _data_->_tmp55_ = _data_->func_name; + _data_->_tmp45_ = g_strcmp0 (_data_->_tmp55_, "exp2") == 0; + } + if (_data_->_tmp45_) { + _data_->_tmp56_ = NULL; + _data_->_tmp56_ = _data_->self->priv->_advanced_functions; + _data_->_tmp57_ = 0; + _data_->_tmp57_ = _data_->i; + _data_->_tmp58_ = NULL; + _data_->_tmp58_ = _data_->category; + _data_->_tmp59_ = NULL; + _data_->_tmp59_ = nasc_function_new (_data_->_tmp57_, _data_->_tmp58_); + _data_->_tmp60_ = NULL; + _data_->_tmp60_ = _data_->_tmp59_; + gee_collection_add ((GeeCollection*) _data_->_tmp56_, _data_->_tmp60_); + _g_object_unref0 (_data_->_tmp60_); + _g_free0 (_data_->func_name); + _g_free0 (_data_->category); + continue; + } + _g_free0 (_data_->func_name); + } else { + _data_->_tmp61_ = NULL; + _data_->_tmp61_ = _data_->category; + if (g_strcmp0 (_data_->_tmp61_, "Matrices & Vectors") == 0) { + _data_->_tmp62_ = 0; + _data_->_tmp62_ = _data_->i; + _data_->_tmp63_ = NULL; + _data_->_tmp63_ = get_function_name (_data_->_tmp62_); + _data_->_vala1_func_name = _data_->_tmp63_; + _data_->_tmp69_ = NULL; + _data_->_tmp69_ = _data_->_vala1_func_name; + if (g_strcmp0 (_data_->_tmp69_, "export") == 0) { + _data_->_tmp68_ = TRUE; + } else { + _data_->_tmp70_ = NULL; + _data_->_tmp70_ = _data_->_vala1_func_name; + _data_->_tmp68_ = g_strcmp0 (_data_->_tmp70_, "genvector") == 0; + } + if (_data_->_tmp68_) { + _data_->_tmp67_ = TRUE; + } else { + _data_->_tmp71_ = NULL; + _data_->_tmp71_ = _data_->_vala1_func_name; + _data_->_tmp67_ = g_strcmp0 (_data_->_tmp71_, "load") == 0; + } + if (_data_->_tmp67_) { + _data_->_tmp66_ = TRUE; + } else { + _data_->_tmp72_ = NULL; + _data_->_tmp72_ = _data_->_vala1_func_name; + _data_->_tmp66_ = g_strcmp0 (_data_->_tmp72_, "permanent") == 0; + } + if (_data_->_tmp66_) { + _data_->_tmp65_ = TRUE; + } else { + _data_->_tmp73_ = NULL; + _data_->_tmp73_ = _data_->_vala1_func_name; + _data_->_tmp65_ = g_strcmp0 (_data_->_tmp73_, "area") == 0; + } + if (_data_->_tmp65_) { + _data_->_tmp64_ = TRUE; + } else { + _data_->_tmp74_ = NULL; + _data_->_tmp74_ = _data_->_vala1_func_name; + _data_->_tmp64_ = g_strcmp0 (_data_->_tmp74_, "matrix2vector") == 0; + } + if (_data_->_tmp64_) { + _data_->_tmp75_ = NULL; + _data_->_tmp75_ = _data_->self->priv->_advanced_functions; + _data_->_tmp76_ = 0; + _data_->_tmp76_ = _data_->i; + _data_->_tmp77_ = NULL; + _data_->_tmp77_ = _data_->category; + _data_->_tmp78_ = NULL; + _data_->_tmp78_ = nasc_function_new (_data_->_tmp76_, _data_->_tmp77_); + _data_->_tmp79_ = NULL; + _data_->_tmp79_ = _data_->_tmp78_; + gee_collection_add ((GeeCollection*) _data_->_tmp75_, _data_->_tmp79_); + _g_object_unref0 (_data_->_tmp79_); + _g_free0 (_data_->_vala1_func_name); + _g_free0 (_data_->category); + continue; + } + _g_free0 (_data_->_vala1_func_name); + } + } + } + _data_->_tmp80_ = NULL; + _data_->_tmp80_ = _data_->self->priv->_functions; + _data_->_tmp81_ = 0; + _data_->_tmp81_ = _data_->i; + _data_->_tmp82_ = NULL; + _data_->_tmp82_ = _data_->category; + _data_->_tmp83_ = NULL; + _data_->_tmp83_ = nasc_function_new (_data_->_tmp81_, _data_->_tmp82_); + _data_->_tmp84_ = NULL; + _data_->_tmp84_ = _data_->_tmp83_; + gee_collection_add ((GeeCollection*) _data_->_tmp80_, _data_->_tmp84_); + _g_object_unref0 (_data_->_tmp84_); + _g_free0 (_data_->category); + } + } + } + _data_->_tmp85_ = NULL; + _data_->_tmp85_ = _data_->self->priv->_functions; + gee_list_sort (_data_->_tmp85_, ___lambda24__gcompare_data_func, calculator_thread_ref (_data_->self), calculator_thread_unref); + if (_data_->_state_ == 0) { + g_simple_async_result_complete_in_idle (_data_->_async_result); + } else { + g_simple_async_result_complete (_data_->_async_result); + } + g_object_unref (_data_->_async_result); + return FALSE; +} + + +static void calculator_thread_load_variables_data_free (gpointer _data) { + CalculatorThreadLoadVariablesData* _data_; + _data_ = _data; + _calculator_thread_unref0 (_data_->self); + g_slice_free (CalculatorThreadLoadVariablesData, _data_); +} + + +static void calculator_thread_load_variables (CalculatorThread* self, GAsyncReadyCallback _callback_, gpointer _user_data_) { + CalculatorThreadLoadVariablesData* _data_; + CalculatorThread* _tmp0_ = NULL; + _data_ = g_slice_new0 (CalculatorThreadLoadVariablesData); + _data_->_async_result = g_simple_async_result_new (NULL, _callback_, _user_data_, calculator_thread_load_variables); + g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, calculator_thread_load_variables_data_free); + _tmp0_ = _calculator_thread_ref0 (self); + _data_->self = _tmp0_; + calculator_thread_load_variables_co (_data_); +} + + +static void calculator_thread_load_variables_finish (CalculatorThread* self, GAsyncResult* _res_) { + CalculatorThreadLoadVariablesData* _data_; + _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_)); +} + + +static gint __lambda25_ (CalculatorThread* self, NascVariabel* a, NascVariabel* b) { + gint result = 0; + NascVariabel* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + NascVariabel* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + gint _tmp4_ = 0; + g_return_val_if_fail (a != NULL, 0); + g_return_val_if_fail (b != NULL, 0); + _tmp0_ = a; + _tmp1_ = ((NascElement*) _tmp0_)->title; + _tmp2_ = b; + _tmp3_ = ((NascElement*) _tmp2_)->title; + _tmp4_ = g_utf8_collate (_tmp1_, _tmp3_); + result = _tmp4_; + return result; +} + + +static gint ___lambda25__gcompare_data_func (gconstpointer a, gconstpointer b, gpointer self) { + gint result; + result = __lambda25_ ((CalculatorThread*) self, (NascVariabel*) a, (NascVariabel*) b); + return result; +} + + +static gboolean calculator_thread_load_variables_co (CalculatorThreadLoadVariablesData* _data_) { + switch (_data_->_state_) { + case 0: + goto _state_0; + default: + g_assert_not_reached (); + } + _state_0: + { + _data_->i = 0; + { + _data_->_tmp0_ = TRUE; + while (TRUE) { + if (!_data_->_tmp0_) { + _data_->_tmp1_ = 0; + _data_->_tmp1_ = _data_->i; + _data_->i = _data_->_tmp1_ + 1; + } + _data_->_tmp0_ = FALSE; + _data_->_tmp2_ = 0; + _data_->_tmp2_ = _data_->i; + _data_->_tmp3_ = 0; + _data_->_tmp3_ = get_variable_size (); + if (!(_data_->_tmp2_ < _data_->_tmp3_)) { + break; + } + _data_->_tmp4_ = 0; + _data_->_tmp4_ = _data_->i; + _data_->_tmp5_ = NULL; + _data_->_tmp5_ = get_variable_category (_data_->_tmp4_); + _data_->category = _data_->_tmp5_; + _data_->_tmp10_ = NULL; + _data_->_tmp10_ = _data_->category; + if (g_strcmp0 (_data_->_tmp10_, "") == 0) { + _data_->_tmp9_ = TRUE; + } else { + _data_->_tmp11_ = NULL; + _data_->_tmp11_ = _data_->category; + _data_->_tmp9_ = g_strcmp0 (_data_->_tmp11_, "Temporary") == 0; + } + if (_data_->_tmp9_) { + _data_->_tmp8_ = TRUE; + } else { + _data_->_tmp12_ = NULL; + _data_->_tmp12_ = _data_->category; + _data_->_tmp8_ = g_strcmp0 (_data_->_tmp12_, "Unknowns") == 0; + } + if (_data_->_tmp8_) { + _data_->_tmp7_ = TRUE; + } else { + _data_->_tmp13_ = NULL; + _data_->_tmp13_ = _data_->category; + _data_->_tmp7_ = g_strcmp0 (_data_->_tmp13_, "Large Numbers") == 0; + } + if (_data_->_tmp7_) { + _data_->_tmp6_ = TRUE; + } else { + _data_->_tmp14_ = NULL; + _data_->_tmp14_ = _data_->category; + _data_->_tmp6_ = g_strcmp0 (_data_->_tmp14_, "Small Numbers") == 0; + } + if (_data_->_tmp6_) { + _g_free0 (_data_->category); + continue; + } + _data_->_tmp15_ = NULL; + _data_->_tmp15_ = _data_->self->priv->_variables; + _data_->_tmp16_ = 0; + _data_->_tmp16_ = _data_->i; + _data_->_tmp17_ = NULL; + _data_->_tmp17_ = _data_->category; + _data_->_tmp18_ = NULL; + _data_->_tmp18_ = nasc_variabel_new (_data_->_tmp16_, _data_->_tmp17_); + _data_->_tmp19_ = NULL; + _data_->_tmp19_ = _data_->_tmp18_; + gee_collection_add ((GeeCollection*) _data_->_tmp15_, _data_->_tmp19_); + _g_object_unref0 (_data_->_tmp19_); + _g_free0 (_data_->category); + } + } + } + _data_->_tmp20_ = NULL; + _data_->_tmp20_ = _data_->self->priv->_variables; + gee_list_sort (_data_->_tmp20_, ___lambda25__gcompare_data_func, calculator_thread_ref (_data_->self), calculator_thread_unref); + if (_data_->_state_ == 0) { + g_simple_async_result_complete_in_idle (_data_->_async_result); + } else { + g_simple_async_result_complete (_data_->_async_result); + } + g_object_unref (_data_->_async_result); + return FALSE; +} + + +static gchar* string_chomp (const gchar* self) { + gchar* result = NULL; + gchar* _result_ = NULL; + gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = g_strdup (self); + _result_ = _tmp0_; + _tmp1_ = _result_; + g_strchomp (_tmp1_); + result = _result_; + return result; +} + + +static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) { + gchar* result = NULL; + GError * _inner_error_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (old != NULL, NULL); + g_return_val_if_fail (replacement != NULL, NULL); + { + GRegex* regex = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + GRegex* _tmp3_ = NULL; + GRegex* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + GRegex* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + _tmp0_ = old; + _tmp1_ = g_regex_escape_string (_tmp0_, -1); + _tmp2_ = _tmp1_; + _tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_); + _tmp4_ = _tmp3_; + _g_free0 (_tmp2_); + regex = _tmp4_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch2_g_regex_error; + } + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp6_ = regex; + _tmp7_ = replacement; + _tmp8_ = g_regex_replace_literal (_tmp6_, self, (gssize) -1, 0, _tmp7_, 0, &_inner_error_); + _tmp5_ = _tmp8_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_regex_unref0 (regex); + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch2_g_regex_error; + } + _g_regex_unref0 (regex); + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp9_ = _tmp5_; + _tmp5_ = NULL; + result = _tmp9_; + _g_free0 (_tmp5_); + _g_regex_unref0 (regex); + return result; + } + goto __finally2; + __catch2_g_regex_error: + { + GError* e = NULL; + e = _inner_error_; + _inner_error_ = NULL; + g_assert_not_reached (); + _g_error_free0 (e); + } + __finally2: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } +} + + +static gchar* calculator_thread_prepare_string (CalculatorThread* self, const gchar* input) { + gchar* result = NULL; + gchar* return_str = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar** split = NULL; + const gchar* _tmp2_ = NULL; + gchar** _tmp3_ = NULL; + gchar** _tmp4_ = NULL; + gint split_length1 = 0; + gint _split_size_ = 0; + gboolean _tmp5_ = FALSE; + gchar** _tmp6_ = NULL; + gint _tmp6__length1 = 0; + const gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gchar* _tmp20_ = NULL; + gchar* _tmp21_ = NULL; + gchar* _tmp22_ = NULL; + gchar* _tmp23_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (input != NULL, NULL); + _tmp0_ = input; + _tmp1_ = g_strdup (_tmp0_); + return_str = _tmp1_; + _tmp2_ = return_str; + _tmp4_ = _tmp3_ = g_strsplit (_tmp2_, "=", 0); + split = _tmp4_; + split_length1 = _vala_array_length (_tmp3_); + _split_size_ = split_length1; + _tmp6_ = split; + _tmp6__length1 = split_length1; + if (_tmp6__length1 == 2) { + gchar** _tmp7_ = NULL; + gint _tmp7__length1 = 0; + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + gchar** _tmp11_ = NULL; + gchar** _tmp12_ = NULL; + gchar** _tmp13_ = NULL; + gint _tmp13__length1 = 0; + _tmp7_ = split; + _tmp7__length1 = split_length1; + _tmp8_ = _tmp7_[0]; + _tmp9_ = string_chomp (_tmp8_); + _tmp10_ = _tmp9_; + _tmp12_ = _tmp11_ = g_strsplit (_tmp10_, " ", 0); + _tmp13_ = _tmp12_; + _tmp13__length1 = _vala_array_length (_tmp11_); + _tmp5_ = _vala_array_length (_tmp11_) == 1; + _tmp13_ = (_vala_array_free (_tmp13_, _tmp13__length1, (GDestroyNotify) g_free), NULL); + _g_free0 (_tmp10_); + } else { + _tmp5_ = FALSE; + } + if (_tmp5_) { + const gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + _tmp14_ = return_str; + _tmp15_ = string_replace (_tmp14_, "=", ":="); + _g_free0 (return_str); + return_str = _tmp15_; + } + _tmp16_ = return_str; + _tmp17_ = string_replace (_tmp16_, "$", "USD"); + _tmp18_ = _tmp17_; + _tmp19_ = string_replace (_tmp18_, "€", "EUR"); + _tmp20_ = _tmp19_; + _tmp21_ = string_replace (_tmp20_, "£", "GBP"); + _tmp22_ = _tmp21_; + _tmp23_ = string_replace (_tmp22_, "¥", "JPY"); + _g_free0 (return_str); + return_str = _tmp23_; + _g_free0 (_tmp22_); + _g_free0 (_tmp20_); + _g_free0 (_tmp18_); + result = return_str; + split = (_vala_array_free (split, split_length1, (GDestroyNotify) g_free), NULL); + return result; +} + + +static gchar* calculator_thread_post_string (CalculatorThread* self, const gchar* _result_) { + gchar* result = NULL; + gchar* return_str = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + const gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (_result_ != NULL, NULL); + _tmp0_ = _result_; + _tmp1_ = g_strdup (_tmp0_); + return_str = _tmp1_; + _tmp2_ = return_str; + _tmp3_ = string_replace (_tmp2_, "USD", "$"); + _tmp4_ = _tmp3_; + _tmp5_ = string_replace (_tmp4_, "EUR", "€"); + _tmp6_ = _tmp5_; + _tmp7_ = string_replace (_tmp6_, "GBP", "£"); + _tmp8_ = _tmp7_; + _tmp9_ = string_replace (_tmp8_, "JPY", "¥"); + _g_free0 (return_str); + return_str = _tmp9_; + _g_free0 (_tmp8_); + _g_free0 (_tmp6_); + _g_free0 (_tmp4_); + _tmp10_ = return_str; + _tmp11_ = string_replace (_tmp10_, " °", "°"); + _g_free0 (return_str); + return_str = _tmp11_; + _tmp12_ = return_str; + _tmp13_ = calculator_thread_pretty_print (self, _tmp12_); + _g_free0 (return_str); + return_str = _tmp13_; + result = return_str; + return result; +} + + +static glong string_strnlen (gchar* str, glong maxlen) { + glong result = 0L; + gchar* end = NULL; + gchar* _tmp0_ = NULL; + glong _tmp1_ = 0L; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + _tmp0_ = str; + _tmp1_ = maxlen; + _tmp2_ = memchr (_tmp0_, 0, (gsize) _tmp1_); + end = _tmp2_; + _tmp3_ = end; + if (_tmp3_ == NULL) { + glong _tmp4_ = 0L; + _tmp4_ = maxlen; + result = _tmp4_; + return result; + } else { + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + _tmp5_ = end; + _tmp6_ = str; + result = (glong) (_tmp5_ - _tmp6_); + return result; + } +} + + +static gchar* string_substring (const gchar* self, glong offset, glong len) { + gchar* result = NULL; + glong string_length = 0L; + gboolean _tmp0_ = FALSE; + glong _tmp1_ = 0L; + glong _tmp8_ = 0L; + glong _tmp14_ = 0L; + glong _tmp17_ = 0L; + glong _tmp18_ = 0L; + glong _tmp19_ = 0L; + glong _tmp20_ = 0L; + glong _tmp21_ = 0L; + gchar* _tmp22_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp1_ = offset; + if (_tmp1_ >= ((glong) 0)) { + glong _tmp2_ = 0L; + _tmp2_ = len; + _tmp0_ = _tmp2_ >= ((glong) 0); + } else { + _tmp0_ = FALSE; + } + if (_tmp0_) { + glong _tmp3_ = 0L; + glong _tmp4_ = 0L; + glong _tmp5_ = 0L; + _tmp3_ = offset; + _tmp4_ = len; + _tmp5_ = string_strnlen ((gchar*) self, _tmp3_ + _tmp4_); + string_length = _tmp5_; + } else { + gint _tmp6_ = 0; + gint _tmp7_ = 0; + _tmp6_ = strlen (self); + _tmp7_ = _tmp6_; + string_length = (glong) _tmp7_; + } + _tmp8_ = offset; + if (_tmp8_ < ((glong) 0)) { + glong _tmp9_ = 0L; + glong _tmp10_ = 0L; + glong _tmp11_ = 0L; + _tmp9_ = string_length; + _tmp10_ = offset; + offset = _tmp9_ + _tmp10_; + _tmp11_ = offset; + g_return_val_if_fail (_tmp11_ >= ((glong) 0), NULL); + } else { + glong _tmp12_ = 0L; + glong _tmp13_ = 0L; + _tmp12_ = offset; + _tmp13_ = string_length; + g_return_val_if_fail (_tmp12_ <= _tmp13_, NULL); + } + _tmp14_ = len; + if (_tmp14_ < ((glong) 0)) { + glong _tmp15_ = 0L; + glong _tmp16_ = 0L; + _tmp15_ = string_length; + _tmp16_ = offset; + len = _tmp15_ - _tmp16_; + } + _tmp17_ = offset; + _tmp18_ = len; + _tmp19_ = string_length; + g_return_val_if_fail ((_tmp17_ + _tmp18_) <= _tmp19_, NULL); + _tmp20_ = offset; + _tmp21_ = len; + _tmp22_ = g_strndup (((gchar*) self) + _tmp20_, (gsize) _tmp21_); + result = _tmp22_; + return result; +} + + +static gint string_last_index_of (const gchar* self, const gchar* needle, gint start_index) { + gint result = 0; + gchar* _result_ = NULL; + gint _tmp0_ = 0; + const gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + g_return_val_if_fail (self != NULL, 0); + g_return_val_if_fail (needle != NULL, 0); + _tmp0_ = start_index; + _tmp1_ = needle; + _tmp2_ = g_strrstr (((gchar*) self) + _tmp0_, (gchar*) _tmp1_); + _result_ = _tmp2_; + _tmp3_ = _result_; + if (_tmp3_ != NULL) { + gchar* _tmp4_ = NULL; + _tmp4_ = _result_; + result = (gint) (_tmp4_ - ((gchar*) self)); + return result; + } else { + result = -1; + return result; + } +} + + +static gboolean string_get_next_char (const gchar* self, gint* index, gunichar* c) { + gunichar _vala_c = 0U; + gboolean result = FALSE; + gint _tmp0_ = 0; + gunichar _tmp1_ = 0U; + gunichar _tmp2_ = 0U; + g_return_val_if_fail (self != NULL, FALSE); + _tmp0_ = *index; + _tmp1_ = g_utf8_get_char (((gchar*) self) + _tmp0_); + _vala_c = _tmp1_; + _tmp2_ = _vala_c; + if (_tmp2_ != ((gunichar) 0)) { + gint _tmp3_ = 0; + gchar* _tmp4_ = NULL; + _tmp3_ = *index; + _tmp4_ = g_utf8_next_char (((gchar*) self) + _tmp3_); + *index = (gint) (_tmp4_ - ((gchar*) self)); + result = TRUE; + if (c) { + *c = _vala_c; + } + return result; + } else { + result = FALSE; + if (c) { + *c = _vala_c; + } + return result; + } + if (c) { + *c = _vala_c; + } +} + + +static gchar* g_unichar_to_string (gunichar self) { + gchar* result = NULL; + gchar* str = NULL; + gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + _tmp0_ = g_new0 (gchar, 7); + str = (gchar*) _tmp0_; + _tmp1_ = str; + g_unichar_to_utf8 (self, _tmp1_); + result = str; + return result; +} + + +static gchar* calculator_thread_pretty_print (CalculatorThread* self, const gchar* _result_) { + gchar* result = NULL; + gchar* pretty_result = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; + GRegex* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + gboolean _tmp5_ = FALSE; + gboolean minus = FALSE; + gint index = 0; + const gchar* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + gint _tmp12_ = 0; + gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + gboolean _tmp15_ = FALSE; + GString* sb = NULL; + GString* _tmp16_ = NULL; + gunichar c = 0U; + gboolean ex_end = FALSE; + gboolean active = FALSE; + gchar* exponent = NULL; + GString* _tmp59_ = NULL; + const gchar* _tmp60_ = NULL; + gchar* _tmp61_ = NULL; + gboolean _tmp62_ = FALSE; + const gchar* _tmp65_ = NULL; + const gchar* _tmp66_ = NULL; + gint _tmp67_ = 0; + gchar* _tmp68_ = NULL; + gchar* _tmp69_ = NULL; + gchar* _tmp70_ = NULL; + gchar* _tmp71_ = NULL; + const gchar* _tmp72_ = NULL; + gchar* _tmp73_ = NULL; + gchar* _tmp74_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (_result_ != NULL, NULL); + _tmp0_ = _result_; + _tmp1_ = g_strdup (_tmp0_); + pretty_result = _tmp1_; + _tmp3_ = self->priv->pretty_regex; + _tmp4_ = pretty_result; + _tmp5_ = g_regex_match (_tmp3_, _tmp4_, 0, NULL); + if (!_tmp5_) { + _tmp2_ = TRUE; + } else { + const gchar* _tmp6_ = NULL; + gboolean _tmp7_ = FALSE; + _tmp6_ = _result_; + _tmp7_ = g_str_has_prefix (_tmp6_, "["); + _tmp2_ = _tmp7_; + } + if (_tmp2_) { + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + _tmp8_ = pretty_result; + _tmp9_ = calculator_thread_pretty_print2 (self, _tmp8_); + result = _tmp9_; + _g_free0 (pretty_result); + return result; + } + minus = FALSE; + index = 1; + _tmp10_ = pretty_result; + _tmp11_ = pretty_result; + _tmp12_ = string_last_index_of (_tmp11_, "E", 0); + _tmp13_ = string_substring (_tmp10_, (glong) (_tmp12_ + 1), (glong) 1); + _tmp14_ = _tmp13_; + _tmp15_ = g_strcmp0 (_tmp14_, "-") == 0; + _g_free0 (_tmp14_); + if (_tmp15_) { + minus = TRUE; + index = 2; + } + _tmp16_ = g_string_new (""); + sb = _tmp16_; + ex_end = FALSE; + active = FALSE; + { + gint i = 0; + i = 0; + { + gboolean _tmp17_ = FALSE; + _tmp17_ = TRUE; + while (TRUE) { + const gchar* _tmp18_ = NULL; + const gchar* _tmp19_ = NULL; + gint _tmp20_ = 0; + gint _tmp21_ = 0; + gchar* _tmp22_ = NULL; + gchar* _tmp23_ = NULL; + gunichar _tmp24_ = 0U; + gboolean _tmp25_ = FALSE; + gboolean _tmp26_ = FALSE; + gboolean _tmp27_ = FALSE; + gboolean _tmp28_ = FALSE; + if (!_tmp17_) { + } + _tmp17_ = FALSE; + _tmp18_ = _result_; + _tmp19_ = pretty_result; + _tmp20_ = string_last_index_of (_tmp19_, "E", 0); + _tmp21_ = index; + _tmp22_ = string_substring (_tmp18_, (glong) (_tmp20_ + _tmp21_), (glong) -1); + _tmp23_ = _tmp22_; + _tmp25_ = string_get_next_char (_tmp23_, &i, &_tmp24_); + c = _tmp24_; + _tmp26_ = !_tmp25_; + _g_free0 (_tmp23_); + if (_tmp26_) { + break; + } + _tmp28_ = ex_end; + if (_tmp28_) { + _tmp27_ = TRUE; + } else { + GRegex* _tmp29_ = NULL; + gunichar _tmp30_ = 0U; + gchar* _tmp31_ = NULL; + gchar* _tmp32_ = NULL; + gboolean _tmp33_ = FALSE; + _tmp29_ = self->priv->digit_regex; + _tmp30_ = c; + _tmp31_ = g_unichar_to_string (_tmp30_); + _tmp32_ = _tmp31_; + _tmp33_ = g_regex_match (_tmp29_, _tmp32_, 0, NULL); + _tmp27_ = !_tmp33_; + _g_free0 (_tmp32_); + } + if (_tmp27_) { + gunichar _tmp34_ = 0U; + gchar* _tmp35_ = NULL; + gchar* _tmp36_ = NULL; + gboolean _tmp37_ = FALSE; + gboolean _tmp38_ = FALSE; + GString* _tmp51_ = NULL; + gunichar _tmp52_ = 0U; + _tmp34_ = c; + _tmp35_ = g_unichar_to_string (_tmp34_); + _tmp36_ = _tmp35_; + _tmp37_ = g_strcmp0 (_tmp36_, "^") == 0; + _g_free0 (_tmp36_); + if (_tmp37_) { + active = TRUE; + continue; + } + _tmp38_ = active; + if (_tmp38_) { + GRegex* _tmp39_ = NULL; + gunichar _tmp40_ = 0U; + gchar* _tmp41_ = NULL; + gchar* _tmp42_ = NULL; + gboolean _tmp43_ = FALSE; + gboolean _tmp44_ = FALSE; + _tmp39_ = self->priv->digit_regex; + _tmp40_ = c; + _tmp41_ = g_unichar_to_string (_tmp40_); + _tmp42_ = _tmp41_; + _tmp43_ = g_regex_match (_tmp39_, _tmp42_, 0, NULL); + _tmp44_ = _tmp43_; + _g_free0 (_tmp42_); + if (_tmp44_) { + GString* _tmp45_ = NULL; + gunichar _tmp46_ = 0U; + gchar* _tmp47_ = NULL; + gchar* _tmp48_ = NULL; + gint _tmp49_ = 0; + gunichar _tmp50_ = 0U; + _tmp45_ = sb; + _tmp46_ = c; + _tmp47_ = g_unichar_to_string (_tmp46_); + _tmp48_ = _tmp47_; + _tmp49_ = atoi (_tmp48_); + _tmp50_ = CALCULATOR_THREAD_superscript_digits[_tmp49_]; + g_string_append_unichar (_tmp45_, _tmp50_); + _g_free0 (_tmp48_); + continue; + } else { + active = FALSE; + } + } + _tmp51_ = sb; + _tmp52_ = c; + g_string_append_unichar (_tmp51_, _tmp52_); + ex_end = TRUE; + } else { + GString* _tmp53_ = NULL; + gunichar _tmp54_ = 0U; + gchar* _tmp55_ = NULL; + gchar* _tmp56_ = NULL; + gint _tmp57_ = 0; + gunichar _tmp58_ = 0U; + _tmp53_ = sb; + _tmp54_ = c; + _tmp55_ = g_unichar_to_string (_tmp54_); + _tmp56_ = _tmp55_; + _tmp57_ = atoi (_tmp56_); + _tmp58_ = CALCULATOR_THREAD_superscript_digits[_tmp57_]; + g_string_append_unichar (_tmp53_, _tmp58_); + _g_free0 (_tmp56_); + } + } + } + } + _tmp59_ = sb; + _tmp60_ = _tmp59_->str; + _tmp61_ = g_strdup (_tmp60_); + exponent = _tmp61_; + _tmp62_ = minus; + if (_tmp62_) { + const gchar* _tmp63_ = NULL; + gchar* _tmp64_ = NULL; + _tmp63_ = exponent; + _tmp64_ = g_strconcat ("⁻", _tmp63_, NULL); + _g_free0 (exponent); + exponent = _tmp64_; + } + _tmp65_ = pretty_result; + _tmp66_ = pretty_result; + _tmp67_ = string_last_index_of (_tmp66_, "E", 0); + _tmp68_ = string_substring (_tmp65_, (glong) 0, (glong) _tmp67_); + _tmp69_ = _tmp68_; + _tmp70_ = g_strconcat (_tmp69_, " x 10", NULL); + _tmp71_ = _tmp70_; + _tmp72_ = exponent; + _tmp73_ = g_strconcat (_tmp71_, _tmp72_, NULL); + _tmp74_ = _tmp73_; + _g_free0 (_tmp71_); + _g_free0 (_tmp69_); + result = _tmp74_; + _g_free0 (exponent); + _g_string_free0 (sb); + _g_free0 (pretty_result); + return result; +} + + +static gchar* calculator_thread_pretty_print2 (CalculatorThread* self, const gchar* str) { + gchar* result = NULL; + GString* sb = NULL; + GString* _tmp0_ = NULL; + gboolean active = FALSE; + gunichar c = 0U; + GString* _tmp33_ = NULL; + const gchar* _tmp34_ = NULL; + gchar* _tmp35_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (str != NULL, NULL); + _tmp0_ = g_string_new (""); + sb = _tmp0_; + active = FALSE; + { + gint i = 0; + i = 0; + { + gboolean _tmp1_ = FALSE; + _tmp1_ = TRUE; + while (TRUE) { + const gchar* _tmp2_ = NULL; + gunichar _tmp3_ = 0U; + gboolean _tmp4_ = FALSE; + gboolean _tmp5_ = FALSE; + gunichar _tmp18_ = 0U; + gchar* _tmp19_ = NULL; + gchar* _tmp20_ = NULL; + gboolean _tmp21_ = FALSE; + GString* _tmp31_ = NULL; + gunichar _tmp32_ = 0U; + if (!_tmp1_) { + } + _tmp1_ = FALSE; + _tmp2_ = str; + _tmp4_ = string_get_next_char (_tmp2_, &i, &_tmp3_); + c = _tmp3_; + if (!_tmp4_) { + break; + } + _tmp5_ = active; + if (_tmp5_) { + GRegex* _tmp6_ = NULL; + gunichar _tmp7_ = 0U; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + gboolean _tmp10_ = FALSE; + gboolean _tmp11_ = FALSE; + _tmp6_ = self->priv->digit_regex; + _tmp7_ = c; + _tmp8_ = g_unichar_to_string (_tmp7_); + _tmp9_ = _tmp8_; + _tmp10_ = g_regex_match (_tmp6_, _tmp9_, 0, NULL); + _tmp11_ = _tmp10_; + _g_free0 (_tmp9_); + if (_tmp11_) { + GString* _tmp12_ = NULL; + gunichar _tmp13_ = 0U; + gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + gint _tmp16_ = 0; + gunichar _tmp17_ = 0U; + _tmp12_ = sb; + _tmp13_ = c; + _tmp14_ = g_unichar_to_string (_tmp13_); + _tmp15_ = _tmp14_; + _tmp16_ = atoi (_tmp15_); + _tmp17_ = CALCULATOR_THREAD_superscript_digits[_tmp16_]; + g_string_append_unichar (_tmp12_, _tmp17_); + _g_free0 (_tmp15_); + continue; + } else { + active = FALSE; + } + } + _tmp18_ = c; + _tmp19_ = g_unichar_to_string (_tmp18_); + _tmp20_ = _tmp19_; + _tmp21_ = g_strcmp0 (_tmp20_, "^") == 0; + _g_free0 (_tmp20_); + if (_tmp21_) { + gint ii = 0; + gint _tmp22_ = 0; + const gchar* _tmp23_ = NULL; + gunichar _tmp24_ = 0U; + GRegex* _tmp25_ = NULL; + gunichar _tmp26_ = 0U; + gchar* _tmp27_ = NULL; + gchar* _tmp28_ = NULL; + gboolean _tmp29_ = FALSE; + gboolean _tmp30_ = FALSE; + active = TRUE; + _tmp22_ = i; + ii = _tmp22_; + _tmp23_ = str; + string_get_next_char (_tmp23_, &ii, &_tmp24_); + c = _tmp24_; + _tmp25_ = self->priv->digit_regex; + _tmp26_ = c; + _tmp27_ = g_unichar_to_string (_tmp26_); + _tmp28_ = _tmp27_; + _tmp29_ = g_regex_match (_tmp25_, _tmp28_, 0, NULL); + _tmp30_ = _tmp29_; + _g_free0 (_tmp28_); + if (_tmp30_) { + continue; + } + } + _tmp31_ = sb; + _tmp32_ = c; + g_string_append_unichar (_tmp31_, _tmp32_); + } + } + } + _tmp33_ = sb; + _tmp34_ = _tmp33_->str; + _tmp35_ = g_strdup (_tmp34_); + result = _tmp35_; + _g_string_free0 (sb); + return result; +} + + +GeeList* calculator_thread_get_functions (CalculatorThread* self) { + GeeList* result; + GeeList* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_functions; + result = _tmp0_; + return result; +} + + +static void calculator_thread_set_functions (CalculatorThread* self, GeeList* value) { + GeeList* _tmp0_ = NULL; + GeeList* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_functions); + self->priv->_functions = _tmp1_; +} + + +GeeList* calculator_thread_get_advanced_functions (CalculatorThread* self) { + GeeList* result; + GeeList* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_advanced_functions; + result = _tmp0_; + return result; +} + + +static void calculator_thread_set_advanced_functions (CalculatorThread* self, GeeList* value) { + GeeList* _tmp0_ = NULL; + GeeList* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_advanced_functions); + self->priv->_advanced_functions = _tmp1_; +} + + +GeeList* calculator_thread_get_variables (CalculatorThread* self) { + GeeList* result; + GeeList* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_variables; + result = _tmp0_; + return result; +} + + +static void calculator_thread_set_variables (CalculatorThread* self, GeeList* value) { + GeeList* _tmp0_ = NULL; + GeeList* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_variables); + self->priv->_variables = _tmp1_; +} + + +const gchar* calculator_thread_get_currency_update_url (CalculatorThread* self) { + const gchar* result; + const gchar* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_currency_update_url; + result = _tmp0_; + return result; +} + + +static void calculator_thread_set_currency_update_url (CalculatorThread* self, const gchar* value) { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->priv->_currency_update_url); + self->priv->_currency_update_url = _tmp1_; +} + + +const gchar* calculator_thread_get_currency_update_filename (CalculatorThread* self) { + const gchar* result; + const gchar* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_currency_update_filename; + result = _tmp0_; + return result; +} + + +static void calculator_thread_set_currency_update_filename (CalculatorThread* self, const gchar* value) { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->priv->_currency_update_filename); + self->priv->_currency_update_filename = _tmp1_; +} + + +GAsyncQueue* calculator_thread_get_calculations (CalculatorThread* self) { + GAsyncQueue* result; + GAsyncQueue* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_calculations; + result = _tmp0_; + return result; +} + + +static gpointer _g_async_queue_ref0 (gpointer self) { + return self ? g_async_queue_ref (self) : NULL; +} + + +static void calculator_thread_set_calculations (CalculatorThread* self, GAsyncQueue* value) { + GAsyncQueue* _tmp0_ = NULL; + GAsyncQueue* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_async_queue_ref0 (_tmp0_); + _g_async_queue_unref0 (self->priv->_calculations); + self->priv->_calculations = _tmp1_; +} + + +GAsyncQueue* calculator_thread_get_results (CalculatorThread* self) { + GAsyncQueue* result; + GAsyncQueue* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_results; + result = _tmp0_; + return result; +} + + +static void calculator_thread_set_results (CalculatorThread* self, GAsyncQueue* value) { + GAsyncQueue* _tmp0_ = NULL; + GAsyncQueue* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_async_queue_ref0 (_tmp0_); + _g_async_queue_unref0 (self->priv->_results); + self->priv->_results = _tmp1_; +} + + +static void value_calculator_thread_init (GValue* value) { + value->data[0].v_pointer = NULL; +} + + +static void value_calculator_thread_free_value (GValue* value) { + if (value->data[0].v_pointer) { + calculator_thread_unref (value->data[0].v_pointer); + } +} + + +static void value_calculator_thread_copy_value (const GValue* src_value, GValue* dest_value) { + if (src_value->data[0].v_pointer) { + dest_value->data[0].v_pointer = calculator_thread_ref (src_value->data[0].v_pointer); + } else { + dest_value->data[0].v_pointer = NULL; + } +} + + +static gpointer value_calculator_thread_peek_pointer (const GValue* value) { + return value->data[0].v_pointer; +} + + +static gchar* value_calculator_thread_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + if (collect_values[0].v_pointer) { + CalculatorThread* object; + object = collect_values[0].v_pointer; + if (object->parent_instance.g_class == NULL) { + return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); + } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { + return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); + } + value->data[0].v_pointer = calculator_thread_ref (object); + } else { + value->data[0].v_pointer = NULL; + } + return NULL; +} + + +static gchar* value_calculator_thread_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + CalculatorThread** object_p; + object_p = collect_values[0].v_pointer; + if (!object_p) { + return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); + } + if (!value->data[0].v_pointer) { + *object_p = NULL; + } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { + *object_p = value->data[0].v_pointer; + } else { + *object_p = calculator_thread_ref (value->data[0].v_pointer); + } + return NULL; +} + + +GParamSpec* param_spec_calculator_thread (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { + ParamSpecCalculatorThread* spec; + g_return_val_if_fail (g_type_is_a (object_type, TYPE_CALCULATOR_THREAD), NULL); + spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); + G_PARAM_SPEC (spec)->value_type = object_type; + return G_PARAM_SPEC (spec); +} + + +gpointer value_get_calculator_thread (const GValue* value) { + g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_CALCULATOR_THREAD), NULL); + return value->data[0].v_pointer; +} + + +void value_set_calculator_thread (GValue* value, gpointer v_object) { + CalculatorThread* old; + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_CALCULATOR_THREAD)); + old = value->data[0].v_pointer; + if (v_object) { + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_CALCULATOR_THREAD)); + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); + value->data[0].v_pointer = v_object; + calculator_thread_ref (value->data[0].v_pointer); + } else { + value->data[0].v_pointer = NULL; + } + if (old) { + calculator_thread_unref (old); + } +} + + +void value_take_calculator_thread (GValue* value, gpointer v_object) { + CalculatorThread* old; + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_CALCULATOR_THREAD)); + old = value->data[0].v_pointer; + if (v_object) { + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_CALCULATOR_THREAD)); + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); + value->data[0].v_pointer = v_object; + } else { + value->data[0].v_pointer = NULL; + } + if (old) { + calculator_thread_unref (old); + } +} + + +static void calculator_thread_class_init (CalculatorThreadClass * klass) { + calculator_thread_parent_class = g_type_class_peek_parent (klass); + ((CalculatorThreadClass *) klass)->finalize = calculator_thread_finalize; + g_type_class_add_private (klass, sizeof (CalculatorThreadPrivate)); +} + + +static void calculator_thread_instance_init (CalculatorThread * self) { + self->priv = CALCULATOR_THREAD_GET_PRIVATE (self); + self->ref_count = 1; +} + + +static void calculator_thread_finalize (CalculatorThread* obj) { + CalculatorThread * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CALCULATOR_THREAD, CalculatorThread); + g_signal_handlers_destroy (self); + delete_calculator (); + _g_object_unref0 (self->priv->_functions); + _g_object_unref0 (self->priv->_advanced_functions); + _g_object_unref0 (self->priv->_variables); + _g_free0 (self->priv->_currency_update_url); + _g_free0 (self->priv->_currency_update_filename); + _g_regex_unref0 (self->priv->digit_regex); + _g_regex_unref0 (self->priv->pretty_regex); + _g_async_queue_unref0 (self->priv->_calculations); + _g_async_queue_unref0 (self->priv->_results); + (self->callback_target_destroy_notify == NULL) ? NULL : (self->callback_target_destroy_notify (self->callback_target), NULL); + self->callback = NULL; + self->callback_target = NULL; + self->callback_target_destroy_notify = NULL; + _g_object_unref0 (self->priv->cancel); +} + + +GType calculator_thread_get_type (void) { + static volatile gsize calculator_thread_type_id__volatile = 0; + if (g_once_init_enter (&calculator_thread_type_id__volatile)) { + static const GTypeValueTable g_define_type_value_table = { value_calculator_thread_init, value_calculator_thread_free_value, value_calculator_thread_copy_value, value_calculator_thread_peek_pointer, "p", value_calculator_thread_collect_value, "p", value_calculator_thread_lcopy_value }; + static const GTypeInfo g_define_type_info = { sizeof (CalculatorThreadClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) calculator_thread_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (CalculatorThread), 0, (GInstanceInitFunc) calculator_thread_instance_init, &g_define_type_value_table }; + static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; + GType calculator_thread_type_id; + calculator_thread_type_id = g_type_register_fundamental (g_type_fundamental_next (), "CalculatorThread", &g_define_type_info, &g_define_type_fundamental_info, 0); + g_once_init_leave (&calculator_thread_type_id__volatile, calculator_thread_type_id); + } + return calculator_thread_type_id__volatile; +} + + +gpointer calculator_thread_ref (gpointer instance) { + CalculatorThread* self; + self = instance; + g_atomic_int_inc (&self->ref_count); + return instance; +} + + +void calculator_thread_unref (gpointer instance) { + CalculatorThread* self; + self = instance; + if (g_atomic_int_dec_and_test (&self->ref_count)) { + CALCULATOR_THREAD_GET_CLASS (self)->finalize (self); + g_type_free_instance ((GTypeInstance *) self); + } +} + + +UpdateThread* update_thread_construct (GType object_type, const gchar* file, const gchar* url) { + UpdateThread* self = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + g_return_val_if_fail (file != NULL, NULL); + g_return_val_if_fail (url != NULL, NULL); + self = (UpdateThread*) g_type_create_instance (object_type); + _tmp0_ = file; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->priv->file); + self->priv->file = _tmp1_; + _tmp2_ = url; + _tmp3_ = g_strdup (_tmp2_); + _g_free0 (self->priv->url); + self->priv->url = _tmp3_; + return self; +} + + +UpdateThread* update_thread_new (const gchar* file, const gchar* url) { + return update_thread_construct (TYPE_UPDATE_THREAD, file, url); +} + + +gboolean update_thread_thread_func (UpdateThread* self) { + gboolean result = FALSE; + GFile* update_file = NULL; + const gchar* _tmp0_ = NULL; + GFile* _tmp1_ = NULL; + GFile* _tmp2_ = NULL; + gboolean _tmp3_ = FALSE; + GFile* _tmp18_ = NULL; + gboolean _tmp19_ = FALSE; + GError * _inner_error_ = NULL; + g_return_val_if_fail (self != NULL, FALSE); + _tmp0_ = self->priv->file; + _tmp1_ = g_file_new_for_path (_tmp0_); + update_file = _tmp1_; + _tmp2_ = update_file; + _tmp3_ = g_file_query_exists (_tmp2_, NULL); + if (_tmp3_) { + struct stat stat = {0}; + const gchar* _tmp4_ = NULL; + struct stat _tmp5_ = {0}; + time_t mod = 0; + struct stat _tmp6_ = {0}; + time_t _tmp7_ = 0; + gint64 now = 0LL; + GDateTime* _tmp8_ = NULL; + GDateTime* _tmp9_ = NULL; + gint64 _tmp10_ = 0LL; + gint64 _tmp11_ = 0LL; + gint64 delta = 0LL; + gint64 _tmp12_ = 0LL; + time_t _tmp13_ = 0; + gint64 _tmp14_ = 0LL; + _tmp4_ = self->priv->file; + lstat (_tmp4_, &_tmp5_); + stat = _tmp5_; + _tmp6_ = stat; + _tmp7_ = _tmp6_.st_mtime; + mod = _tmp7_; + _tmp8_ = g_date_time_new_now_local (); + _tmp9_ = _tmp8_; + _tmp10_ = g_date_time_to_unix (_tmp9_); + _tmp11_ = _tmp10_; + _g_date_time_unref0 (_tmp9_); + now = _tmp11_; + _tmp12_ = now; + _tmp13_ = mod; + delta = _tmp12_ - _tmp13_; + _tmp14_ = delta; + if (_tmp14_ > ((gint64) 172800)) { + { + GFile* _tmp15_ = NULL; + _tmp15_ = update_file; + g_file_delete (_tmp15_, NULL, &_inner_error_); + if (G_UNLIKELY (_inner_error_ != NULL)) { + goto __catch3_g_error; + } + } + goto __finally3; + __catch3_g_error: + { + GError* e = NULL; + GError* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + e = _inner_error_; + _inner_error_ = NULL; + _tmp16_ = e; + _tmp17_ = _tmp16_->message; + g_critical ("Calculator.vala:344: Error: %s\n", _tmp17_); + _g_error_free0 (e); + } + __finally3: + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (update_file); + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return FALSE; + } + } + } + _tmp18_ = update_file; + _tmp19_ = g_file_query_exists (_tmp18_, NULL); + if (!_tmp19_) { + { + GFile* exch_file = NULL; + const gchar* _tmp20_ = NULL; + GFile* _tmp21_ = NULL; + GFile* _tmp22_ = NULL; + GFile* _tmp23_ = NULL; + g_debug ("Calculator.vala:352: update exchange rates file"); + _tmp20_ = self->priv->url; + _tmp21_ = g_file_new_for_uri (_tmp20_); + exch_file = _tmp21_; + _tmp22_ = exch_file; + _tmp23_ = update_file; + g_file_copy (_tmp22_, _tmp23_, G_FILE_COPY_NONE, NULL, NULL, NULL, &_inner_error_); + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (exch_file); + goto __catch4_g_error; + } + result = TRUE; + _g_object_unref0 (exch_file); + _g_object_unref0 (update_file); + return result; + } + goto __finally4; + __catch4_g_error: + { + GError* e = NULL; + GError* _tmp24_ = NULL; + const gchar* _tmp25_ = NULL; + e = _inner_error_; + _inner_error_ = NULL; + _tmp24_ = e; + _tmp25_ = _tmp24_->message; + g_critical ("Calculator.vala:358: Error: %s\n", _tmp25_); + _g_error_free0 (e); + } + __finally4: + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (update_file); + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return FALSE; + } + } + result = FALSE; + _g_object_unref0 (update_file); + return result; +} + + +static void value_update_thread_init (GValue* value) { + value->data[0].v_pointer = NULL; +} + + +static void value_update_thread_free_value (GValue* value) { + if (value->data[0].v_pointer) { + update_thread_unref (value->data[0].v_pointer); + } +} + + +static void value_update_thread_copy_value (const GValue* src_value, GValue* dest_value) { + if (src_value->data[0].v_pointer) { + dest_value->data[0].v_pointer = update_thread_ref (src_value->data[0].v_pointer); + } else { + dest_value->data[0].v_pointer = NULL; + } +} + + +static gpointer value_update_thread_peek_pointer (const GValue* value) { + return value->data[0].v_pointer; +} + + +static gchar* value_update_thread_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + if (collect_values[0].v_pointer) { + UpdateThread* object; + object = collect_values[0].v_pointer; + if (object->parent_instance.g_class == NULL) { + return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); + } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { + return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); + } + value->data[0].v_pointer = update_thread_ref (object); + } else { + value->data[0].v_pointer = NULL; + } + return NULL; +} + + +static gchar* value_update_thread_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + UpdateThread** object_p; + object_p = collect_values[0].v_pointer; + if (!object_p) { + return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); + } + if (!value->data[0].v_pointer) { + *object_p = NULL; + } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { + *object_p = value->data[0].v_pointer; + } else { + *object_p = update_thread_ref (value->data[0].v_pointer); + } + return NULL; +} + + +GParamSpec* param_spec_update_thread (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { + ParamSpecUpdateThread* spec; + g_return_val_if_fail (g_type_is_a (object_type, TYPE_UPDATE_THREAD), NULL); + spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); + G_PARAM_SPEC (spec)->value_type = object_type; + return G_PARAM_SPEC (spec); +} + + +gpointer value_get_update_thread (const GValue* value) { + g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_UPDATE_THREAD), NULL); + return value->data[0].v_pointer; +} + + +void value_set_update_thread (GValue* value, gpointer v_object) { + UpdateThread* old; + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_UPDATE_THREAD)); + old = value->data[0].v_pointer; + if (v_object) { + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_UPDATE_THREAD)); + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); + value->data[0].v_pointer = v_object; + update_thread_ref (value->data[0].v_pointer); + } else { + value->data[0].v_pointer = NULL; + } + if (old) { + update_thread_unref (old); + } +} + + +void value_take_update_thread (GValue* value, gpointer v_object) { + UpdateThread* old; + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_UPDATE_THREAD)); + old = value->data[0].v_pointer; + if (v_object) { + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_UPDATE_THREAD)); + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); + value->data[0].v_pointer = v_object; + } else { + value->data[0].v_pointer = NULL; + } + if (old) { + update_thread_unref (old); + } +} + + +static void update_thread_class_init (UpdateThreadClass * klass) { + update_thread_parent_class = g_type_class_peek_parent (klass); + ((UpdateThreadClass *) klass)->finalize = update_thread_finalize; + g_type_class_add_private (klass, sizeof (UpdateThreadPrivate)); +} + + +static void update_thread_instance_init (UpdateThread * self) { + self->priv = UPDATE_THREAD_GET_PRIVATE (self); + self->ref_count = 1; +} + + +static void update_thread_finalize (UpdateThread* obj) { + UpdateThread * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_UPDATE_THREAD, UpdateThread); + g_signal_handlers_destroy (self); + _g_free0 (self->priv->file); + _g_free0 (self->priv->url); +} + + +GType update_thread_get_type (void) { + static volatile gsize update_thread_type_id__volatile = 0; + if (g_once_init_enter (&update_thread_type_id__volatile)) { + static const GTypeValueTable g_define_type_value_table = { value_update_thread_init, value_update_thread_free_value, value_update_thread_copy_value, value_update_thread_peek_pointer, "p", value_update_thread_collect_value, "p", value_update_thread_lcopy_value }; + static const GTypeInfo g_define_type_info = { sizeof (UpdateThreadClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) update_thread_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (UpdateThread), 0, (GInstanceInitFunc) update_thread_instance_init, &g_define_type_value_table }; + static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; + GType update_thread_type_id; + update_thread_type_id = g_type_register_fundamental (g_type_fundamental_next (), "UpdateThread", &g_define_type_info, &g_define_type_fundamental_info, 0); + g_once_init_leave (&update_thread_type_id__volatile, update_thread_type_id); + } + return update_thread_type_id__volatile; +} + + +gpointer update_thread_ref (gpointer instance) { + UpdateThread* self; + self = instance; + g_atomic_int_inc (&self->ref_count); + return instance; +} + + +void update_thread_unref (gpointer instance) { + UpdateThread* self; + self = instance; + if (g_atomic_int_dec_and_test (&self->ref_count)) { + UPDATE_THREAD_GET_CLASS (self)->finalize (self); + g_type_free_instance ((GTypeInstance *) self); + } +} + + +static gpointer _calculator_thread_thread_func_gthread_func (gpointer self) { + gpointer result; + result = calculator_thread_thread_func ((CalculatorThread*) self); + calculator_thread_unref (self); + return result; +} + + +static gpointer _update_thread_thread_func_gthread_func (gpointer self) { + gpointer result; + result = (gpointer) ((gintptr) update_thread_thread_func ((UpdateThread*) self)); + update_thread_unref (self); + return result; +} + + +static gboolean __lambda27_ (Calculator* self) { + gboolean result = FALSE; + CalculatorThread* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + CalculatorThread* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + UpdateThread* _tmp6_ = NULL; + GError * _inner_error_ = NULL; + _tmp0_ = self->priv->calc_thread; + _tmp1_ = calculator_thread_get_currency_update_filename (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = self->priv->calc_thread; + _tmp4_ = calculator_thread_get_currency_update_url (_tmp3_); + _tmp5_ = _tmp4_; + _tmp6_ = update_thread_new (_tmp2_, _tmp5_); + _update_thread_unref0 (self->priv->update_thread); + self->priv->update_thread = _tmp6_; + { + GThread* _tmp7_ = NULL; + UpdateThread* _tmp8_ = NULL; + GThread* _tmp9_ = NULL; + GThread* _tmp10_ = NULL; + _tmp8_ = self->priv->update_thread; + _tmp9_ = g_thread_try_new ("currency_update_thread", _update_thread_thread_func_gthread_func, update_thread_ref (_tmp8_), &_inner_error_); + _tmp7_ = _tmp9_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + goto __catch6_g_error; + } + _tmp10_ = _tmp7_; + _tmp7_ = NULL; + _g_thread_unref0 (self->priv->thread2); + self->priv->thread2 = _tmp10_; + _g_thread_unref0 (_tmp7_); + } + goto __finally6; + __catch6_g_error: + { + GError* e = NULL; + FILE* _tmp11_ = NULL; + GError* _tmp12_ = NULL; + const gchar* _tmp13_ = NULL; + e = _inner_error_; + _inner_error_ = NULL; + _tmp11_ = stderr; + _tmp12_ = e; + _tmp13_ = _tmp12_->message; + fprintf (_tmp11_, "Error: %s\n", _tmp13_); + _g_error_free0 (e); + } + __finally6: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return FALSE; + } + result = FALSE; + return result; +} + + +static gboolean ___lambda27__gsource_func (gpointer self) { + gboolean result; + result = __lambda27_ ((Calculator*) self); + return result; +} + + +Calculator* calculator_construct (GType object_type) { + Calculator * self = NULL; + GCancellable* _tmp0_ = NULL; + GCancellable* _tmp1_ = NULL; + GCancellable* _tmp2_ = NULL; + CalculatorThread* _tmp3_ = NULL; + GError * _inner_error_ = NULL; + self = (Calculator*) g_object_new (object_type, NULL); + _tmp0_ = g_cancellable_new (); + _tmp1_ = _tmp0_; + calculator_set_cancel (self, _tmp1_); + _g_object_unref0 (_tmp1_); + _tmp2_ = self->priv->_cancel; + _tmp3_ = calculator_thread_new (_tmp2_); + _calculator_thread_unref0 (self->priv->calc_thread); + self->priv->calc_thread = _tmp3_; + { + GThread* _tmp4_ = NULL; + CalculatorThread* _tmp5_ = NULL; + GThread* _tmp6_ = NULL; + GThread* _tmp7_ = NULL; + _tmp5_ = self->priv->calc_thread; + _tmp6_ = g_thread_try_new ("calc_thread", _calculator_thread_thread_func_gthread_func, calculator_thread_ref (_tmp5_), &_inner_error_); + _tmp4_ = _tmp6_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + goto __catch5_g_error; + } + _tmp7_ = _tmp4_; + _tmp4_ = NULL; + _g_thread_unref0 (self->priv->thread); + self->priv->thread = _tmp7_; + _g_thread_unref0 (_tmp4_); + } + goto __finally5; + __catch5_g_error: + { + GError* e = NULL; + FILE* _tmp8_ = NULL; + GError* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + e = _inner_error_; + _inner_error_ = NULL; + _tmp8_ = stderr; + _tmp9_ = e; + _tmp10_ = _tmp9_->message; + fprintf (_tmp8_, "Error: %s\n", _tmp10_); + _g_error_free0 (e); + } + __finally5: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ___lambda27__gsource_func, g_object_ref (self), g_object_unref); + return self; +} + + +Calculator* calculator_new (void) { + return calculator_construct (TYPE_CALCULATOR); +} + + +GeeTreeMap* calculator_category_functions (Calculator* self) { + GeeTreeMap* result = NULL; + GeeTreeMap* map = NULL; + GeeTreeMap* _tmp0_ = NULL; + NascSettings* _tmp35_ = NULL; + NascSettings* _tmp36_ = NULL; + gboolean _tmp37_ = FALSE; + gboolean _tmp38_ = FALSE; + gboolean _tmp39_ = FALSE; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = gee_tree_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, GEE_TYPE_ARRAY_LIST, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL); + map = _tmp0_; + { + GeeList* _fe_list = NULL; + GeeList* _tmp1_ = NULL; + GeeList* _tmp2_ = NULL; + GeeList* _tmp3_ = NULL; + gint _fe_size = 0; + GeeList* _tmp4_ = NULL; + gint _tmp5_ = 0; + gint _tmp6_ = 0; + gint _fe_index = 0; + _tmp1_ = calculator_get_functions (self); + _tmp2_ = _tmp1_; + _tmp3_ = _g_object_ref0 (_tmp2_); + _fe_list = _tmp3_; + _tmp4_ = _fe_list; + _tmp5_ = gee_collection_get_size ((GeeCollection*) _tmp4_); + _tmp6_ = _tmp5_; + _fe_size = _tmp6_; + _fe_index = -1; + while (TRUE) { + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _tmp9_ = 0; + NascFunction* fe = NULL; + GeeList* _tmp10_ = NULL; + gint _tmp11_ = 0; + gpointer _tmp12_ = NULL; + gchar* id = NULL; + NascFunction* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + gboolean _tmp16_ = FALSE; + NascSettings* _tmp17_ = NULL; + NascSettings* _tmp18_ = NULL; + gboolean _tmp19_ = FALSE; + gboolean _tmp20_ = FALSE; + gboolean _tmp21_ = FALSE; + GeeArrayList* list = NULL; + GeeTreeMap* _tmp25_ = NULL; + const gchar* _tmp26_ = NULL; + gpointer _tmp27_ = NULL; + GeeArrayList* _tmp28_ = NULL; + GeeArrayList* _tmp30_ = NULL; + NascFunction* _tmp31_ = NULL; + GeeTreeMap* _tmp32_ = NULL; + const gchar* _tmp33_ = NULL; + GeeArrayList* _tmp34_ = NULL; + _tmp7_ = _fe_index; + _fe_index = _tmp7_ + 1; + _tmp8_ = _fe_index; + _tmp9_ = _fe_size; + if (!(_tmp8_ < _tmp9_)) { + break; + } + _tmp10_ = _fe_list; + _tmp11_ = _fe_index; + _tmp12_ = gee_list_get (_tmp10_, _tmp11_); + fe = (NascFunction*) _tmp12_; + _tmp13_ = fe; + _tmp14_ = ((NascElement*) _tmp13_)->category; + _tmp15_ = g_strdup (_tmp14_); + id = _tmp15_; + _tmp17_ = nasc_settings_get_instance (); + _tmp18_ = _tmp17_; + _tmp19_ = nasc_settings_get_advanced_mode (_tmp18_); + _tmp20_ = _tmp19_; + _tmp21_ = !_tmp20_; + _g_object_unref0 (_tmp18_); + if (_tmp21_) { + const gchar* _tmp22_ = NULL; + gboolean _tmp23_ = FALSE; + _tmp22_ = id; + _tmp23_ = g_str_has_prefix (_tmp22_, "Number Theory/"); + _tmp16_ = _tmp23_; + } else { + _tmp16_ = FALSE; + } + if (_tmp16_) { + gchar* _tmp24_ = NULL; + _tmp24_ = g_strdup ("Number Theory"); + _g_free0 (id); + id = _tmp24_; + } + _tmp25_ = map; + _tmp26_ = id; + _tmp27_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp25_, _tmp26_); + list = (GeeArrayList*) _tmp27_; + _tmp28_ = list; + if (_tmp28_ == NULL) { + GeeArrayList* _tmp29_ = NULL; + _tmp29_ = gee_array_list_new (TYPE_NASC_FUNCTION, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _g_object_unref0 (list); + list = _tmp29_; + } + _tmp30_ = list; + _tmp31_ = fe; + gee_abstract_collection_add ((GeeAbstractCollection*) _tmp30_, _tmp31_); + _tmp32_ = map; + _tmp33_ = id; + _tmp34_ = list; + gee_abstract_map_set ((GeeAbstractMap*) _tmp32_, _tmp33_, _tmp34_); + _g_object_unref0 (list); + _g_free0 (id); + _g_object_unref0 (fe); + } + _g_object_unref0 (_fe_list); + } + _tmp35_ = nasc_settings_get_instance (); + _tmp36_ = _tmp35_; + _tmp37_ = nasc_settings_get_advanced_mode (_tmp36_); + _tmp38_ = _tmp37_; + _tmp39_ = _tmp38_; + _g_object_unref0 (_tmp36_); + if (_tmp39_) { + { + GeeList* _fe_list = NULL; + GeeList* _tmp40_ = NULL; + GeeList* _tmp41_ = NULL; + GeeList* _tmp42_ = NULL; + gint _fe_size = 0; + GeeList* _tmp43_ = NULL; + gint _tmp44_ = 0; + gint _tmp45_ = 0; + gint _fe_index = 0; + _tmp40_ = calculator_get_advanced_functions (self); + _tmp41_ = _tmp40_; + _tmp42_ = _g_object_ref0 (_tmp41_); + _fe_list = _tmp42_; + _tmp43_ = _fe_list; + _tmp44_ = gee_collection_get_size ((GeeCollection*) _tmp43_); + _tmp45_ = _tmp44_; + _fe_size = _tmp45_; + _fe_index = -1; + while (TRUE) { + gint _tmp46_ = 0; + gint _tmp47_ = 0; + gint _tmp48_ = 0; + NascFunction* fe = NULL; + GeeList* _tmp49_ = NULL; + gint _tmp50_ = 0; + gpointer _tmp51_ = NULL; + gchar* id = NULL; + NascFunction* _tmp52_ = NULL; + const gchar* _tmp53_ = NULL; + gchar* _tmp54_ = NULL; + GeeArrayList* list = NULL; + GeeTreeMap* _tmp55_ = NULL; + const gchar* _tmp56_ = NULL; + gpointer _tmp57_ = NULL; + GeeArrayList* _tmp58_ = NULL; + GeeArrayList* _tmp60_ = NULL; + NascFunction* _tmp61_ = NULL; + GeeTreeMap* _tmp62_ = NULL; + const gchar* _tmp63_ = NULL; + GeeArrayList* _tmp64_ = NULL; + _tmp46_ = _fe_index; + _fe_index = _tmp46_ + 1; + _tmp47_ = _fe_index; + _tmp48_ = _fe_size; + if (!(_tmp47_ < _tmp48_)) { + break; + } + _tmp49_ = _fe_list; + _tmp50_ = _fe_index; + _tmp51_ = gee_list_get (_tmp49_, _tmp50_); + fe = (NascFunction*) _tmp51_; + _tmp52_ = fe; + _tmp53_ = ((NascElement*) _tmp52_)->category; + _tmp54_ = g_strdup (_tmp53_); + id = _tmp54_; + _tmp55_ = map; + _tmp56_ = id; + _tmp57_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp55_, _tmp56_); + list = (GeeArrayList*) _tmp57_; + _tmp58_ = list; + if (_tmp58_ == NULL) { + GeeArrayList* _tmp59_ = NULL; + _tmp59_ = gee_array_list_new (TYPE_NASC_FUNCTION, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _g_object_unref0 (list); + list = _tmp59_; + } + _tmp60_ = list; + _tmp61_ = fe; + gee_abstract_collection_add ((GeeAbstractCollection*) _tmp60_, _tmp61_); + _tmp62_ = map; + _tmp63_ = id; + _tmp64_ = list; + gee_abstract_map_set ((GeeAbstractMap*) _tmp62_, _tmp63_, _tmp64_); + _g_object_unref0 (list); + _g_free0 (id); + _g_object_unref0 (fe); + } + _g_object_unref0 (_fe_list); + } + } + result = map; + return result; +} + + +gchar* calculator_calculate (Calculator* self, const gchar* input) { + gchar* result = NULL; + CalculatorThread* _tmp0_ = NULL; + GAsyncQueue* _tmp1_ = NULL; + GAsyncQueue* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + Calculation* _tmp4_ = NULL; + CalculatorThread* _tmp5_ = NULL; + GAsyncQueue* _tmp6_ = NULL; + GAsyncQueue* _tmp7_ = NULL; + gpointer _tmp8_ = NULL; + Calculation* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (input != NULL, NULL); + _tmp0_ = self->priv->calc_thread; + _tmp1_ = calculator_thread_get_calculations (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = input; + _tmp4_ = calculation_new (_tmp3_); + g_async_queue_push (_tmp2_, _tmp4_); + _tmp5_ = self->priv->calc_thread; + _tmp6_ = calculator_thread_get_results (_tmp5_); + _tmp7_ = _tmp6_; + _tmp8_ = g_async_queue_pop (_tmp7_); + _tmp9_ = (Calculation*) _tmp8_; + _tmp10_ = _tmp9_->output; + _tmp11_ = g_strdup (_tmp10_); + _tmp12_ = _tmp11_; + _g_object_unref0 (_tmp9_); + result = _tmp12_; + return result; +} + + +static void calculator_calculate_store_variable_data_free (gpointer _data) { + CalculatorCalculateStoreVariableData* _data_; + _data_ = _data; + _g_free0 (_data_->input); + _g_free0 (_data_->variable); + _g_free0 (_data_->result); + _g_object_unref0 (_data_->self); + g_slice_free (CalculatorCalculateStoreVariableData, _data_); +} + + +void calculator_calculate_store_variable (Calculator* self, const gchar* input, const gchar* variable, GAsyncReadyCallback _callback_, gpointer _user_data_) { + CalculatorCalculateStoreVariableData* _data_; + Calculator* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + _data_ = g_slice_new0 (CalculatorCalculateStoreVariableData); + _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, calculator_calculate_store_variable); + g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, calculator_calculate_store_variable_data_free); + _tmp0_ = _g_object_ref0 (self); + _data_->self = _tmp0_; + _tmp1_ = input; + _tmp2_ = g_strdup (_tmp1_); + _g_free0 (_data_->input); + _data_->input = _tmp2_; + _tmp3_ = variable; + _tmp4_ = g_strdup (_tmp3_); + _g_free0 (_data_->variable); + _data_->variable = _tmp4_; + calculator_calculate_store_variable_co (_data_); +} + + +gchar* calculator_calculate_store_variable_finish (Calculator* self, GAsyncResult* _res_) { + gchar* result; + CalculatorCalculateStoreVariableData* _data_; + _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_)); + result = _data_->result; + _data_->result = NULL; + return result; +} + + +static gboolean _calculator_calculate_store_variable_co_gsource_func (gpointer self) { + gboolean result; + result = calculator_calculate_store_variable_co (self); + return result; +} + + +static gboolean calculator_calculate_store_variable_co (CalculatorCalculateStoreVariableData* _data_) { + switch (_data_->_state_) { + case 0: + goto _state_0; + case 1: + goto _state_1; + default: + g_assert_not_reached (); + } + _state_0: + _data_->_tmp0_ = NULL; + _data_->_tmp0_ = _data_->self->priv->calc_thread; + (_data_->_tmp0_->callback_target_destroy_notify == NULL) ? NULL : (_data_->_tmp0_->callback_target_destroy_notify (_data_->_tmp0_->callback_target), NULL); + _data_->_tmp0_->callback = NULL; + _data_->_tmp0_->callback_target = NULL; + _data_->_tmp0_->callback_target_destroy_notify = NULL; + _data_->_tmp0_->callback = _calculator_calculate_store_variable_co_gsource_func; + _data_->_tmp0_->callback_target = _data_; + _data_->_tmp0_->callback_target_destroy_notify = NULL; + _data_->_tmp1_ = NULL; + _data_->_tmp1_ = _data_->self->priv->calc_thread; + _data_->_tmp2_ = NULL; + _data_->_tmp2_ = calculator_thread_get_calculations (_data_->_tmp1_); + _data_->_tmp3_ = NULL; + _data_->_tmp3_ = _data_->_tmp2_; + _data_->_tmp4_ = NULL; + _data_->_tmp4_ = _data_->input; + _data_->_tmp5_ = NULL; + _data_->_tmp5_ = _data_->variable; + _data_->_tmp6_ = NULL; + _data_->_tmp6_ = calculation_new_with_variable (_data_->_tmp4_, _data_->_tmp5_); + g_async_queue_push (_data_->_tmp3_, _data_->_tmp6_); + _data_->_state_ = 1; + return FALSE; + _state_1: + ; + _data_->_tmp7_ = NULL; + _data_->_tmp7_ = _data_->self->priv->calc_thread; + _data_->_tmp8_ = NULL; + _data_->_tmp8_ = calculator_thread_get_results (_data_->_tmp7_); + _data_->_tmp9_ = NULL; + _data_->_tmp9_ = _data_->_tmp8_; + _data_->_tmp10_ = NULL; + _data_->_tmp10_ = g_async_queue_pop (_data_->_tmp9_); + _data_->_tmp11_ = NULL; + _data_->_tmp11_ = (Calculation*) _data_->_tmp10_; + _data_->_tmp12_ = NULL; + _data_->_tmp12_ = _data_->_tmp11_->output; + _data_->_tmp13_ = NULL; + _data_->_tmp13_ = g_strdup (_data_->_tmp12_); + _data_->_tmp14_ = NULL; + _data_->_tmp14_ = _data_->_tmp13_; + _g_object_unref0 (_data_->_tmp11_); + _data_->result = _data_->_tmp14_; + if (_data_->_state_ == 0) { + g_simple_async_result_complete_in_idle (_data_->_async_result); + } else { + g_simple_async_result_complete (_data_->_async_result); + } + g_object_unref (_data_->_async_result); + return FALSE; + if (_data_->_state_ == 0) { + g_simple_async_result_complete_in_idle (_data_->_async_result); + } else { + g_simple_async_result_complete (_data_->_async_result); + } + g_object_unref (_data_->_async_result); + return FALSE; +} + + +GeeList* calculator_get_functions (Calculator* self) { + GeeList* result; + CalculatorThread* _tmp0_ = NULL; + GeeList* _tmp1_ = NULL; + GeeList* _tmp2_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->calc_thread; + _tmp1_ = calculator_thread_get_functions (_tmp0_); + _tmp2_ = _tmp1_; + result = _tmp2_; + return result; +} + + +static void calculator_set_functions (Calculator* self, GeeList* value) { + g_return_if_fail (self != NULL); + g_object_notify ((GObject *) self, "functions"); +} + + +GeeList* calculator_get_advanced_functions (Calculator* self) { + GeeList* result; + CalculatorThread* _tmp0_ = NULL; + GeeList* _tmp1_ = NULL; + GeeList* _tmp2_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->calc_thread; + _tmp1_ = calculator_thread_get_advanced_functions (_tmp0_); + _tmp2_ = _tmp1_; + result = _tmp2_; + return result; +} + + +static void calculator_set_advanced_functions (Calculator* self, GeeList* value) { + g_return_if_fail (self != NULL); + g_object_notify ((GObject *) self, "advanced-functions"); +} + + +GeeList* calculator_get_variables (Calculator* self) { + GeeList* result; + CalculatorThread* _tmp0_ = NULL; + GeeList* _tmp1_ = NULL; + GeeList* _tmp2_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->calc_thread; + _tmp1_ = calculator_thread_get_variables (_tmp0_); + _tmp2_ = _tmp1_; + result = _tmp2_; + return result; +} + + +static void calculator_set_variables (Calculator* self, GeeList* value) { + g_return_if_fail (self != NULL); + g_object_notify ((GObject *) self, "variables"); +} + + +GCancellable* calculator_get_cancel (Calculator* self) { + GCancellable* result; + GCancellable* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_cancel; + result = _tmp0_; + return result; +} + + +static void calculator_set_cancel (Calculator* self, GCancellable* value) { + GCancellable* _tmp0_ = NULL; + GCancellable* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_cancel); + self->priv->_cancel = _tmp1_; + g_object_notify ((GObject *) self, "cancel"); +} + + +static void calculator_class_init (CalculatorClass * klass) { + calculator_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (CalculatorPrivate)); + G_OBJECT_CLASS (klass)->get_property = _vala_calculator_get_property; + G_OBJECT_CLASS (klass)->set_property = _vala_calculator_set_property; + G_OBJECT_CLASS (klass)->finalize = calculator_finalize; + g_object_class_install_property (G_OBJECT_CLASS (klass), CALCULATOR_FUNCTIONS, g_param_spec_object ("functions", "functions", "functions", GEE_TYPE_LIST, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), CALCULATOR_ADVANCED_FUNCTIONS, g_param_spec_object ("advanced-functions", "advanced-functions", "advanced-functions", GEE_TYPE_LIST, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), CALCULATOR_VARIABLES, g_param_spec_object ("variables", "variables", "variables", GEE_TYPE_LIST, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), CALCULATOR_CANCEL, g_param_spec_object ("cancel", "cancel", "cancel", g_cancellable_get_type (), G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); +} + + +static void calculator_instance_init (Calculator * self) { + self->priv = CALCULATOR_GET_PRIVATE (self); +} + + +static void calculator_finalize (GObject* obj) { + Calculator * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CALCULATOR, Calculator); + _g_object_unref0 (self->priv->_cancel); + _calculator_thread_unref0 (self->priv->calc_thread); + _update_thread_unref0 (self->priv->update_thread); + _g_thread_unref0 (self->priv->thread); + _g_thread_unref0 (self->priv->thread2); + G_OBJECT_CLASS (calculator_parent_class)->finalize (obj); +} + + +GType calculator_get_type (void) { + static volatile gsize calculator_type_id__volatile = 0; + if (g_once_init_enter (&calculator_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (CalculatorClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) calculator_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Calculator), 0, (GInstanceInitFunc) calculator_instance_init, NULL }; + GType calculator_type_id; + calculator_type_id = g_type_register_static (G_TYPE_OBJECT, "Calculator", &g_define_type_info, 0); + g_once_init_leave (&calculator_type_id__volatile, calculator_type_id); + } + return calculator_type_id__volatile; +} + + +static void _vala_calculator_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { + Calculator * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_CALCULATOR, Calculator); + switch (property_id) { + case CALCULATOR_FUNCTIONS: + g_value_set_object (value, calculator_get_functions (self)); + break; + case CALCULATOR_ADVANCED_FUNCTIONS: + g_value_set_object (value, calculator_get_advanced_functions (self)); + break; + case CALCULATOR_VARIABLES: + g_value_set_object (value, calculator_get_variables (self)); + break; + case CALCULATOR_CANCEL: + g_value_set_object (value, calculator_get_cancel (self)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_calculator_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { + Calculator * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_CALCULATOR, Calculator); + switch (property_id) { + case CALCULATOR_FUNCTIONS: + calculator_set_functions (self, g_value_get_object (value)); + break; + case CALCULATOR_ADVANCED_FUNCTIONS: + calculator_set_advanced_functions (self, g_value_get_object (value)); + break; + case CALCULATOR_VARIABLES: + calculator_set_variables (self, g_value_get_object (value)); + break; + case CALCULATOR_CANCEL: + calculator_set_cancel (self, g_value_get_object (value)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { + if ((array != NULL) && (destroy_func != NULL)) { + int i; + for (i = 0; i < array_length; i = i + 1) { + if (((gpointer*) array)[i] != NULL) { + destroy_func (((gpointer*) array)[i]); + } + } + } +} + + +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { + _vala_array_destroy (array, array_length, destroy_func); + g_free (array); +} + + +static gint _vala_array_length (gpointer array) { + int length; + length = 0; + if (array) { + while (((gpointer*) array)[length]) { + length++; + } + } + return length; +} + + + diff -Nru nasc-0.2/build/src/config.c nasc-0.3/build/src/config.c --- nasc-0.2/build/src/config.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/config.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,21 @@ +/* config.c generated by valac 0.32.1, the Vala compiler + * generated from config.vala, do not modify */ + + +#include +#include +#include +#include + + + + +#define CONSTANTS_DATADIR "/usr/share/nasc" +#define CONSTANTS_PKGDATADIR "/usr/share/nasc" +#define CONSTANTS_GETTEXT_PACKAGE "nasc" +#define CONSTANTS_RELEASE_NAME "nasc" +#define CONSTANTS_VERSION "0.2" +#define CONSTANTS_VERSION_INFO "Release" + + + diff -Nru nasc-0.2/build/src/Controller.c nasc-0.3/build/src/Controller.c --- nasc-0.2/build/src/Controller.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/Controller.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,2846 @@ +/* Controller.c generated by valac 0.32.1, the Vala compiler + * generated from Controller.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_NASC_SHEET (nasc_sheet_get_type ()) +#define NASC_SHEET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SHEET, NascSheet)) +#define NASC_SHEET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SHEET, NascSheetClass)) +#define IS_NASC_SHEET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SHEET)) +#define IS_NASC_SHEET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SHEET)) +#define NASC_SHEET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SHEET, NascSheetClass)) + +typedef struct _NascSheet NascSheet; +typedef struct _NascSheetClass NascSheetClass; +typedef struct _NascSheetPrivate NascSheetPrivate; +#define _g_free0(var) (var = (g_free (var), NULL)) +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#define TYPE_CONTROLLER (controller_get_type ()) +#define CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTROLLER, Controller)) +#define CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTROLLER, ControllerClass)) +#define IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTROLLER)) +#define IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTROLLER)) +#define CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTROLLER, ControllerClass)) + +typedef struct _Controller Controller; +typedef struct _ControllerClass ControllerClass; +typedef struct _ControllerPrivate ControllerPrivate; + +#define TYPE_CALCULATOR (calculator_get_type ()) +#define CALCULATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CALCULATOR, Calculator)) +#define CALCULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CALCULATOR, CalculatorClass)) +#define IS_CALCULATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CALCULATOR)) +#define IS_CALCULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CALCULATOR)) +#define CALCULATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CALCULATOR, CalculatorClass)) + +typedef struct _Calculator Calculator; +typedef struct _CalculatorClass CalculatorClass; + +#define TYPE_INPUT_VIEW (input_view_get_type ()) +#define INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INPUT_VIEW, InputView)) +#define INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INPUT_VIEW, InputViewClass)) +#define IS_INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INPUT_VIEW)) +#define IS_INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INPUT_VIEW)) +#define INPUT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INPUT_VIEW, InputViewClass)) + +typedef struct _InputView InputView; +typedef struct _InputViewClass InputViewClass; + +#define TYPE_RESULT_VIEW (result_view_get_type ()) +#define RESULT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_VIEW, ResultView)) +#define RESULT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_VIEW, ResultViewClass)) +#define IS_RESULT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_VIEW)) +#define IS_RESULT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_VIEW)) +#define RESULT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_VIEW, ResultViewClass)) + +typedef struct _ResultView ResultView; +typedef struct _ResultViewClass ResultViewClass; + +#define TYPE_NASC_SETTINGS (nasc_settings_get_type ()) +#define NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SETTINGS, NascSettings)) +#define NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SETTINGS, NascSettingsClass)) +#define IS_NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SETTINGS)) +#define IS_NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SETTINGS)) +#define NASC_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SETTINGS, NascSettingsClass)) + +typedef struct _NascSettings NascSettings; +typedef struct _NascSettingsClass NascSettingsClass; +#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL))) +typedef struct _Block3Data Block3Data; +typedef struct _InputViewPrivate InputViewPrivate; +#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) + +#define TYPE_RESULT_LINE (result_line_get_type ()) +#define RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_LINE, ResultLine)) +#define RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_LINE, ResultLineClass)) +#define IS_RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_LINE)) +#define IS_RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_LINE)) +#define RESULT_LINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_LINE, ResultLineClass)) + +typedef struct _ResultLine ResultLine; +typedef struct _ResultLineClass ResultLineClass; +typedef struct _Block4Data Block4Data; +typedef struct _Block5Data Block5Data; +typedef struct _Block6Data Block6Data; +typedef struct _ControllerUpdateResultsData ControllerUpdateResultsData; +#define _g_string_free0(var) ((var == NULL) ? NULL : (var = (g_string_free (var, TRUE), NULL))) + +#define TYPE_NASC_ELEMENT (nasc_element_get_type ()) +#define NASC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_ELEMENT, NascElement)) +#define NASC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_ELEMENT, NascElementClass)) +#define IS_NASC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_ELEMENT)) +#define IS_NASC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_ELEMENT)) +#define NASC_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_ELEMENT, NascElementClass)) + +typedef struct _NascElement NascElement; +typedef struct _NascElementClass NascElementClass; + +#define TYPE_NASC_FUNCTION (nasc_function_get_type ()) +#define NASC_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_FUNCTION, NascFunction)) +#define NASC_FUNCTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_FUNCTION, NascFunctionClass)) +#define IS_NASC_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_FUNCTION)) +#define IS_NASC_FUNCTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_FUNCTION)) +#define NASC_FUNCTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_FUNCTION, NascFunctionClass)) + +typedef struct _NascFunction NascFunction; +typedef struct _NascFunctionClass NascFunctionClass; +typedef struct _NascElementPrivate NascElementPrivate; + +#define TYPE_NASC_VARIABEL (nasc_variabel_get_type ()) +#define NASC_VARIABEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_VARIABEL, NascVariabel)) +#define NASC_VARIABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_VARIABEL, NascVariabelClass)) +#define IS_NASC_VARIABEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_VARIABEL)) +#define IS_NASC_VARIABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_VARIABEL)) +#define NASC_VARIABEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_VARIABEL, NascVariabelClass)) + +typedef struct _NascVariabel NascVariabel; +typedef struct _NascVariabelClass NascVariabelClass; + +struct _NascSheet { + GraniteWidgetsSourceListItem parent_instance; + NascSheetPrivate * priv; + gchar* content; + gint index; +}; + +struct _NascSheetClass { + GraniteWidgetsSourceListItemClass parent_class; +}; + +struct _Controller { + GObject parent_instance; + ControllerPrivate * priv; + Calculator* calculator; +}; + +struct _ControllerClass { + GObjectClass parent_class; +}; + +struct _ControllerPrivate { + InputView* _input; + ResultView* _results; + NascSettings* _settings; + GRegex* digit_regex; + gint override_line; + gboolean calc_lock; + GeeArrayList* enable_calc; + GeeArrayList* sheet_list; + NascSheet* _actual_sheet; + GeeLinkedList* removal_list; + gchar* sheet_path; + gchar* _sheets; +}; + +struct _Block3Data { + int _ref_count_; + Controller* self; + InputView* input; + ResultView* results; +}; + +struct _InputView { + GtkBox parent_instance; + InputViewPrivate * priv; + GtkSourceBuffer* buffer; + GtkSourceView* source_view; + GeeArrayList* operators; + gboolean skip_change; + gboolean scroll_needed; +}; + +struct _InputViewClass { + GtkBoxClass parent_class; +}; + +struct _Block4Data { + int _ref_count_; + Controller* self; + gpointer _async_data_; +}; + +struct _Block5Data { + int _ref_count_; + Block4Data * _data4_; + gint i; +}; + +struct _Block6Data { + int _ref_count_; + Block5Data * _data5_; + gchar* _result_; + guint spinner_handle; +}; + +struct _ControllerUpdateResultsData { + int _state_; + GObject* _source_object_; + GAsyncResult* _res_; + GSimpleAsyncResult* _async_result; + Controller* self; + gint line; + gint total_lines; + gchar* text; + Block4Data* _data4_; + gboolean _tmp0_; + Calculator* _tmp1_; + GCancellable* _tmp2_; + GCancellable* _tmp3_; + gboolean _tmp4_; + Calculator* _tmp5_; + GCancellable* _tmp6_; + GCancellable* _tmp7_; + gchar** line_texts; + const gchar* _tmp8_; + gchar** _tmp9_; + gchar** _tmp10_; + gint line_texts_length1; + gint _line_texts_size_; + gint index; + ResultView* _tmp11_; + GeeArrayList* _tmp12_; + GeeArrayList* _tmp13_; + gint _tmp14_; + gint _tmp15_; + Block5Data* _data5_; + gint _tmp16_; + gboolean _tmp17_; + gint _tmp18_; + gint _tmp19_; + gint _tmp20_; + gboolean _tmp21_; + gchar** _tmp22_; + gint _tmp22__length1; + gint _tmp23_; + const gchar* _tmp24_; + gchar** _tmp25_; + gint _tmp25__length1; + gint _tmp26_; + const gchar* _tmp27_; + gboolean _tmp28_; + Block6Data* _data6_; + gchar* _tmp29_; + Calculator* _tmp30_; + gchar** _tmp31_; + gint _tmp31__length1; + gint _tmp32_; + const gchar* _tmp33_; + gint _tmp34_; + gchar* _tmp35_; + gchar* _tmp36_; + gchar* _tmp37_; + gchar* _tmp38_; + guint _tmp39_; + guint _tmp40_; + guint _tmp41_; + ResultView* _tmp42_; + Calculator* _tmp43_; + GCancellable* _tmp44_; + GCancellable* _tmp45_; + gboolean _tmp46_; + ResultView* _tmp47_; + gint _tmp48_; + const gchar* _tmp49_; + ResultView* _tmp50_; + gint _tmp51_; + gint _tmp52_; + gint _tmp53_; + gint _tmp54_; + ResultView* _tmp55_; + gint _tmp56_; + NascSheet* _tmp57_; + InputView* _tmp58_; + gchar* _tmp59_; +}; + +struct _NascElement { + GObject parent_instance; + NascElementPrivate * priv; + gint index; + gchar* name; + gchar* title; + gchar* category; + gchar* desc; +}; + +struct _NascElementClass { + GObjectClass parent_class; +}; + + +static gpointer nasc_sheet_parent_class = NULL; +static gpointer controller_parent_class = NULL; + +GType nasc_sheet_get_type (void) G_GNUC_CONST; +enum { + NASC_SHEET_DUMMY_PROPERTY +}; +NascSheet* nasc_sheet_new (const gchar* name, const gchar* content); +NascSheet* nasc_sheet_construct (GType object_type, const gchar* name, const gchar* content); +static void __lambda28_ (NascSheet* self, const gchar* s); +static void ___lambda28__granite_widgets_source_list_item_edited (GraniteWidgetsSourceListItem* _sender, const gchar* new_name, gpointer self); +static void nasc_sheet_finalize (GObject* obj); +GType controller_get_type (void) G_GNUC_CONST; +GType calculator_get_type (void) G_GNUC_CONST; +GType input_view_get_type (void) G_GNUC_CONST; +GType result_view_get_type (void) G_GNUC_CONST; +GType nasc_settings_get_type (void) G_GNUC_CONST; +#define CONTROLLER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CONTROLLER, ControllerPrivate)) +enum { + CONTROLLER_DUMMY_PROPERTY, + CONTROLLER_INPUT, + CONTROLLER_RESULTS, + CONTROLLER_SETTINGS, + CONTROLLER_ACTUAL_SHEET, + CONTROLLER_SHEETS_FILE +}; +#define NASC_SETTINGS_sheet_path "/.local/share/nasc/" +Controller* controller_new (InputView* input, ResultView* results); +Controller* controller_construct (GType object_type, InputView* input, ResultView* results); +static Block3Data* block3_data_ref (Block3Data* _data3_); +static void block3_data_unref (void * _userdata_); +static void controller_set_input (Controller* self, InputView* value); +static void controller_set_results (Controller* self, ResultView* value); +InputView* controller_get_input (Controller* self); +static void __lambda29_ (Controller* self, gint line, gint total_lines, const gchar* text); +static void controller_update_results (Controller* self, gint line, gint total_lines, const gchar* text, GAsyncReadyCallback _callback_, gpointer _user_data_); +static void controller_update_results_finish (Controller* self, GAsyncResult* _res_); +static void ___lambda29__input_view_changed_line (InputView* _sender, gint line, gint total_lines, const gchar* text, gpointer self); +static void __lambda33_ (Block3Data* _data3_, gint line, gint count); +void result_view_add_line (ResultView* self, gint line, gint count); +static void ___lambda33__input_view_line_added (InputView* _sender, gint starting, gint count, gpointer self); +static void __lambda34_ (Block3Data* _data3_, gint line, gint count); +void result_view_remove_line (ResultView* self, gint line, gint count); +static void ___lambda34__input_view_line_removed (InputView* _sender, gint starting, gint count, gpointer self); +static void __lambda35_ (Block3Data* _data3_, gint line); +GType result_line_get_type (void) G_GNUC_CONST; +GeeArrayList* result_view_get_result_list (ResultView* self); +void input_view_insert_variable (InputView* self, ResultLine* res); +static void ___lambda35__input_view_insert_result (InputView* _sender, gint line, gpointer self); +static void __lambda36_ (Block3Data* _data3_, gint line); +void result_view_update (ResultView* self, gint line, gboolean force); +static void ___lambda36__input_view_cursor_line_change (InputView* _sender, gint line, gpointer self); +ResultView* controller_get_results (Controller* self); +static void __lambda37_ (Block3Data* _data3_, ResultLine* res); +static void ___lambda37__result_view_insert_variable (ResultView* _sender, ResultLine* rw, gpointer self); +Calculator* calculator_new (void); +Calculator* calculator_construct (GType object_type); +#define NASC_SETTINGS_template_path "/usr/share/qalculate/nasc_template.sheets" +GeeArrayList* controller_get_sheets (Controller* self); +NascSettings* nasc_settings_get_instance (void); +gint nasc_settings_get_open_sheet (NascSettings* self); +void nasc_settings_set_open_sheet (NascSettings* self, gint value); +void controller_set_sheet (Controller* self, NascSheet* sheet); +gchar* controller_get_content (Controller* self); +gchar* input_view_get_replaced_content (InputView* self); +GeeLinkedList* controller_get_removal_list (Controller* self); +static void controller_update_results_data_free (gpointer _data); +static gboolean controller_update_results_co (ControllerUpdateResultsData* _data_); +static Block4Data* block4_data_ref (Block4Data* _data4_); +static void block4_data_unref (void * _userdata_); +GCancellable* calculator_get_cancel (Calculator* self); +static gboolean ___lambda30_ (Block4Data* _data4_); +static gboolean ____lambda30__gsource_func (gpointer self); +static Block5Data* block5_data_ref (Block5Data* _data5_); +static void block5_data_unref (void * _userdata_); +static gboolean controller_check_for_calculation (Controller* self, const gchar* input); +static Block6Data* block6_data_ref (Block6Data* _data6_); +static void block6_data_unref (void * _userdata_); +void calculator_calculate_store_variable (Calculator* self, const gchar* input, const gchar* variable, GAsyncReadyCallback _callback_, gpointer _user_data_); +gchar* calculator_calculate_store_variable_finish (Calculator* self, GAsyncResult* _res_); +#define NASC_SETTINGS_variable_names "nasc_line_" +static void ______lambda31_ (Block6Data* _data6_, GObject* obj, GAsyncResult* res); +static void _______lambda31__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self); +static gboolean ______lambda32_ (Block6Data* _data6_); +void result_view_show_spinner (ResultView* self, gint line); +static gboolean _______lambda32__gsource_func (gpointer self); +void result_view_hide_spinner (ResultView* self); +void result_view_set_line (ResultView* self, gint index, const gchar* _result_); +NascSheet* controller_get_actual_sheet (Controller* self); +static void controller_set_actual_sheet (Controller* self, NascSheet* value); +void input_view_process_new_content (InputView* self); +void controller_set_content (Controller* self, const gchar* content); +const gchar* controller_get_sheets_file (Controller* self); +#define NASC_SETTINGS_sheet_split_char "|§§|" +#define NASC_SETTINGS_name_split_char "-§-" +NascSheet* controller_add_sheet (Controller* self); +void controller_remove_sheet (Controller* self, NascSheet* sheet); +void controller_undo_removal (Controller* self); +void controller_store_sheet_content (Controller* self); +void controller_set_sheets_file (Controller* self, const gchar* value); +GType nasc_element_get_type (void) G_GNUC_CONST; +GType nasc_function_get_type (void) G_GNUC_CONST; +GeeList* calculator_get_functions (Calculator* self); +GType nasc_variabel_get_type (void) G_GNUC_CONST; +GeeList* calculator_get_variables (Calculator* self); +gchar* controller_get_export_text (Controller* self); +const gchar* result_line_get_value (ResultLine* self); +static void _vala_array_add1 (gchar*** array, int* length, int* size, gchar* value); +NascSettings* controller_get_settings (Controller* self); +static void controller_set_settings (Controller* self, NascSettings* value); +static void controller_finalize (GObject* obj); +static void _vala_controller_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec); +static void _vala_controller_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec); +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func); +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func); +static gint _vala_array_length (gpointer array); + + +static void __lambda28_ (NascSheet* self, const gchar* s) { + const gchar* _tmp0_ = NULL; + g_return_if_fail (s != NULL); + _tmp0_ = s; + granite_widgets_source_list_item_set_name ((GraniteWidgetsSourceListItem*) self, _tmp0_); +} + + +static void ___lambda28__granite_widgets_source_list_item_edited (GraniteWidgetsSourceListItem* _sender, const gchar* new_name, gpointer self) { + __lambda28_ ((NascSheet*) self, new_name); +} + + +NascSheet* nasc_sheet_construct (GType object_type, const gchar* name, const gchar* content) { + NascSheet * self = NULL; + const gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + GThemedIcon* _tmp3_ = NULL; + GThemedIcon* _tmp4_ = NULL; + g_return_val_if_fail (name != NULL, NULL); + g_return_val_if_fail (content != NULL, NULL); + self = (NascSheet*) granite_widgets_source_list_item_construct (object_type, ""); + granite_widgets_source_list_item_set_editable ((GraniteWidgetsSourceListItem*) self, TRUE); + _tmp0_ = name; + granite_widgets_source_list_item_set_name ((GraniteWidgetsSourceListItem*) self, _tmp0_); + _tmp1_ = content; + _tmp2_ = g_strdup (_tmp1_); + _g_free0 (self->content); + self->content = _tmp2_; + _tmp3_ = (GThemedIcon*) g_themed_icon_new ("document"); + _tmp4_ = _tmp3_; + granite_widgets_source_list_item_set_icon ((GraniteWidgetsSourceListItem*) self, (GIcon*) _tmp4_); + _g_object_unref0 (_tmp4_); + g_signal_connect_object ((GraniteWidgetsSourceListItem*) self, "edited", (GCallback) ___lambda28__granite_widgets_source_list_item_edited, self, 0); + return self; +} + + +NascSheet* nasc_sheet_new (const gchar* name, const gchar* content) { + return nasc_sheet_construct (TYPE_NASC_SHEET, name, content); +} + + +static void nasc_sheet_class_init (NascSheetClass * klass) { + nasc_sheet_parent_class = g_type_class_peek_parent (klass); + G_OBJECT_CLASS (klass)->finalize = nasc_sheet_finalize; +} + + +static void nasc_sheet_instance_init (NascSheet * self) { +} + + +static void nasc_sheet_finalize (GObject* obj) { + NascSheet * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_NASC_SHEET, NascSheet); + _g_free0 (self->content); + G_OBJECT_CLASS (nasc_sheet_parent_class)->finalize (obj); +} + + +GType nasc_sheet_get_type (void) { + static volatile gsize nasc_sheet_type_id__volatile = 0; + if (g_once_init_enter (&nasc_sheet_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascSheetClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_sheet_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascSheet), 0, (GInstanceInitFunc) nasc_sheet_instance_init, NULL }; + GType nasc_sheet_type_id; + nasc_sheet_type_id = g_type_register_static (GRANITE_WIDGETS_SOURCE_LIST_TYPE_ITEM, "NascSheet", &g_define_type_info, 0); + g_once_init_leave (&nasc_sheet_type_id__volatile, nasc_sheet_type_id); + } + return nasc_sheet_type_id__volatile; +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static Block3Data* block3_data_ref (Block3Data* _data3_) { + g_atomic_int_inc (&_data3_->_ref_count_); + return _data3_; +} + + +static void block3_data_unref (void * _userdata_) { + Block3Data* _data3_; + _data3_ = (Block3Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data3_->_ref_count_)) { + Controller* self; + self = _data3_->self; + _g_object_unref0 (_data3_->input); + _g_object_unref0 (_data3_->results); + _g_object_unref0 (self); + g_slice_free (Block3Data, _data3_); + } +} + + +static void __lambda29_ (Controller* self, gint line, gint total_lines, const gchar* text) { + gint _tmp0_ = 0; + gint _tmp1_ = 0; + const gchar* _tmp2_ = NULL; + g_return_if_fail (text != NULL); + _tmp0_ = line; + _tmp1_ = total_lines; + _tmp2_ = text; + controller_update_results (self, _tmp0_, _tmp1_, _tmp2_, NULL, NULL); +} + + +static void ___lambda29__input_view_changed_line (InputView* _sender, gint line, gint total_lines, const gchar* text, gpointer self) { + __lambda29_ ((Controller*) self, line, total_lines, text); +} + + +static void __lambda33_ (Block3Data* _data3_, gint line, gint count) { + Controller* self; + ResultView* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + self = _data3_->self; + _tmp0_ = _data3_->results; + _tmp1_ = line; + _tmp2_ = count; + result_view_add_line (_tmp0_, _tmp1_, _tmp2_); +} + + +static void ___lambda33__input_view_line_added (InputView* _sender, gint starting, gint count, gpointer self) { + __lambda33_ (self, starting, count); +} + + +static void __lambda34_ (Block3Data* _data3_, gint line, gint count) { + Controller* self; + ResultView* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + self = _data3_->self; + _tmp0_ = _data3_->results; + _tmp1_ = line; + _tmp2_ = count; + result_view_remove_line (_tmp0_, _tmp1_, _tmp2_); +} + + +static void ___lambda34__input_view_line_removed (InputView* _sender, gint starting, gint count, gpointer self) { + __lambda34_ (self, starting, count); +} + + +static void __lambda35_ (Block3Data* _data3_, gint line) { + Controller* self; + gint _tmp0_ = 0; + ResultView* _tmp1_ = NULL; + GeeArrayList* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + ResultLine* res = NULL; + ResultView* _tmp6_ = NULL; + GeeArrayList* _tmp7_ = NULL; + GeeArrayList* _tmp8_ = NULL; + gint _tmp9_ = 0; + gpointer _tmp10_ = NULL; + ResultLine* _tmp11_ = NULL; + InputView* _tmp12_ = NULL; + ResultLine* _tmp13_ = NULL; + self = _data3_->self; + _tmp0_ = line; + _tmp1_ = _data3_->results; + _tmp2_ = result_view_get_result_list (_tmp1_); + _tmp3_ = _tmp2_; + _tmp4_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp3_); + _tmp5_ = _tmp4_; + if (_tmp0_ >= _tmp5_) { + return; + } + _tmp6_ = _data3_->results; + _tmp7_ = result_view_get_result_list (_tmp6_); + _tmp8_ = _tmp7_; + _tmp9_ = line; + _tmp10_ = gee_abstract_list_get ((GeeAbstractList*) _tmp8_, _tmp9_); + res = (ResultLine*) _tmp10_; + _tmp11_ = res; + if (_tmp11_ == NULL) { + _g_object_unref0 (res); + return; + } + _tmp12_ = _data3_->input; + _tmp13_ = res; + input_view_insert_variable (_tmp12_, _tmp13_); + _g_object_unref0 (res); +} + + +static void ___lambda35__input_view_insert_result (InputView* _sender, gint line, gpointer self) { + __lambda35_ (self, line); +} + + +static void __lambda36_ (Block3Data* _data3_, gint line) { + Controller* self; + ResultView* _tmp0_ = NULL; + gint _tmp1_ = 0; + self = _data3_->self; + _tmp0_ = _data3_->results; + _tmp1_ = line; + result_view_update (_tmp0_, _tmp1_, TRUE); +} + + +static void ___lambda36__input_view_cursor_line_change (InputView* _sender, gint line, gpointer self) { + __lambda36_ (self, line); +} + + +static void __lambda37_ (Block3Data* _data3_, ResultLine* res) { + Controller* self; + InputView* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + ResultLine* _tmp2_ = NULL; + InputView* _tmp3_ = NULL; + self = _data3_->self; + g_return_if_fail (res != NULL); + _tmp0_ = _data3_->input; + _tmp0_->skip_change = TRUE; + _tmp1_ = _data3_->input; + _tmp2_ = res; + input_view_insert_variable (_tmp1_, _tmp2_); + _tmp3_ = _data3_->input; + _tmp3_->skip_change = FALSE; +} + + +static void ___lambda37__result_view_insert_variable (ResultView* _sender, ResultLine* rw, gpointer self) { + __lambda37_ (self, rw); +} + + +Controller* controller_construct (GType object_type, InputView* input, ResultView* results) { + Controller * self = NULL; + Block3Data* _data3_; + InputView* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + ResultView* _tmp3_ = NULL; + InputView* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + GeeArrayList* _tmp6_ = NULL; + GeeLinkedList* _tmp7_ = NULL; + GeeArrayList* _tmp8_ = NULL; + InputView* _tmp12_ = NULL; + ResultView* _tmp13_ = NULL; + InputView* _tmp14_ = NULL; + InputView* _tmp15_ = NULL; + InputView* _tmp16_ = NULL; + InputView* _tmp17_ = NULL; + InputView* _tmp18_ = NULL; + ResultView* _tmp19_ = NULL; + Calculator* _tmp20_ = NULL; + GFile* file = NULL; + const gchar* _tmp21_ = NULL; + GFile* _tmp22_ = NULL; + GFile* _tmp23_ = NULL; + gboolean _tmp24_ = FALSE; + GeeArrayList* _tmp39_ = NULL; + GeeArrayList* _tmp40_ = NULL; + NascSettings* _tmp41_ = NULL; + NascSettings* _tmp42_ = NULL; + gint _tmp43_ = 0; + gint _tmp44_ = 0; + GeeArrayList* _tmp45_ = NULL; + gint _tmp46_ = 0; + gint _tmp47_ = 0; + gboolean _tmp48_ = FALSE; + GeeArrayList* _tmp54_ = NULL; + NascSettings* _tmp55_ = NULL; + NascSettings* _tmp56_ = NULL; + gint _tmp57_ = 0; + gint _tmp58_ = 0; + gpointer _tmp59_ = NULL; + NascSheet* _tmp60_ = NULL; + GError * _inner_error_ = NULL; + g_return_val_if_fail (input != NULL, NULL); + g_return_val_if_fail (results != NULL, NULL); + _data3_ = g_slice_new0 (Block3Data); + _data3_->_ref_count_ = 1; + _tmp0_ = input; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (_data3_->input); + _data3_->input = _tmp1_; + _tmp2_ = results; + _tmp3_ = _g_object_ref0 (_tmp2_); + _g_object_unref0 (_data3_->results); + _data3_->results = _tmp3_; + self = (Controller*) g_object_new (object_type, NULL); + _data3_->self = g_object_ref (self); + _tmp4_ = _data3_->input; + _tmp5_ = _tmp4_->operators; + _tmp6_ = _g_object_ref0 (_tmp5_); + _g_object_unref0 (self->priv->enable_calc); + self->priv->enable_calc = _tmp6_; + _tmp7_ = gee_linked_list_new (TYPE_NASC_SHEET, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _g_object_unref0 (self->priv->removal_list); + self->priv->removal_list = _tmp7_; + _tmp8_ = self->priv->enable_calc; + gee_abstract_collection_add ((GeeAbstractCollection*) _tmp8_, " to "); + { + GRegex* _tmp9_ = NULL; + GRegex* _tmp10_ = NULL; + GRegex* _tmp11_ = NULL; + _tmp10_ = g_regex_new ("\\d", G_REGEX_OPTIMIZE, 0, &_inner_error_); + _tmp9_ = _tmp10_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch7_g_regex_error; + } + block3_data_unref (_data3_); + _data3_ = NULL; + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp11_ = _tmp9_; + _tmp9_ = NULL; + _g_regex_unref0 (self->priv->digit_regex); + self->priv->digit_regex = _tmp11_; + _g_regex_unref0 (_tmp9_); + } + goto __finally7; + __catch7_g_regex_error: + { + GError* ex = NULL; + ex = _inner_error_; + _inner_error_ = NULL; + _g_error_free0 (ex); + } + __finally7: + if (G_UNLIKELY (_inner_error_ != NULL)) { + block3_data_unref (_data3_); + _data3_ = NULL; + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp12_ = _data3_->input; + controller_set_input (self, _tmp12_); + _tmp13_ = _data3_->results; + controller_set_results (self, _tmp13_); + _tmp14_ = self->priv->_input; + g_signal_connect_object (_tmp14_, "changed-line", (GCallback) ___lambda29__input_view_changed_line, self, 0); + _tmp15_ = self->priv->_input; + g_signal_connect_data (_tmp15_, "line-added", (GCallback) ___lambda33__input_view_line_added, block3_data_ref (_data3_), (GClosureNotify) block3_data_unref, 0); + _tmp16_ = self->priv->_input; + g_signal_connect_data (_tmp16_, "line-removed", (GCallback) ___lambda34__input_view_line_removed, block3_data_ref (_data3_), (GClosureNotify) block3_data_unref, 0); + _tmp17_ = self->priv->_input; + g_signal_connect_data (_tmp17_, "insert-result", (GCallback) ___lambda35__input_view_insert_result, block3_data_ref (_data3_), (GClosureNotify) block3_data_unref, 0); + _tmp18_ = self->priv->_input; + g_signal_connect_data (_tmp18_, "cursor-line-change", (GCallback) ___lambda36__input_view_cursor_line_change, block3_data_ref (_data3_), (GClosureNotify) block3_data_unref, 0); + _tmp19_ = self->priv->_results; + g_signal_connect_data (_tmp19_, "insert-variable", (GCallback) ___lambda37__result_view_insert_variable, block3_data_ref (_data3_), (GClosureNotify) block3_data_unref, 0); + _tmp20_ = calculator_new (); + _g_object_unref0 (self->calculator); + self->calculator = _tmp20_; + g_debug ("Controller.vala:139: loading sheets"); + _tmp21_ = self->priv->sheet_path; + _tmp22_ = g_file_new_for_path (_tmp21_); + file = _tmp22_; + _tmp23_ = file; + _tmp24_ = g_file_query_exists (_tmp23_, NULL); + if (!_tmp24_) { + { + GFile* dir = NULL; + const gchar* _tmp25_ = NULL; + gchar* _tmp26_ = NULL; + gchar* _tmp27_ = NULL; + GFile* _tmp28_ = NULL; + GFile* _tmp29_ = NULL; + GFile* _tmp30_ = NULL; + gboolean _tmp31_ = FALSE; + GFile* template_file = NULL; + GFile* _tmp33_ = NULL; + GFile* _tmp34_ = NULL; + GFile* _tmp35_ = NULL; + _tmp25_ = g_get_home_dir (); + _tmp26_ = g_strconcat (_tmp25_, NASC_SETTINGS_sheet_path, NULL); + _tmp27_ = _tmp26_; + _tmp28_ = g_file_new_for_path (_tmp27_); + _tmp29_ = _tmp28_; + _g_free0 (_tmp27_); + dir = _tmp29_; + _tmp30_ = dir; + _tmp31_ = g_file_query_exists (_tmp30_, NULL); + if (!_tmp31_) { + GFile* _tmp32_ = NULL; + _tmp32_ = dir; + g_file_make_directory (_tmp32_, NULL, &_inner_error_); + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (dir); + goto __catch8_g_error; + } + } + _tmp33_ = g_file_new_for_path (NASC_SETTINGS_template_path); + template_file = _tmp33_; + _tmp34_ = template_file; + _tmp35_ = file; + g_file_copy (_tmp34_, _tmp35_, G_FILE_COPY_NONE, NULL, NULL, NULL, &_inner_error_); + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (template_file); + _g_object_unref0 (dir); + goto __catch8_g_error; + } + _g_object_unref0 (template_file); + _g_object_unref0 (dir); + } + goto __finally8; + __catch8_g_error: + { + GError* e = NULL; + FILE* _tmp36_ = NULL; + GError* _tmp37_ = NULL; + const gchar* _tmp38_ = NULL; + e = _inner_error_; + _inner_error_ = NULL; + _tmp36_ = stderr; + _tmp37_ = e; + _tmp38_ = _tmp37_->message; + fprintf (_tmp36_, "Error: %s\n", _tmp38_); + _g_error_free0 (e); + } + __finally8: + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (file); + block3_data_unref (_data3_); + _data3_ = NULL; + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + } + g_debug ("Controller.vala:159: getting sheets"); + _tmp39_ = controller_get_sheets (self); + _tmp40_ = _tmp39_; + _g_object_unref0 (_tmp40_); + _tmp41_ = nasc_settings_get_instance (); + _tmp42_ = _tmp41_; + _tmp43_ = nasc_settings_get_open_sheet (_tmp42_); + _tmp44_ = _tmp43_; + _tmp45_ = self->priv->sheet_list; + _tmp46_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp45_); + _tmp47_ = _tmp46_; + _tmp48_ = _tmp44_ >= _tmp47_; + _g_object_unref0 (_tmp42_); + if (_tmp48_) { + NascSettings* _tmp49_ = NULL; + NascSettings* _tmp50_ = NULL; + GeeArrayList* _tmp51_ = NULL; + gint _tmp52_ = 0; + gint _tmp53_ = 0; + _tmp49_ = nasc_settings_get_instance (); + _tmp50_ = _tmp49_; + _tmp51_ = self->priv->sheet_list; + _tmp52_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp51_); + _tmp53_ = _tmp52_; + nasc_settings_set_open_sheet (_tmp50_, _tmp53_ - 1); + _g_object_unref0 (_tmp50_); + } + g_debug ("Controller.vala:166: set last sheet"); + _tmp54_ = self->priv->sheet_list; + _tmp55_ = nasc_settings_get_instance (); + _tmp56_ = _tmp55_; + _tmp57_ = nasc_settings_get_open_sheet (_tmp56_); + _tmp58_ = _tmp57_; + _tmp59_ = gee_abstract_list_get ((GeeAbstractList*) _tmp54_, _tmp58_); + _tmp60_ = (NascSheet*) _tmp59_; + controller_set_sheet (self, _tmp60_); + _g_object_unref0 (_tmp60_); + _g_object_unref0 (_tmp56_); + _g_object_unref0 (file); + block3_data_unref (_data3_); + _data3_ = NULL; + return self; +} + + +Controller* controller_new (InputView* input, ResultView* results) { + return controller_construct (TYPE_CONTROLLER, input, results); +} + + +gchar* controller_get_content (Controller* self) { + gchar* result = NULL; + InputView* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_input; + _tmp1_ = input_view_get_replaced_content (_tmp0_); + result = _tmp1_; + return result; +} + + +GeeLinkedList* controller_get_removal_list (Controller* self) { + GeeLinkedList* result = NULL; + GeeLinkedList* _tmp0_ = NULL; + GeeLinkedList* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->removal_list; + _tmp1_ = _g_object_ref0 (_tmp0_); + result = _tmp1_; + return result; +} + + +static void controller_update_results_data_free (gpointer _data) { + ControllerUpdateResultsData* _data_; + _data_ = _data; + _g_free0 (_data_->text); + _g_object_unref0 (_data_->self); + g_slice_free (ControllerUpdateResultsData, _data_); +} + + +static void controller_update_results (Controller* self, gint line, gint total_lines, const gchar* text, GAsyncReadyCallback _callback_, gpointer _user_data_) { + ControllerUpdateResultsData* _data_; + Controller* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + const gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + _data_ = g_slice_new0 (ControllerUpdateResultsData); + _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, controller_update_results); + g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, controller_update_results_data_free); + _tmp0_ = _g_object_ref0 (self); + _data_->self = _tmp0_; + _tmp1_ = line; + _data_->line = _tmp1_; + _tmp2_ = total_lines; + _data_->total_lines = _tmp2_; + _tmp3_ = text; + _tmp4_ = g_strdup (_tmp3_); + _g_free0 (_data_->text); + _data_->text = _tmp4_; + controller_update_results_co (_data_); +} + + +static void controller_update_results_finish (Controller* self, GAsyncResult* _res_) { + ControllerUpdateResultsData* _data_; + _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_)); +} + + +static Block4Data* block4_data_ref (Block4Data* _data4_) { + g_atomic_int_inc (&_data4_->_ref_count_); + return _data4_; +} + + +static void block4_data_unref (void * _userdata_) { + Block4Data* _data4_; + _data4_ = (Block4Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data4_->_ref_count_)) { + Controller* self; + self = _data4_->self; + _g_object_unref0 (self); + g_slice_free (Block4Data, _data4_); + } +} + + +static gboolean ___lambda30_ (Block4Data* _data4_) { + Controller* self; + gboolean result = FALSE; + self = _data4_->self; + controller_update_results_co (_data4_->_async_data_); + result = FALSE; + return result; +} + + +static gboolean ____lambda30__gsource_func (gpointer self) { + gboolean result; + result = ___lambda30_ (self); + return result; +} + + +static Block5Data* block5_data_ref (Block5Data* _data5_) { + g_atomic_int_inc (&_data5_->_ref_count_); + return _data5_; +} + + +static void block5_data_unref (void * _userdata_) { + Block5Data* _data5_; + _data5_ = (Block5Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data5_->_ref_count_)) { + Controller* self; + self = _data5_->_data4_->self; + block4_data_unref (_data5_->_data4_); + _data5_->_data4_ = NULL; + g_slice_free (Block5Data, _data5_); + } +} + + +static Block6Data* block6_data_ref (Block6Data* _data6_) { + g_atomic_int_inc (&_data6_->_ref_count_); + return _data6_; +} + + +static void block6_data_unref (void * _userdata_) { + Block6Data* _data6_; + _data6_ = (Block6Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data6_->_ref_count_)) { + Controller* self; + self = _data6_->_data5_->_data4_->self; + _g_free0 (_data6_->_result_); + block5_data_unref (_data6_->_data5_); + _data6_->_data5_ = NULL; + g_slice_free (Block6Data, _data6_); + } +} + + +static void ______lambda31_ (Block6Data* _data6_, GObject* obj, GAsyncResult* res) { + Block5Data* _data5_; + Block4Data* _data4_; + Controller* self; + Calculator* _tmp0_ = NULL; + GAsyncResult* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + _data5_ = _data6_->_data5_; + _data4_ = _data5_->_data4_; + self = _data4_->self; + g_return_if_fail (res != NULL); + _tmp0_ = self->calculator; + _tmp1_ = res; + _tmp2_ = calculator_calculate_store_variable_finish (_tmp0_, _tmp1_); + _g_free0 (_data6_->_result_); + _data6_->_result_ = _tmp2_; + controller_update_results_co (_data4_->_async_data_); +} + + +static void _______lambda31__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self) { + ______lambda31_ (self, source_object, res); + block6_data_unref (self); +} + + +static gboolean ______lambda32_ (Block6Data* _data6_) { + Block5Data* _data5_; + Block4Data* _data4_; + Controller* self; + gboolean result = FALSE; + ResultView* _tmp0_ = NULL; + gint _tmp1_ = 0; + _data5_ = _data6_->_data5_; + _data4_ = _data5_->_data4_; + self = _data4_->self; + _data6_->spinner_handle = (guint) 0; + _tmp0_ = self->priv->_results; + _tmp1_ = _data5_->i; + result_view_show_spinner (_tmp0_, _tmp1_); + result = FALSE; + return result; +} + + +static gboolean _______lambda32__gsource_func (gpointer self) { + gboolean result; + result = ______lambda32_ (self); + return result; +} + + +static gboolean controller_update_results_co (ControllerUpdateResultsData* _data_) { + switch (_data_->_state_) { + case 0: + goto _state_0; + case 1: + goto _state_1; + case 2: + goto _state_2; + default: + g_assert_not_reached (); + } + _state_0: + _data_->_data4_ = g_slice_new0 (Block4Data); + _data_->_data4_->_ref_count_ = 1; + _data_->_data4_->self = g_object_ref (_data_->self); + _data_->_data4_->_async_data_ = _data_; + _data_->_tmp0_ = FALSE; + _data_->_tmp0_ = _data_->self->priv->calc_lock; + if (_data_->_tmp0_) { + _data_->_tmp1_ = NULL; + _data_->_tmp1_ = _data_->self->calculator; + _data_->_tmp2_ = NULL; + _data_->_tmp2_ = calculator_get_cancel (_data_->_tmp1_); + _data_->_tmp3_ = NULL; + _data_->_tmp3_ = _data_->_tmp2_; + g_cancellable_cancel (_data_->_tmp3_); + } + while (TRUE) { + _data_->_tmp4_ = FALSE; + _data_->_tmp4_ = _data_->self->priv->calc_lock; + if (!_data_->_tmp4_) { + break; + } + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 10, ____lambda30__gsource_func, block4_data_ref (_data_->_data4_), block4_data_unref); + _data_->_state_ = 1; + return FALSE; + _state_1: + ; + } + _data_->self->priv->calc_lock = TRUE; + _data_->_tmp5_ = NULL; + _data_->_tmp5_ = _data_->self->calculator; + _data_->_tmp6_ = NULL; + _data_->_tmp6_ = calculator_get_cancel (_data_->_tmp5_); + _data_->_tmp7_ = NULL; + _data_->_tmp7_ = _data_->_tmp6_; + g_cancellable_reset (_data_->_tmp7_); + _data_->_tmp8_ = NULL; + _data_->_tmp8_ = _data_->text; + _data_->_tmp9_ = NULL; + _data_->_tmp10_ = NULL; + _data_->_tmp10_ = _data_->_tmp9_ = g_strsplit (_data_->_tmp8_, "\n", 0); + _data_->line_texts_length1 = 0; + _data_->_line_texts_size_ = 0; + _data_->line_texts = _data_->_tmp10_; + _data_->line_texts_length1 = _vala_array_length (_data_->_tmp9_); + _data_->_line_texts_size_ = _data_->line_texts_length1; + _data_->index = 0; + _data_->_tmp11_ = NULL; + _data_->_tmp11_ = _data_->self->priv->_results; + _data_->_tmp12_ = NULL; + _data_->_tmp12_ = result_view_get_result_list (_data_->_tmp11_); + _data_->_tmp13_ = NULL; + _data_->_tmp13_ = _data_->_tmp12_; + _data_->_tmp14_ = 0; + _data_->_tmp14_ = gee_abstract_collection_get_size ((GeeCollection*) _data_->_tmp13_); + _data_->_tmp15_ = 0; + _data_->_tmp15_ = _data_->_tmp14_; + _data_->total_lines = _data_->_tmp15_; + { + _data_->_data5_ = g_slice_new0 (Block5Data); + _data_->_data5_->_ref_count_ = 1; + _data_->_data5_->_data4_ = block4_data_ref (_data_->_data4_); + _data_->_tmp16_ = 0; + _data_->_tmp16_ = _data_->line; + _data_->_data5_->i = _data_->_tmp16_; + { + _data_->_tmp17_ = TRUE; + while (TRUE) { + if (!_data_->_tmp17_) { + _data_->_tmp18_ = 0; + _data_->_tmp18_ = _data_->_data5_->i; + _data_->_data5_->i = _data_->_tmp18_ + 1; + } + _data_->_tmp17_ = FALSE; + _data_->_tmp19_ = 0; + _data_->_tmp19_ = _data_->_data5_->i; + _data_->_tmp20_ = 0; + _data_->_tmp20_ = _data_->total_lines; + if (!(_data_->_tmp19_ < _data_->_tmp20_)) { + break; + } + _data_->_tmp22_ = NULL; + _data_->_tmp22__length1 = 0; + _data_->_tmp22_ = _data_->line_texts; + _data_->_tmp22__length1 = _data_->line_texts_length1; + _data_->_tmp23_ = 0; + _data_->_tmp23_ = _data_->index; + _data_->_tmp24_ = NULL; + _data_->_tmp24_ = _data_->_tmp22_[_data_->_tmp23_]; + if (_data_->_tmp24_ != NULL) { + _data_->_tmp25_ = NULL; + _data_->_tmp25__length1 = 0; + _data_->_tmp25_ = _data_->line_texts; + _data_->_tmp25__length1 = _data_->line_texts_length1; + _data_->_tmp26_ = 0; + _data_->_tmp26_ = _data_->index; + _data_->_tmp27_ = NULL; + _data_->_tmp27_ = _data_->_tmp25_[_data_->_tmp26_]; + _data_->_tmp28_ = FALSE; + _data_->_tmp28_ = controller_check_for_calculation (_data_->self, _data_->_tmp27_); + _data_->_tmp21_ = _data_->_tmp28_; + } else { + _data_->_tmp21_ = FALSE; + } + if (_data_->_tmp21_) { + _data_->_data6_ = g_slice_new0 (Block6Data); + _data_->_data6_->_ref_count_ = 1; + _data_->_data6_->_data5_ = block5_data_ref (_data_->_data5_); + _data_->_tmp29_ = NULL; + _data_->_tmp29_ = g_strdup (""); + _data_->_data6_->_result_ = _data_->_tmp29_; + _data_->_tmp30_ = NULL; + _data_->_tmp30_ = _data_->self->calculator; + _data_->_tmp31_ = NULL; + _data_->_tmp31__length1 = 0; + _data_->_tmp31_ = _data_->line_texts; + _data_->_tmp31__length1 = _data_->line_texts_length1; + _data_->_tmp32_ = 0; + _data_->_tmp32_ = _data_->index; + _data_->_tmp33_ = NULL; + _data_->_tmp33_ = _data_->_tmp31_[_data_->_tmp32_]; + _data_->_tmp34_ = 0; + _data_->_tmp34_ = _data_->_data5_->i; + _data_->_tmp35_ = NULL; + _data_->_tmp35_ = g_strdup_printf ("%d", _data_->_tmp34_); + _data_->_tmp36_ = NULL; + _data_->_tmp36_ = _data_->_tmp35_; + _data_->_tmp37_ = NULL; + _data_->_tmp37_ = g_strconcat (NASC_SETTINGS_variable_names, _data_->_tmp36_, NULL); + _data_->_tmp38_ = NULL; + _data_->_tmp38_ = _data_->_tmp37_; + calculator_calculate_store_variable (_data_->_tmp30_, _data_->_tmp33_, _data_->_tmp38_, _______lambda31__gasync_ready_callback, block6_data_ref (_data_->_data6_)); + _g_free0 (_data_->_tmp38_); + _g_free0 (_data_->_tmp36_); + _data_->_data6_->spinner_handle = (guint) 0; + _data_->_tmp39_ = 0U; + _data_->_tmp39_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 80, _______lambda32__gsource_func, block6_data_ref (_data_->_data6_), block6_data_unref); + _data_->_data6_->spinner_handle = _data_->_tmp39_; + _data_->_state_ = 2; + return FALSE; + _state_2: + ; + _data_->_tmp40_ = 0U; + _data_->_tmp40_ = _data_->_data6_->spinner_handle; + if (_data_->_tmp40_ > ((guint) 0)) { + _data_->_tmp41_ = 0U; + _data_->_tmp41_ = _data_->_data6_->spinner_handle; + g_source_remove (_data_->_tmp41_); + } else { + _data_->_tmp42_ = NULL; + _data_->_tmp42_ = _data_->self->priv->_results; + result_view_hide_spinner (_data_->_tmp42_); + } + _data_->_tmp43_ = NULL; + _data_->_tmp43_ = _data_->self->calculator; + _data_->_tmp44_ = NULL; + _data_->_tmp44_ = calculator_get_cancel (_data_->_tmp43_); + _data_->_tmp45_ = NULL; + _data_->_tmp45_ = _data_->_tmp44_; + _data_->_tmp46_ = FALSE; + _data_->_tmp46_ = g_cancellable_is_cancelled (_data_->_tmp45_); + if (_data_->_tmp46_) { + _data_->self->priv->calc_lock = FALSE; + block6_data_unref (_data_->_data6_); + _data_->_data6_ = NULL; + block5_data_unref (_data_->_data5_); + _data_->_data5_ = NULL; + _data_->line_texts = (_vala_array_free (_data_->line_texts, _data_->line_texts_length1, (GDestroyNotify) g_free), NULL); + block4_data_unref (_data_->_data4_); + _data_->_data4_ = NULL; + if (_data_->_state_ == 0) { + g_simple_async_result_complete_in_idle (_data_->_async_result); + } else { + g_simple_async_result_complete (_data_->_async_result); + } + g_object_unref (_data_->_async_result); + return FALSE; + } + _data_->_tmp47_ = NULL; + _data_->_tmp47_ = _data_->self->priv->_results; + _data_->_tmp48_ = 0; + _data_->_tmp48_ = _data_->_data5_->i; + _data_->_tmp49_ = NULL; + _data_->_tmp49_ = _data_->_data6_->_result_; + result_view_set_line (_data_->_tmp47_, _data_->_tmp48_, _data_->_tmp49_); + block6_data_unref (_data_->_data6_); + _data_->_data6_ = NULL; + } else { + _data_->_tmp50_ = NULL; + _data_->_tmp50_ = _data_->self->priv->_results; + _data_->_tmp51_ = 0; + _data_->_tmp51_ = _data_->_data5_->i; + result_view_set_line (_data_->_tmp50_, _data_->_tmp51_, ""); + } + _data_->_tmp52_ = 0; + _data_->_tmp52_ = _data_->index; + _data_->index = _data_->_tmp52_ + 1; + } + } + block5_data_unref (_data_->_data5_); + _data_->_data5_ = NULL; + } + _data_->_tmp53_ = 0; + _data_->_tmp53_ = _data_->self->priv->override_line; + if (_data_->_tmp53_ > 0) { + _data_->_tmp54_ = 0; + _data_->_tmp54_ = _data_->self->priv->override_line; + _data_->line = _data_->_tmp54_; + _data_->self->priv->override_line = -1; + } + _data_->_tmp55_ = NULL; + _data_->_tmp55_ = _data_->self->priv->_results; + _data_->_tmp56_ = 0; + _data_->_tmp56_ = _data_->line; + result_view_update (_data_->_tmp55_, _data_->_tmp56_, FALSE); + _data_->_tmp57_ = NULL; + _data_->_tmp57_ = _data_->self->priv->_actual_sheet; + _data_->_tmp58_ = NULL; + _data_->_tmp58_ = _data_->self->priv->_input; + _data_->_tmp59_ = NULL; + _data_->_tmp59_ = input_view_get_replaced_content (_data_->_tmp58_); + _g_free0 (_data_->_tmp57_->content); + _data_->_tmp57_->content = _data_->_tmp59_; + _data_->self->priv->calc_lock = FALSE; + _data_->line_texts = (_vala_array_free (_data_->line_texts, _data_->line_texts_length1, (GDestroyNotify) g_free), NULL); + block4_data_unref (_data_->_data4_); + _data_->_data4_ = NULL; + if (_data_->_state_ == 0) { + g_simple_async_result_complete_in_idle (_data_->_async_result); + } else { + g_simple_async_result_complete (_data_->_async_result); + } + g_object_unref (_data_->_async_result); + return FALSE; +} + + +void controller_set_sheet (Controller* self, NascSheet* sheet) { + NascSheet* _tmp0_ = NULL; + gchar* content = NULL; + NascSheet* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + InputView* _tmp6_ = NULL; + GtkSourceBuffer* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + InputView* _tmp9_ = NULL; + GtkTextIter iter = {0}; + InputView* _tmp10_ = NULL; + GtkSourceView* _tmp11_ = NULL; + GtkTextBuffer* _tmp12_ = NULL; + GtkTextBuffer* _tmp13_ = NULL; + InputView* _tmp14_ = NULL; + GtkSourceView* _tmp15_ = NULL; + GtkTextBuffer* _tmp16_ = NULL; + GtkTextBuffer* _tmp17_ = NULL; + gint _tmp18_ = 0; + gint _tmp19_ = 0; + GtkTextIter _tmp20_ = {0}; + gint _tmp21_ = 0; + InputView* _tmp22_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (sheet != NULL); + _tmp0_ = sheet; + controller_set_actual_sheet (self, _tmp0_); + _tmp1_ = sheet; + _tmp2_ = _tmp1_->content; + _tmp3_ = g_strdup (_tmp2_); + content = _tmp3_; + _tmp4_ = content; + if (_tmp4_ == NULL) { + gchar* _tmp5_ = NULL; + _tmp5_ = g_strdup (""); + _g_free0 (content); + content = _tmp5_; + } + _tmp6_ = self->priv->_input; + _tmp7_ = _tmp6_->buffer; + _tmp8_ = content; + g_object_set ((GtkTextBuffer*) _tmp7_, "text", _tmp8_, NULL); + _tmp9_ = self->priv->_input; + input_view_process_new_content (_tmp9_); + memset (&iter, 0, sizeof (GtkTextIter)); + _tmp10_ = self->priv->_input; + _tmp11_ = _tmp10_->source_view; + _tmp12_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp11_); + _tmp13_ = _tmp12_; + _tmp14_ = self->priv->_input; + _tmp15_ = _tmp14_->source_view; + _tmp16_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp15_); + _tmp17_ = _tmp16_; + g_object_get (_tmp17_, "cursor-position", &_tmp18_, NULL); + _tmp19_ = _tmp18_; + gtk_text_buffer_get_iter_at_offset (_tmp13_, &_tmp20_, _tmp19_); + iter = _tmp20_; + _tmp21_ = gtk_text_iter_get_line (&iter); + self->priv->override_line = _tmp21_; + _tmp22_ = self->priv->_input; + input_view_process_new_content (_tmp22_); + _g_free0 (content); +} + + +void controller_set_content (Controller* self, const gchar* content) { + InputView* _tmp0_ = NULL; + GtkSourceBuffer* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + InputView* _tmp3_ = NULL; + GtkTextIter iter = {0}; + InputView* _tmp4_ = NULL; + GtkSourceView* _tmp5_ = NULL; + GtkTextBuffer* _tmp6_ = NULL; + GtkTextBuffer* _tmp7_ = NULL; + InputView* _tmp8_ = NULL; + GtkSourceView* _tmp9_ = NULL; + GtkTextBuffer* _tmp10_ = NULL; + GtkTextBuffer* _tmp11_ = NULL; + gint _tmp12_ = 0; + gint _tmp13_ = 0; + GtkTextIter _tmp14_ = {0}; + gint _tmp15_ = 0; + g_return_if_fail (self != NULL); + g_return_if_fail (content != NULL); + _tmp0_ = self->priv->_input; + _tmp1_ = _tmp0_->buffer; + _tmp2_ = content; + g_object_set ((GtkTextBuffer*) _tmp1_, "text", _tmp2_, NULL); + _tmp3_ = self->priv->_input; + input_view_process_new_content (_tmp3_); + memset (&iter, 0, sizeof (GtkTextIter)); + _tmp4_ = self->priv->_input; + _tmp5_ = _tmp4_->source_view; + _tmp6_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp5_); + _tmp7_ = _tmp6_; + _tmp8_ = self->priv->_input; + _tmp9_ = _tmp8_->source_view; + _tmp10_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp9_); + _tmp11_ = _tmp10_; + g_object_get (_tmp11_, "cursor-position", &_tmp12_, NULL); + _tmp13_ = _tmp12_; + gtk_text_buffer_get_iter_at_offset (_tmp7_, &_tmp14_, _tmp13_); + iter = _tmp14_; + _tmp15_ = gtk_text_iter_get_line (&iter); + self->priv->override_line = _tmp15_; +} + + +static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) { + gchar* result = NULL; + GError * _inner_error_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (old != NULL, NULL); + g_return_val_if_fail (replacement != NULL, NULL); + { + GRegex* regex = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + GRegex* _tmp3_ = NULL; + GRegex* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + GRegex* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + _tmp0_ = old; + _tmp1_ = g_regex_escape_string (_tmp0_, -1); + _tmp2_ = _tmp1_; + _tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_); + _tmp4_ = _tmp3_; + _g_free0 (_tmp2_); + regex = _tmp4_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch9_g_regex_error; + } + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp6_ = regex; + _tmp7_ = replacement; + _tmp8_ = g_regex_replace_literal (_tmp6_, self, (gssize) -1, 0, _tmp7_, 0, &_inner_error_); + _tmp5_ = _tmp8_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_regex_unref0 (regex); + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch9_g_regex_error; + } + _g_regex_unref0 (regex); + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp9_ = _tmp5_; + _tmp5_ = NULL; + result = _tmp9_; + _g_free0 (_tmp5_); + _g_regex_unref0 (regex); + return result; + } + goto __finally9; + __catch9_g_regex_error: + { + GError* e = NULL; + e = _inner_error_; + _inner_error_ = NULL; + g_assert_not_reached (); + _g_error_free0 (e); + } + __finally9: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } +} + + +GeeArrayList* controller_get_sheets (Controller* self) { + GeeArrayList* result = NULL; + GeeArrayList* _tmp0_ = NULL; + GeeArrayList* _tmp20_ = NULL; + GeeArrayList* _tmp21_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->sheet_list; + if (_tmp0_ == NULL) { + GeeArrayList* _tmp1_ = NULL; + gchar** sheets_split = NULL; + const gchar* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + gchar** _tmp4_ = NULL; + gchar** _tmp5_ = NULL; + gint sheets_split_length1 = 0; + gint _sheets_split_size_ = 0; + gchar** _tmp6_ = NULL; + gint _tmp6__length1 = 0; + _tmp1_ = gee_array_list_new (TYPE_NASC_SHEET, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _g_object_unref0 (self->priv->sheet_list); + self->priv->sheet_list = _tmp1_; + _tmp2_ = controller_get_sheets_file (self); + _tmp3_ = _tmp2_; + _tmp5_ = _tmp4_ = g_strsplit (_tmp3_, NASC_SETTINGS_sheet_split_char, 0); + sheets_split = _tmp5_; + sheets_split_length1 = _vala_array_length (_tmp4_); + _sheets_split_size_ = sheets_split_length1; + _tmp6_ = sheets_split; + _tmp6__length1 = sheets_split_length1; + { + gchar** sheet_collection = NULL; + gint sheet_collection_length1 = 0; + gint _sheet_collection_size_ = 0; + gint sheet_it = 0; + sheet_collection = _tmp6_; + sheet_collection_length1 = _tmp6__length1; + for (sheet_it = 0; sheet_it < _tmp6__length1; sheet_it = sheet_it + 1) { + gchar* _tmp7_ = NULL; + gchar* sheet = NULL; + _tmp7_ = g_strdup (sheet_collection[sheet_it]); + sheet = _tmp7_; + { + gchar** content = NULL; + const gchar* _tmp8_ = NULL; + gchar** _tmp9_ = NULL; + gchar** _tmp10_ = NULL; + gint content_length1 = 0; + gint _content_size_ = 0; + GeeArrayList* _tmp11_ = NULL; + gchar** _tmp12_ = NULL; + gint _tmp12__length1 = 0; + const gchar* _tmp13_ = NULL; + gchar** _tmp14_ = NULL; + gint _tmp14__length1 = 0; + const gchar* _tmp15_ = NULL; + gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + NascSheet* _tmp18_ = NULL; + NascSheet* _tmp19_ = NULL; + _tmp8_ = sheet; + _tmp10_ = _tmp9_ = g_strsplit (_tmp8_, NASC_SETTINGS_name_split_char, 0); + content = _tmp10_; + content_length1 = _vala_array_length (_tmp9_); + _content_size_ = content_length1; + _tmp11_ = self->priv->sheet_list; + _tmp12_ = content; + _tmp12__length1 = content_length1; + _tmp13_ = _tmp12_[0]; + _tmp14_ = content; + _tmp14__length1 = content_length1; + _tmp15_ = _tmp14_[1]; + _tmp16_ = string_replace (_tmp15_, "\\n", "\n"); + _tmp17_ = _tmp16_; + _tmp18_ = nasc_sheet_new (_tmp13_, _tmp17_); + _tmp19_ = _tmp18_; + gee_abstract_collection_add ((GeeAbstractCollection*) _tmp11_, _tmp19_); + _g_object_unref0 (_tmp19_); + _g_free0 (_tmp17_); + content = (_vala_array_free (content, content_length1, (GDestroyNotify) g_free), NULL); + _g_free0 (sheet); + } + } + } + sheets_split = (_vala_array_free (sheets_split, sheets_split_length1, (GDestroyNotify) g_free), NULL); + } + _tmp20_ = self->priv->sheet_list; + _tmp21_ = _g_object_ref0 (_tmp20_); + result = _tmp21_; + return result; +} + + +NascSheet* controller_add_sheet (Controller* self) { + NascSheet* result = NULL; + NascSheet* _tmp0_ = NULL; + NascSheet* _tmp1_ = NULL; + GeeArrayList* _tmp2_ = NULL; + NascSheet* _tmp3_ = NULL; + InputView* _tmp4_ = NULL; + GtkSourceBuffer* _tmp5_ = NULL; + NascSheet* _tmp6_ = NULL; + NascSheet* _tmp7_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = nasc_sheet_new ("sheet", ""); + _tmp1_ = _tmp0_; + controller_set_actual_sheet (self, _tmp1_); + _g_object_unref0 (_tmp1_); + _tmp2_ = self->priv->sheet_list; + _tmp3_ = self->priv->_actual_sheet; + gee_abstract_collection_add ((GeeAbstractCollection*) _tmp2_, _tmp3_); + _tmp4_ = self->priv->_input; + _tmp5_ = _tmp4_->buffer; + g_object_set ((GtkTextBuffer*) _tmp5_, "text", "", NULL); + _tmp6_ = self->priv->_actual_sheet; + _tmp7_ = _g_object_ref0 (_tmp6_); + result = _tmp7_; + return result; +} + + +void controller_remove_sheet (Controller* self, NascSheet* sheet) { + gint index = 0; + GeeArrayList* _tmp0_ = NULL; + NascSheet* _tmp1_ = NULL; + gint _tmp2_ = 0; + NascSheet* _tmp3_ = NULL; + gint _tmp4_ = 0; + GeeLinkedList* _tmp5_ = NULL; + NascSheet* _tmp6_ = NULL; + GeeArrayList* _tmp7_ = NULL; + NascSheet* _tmp8_ = NULL; + gint _tmp9_ = 0; + GeeArrayList* _tmp10_ = NULL; + gint _tmp11_ = 0; + gint _tmp12_ = 0; + GeeArrayList* _tmp16_ = NULL; + gint _tmp17_ = 0; + gpointer _tmp18_ = NULL; + NascSheet* _tmp19_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (sheet != NULL); + _tmp0_ = self->priv->sheet_list; + _tmp1_ = sheet; + _tmp2_ = gee_abstract_list_index_of ((GeeAbstractList*) _tmp0_, _tmp1_); + index = _tmp2_; + _tmp3_ = sheet; + _tmp4_ = index; + _tmp3_->index = _tmp4_; + _tmp5_ = self->priv->removal_list; + _tmp6_ = sheet; + gee_deque_offer_tail ((GeeDeque*) _tmp5_, _tmp6_); + _tmp7_ = self->priv->sheet_list; + _tmp8_ = sheet; + gee_abstract_collection_remove ((GeeAbstractCollection*) _tmp7_, _tmp8_); + _tmp9_ = index; + _tmp10_ = self->priv->sheet_list; + _tmp11_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp10_); + _tmp12_ = _tmp11_; + if (_tmp9_ >= _tmp12_) { + GeeArrayList* _tmp13_ = NULL; + gint _tmp14_ = 0; + gint _tmp15_ = 0; + _tmp13_ = self->priv->sheet_list; + _tmp14_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp13_); + _tmp15_ = _tmp14_; + index = _tmp15_ - 1; + } + _tmp16_ = self->priv->sheet_list; + _tmp17_ = index; + _tmp18_ = gee_abstract_list_get ((GeeAbstractList*) _tmp16_, _tmp17_); + _tmp19_ = (NascSheet*) _tmp18_; + controller_set_actual_sheet (self, _tmp19_); + _g_object_unref0 (_tmp19_); +} + + +void controller_undo_removal (Controller* self) { + GeeLinkedList* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->removal_list; + _tmp1_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp0_); + _tmp2_ = _tmp1_; + if (_tmp2_ > 0) { + NascSheet* sheet = NULL; + GeeLinkedList* _tmp3_ = NULL; + gpointer _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + NascSheet* _tmp8_ = NULL; + gint _tmp9_ = 0; + _tmp3_ = self->priv->removal_list; + _tmp4_ = gee_deque_poll_tail ((GeeDeque*) _tmp3_); + sheet = (NascSheet*) _tmp4_; + _tmp5_ = self->priv->sheet_list; + _tmp6_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp5_); + _tmp7_ = _tmp6_; + _tmp8_ = sheet; + _tmp9_ = _tmp8_->index; + if (_tmp7_ <= _tmp9_) { + GeeArrayList* _tmp10_ = NULL; + NascSheet* _tmp11_ = NULL; + _tmp10_ = self->priv->sheet_list; + _tmp11_ = sheet; + gee_abstract_collection_add ((GeeAbstractCollection*) _tmp10_, _tmp11_); + } else { + GeeArrayList* _tmp12_ = NULL; + NascSheet* _tmp13_ = NULL; + gint _tmp14_ = 0; + NascSheet* _tmp15_ = NULL; + _tmp12_ = self->priv->sheet_list; + _tmp13_ = sheet; + _tmp14_ = _tmp13_->index; + _tmp15_ = sheet; + gee_abstract_list_insert ((GeeAbstractList*) _tmp12_, _tmp14_, _tmp15_); + } + _g_object_unref0 (sheet); + } +} + + +void controller_store_sheet_content (Controller* self) { + GString* text = NULL; + GString* _tmp0_ = NULL; + GString* _tmp36_ = NULL; + const gchar* _tmp37_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = g_string_new (""); + text = _tmp0_; + { + GeeArrayList* _sheet_list = NULL; + GeeArrayList* _tmp1_ = NULL; + GeeArrayList* _tmp2_ = NULL; + gint _sheet_size = 0; + GeeArrayList* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + gint _sheet_index = 0; + _tmp1_ = self->priv->sheet_list; + _tmp2_ = _g_object_ref0 (_tmp1_); + _sheet_list = _tmp2_; + _tmp3_ = _sheet_list; + _tmp4_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp3_); + _tmp5_ = _tmp4_; + _sheet_size = _tmp5_; + _sheet_index = -1; + while (TRUE) { + gint _tmp6_ = 0; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + NascSheet* sheet = NULL; + GeeArrayList* _tmp9_ = NULL; + gint _tmp10_ = 0; + gpointer _tmp11_ = NULL; + GString* _tmp12_ = NULL; + NascSheet* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + const gchar* _tmp15_ = NULL; + GString* _tmp16_ = NULL; + GString* _tmp17_ = NULL; + NascSheet* _tmp18_ = NULL; + const gchar* _tmp19_ = NULL; + gchar* _tmp20_ = NULL; + gchar* _tmp21_ = NULL; + GeeArrayList* _tmp22_ = NULL; + NascSheet* _tmp23_ = NULL; + gint _tmp24_ = 0; + GeeArrayList* _tmp25_ = NULL; + gint _tmp26_ = 0; + gint _tmp27_ = 0; + NascSheet* _tmp29_ = NULL; + NascSheet* _tmp30_ = NULL; + _tmp6_ = _sheet_index; + _sheet_index = _tmp6_ + 1; + _tmp7_ = _sheet_index; + _tmp8_ = _sheet_size; + if (!(_tmp7_ < _tmp8_)) { + break; + } + _tmp9_ = _sheet_list; + _tmp10_ = _sheet_index; + _tmp11_ = gee_abstract_list_get ((GeeAbstractList*) _tmp9_, _tmp10_); + sheet = (NascSheet*) _tmp11_; + _tmp12_ = text; + _tmp13_ = sheet; + _tmp14_ = granite_widgets_source_list_item_get_name ((GraniteWidgetsSourceListItem*) _tmp13_); + _tmp15_ = _tmp14_; + g_string_append (_tmp12_, _tmp15_); + _tmp16_ = text; + g_string_append (_tmp16_, NASC_SETTINGS_name_split_char); + _tmp17_ = text; + _tmp18_ = sheet; + _tmp19_ = _tmp18_->content; + _tmp20_ = string_replace (_tmp19_, "\n", "\\n"); + _tmp21_ = _tmp20_; + g_string_append (_tmp17_, _tmp21_); + _g_free0 (_tmp21_); + _tmp22_ = self->priv->sheet_list; + _tmp23_ = sheet; + _tmp24_ = gee_abstract_list_index_of ((GeeAbstractList*) _tmp22_, _tmp23_); + _tmp25_ = self->priv->sheet_list; + _tmp26_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp25_); + _tmp27_ = _tmp26_; + if (_tmp24_ != (_tmp27_ - 1)) { + GString* _tmp28_ = NULL; + _tmp28_ = text; + g_string_append (_tmp28_, NASC_SETTINGS_sheet_split_char); + } + _tmp29_ = sheet; + _tmp30_ = self->priv->_actual_sheet; + if (_tmp29_ == _tmp30_) { + NascSettings* _tmp31_ = NULL; + NascSettings* _tmp32_ = NULL; + GeeArrayList* _tmp33_ = NULL; + NascSheet* _tmp34_ = NULL; + gint _tmp35_ = 0; + _tmp31_ = nasc_settings_get_instance (); + _tmp32_ = _tmp31_; + _tmp33_ = self->priv->sheet_list; + _tmp34_ = sheet; + _tmp35_ = gee_abstract_list_index_of ((GeeAbstractList*) _tmp33_, _tmp34_); + nasc_settings_set_open_sheet (_tmp32_, _tmp35_); + _g_object_unref0 (_tmp32_); + } + _g_object_unref0 (sheet); + } + _g_object_unref0 (_sheet_list); + } + _tmp36_ = text; + _tmp37_ = _tmp36_->str; + controller_set_sheets_file (self, _tmp37_); + _g_string_free0 (text); +} + + +static gboolean string_contains (const gchar* self, const gchar* needle) { + gboolean result = FALSE; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (needle != NULL, FALSE); + _tmp0_ = needle; + _tmp1_ = strstr ((gchar*) self, (gchar*) _tmp0_); + result = _tmp1_ != NULL; + return result; +} + + +static gboolean controller_check_for_calculation (Controller* self, const gchar* input) { + gboolean result = FALSE; + gboolean _tmp0_ = FALSE; + const gchar* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (input != NULL, FALSE); + _tmp1_ = input; + if (_tmp1_ == NULL) { + _tmp0_ = TRUE; + } else { + const gchar* _tmp2_ = NULL; + _tmp2_ = input; + _tmp0_ = g_strcmp0 (_tmp2_, "") == 0; + } + if (_tmp0_) { + result = FALSE; + return result; + } else { + const gchar* _tmp3_ = NULL; + gboolean _tmp4_ = FALSE; + _tmp3_ = input; + _tmp4_ = string_contains (_tmp3_, "http://"); + if (_tmp4_) { + result = FALSE; + return result; + } else { + const gchar* _tmp5_ = NULL; + gboolean _tmp6_ = FALSE; + _tmp5_ = input; + _tmp6_ = g_str_has_suffix (_tmp5_, "atom()"); + if (_tmp6_) { + g_signal_emit_by_name (self, "periodic"); + result = FALSE; + return result; + } else { + GRegex* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + gboolean _tmp9_ = FALSE; + _tmp7_ = self->priv->digit_regex; + _tmp8_ = input; + _tmp9_ = g_regex_match (_tmp7_, _tmp8_, 0, NULL); + if (_tmp9_) { + result = TRUE; + return result; + } else { + const gchar* _tmp66_ = NULL; + { + GeeArrayList* _op_list = NULL; + GeeArrayList* _tmp10_ = NULL; + GeeArrayList* _tmp11_ = NULL; + gint _op_size = 0; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gint _tmp14_ = 0; + gint _op_index = 0; + _tmp10_ = self->priv->enable_calc; + _tmp11_ = _g_object_ref0 (_tmp10_); + _op_list = _tmp11_; + _tmp12_ = _op_list; + _tmp13_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp12_); + _tmp14_ = _tmp13_; + _op_size = _tmp14_; + _op_index = -1; + while (TRUE) { + gint _tmp15_ = 0; + gint _tmp16_ = 0; + gint _tmp17_ = 0; + gchar* op = NULL; + GeeArrayList* _tmp18_ = NULL; + gint _tmp19_ = 0; + gpointer _tmp20_ = NULL; + const gchar* _tmp21_ = NULL; + const gchar* _tmp22_ = NULL; + gboolean _tmp23_ = FALSE; + _tmp15_ = _op_index; + _op_index = _tmp15_ + 1; + _tmp16_ = _op_index; + _tmp17_ = _op_size; + if (!(_tmp16_ < _tmp17_)) { + break; + } + _tmp18_ = _op_list; + _tmp19_ = _op_index; + _tmp20_ = gee_abstract_list_get ((GeeAbstractList*) _tmp18_, _tmp19_); + op = (gchar*) _tmp20_; + _tmp21_ = input; + _tmp22_ = op; + _tmp23_ = string_contains (_tmp21_, _tmp22_); + if (_tmp23_) { + result = TRUE; + _g_free0 (op); + _g_object_unref0 (_op_list); + return result; + } + _g_free0 (op); + } + _g_object_unref0 (_op_list); + } + { + GeeList* _fct_list = NULL; + Calculator* _tmp24_ = NULL; + GeeList* _tmp25_ = NULL; + GeeList* _tmp26_ = NULL; + GeeList* _tmp27_ = NULL; + gint _fct_size = 0; + GeeList* _tmp28_ = NULL; + gint _tmp29_ = 0; + gint _tmp30_ = 0; + gint _fct_index = 0; + _tmp24_ = self->calculator; + _tmp25_ = calculator_get_functions (_tmp24_); + _tmp26_ = _tmp25_; + _tmp27_ = _g_object_ref0 (_tmp26_); + _fct_list = _tmp27_; + _tmp28_ = _fct_list; + _tmp29_ = gee_collection_get_size ((GeeCollection*) _tmp28_); + _tmp30_ = _tmp29_; + _fct_size = _tmp30_; + _fct_index = -1; + while (TRUE) { + gint _tmp31_ = 0; + gint _tmp32_ = 0; + gint _tmp33_ = 0; + NascFunction* fct = NULL; + GeeList* _tmp34_ = NULL; + gint _tmp35_ = 0; + gpointer _tmp36_ = NULL; + const gchar* _tmp37_ = NULL; + NascFunction* _tmp38_ = NULL; + const gchar* _tmp39_ = NULL; + gchar* _tmp40_ = NULL; + gchar* _tmp41_ = NULL; + gboolean _tmp42_ = FALSE; + gboolean _tmp43_ = FALSE; + _tmp31_ = _fct_index; + _fct_index = _tmp31_ + 1; + _tmp32_ = _fct_index; + _tmp33_ = _fct_size; + if (!(_tmp32_ < _tmp33_)) { + break; + } + _tmp34_ = _fct_list; + _tmp35_ = _fct_index; + _tmp36_ = gee_list_get (_tmp34_, _tmp35_); + fct = (NascFunction*) _tmp36_; + _tmp37_ = input; + _tmp38_ = fct; + _tmp39_ = ((NascElement*) _tmp38_)->name; + _tmp40_ = g_strdup_printf ("%s(", _tmp39_); + _tmp41_ = _tmp40_; + _tmp42_ = string_contains (_tmp37_, _tmp41_); + _tmp43_ = _tmp42_; + _g_free0 (_tmp41_); + if (_tmp43_) { + result = TRUE; + _g_object_unref0 (fct); + _g_object_unref0 (_fct_list); + return result; + } + _g_object_unref0 (fct); + } + _g_object_unref0 (_fct_list); + } + { + GeeList* _v_list = NULL; + Calculator* _tmp44_ = NULL; + GeeList* _tmp45_ = NULL; + GeeList* _tmp46_ = NULL; + GeeList* _tmp47_ = NULL; + gint _v_size = 0; + GeeList* _tmp48_ = NULL; + gint _tmp49_ = 0; + gint _tmp50_ = 0; + gint _v_index = 0; + _tmp44_ = self->calculator; + _tmp45_ = calculator_get_variables (_tmp44_); + _tmp46_ = _tmp45_; + _tmp47_ = _g_object_ref0 (_tmp46_); + _v_list = _tmp47_; + _tmp48_ = _v_list; + _tmp49_ = gee_collection_get_size ((GeeCollection*) _tmp48_); + _tmp50_ = _tmp49_; + _v_size = _tmp50_; + _v_index = -1; + while (TRUE) { + gint _tmp51_ = 0; + gint _tmp52_ = 0; + gint _tmp53_ = 0; + NascVariabel* v = NULL; + GeeList* _tmp54_ = NULL; + gint _tmp55_ = 0; + gpointer _tmp56_ = NULL; + gboolean _tmp57_ = FALSE; + NascVariabel* _tmp58_ = NULL; + const gchar* _tmp59_ = NULL; + gint _tmp60_ = 0; + gint _tmp61_ = 0; + _tmp51_ = _v_index; + _v_index = _tmp51_ + 1; + _tmp52_ = _v_index; + _tmp53_ = _v_size; + if (!(_tmp52_ < _tmp53_)) { + break; + } + _tmp54_ = _v_list; + _tmp55_ = _v_index; + _tmp56_ = gee_list_get (_tmp54_, _tmp55_); + v = (NascVariabel*) _tmp56_; + _tmp58_ = v; + _tmp59_ = ((NascElement*) _tmp58_)->name; + _tmp60_ = strlen (_tmp59_); + _tmp61_ = _tmp60_; + if (_tmp61_ > 3) { + const gchar* _tmp62_ = NULL; + NascVariabel* _tmp63_ = NULL; + const gchar* _tmp64_ = NULL; + gboolean _tmp65_ = FALSE; + _tmp62_ = input; + _tmp63_ = v; + _tmp64_ = ((NascElement*) _tmp63_)->name; + _tmp65_ = string_contains (_tmp62_, _tmp64_); + _tmp57_ = _tmp65_; + } else { + _tmp57_ = FALSE; + } + if (_tmp57_) { + result = TRUE; + _g_object_unref0 (v); + _g_object_unref0 (_v_list); + return result; + } + _g_object_unref0 (v); + } + _g_object_unref0 (_v_list); + } + _tmp66_ = input; + if (g_strcmp0 (_tmp66_, "tutorial()") == 0) { + g_signal_emit_by_name (self, "tutorial"); + } + result = FALSE; + return result; + } + } + } + } +} + + +static void _vala_array_add1 (gchar*** array, int* length, int* size, gchar* value) { + if ((*length) == (*size)) { + *size = (*size) ? (2 * (*size)) : 4; + *array = g_renew (gchar*, *array, (*size) + 1); + } + (*array)[(*length)++] = value; + (*array)[*length] = NULL; +} + + +static gboolean string_get_next_char (const gchar* self, gint* index, gunichar* c) { + gunichar _vala_c = 0U; + gboolean result = FALSE; + gint _tmp0_ = 0; + gunichar _tmp1_ = 0U; + gunichar _tmp2_ = 0U; + g_return_val_if_fail (self != NULL, FALSE); + _tmp0_ = *index; + _tmp1_ = g_utf8_get_char (((gchar*) self) + _tmp0_); + _vala_c = _tmp1_; + _tmp2_ = _vala_c; + if (_tmp2_ != ((gunichar) 0)) { + gint _tmp3_ = 0; + gchar* _tmp4_ = NULL; + _tmp3_ = *index; + _tmp4_ = g_utf8_next_char (((gchar*) self) + _tmp3_); + *index = (gint) (_tmp4_ - ((gchar*) self)); + result = TRUE; + if (c) { + *c = _vala_c; + } + return result; + } else { + result = FALSE; + if (c) { + *c = _vala_c; + } + return result; + } + if (c) { + *c = _vala_c; + } +} + + +gchar* controller_get_export_text (Controller* self) { + gchar* result = NULL; + gchar** input_text = NULL; + gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar** _tmp2_ = NULL; + gchar** _tmp3_ = NULL; + gchar** _tmp4_ = NULL; + gint _tmp4__length1 = 0; + gint input_text_length1 = 0; + gint _input_text_size_ = 0; + gchar** result_text = NULL; + gchar** _tmp5_ = NULL; + gint result_text_length1 = 0; + gint _result_text_size_ = 0; + gint longest_line = 0; + GString* sb = NULL; + GString* _tmp24_ = NULL; + GString* _tmp52_ = NULL; + const gchar* _tmp53_ = NULL; + gchar* _tmp54_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = controller_get_content (self); + _tmp1_ = _tmp0_; + _tmp3_ = _tmp2_ = g_strsplit (_tmp1_, "\n", 0); + _tmp4_ = _tmp3_; + _tmp4__length1 = _vala_array_length (_tmp2_); + _g_free0 (_tmp1_); + input_text = _tmp4_; + input_text_length1 = _tmp4__length1; + _input_text_size_ = input_text_length1; + _tmp5_ = g_new0 (gchar*, 0 + 1); + result_text = _tmp5_; + result_text_length1 = 0; + _result_text_size_ = result_text_length1; + { + GeeArrayList* _rl_list = NULL; + ResultView* _tmp6_ = NULL; + GeeArrayList* _tmp7_ = NULL; + GeeArrayList* _tmp8_ = NULL; + GeeArrayList* _tmp9_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp10_ = NULL; + gint _tmp11_ = 0; + gint _tmp12_ = 0; + gint _rl_index = 0; + _tmp6_ = self->priv->_results; + _tmp7_ = result_view_get_result_list (_tmp6_); + _tmp8_ = _tmp7_; + _tmp9_ = _g_object_ref0 (_tmp8_); + _rl_list = _tmp9_; + _tmp10_ = _rl_list; + _tmp11_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp10_); + _tmp12_ = _tmp11_; + _rl_size = _tmp12_; + _rl_index = -1; + while (TRUE) { + gint _tmp13_ = 0; + gint _tmp14_ = 0; + gint _tmp15_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp16_ = NULL; + gint _tmp17_ = 0; + gpointer _tmp18_ = NULL; + gchar** _tmp19_ = NULL; + gint _tmp19__length1 = 0; + ResultLine* _tmp20_ = NULL; + const gchar* _tmp21_ = NULL; + const gchar* _tmp22_ = NULL; + gchar* _tmp23_ = NULL; + _tmp13_ = _rl_index; + _rl_index = _tmp13_ + 1; + _tmp14_ = _rl_index; + _tmp15_ = _rl_size; + if (!(_tmp14_ < _tmp15_)) { + break; + } + _tmp16_ = _rl_list; + _tmp17_ = _rl_index; + _tmp18_ = gee_abstract_list_get ((GeeAbstractList*) _tmp16_, _tmp17_); + rl = (ResultLine*) _tmp18_; + _tmp19_ = result_text; + _tmp19__length1 = result_text_length1; + _tmp20_ = rl; + _tmp21_ = result_line_get_value (_tmp20_); + _tmp22_ = _tmp21_; + _tmp23_ = g_strdup (_tmp22_); + _vala_array_add1 (&result_text, &result_text_length1, &_result_text_size_, _tmp23_); + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + longest_line = 80; + _tmp24_ = g_string_new (""); + sb = _tmp24_; + { + gint i = 0; + i = 0; + { + gboolean _tmp25_ = FALSE; + _tmp25_ = TRUE; + while (TRUE) { + gint _tmp27_ = 0; + gchar** _tmp28_ = NULL; + gint _tmp28__length1 = 0; + GString* _tmp29_ = NULL; + gchar** _tmp30_ = NULL; + gint _tmp30__length1 = 0; + gint _tmp31_ = 0; + const gchar* _tmp32_ = NULL; + gint actual_length = 0; + gunichar c = 0U; + GString* _tmp46_ = NULL; + GString* _tmp47_ = NULL; + gchar** _tmp48_ = NULL; + gint _tmp48__length1 = 0; + gint _tmp49_ = 0; + const gchar* _tmp50_ = NULL; + GString* _tmp51_ = NULL; + if (!_tmp25_) { + gint _tmp26_ = 0; + _tmp26_ = i; + i = _tmp26_ + 1; + } + _tmp25_ = FALSE; + _tmp27_ = i; + _tmp28_ = input_text; + _tmp28__length1 = input_text_length1; + if (!(_tmp27_ < _tmp28__length1)) { + break; + } + _tmp29_ = sb; + _tmp30_ = input_text; + _tmp30__length1 = input_text_length1; + _tmp31_ = i; + _tmp32_ = _tmp30_[_tmp31_]; + g_string_append (_tmp29_, _tmp32_); + actual_length = 0; + { + gint k = 0; + k = 0; + { + gboolean _tmp33_ = FALSE; + _tmp33_ = TRUE; + while (TRUE) { + gchar** _tmp34_ = NULL; + gint _tmp34__length1 = 0; + gint _tmp35_ = 0; + const gchar* _tmp36_ = NULL; + gunichar _tmp37_ = 0U; + gboolean _tmp38_ = FALSE; + gint _tmp39_ = 0; + if (!_tmp33_) { + } + _tmp33_ = FALSE; + _tmp34_ = input_text; + _tmp34__length1 = input_text_length1; + _tmp35_ = i; + _tmp36_ = _tmp34_[_tmp35_]; + _tmp38_ = string_get_next_char (_tmp36_, &k, &_tmp37_); + c = _tmp37_; + if (!_tmp38_) { + break; + } + _tmp39_ = actual_length; + actual_length = _tmp39_ + 1; + } + } + } + { + gint j = 0; + gint _tmp40_ = 0; + _tmp40_ = actual_length; + j = _tmp40_; + { + gboolean _tmp41_ = FALSE; + _tmp41_ = TRUE; + while (TRUE) { + gint _tmp43_ = 0; + gint _tmp44_ = 0; + GString* _tmp45_ = NULL; + if (!_tmp41_) { + gint _tmp42_ = 0; + _tmp42_ = j; + j = _tmp42_ + 1; + } + _tmp41_ = FALSE; + _tmp43_ = j; + _tmp44_ = longest_line; + if (!(_tmp43_ < _tmp44_)) { + break; + } + _tmp45_ = sb; + g_string_append (_tmp45_, " "); + } + } + } + _tmp46_ = sb; + g_string_append (_tmp46_, "| "); + _tmp47_ = sb; + _tmp48_ = result_text; + _tmp48__length1 = result_text_length1; + _tmp49_ = i; + _tmp50_ = _tmp48_[_tmp49_]; + g_string_append (_tmp47_, _tmp50_); + _tmp51_ = sb; + g_string_append (_tmp51_, "\n"); + } + } + } + _tmp52_ = sb; + _tmp53_ = _tmp52_->str; + _tmp54_ = g_strdup (_tmp53_); + result = _tmp54_; + _g_string_free0 (sb); + result_text = (_vala_array_free (result_text, result_text_length1, (GDestroyNotify) g_free), NULL); + input_text = (_vala_array_free (input_text, input_text_length1, (GDestroyNotify) g_free), NULL); + return result; +} + + +InputView* controller_get_input (Controller* self) { + InputView* result; + InputView* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_input; + result = _tmp0_; + return result; +} + + +static void controller_set_input (Controller* self, InputView* value) { + InputView* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_input); + self->priv->_input = _tmp1_; + g_object_notify ((GObject *) self, "input"); +} + + +ResultView* controller_get_results (Controller* self) { + ResultView* result; + ResultView* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_results; + result = _tmp0_; + return result; +} + + +static void controller_set_results (Controller* self, ResultView* value) { + ResultView* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_results); + self->priv->_results = _tmp1_; + g_object_notify ((GObject *) self, "results"); +} + + +NascSettings* controller_get_settings (Controller* self) { + NascSettings* result; + NascSettings* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_settings; + result = _tmp0_; + return result; +} + + +static void controller_set_settings (Controller* self, NascSettings* value) { + NascSettings* _tmp0_ = NULL; + NascSettings* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_settings); + self->priv->_settings = _tmp1_; + g_object_notify ((GObject *) self, "settings"); +} + + +NascSheet* controller_get_actual_sheet (Controller* self) { + NascSheet* result; + NascSheet* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_actual_sheet; + result = _tmp0_; + return result; +} + + +static void controller_set_actual_sheet (Controller* self, NascSheet* value) { + NascSheet* _tmp0_ = NULL; + NascSheet* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_actual_sheet); + self->priv->_actual_sheet = _tmp1_; + g_object_notify ((GObject *) self, "actual-sheet"); +} + + +const gchar* controller_get_sheets_file (Controller* self) { + const gchar* result; + GString* text = NULL; + GString* _tmp0_ = NULL; + GString* _tmp19_ = NULL; + const gchar* _tmp20_ = NULL; + gchar* _tmp21_ = NULL; + const gchar* _tmp22_ = NULL; + GError * _inner_error_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = g_string_new (""); + text = _tmp0_; + { + GFile* file = NULL; + const gchar* _tmp1_ = NULL; + GFile* _tmp2_ = NULL; + GFile* _tmp3_ = NULL; + gboolean _tmp4_ = FALSE; + _tmp1_ = self->priv->sheet_path; + _tmp2_ = g_file_new_for_path (_tmp1_); + file = _tmp2_; + _tmp3_ = file; + _tmp4_ = g_file_query_exists (_tmp3_, NULL); + if (_tmp4_) { + GFileInputStream* _tmp5_ = NULL; + GFile* _tmp6_ = NULL; + GFileInputStream* _tmp7_ = NULL; + GDataInputStream* dis = NULL; + GDataInputStream* _tmp8_ = NULL; + gchar* line = NULL; + _tmp6_ = file; + _tmp7_ = g_file_read (_tmp6_, NULL, &_inner_error_); + _tmp5_ = _tmp7_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (file); + goto __catch10_g_error; + } + _tmp8_ = g_data_input_stream_new ((GInputStream*) _tmp5_); + dis = _tmp8_; + line = NULL; + while (TRUE) { + gchar* _tmp9_ = NULL; + GDataInputStream* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + const gchar* _tmp13_ = NULL; + GString* _tmp14_ = NULL; + const gchar* _tmp15_ = NULL; + _tmp10_ = dis; + _tmp11_ = g_data_input_stream_read_line (_tmp10_, NULL, NULL, &_inner_error_); + _tmp9_ = _tmp11_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_free0 (line); + _g_object_unref0 (dis); + _g_object_unref0 (_tmp5_); + _g_object_unref0 (file); + goto __catch10_g_error; + } + _tmp12_ = _tmp9_; + _tmp9_ = NULL; + _g_free0 (line); + line = _tmp12_; + _tmp13_ = line; + if (!(_tmp13_ != NULL)) { + _g_free0 (_tmp9_); + break; + } + _tmp14_ = text; + _tmp15_ = line; + g_string_append (_tmp14_, _tmp15_); + _g_free0 (_tmp9_); + } + _g_free0 (line); + _g_object_unref0 (dis); + _g_object_unref0 (_tmp5_); + } + _g_object_unref0 (file); + } + goto __finally10; + __catch10_g_error: + { + GError* e = NULL; + FILE* _tmp16_ = NULL; + GError* _tmp17_ = NULL; + const gchar* _tmp18_ = NULL; + e = _inner_error_; + _inner_error_ = NULL; + _tmp16_ = stderr; + _tmp17_ = e; + _tmp18_ = _tmp17_->message; + fprintf (_tmp16_, "Error: %s\n", _tmp18_); + _g_error_free0 (e); + } + __finally10: + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_string_free0 (text); + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp19_ = text; + _tmp20_ = _tmp19_->str; + _tmp21_ = g_strdup (_tmp20_); + _g_free0 (self->priv->_sheets); + self->priv->_sheets = _tmp21_; + _tmp22_ = self->priv->_sheets; + result = _tmp22_; + _g_string_free0 (text); + return result; +} + + +void controller_set_sheets_file (Controller* self, const gchar* value) { + GError * _inner_error_ = NULL; + g_return_if_fail (self != NULL); + { + GFile* file = NULL; + const gchar* _tmp0_ = NULL; + GFile* _tmp1_ = NULL; + GFile* _tmp2_ = NULL; + gboolean _tmp3_ = FALSE; + GFileOutputStream* _tmp5_ = NULL; + GFile* _tmp6_ = NULL; + GFileOutputStream* _tmp7_ = NULL; + GDataOutputStream* dos = NULL; + GDataOutputStream* _tmp8_ = NULL; + GDataOutputStream* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + GDataOutputStream* _tmp11_ = NULL; + _tmp0_ = self->priv->sheet_path; + _tmp1_ = g_file_new_for_path (_tmp0_); + file = _tmp1_; + _tmp2_ = file; + _tmp3_ = g_file_query_exists (_tmp2_, NULL); + if (_tmp3_) { + GFile* _tmp4_ = NULL; + _tmp4_ = file; + g_file_delete (_tmp4_, NULL, &_inner_error_); + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (file); + goto __catch11_g_error; + } + } + _tmp6_ = file; + _tmp7_ = g_file_create (_tmp6_, G_FILE_CREATE_REPLACE_DESTINATION, NULL, &_inner_error_); + _tmp5_ = _tmp7_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (file); + goto __catch11_g_error; + } + _tmp8_ = g_data_output_stream_new ((GOutputStream*) _tmp5_); + dos = _tmp8_; + _tmp9_ = dos; + _tmp10_ = value; + g_data_output_stream_put_string (_tmp9_, _tmp10_, NULL, &_inner_error_); + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (dos); + _g_object_unref0 (_tmp5_); + _g_object_unref0 (file); + goto __catch11_g_error; + } + _tmp11_ = dos; + g_output_stream_close ((GOutputStream*) _tmp11_, NULL, &_inner_error_); + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_object_unref0 (dos); + _g_object_unref0 (_tmp5_); + _g_object_unref0 (file); + goto __catch11_g_error; + } + _g_object_unref0 (dos); + _g_object_unref0 (_tmp5_); + _g_object_unref0 (file); + } + goto __finally11; + __catch11_g_error: + { + GError* e = NULL; + FILE* _tmp12_ = NULL; + GError* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + e = _inner_error_; + _inner_error_ = NULL; + _tmp12_ = stderr; + _tmp13_ = e; + _tmp14_ = _tmp13_->message; + fprintf (_tmp12_, "Error: %s\n", _tmp14_); + _g_error_free0 (e); + } + __finally11: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return; + } + g_object_notify ((GObject *) self, "sheets-file"); +} + + +static void controller_class_init (ControllerClass * klass) { + controller_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (ControllerPrivate)); + G_OBJECT_CLASS (klass)->get_property = _vala_controller_get_property; + G_OBJECT_CLASS (klass)->set_property = _vala_controller_set_property; + G_OBJECT_CLASS (klass)->finalize = controller_finalize; + g_object_class_install_property (G_OBJECT_CLASS (klass), CONTROLLER_INPUT, g_param_spec_object ("input", "input", "input", TYPE_INPUT_VIEW, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), CONTROLLER_RESULTS, g_param_spec_object ("results", "results", "results", TYPE_RESULT_VIEW, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), CONTROLLER_SETTINGS, g_param_spec_object ("settings", "settings", "settings", TYPE_NASC_SETTINGS, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), CONTROLLER_ACTUAL_SHEET, g_param_spec_object ("actual-sheet", "actual-sheet", "actual-sheet", TYPE_NASC_SHEET, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), CONTROLLER_SHEETS_FILE, g_param_spec_string ("sheets-file", "sheets-file", "sheets-file", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_signal_new ("tutorial", TYPE_CONTROLLER, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new ("periodic", TYPE_CONTROLLER, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); +} + + +static void controller_instance_init (Controller * self) { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + self->priv = CONTROLLER_GET_PRIVATE (self); + self->priv->override_line = -1; + self->priv->calc_lock = FALSE; + _tmp0_ = g_get_home_dir (); + _tmp1_ = g_strconcat (_tmp0_, NASC_SETTINGS_sheet_path, NULL); + _tmp2_ = _tmp1_; + _tmp3_ = g_strconcat (_tmp2_, "nasc.sheets", NULL); + self->priv->sheet_path = _tmp3_; + _g_free0 (_tmp2_); +} + + +static void controller_finalize (GObject* obj) { + Controller * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CONTROLLER, Controller); + _g_object_unref0 (self->priv->_input); + _g_object_unref0 (self->priv->_results); + _g_object_unref0 (self->priv->_settings); + _g_regex_unref0 (self->priv->digit_regex); + _g_object_unref0 (self->calculator); + _g_object_unref0 (self->priv->enable_calc); + _g_object_unref0 (self->priv->sheet_list); + _g_object_unref0 (self->priv->_actual_sheet); + _g_object_unref0 (self->priv->removal_list); + _g_free0 (self->priv->sheet_path); + _g_free0 (self->priv->_sheets); + G_OBJECT_CLASS (controller_parent_class)->finalize (obj); +} + + +GType controller_get_type (void) { + static volatile gsize controller_type_id__volatile = 0; + if (g_once_init_enter (&controller_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (ControllerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) controller_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Controller), 0, (GInstanceInitFunc) controller_instance_init, NULL }; + GType controller_type_id; + controller_type_id = g_type_register_static (G_TYPE_OBJECT, "Controller", &g_define_type_info, 0); + g_once_init_leave (&controller_type_id__volatile, controller_type_id); + } + return controller_type_id__volatile; +} + + +static void _vala_controller_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { + Controller * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_CONTROLLER, Controller); + switch (property_id) { + case CONTROLLER_INPUT: + g_value_set_object (value, controller_get_input (self)); + break; + case CONTROLLER_RESULTS: + g_value_set_object (value, controller_get_results (self)); + break; + case CONTROLLER_SETTINGS: + g_value_set_object (value, controller_get_settings (self)); + break; + case CONTROLLER_ACTUAL_SHEET: + g_value_set_object (value, controller_get_actual_sheet (self)); + break; + case CONTROLLER_SHEETS_FILE: + g_value_set_string (value, controller_get_sheets_file (self)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_controller_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { + Controller * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_CONTROLLER, Controller); + switch (property_id) { + case CONTROLLER_INPUT: + controller_set_input (self, g_value_get_object (value)); + break; + case CONTROLLER_RESULTS: + controller_set_results (self, g_value_get_object (value)); + break; + case CONTROLLER_SETTINGS: + controller_set_settings (self, g_value_get_object (value)); + break; + case CONTROLLER_ACTUAL_SHEET: + controller_set_actual_sheet (self, g_value_get_object (value)); + break; + case CONTROLLER_SHEETS_FILE: + controller_set_sheets_file (self, g_value_get_string (value)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { + if ((array != NULL) && (destroy_func != NULL)) { + int i; + for (i = 0; i < array_length; i = i + 1) { + if (((gpointer*) array)[i] != NULL) { + destroy_func (((gpointer*) array)[i]); + } + } + } +} + + +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { + _vala_array_destroy (array, array_length, destroy_func); + g_free (array); +} + + +static gint _vala_array_length (gpointer array) { + int length; + length = 0; + if (array) { + while (((gpointer*) array)[length]) { + length++; + } + } + return length; +} + + + diff -Nru nasc-0.2/build/src/HelpBox.c nasc-0.3/build/src/HelpBox.c --- nasc-0.2/build/src/HelpBox.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/HelpBox.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,2246 @@ +/* HelpBox.c generated by valac 0.32.1, the Vala compiler + * generated from HelpBox.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_HELP_CELL_RENDERER (help_cell_renderer_get_type ()) +#define HELP_CELL_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HELP_CELL_RENDERER, HelpCellRenderer)) +#define HELP_CELL_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HELP_CELL_RENDERER, HelpCellRendererClass)) +#define IS_HELP_CELL_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HELP_CELL_RENDERER)) +#define IS_HELP_CELL_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HELP_CELL_RENDERER)) +#define HELP_CELL_RENDERER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HELP_CELL_RENDERER, HelpCellRendererClass)) + +typedef struct _HelpCellRenderer HelpCellRenderer; +typedef struct _HelpCellRendererClass HelpCellRendererClass; +typedef struct _HelpCellRendererPrivate HelpCellRendererPrivate; + +#define TYPE_HELP_BOX (help_box_get_type ()) +#define HELP_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HELP_BOX, HelpBox)) +#define HELP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HELP_BOX, HelpBoxClass)) +#define IS_HELP_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HELP_BOX)) +#define IS_HELP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HELP_BOX)) +#define HELP_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HELP_BOX, HelpBoxClass)) + +typedef struct _HelpBox HelpBox; +typedef struct _HelpBoxClass HelpBoxClass; +typedef struct _HelpBoxPrivate HelpBoxPrivate; + +#define TYPE_CONTROLLER (controller_get_type ()) +#define CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTROLLER, Controller)) +#define CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTROLLER, ControllerClass)) +#define IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTROLLER)) +#define IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTROLLER)) +#define CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTROLLER, ControllerClass)) + +typedef struct _Controller Controller; +typedef struct _ControllerClass ControllerClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +typedef struct _Block7Data Block7Data; + +#define TYPE_NASC_SETTINGS (nasc_settings_get_type ()) +#define NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SETTINGS, NascSettings)) +#define NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SETTINGS, NascSettingsClass)) +#define IS_NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SETTINGS)) +#define IS_NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SETTINGS)) +#define NASC_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SETTINGS, NascSettingsClass)) + +typedef struct _NascSettings NascSettings; +typedef struct _NascSettingsClass NascSettingsClass; +#define _g_free0(var) (var = (g_free (var), NULL)) + +#define TYPE_INPUT_VIEW (input_view_get_type ()) +#define INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INPUT_VIEW, InputView)) +#define INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INPUT_VIEW, InputViewClass)) +#define IS_INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INPUT_VIEW)) +#define IS_INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INPUT_VIEW)) +#define INPUT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INPUT_VIEW, InputViewClass)) + +typedef struct _InputView InputView; +typedef struct _InputViewClass InputViewClass; +typedef struct _InputViewPrivate InputViewPrivate; +typedef struct _Block8Data Block8Data; +typedef struct _ControllerPrivate ControllerPrivate; + +#define TYPE_CALCULATOR (calculator_get_type ()) +#define CALCULATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CALCULATOR, Calculator)) +#define CALCULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CALCULATOR, CalculatorClass)) +#define IS_CALCULATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CALCULATOR)) +#define IS_CALCULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CALCULATOR)) +#define CALCULATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CALCULATOR, CalculatorClass)) + +typedef struct _Calculator Calculator; +typedef struct _CalculatorClass CalculatorClass; + +#define TYPE_NASC_ELEMENT (nasc_element_get_type ()) +#define NASC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_ELEMENT, NascElement)) +#define NASC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_ELEMENT, NascElementClass)) +#define IS_NASC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_ELEMENT)) +#define IS_NASC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_ELEMENT)) +#define NASC_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_ELEMENT, NascElementClass)) + +typedef struct _NascElement NascElement; +typedef struct _NascElementClass NascElementClass; + +#define TYPE_NASC_FUNCTION (nasc_function_get_type ()) +#define NASC_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_FUNCTION, NascFunction)) +#define NASC_FUNCTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_FUNCTION, NascFunctionClass)) +#define IS_NASC_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_FUNCTION)) +#define IS_NASC_FUNCTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_FUNCTION)) +#define NASC_FUNCTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_FUNCTION, NascFunctionClass)) + +typedef struct _NascFunction NascFunction; +typedef struct _NascFunctionClass NascFunctionClass; +typedef struct _NascElementPrivate NascElementPrivate; +typedef struct _NascFunctionPrivate NascFunctionPrivate; + +#define TYPE_NASC_VARIABEL (nasc_variabel_get_type ()) +#define NASC_VARIABEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_VARIABEL, NascVariabel)) +#define NASC_VARIABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_VARIABEL, NascVariabelClass)) +#define IS_NASC_VARIABEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_VARIABEL)) +#define IS_NASC_VARIABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_VARIABEL)) +#define NASC_VARIABEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_VARIABEL, NascVariabelClass)) + +typedef struct _NascVariabel NascVariabel; +typedef struct _NascVariabelClass NascVariabelClass; +typedef struct _HelpBoxLoadListData HelpBoxLoadListData; +typedef struct _HelpBoxReloadListData HelpBoxReloadListData; + +struct _HelpCellRenderer { + GtkCellRendererText parent_instance; + HelpCellRendererPrivate * priv; + gboolean category; +}; + +struct _HelpCellRendererClass { + GtkCellRendererTextClass parent_class; +}; + +struct _HelpBox { + GtkBox parent_instance; + HelpBoxPrivate * priv; +}; + +struct _HelpBoxClass { + GtkBoxClass parent_class; +}; + +struct _HelpBoxPrivate { + Controller* controller; + GtkSearchEntry* search_entry; + GtkTreeView* list; + GtkListStore* list_store; + GtkStack* detail_stack; + GtkLabel* headline; + GtkLabel* name_label; + GtkLabel* arg_label; + GtkLabel* arg_list_label; + GtkLabel* desc_label; + GtkSeparator* seper; +}; + +struct _Block7Data { + int _ref_count_; + HelpBox* self; + Controller* controller; +}; + +struct _InputView { + GtkBox parent_instance; + InputViewPrivate * priv; + GtkSourceBuffer* buffer; + GtkSourceView* source_view; + GeeArrayList* operators; + gboolean skip_change; + gboolean scroll_needed; +}; + +struct _InputViewClass { + GtkBoxClass parent_class; +}; + +struct _Block8Data { + int _ref_count_; + HelpBox* self; + gpointer _async_data_; +}; + +struct _Controller { + GObject parent_instance; + ControllerPrivate * priv; + Calculator* calculator; +}; + +struct _ControllerClass { + GObjectClass parent_class; +}; + +struct _NascElement { + GObject parent_instance; + NascElementPrivate * priv; + gint index; + gchar* name; + gchar* title; + gchar* category; + gchar* desc; +}; + +struct _NascElementClass { + GObjectClass parent_class; +}; + +struct _NascFunction { + NascElement parent_instance; + NascFunctionPrivate * priv; + gchar* args; + gchar* args_list; +}; + +struct _NascFunctionClass { + NascElementClass parent_class; +}; + +struct _HelpBoxLoadListData { + int _state_; + GObject* _source_object_; + GAsyncResult* _res_; + GSimpleAsyncResult* _async_result; + HelpBox* self; + Block8Data* _data8_; + GtkTreeIter iter; + Controller* _tmp0_; + Calculator* _tmp1_; + GeeTreeMap* _tmp2_; + GeeTreeMap* _tmp3_; + gint _tmp4_; + gint _tmp5_; + gboolean _tmp6_; + GtkListStore* _tmp7_; + GtkTreeIter _tmp8_; + GtkListStore* _tmp9_; + GtkTreeIter _tmp10_; + GeeArrayList* _fe_list; + GeeArrayList* _tmp11_; + gint _fe_size; + GeeArrayList* _tmp12_; + gint _tmp13_; + gint _tmp14_; + gint _fe_index; + gint _tmp15_; + gint _tmp16_; + gint _tmp17_; + NascFunction* fe; + GeeArrayList* _tmp18_; + gint _tmp19_; + gpointer _tmp20_; + GtkListStore* _tmp21_; + GtkTreeIter _tmp22_; + GtkListStore* _tmp23_; + GtkTreeIter _tmp24_; + NascFunction* _tmp25_; + const gchar* _tmp26_; + NascFunction* _tmp27_; + const gchar* _tmp28_; + NascFunction* _tmp29_; + const gchar* _tmp30_; + NascFunction* _tmp31_; + const gchar* _tmp32_; + NascFunction* _tmp33_; + const gchar* _tmp34_; + NascFunction* _tmp35_; + const gchar* _tmp36_; + GeeIterator* _entry_it; + Controller* _tmp37_; + Calculator* _tmp38_; + GeeTreeMap* _tmp39_; + GeeTreeMap* _tmp40_; + GeeSortedSet* _tmp41_; + GeeSortedSet* _tmp42_; + GeeSortedSet* _tmp43_; + GeeIterator* _tmp44_; + GeeIterator* _tmp45_; + GeeIterator* _tmp46_; + gboolean _tmp47_; + GeeMapEntry* entry; + GeeIterator* _tmp48_; + gpointer _tmp49_; + GeeMapEntry* _tmp50_; + gconstpointer _tmp51_; + const gchar* _tmp52_; + GtkListStore* _tmp53_; + GtkTreeIter _tmp54_; + GtkListStore* _tmp55_; + GtkTreeIter _tmp56_; + GeeMapEntry* _tmp57_; + gconstpointer _tmp58_; + const gchar* _tmp59_; + GeeMapEntry* _tmp60_; + gconstpointer _tmp61_; + const gchar* _tmp62_; + GeeMapEntry* _tmp63_; + gconstpointer _tmp64_; + const gchar* _tmp65_; + GeeMapEntry* _tmp66_; + gconstpointer _tmp67_; + const gchar* _tmp68_; + GeeMapEntry* _tmp69_; + gconstpointer _tmp70_; + const gchar* _tmp71_; + GeeMapEntry* _tmp72_; + gconstpointer _tmp73_; + const gchar* _tmp74_; + GeeArrayList* _vala1__fe_list; + GeeMapEntry* _tmp75_; + gconstpointer _tmp76_; + GeeArrayList* _tmp77_; + GeeArrayList* _tmp78_; + gint _vala1__fe_size; + GeeArrayList* _tmp79_; + gint _tmp80_; + gint _tmp81_; + gint _vala1__fe_index; + gint _tmp82_; + gint _tmp83_; + gint _tmp84_; + NascFunction* _vala1_fe; + GeeArrayList* _tmp85_; + gint _tmp86_; + gpointer _tmp87_; + GtkListStore* _tmp88_; + GtkTreeIter _tmp89_; + GtkListStore* _tmp90_; + GtkTreeIter _tmp91_; + NascFunction* _tmp92_; + const gchar* _tmp93_; + NascFunction* _tmp94_; + const gchar* _tmp95_; + NascFunction* _tmp96_; + const gchar* _tmp97_; + NascFunction* _tmp98_; + const gchar* _tmp99_; + NascFunction* _tmp100_; + const gchar* _tmp101_; + NascFunction* _tmp102_; + const gchar* _tmp103_; + GtkListStore* _tmp104_; + GtkTreeIter _tmp105_; + GtkListStore* _tmp106_; + GtkTreeIter _tmp107_; + GeeList* _ve_list; + Controller* _tmp108_; + Calculator* _tmp109_; + GeeList* _tmp110_; + GeeList* _tmp111_; + GeeList* _tmp112_; + gint _ve_size; + GeeList* _tmp113_; + gint _tmp114_; + gint _tmp115_; + gint _ve_index; + gint _tmp116_; + gint _tmp117_; + gint _tmp118_; + NascVariabel* ve; + GeeList* _tmp119_; + gint _tmp120_; + gpointer _tmp121_; + GtkListStore* _tmp122_; + GtkTreeIter _tmp123_; + GtkListStore* _tmp124_; + GtkTreeIter _tmp125_; + NascVariabel* _tmp126_; + const gchar* _tmp127_; + NascVariabel* _tmp128_; + const gchar* _tmp129_; + NascVariabel* _tmp130_; + const gchar* _tmp131_; + GtkTreeView* _tmp132_; + GtkListStore* _tmp133_; + GtkTreeView* _tmp134_; +}; + +struct _HelpBoxReloadListData { + int _state_; + GObject* _source_object_; + GAsyncResult* _res_; + GSimpleAsyncResult* _async_result; + HelpBox* self; + GtkTreeView* _tmp0_; + guint _tmp1_; + GtkListStore* _tmp2_; +}; + + +static gpointer help_cell_renderer_parent_class = NULL; +static gpointer help_box_parent_class = NULL; + +GType help_cell_renderer_get_type (void) G_GNUC_CONST; +enum { + HELP_CELL_RENDERER_DUMMY_PROPERTY +}; +static void help_cell_renderer_real_render (GtkCellRenderer* base, cairo_t* ctx, GtkWidget* widget, GdkRectangle* background_area, GdkRectangle* cell_area, GtkCellRendererState flags); +HelpCellRenderer* help_cell_renderer_new (void); +HelpCellRenderer* help_cell_renderer_construct (GType object_type); +static void help_cell_renderer_finalize (GObject* obj); +GType help_box_get_type (void) G_GNUC_CONST; +GType controller_get_type (void) G_GNUC_CONST; +#define HELP_BOX_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_HELP_BOX, HelpBoxPrivate)) +enum { + HELP_BOX_DUMMY_PROPERTY +}; +HelpBox* help_box_new (Controller* controller); +HelpBox* help_box_construct (GType object_type, Controller* controller); +static Block7Data* block7_data_ref (Block7Data* _data7_); +static void block7_data_unref (void * _userdata_); +void help_box_cell_layout (HelpBox* self, GtkCellLayout* cell_layout, GtkCellRenderer* cell, GtkTreeModel* model, GtkTreeIter* iter); +static void _help_box_cell_layout_gtk_cell_layout_data_func (GtkCellLayout* cell_layout, GtkCellRenderer* cell, GtkTreeModel* tree_model, GtkTreeIter* iter, gpointer self); +GType nasc_settings_get_type (void) G_GNUC_CONST; +NascSettings* nasc_settings_get_instance (void); +gboolean nasc_settings_get_advanced_mode (NascSettings* self); +static void __lambda38_ (HelpBox* self); +void nasc_settings_set_advanced_mode (NascSettings* self, gboolean value); +static void help_box_reload_list (HelpBox* self, GAsyncReadyCallback _callback_, gpointer _user_data_); +static void help_box_reload_list_finish (HelpBox* self, GAsyncResult* _res_); +static void ___lambda38__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self); +static void help_box_on_search_change (HelpBox* self); +static void _help_box_on_search_change_gtk_search_entry_search_changed (GtkSearchEntry* _sender, gpointer self); +static void help_box_load_list (HelpBox* self, GAsyncReadyCallback _callback_, gpointer _user_data_); +static void help_box_load_list_finish (HelpBox* self, GAsyncResult* _res_); +static gboolean __lambda40_ (HelpBox* self, GdkEventKey* e); +static gboolean ___lambda40__gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self); +static gboolean __lambda41_ (Block7Data* _data7_, GdkEventButton* e); +GType input_view_get_type (void) G_GNUC_CONST; +InputView* controller_get_input (Controller* self); +static gboolean ___lambda41__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +void help_box_search_focus (HelpBox* self); +static void help_box_show_selection (HelpBox* self, GtkTreeIter* iter); +static void help_box_on_selection (HelpBox* self); +static void help_box_load_list_data_free (gpointer _data); +static gboolean help_box_load_list_co (HelpBoxLoadListData* _data_); +static Block8Data* block8_data_ref (Block8Data* _data8_); +static void block8_data_unref (void * _userdata_); +GType calculator_get_type (void) G_GNUC_CONST; +GType nasc_element_get_type (void) G_GNUC_CONST; +GType nasc_function_get_type (void) G_GNUC_CONST; +GeeTreeMap* calculator_category_functions (Calculator* self); +static gboolean ___lambda39_ (Block8Data* _data8_); +static gboolean ____lambda39__gsource_func (gpointer self); +static GeeArrayList* help_box_get_nasc_functions (HelpBox* self); +GType nasc_variabel_get_type (void) G_GNUC_CONST; +GeeList* calculator_get_variables (Calculator* self); +static void _help_box_on_selection_gtk_tree_view_cursor_changed (GtkTreeView* _sender, gpointer self); +static void help_box_reload_list_data_free (gpointer _data); +static gboolean help_box_reload_list_co (HelpBoxReloadListData* _data_); +static void help_box_reload_list_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_); +NascFunction* nasc_function_new_nasc (const gchar* name, const gchar* title, const gchar* desc); +NascFunction* nasc_function_construct_nasc (GType object_type, const gchar* name, const gchar* title, const gchar* desc); +static void help_box_finalize (GObject* obj); + + +static void help_cell_renderer_real_render (GtkCellRenderer* base, cairo_t* ctx, GtkWidget* widget, GdkRectangle* background_area, GdkRectangle* cell_area, GtkCellRendererState flags) { + HelpCellRenderer * self; + gboolean _tmp0_ = FALSE; + cairo_t* _tmp24_ = NULL; + GtkWidget* _tmp25_ = NULL; + GdkRectangle _tmp26_ = {0}; + GdkRectangle _tmp27_ = {0}; + GtkCellRendererState _tmp28_ = 0; + self = (HelpCellRenderer*) base; + g_return_if_fail (ctx != NULL); + g_return_if_fail (widget != NULL); + g_return_if_fail (background_area != NULL); + g_return_if_fail (cell_area != NULL); + _tmp0_ = self->category; + if (_tmp0_) { + cairo_t* _tmp1_ = NULL; + cairo_t* _tmp2_ = NULL; + GdkRectangle _tmp3_ = {0}; + gint _tmp4_ = 0; + GdkRectangle _tmp5_ = {0}; + gint _tmp6_ = 0; + GdkRectangle _tmp7_ = {0}; + gint _tmp8_ = 0; + GdkRectangle _tmp9_ = {0}; + gint _tmp10_ = 0; + cairo_t* _tmp11_ = NULL; + cairo_t* _tmp12_ = NULL; + cairo_t* _tmp13_ = NULL; + cairo_t* _tmp14_ = NULL; + GdkRectangle _tmp15_ = {0}; + gint _tmp16_ = 0; + GdkRectangle _tmp17_ = {0}; + gint _tmp18_ = 0; + GdkRectangle _tmp19_ = {0}; + gint _tmp20_ = 0; + GdkRectangle _tmp21_ = {0}; + gint _tmp22_ = 0; + cairo_t* _tmp23_ = NULL; + _tmp1_ = ctx; + cairo_set_source_rgba (_tmp1_, 0.82353, 0.82353, 0.82353, (gdouble) 1); + _tmp2_ = ctx; + _tmp3_ = *cell_area; + _tmp4_ = _tmp3_.x; + _tmp5_ = *cell_area; + _tmp6_ = _tmp5_.y; + _tmp7_ = *cell_area; + _tmp8_ = _tmp7_.width; + _tmp9_ = *cell_area; + _tmp10_ = _tmp9_.height; + cairo_rectangle (_tmp2_, (gdouble) (_tmp4_ - 5), (gdouble) _tmp6_, (gdouble) (_tmp8_ + 10), (gdouble) _tmp10_); + _tmp11_ = ctx; + cairo_fill (_tmp11_); + _tmp12_ = ctx; + cairo_set_line_width (_tmp12_, (gdouble) 1); + _tmp13_ = ctx; + cairo_set_source_rgba (_tmp13_, 0.68234, 0.68234, 0.68234, (gdouble) 1); + _tmp14_ = ctx; + _tmp15_ = *cell_area; + _tmp16_ = _tmp15_.x; + _tmp17_ = *cell_area; + _tmp18_ = _tmp17_.y; + _tmp19_ = *cell_area; + _tmp20_ = _tmp19_.width; + _tmp21_ = *cell_area; + _tmp22_ = _tmp21_.height; + cairo_rectangle (_tmp14_, (gdouble) (_tmp16_ - 5), (gdouble) _tmp18_, (gdouble) (_tmp20_ + 10), (gdouble) _tmp22_); + _tmp23_ = ctx; + cairo_stroke (_tmp23_); + } + _tmp24_ = ctx; + _tmp25_ = widget; + _tmp26_ = *background_area; + _tmp27_ = *cell_area; + _tmp28_ = flags; + GTK_CELL_RENDERER_CLASS (help_cell_renderer_parent_class)->render ((GtkCellRenderer*) G_TYPE_CHECK_INSTANCE_CAST (self, gtk_cell_renderer_text_get_type (), GtkCellRendererText), _tmp24_, _tmp25_, &_tmp26_, &_tmp27_, _tmp28_); +} + + +HelpCellRenderer* help_cell_renderer_construct (GType object_type) { + HelpCellRenderer * self = NULL; + self = (HelpCellRenderer*) g_object_new (object_type, NULL); + return self; +} + + +HelpCellRenderer* help_cell_renderer_new (void) { + return help_cell_renderer_construct (TYPE_HELP_CELL_RENDERER); +} + + +static void help_cell_renderer_class_init (HelpCellRendererClass * klass) { + help_cell_renderer_parent_class = g_type_class_peek_parent (klass); + ((GtkCellRendererClass *) klass)->render = help_cell_renderer_real_render; + G_OBJECT_CLASS (klass)->finalize = help_cell_renderer_finalize; +} + + +static void help_cell_renderer_instance_init (HelpCellRenderer * self) { +} + + +static void help_cell_renderer_finalize (GObject* obj) { + HelpCellRenderer * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_HELP_CELL_RENDERER, HelpCellRenderer); + G_OBJECT_CLASS (help_cell_renderer_parent_class)->finalize (obj); +} + + +GType help_cell_renderer_get_type (void) { + static volatile gsize help_cell_renderer_type_id__volatile = 0; + if (g_once_init_enter (&help_cell_renderer_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (HelpCellRendererClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) help_cell_renderer_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (HelpCellRenderer), 0, (GInstanceInitFunc) help_cell_renderer_instance_init, NULL }; + GType help_cell_renderer_type_id; + help_cell_renderer_type_id = g_type_register_static (gtk_cell_renderer_text_get_type (), "HelpCellRenderer", &g_define_type_info, 0); + g_once_init_leave (&help_cell_renderer_type_id__volatile, help_cell_renderer_type_id); + } + return help_cell_renderer_type_id__volatile; +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static Block7Data* block7_data_ref (Block7Data* _data7_) { + g_atomic_int_inc (&_data7_->_ref_count_); + return _data7_; +} + + +static void block7_data_unref (void * _userdata_) { + Block7Data* _data7_; + _data7_ = (Block7Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data7_->_ref_count_)) { + HelpBox* self; + self = _data7_->self; + _g_object_unref0 (_data7_->controller); + _g_object_unref0 (self); + g_slice_free (Block7Data, _data7_); + } +} + + +static void _help_box_cell_layout_gtk_cell_layout_data_func (GtkCellLayout* cell_layout, GtkCellRenderer* cell, GtkTreeModel* tree_model, GtkTreeIter* iter, gpointer self) { + help_box_cell_layout ((HelpBox*) self, cell_layout, cell, tree_model, iter); +} + + +static void __lambda38_ (HelpBox* self) { + NascSettings* _tmp0_ = NULL; + NascSettings* _tmp1_ = NULL; + NascSettings* _tmp2_ = NULL; + NascSettings* _tmp3_ = NULL; + gboolean _tmp4_ = FALSE; + gboolean _tmp5_ = FALSE; + _tmp0_ = nasc_settings_get_instance (); + _tmp1_ = _tmp0_; + _tmp2_ = nasc_settings_get_instance (); + _tmp3_ = _tmp2_; + _tmp4_ = nasc_settings_get_advanced_mode (_tmp3_); + _tmp5_ = _tmp4_; + nasc_settings_set_advanced_mode (_tmp1_, !_tmp5_); + _g_object_unref0 (_tmp3_); + _g_object_unref0 (_tmp1_); + help_box_reload_list (self, NULL, NULL); +} + + +static void ___lambda38__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) { + __lambda38_ ((HelpBox*) self); +} + + +static void _help_box_on_search_change_gtk_search_entry_search_changed (GtkSearchEntry* _sender, gpointer self) { + help_box_on_search_change ((HelpBox*) self); +} + + +static gboolean __lambda40_ (HelpBox* self, GdkEventKey* e) { + gboolean result = FALSE; + GdkEventKey* _tmp0_ = NULL; + GdkModifierType _tmp1_ = 0; + GtkSearchEntry* _tmp4_ = NULL; + GdkEventKey* _tmp5_ = NULL; + gboolean _tmp6_ = FALSE; + g_return_val_if_fail (e != NULL, FALSE); + _tmp0_ = e; + _tmp1_ = _tmp0_->state; + if ((_tmp1_ & GDK_CONTROL_MASK) != 0) { + GdkEventKey* _tmp2_ = NULL; + guint _tmp3_ = 0U; + _tmp2_ = e; + _tmp3_ = _tmp2_->keyval; + if (_tmp3_ == ((guint) GDK_KEY_h)) { + g_signal_emit_by_name (self, "close-help"); + result = TRUE; + return result; + } + } + _tmp4_ = self->priv->search_entry; + _tmp5_ = e; + g_signal_emit_by_name ((GtkWidget*) _tmp4_, "key-press-event", _tmp5_, &_tmp6_); + result = FALSE; + return result; +} + + +static gboolean ___lambda40__gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self) { + gboolean result; + result = __lambda40_ ((HelpBox*) self, event); + return result; +} + + +static gboolean __lambda41_ (Block7Data* _data7_, GdkEventButton* e) { + HelpBox* self; + gboolean result = FALSE; + GdkEventButton* _tmp0_ = NULL; + GdkEventType _tmp1_ = 0; + self = _data7_->self; + g_return_val_if_fail (e != NULL, FALSE); + _tmp0_ = e; + _tmp1_ = _tmp0_->type; + if (_tmp1_ == GDK_2BUTTON_PRESS) { + GtkTreeIter iter = {0}; + GValue val = {0}; + GtkTreeView* _tmp2_ = NULL; + GtkTreeSelection* _tmp3_ = NULL; + GtkTreeIter _tmp4_ = {0}; + GtkListStore* _tmp5_ = NULL; + GtkTreeIter _tmp6_ = {0}; + GValue _tmp7_ = {0}; + gchar* name = NULL; + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + GtkListStore* _tmp11_ = NULL; + GtkTreeIter _tmp12_ = {0}; + GValue _tmp13_ = {0}; + gchar* category = NULL; + const gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + Controller* _tmp19_ = NULL; + InputView* _tmp20_ = NULL; + InputView* _tmp21_ = NULL; + GtkSourceView* _tmp22_ = NULL; + GtkTextBuffer* _tmp23_ = NULL; + GtkTextBuffer* _tmp24_ = NULL; + const gchar* _tmp25_ = NULL; + Controller* _tmp26_ = NULL; + InputView* _tmp27_ = NULL; + InputView* _tmp28_ = NULL; + GtkSourceView* _tmp29_ = NULL; + _tmp2_ = self->priv->list; + _tmp3_ = gtk_tree_view_get_selection (_tmp2_); + gtk_tree_selection_get_selected (_tmp3_, NULL, &_tmp4_); + iter = _tmp4_; + _tmp5_ = self->priv->list_store; + _tmp6_ = iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp5_, &_tmp6_, 0, &_tmp7_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp7_; + _tmp8_ = g_value_get_string (&val); + _tmp9_ = g_strdup (_tmp8_); + name = _tmp9_; + _tmp10_ = name; + if (g_strcmp0 (_tmp10_, "") == 0) { + result = FALSE; + _g_free0 (name); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + return result; + } + _tmp11_ = self->priv->list_store; + _tmp12_ = iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp11_, &_tmp12_, 2, &_tmp13_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp13_; + _tmp14_ = g_value_get_string (&val); + _tmp15_ = g_strdup (_tmp14_); + category = _tmp15_; + _tmp16_ = category; + if (!(g_strcmp0 (_tmp16_, "Variables") == 0)) { + const gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + _tmp17_ = name; + _tmp18_ = g_strconcat (_tmp17_, "(", NULL); + _g_free0 (name); + name = _tmp18_; + } + _tmp19_ = _data7_->controller; + _tmp20_ = controller_get_input (_tmp19_); + _tmp21_ = _tmp20_; + _tmp22_ = _tmp21_->source_view; + _tmp23_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp22_); + _tmp24_ = _tmp23_; + _tmp25_ = name; + gtk_text_buffer_insert_at_cursor (_tmp24_, _tmp25_, -1); + _tmp26_ = _data7_->controller; + _tmp27_ = controller_get_input (_tmp26_); + _tmp28_ = _tmp27_; + _tmp29_ = _tmp28_->source_view; + gtk_widget_grab_focus ((GtkWidget*) _tmp29_); + _g_free0 (category); + _g_free0 (name); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + } + result = FALSE; + return result; +} + + +static gboolean ___lambda41__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = __lambda41_ (self, event); + return result; +} + + +HelpBox* help_box_construct (GType object_type, Controller* controller) { + HelpBox * self = NULL; + Block7Data* _data7_; + Controller* _tmp0_ = NULL; + Controller* _tmp1_ = NULL; + Controller* _tmp2_ = NULL; + Controller* _tmp3_ = NULL; + GtkListStore* _tmp4_ = NULL; + GtkSearchEntry* _tmp5_ = NULL; + GtkSearchEntry* _tmp6_ = NULL; + GtkSearchEntry* _tmp7_ = NULL; + GtkSearchEntry* _tmp8_ = NULL; + GtkSeparator* _tmp9_ = NULL; + GtkSeparator* _tmp10_ = NULL; + GtkPaned* pane = NULL; + GtkPaned* _tmp11_ = NULL; + GtkScrolledWindow* scroll = NULL; + GtkScrolledWindow* _tmp12_ = NULL; + GtkTreeView* _tmp13_ = NULL; + HelpCellRenderer* cell = NULL; + HelpCellRenderer* _tmp14_ = NULL; + GtkTreeViewColumn* column = NULL; + const gchar* _tmp15_ = NULL; + GtkTreeViewColumn* _tmp16_ = NULL; + GtkTreeView* _tmp17_ = NULL; + GtkTreeView* _tmp18_ = NULL; + GtkTreeView* _tmp19_ = NULL; + GtkTreeView* _tmp20_ = NULL; + GtkTreeView* _tmp21_ = NULL; + GtkSearchEntry* _tmp22_ = NULL; + GtkTreeView* _tmp23_ = NULL; + GtkTreeView* _tmp24_ = NULL; + GtkStack* _tmp25_ = NULL; + GtkBox* detail_box = NULL; + GtkBox* _tmp26_ = NULL; + GtkLabel* _tmp27_ = NULL; + GtkLabel* _tmp28_ = NULL; + GtkLabel* _tmp29_ = NULL; + GtkLabel* _tmp30_ = NULL; + GtkLabel* _tmp31_ = NULL; + GtkLabel* _tmp32_ = NULL; + GtkLabel* _tmp33_ = NULL; + GtkLabel* _tmp34_ = NULL; + GtkLabel* _tmp35_ = NULL; + GtkLabel* _tmp36_ = NULL; + GtkLabel* _tmp37_ = NULL; + GtkLabel* _tmp38_ = NULL; + GtkLabel* _tmp39_ = NULL; + GtkLabel* _tmp40_ = NULL; + GtkLabel* _tmp41_ = NULL; + GtkLabel* _tmp42_ = NULL; + GtkLabel* _tmp43_ = NULL; + GtkLabel* _tmp44_ = NULL; + GtkLabel* _tmp45_ = NULL; + GtkLabel* _tmp46_ = NULL; + GtkLabel* _tmp47_ = NULL; + GtkLabel* _tmp48_ = NULL; + GtkLabel* _tmp49_ = NULL; + GtkLabel* _tmp50_ = NULL; + GtkLabel* _tmp51_ = NULL; + GtkLabel* _tmp52_ = NULL; + GtkLabel* _tmp53_ = NULL; + GtkLabel* _tmp54_ = NULL; + GtkLabel* _tmp55_ = NULL; + GtkLabel* _tmp56_ = NULL; + GtkLabel* _tmp57_ = NULL; + GtkLabel* _tmp58_ = NULL; + GtkLabel* _tmp59_ = NULL; + GtkLabel* _tmp60_ = NULL; + GtkLabel* _tmp61_ = NULL; + GtkLabel* _tmp62_ = NULL; + GtkSeparator* _tmp63_ = NULL; + GtkSeparator* _tmp64_ = NULL; + GtkSeparator* _tmp65_ = NULL; + GtkLabel* _tmp66_ = NULL; + GtkLabel* _tmp67_ = NULL; + GtkLabel* _tmp68_ = NULL; + GtkLabel* _tmp69_ = NULL; + GtkSeparator* _tmp70_ = NULL; + GtkLabel* _tmp71_ = NULL; + GtkBox* amath_box = NULL; + GtkBox* _tmp72_ = NULL; + GtkLabel* a_headline = NULL; + GtkLabel* _tmp73_ = NULL; + GtkLabel* a_desc_label = NULL; + GtkLabel* _tmp74_ = NULL; + GtkSwitch* a_switch = NULL; + GtkSwitch* _tmp75_ = NULL; + NascSettings* _tmp76_ = NULL; + NascSettings* _tmp77_ = NULL; + gboolean _tmp78_ = FALSE; + gboolean _tmp79_ = FALSE; + GtkStack* _tmp80_ = NULL; + GtkStack* _tmp81_ = NULL; + GtkStack* _tmp82_ = NULL; + GtkSearchEntry* _tmp83_ = NULL; + GtkTreeView* _tmp84_ = NULL; + GtkTreeView* _tmp85_ = NULL; + g_return_val_if_fail (controller != NULL, NULL); + _data7_ = g_slice_new0 (Block7Data); + _data7_->_ref_count_ = 1; + _tmp0_ = controller; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (_data7_->controller); + _data7_->controller = _tmp1_; + self = (HelpBox*) g_object_new (object_type, NULL); + _data7_->self = g_object_ref (self); + _tmp2_ = _data7_->controller; + _tmp3_ = _g_object_ref0 (_tmp2_); + _g_object_unref0 (self->priv->controller); + self->priv->controller = _tmp3_; + _tmp4_ = gtk_list_store_new (6, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, -1); + _g_object_unref0 (self->priv->list_store); + self->priv->list_store = _tmp4_; + gtk_orientable_set_orientation ((GtkOrientable*) self, GTK_ORIENTATION_VERTICAL); + _tmp5_ = (GtkSearchEntry*) gtk_search_entry_new (); + g_object_ref_sink (_tmp5_); + _g_object_unref0 (self->priv->search_entry); + self->priv->search_entry = _tmp5_; + _tmp6_ = self->priv->search_entry; + g_object_set ((GtkWidget*) _tmp6_, "margin", 10, NULL); + _tmp7_ = self->priv->search_entry; + gtk_widget_set_hexpand ((GtkWidget*) _tmp7_, TRUE); + _tmp8_ = self->priv->search_entry; + gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp8_, FALSE, TRUE, (guint) 0); + _tmp9_ = (GtkSeparator*) gtk_separator_new (GTK_ORIENTATION_HORIZONTAL); + g_object_ref_sink (_tmp9_); + _tmp10_ = _tmp9_; + gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp10_, FALSE, TRUE, (guint) 0); + _g_object_unref0 (_tmp10_); + _tmp11_ = (GtkPaned*) gtk_paned_new (GTK_ORIENTATION_VERTICAL); + g_object_ref_sink (_tmp11_); + pane = _tmp11_; + _tmp12_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL); + g_object_ref_sink (_tmp12_); + scroll = _tmp12_; + gtk_scrolled_window_set_policy (scroll, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + _tmp13_ = (GtkTreeView*) gtk_tree_view_new (); + g_object_ref_sink (_tmp13_); + _g_object_unref0 (self->priv->list); + self->priv->list = _tmp13_; + _tmp14_ = help_cell_renderer_new (); + g_object_ref_sink (_tmp14_); + cell = _tmp14_; + g_object_set ((GtkCellRenderer*) cell, "xpad", (guint) 10, NULL); + _tmp15_ = _ ("Name"); + _tmp16_ = gtk_tree_view_column_new_with_attributes (_tmp15_, (GtkCellRenderer*) cell, NULL); + g_object_ref_sink (_tmp16_); + column = _tmp16_; + gtk_cell_layout_set_cell_data_func ((GtkCellLayout*) column, (GtkCellRenderer*) cell, _help_box_cell_layout_gtk_cell_layout_data_func, g_object_ref (self), g_object_unref); + _tmp17_ = self->priv->list; + gtk_tree_view_insert_column (_tmp17_, column, -1); + _tmp18_ = self->priv->list; + gtk_tree_view_set_activate_on_single_click (_tmp18_, TRUE); + _tmp19_ = self->priv->list; + gtk_tree_view_set_enable_search (_tmp19_, TRUE); + _tmp20_ = self->priv->list; + gtk_tree_view_set_search_column (_tmp20_, 1); + _tmp21_ = self->priv->list; + _tmp22_ = self->priv->search_entry; + gtk_tree_view_set_search_entry (_tmp21_, (GtkEntry*) _tmp22_); + _tmp23_ = self->priv->list; + gtk_tree_view_set_headers_visible (_tmp23_, FALSE); + _tmp24_ = self->priv->list; + gtk_container_add ((GtkContainer*) scroll, (GtkWidget*) _tmp24_); + _tmp25_ = (GtkStack*) gtk_stack_new (); + g_object_ref_sink (_tmp25_); + _g_object_unref0 (self->priv->detail_stack); + self->priv->detail_stack = _tmp25_; + _tmp26_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); + g_object_ref_sink (_tmp26_); + detail_box = _tmp26_; + _tmp27_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp27_); + _g_object_unref0 (self->priv->headline); + self->priv->headline = _tmp27_; + _tmp28_ = self->priv->headline; + gtk_widget_set_margin_top ((GtkWidget*) _tmp28_, 10); + _tmp29_ = self->priv->headline; + gtk_widget_set_margin_left ((GtkWidget*) _tmp29_, 10); + _tmp30_ = self->priv->headline; + gtk_widget_set_halign ((GtkWidget*) _tmp30_, GTK_ALIGN_START); + _tmp31_ = self->priv->headline; + gtk_misc_set_alignment ((GtkMisc*) _tmp31_, (gfloat) 0, (gfloat) 0); + _tmp32_ = self->priv->headline; + gtk_label_set_use_markup (_tmp32_, TRUE); + _tmp33_ = self->priv->headline; + g_object_set (_tmp33_, "wrap", TRUE, NULL); + _tmp34_ = self->priv->headline; + gtk_label_set_justify (_tmp34_, GTK_JUSTIFY_LEFT); + _tmp35_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp35_); + _g_object_unref0 (self->priv->name_label); + self->priv->name_label = _tmp35_; + _tmp36_ = self->priv->name_label; + gtk_widget_set_margin_top ((GtkWidget*) _tmp36_, 8); + _tmp37_ = self->priv->name_label; + gtk_widget_set_margin_left ((GtkWidget*) _tmp37_, 10); + _tmp38_ = self->priv->name_label; + gtk_widget_set_halign ((GtkWidget*) _tmp38_, GTK_ALIGN_START); + _tmp39_ = self->priv->name_label; + gtk_label_set_use_markup (_tmp39_, TRUE); + _tmp40_ = self->priv->name_label; + g_object_set (_tmp40_, "wrap", TRUE, NULL); + _tmp41_ = self->priv->name_label; + gtk_misc_set_alignment ((GtkMisc*) _tmp41_, (gfloat) 0, (gfloat) 0); + _tmp42_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp42_); + _g_object_unref0 (self->priv->arg_label); + self->priv->arg_label = _tmp42_; + _tmp43_ = self->priv->arg_label; + gtk_widget_set_margin_top ((GtkWidget*) _tmp43_, 8); + _tmp44_ = self->priv->arg_label; + gtk_widget_set_margin_left ((GtkWidget*) _tmp44_, 10); + _tmp45_ = self->priv->arg_label; + gtk_widget_set_halign ((GtkWidget*) _tmp45_, GTK_ALIGN_START); + _tmp46_ = self->priv->arg_label; + gtk_label_set_use_markup (_tmp46_, TRUE); + _tmp47_ = self->priv->arg_label; + g_object_set (_tmp47_, "wrap", TRUE, NULL); + _tmp48_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp48_); + _g_object_unref0 (self->priv->arg_list_label); + self->priv->arg_list_label = _tmp48_; + _tmp49_ = self->priv->arg_list_label; + gtk_widget_set_margin_top ((GtkWidget*) _tmp49_, 10); + _tmp50_ = self->priv->arg_list_label; + gtk_widget_set_margin_left ((GtkWidget*) _tmp50_, 20); + _tmp51_ = self->priv->arg_list_label; + gtk_widget_set_halign ((GtkWidget*) _tmp51_, GTK_ALIGN_START); + _tmp52_ = self->priv->arg_list_label; + gtk_label_set_use_markup (_tmp52_, TRUE); + _tmp53_ = self->priv->arg_list_label; + g_object_set (_tmp53_, "wrap", TRUE, NULL); + _tmp54_ = self->priv->arg_list_label; + gtk_misc_set_alignment ((GtkMisc*) _tmp54_, (gfloat) 0, (gfloat) 0); + _tmp55_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp55_); + _g_object_unref0 (self->priv->desc_label); + self->priv->desc_label = _tmp55_; + _tmp56_ = self->priv->desc_label; + gtk_widget_set_margin_top ((GtkWidget*) _tmp56_, 10); + _tmp57_ = self->priv->desc_label; + gtk_widget_set_margin_left ((GtkWidget*) _tmp57_, 10); + _tmp58_ = self->priv->desc_label; + gtk_widget_set_halign ((GtkWidget*) _tmp58_, GTK_ALIGN_START); + _tmp59_ = self->priv->desc_label; + gtk_label_set_use_markup (_tmp59_, TRUE); + _tmp60_ = self->priv->desc_label; + g_object_set (_tmp60_, "wrap", TRUE, NULL); + _tmp61_ = self->priv->desc_label; + gtk_label_set_justify (_tmp61_, GTK_JUSTIFY_LEFT); + _tmp62_ = self->priv->desc_label; + gtk_misc_set_alignment ((GtkMisc*) _tmp62_, (gfloat) 0, (gfloat) 0); + _tmp63_ = (GtkSeparator*) gtk_separator_new (GTK_ORIENTATION_HORIZONTAL); + g_object_ref_sink (_tmp63_); + _g_object_unref0 (self->priv->seper); + self->priv->seper = _tmp63_; + _tmp64_ = self->priv->seper; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp64_, TRUE); + _tmp65_ = self->priv->seper; + gtk_widget_set_margin_top ((GtkWidget*) _tmp65_, 6); + _tmp66_ = self->priv->headline; + gtk_box_pack_start (detail_box, (GtkWidget*) _tmp66_, FALSE, TRUE, (guint) 0); + _tmp67_ = self->priv->name_label; + gtk_box_pack_start (detail_box, (GtkWidget*) _tmp67_, FALSE, TRUE, (guint) 0); + _tmp68_ = self->priv->arg_label; + gtk_box_pack_start (detail_box, (GtkWidget*) _tmp68_, FALSE, TRUE, (guint) 0); + _tmp69_ = self->priv->arg_list_label; + gtk_box_pack_start (detail_box, (GtkWidget*) _tmp69_, FALSE, TRUE, (guint) 0); + _tmp70_ = self->priv->seper; + gtk_box_pack_start (detail_box, (GtkWidget*) _tmp70_, FALSE, TRUE, (guint) 0); + _tmp71_ = self->priv->desc_label; + gtk_box_pack_start (detail_box, (GtkWidget*) _tmp71_, FALSE, TRUE, (guint) 0); + _tmp72_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); + g_object_ref_sink (_tmp72_); + amath_box = _tmp72_; + _tmp73_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp73_); + a_headline = _tmp73_; + gtk_widget_set_margin_top ((GtkWidget*) a_headline, 10); + gtk_widget_set_margin_left ((GtkWidget*) a_headline, 10); + gtk_widget_set_halign ((GtkWidget*) a_headline, GTK_ALIGN_START); + gtk_misc_set_alignment ((GtkMisc*) a_headline, (gfloat) 0, (gfloat) 0); + gtk_label_set_use_markup (a_headline, TRUE); + g_object_set (a_headline, "wrap", TRUE, NULL); + gtk_label_set_justify (a_headline, GTK_JUSTIFY_LEFT); + gtk_label_set_markup (a_headline, "Advanced Math"); + _tmp74_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp74_); + a_desc_label = _tmp74_; + gtk_widget_set_margin_top ((GtkWidget*) a_desc_label, 10); + gtk_widget_set_margin_left ((GtkWidget*) a_desc_label, 10); + gtk_widget_set_halign ((GtkWidget*) a_desc_label, GTK_ALIGN_START); + gtk_label_set_use_markup (a_desc_label, TRUE); + g_object_set (a_desc_label, "wrap", TRUE, NULL); + gtk_label_set_justify (a_desc_label, GTK_JUSTIFY_LEFT); + gtk_misc_set_alignment ((GtkMisc*) a_desc_label, (gfloat) 0, (gfloat) 0); + gtk_label_set_markup (a_desc_label, "Shows advanced math functions in the help"); + _tmp75_ = (GtkSwitch*) gtk_switch_new (); + g_object_ref_sink (_tmp75_); + a_switch = _tmp75_; + gtk_widget_set_margin_top ((GtkWidget*) a_switch, 10); + gtk_widget_set_margin_left ((GtkWidget*) a_switch, 10); + gtk_widget_set_halign ((GtkWidget*) a_switch, GTK_ALIGN_START); + _tmp76_ = nasc_settings_get_instance (); + _tmp77_ = _tmp76_; + _tmp78_ = nasc_settings_get_advanced_mode (_tmp77_); + _tmp79_ = _tmp78_; + gtk_switch_set_active (a_switch, _tmp79_); + _g_object_unref0 (_tmp77_); + g_signal_connect_object ((GObject*) a_switch, "notify::active", (GCallback) ___lambda38__g_object_notify, self, 0); + gtk_box_pack_start (amath_box, (GtkWidget*) a_headline, FALSE, TRUE, (guint) 0); + gtk_box_pack_start (amath_box, (GtkWidget*) a_desc_label, FALSE, TRUE, (guint) 0); + gtk_box_pack_start (amath_box, (GtkWidget*) a_switch, FALSE, TRUE, (guint) 0); + _tmp80_ = self->priv->detail_stack; + gtk_stack_add_named (_tmp80_, (GtkWidget*) detail_box, "detail"); + _tmp81_ = self->priv->detail_stack; + gtk_stack_add_named (_tmp81_, (GtkWidget*) amath_box, "amath"); + gtk_paned_pack1 (pane, (GtkWidget*) scroll, TRUE, FALSE); + _tmp82_ = self->priv->detail_stack; + gtk_paned_pack2 (pane, (GtkWidget*) _tmp82_, TRUE, FALSE); + gtk_paned_set_position (pane, 350); + gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) pane, TRUE, TRUE, (guint) 0); + _tmp83_ = self->priv->search_entry; + g_signal_connect_object (_tmp83_, "search-changed", (GCallback) _help_box_on_search_change_gtk_search_entry_search_changed, self, 0); + help_box_load_list (self, NULL, NULL); + _tmp84_ = self->priv->list; + g_signal_connect_object ((GtkWidget*) _tmp84_, "key-press-event", (GCallback) ___lambda40__gtk_widget_key_press_event, self, 0); + _tmp85_ = self->priv->list; + g_signal_connect_data ((GtkWidget*) _tmp85_, "button-press-event", (GCallback) ___lambda41__gtk_widget_button_press_event, block7_data_ref (_data7_), (GClosureNotify) block7_data_unref, 0); + _g_object_unref0 (a_switch); + _g_object_unref0 (a_desc_label); + _g_object_unref0 (a_headline); + _g_object_unref0 (amath_box); + _g_object_unref0 (detail_box); + _g_object_unref0 (column); + _g_object_unref0 (cell); + _g_object_unref0 (scroll); + _g_object_unref0 (pane); + block7_data_unref (_data7_); + _data7_ = NULL; + return self; +} + + +HelpBox* help_box_new (Controller* controller) { + return help_box_construct (TYPE_HELP_BOX, controller); +} + + +void help_box_search_focus (HelpBox* self) { + GtkTreeView* _tmp0_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->list; + gtk_widget_grab_focus ((GtkWidget*) _tmp0_); +} + + +void help_box_cell_layout (HelpBox* self, GtkCellLayout* cell_layout, GtkCellRenderer* cell, GtkTreeModel* model, GtkTreeIter* iter) { + GValue name_val = {0}; + GtkTreeModel* _tmp0_ = NULL; + GtkTreeIter _tmp1_ = {0}; + GValue _tmp2_ = {0}; + gchar* name = NULL; + const gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + GValue cat_val = {0}; + GtkTreeModel* _tmp5_ = NULL; + GtkTreeIter _tmp6_ = {0}; + GValue _tmp7_ = {0}; + gchar* cat = NULL; + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + GtkCellRenderer* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + const gchar* _tmp12_ = NULL; + const gchar* _tmp13_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (cell_layout != NULL); + g_return_if_fail (cell != NULL); + g_return_if_fail (model != NULL); + g_return_if_fail (iter != NULL); + _tmp0_ = model; + _tmp1_ = *iter; + gtk_tree_model_get_value (_tmp0_, &_tmp1_, 1, &_tmp2_); + G_IS_VALUE (&name_val) ? (g_value_unset (&name_val), NULL) : NULL; + name_val = _tmp2_; + _tmp3_ = g_value_get_string (&name_val); + _tmp4_ = g_strdup (_tmp3_); + name = _tmp4_; + _tmp5_ = model; + _tmp6_ = *iter; + gtk_tree_model_get_value (_tmp5_, &_tmp6_, 2, &_tmp7_); + G_IS_VALUE (&cat_val) ? (g_value_unset (&cat_val), NULL) : NULL; + cat_val = _tmp7_; + _tmp8_ = g_value_get_string (&cat_val); + _tmp9_ = g_strdup (_tmp8_); + cat = _tmp9_; + _tmp10_ = cell; + _tmp11_ = name; + g_object_set (G_TYPE_CHECK_INSTANCE_TYPE (_tmp10_, gtk_cell_renderer_text_get_type ()) ? ((GtkCellRendererText*) _tmp10_) : NULL, "text", _tmp11_, NULL); + _tmp12_ = name; + _tmp13_ = cat; + if (g_strcmp0 (_tmp12_, _tmp13_) == 0) { + GtkCellRenderer* _tmp14_ = NULL; + _tmp14_ = cell; + (G_TYPE_CHECK_INSTANCE_TYPE (_tmp14_, TYPE_HELP_CELL_RENDERER) ? ((HelpCellRenderer*) _tmp14_) : NULL)->category = TRUE; + } else { + GtkCellRenderer* _tmp15_ = NULL; + _tmp15_ = cell; + (G_TYPE_CHECK_INSTANCE_TYPE (_tmp15_, TYPE_HELP_CELL_RENDERER) ? ((HelpCellRenderer*) _tmp15_) : NULL)->category = FALSE; + } + _g_free0 (cat); + G_IS_VALUE (&cat_val) ? (g_value_unset (&cat_val), NULL) : NULL; + _g_free0 (name); + G_IS_VALUE (&name_val) ? (g_value_unset (&name_val), NULL) : NULL; +} + + +static void help_box_on_search_change (HelpBox* self) { + GtkSearchEntry* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + GtkTreeView* _tmp8_ = NULL; + GtkTreeIter iter = {0}; + GtkTreeModel* model = NULL; + GtkTreeView* _tmp9_ = NULL; + GtkTreeSelection* _tmp10_ = NULL; + GtkTreeModel* _tmp11_ = NULL; + GtkTreeIter _tmp12_ = {0}; + GtkTreeModel* _tmp13_ = NULL; + GtkTreeIter _tmp14_ = {0}; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->search_entry; + _tmp1_ = gtk_entry_get_text ((GtkEntry*) _tmp0_); + if (g_strcmp0 (_tmp1_, "") == 0) { + GtkLabel* _tmp2_ = NULL; + GtkLabel* _tmp3_ = NULL; + GtkLabel* _tmp4_ = NULL; + GtkLabel* _tmp5_ = NULL; + GtkLabel* _tmp6_ = NULL; + GtkSeparator* _tmp7_ = NULL; + _tmp2_ = self->priv->headline; + gtk_label_set_text (_tmp2_, ""); + _tmp3_ = self->priv->name_label; + gtk_label_set_text (_tmp3_, ""); + _tmp4_ = self->priv->arg_label; + gtk_label_set_text (_tmp4_, ""); + _tmp5_ = self->priv->arg_list_label; + gtk_label_set_text (_tmp5_, ""); + _tmp6_ = self->priv->desc_label; + gtk_label_set_text (_tmp6_, ""); + _tmp7_ = self->priv->seper; + gtk_widget_hide ((GtkWidget*) _tmp7_); + return; + } + _tmp8_ = self->priv->list; + gtk_widget_grab_focus ((GtkWidget*) _tmp8_); + _tmp9_ = self->priv->list; + _tmp10_ = gtk_tree_view_get_selection (_tmp9_); + gtk_tree_selection_get_selected (_tmp10_, &_tmp11_, &_tmp12_); + _g_object_unref0 (model); + _tmp13_ = _g_object_ref0 (_tmp11_); + model = _tmp13_; + iter = _tmp12_; + _tmp14_ = iter; + help_box_show_selection (self, &_tmp14_); + _g_object_unref0 (model); +} + + +static void help_box_on_selection (HelpBox* self) { + GtkTreeIter iter = {0}; + GtkTreeView* _tmp0_ = NULL; + GtkTreeSelection* _tmp1_ = NULL; + GtkTreeIter _tmp2_ = {0}; + GtkTreeIter _tmp3_ = {0}; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->list; + _tmp1_ = gtk_tree_view_get_selection (_tmp0_); + gtk_tree_selection_get_selected (_tmp1_, NULL, &_tmp2_); + iter = _tmp2_; + _tmp3_ = iter; + help_box_show_selection (self, &_tmp3_); +} + + +static void help_box_show_selection (HelpBox* self, GtkTreeIter* iter) { + GtkTreeIter _tmp0_ = {0}; + gint _tmp1_ = 0; + GValue val = {0}; + GtkListStore* _tmp2_ = NULL; + GtkTreeIter _tmp3_ = {0}; + GValue _tmp4_ = {0}; + const gchar* _tmp5_ = NULL; + GtkStack* _tmp14_ = NULL; + GtkLabel* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gchar* _tmp20_ = NULL; + GtkListStore* _tmp21_ = NULL; + GtkTreeIter _tmp22_ = {0}; + GValue _tmp23_ = {0}; + gchar* name = NULL; + const gchar* _tmp24_ = NULL; + gchar* _tmp25_ = NULL; + GtkListStore* _tmp26_ = NULL; + GtkTreeIter _tmp27_ = {0}; + GValue _tmp28_ = {0}; + gchar* category = NULL; + const gchar* _tmp29_ = NULL; + gchar* _tmp30_ = NULL; + GtkListStore* _tmp31_ = NULL; + GtkTreeIter _tmp32_ = {0}; + GValue _tmp33_ = {0}; + const gchar* _tmp34_ = NULL; + const gchar* _tmp35_ = NULL; + const gchar* _tmp41_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (iter != NULL); + _tmp0_ = *iter; + _tmp1_ = _tmp0_.stamp; + if (_tmp1_ == 0) { + return; + } + _tmp2_ = self->priv->list_store; + _tmp3_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp2_, &_tmp3_, 1, &_tmp4_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp4_; + _tmp5_ = g_value_get_string (&val); + if (_tmp5_ == NULL) { + GtkLabel* _tmp6_ = NULL; + GtkLabel* _tmp7_ = NULL; + GtkLabel* _tmp8_ = NULL; + GtkLabel* _tmp9_ = NULL; + GtkLabel* _tmp10_ = NULL; + GtkSeparator* _tmp11_ = NULL; + _tmp6_ = self->priv->headline; + gtk_label_set_text (_tmp6_, ""); + _tmp7_ = self->priv->name_label; + gtk_label_set_text (_tmp7_, ""); + _tmp8_ = self->priv->arg_label; + gtk_label_set_text (_tmp8_, ""); + _tmp9_ = self->priv->arg_list_label; + gtk_label_set_text (_tmp9_, ""); + _tmp10_ = self->priv->desc_label; + gtk_label_set_text (_tmp10_, ""); + _tmp11_ = self->priv->seper; + gtk_widget_hide ((GtkWidget*) _tmp11_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + return; + } else { + const gchar* _tmp12_ = NULL; + _tmp12_ = g_value_get_string (&val); + if (g_strcmp0 (_tmp12_, "Advanced Math") == 0) { + GtkStack* _tmp13_ = NULL; + _tmp13_ = self->priv->detail_stack; + gtk_stack_set_visible_child_name (_tmp13_, "amath"); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + return; + } + } + _tmp14_ = self->priv->detail_stack; + gtk_stack_set_visible_child_name (_tmp14_, "detail"); + _tmp15_ = self->priv->headline; + _tmp16_ = g_value_get_string (&val); + _tmp17_ = g_markup_escape_text (_tmp16_, (gssize) -1); + _tmp18_ = _tmp17_; + _tmp19_ = g_strdup_printf ("%s", _tmp18_); + _tmp20_ = _tmp19_; + gtk_label_set_markup (_tmp15_, _tmp20_); + _g_free0 (_tmp20_); + _g_free0 (_tmp18_); + _tmp21_ = self->priv->list_store; + _tmp22_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp21_, &_tmp22_, 0, &_tmp23_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp23_; + _tmp24_ = g_value_get_string (&val); + _tmp25_ = g_strdup (_tmp24_); + name = _tmp25_; + _tmp26_ = self->priv->list_store; + _tmp27_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp26_, &_tmp27_, 2, &_tmp28_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp28_; + _tmp29_ = g_value_get_string (&val); + _tmp30_ = g_strdup (_tmp29_); + category = _tmp30_; + _tmp31_ = self->priv->list_store; + _tmp32_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp31_, &_tmp32_, 5, &_tmp33_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp33_; + _tmp34_ = name; + _tmp35_ = g_value_get_string (&val); + if (g_strcmp0 (_tmp34_, _tmp35_) == 0) { + GtkLabel* _tmp36_ = NULL; + GtkLabel* _tmp37_ = NULL; + GtkLabel* _tmp38_ = NULL; + GtkLabel* _tmp39_ = NULL; + GtkSeparator* _tmp40_ = NULL; + _tmp36_ = self->priv->name_label; + gtk_label_set_text (_tmp36_, ""); + _tmp37_ = self->priv->arg_label; + gtk_label_set_text (_tmp37_, ""); + _tmp38_ = self->priv->arg_list_label; + gtk_label_set_text (_tmp38_, ""); + _tmp39_ = self->priv->desc_label; + gtk_label_set_text (_tmp39_, ""); + _tmp40_ = self->priv->seper; + gtk_widget_hide ((GtkWidget*) _tmp40_); + _g_free0 (category); + _g_free0 (name); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + return; + } + _tmp41_ = category; + if (g_strcmp0 (_tmp41_, "Variables") == 0) { + GtkLabel* _tmp42_ = NULL; + const gchar* _tmp43_ = NULL; + gchar* _tmp44_ = NULL; + gchar* _tmp45_ = NULL; + GtkListStore* _tmp46_ = NULL; + GtkTreeIter _tmp47_ = {0}; + GValue _tmp48_ = {0}; + GtkLabel* _tmp49_ = NULL; + const gchar* _tmp50_ = NULL; + gchar* _tmp51_ = NULL; + gchar* _tmp52_ = NULL; + GtkLabel* _tmp53_ = NULL; + GtkLabel* _tmp54_ = NULL; + GtkSeparator* _tmp55_ = NULL; + _tmp42_ = self->priv->name_label; + _tmp43_ = name; + _tmp44_ = g_strdup_printf ("%s", _tmp43_); + _tmp45_ = _tmp44_; + gtk_label_set_markup (_tmp42_, _tmp45_); + _g_free0 (_tmp45_); + _tmp46_ = self->priv->list_store; + _tmp47_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp46_, &_tmp47_, 3, &_tmp48_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp48_; + _tmp49_ = self->priv->arg_label; + _tmp50_ = g_value_get_string (&val); + _tmp51_ = g_strdup_printf ("%s", _tmp50_); + _tmp52_ = _tmp51_; + gtk_label_set_markup (_tmp49_, _tmp52_); + _g_free0 (_tmp52_); + _tmp53_ = self->priv->arg_list_label; + gtk_label_set_text (_tmp53_, ""); + _tmp54_ = self->priv->desc_label; + gtk_label_set_text (_tmp54_, ""); + _tmp55_ = self->priv->seper; + gtk_widget_hide ((GtkWidget*) _tmp55_); + } else { + const gchar* _tmp56_ = NULL; + _tmp56_ = category; + if (g_strcmp0 (_tmp56_, "NaSC") == 0) { + const gchar* _tmp57_ = NULL; + GtkLabel* _tmp79_ = NULL; + GtkSeparator* _tmp80_ = NULL; + GtkLabel* _tmp81_ = NULL; + _tmp57_ = name; + if (g_strcmp0 (_tmp57_, "") != 0) { + GtkLabel* _tmp58_ = NULL; + const gchar* _tmp59_ = NULL; + gchar* _tmp60_ = NULL; + gchar* _tmp61_ = NULL; + GtkListStore* _tmp62_ = NULL; + GtkTreeIter _tmp63_ = {0}; + GValue _tmp64_ = {0}; + GtkLabel* _tmp65_ = NULL; + const gchar* _tmp66_ = NULL; + gchar* _tmp67_ = NULL; + gchar* _tmp68_ = NULL; + _tmp58_ = self->priv->name_label; + _tmp59_ = name; + _tmp60_ = g_strdup_printf ("%s()", _tmp59_); + _tmp61_ = _tmp60_; + gtk_label_set_markup (_tmp58_, _tmp61_); + _g_free0 (_tmp61_); + _tmp62_ = self->priv->list_store; + _tmp63_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp62_, &_tmp63_, 3, &_tmp64_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp64_; + _tmp65_ = self->priv->arg_label; + _tmp66_ = g_value_get_string (&val); + _tmp67_ = g_strdup_printf ("%s", _tmp66_); + _tmp68_ = _tmp67_; + gtk_label_set_markup (_tmp65_, _tmp68_); + _g_free0 (_tmp68_); + } else { + GtkListStore* _tmp69_ = NULL; + GtkTreeIter _tmp70_ = {0}; + GValue _tmp71_ = {0}; + const gchar* _tmp72_ = NULL; + gchar* _tmp73_ = NULL; + GtkLabel* _tmp74_ = NULL; + const gchar* _tmp75_ = NULL; + gchar* _tmp76_ = NULL; + gchar* _tmp77_ = NULL; + GtkLabel* _tmp78_ = NULL; + _tmp69_ = self->priv->list_store; + _tmp70_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp69_, &_tmp70_, 3, &_tmp71_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp71_; + _tmp72_ = g_value_get_string (&val); + _tmp73_ = g_strdup (_tmp72_); + _g_free0 (name); + name = _tmp73_; + _tmp74_ = self->priv->name_label; + _tmp75_ = name; + _tmp76_ = g_strdup_printf ("%s", _tmp75_); + _tmp77_ = _tmp76_; + gtk_label_set_markup (_tmp74_, _tmp77_); + _g_free0 (_tmp77_); + _tmp78_ = self->priv->arg_label; + gtk_label_set_text (_tmp78_, ""); + } + _tmp79_ = self->priv->arg_list_label; + gtk_label_set_text (_tmp79_, ""); + _tmp80_ = self->priv->seper; + gtk_widget_hide ((GtkWidget*) _tmp80_); + _tmp81_ = self->priv->desc_label; + gtk_label_set_text (_tmp81_, ""); + } else { + GtkListStore* _tmp82_ = NULL; + GtkTreeIter _tmp83_ = {0}; + GValue _tmp84_ = {0}; + GtkLabel* _tmp85_ = NULL; + const gchar* _tmp86_ = NULL; + const gchar* _tmp87_ = NULL; + gchar* _tmp88_ = NULL; + gchar* _tmp89_ = NULL; + GtkListStore* _tmp90_ = NULL; + GtkTreeIter _tmp91_ = {0}; + GValue _tmp92_ = {0}; + GtkLabel* _tmp93_ = NULL; + GtkLabel* _tmp94_ = NULL; + const gchar* _tmp95_ = NULL; + gchar* _tmp96_ = NULL; + gchar* _tmp97_ = NULL; + GtkListStore* _tmp98_ = NULL; + GtkTreeIter _tmp99_ = {0}; + GValue _tmp100_ = {0}; + const gchar* _tmp101_ = NULL; + _tmp82_ = self->priv->list_store; + _tmp83_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp82_, &_tmp83_, 4, &_tmp84_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp84_; + _tmp85_ = self->priv->name_label; + _tmp86_ = name; + _tmp87_ = g_value_get_string (&val); + _tmp88_ = g_strdup_printf ("%s(%s)", _tmp86_, _tmp87_); + _tmp89_ = _tmp88_; + gtk_label_set_markup (_tmp85_, _tmp89_); + _g_free0 (_tmp89_); + _tmp90_ = self->priv->list_store; + _tmp91_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp90_, &_tmp91_, 5, &_tmp92_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp92_; + _tmp93_ = self->priv->arg_label; + gtk_label_set_markup (_tmp93_, "Arguments"); + _tmp94_ = self->priv->arg_list_label; + _tmp95_ = g_value_get_string (&val); + _tmp96_ = g_strdup_printf ("%s", _tmp95_); + _tmp97_ = _tmp96_; + gtk_label_set_markup (_tmp94_, _tmp97_); + _g_free0 (_tmp97_); + _tmp98_ = self->priv->list_store; + _tmp99_ = *iter; + gtk_tree_model_get_value ((GtkTreeModel*) _tmp98_, &_tmp99_, 3, &_tmp100_); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; + val = _tmp100_; + _tmp101_ = g_value_get_string (&val); + if (g_strcmp0 (_tmp101_, "") != 0) { + GtkSeparator* _tmp102_ = NULL; + GtkSeparator* _tmp103_ = NULL; + GtkLabel* _tmp104_ = NULL; + const gchar* _tmp105_ = NULL; + gchar* _tmp106_ = NULL; + gchar* _tmp107_ = NULL; + _tmp102_ = self->priv->seper; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp102_, FALSE); + _tmp103_ = self->priv->seper; + gtk_widget_show ((GtkWidget*) _tmp103_); + _tmp104_ = self->priv->desc_label; + _tmp105_ = g_value_get_string (&val); + _tmp106_ = g_strdup_printf ("%s", _tmp105_); + _tmp107_ = _tmp106_; + gtk_label_set_markup (_tmp104_, _tmp107_); + _g_free0 (_tmp107_); + } else { + GtkSeparator* _tmp108_ = NULL; + GtkLabel* _tmp109_ = NULL; + _tmp108_ = self->priv->seper; + gtk_widget_hide ((GtkWidget*) _tmp108_); + _tmp109_ = self->priv->desc_label; + gtk_label_set_text (_tmp109_, ""); + } + } + } + _g_free0 (category); + _g_free0 (name); + G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL; +} + + +static void help_box_load_list_data_free (gpointer _data) { + HelpBoxLoadListData* _data_; + _data_ = _data; + _g_object_unref0 (_data_->self); + g_slice_free (HelpBoxLoadListData, _data_); +} + + +static void help_box_load_list (HelpBox* self, GAsyncReadyCallback _callback_, gpointer _user_data_) { + HelpBoxLoadListData* _data_; + HelpBox* _tmp0_ = NULL; + _data_ = g_slice_new0 (HelpBoxLoadListData); + _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, help_box_load_list); + g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, help_box_load_list_data_free); + _tmp0_ = _g_object_ref0 (self); + _data_->self = _tmp0_; + help_box_load_list_co (_data_); +} + + +static void help_box_load_list_finish (HelpBox* self, GAsyncResult* _res_) { + HelpBoxLoadListData* _data_; + _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_)); +} + + +static Block8Data* block8_data_ref (Block8Data* _data8_) { + g_atomic_int_inc (&_data8_->_ref_count_); + return _data8_; +} + + +static void block8_data_unref (void * _userdata_) { + Block8Data* _data8_; + _data8_ = (Block8Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data8_->_ref_count_)) { + HelpBox* self; + self = _data8_->self; + _g_object_unref0 (self); + g_slice_free (Block8Data, _data8_); + } +} + + +static gboolean ___lambda39_ (Block8Data* _data8_) { + HelpBox* self; + gboolean result = FALSE; + self = _data8_->self; + help_box_load_list_co (_data8_->_async_data_); + result = FALSE; + return result; +} + + +static gboolean ____lambda39__gsource_func (gpointer self) { + gboolean result; + result = ___lambda39_ (self); + return result; +} + + +static void _help_box_on_selection_gtk_tree_view_cursor_changed (GtkTreeView* _sender, gpointer self) { + help_box_on_selection ((HelpBox*) self); +} + + +static gboolean help_box_load_list_co (HelpBoxLoadListData* _data_) { + switch (_data_->_state_) { + case 0: + goto _state_0; + case 1: + goto _state_1; + default: + g_assert_not_reached (); + } + _state_0: + _data_->_data8_ = g_slice_new0 (Block8Data); + _data_->_data8_->_ref_count_ = 1; + _data_->_data8_->self = g_object_ref (_data_->self); + _data_->_data8_->_async_data_ = _data_; + while (TRUE) { + _data_->_tmp0_ = NULL; + _data_->_tmp0_ = _data_->self->priv->controller; + _data_->_tmp1_ = NULL; + _data_->_tmp1_ = _data_->_tmp0_->calculator; + _data_->_tmp2_ = NULL; + _data_->_tmp2_ = calculator_category_functions (_data_->_tmp1_); + _data_->_tmp3_ = NULL; + _data_->_tmp3_ = _data_->_tmp2_; + _data_->_tmp4_ = 0; + _data_->_tmp4_ = gee_abstract_map_get_size ((GeeMap*) _data_->_tmp3_); + _data_->_tmp5_ = 0; + _data_->_tmp5_ = _data_->_tmp4_; + _data_->_tmp6_ = FALSE; + _data_->_tmp6_ = !(_data_->_tmp5_ == 0); + _g_object_unref0 (_data_->_tmp3_); + if (_data_->_tmp6_) { + break; + } + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 100, ____lambda39__gsource_func, block8_data_ref (_data_->_data8_), block8_data_unref); + _data_->_state_ = 1; + return FALSE; + _state_1: + ; + } + _data_->_tmp7_ = NULL; + _data_->_tmp7_ = _data_->self->priv->list_store; + memset (&_data_->_tmp8_, 0, sizeof (GtkTreeIter)); + gtk_list_store_append (_data_->_tmp7_, &_data_->_tmp8_); + _data_->iter = _data_->_tmp8_; + _data_->_tmp9_ = NULL; + _data_->_tmp9_ = _data_->self->priv->list_store; + memset (&_data_->_tmp10_, 0, sizeof (GtkTreeIter)); + _data_->_tmp10_ = _data_->iter; + gtk_list_store_set (_data_->_tmp9_, &_data_->_tmp10_, 0, "NaSC", 1, "NaSC", 2, "NaSC", 3, "NaSC", 4, "NaSC", 5, "NaSC", -1); + { + _data_->_tmp11_ = NULL; + _data_->_tmp11_ = help_box_get_nasc_functions (_data_->self); + _data_->_fe_list = _data_->_tmp11_; + _data_->_tmp12_ = NULL; + _data_->_tmp12_ = _data_->_fe_list; + _data_->_tmp13_ = 0; + _data_->_tmp13_ = gee_abstract_collection_get_size ((GeeCollection*) _data_->_tmp12_); + _data_->_tmp14_ = 0; + _data_->_tmp14_ = _data_->_tmp13_; + _data_->_fe_size = _data_->_tmp14_; + _data_->_fe_index = -1; + while (TRUE) { + _data_->_tmp15_ = 0; + _data_->_tmp15_ = _data_->_fe_index; + _data_->_fe_index = _data_->_tmp15_ + 1; + _data_->_tmp16_ = 0; + _data_->_tmp16_ = _data_->_fe_index; + _data_->_tmp17_ = 0; + _data_->_tmp17_ = _data_->_fe_size; + if (!(_data_->_tmp16_ < _data_->_tmp17_)) { + break; + } + _data_->_tmp18_ = NULL; + _data_->_tmp18_ = _data_->_fe_list; + _data_->_tmp19_ = 0; + _data_->_tmp19_ = _data_->_fe_index; + _data_->_tmp20_ = NULL; + _data_->_tmp20_ = gee_abstract_list_get ((GeeAbstractList*) _data_->_tmp18_, _data_->_tmp19_); + _data_->fe = (NascFunction*) _data_->_tmp20_; + _data_->_tmp21_ = NULL; + _data_->_tmp21_ = _data_->self->priv->list_store; + memset (&_data_->_tmp22_, 0, sizeof (GtkTreeIter)); + gtk_list_store_append (_data_->_tmp21_, &_data_->_tmp22_); + _data_->iter = _data_->_tmp22_; + _data_->_tmp23_ = NULL; + _data_->_tmp23_ = _data_->self->priv->list_store; + memset (&_data_->_tmp24_, 0, sizeof (GtkTreeIter)); + _data_->_tmp24_ = _data_->iter; + _data_->_tmp25_ = NULL; + _data_->_tmp25_ = _data_->fe; + _data_->_tmp26_ = NULL; + _data_->_tmp26_ = ((NascElement*) _data_->_tmp25_)->name; + _data_->_tmp27_ = NULL; + _data_->_tmp27_ = _data_->fe; + _data_->_tmp28_ = NULL; + _data_->_tmp28_ = ((NascElement*) _data_->_tmp27_)->title; + _data_->_tmp29_ = NULL; + _data_->_tmp29_ = _data_->fe; + _data_->_tmp30_ = NULL; + _data_->_tmp30_ = ((NascElement*) _data_->_tmp29_)->category; + _data_->_tmp31_ = NULL; + _data_->_tmp31_ = _data_->fe; + _data_->_tmp32_ = NULL; + _data_->_tmp32_ = ((NascElement*) _data_->_tmp31_)->desc; + _data_->_tmp33_ = NULL; + _data_->_tmp33_ = _data_->fe; + _data_->_tmp34_ = NULL; + _data_->_tmp34_ = _data_->_tmp33_->args; + _data_->_tmp35_ = NULL; + _data_->_tmp35_ = _data_->fe; + _data_->_tmp36_ = NULL; + _data_->_tmp36_ = _data_->_tmp35_->args_list; + gtk_list_store_set (_data_->_tmp23_, &_data_->_tmp24_, 0, _data_->_tmp26_, 1, _data_->_tmp28_, 2, _data_->_tmp30_, 3, _data_->_tmp32_, 4, _data_->_tmp34_, 5, _data_->_tmp36_, -1); + _g_object_unref0 (_data_->fe); + } + _g_object_unref0 (_data_->_fe_list); + } + { + _data_->_tmp37_ = NULL; + _data_->_tmp37_ = _data_->self->priv->controller; + _data_->_tmp38_ = NULL; + _data_->_tmp38_ = _data_->_tmp37_->calculator; + _data_->_tmp39_ = NULL; + _data_->_tmp39_ = calculator_category_functions (_data_->_tmp38_); + _data_->_tmp40_ = NULL; + _data_->_tmp40_ = _data_->_tmp39_; + _data_->_tmp41_ = NULL; + _data_->_tmp41_ = gee_abstract_sorted_map_get_ascending_entries ((GeeSortedMap*) _data_->_tmp40_); + _data_->_tmp42_ = NULL; + _data_->_tmp42_ = _data_->_tmp41_; + _data_->_tmp43_ = NULL; + _data_->_tmp43_ = _data_->_tmp42_; + _data_->_tmp44_ = NULL; + _data_->_tmp44_ = gee_iterable_iterator ((GeeIterable*) _data_->_tmp43_); + _data_->_tmp45_ = NULL; + _data_->_tmp45_ = _data_->_tmp44_; + _g_object_unref0 (_data_->_tmp43_); + _g_object_unref0 (_data_->_tmp40_); + _data_->_entry_it = _data_->_tmp45_; + while (TRUE) { + _data_->_tmp46_ = NULL; + _data_->_tmp46_ = _data_->_entry_it; + _data_->_tmp47_ = FALSE; + _data_->_tmp47_ = gee_iterator_next (_data_->_tmp46_); + if (!_data_->_tmp47_) { + break; + } + _data_->_tmp48_ = NULL; + _data_->_tmp48_ = _data_->_entry_it; + _data_->_tmp49_ = NULL; + _data_->_tmp49_ = gee_iterator_get (_data_->_tmp48_); + _data_->entry = (GeeMapEntry*) _data_->_tmp49_; + _data_->_tmp50_ = NULL; + _data_->_tmp50_ = _data_->entry; + _data_->_tmp51_ = NULL; + _data_->_tmp51_ = gee_map_entry_get_key (_data_->_tmp50_); + _data_->_tmp52_ = NULL; + _data_->_tmp52_ = _data_->_tmp51_; + if (g_strcmp0 ((const gchar*) _data_->_tmp52_, "NaSC") == 0) { + _g_object_unref0 (_data_->entry); + continue; + } + _data_->_tmp53_ = NULL; + _data_->_tmp53_ = _data_->self->priv->list_store; + memset (&_data_->_tmp54_, 0, sizeof (GtkTreeIter)); + gtk_list_store_append (_data_->_tmp53_, &_data_->_tmp54_); + _data_->iter = _data_->_tmp54_; + _data_->_tmp55_ = NULL; + _data_->_tmp55_ = _data_->self->priv->list_store; + memset (&_data_->_tmp56_, 0, sizeof (GtkTreeIter)); + _data_->_tmp56_ = _data_->iter; + _data_->_tmp57_ = NULL; + _data_->_tmp57_ = _data_->entry; + _data_->_tmp58_ = NULL; + _data_->_tmp58_ = gee_map_entry_get_key (_data_->_tmp57_); + _data_->_tmp59_ = NULL; + _data_->_tmp59_ = _data_->_tmp58_; + _data_->_tmp60_ = NULL; + _data_->_tmp60_ = _data_->entry; + _data_->_tmp61_ = NULL; + _data_->_tmp61_ = gee_map_entry_get_key (_data_->_tmp60_); + _data_->_tmp62_ = NULL; + _data_->_tmp62_ = _data_->_tmp61_; + _data_->_tmp63_ = NULL; + _data_->_tmp63_ = _data_->entry; + _data_->_tmp64_ = NULL; + _data_->_tmp64_ = gee_map_entry_get_key (_data_->_tmp63_); + _data_->_tmp65_ = NULL; + _data_->_tmp65_ = _data_->_tmp64_; + _data_->_tmp66_ = NULL; + _data_->_tmp66_ = _data_->entry; + _data_->_tmp67_ = NULL; + _data_->_tmp67_ = gee_map_entry_get_key (_data_->_tmp66_); + _data_->_tmp68_ = NULL; + _data_->_tmp68_ = _data_->_tmp67_; + _data_->_tmp69_ = NULL; + _data_->_tmp69_ = _data_->entry; + _data_->_tmp70_ = NULL; + _data_->_tmp70_ = gee_map_entry_get_key (_data_->_tmp69_); + _data_->_tmp71_ = NULL; + _data_->_tmp71_ = _data_->_tmp70_; + _data_->_tmp72_ = NULL; + _data_->_tmp72_ = _data_->entry; + _data_->_tmp73_ = NULL; + _data_->_tmp73_ = gee_map_entry_get_key (_data_->_tmp72_); + _data_->_tmp74_ = NULL; + _data_->_tmp74_ = _data_->_tmp73_; + gtk_list_store_set (_data_->_tmp55_, &_data_->_tmp56_, 0, (const gchar*) _data_->_tmp59_, 1, (const gchar*) _data_->_tmp62_, 2, (const gchar*) _data_->_tmp65_, 3, (const gchar*) _data_->_tmp68_, 4, (const gchar*) _data_->_tmp71_, 5, (const gchar*) _data_->_tmp74_, -1); + { + _data_->_tmp75_ = NULL; + _data_->_tmp75_ = _data_->entry; + _data_->_tmp76_ = NULL; + _data_->_tmp76_ = gee_map_entry_get_value (_data_->_tmp75_); + _data_->_tmp77_ = NULL; + _data_->_tmp77_ = _data_->_tmp76_; + _data_->_tmp78_ = NULL; + _data_->_tmp78_ = _g_object_ref0 ((GeeArrayList*) _data_->_tmp77_); + _data_->_vala1__fe_list = _data_->_tmp78_; + _data_->_tmp79_ = NULL; + _data_->_tmp79_ = _data_->_vala1__fe_list; + _data_->_tmp80_ = 0; + _data_->_tmp80_ = gee_abstract_collection_get_size ((GeeCollection*) _data_->_tmp79_); + _data_->_tmp81_ = 0; + _data_->_tmp81_ = _data_->_tmp80_; + _data_->_vala1__fe_size = _data_->_tmp81_; + _data_->_vala1__fe_index = -1; + while (TRUE) { + _data_->_tmp82_ = 0; + _data_->_tmp82_ = _data_->_vala1__fe_index; + _data_->_vala1__fe_index = _data_->_tmp82_ + 1; + _data_->_tmp83_ = 0; + _data_->_tmp83_ = _data_->_vala1__fe_index; + _data_->_tmp84_ = 0; + _data_->_tmp84_ = _data_->_vala1__fe_size; + if (!(_data_->_tmp83_ < _data_->_tmp84_)) { + break; + } + _data_->_tmp85_ = NULL; + _data_->_tmp85_ = _data_->_vala1__fe_list; + _data_->_tmp86_ = 0; + _data_->_tmp86_ = _data_->_vala1__fe_index; + _data_->_tmp87_ = NULL; + _data_->_tmp87_ = gee_abstract_list_get ((GeeAbstractList*) _data_->_tmp85_, _data_->_tmp86_); + _data_->_vala1_fe = (NascFunction*) _data_->_tmp87_; + _data_->_tmp88_ = NULL; + _data_->_tmp88_ = _data_->self->priv->list_store; + memset (&_data_->_tmp89_, 0, sizeof (GtkTreeIter)); + gtk_list_store_append (_data_->_tmp88_, &_data_->_tmp89_); + _data_->iter = _data_->_tmp89_; + _data_->_tmp90_ = NULL; + _data_->_tmp90_ = _data_->self->priv->list_store; + memset (&_data_->_tmp91_, 0, sizeof (GtkTreeIter)); + _data_->_tmp91_ = _data_->iter; + _data_->_tmp92_ = NULL; + _data_->_tmp92_ = _data_->_vala1_fe; + _data_->_tmp93_ = NULL; + _data_->_tmp93_ = ((NascElement*) _data_->_tmp92_)->name; + _data_->_tmp94_ = NULL; + _data_->_tmp94_ = _data_->_vala1_fe; + _data_->_tmp95_ = NULL; + _data_->_tmp95_ = ((NascElement*) _data_->_tmp94_)->title; + _data_->_tmp96_ = NULL; + _data_->_tmp96_ = _data_->_vala1_fe; + _data_->_tmp97_ = NULL; + _data_->_tmp97_ = ((NascElement*) _data_->_tmp96_)->category; + _data_->_tmp98_ = NULL; + _data_->_tmp98_ = _data_->_vala1_fe; + _data_->_tmp99_ = NULL; + _data_->_tmp99_ = ((NascElement*) _data_->_tmp98_)->desc; + _data_->_tmp100_ = NULL; + _data_->_tmp100_ = _data_->_vala1_fe; + _data_->_tmp101_ = NULL; + _data_->_tmp101_ = _data_->_tmp100_->args; + _data_->_tmp102_ = NULL; + _data_->_tmp102_ = _data_->_vala1_fe; + _data_->_tmp103_ = NULL; + _data_->_tmp103_ = _data_->_tmp102_->args_list; + gtk_list_store_set (_data_->_tmp90_, &_data_->_tmp91_, 0, _data_->_tmp93_, 1, _data_->_tmp95_, 2, _data_->_tmp97_, 3, _data_->_tmp99_, 4, _data_->_tmp101_, 5, _data_->_tmp103_, -1); + _g_object_unref0 (_data_->_vala1_fe); + } + _g_object_unref0 (_data_->_vala1__fe_list); + } + _g_object_unref0 (_data_->entry); + } + _g_object_unref0 (_data_->_entry_it); + } + _data_->_tmp104_ = NULL; + _data_->_tmp104_ = _data_->self->priv->list_store; + memset (&_data_->_tmp105_, 0, sizeof (GtkTreeIter)); + gtk_list_store_append (_data_->_tmp104_, &_data_->_tmp105_); + _data_->iter = _data_->_tmp105_; + _data_->_tmp106_ = NULL; + _data_->_tmp106_ = _data_->self->priv->list_store; + memset (&_data_->_tmp107_, 0, sizeof (GtkTreeIter)); + _data_->_tmp107_ = _data_->iter; + gtk_list_store_set (_data_->_tmp106_, &_data_->_tmp107_, 0, "Variables", 1, "Variables", 2, "Variables", 3, "Variables", 4, "Variables", 5, "Variables", -1); + { + _data_->_tmp108_ = NULL; + _data_->_tmp108_ = _data_->self->priv->controller; + _data_->_tmp109_ = NULL; + _data_->_tmp109_ = _data_->_tmp108_->calculator; + _data_->_tmp110_ = NULL; + _data_->_tmp110_ = calculator_get_variables (_data_->_tmp109_); + _data_->_tmp111_ = NULL; + _data_->_tmp111_ = _data_->_tmp110_; + _data_->_tmp112_ = NULL; + _data_->_tmp112_ = _g_object_ref0 (_data_->_tmp111_); + _data_->_ve_list = _data_->_tmp112_; + _data_->_tmp113_ = NULL; + _data_->_tmp113_ = _data_->_ve_list; + _data_->_tmp114_ = 0; + _data_->_tmp114_ = gee_collection_get_size ((GeeCollection*) _data_->_tmp113_); + _data_->_tmp115_ = 0; + _data_->_tmp115_ = _data_->_tmp114_; + _data_->_ve_size = _data_->_tmp115_; + _data_->_ve_index = -1; + while (TRUE) { + _data_->_tmp116_ = 0; + _data_->_tmp116_ = _data_->_ve_index; + _data_->_ve_index = _data_->_tmp116_ + 1; + _data_->_tmp117_ = 0; + _data_->_tmp117_ = _data_->_ve_index; + _data_->_tmp118_ = 0; + _data_->_tmp118_ = _data_->_ve_size; + if (!(_data_->_tmp117_ < _data_->_tmp118_)) { + break; + } + _data_->_tmp119_ = NULL; + _data_->_tmp119_ = _data_->_ve_list; + _data_->_tmp120_ = 0; + _data_->_tmp120_ = _data_->_ve_index; + _data_->_tmp121_ = NULL; + _data_->_tmp121_ = gee_list_get (_data_->_tmp119_, _data_->_tmp120_); + _data_->ve = (NascVariabel*) _data_->_tmp121_; + _data_->_tmp122_ = NULL; + _data_->_tmp122_ = _data_->self->priv->list_store; + memset (&_data_->_tmp123_, 0, sizeof (GtkTreeIter)); + gtk_list_store_append (_data_->_tmp122_, &_data_->_tmp123_); + _data_->iter = _data_->_tmp123_; + _data_->_tmp124_ = NULL; + _data_->_tmp124_ = _data_->self->priv->list_store; + memset (&_data_->_tmp125_, 0, sizeof (GtkTreeIter)); + _data_->_tmp125_ = _data_->iter; + _data_->_tmp126_ = NULL; + _data_->_tmp126_ = _data_->ve; + _data_->_tmp127_ = NULL; + _data_->_tmp127_ = ((NascElement*) _data_->_tmp126_)->name; + _data_->_tmp128_ = NULL; + _data_->_tmp128_ = _data_->ve; + _data_->_tmp129_ = NULL; + _data_->_tmp129_ = ((NascElement*) _data_->_tmp128_)->title; + _data_->_tmp130_ = NULL; + _data_->_tmp130_ = _data_->ve; + _data_->_tmp131_ = NULL; + _data_->_tmp131_ = ((NascElement*) _data_->_tmp130_)->desc; + gtk_list_store_set (_data_->_tmp124_, &_data_->_tmp125_, 0, _data_->_tmp127_, 1, _data_->_tmp129_, 2, "Variables", 3, _data_->_tmp131_, 4, "", 5, "", -1); + _g_object_unref0 (_data_->ve); + } + _g_object_unref0 (_data_->_ve_list); + } + _data_->_tmp132_ = NULL; + _data_->_tmp132_ = _data_->self->priv->list; + _data_->_tmp133_ = NULL; + _data_->_tmp133_ = _data_->self->priv->list_store; + gtk_tree_view_set_model (_data_->_tmp132_, (GtkTreeModel*) _data_->_tmp133_); + _data_->_tmp134_ = NULL; + _data_->_tmp134_ = _data_->self->priv->list; + g_signal_connect_object (_data_->_tmp134_, "cursor-changed", (GCallback) _help_box_on_selection_gtk_tree_view_cursor_changed, _data_->self, 0); + block8_data_unref (_data_->_data8_); + _data_->_data8_ = NULL; + if (_data_->_state_ == 0) { + g_simple_async_result_complete_in_idle (_data_->_async_result); + } else { + g_simple_async_result_complete (_data_->_async_result); + } + g_object_unref (_data_->_async_result); + return FALSE; +} + + +static void help_box_reload_list_data_free (gpointer _data) { + HelpBoxReloadListData* _data_; + _data_ = _data; + _g_object_unref0 (_data_->self); + g_slice_free (HelpBoxReloadListData, _data_); +} + + +static void help_box_reload_list (HelpBox* self, GAsyncReadyCallback _callback_, gpointer _user_data_) { + HelpBoxReloadListData* _data_; + HelpBox* _tmp0_ = NULL; + _data_ = g_slice_new0 (HelpBoxReloadListData); + _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, help_box_reload_list); + g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, help_box_reload_list_data_free); + _tmp0_ = _g_object_ref0 (self); + _data_->self = _tmp0_; + help_box_reload_list_co (_data_); +} + + +static void help_box_reload_list_finish (HelpBox* self, GAsyncResult* _res_) { + HelpBoxReloadListData* _data_; + _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_)); +} + + +static void help_box_reload_list_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) { + HelpBoxReloadListData* _data_; + _data_ = _user_data_; + _data_->_source_object_ = source_object; + _data_->_res_ = _res_; + help_box_reload_list_co (_data_); +} + + +static gboolean help_box_reload_list_co (HelpBoxReloadListData* _data_) { + switch (_data_->_state_) { + case 0: + goto _state_0; + case 1: + goto _state_1; + default: + g_assert_not_reached (); + } + _state_0: + _data_->_tmp0_ = NULL; + _data_->_tmp0_ = _data_->self->priv->list; + _data_->_tmp1_ = 0U; + g_signal_parse_name ("cursor-changed", gtk_tree_view_get_type (), &_data_->_tmp1_, NULL, FALSE); + g_signal_handlers_disconnect_matched (_data_->_tmp0_, G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA, _data_->_tmp1_, 0, NULL, (GCallback) _help_box_on_selection_gtk_tree_view_cursor_changed, _data_->self); + _data_->_tmp2_ = NULL; + _data_->_tmp2_ = _data_->self->priv->list_store; + gtk_list_store_clear (_data_->_tmp2_); + _data_->_state_ = 1; + help_box_load_list (_data_->self, help_box_reload_list_ready, _data_); + return FALSE; + _state_1: + help_box_load_list_finish (_data_->self, _data_->_res_); + if (_data_->_state_ == 0) { + g_simple_async_result_complete_in_idle (_data_->_async_result); + } else { + g_simple_async_result_complete (_data_->_async_result); + } + g_object_unref (_data_->_async_result); + return FALSE; +} + + +static GeeArrayList* help_box_get_nasc_functions (HelpBox* self) { + GeeArrayList* result = NULL; + GeeArrayList* nasc = NULL; + GeeArrayList* _tmp0_ = NULL; + NascFunction* _tmp1_ = NULL; + NascFunction* _tmp2_ = NULL; + NascFunction* _tmp3_ = NULL; + NascFunction* _tmp4_ = NULL; + NascFunction* _tmp5_ = NULL; + NascFunction* _tmp6_ = NULL; + NascFunction* _tmp7_ = NULL; + NascFunction* _tmp8_ = NULL; + NascFunction* _tmp9_ = NULL; + NascFunction* _tmp10_ = NULL; + NascFunction* _tmp11_ = NULL; + NascFunction* _tmp12_ = NULL; + NascFunction* _tmp13_ = NULL; + NascFunction* _tmp14_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = gee_array_list_new (TYPE_NASC_FUNCTION, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + nasc = _tmp0_; + _tmp1_ = nasc_function_new_nasc ("", "Copy & Paste", "To support the referenced results there are 2 kind of copy in NaSC.\n" \ +"The normal copy via context menu or Ctrl + c will replace the r" \ +"eferenced results with their real values.\n" \ +"Copy via Ctrl + Shift + C will replace the referenced results w" \ +"ith lineX references.\n" \ +"\n" \ +"Paste will connect lineX references with the corresponding results."); + _tmp2_ = _tmp1_; + gee_abstract_collection_add ((GeeAbstractCollection*) nasc, _tmp2_); + _g_object_unref0 (_tmp2_); + _tmp3_ = nasc_function_new_nasc ("", "Referencing answers", "You can plug answers in to future equations and if that answer changes" \ +", so does the equations its used in.\n" \ +"\n" \ +"You either can just click on a previous answer in the result pane, use" \ +" the keyword ans for the last answer or the keyword lineX where X is the number of the line which you want to use."); + _tmp4_ = _tmp3_; + gee_abstract_collection_add ((GeeAbstractCollection*) nasc, _tmp4_); + _g_object_unref0 (_tmp4_); + _tmp5_ = nasc_function_new_nasc ("", "Shortcuts", "Ctrl + O = Open\n" \ +"Ctrl + H = Help\n" \ +"Ctrl + L = Last Answer\n" \ +"Ctrl + N = New Sheet\n" \ +"Ctrl + P = π\n" \ +"Ctrl + R = √\n" \ +"\n" \ +"Ctrl + 0 = °\n" \ +"Ctrl + 2 = ²\n" \ +"Ctrl + 3 = ³\n" \ +"Ctrl + 4 = ⁴"); + _tmp6_ = _tmp5_; + gee_abstract_collection_add ((GeeAbstractCollection*) nasc, _tmp6_); + _g_object_unref0 (_tmp6_); + _tmp7_ = nasc_function_new_nasc ("atom", "Periodic Table", "Show a Periodic Table. You can browse through the elements and insert " \ +"properties into your calculation. Just click on the properties like fo" \ +"r example the boiling point."); + _tmp8_ = _tmp7_; + gee_abstract_collection_add ((GeeAbstractCollection*) nasc, _tmp8_); + _g_object_unref0 (_tmp8_); + _tmp9_ = nasc_function_new_nasc ("tutorial", "Tutorial", "Show the NaSC Tutorial again."); + _tmp10_ = _tmp9_; + gee_abstract_collection_add ((GeeAbstractCollection*) nasc, _tmp10_); + _g_object_unref0 (_tmp10_); + _tmp11_ = nasc_function_new_nasc ("", "Unit Conversion", "You can convert various Units. The keyword is to.\n" \ +"For example:\n" \ +"100€ to $\n" \ +"23cm to in"); + _tmp12_ = _tmp11_; + gee_abstract_collection_add ((GeeAbstractCollection*) nasc, _tmp12_); + _g_object_unref0 (_tmp12_); + _tmp13_ = nasc_function_new_nasc ("amath", "Advanced Math", ""); + _tmp14_ = _tmp13_; + gee_abstract_collection_add ((GeeAbstractCollection*) nasc, _tmp14_); + _g_object_unref0 (_tmp14_); + result = nasc; + return result; +} + + +static void help_box_class_init (HelpBoxClass * klass) { + help_box_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (HelpBoxPrivate)); + G_OBJECT_CLASS (klass)->finalize = help_box_finalize; + g_signal_new ("close_help", TYPE_HELP_BOX, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); +} + + +static void help_box_instance_init (HelpBox * self) { + self->priv = HELP_BOX_GET_PRIVATE (self); +} + + +static void help_box_finalize (GObject* obj) { + HelpBox * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_HELP_BOX, HelpBox); + _g_object_unref0 (self->priv->controller); + _g_object_unref0 (self->priv->search_entry); + _g_object_unref0 (self->priv->list); + _g_object_unref0 (self->priv->list_store); + _g_object_unref0 (self->priv->detail_stack); + _g_object_unref0 (self->priv->headline); + _g_object_unref0 (self->priv->name_label); + _g_object_unref0 (self->priv->arg_label); + _g_object_unref0 (self->priv->arg_list_label); + _g_object_unref0 (self->priv->desc_label); + _g_object_unref0 (self->priv->seper); + G_OBJECT_CLASS (help_box_parent_class)->finalize (obj); +} + + +GType help_box_get_type (void) { + static volatile gsize help_box_type_id__volatile = 0; + if (g_once_init_enter (&help_box_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (HelpBoxClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) help_box_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (HelpBox), 0, (GInstanceInitFunc) help_box_instance_init, NULL }; + GType help_box_type_id; + help_box_type_id = g_type_register_static (gtk_box_get_type (), "HelpBox", &g_define_type_info, 0); + g_once_init_leave (&help_box_type_id__volatile, help_box_type_id); + } + return help_box_type_id__volatile; +} + + + diff -Nru nasc-0.2/build/src/InputView.c nasc-0.3/build/src/InputView.c --- nasc-0.2/build/src/InputView.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/InputView.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,3955 @@ +/* InputView.c generated by valac 0.32.1, the Vala compiler + * generated from InputView.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_INPUT_VIEW (input_view_get_type ()) +#define INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INPUT_VIEW, InputView)) +#define INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INPUT_VIEW, InputViewClass)) +#define IS_INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INPUT_VIEW)) +#define IS_INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INPUT_VIEW)) +#define INPUT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INPUT_VIEW, InputViewClass)) + +typedef struct _InputView InputView; +typedef struct _InputViewClass InputViewClass; +typedef struct _InputViewPrivate InputViewPrivate; + +#define TYPE_RESULT_BOX_WIDGET (result_box_widget_get_type ()) +#define RESULT_BOX_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_BOX_WIDGET, ResultBoxWidget)) +#define RESULT_BOX_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_BOX_WIDGET, ResultBoxWidgetClass)) +#define IS_RESULT_BOX_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_BOX_WIDGET)) +#define IS_RESULT_BOX_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_BOX_WIDGET)) +#define RESULT_BOX_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_BOX_WIDGET, ResultBoxWidgetClass)) + +typedef struct _ResultBoxWidget ResultBoxWidget; +typedef struct _ResultBoxWidgetClass ResultBoxWidgetClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL))) +#define _g_free0(var) (var = (g_free (var), NULL)) +#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) +#define __vala_PangoFontDescription_free0(var) ((var == NULL) ? NULL : (var = (_vala_PangoFontDescription_free (var), NULL))) +typedef struct _Block9Data Block9Data; +typedef struct _Block10Data Block10Data; +typedef struct _Block11Data Block11Data; +typedef struct _Block12Data Block12Data; +#define _g_match_info_unref0(var) ((var == NULL) ? NULL : (var = (g_match_info_unref (var), NULL))) + +#define TYPE_RESULT_LINE (result_line_get_type ()) +#define RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_LINE, ResultLine)) +#define RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_LINE, ResultLineClass)) +#define IS_RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_LINE)) +#define IS_RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_LINE)) +#define RESULT_LINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_LINE, ResultLineClass)) + +typedef struct _ResultLine ResultLine; +typedef struct _ResultLineClass ResultLineClass; +typedef struct _Block13Data Block13Data; +typedef struct _ResultBoxWidgetPrivate ResultBoxWidgetPrivate; +#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL))) + +struct _InputView { + GtkBox parent_instance; + InputViewPrivate * priv; + GtkSourceBuffer* buffer; + GtkSourceView* source_view; + GeeArrayList* operators; + gboolean skip_change; + gboolean scroll_needed; +}; + +struct _InputViewClass { + GtkBoxClass parent_class; +}; + +struct _InputViewPrivate { + GtkSourceSearchContext* search; + GeeArrayList* result_widgets; + gboolean add_space; + GRegex* digit_regex; + GRegex* non_digit_regex; + gchar* line_regex; + gint total_lines; + gboolean backspace_button; + gint actual_line; + GdkCursor* x_term; + GdkCursor* d_arrow; + gboolean scrubb_hover; + gint scrubb_press_x; + gint org_value; + gint start_scrub; + gint scrub_width; + GtkTextTag* scrub_tag; + gint last_cursor; +}; + +struct _Block9Data { + int _ref_count_; + InputView* self; + gchar* s; +}; + +struct _Block10Data { + int _ref_count_; + Block9Data * _data9_; + gint res; + gint line; +}; + +struct _Block11Data { + int _ref_count_; + Block10Data * _data10_; + gint line; + gint offset; +}; + +struct _Block12Data { + int _ref_count_; + Block10Data * _data10_; + gint offset; +}; + +struct _Block13Data { + int _ref_count_; + InputView* self; + ResultBoxWidget* widget; +}; + +struct _ResultBoxWidget { + GtkDrawingArea parent_instance; + ResultBoxWidgetPrivate * priv; + ResultLine* result; +}; + +struct _ResultBoxWidgetClass { + GtkDrawingAreaClass parent_class; +}; + + +static gpointer input_view_parent_class = NULL; + +GType input_view_get_type (void) G_GNUC_CONST; +GType result_box_widget_get_type (void) G_GNUC_CONST; +#define INPUT_VIEW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_INPUT_VIEW, InputViewPrivate)) +enum { + INPUT_VIEW_DUMMY_PROPERTY +}; +InputView* input_view_new (void); +InputView* input_view_construct (GType object_type); +#define NASC_left_margin 12 +#define NASC_vertical_padding 8 +static PangoFontDescription* _vala_PangoFontDescription_copy (PangoFontDescription* self); +static void __lambda6_ (InputView* self, GtkTextIter* it, const gchar* s, gint i); +static void input_view_process_insert_text (InputView* self, GtkTextIter* it, const gchar* s, gint i); +static void ___lambda6__gtk_text_buffer_insert_text (GtkTextBuffer* _sender, GtkTextIter* pos, const gchar* new_text, gint new_text_length, gpointer self); +static void __lambda9_ (InputView* self); +gchar* input_view_get_text_line_to_end (InputView* self, gint line); +static void ___lambda9__gtk_text_buffer_changed (GtkTextBuffer* _sender, gpointer self); +static gboolean __lambda10_ (InputView* self, GdkEventKey* e); +gint input_view_get_cursor_line (InputView* self); +gchar* input_view_get_replaced_marked_content (InputView* self); +static gboolean ___lambda10__gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self); +static void __lambda11_ (InputView* self, GObject* s, GParamSpec* p); +static void ___lambda11__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self); +static void __lambda12_ (InputView* self); +static gboolean __lambda13_ (InputView* self); +gchar* input_view_get_replaced_marked_real_content (InputView* self); +static gboolean ___lambda13__gsource_func (gpointer self); +static void ___lambda12__gtk_text_view_copy_clipboard (GtkTextView* _sender, gpointer self); +static void __lambda14_ (InputView* self, GtkClipboard* c); +static gboolean __lambda15_ (InputView* self); +void input_view_process_new_content (InputView* self); +static gboolean ___lambda15__gsource_func (gpointer self); +static void ___lambda14__gtk_text_buffer_paste_done (GtkTextBuffer* _sender, GtkClipboard* clipboard, gpointer self); +static void input_view_scrubbing_mode (InputView* self); +#define NASC_top_padding 10 +static void __lambda19_ (InputView* self); +static void ___lambda19__gtk_widget_realize (GtkWidget* _sender, gpointer self); +static void _vala_PangoFontDescription_free (PangoFontDescription* self); +static Block9Data* block9_data_ref (Block9Data* _data9_); +static void block9_data_unref (void * _userdata_); +static Block10Data* block10_data_ref (Block10Data* _data10_); +static void block10_data_unref (void * _userdata_); +static gboolean input_view_check_pre_it (InputView* self, const gchar* s, GtkTextIter* iter, GtkTextIter* iter2); +static Block11Data* block11_data_ref (Block11Data* _data11_); +static void block11_data_unref (void * _userdata_); +static gboolean ____lambda7_ (Block11Data* _data11_); +static gboolean _____lambda7__gsource_func (gpointer self); +static gint input_view_check_pre_it_before_digits (InputView* self, const gchar* s, GtkTextIter* iter, GtkTextIter* iter2); +static Block12Data* block12_data_ref (Block12Data* _data12_); +static void block12_data_unref (void * _userdata_); +static gboolean ____lambda8_ (Block12Data* _data12_); +static gboolean _____lambda8__gsource_func (gpointer self); +static void _vala_array_add2 (gint** array, int* length, int* size, gint value); +static void _vala_array_add3 (gint** array, int* length, int* size, gint value); +static gboolean input_view_real_draw (GtkWidget* base, cairo_t* context); +gboolean result_box_widget_draw_content (ResultBoxWidget* self, cairo_t* context, gint x, gint y); +void input_view_insert_text (InputView* self, const gchar* text); +void input_view_delete_characters (InputView* self, gint count); +GType result_line_get_type (void) G_GNUC_CONST; +void input_view_insert_variable (InputView* self, ResultLine* res); +static Block13Data* block13_data_ref (Block13Data* _data13_); +static void block13_data_unref (void * _userdata_); +gint result_line_get_line (ResultLine* self); +ResultBoxWidget* result_box_widget_new (gint line_number, ResultLine* _result_); +ResultBoxWidget* result_box_widget_construct (GType object_type, gint line_number, ResultLine* _result_); +static void __lambda20_ (Block13Data* _data13_); +static void ___lambda20__gtk_widget_destroy (GtkWidget* _sender, gpointer self); +static void __lambda21_ (InputView* self); +static void ___lambda21__result_line_changed (ResultLine* _sender, gpointer self); +static gchar* input_view_replace_widget_markers (InputView* self, gint line_number, const gchar* text, gboolean for_calculator, gboolean real_values); +gchar* input_view_get_replaced_content (InputView* self); +static void _vala_array_add4 (gint** array, int* length, int* size, gint value); +const gchar* result_line_get_full_value (ResultLine* self); +gchar* result_box_widget_get_variable_name (ResultBoxWidget* self); +static gboolean __lambda16_ (InputView* self, GdkEventMotion* e); +static void input_view_forward_till_no_digit (InputView* self, GtkTextIter* it); +static gboolean ___lambda16__gtk_widget_motion_notify_event (GtkWidget* _sender, GdkEventMotion* event, gpointer self); +static gboolean __lambda17_ (InputView* self, GdkEventButton* e); +static gboolean ___lambda17__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +static gboolean __lambda18_ (InputView* self, GdkEventButton* e); +static gboolean ___lambda18__gtk_widget_button_release_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +static void g_cclosure_user_marshal_VOID__INT_INT (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data); +static void g_cclosure_user_marshal_VOID__INT_INT_STRING (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data); +static void input_view_finalize (GObject* obj); +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func); +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func); +static gint _vala_array_length (gpointer array); + + +static PangoFontDescription* _vala_PangoFontDescription_copy (PangoFontDescription* self) { + return g_boxed_copy (pango_font_description_get_type (), self); +} + + +static gpointer __vala_PangoFontDescription_copy0 (gpointer self) { + return self ? _vala_PangoFontDescription_copy (self) : NULL; +} + + +static void __lambda6_ (InputView* self, GtkTextIter* it, const gchar* s, gint i) { + const gchar* _tmp0_ = NULL; + gint _tmp1_ = 0; + g_return_if_fail (it != NULL); + g_return_if_fail (s != NULL); + _tmp0_ = s; + _tmp1_ = i; + input_view_process_insert_text (self, it, _tmp0_, _tmp1_); +} + + +static void ___lambda6__gtk_text_buffer_insert_text (GtkTextBuffer* _sender, GtkTextIter* pos, const gchar* new_text, gint new_text_length, gpointer self) { + __lambda6_ ((InputView*) self, pos, new_text, new_text_length); +} + + +static void __lambda9_ (InputView* self) { + gboolean _tmp0_ = FALSE; + gboolean _tmp1_ = FALSE; + GtkTextIter iter = {0}; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + GtkSourceView* _tmp6_ = NULL; + GtkTextBuffer* _tmp7_ = NULL; + GtkTextBuffer* _tmp8_ = NULL; + gint _tmp9_ = 0; + gint _tmp10_ = 0; + GtkTextIter _tmp11_ = {0}; + gint actual_line = 0; + gint _tmp12_ = 0; + gint lines = 0; + GtkSourceView* _tmp13_ = NULL; + GtkTextBuffer* _tmp14_ = NULL; + GtkTextBuffer* _tmp15_ = NULL; + gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar** _tmp19_ = NULL; + gchar** _tmp20_ = NULL; + gchar** _tmp21_ = NULL; + gint _tmp21__length1 = 0; + gint _tmp22_ = 0; + gint _tmp23_ = 0; + gint _tmp24_ = 0; + gint _tmp37_ = 0; + gint _tmp38_ = 0; + gint _tmp39_ = 0; + gint _tmp40_ = 0; + gchar* _tmp41_ = NULL; + gchar* _tmp42_ = NULL; + gint _tmp43_ = 0; + gint _tmp44_ = 0; + _tmp1_ = self->priv->add_space; + if (_tmp1_) { + _tmp0_ = TRUE; + } else { + gboolean _tmp2_ = FALSE; + _tmp2_ = self->skip_change; + _tmp0_ = _tmp2_; + } + if (_tmp0_) { + return; + } + _tmp3_ = self->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + _tmp6_ = self->source_view; + _tmp7_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp6_); + _tmp8_ = _tmp7_; + g_object_get (_tmp8_, "cursor-position", &_tmp9_, NULL); + _tmp10_ = _tmp9_; + gtk_text_buffer_get_iter_at_offset (_tmp5_, &_tmp11_, _tmp10_); + iter = _tmp11_; + _tmp12_ = gtk_text_iter_get_line (&iter); + actual_line = _tmp12_; + _tmp13_ = self->source_view; + _tmp14_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp13_); + _tmp15_ = _tmp14_; + g_object_get (_tmp15_, "text", &_tmp16_, NULL); + _tmp17_ = _tmp16_; + _tmp18_ = _tmp17_; + _tmp20_ = _tmp19_ = g_strsplit (_tmp18_, "\n", 0); + _tmp21_ = _tmp20_; + _tmp21__length1 = _vala_array_length (_tmp19_); + _tmp22_ = _vala_array_length (_tmp19_); + _tmp21_ = (_vala_array_free (_tmp21_, _tmp21__length1, (GDestroyNotify) g_free), NULL); + _g_free0 (_tmp18_); + lines = _tmp22_; + _tmp23_ = lines; + _tmp24_ = self->priv->total_lines; + if (_tmp23_ != _tmp24_) { + gint _tmp25_ = 0; + gint _tmp26_ = 0; + _tmp25_ = lines; + _tmp26_ = self->priv->total_lines; + if (_tmp25_ > _tmp26_) { + gint _tmp27_ = 0; + gint _tmp28_ = 0; + gint _tmp29_ = 0; + _tmp27_ = actual_line; + _tmp28_ = lines; + _tmp29_ = self->priv->total_lines; + g_signal_emit_by_name (self, "line-added", _tmp27_, _tmp28_ - _tmp29_); + } else { + gboolean _tmp30_ = FALSE; + _tmp30_ = self->priv->backspace_button; + if (_tmp30_) { + gint _tmp31_ = 0; + gint _tmp32_ = 0; + gint _tmp33_ = 0; + _tmp31_ = actual_line; + _tmp32_ = self->priv->total_lines; + _tmp33_ = lines; + g_signal_emit_by_name (self, "line-removed", _tmp31_, _tmp32_ - _tmp33_); + } else { + gint _tmp34_ = 0; + gint _tmp35_ = 0; + gint _tmp36_ = 0; + _tmp34_ = actual_line; + _tmp35_ = self->priv->total_lines; + _tmp36_ = lines; + g_signal_emit_by_name (self, "line-removed", _tmp34_ - 1, _tmp35_ - _tmp36_); + } + } + } + _tmp37_ = lines; + self->priv->total_lines = _tmp37_; + _tmp38_ = actual_line; + _tmp39_ = lines; + _tmp40_ = actual_line; + _tmp41_ = input_view_get_text_line_to_end (self, _tmp40_); + _tmp42_ = _tmp41_; + g_signal_emit_by_name (self, "changed-line", _tmp38_, _tmp39_, _tmp42_); + _g_free0 (_tmp42_); + _tmp43_ = actual_line; + _tmp44_ = lines; + self->scroll_needed = _tmp43_ == (_tmp44_ - 1); + self->priv->backspace_button = FALSE; +} + + +static void ___lambda9__gtk_text_buffer_changed (GtkTextBuffer* _sender, gpointer self) { + __lambda9_ ((InputView*) self); +} + + +static gboolean __lambda10_ (InputView* self, GdkEventKey* e) { + gboolean result = FALSE; + GdkEventKey* _tmp0_ = NULL; + guint _tmp1_ = 0U; + GdkEventKey* _tmp4_ = NULL; + GdkModifierType _tmp5_ = 0; + g_return_val_if_fail (e != NULL, FALSE); + _tmp0_ = e; + _tmp1_ = _tmp0_->keyval; + if (_tmp1_ == ((guint) GDK_KEY_Escape)) { + self->skip_change = TRUE; + g_signal_emit_by_name (self, "escape"); + self->skip_change = FALSE; + result = TRUE; + return result; + } else { + GdkEventKey* _tmp2_ = NULL; + guint _tmp3_ = 0U; + _tmp2_ = e; + _tmp3_ = _tmp2_->keyval; + if (_tmp3_ == ((guint) GDK_KEY_BackSpace)) { + self->priv->backspace_button = TRUE; + result = FALSE; + return result; + } + } + _tmp4_ = e; + _tmp5_ = _tmp4_->state; + if ((_tmp5_ & GDK_CONTROL_MASK) != 0) { + GdkEventKey* _tmp6_ = NULL; + guint _tmp7_ = 0U; + _tmp6_ = e; + _tmp7_ = _tmp6_->keyval; + switch (_tmp7_) { + case GDK_KEY_l: + { + gint line = 0; + gint _tmp8_ = 0; + gint _tmp9_ = 0; + gint _tmp10_ = 0; + _tmp8_ = input_view_get_cursor_line (self); + line = _tmp8_; + _tmp9_ = line; + if (_tmp9_ == 0) { + result = TRUE; + return result; + } + _tmp10_ = line; + g_signal_emit_by_name (self, "insert-result", _tmp10_ - 1); + result = TRUE; + return result; + } + case GDK_KEY_o: + { + self->skip_change = TRUE; + g_signal_emit_by_name (self, "open"); + self->skip_change = FALSE; + result = TRUE; + return result; + } + case GDK_KEY_n: + { + self->skip_change = TRUE; + g_signal_emit_by_name (self, "new-trigger"); + self->skip_change = FALSE; + result = TRUE; + return result; + } + case GDK_KEY_r: + { + GtkSourceView* _tmp11_ = NULL; + GtkTextBuffer* _tmp12_ = NULL; + GtkTextBuffer* _tmp13_ = NULL; + _tmp11_ = self->source_view; + _tmp12_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp11_); + _tmp13_ = _tmp12_; + gtk_text_buffer_insert_at_cursor (_tmp13_, "√", -1); + result = TRUE; + return result; + } + case GDK_KEY_p: + { + GtkSourceView* _tmp14_ = NULL; + GtkTextBuffer* _tmp15_ = NULL; + GtkTextBuffer* _tmp16_ = NULL; + _tmp14_ = self->source_view; + _tmp15_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp14_); + _tmp16_ = _tmp15_; + gtk_text_buffer_insert_at_cursor (_tmp16_, "π", -1); + result = TRUE; + return result; + } + case GDK_KEY_h: + { + g_signal_emit_by_name (self, "help"); + result = TRUE; + return result; + } + case GDK_KEY_C: + { + gchar* text = NULL; + gchar* _tmp17_ = NULL; + const gchar* _tmp18_ = NULL; + GtkClipboard* _tmp19_ = NULL; + const gchar* _tmp20_ = NULL; + _tmp17_ = input_view_get_replaced_marked_content (self); + text = _tmp17_; + _tmp18_ = text; + if (_tmp18_ == NULL) { + result = TRUE; + _g_free0 (text); + return result; + } + _tmp19_ = gtk_clipboard_get (GDK_SELECTION_CLIPBOARD); + _tmp20_ = text; + gtk_clipboard_set_text (_tmp19_, _tmp20_, -1); + result = TRUE; + _g_free0 (text); + return result; + } + case GDK_KEY_0: + { + GtkSourceView* _tmp21_ = NULL; + GtkTextBuffer* _tmp22_ = NULL; + GtkTextBuffer* _tmp23_ = NULL; + _tmp21_ = self->source_view; + _tmp22_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp21_); + _tmp23_ = _tmp22_; + gtk_text_buffer_insert_at_cursor (_tmp23_, "°", -1); + result = TRUE; + return result; + } + case GDK_KEY_2: + { + GtkSourceView* _tmp24_ = NULL; + GtkTextBuffer* _tmp25_ = NULL; + GtkTextBuffer* _tmp26_ = NULL; + _tmp24_ = self->source_view; + _tmp25_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp24_); + _tmp26_ = _tmp25_; + gtk_text_buffer_insert_at_cursor (_tmp26_, "²", -1); + result = TRUE; + return result; + } + case GDK_KEY_3: + { + GtkSourceView* _tmp27_ = NULL; + GtkTextBuffer* _tmp28_ = NULL; + GtkTextBuffer* _tmp29_ = NULL; + _tmp27_ = self->source_view; + _tmp28_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp27_); + _tmp29_ = _tmp28_; + gtk_text_buffer_insert_at_cursor (_tmp29_, "³", -1); + result = TRUE; + return result; + } + case GDK_KEY_4: + { + GtkSourceView* _tmp30_ = NULL; + GtkTextBuffer* _tmp31_ = NULL; + GtkTextBuffer* _tmp32_ = NULL; + _tmp30_ = self->source_view; + _tmp31_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp30_); + _tmp32_ = _tmp31_; + gtk_text_buffer_insert_at_cursor (_tmp32_, "⁴", -1); + result = TRUE; + return result; + } + default: + { + break; + } + } + } + result = FALSE; + return result; +} + + +static gboolean ___lambda10__gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self) { + gboolean result; + result = __lambda10_ ((InputView*) self, event); + return result; +} + + +static void __lambda11_ (InputView* self, GObject* s, GParamSpec* p) { + GtkTextIter iter = {0}; + GtkSourceView* _tmp0_ = NULL; + GtkTextBuffer* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + GtkTextIter _tmp8_ = {0}; + gint line = 0; + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + g_return_if_fail (s != NULL); + g_return_if_fail (p != NULL); + memset (&iter, 0, sizeof (GtkTextIter)); + _tmp0_ = self->source_view; + _tmp1_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = self->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + g_object_get (_tmp5_, "cursor-position", &_tmp6_, NULL); + _tmp7_ = _tmp6_; + gtk_text_buffer_get_iter_at_offset (_tmp2_, &_tmp8_, _tmp7_); + iter = _tmp8_; + _tmp9_ = gtk_text_iter_get_line (&iter); + line = _tmp9_; + _tmp10_ = self->priv->actual_line; + _tmp11_ = line; + if (_tmp10_ != _tmp11_) { + gint _tmp12_ = 0; + gint _tmp13_ = 0; + _tmp12_ = line; + g_signal_emit_by_name (self, "cursor-line-change", _tmp12_); + _tmp13_ = line; + self->priv->actual_line = _tmp13_; + } +} + + +static void ___lambda11__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) { + __lambda11_ ((InputView*) self, _sender, pspec); +} + + +static gboolean __lambda13_ (InputView* self) { + gboolean result = FALSE; + gchar* text = NULL; + gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + GtkClipboard* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + _tmp0_ = input_view_get_replaced_marked_real_content (self); + text = _tmp0_; + _tmp1_ = text; + if (_tmp1_ == NULL) { + result = FALSE; + _g_free0 (text); + return result; + } + _tmp2_ = gtk_clipboard_get (GDK_SELECTION_CLIPBOARD); + _tmp3_ = text; + gtk_clipboard_set_text (_tmp2_, _tmp3_, -1); + result = FALSE; + _g_free0 (text); + return result; +} + + +static gboolean ___lambda13__gsource_func (gpointer self) { + gboolean result; + result = __lambda13_ ((InputView*) self); + return result; +} + + +static void __lambda12_ (InputView* self) { + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 10, ___lambda13__gsource_func, g_object_ref (self), g_object_unref); +} + + +static void ___lambda12__gtk_text_view_copy_clipboard (GtkTextView* _sender, gpointer self) { + __lambda12_ ((InputView*) self); +} + + +static gboolean __lambda15_ (InputView* self) { + gboolean result = FALSE; + input_view_process_new_content (self); + result = FALSE; + return result; +} + + +static gboolean ___lambda15__gsource_func (gpointer self) { + gboolean result; + result = __lambda15_ ((InputView*) self); + return result; +} + + +static void __lambda14_ (InputView* self, GtkClipboard* c) { + gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_if_fail (c != NULL); + _tmp0_ = input_view_get_text_line_to_end (self, 0); + _tmp1_ = _tmp0_; + g_signal_emit_by_name (self, "changed-line", 0, -1, _tmp1_); + _g_free0 (_tmp1_); + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 80, ___lambda15__gsource_func, g_object_ref (self), g_object_unref); +} + + +static void ___lambda14__gtk_text_buffer_paste_done (GtkTextBuffer* _sender, GtkClipboard* clipboard, gpointer self) { + __lambda14_ ((InputView*) self, clipboard); +} + + +static void __lambda19_ (InputView* self) { + GdkRGBA color = {0}; + GtkSourceView* _tmp0_ = NULL; + GtkStyleContext* _tmp1_ = NULL; + GdkRGBA _tmp2_ = {0}; + GdkRGBA _tmp3_ = {0}; + memset (&color, 0, sizeof (GdkRGBA)); + _tmp0_ = self->source_view; + _tmp1_ = gtk_widget_get_style_context ((GtkWidget*) _tmp0_); + gtk_style_context_lookup_color (_tmp1_, "theme_base_color", &_tmp2_); + color = _tmp2_; + _tmp3_ = color; + gtk_widget_override_background_color ((GtkWidget*) self, GTK_STATE_FLAG_NORMAL, &_tmp3_); +} + + +static void ___lambda19__gtk_widget_realize (GtkWidget* _sender, gpointer self) { + __lambda19_ ((InputView*) self); +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static void _vala_PangoFontDescription_free (PangoFontDescription* self) { + g_boxed_free (pango_font_description_get_type (), self); +} + + +InputView* input_view_construct (GType object_type) { + InputView * self = NULL; + GtkSourceView* _tmp6_ = NULL; + GtkSourceBuffer* _tmp7_ = NULL; + GtkSourceBuffer* _tmp8_ = NULL; + GtkSourceSearchSettings* _tmp9_ = NULL; + GtkSourceSearchSettings* _tmp10_ = NULL; + GtkSourceSearchContext* _tmp11_ = NULL; + GtkSourceSearchContext* _tmp12_ = NULL; + GtkSourceSearchSettings* _tmp13_ = NULL; + GtkSourceSearchSettings* _tmp14_ = NULL; + GtkSourceSearchContext* _tmp15_ = NULL; + GtkSourceSearchSettings* _tmp16_ = NULL; + GtkSourceSearchSettings* _tmp17_ = NULL; + GtkSourceSearchContext* _tmp18_ = NULL; + GtkSourceSearchSettings* _tmp19_ = NULL; + GtkSourceSearchSettings* _tmp20_ = NULL; + const gchar* _tmp21_ = NULL; + GtkSourceSearchContext* _tmp22_ = NULL; + GeeArrayList* _tmp23_ = NULL; + GtkSourceView* _tmp24_ = NULL; + GtkSourceBuffer* _tmp25_ = NULL; + GtkSourceView* _tmp26_ = NULL; + GtkSourceView* _tmp27_ = NULL; + GtkSourceView* _tmp28_ = NULL; + PangoFontDescription* font_desc = NULL; + GtkSourceView* _tmp29_ = NULL; + GtkStyleContext* _tmp30_ = NULL; + PangoFontDescription* _tmp31_ = NULL; + PangoFontDescription* _tmp32_ = NULL; + GtkSourceView* _tmp33_ = NULL; + GtkSourceView* _tmp34_ = NULL; + GtkTextBuffer* _tmp35_ = NULL; + GtkTextBuffer* _tmp36_ = NULL; + GtkSourceView* _tmp37_ = NULL; + GtkTextBuffer* _tmp38_ = NULL; + GtkTextBuffer* _tmp39_ = NULL; + GtkSourceView* _tmp40_ = NULL; + GtkSourceView* _tmp41_ = NULL; + GtkTextBuffer* _tmp42_ = NULL; + GtkTextBuffer* _tmp43_ = NULL; + GtkSourceView* _tmp44_ = NULL; + GtkSourceView* _tmp45_ = NULL; + GtkTextBuffer* _tmp46_ = NULL; + GtkTextBuffer* _tmp47_ = NULL; + GtkAlignment* alignment = NULL; + GtkAlignment* _tmp48_ = NULL; + GtkSourceView* _tmp49_ = NULL; + GtkSourceView* _tmp50_ = NULL; + gchar** dirs = NULL; + gchar* _tmp51_ = NULL; + gchar** _tmp52_ = NULL; + gint dirs_length1 = 0; + gint _dirs_size_ = 0; + GtkSourceLanguageManager* lang_manager = NULL; + GtkSourceLanguageManager* _tmp53_ = NULL; + GtkSourceLanguageManager* _tmp54_ = NULL; + GtkSourceBuffer* _tmp55_ = NULL; + GtkSourceLanguage* _tmp56_ = NULL; + GtkSourceStyleSchemeManager* style_scheme_manager = NULL; + GtkSourceStyleSchemeManager* _tmp57_ = NULL; + GtkSourceBuffer* _tmp58_ = NULL; + GtkSourceStyleScheme* _tmp59_ = NULL; + GError * _inner_error_ = NULL; + self = (InputView*) g_object_new (object_type, NULL); + { + GRegex* _tmp0_ = NULL; + GRegex* _tmp1_ = NULL; + GRegex* _tmp2_ = NULL; + GRegex* _tmp3_ = NULL; + GRegex* _tmp4_ = NULL; + GRegex* _tmp5_ = NULL; + _tmp1_ = g_regex_new ("\\d+", G_REGEX_OPTIMIZE, 0, &_inner_error_); + _tmp0_ = _tmp1_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch12_g_regex_error; + } + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp2_ = _tmp0_; + _tmp0_ = NULL; + _g_regex_unref0 (self->priv->digit_regex); + self->priv->digit_regex = _tmp2_; + _tmp4_ = g_regex_new ("[A-Za-z]", G_REGEX_OPTIMIZE, 0, &_inner_error_); + _tmp3_ = _tmp4_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_regex_unref0 (_tmp0_); + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch12_g_regex_error; + } + _g_regex_unref0 (_tmp0_); + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp5_ = _tmp3_; + _tmp3_ = NULL; + _g_regex_unref0 (self->priv->non_digit_regex); + self->priv->non_digit_regex = _tmp5_; + _g_regex_unref0 (_tmp3_); + _g_regex_unref0 (_tmp0_); + } + goto __finally12; + __catch12_g_regex_error: + { + GError* ex = NULL; + ex = _inner_error_; + _inner_error_ = NULL; + _g_error_free0 (ex); + } + __finally12: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp6_ = (GtkSourceView*) gtk_source_view_new (); + g_object_ref_sink (_tmp6_); + _g_object_unref0 (self->source_view); + self->source_view = _tmp6_; + _tmp7_ = gtk_source_buffer_new (NULL); + _g_object_unref0 (self->buffer); + self->buffer = _tmp7_; + _tmp8_ = self->buffer; + _tmp9_ = gtk_source_search_settings_new (); + _tmp10_ = _tmp9_; + _tmp11_ = gtk_source_search_context_new (_tmp8_, _tmp10_); + _g_object_unref0 (self->priv->search); + self->priv->search = _tmp11_; + _g_object_unref0 (_tmp10_); + _tmp12_ = self->priv->search; + _tmp13_ = gtk_source_search_context_get_settings (_tmp12_); + _tmp14_ = _tmp13_; + gtk_source_search_settings_set_regex_enabled (_tmp14_, TRUE); + _tmp15_ = self->priv->search; + _tmp16_ = gtk_source_search_context_get_settings (_tmp15_); + _tmp17_ = _tmp16_; + gtk_source_search_settings_set_case_sensitive (_tmp17_, FALSE); + _tmp18_ = self->priv->search; + _tmp19_ = gtk_source_search_context_get_settings (_tmp18_); + _tmp20_ = _tmp19_; + _tmp21_ = self->priv->line_regex; + gtk_source_search_settings_set_search_text (_tmp20_, _tmp21_); + _tmp22_ = self->priv->search; + gtk_source_search_context_set_highlight (_tmp22_, TRUE); + _tmp23_ = gee_array_list_new (TYPE_RESULT_BOX_WIDGET, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _g_object_unref0 (self->priv->result_widgets); + self->priv->result_widgets = _tmp23_; + _tmp24_ = self->source_view; + _tmp25_ = self->buffer; + gtk_text_view_set_buffer ((GtkTextView*) _tmp24_, (GtkTextBuffer*) _tmp25_); + _tmp26_ = self->source_view; + gtk_source_view_set_show_line_numbers (_tmp26_, TRUE); + _tmp27_ = self->source_view; + gtk_text_view_set_left_margin ((GtkTextView*) _tmp27_, NASC_left_margin - 5); + _tmp28_ = self->source_view; + gtk_text_view_set_pixels_below_lines ((GtkTextView*) _tmp28_, NASC_vertical_padding); + _tmp29_ = self->source_view; + _tmp30_ = gtk_widget_get_style_context ((GtkWidget*) _tmp29_); + _tmp31_ = gtk_style_context_get_font (_tmp30_, GTK_STATE_FLAG_NORMAL); + _tmp32_ = __vala_PangoFontDescription_copy0 (_tmp31_); + font_desc = _tmp32_; + pango_font_description_set_size (font_desc, 12 * PANGO_SCALE); + _tmp33_ = self->source_view; + gtk_widget_override_font ((GtkWidget*) _tmp33_, font_desc); + _tmp34_ = self->source_view; + _tmp35_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp34_); + _tmp36_ = _tmp35_; + g_signal_connect_object (_tmp36_, "insert-text", (GCallback) ___lambda6__gtk_text_buffer_insert_text, self, 0); + _tmp37_ = self->source_view; + _tmp38_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp37_); + _tmp39_ = _tmp38_; + g_signal_connect_object (_tmp39_, "changed", (GCallback) ___lambda9__gtk_text_buffer_changed, self, 0); + _tmp40_ = self->source_view; + g_signal_connect_object ((GtkWidget*) _tmp40_, "key-press-event", (GCallback) ___lambda10__gtk_widget_key_press_event, self, 0); + _tmp41_ = self->source_view; + _tmp42_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp41_); + _tmp43_ = _tmp42_; + g_signal_connect_object ((GObject*) _tmp43_, "notify::cursor-position", (GCallback) ___lambda11__g_object_notify, self, 0); + _tmp44_ = self->source_view; + g_signal_connect_object ((GtkTextView*) _tmp44_, "copy-clipboard", (GCallback) ___lambda12__gtk_text_view_copy_clipboard, self, 0); + _tmp45_ = self->source_view; + _tmp46_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp45_); + _tmp47_ = _tmp46_; + g_signal_connect_object (_tmp47_, "paste-done", (GCallback) ___lambda14__gtk_text_buffer_paste_done, self, 0); + input_view_scrubbing_mode (self); + _tmp48_ = (GtkAlignment*) gtk_alignment_new ((gfloat) 0, (gfloat) 0, (gfloat) 1, (gfloat) 1); + g_object_ref_sink (_tmp48_); + alignment = _tmp48_; + g_object_set (alignment, "top-padding", (guint) NASC_top_padding, NULL); + _tmp49_ = self->source_view; + gtk_container_add ((GtkContainer*) alignment, (GtkWidget*) _tmp49_); + _tmp50_ = self->source_view; + g_signal_connect_object ((GtkWidget*) _tmp50_, "realize", (GCallback) ___lambda19__gtk_widget_realize, self, 0); + gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) alignment, TRUE, TRUE, (guint) 0); + _tmp51_ = g_strdup ("/usr/share/qalculate/styles/"); + _tmp52_ = g_new0 (gchar*, 1 + 1); + _tmp52_[0] = _tmp51_; + dirs = _tmp52_; + dirs_length1 = 1; + _dirs_size_ = dirs_length1; + _tmp53_ = gtk_source_language_manager_get_default (); + _tmp54_ = _g_object_ref0 (_tmp53_); + lang_manager = _tmp54_; + gtk_source_language_manager_set_search_path (lang_manager, dirs); + _tmp55_ = self->buffer; + _tmp56_ = gtk_source_language_manager_get_language (lang_manager, "nasc"); + gtk_source_buffer_set_language (_tmp55_, _tmp56_); + _tmp57_ = gtk_source_style_scheme_manager_new (); + style_scheme_manager = _tmp57_; + gtk_source_style_scheme_manager_set_search_path (style_scheme_manager, dirs); + _tmp58_ = self->buffer; + _tmp59_ = gtk_source_style_scheme_manager_get_scheme (style_scheme_manager, "nasc"); + gtk_source_buffer_set_style_scheme (_tmp58_, _tmp59_); + _g_object_unref0 (style_scheme_manager); + _g_object_unref0 (lang_manager); + dirs = (_vala_array_free (dirs, dirs_length1, (GDestroyNotify) g_free), NULL); + _g_object_unref0 (alignment); + __vala_PangoFontDescription_free0 (font_desc); + return self; +} + + +InputView* input_view_new (void) { + return input_view_construct (TYPE_INPUT_VIEW); +} + + +static Block9Data* block9_data_ref (Block9Data* _data9_) { + g_atomic_int_inc (&_data9_->_ref_count_); + return _data9_; +} + + +static void block9_data_unref (void * _userdata_) { + Block9Data* _data9_; + _data9_ = (Block9Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data9_->_ref_count_)) { + InputView* self; + self = _data9_->self; + _g_free0 (_data9_->s); + _g_object_unref0 (self); + g_slice_free (Block9Data, _data9_); + } +} + + +static Block10Data* block10_data_ref (Block10Data* _data10_) { + g_atomic_int_inc (&_data10_->_ref_count_); + return _data10_; +} + + +static void block10_data_unref (void * _userdata_) { + Block10Data* _data10_; + _data10_ = (Block10Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data10_->_ref_count_)) { + InputView* self; + self = _data10_->_data9_->self; + block9_data_unref (_data10_->_data9_); + _data10_->_data9_ = NULL; + g_slice_free (Block10Data, _data10_); + } +} + + +static Block11Data* block11_data_ref (Block11Data* _data11_) { + g_atomic_int_inc (&_data11_->_ref_count_); + return _data11_; +} + + +static void block11_data_unref (void * _userdata_) { + Block11Data* _data11_; + _data11_ = (Block11Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data11_->_ref_count_)) { + InputView* self; + self = _data11_->_data10_->_data9_->self; + block10_data_unref (_data11_->_data10_); + _data11_->_data10_ = NULL; + g_slice_free (Block11Data, _data11_); + } +} + + +static gboolean ____lambda7_ (Block11Data* _data11_) { + Block10Data* _data10_; + Block9Data* _data9_; + InputView* self; + gboolean result = FALSE; + GtkTextIter iter3 = {0}; + GtkTextIter iter4 = {0}; + GtkSourceView* _tmp0_ = NULL; + GtkTextBuffer* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + gint _tmp3_ = 0; + GtkTextIter _tmp4_ = {0}; + GtkSourceView* _tmp5_ = NULL; + GtkTextBuffer* _tmp6_ = NULL; + GtkTextBuffer* _tmp7_ = NULL; + gint _tmp8_ = 0; + GtkTextIter _tmp9_ = {0}; + GtkSourceView* _tmp10_ = NULL; + GtkTextBuffer* _tmp11_ = NULL; + GtkTextBuffer* _tmp12_ = NULL; + GtkSourceView* _tmp13_ = NULL; + GtkTextBuffer* _tmp14_ = NULL; + GtkTextBuffer* _tmp15_ = NULL; + GtkTextIter _tmp16_ = {0}; + gint _tmp17_ = 0; + gint _tmp18_ = 0; + GeeArrayList* _tmp19_ = NULL; + const gchar* _tmp20_ = NULL; + gboolean _tmp21_ = FALSE; + GtkSourceView* _tmp51_ = NULL; + GtkTextBuffer* _tmp52_ = NULL; + GtkTextBuffer* _tmp53_ = NULL; + GtkTextIter _tmp54_ = {0}; + gint _tmp55_ = 0; + gint _tmp56_ = 0; + gchar* _tmp57_ = NULL; + gchar* _tmp58_ = NULL; + _data10_ = _data11_->_data10_; + _data9_ = _data10_->_data9_; + self = _data9_->self; + memset (&iter3, 0, sizeof (GtkTextIter)); + memset (&iter4, 0, sizeof (GtkTextIter)); + _tmp0_ = self->source_view; + _tmp1_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _data11_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp2_, &_tmp4_, _tmp3_); + iter3 = _tmp4_; + _tmp5_ = self->source_view; + _tmp6_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp5_); + _tmp7_ = _tmp6_; + _tmp8_ = _data11_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp7_, &_tmp9_, _tmp8_); + iter4 = _tmp9_; + gtk_text_iter_backward_cursor_positions (&iter3, 4); + _tmp10_ = self->source_view; + _tmp11_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp10_); + _tmp12_ = _tmp11_; + gtk_text_buffer_delete (_tmp12_, &iter3, &iter4); + _tmp13_ = self->source_view; + _tmp14_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp13_); + _tmp15_ = _tmp14_; + _tmp16_ = iter4; + gtk_text_buffer_place_cursor (_tmp15_, &_tmp16_); + _tmp17_ = gtk_text_iter_get_offset (&iter4); + _data11_->offset = _tmp17_; + _tmp18_ = _data11_->line; + g_signal_emit_by_name (self, "insert-result", _tmp18_ - 1); + _tmp19_ = self->operators; + _tmp20_ = _data9_->s; + _tmp21_ = gee_abstract_collection_contains ((GeeAbstractCollection*) _tmp19_, _tmp20_); + if (_tmp21_) { + GtkSourceView* _tmp22_ = NULL; + GtkTextBuffer* _tmp23_ = NULL; + GtkTextBuffer* _tmp24_ = NULL; + gint _tmp25_ = 0; + GtkTextIter _tmp26_ = {0}; + GtkSourceView* _tmp27_ = NULL; + GtkTextBuffer* _tmp28_ = NULL; + GtkTextBuffer* _tmp29_ = NULL; + const gchar* _tmp30_ = NULL; + gchar* _tmp31_ = NULL; + gchar* _tmp32_ = NULL; + GtkSourceView* _tmp33_ = NULL; + GtkTextBuffer* _tmp34_ = NULL; + GtkTextBuffer* _tmp35_ = NULL; + gint _tmp36_ = 0; + GtkTextIter _tmp37_ = {0}; + _tmp22_ = self->source_view; + _tmp23_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp22_); + _tmp24_ = _tmp23_; + _tmp25_ = _data11_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp24_, &_tmp26_, _tmp25_ + 2); + iter4 = _tmp26_; + _tmp27_ = self->source_view; + _tmp28_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp27_); + _tmp29_ = _tmp28_; + _tmp30_ = _data9_->s; + _tmp31_ = g_strconcat (" ", _tmp30_, NULL); + _tmp32_ = _tmp31_; + gtk_text_buffer_insert (_tmp29_, &iter4, _tmp32_, -1); + _g_free0 (_tmp32_); + _tmp33_ = self->source_view; + _tmp34_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp33_); + _tmp35_ = _tmp34_; + _tmp36_ = _data11_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp35_, &_tmp37_, _tmp36_ + 4); + iter4 = _tmp37_; + self->priv->add_space = TRUE; + } else { + GtkSourceView* _tmp38_ = NULL; + GtkTextBuffer* _tmp39_ = NULL; + GtkTextBuffer* _tmp40_ = NULL; + gint _tmp41_ = 0; + GtkTextIter _tmp42_ = {0}; + GtkSourceView* _tmp43_ = NULL; + GtkTextBuffer* _tmp44_ = NULL; + GtkTextBuffer* _tmp45_ = NULL; + GtkSourceView* _tmp46_ = NULL; + GtkTextBuffer* _tmp47_ = NULL; + GtkTextBuffer* _tmp48_ = NULL; + gint _tmp49_ = 0; + GtkTextIter _tmp50_ = {0}; + _tmp38_ = self->source_view; + _tmp39_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp38_); + _tmp40_ = _tmp39_; + _tmp41_ = _data11_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp40_, &_tmp42_, _tmp41_ + 2); + iter4 = _tmp42_; + _tmp43_ = self->source_view; + _tmp44_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp43_); + _tmp45_ = _tmp44_; + gtk_text_buffer_insert (_tmp45_, &iter4, " ", -1); + _tmp46_ = self->source_view; + _tmp47_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp46_); + _tmp48_ = _tmp47_; + _tmp49_ = _data11_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp48_, &_tmp50_, _tmp49_ + 2); + iter4 = _tmp50_; + } + _tmp51_ = self->source_view; + _tmp52_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp51_); + _tmp53_ = _tmp52_; + _tmp54_ = iter4; + gtk_text_buffer_place_cursor (_tmp53_, &_tmp54_); + self->skip_change = FALSE; + _tmp55_ = _data11_->line; + _tmp56_ = _data11_->line; + _tmp57_ = input_view_get_text_line_to_end (self, _tmp56_); + _tmp58_ = _tmp57_; + g_signal_emit_by_name (self, "changed-line", _tmp55_, -1, _tmp58_); + _g_free0 (_tmp58_); + result = FALSE; + return result; +} + + +static gboolean _____lambda7__gsource_func (gpointer self) { + gboolean result; + result = ____lambda7_ (self); + return result; +} + + +static Block12Data* block12_data_ref (Block12Data* _data12_) { + g_atomic_int_inc (&_data12_->_ref_count_); + return _data12_; +} + + +static void block12_data_unref (void * _userdata_) { + Block12Data* _data12_; + _data12_ = (Block12Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data12_->_ref_count_)) { + InputView* self; + self = _data12_->_data10_->_data9_->self; + block10_data_unref (_data12_->_data10_); + _data12_->_data10_ = NULL; + g_slice_free (Block12Data, _data12_); + } +} + + +static gboolean ____lambda8_ (Block12Data* _data12_) { + Block10Data* _data10_; + Block9Data* _data9_; + InputView* self; + gboolean result = FALSE; + GtkTextIter iter3 = {0}; + GtkTextIter iter4 = {0}; + GtkSourceView* _tmp0_ = NULL; + GtkTextBuffer* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + gint _tmp3_ = 0; + GtkTextIter _tmp4_ = {0}; + GtkSourceView* _tmp5_ = NULL; + GtkTextBuffer* _tmp6_ = NULL; + GtkTextBuffer* _tmp7_ = NULL; + gint _tmp8_ = 0; + GtkTextIter _tmp9_ = {0}; + gint _tmp10_ = 0; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + gint _tmp13_ = 0; + gint _tmp14_ = 0; + GtkSourceView* _tmp15_ = NULL; + GtkTextBuffer* _tmp16_ = NULL; + GtkTextBuffer* _tmp17_ = NULL; + GtkSourceView* _tmp18_ = NULL; + GtkTextBuffer* _tmp19_ = NULL; + GtkTextBuffer* _tmp20_ = NULL; + GtkTextIter _tmp21_ = {0}; + gint _tmp22_ = 0; + gint _tmp23_ = 0; + GeeArrayList* _tmp24_ = NULL; + const gchar* _tmp25_ = NULL; + gboolean _tmp26_ = FALSE; + GtkSourceView* _tmp56_ = NULL; + GtkTextBuffer* _tmp57_ = NULL; + GtkTextBuffer* _tmp58_ = NULL; + GtkTextIter _tmp59_ = {0}; + gint _tmp60_ = 0; + gint _tmp61_ = 0; + gchar* _tmp62_ = NULL; + gchar* _tmp63_ = NULL; + _data10_ = _data12_->_data10_; + _data9_ = _data10_->_data9_; + self = _data9_->self; + memset (&iter3, 0, sizeof (GtkTextIter)); + memset (&iter4, 0, sizeof (GtkTextIter)); + _tmp0_ = self->source_view; + _tmp1_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _data12_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp2_, &_tmp4_, _tmp3_); + iter3 = _tmp4_; + _tmp5_ = self->source_view; + _tmp6_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp5_); + _tmp7_ = _tmp6_; + _tmp8_ = _data12_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp7_, &_tmp9_, _tmp8_); + iter4 = _tmp9_; + _tmp10_ = _data10_->res; + _tmp11_ = g_strdup_printf ("%i", _tmp10_); + _tmp12_ = _tmp11_; + _tmp13_ = strlen (_tmp12_); + _tmp14_ = _tmp13_; + gtk_text_iter_backward_cursor_positions (&iter3, 5 + _tmp14_); + _g_free0 (_tmp12_); + _tmp15_ = self->source_view; + _tmp16_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp15_); + _tmp17_ = _tmp16_; + gtk_text_buffer_delete (_tmp17_, &iter3, &iter4); + _tmp18_ = self->source_view; + _tmp19_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp18_); + _tmp20_ = _tmp19_; + _tmp21_ = iter4; + gtk_text_buffer_place_cursor (_tmp20_, &_tmp21_); + _tmp22_ = gtk_text_iter_get_offset (&iter4); + _data12_->offset = _tmp22_; + _tmp23_ = _data10_->res; + g_signal_emit_by_name (self, "insert-result", _tmp23_ - 1); + _tmp24_ = self->operators; + _tmp25_ = _data9_->s; + _tmp26_ = gee_abstract_collection_contains ((GeeAbstractCollection*) _tmp24_, _tmp25_); + if (_tmp26_) { + GtkSourceView* _tmp27_ = NULL; + GtkTextBuffer* _tmp28_ = NULL; + GtkTextBuffer* _tmp29_ = NULL; + gint _tmp30_ = 0; + GtkTextIter _tmp31_ = {0}; + GtkSourceView* _tmp32_ = NULL; + GtkTextBuffer* _tmp33_ = NULL; + GtkTextBuffer* _tmp34_ = NULL; + const gchar* _tmp35_ = NULL; + gchar* _tmp36_ = NULL; + gchar* _tmp37_ = NULL; + GtkSourceView* _tmp38_ = NULL; + GtkTextBuffer* _tmp39_ = NULL; + GtkTextBuffer* _tmp40_ = NULL; + gint _tmp41_ = 0; + GtkTextIter _tmp42_ = {0}; + _tmp27_ = self->source_view; + _tmp28_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp27_); + _tmp29_ = _tmp28_; + _tmp30_ = _data12_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp29_, &_tmp31_, _tmp30_ + 2); + iter4 = _tmp31_; + _tmp32_ = self->source_view; + _tmp33_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp32_); + _tmp34_ = _tmp33_; + _tmp35_ = _data9_->s; + _tmp36_ = g_strconcat (" ", _tmp35_, NULL); + _tmp37_ = _tmp36_; + gtk_text_buffer_insert (_tmp34_, &iter4, _tmp37_, -1); + _g_free0 (_tmp37_); + _tmp38_ = self->source_view; + _tmp39_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp38_); + _tmp40_ = _tmp39_; + _tmp41_ = _data12_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp40_, &_tmp42_, _tmp41_ + 4); + iter4 = _tmp42_; + self->priv->add_space = TRUE; + } else { + GtkSourceView* _tmp43_ = NULL; + GtkTextBuffer* _tmp44_ = NULL; + GtkTextBuffer* _tmp45_ = NULL; + gint _tmp46_ = 0; + GtkTextIter _tmp47_ = {0}; + GtkSourceView* _tmp48_ = NULL; + GtkTextBuffer* _tmp49_ = NULL; + GtkTextBuffer* _tmp50_ = NULL; + GtkSourceView* _tmp51_ = NULL; + GtkTextBuffer* _tmp52_ = NULL; + GtkTextBuffer* _tmp53_ = NULL; + gint _tmp54_ = 0; + GtkTextIter _tmp55_ = {0}; + _tmp43_ = self->source_view; + _tmp44_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp43_); + _tmp45_ = _tmp44_; + _tmp46_ = _data12_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp45_, &_tmp47_, _tmp46_ + 2); + iter4 = _tmp47_; + _tmp48_ = self->source_view; + _tmp49_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp48_); + _tmp50_ = _tmp49_; + gtk_text_buffer_insert (_tmp50_, &iter4, " ", -1); + _tmp51_ = self->source_view; + _tmp52_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp51_); + _tmp53_ = _tmp52_; + _tmp54_ = _data12_->offset; + gtk_text_buffer_get_iter_at_offset (_tmp53_, &_tmp55_, _tmp54_ + 2); + iter4 = _tmp55_; + } + _tmp56_ = self->source_view; + _tmp57_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp56_); + _tmp58_ = _tmp57_; + _tmp59_ = iter4; + gtk_text_buffer_place_cursor (_tmp58_, &_tmp59_); + self->skip_change = FALSE; + _tmp60_ = _data10_->line; + _tmp61_ = _data10_->line; + _tmp62_ = input_view_get_text_line_to_end (self, _tmp61_); + _tmp63_ = _tmp62_; + g_signal_emit_by_name (self, "changed-line", _tmp60_, -1, _tmp63_); + _g_free0 (_tmp63_); + result = FALSE; + return result; +} + + +static gboolean _____lambda8__gsource_func (gpointer self) { + gboolean result; + result = ____lambda8_ (self); + return result; +} + + +static gboolean string_contains (const gchar* self, const gchar* needle) { + gboolean result = FALSE; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (needle != NULL, FALSE); + _tmp0_ = needle; + _tmp1_ = strstr ((gchar*) self, (gchar*) _tmp0_); + result = _tmp1_ != NULL; + return result; +} + + +static void input_view_process_insert_text (InputView* self, GtkTextIter* it, const gchar* s, gint i) { + Block9Data* _data9_; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; + gboolean _tmp3_ = FALSE; + GtkTextIter iter = {0}; + GtkTextIter iter2 = {0}; + gboolean _tmp8_ = FALSE; + const gchar* _tmp9_ = NULL; + GeeArrayList* _tmp36_ = NULL; + const gchar* _tmp37_ = NULL; + gboolean _tmp38_ = FALSE; + g_return_if_fail (self != NULL); + g_return_if_fail (it != NULL); + g_return_if_fail (s != NULL); + _data9_ = g_slice_new0 (Block9Data); + _data9_->_ref_count_ = 1; + _data9_->self = g_object_ref (self); + _tmp0_ = s; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (_data9_->s); + _data9_->s = _tmp1_; + _tmp2_ = self->skip_change; + if (_tmp2_) { + block9_data_unref (_data9_); + _data9_ = NULL; + return; + } + _tmp3_ = self->priv->add_space; + if (_tmp3_) { + const gchar* _tmp4_ = NULL; + self->priv->add_space = FALSE; + _tmp4_ = _data9_->s; + if (g_strcmp0 (_tmp4_, " ") != 0) { + GtkSourceView* _tmp5_ = NULL; + GtkTextBuffer* _tmp6_ = NULL; + GtkTextBuffer* _tmp7_ = NULL; + self->skip_change = TRUE; + _tmp5_ = self->source_view; + _tmp6_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp5_); + _tmp7_ = _tmp6_; + gtk_text_buffer_insert (_tmp7_, it, " ", -1); + self->skip_change = FALSE; + } + block9_data_unref (_data9_); + _data9_ = NULL; + return; + } + memset (&iter, 0, sizeof (GtkTextIter)); + memset (&iter2, 0, sizeof (GtkTextIter)); + _tmp9_ = _data9_->s; + if (g_strcmp0 (_tmp9_, " ") == 0) { + _tmp8_ = TRUE; + } else { + GeeArrayList* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + gboolean _tmp12_ = FALSE; + _tmp10_ = self->operators; + _tmp11_ = _data9_->s; + _tmp12_ = gee_abstract_collection_contains ((GeeAbstractCollection*) _tmp10_, _tmp11_); + _tmp8_ = _tmp12_; + } + if (_tmp8_) { + Block10Data* _data10_; + GtkTextIter _tmp13_ = {0}; + GtkTextIter _tmp14_ = {0}; + GtkTextIter _tmp15_ = {0}; + GtkTextIter _tmp16_ = {0}; + gboolean _tmp17_ = FALSE; + GtkTextIter _tmp23_ = {0}; + GtkTextIter _tmp24_ = {0}; + GtkTextIter _tmp25_ = {0}; + GtkTextIter _tmp26_ = {0}; + gint _tmp27_ = 0; + gint _tmp28_ = 0; + gboolean _tmp29_ = FALSE; + gint _tmp30_ = 0; + _data10_ = g_slice_new0 (Block10Data); + _data10_->_ref_count_ = 1; + _data10_->_data9_ = block9_data_ref (_data9_); + _tmp13_ = *it; + gtk_text_iter_assign (&iter, &_tmp13_); + _tmp14_ = *it; + gtk_text_iter_assign (&iter2, &_tmp14_); + _tmp15_ = iter; + _tmp16_ = iter2; + _tmp17_ = input_view_check_pre_it (self, "ans", &_tmp15_, &_tmp16_); + if (_tmp17_) { + Block11Data* _data11_; + gint _tmp18_ = 0; + gint _tmp19_ = 0; + GtkTextIter _tmp20_ = {0}; + GtkTextIter _tmp21_ = {0}; + gint _tmp22_ = 0; + _data11_ = g_slice_new0 (Block11Data); + _data11_->_ref_count_ = 1; + _data11_->_data10_ = block10_data_ref (_data10_); + _tmp18_ = gtk_text_iter_get_line (it); + _data11_->line = _tmp18_; + _tmp19_ = _data11_->line; + if (_tmp19_ == 0) { + block11_data_unref (_data11_); + _data11_ = NULL; + block10_data_unref (_data10_); + _data10_ = NULL; + block9_data_unref (_data9_); + _data9_ = NULL; + return; + } + self->skip_change = TRUE; + _tmp20_ = *it; + gtk_text_iter_assign (&iter, &_tmp20_); + _tmp21_ = *it; + gtk_text_iter_assign (&iter2, &_tmp21_); + _tmp22_ = gtk_text_iter_get_offset (&iter); + _data11_->offset = _tmp22_ + 1; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 1, _____lambda7__gsource_func, block11_data_ref (_data11_), block11_data_unref); + block11_data_unref (_data11_); + _data11_ = NULL; + block10_data_unref (_data10_); + _data10_ = NULL; + block9_data_unref (_data9_); + _data9_ = NULL; + return; + } + _tmp23_ = *it; + gtk_text_iter_assign (&iter, &_tmp23_); + _tmp24_ = *it; + gtk_text_iter_assign (&iter2, &_tmp24_); + _tmp25_ = iter; + _tmp26_ = iter2; + _tmp27_ = input_view_check_pre_it_before_digits (self, "line", &_tmp25_, &_tmp26_); + _data10_->res = _tmp27_; + _tmp28_ = gtk_text_iter_get_line (it); + _data10_->line = _tmp28_; + _tmp30_ = _data10_->res; + if (_tmp30_ > 0) { + gint _tmp31_ = 0; + gint _tmp32_ = 0; + _tmp31_ = _data10_->res; + _tmp32_ = _data10_->line; + _tmp29_ = _tmp31_ <= _tmp32_; + } else { + _tmp29_ = FALSE; + } + if (_tmp29_) { + Block12Data* _data12_; + GtkTextIter _tmp33_ = {0}; + GtkTextIter _tmp34_ = {0}; + gint _tmp35_ = 0; + _data12_ = g_slice_new0 (Block12Data); + _data12_->_ref_count_ = 1; + _data12_->_data10_ = block10_data_ref (_data10_); + self->skip_change = TRUE; + _tmp33_ = *it; + gtk_text_iter_assign (&iter, &_tmp33_); + _tmp34_ = *it; + gtk_text_iter_assign (&iter2, &_tmp34_); + _tmp35_ = gtk_text_iter_get_offset (&iter); + _data12_->offset = _tmp35_ + 1; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 1, _____lambda8__gsource_func, block12_data_ref (_data12_), block12_data_unref); + block12_data_unref (_data12_); + _data12_ = NULL; + block10_data_unref (_data10_); + _data10_ = NULL; + block9_data_unref (_data9_); + _data9_ = NULL; + return; + } + block10_data_unref (_data10_); + _data10_ = NULL; + } + _tmp36_ = self->operators; + _tmp37_ = _data9_->s; + _tmp38_ = gee_abstract_collection_contains ((GeeAbstractCollection*) _tmp36_, _tmp37_); + if (_tmp38_) { + GtkSourceView* _tmp39_ = NULL; + GtkTextBuffer* _tmp40_ = NULL; + GtkTextBuffer* _tmp41_ = NULL; + gint _tmp42_ = 0; + GtkTextIter _tmp43_ = {0}; + GtkSourceView* _tmp44_ = NULL; + GtkTextBuffer* _tmp45_ = NULL; + GtkTextBuffer* _tmp46_ = NULL; + GtkTextIter _tmp47_ = {0}; + GtkTextIter _tmp48_ = {0}; + gchar* _tmp49_ = NULL; + gchar* _tmp50_ = NULL; + gboolean _tmp51_ = FALSE; + gboolean _tmp52_ = FALSE; + GtkTextIter _tmp53_ = {0}; + gchar* pre_last_char = NULL; + GtkSourceView* _tmp54_ = NULL; + GtkTextBuffer* _tmp55_ = NULL; + GtkTextBuffer* _tmp56_ = NULL; + GtkTextIter _tmp57_ = {0}; + GtkTextIter _tmp58_ = {0}; + gchar* _tmp59_ = NULL; + const gchar* _tmp60_ = NULL; + _tmp39_ = self->source_view; + _tmp40_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp39_); + _tmp41_ = _tmp40_; + _tmp42_ = gtk_text_iter_get_line (it); + gtk_text_buffer_get_iter_at_line_index (_tmp41_, &_tmp43_, _tmp42_, 0); + iter2 = _tmp43_; + _tmp44_ = self->source_view; + _tmp45_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp44_); + _tmp46_ = _tmp45_; + _tmp47_ = iter2; + _tmp48_ = *it; + _tmp49_ = gtk_text_buffer_get_slice (_tmp46_, &_tmp47_, &_tmp48_, TRUE); + _tmp50_ = _tmp49_; + _tmp51_ = string_contains (_tmp50_, "http:"); + _tmp52_ = _tmp51_; + _g_free0 (_tmp50_); + if (_tmp52_) { + block9_data_unref (_data9_); + _data9_ = NULL; + return; + } + _tmp53_ = *it; + gtk_text_iter_assign (&iter, &_tmp53_); + gtk_text_iter_backward_cursor_position (&iter); + _tmp54_ = self->source_view; + _tmp55_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp54_); + _tmp56_ = _tmp55_; + _tmp57_ = iter; + _tmp58_ = *it; + _tmp59_ = gtk_text_buffer_get_slice (_tmp56_, &_tmp57_, &_tmp58_, TRUE); + pre_last_char = _tmp59_; + _tmp60_ = pre_last_char; + if (!(g_strcmp0 (_tmp60_, " ") == 0)) { + GtkSourceView* _tmp61_ = NULL; + GtkTextBuffer* _tmp62_ = NULL; + GtkTextBuffer* _tmp63_ = NULL; + self->skip_change = TRUE; + _tmp61_ = self->source_view; + _tmp62_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp61_); + _tmp63_ = _tmp62_; + gtk_text_buffer_insert (_tmp63_, it, " ", -1); + self->skip_change = FALSE; + } + self->priv->add_space = TRUE; + _g_free0 (pre_last_char); + } + block9_data_unref (_data9_); + _data9_ = NULL; +} + + +static void _vala_array_add2 (gint** array, int* length, int* size, gint value) { + if ((*length) == (*size)) { + *size = (*size) ? (2 * (*size)) : 4; + *array = g_renew (gint, *array, *size); + } + (*array)[(*length)++] = value; +} + + +static void _vala_array_add3 (gint** array, int* length, int* size, gint value) { + if ((*length) == (*size)) { + *size = (*size) ? (2 * (*size)) : 4; + *array = g_renew (gint, *array, *size); + } + (*array)[(*length)++] = value; +} + + +void input_view_process_new_content (InputView* self) { + gint cursor_pos = 0; + GtkTextIter start_iter = {0}; + GtkTextIter end_iter = {0}; + GtkTextIter cursor = {0}; + GtkSourceView* _tmp0_ = NULL; + GtkTextBuffer* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + GtkTextIter _tmp8_ = {0}; + gint _tmp9_ = 0; + GtkSourceView* _tmp10_ = NULL; + GtkTextBuffer* _tmp11_ = NULL; + GtkTextBuffer* _tmp12_ = NULL; + GtkTextIter _tmp13_ = {0}; + GtkTextIter _tmp14_ = {0}; + gint* index_array = NULL; + gint* _tmp15_ = NULL; + gint index_array_length1 = 0; + gint _index_array_size_ = 0; + gint* line_array = NULL; + gint* _tmp16_ = NULL; + gint line_array_length1 = 0; + gint _line_array_size_ = 0; + gint delta = 0; + gint index = 0; + GtkSourceView* _tmp70_ = NULL; + GtkTextBuffer* _tmp71_ = NULL; + GtkTextBuffer* _tmp72_ = NULL; + gint _tmp73_ = 0; + GtkTextIter _tmp74_ = {0}; + GtkSourceView* _tmp75_ = NULL; + GtkTextBuffer* _tmp76_ = NULL; + GtkTextBuffer* _tmp77_ = NULL; + GtkTextIter _tmp78_ = {0}; + gchar* _tmp79_ = NULL; + gchar* _tmp80_ = NULL; + g_return_if_fail (self != NULL); + self->skip_change = TRUE; + _tmp0_ = self->source_view; + _tmp1_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = self->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + g_object_get (_tmp5_, "cursor-position", &_tmp6_, NULL); + _tmp7_ = _tmp6_; + gtk_text_buffer_get_iter_at_offset (_tmp2_, &_tmp8_, _tmp7_); + cursor = _tmp8_; + _tmp9_ = gtk_text_iter_get_offset (&cursor); + cursor_pos = _tmp9_; + _tmp10_ = self->source_view; + _tmp11_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp10_); + _tmp12_ = _tmp11_; + gtk_text_buffer_get_iter_at_offset (_tmp12_, &_tmp13_, 0); + start_iter = _tmp13_; + _tmp14_ = start_iter; + end_iter = _tmp14_; + _tmp15_ = g_new0 (gint, 0); + index_array = _tmp15_; + index_array_length1 = 0; + _index_array_size_ = index_array_length1; + _tmp16_ = g_new0 (gint, 0); + line_array = _tmp16_; + line_array_length1 = 0; + _line_array_size_ = line_array_length1; + delta = 0; + while (TRUE) { + GtkSourceSearchContext* _tmp17_ = NULL; + GtkTextIter _tmp18_ = {0}; + GtkTextIter _tmp19_ = {0}; + GtkTextIter _tmp20_ = {0}; + gboolean _tmp21_ = FALSE; + GMatchInfo* info = NULL; + gchar* text = NULL; + GtkSourceView* _tmp22_ = NULL; + GtkTextBuffer* _tmp23_ = NULL; + GtkTextBuffer* _tmp24_ = NULL; + GtkTextIter _tmp25_ = {0}; + GtkTextIter _tmp26_ = {0}; + gchar* _tmp27_ = NULL; + GRegex* _tmp28_ = NULL; + const gchar* _tmp29_ = NULL; + GMatchInfo* _tmp30_ = NULL; + gint line = 0; + GMatchInfo* _tmp31_ = NULL; + gchar* _tmp32_ = NULL; + gchar* _tmp33_ = NULL; + gint _tmp34_ = 0; + gint _tmp35_ = 0; + gint _tmp36_ = 0; + GtkSourceView* _tmp37_ = NULL; + GtkTextBuffer* _tmp38_ = NULL; + GtkTextBuffer* _tmp39_ = NULL; + gint* _tmp40_ = NULL; + gint _tmp40__length1 = 0; + gint _tmp41_ = 0; + gint _tmp42_ = 0; + gint* _tmp43_ = NULL; + gint _tmp43__length1 = 0; + gint _tmp44_ = 0; + gint _tmp45_ = 0; + _tmp17_ = self->priv->search; + _tmp18_ = start_iter; + _tmp21_ = gtk_source_search_context_forward (_tmp17_, &_tmp18_, &_tmp19_, &_tmp20_); + start_iter = _tmp19_; + end_iter = _tmp20_; + if (!_tmp21_) { + break; + } + _tmp22_ = self->source_view; + _tmp23_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp22_); + _tmp24_ = _tmp23_; + _tmp25_ = start_iter; + _tmp26_ = end_iter; + _tmp27_ = gtk_text_buffer_get_text (_tmp24_, &_tmp25_, &_tmp26_, FALSE); + text = _tmp27_; + _tmp28_ = self->priv->digit_regex; + _tmp29_ = text; + g_regex_match (_tmp28_, _tmp29_, 0, &_tmp30_); + _g_match_info_unref0 (info); + info = _tmp30_; + _tmp31_ = info; + _tmp32_ = g_match_info_fetch (_tmp31_, 0); + _tmp33_ = _tmp32_; + _tmp34_ = atoi (_tmp33_); + _tmp35_ = _tmp34_; + _g_free0 (_tmp33_); + line = _tmp35_; + _tmp36_ = line; + if (_tmp36_ == 0) { + _g_free0 (text); + _g_match_info_unref0 (info); + continue; + } + _tmp37_ = self->source_view; + _tmp38_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp37_); + _tmp39_ = _tmp38_; + gtk_text_buffer_delete (_tmp39_, &start_iter, &end_iter); + _tmp40_ = index_array; + _tmp40__length1 = index_array_length1; + _tmp41_ = gtk_text_iter_get_offset (&start_iter); + _tmp42_ = delta; + _vala_array_add2 (&index_array, &index_array_length1, &_index_array_size_, _tmp41_ - _tmp42_); + _tmp43_ = line_array; + _tmp43__length1 = line_array_length1; + _tmp44_ = line; + _vala_array_add3 (&line_array, &line_array_length1, &_line_array_size_, _tmp44_ - 1); + _tmp45_ = gtk_text_iter_get_offset (&start_iter); + delta = _tmp45_; + _g_free0 (text); + _g_match_info_unref0 (info); + } + index = 0; + { + gint i = 0; + i = 0; + { + gboolean _tmp46_ = FALSE; + _tmp46_ = TRUE; + while (TRUE) { + gint _tmp48_ = 0; + gint* _tmp49_ = NULL; + gint _tmp49__length1 = 0; + GtkSourceView* _tmp50_ = NULL; + GtkTextBuffer* _tmp51_ = NULL; + GtkTextBuffer* _tmp52_ = NULL; + gint _tmp53_ = 0; + GtkTextIter _tmp54_ = {0}; + gint* _tmp55_ = NULL; + gint _tmp55__length1 = 0; + gint _tmp56_ = 0; + gint _tmp57_ = 0; + GtkSourceView* _tmp58_ = NULL; + GtkTextBuffer* _tmp59_ = NULL; + GtkTextBuffer* _tmp60_ = NULL; + GtkTextIter _tmp61_ = {0}; + gint* _tmp62_ = NULL; + gint _tmp62__length1 = 0; + gint _tmp63_ = 0; + gint _tmp64_ = 0; + GtkSourceView* _tmp65_ = NULL; + GtkTextBuffer* _tmp66_ = NULL; + GtkTextBuffer* _tmp67_ = NULL; + gint _tmp68_ = 0; + gint _tmp69_ = 0; + if (!_tmp46_) { + gint _tmp47_ = 0; + _tmp47_ = i; + i = _tmp47_ + 1; + } + _tmp46_ = FALSE; + _tmp48_ = i; + _tmp49_ = index_array; + _tmp49__length1 = index_array_length1; + if (!(_tmp48_ < _tmp49__length1)) { + break; + } + _tmp50_ = self->source_view; + _tmp51_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp50_); + _tmp52_ = _tmp51_; + _tmp53_ = index; + gtk_text_buffer_get_iter_at_offset (_tmp52_, &_tmp54_, _tmp53_); + cursor = _tmp54_; + _tmp55_ = index_array; + _tmp55__length1 = index_array_length1; + _tmp56_ = i; + _tmp57_ = _tmp55_[_tmp56_]; + gtk_text_iter_forward_chars (&cursor, _tmp57_); + _tmp58_ = self->source_view; + _tmp59_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp58_); + _tmp60_ = _tmp59_; + _tmp61_ = cursor; + gtk_text_buffer_place_cursor (_tmp60_, &_tmp61_); + _tmp62_ = line_array; + _tmp62__length1 = line_array_length1; + _tmp63_ = i; + _tmp64_ = _tmp62_[_tmp63_]; + g_signal_emit_by_name (self, "insert-result", _tmp64_); + _tmp65_ = self->source_view; + _tmp66_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp65_); + _tmp67_ = _tmp66_; + g_object_get (_tmp67_, "cursor-position", &_tmp68_, NULL); + _tmp69_ = _tmp68_; + index = _tmp69_; + } + } + } + self->skip_change = FALSE; + _tmp70_ = self->source_view; + _tmp71_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp70_); + _tmp72_ = _tmp71_; + _tmp73_ = cursor_pos; + gtk_text_buffer_get_iter_at_offset (_tmp72_, &_tmp74_, _tmp73_); + cursor = _tmp74_; + _tmp75_ = self->source_view; + _tmp76_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp75_); + _tmp77_ = _tmp76_; + _tmp78_ = cursor; + gtk_text_buffer_place_cursor (_tmp77_, &_tmp78_); + _tmp79_ = input_view_get_text_line_to_end (self, 0); + _tmp80_ = _tmp79_; + g_signal_emit_by_name (self, "changed-line", 0, -1, _tmp80_); + _g_free0 (_tmp80_); + line_array = (g_free (line_array), NULL); + index_array = (g_free (index_array), NULL); +} + + +static glong string_strnlen (gchar* str, glong maxlen) { + glong result = 0L; + gchar* end = NULL; + gchar* _tmp0_ = NULL; + glong _tmp1_ = 0L; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + _tmp0_ = str; + _tmp1_ = maxlen; + _tmp2_ = memchr (_tmp0_, 0, (gsize) _tmp1_); + end = _tmp2_; + _tmp3_ = end; + if (_tmp3_ == NULL) { + glong _tmp4_ = 0L; + _tmp4_ = maxlen; + result = _tmp4_; + return result; + } else { + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + _tmp5_ = end; + _tmp6_ = str; + result = (glong) (_tmp5_ - _tmp6_); + return result; + } +} + + +static gchar* string_substring (const gchar* self, glong offset, glong len) { + gchar* result = NULL; + glong string_length = 0L; + gboolean _tmp0_ = FALSE; + glong _tmp1_ = 0L; + glong _tmp8_ = 0L; + glong _tmp14_ = 0L; + glong _tmp17_ = 0L; + glong _tmp18_ = 0L; + glong _tmp19_ = 0L; + glong _tmp20_ = 0L; + glong _tmp21_ = 0L; + gchar* _tmp22_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp1_ = offset; + if (_tmp1_ >= ((glong) 0)) { + glong _tmp2_ = 0L; + _tmp2_ = len; + _tmp0_ = _tmp2_ >= ((glong) 0); + } else { + _tmp0_ = FALSE; + } + if (_tmp0_) { + glong _tmp3_ = 0L; + glong _tmp4_ = 0L; + glong _tmp5_ = 0L; + _tmp3_ = offset; + _tmp4_ = len; + _tmp5_ = string_strnlen ((gchar*) self, _tmp3_ + _tmp4_); + string_length = _tmp5_; + } else { + gint _tmp6_ = 0; + gint _tmp7_ = 0; + _tmp6_ = strlen (self); + _tmp7_ = _tmp6_; + string_length = (glong) _tmp7_; + } + _tmp8_ = offset; + if (_tmp8_ < ((glong) 0)) { + glong _tmp9_ = 0L; + glong _tmp10_ = 0L; + glong _tmp11_ = 0L; + _tmp9_ = string_length; + _tmp10_ = offset; + offset = _tmp9_ + _tmp10_; + _tmp11_ = offset; + g_return_val_if_fail (_tmp11_ >= ((glong) 0), NULL); + } else { + glong _tmp12_ = 0L; + glong _tmp13_ = 0L; + _tmp12_ = offset; + _tmp13_ = string_length; + g_return_val_if_fail (_tmp12_ <= _tmp13_, NULL); + } + _tmp14_ = len; + if (_tmp14_ < ((glong) 0)) { + glong _tmp15_ = 0L; + glong _tmp16_ = 0L; + _tmp15_ = string_length; + _tmp16_ = offset; + len = _tmp15_ - _tmp16_; + } + _tmp17_ = offset; + _tmp18_ = len; + _tmp19_ = string_length; + g_return_val_if_fail ((_tmp17_ + _tmp18_) <= _tmp19_, NULL); + _tmp20_ = offset; + _tmp21_ = len; + _tmp22_ = g_strndup (((gchar*) self) + _tmp20_, (gsize) _tmp21_); + result = _tmp22_; + return result; +} + + +static gint input_view_check_pre_it_before_digits (InputView* self, const gchar* s, GtkTextIter* iter, GtkTextIter* iter2) { + gint result = 0; + gchar* digit = NULL; + gchar* _tmp0_ = NULL; + gint _tmp1_ = 0; + gchar* iter_char = NULL; + GtkSourceView* _tmp2_ = NULL; + GtkTextBuffer* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextIter _tmp5_ = {0}; + GtkTextIter _tmp6_ = {0}; + gchar* _tmp7_ = NULL; + const gchar* _tmp21_ = NULL; + const gchar* _tmp22_ = NULL; + const gchar* _tmp23_ = NULL; + gint _tmp24_ = 0; + gint _tmp25_ = 0; + gchar* _tmp26_ = NULL; + gchar* _tmp27_ = NULL; + gboolean _tmp28_ = FALSE; + const gchar* _tmp29_ = NULL; + const gchar* _tmp30_ = NULL; + gint _tmp31_ = 0; + gint _tmp32_ = 0; + gchar* _tmp33_ = NULL; + gchar* _tmp34_ = NULL; + GtkTextIter _tmp35_ = {0}; + GtkTextIter _tmp36_ = {0}; + gboolean _tmp37_ = FALSE; + gboolean _tmp38_ = FALSE; + g_return_val_if_fail (self != NULL, 0); + g_return_val_if_fail (s != NULL, 0); + g_return_val_if_fail (iter != NULL, 0); + g_return_val_if_fail (iter2 != NULL, 0); + _tmp0_ = g_strdup (""); + digit = _tmp0_; + gtk_text_iter_backward_cursor_position (iter); + _tmp1_ = gtk_text_iter_get_line_offset (iter); + if (_tmp1_ == 0) { + result = -1; + _g_free0 (digit); + return result; + } + _tmp2_ = self->source_view; + _tmp3_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = *iter; + _tmp6_ = *iter2; + _tmp7_ = gtk_text_buffer_get_slice (_tmp4_, &_tmp5_, &_tmp6_, TRUE); + iter_char = _tmp7_; + while (TRUE) { + GRegex* _tmp8_ = NULL; + const gchar* _tmp9_ = NULL; + gboolean _tmp10_ = FALSE; + const gchar* _tmp11_ = NULL; + const gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + gint _tmp14_ = 0; + GtkSourceView* _tmp15_ = NULL; + GtkTextBuffer* _tmp16_ = NULL; + GtkTextBuffer* _tmp17_ = NULL; + GtkTextIter _tmp18_ = {0}; + GtkTextIter _tmp19_ = {0}; + gchar* _tmp20_ = NULL; + _tmp8_ = self->priv->digit_regex; + _tmp9_ = iter_char; + _tmp10_ = g_regex_match (_tmp8_, _tmp9_, 0, NULL); + if (!_tmp10_) { + break; + } + _tmp11_ = digit; + _tmp12_ = iter_char; + _tmp13_ = g_strconcat (_tmp11_, _tmp12_, NULL); + _g_free0 (digit); + digit = _tmp13_; + gtk_text_iter_backward_cursor_position (iter); + _tmp14_ = gtk_text_iter_get_line_offset (iter); + if (_tmp14_ == 0) { + result = -1; + _g_free0 (iter_char); + _g_free0 (digit); + return result; + } + gtk_text_iter_backward_cursor_position (iter2); + _tmp15_ = self->source_view; + _tmp16_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = *iter; + _tmp19_ = *iter2; + _tmp20_ = gtk_text_buffer_get_slice (_tmp17_, &_tmp18_, &_tmp19_, TRUE); + _g_free0 (iter_char); + iter_char = _tmp20_; + } + _tmp21_ = iter_char; + _tmp22_ = s; + _tmp23_ = s; + _tmp24_ = strlen (_tmp23_); + _tmp25_ = _tmp24_; + _tmp26_ = string_substring (_tmp22_, (glong) (_tmp25_ - 1), (glong) 1); + _tmp27_ = _tmp26_; + _tmp28_ = g_strcmp0 (_tmp21_, _tmp27_) != 0; + _g_free0 (_tmp27_); + if (_tmp28_) { + result = -1; + _g_free0 (iter_char); + _g_free0 (digit); + return result; + } + gtk_text_iter_backward_cursor_position (iter2); + _tmp29_ = s; + _tmp30_ = s; + _tmp31_ = strlen (_tmp30_); + _tmp32_ = _tmp31_; + _tmp33_ = string_substring (_tmp29_, (glong) 0, (glong) (_tmp32_ - 1)); + _tmp34_ = _tmp33_; + _tmp35_ = *iter; + _tmp36_ = *iter2; + _tmp37_ = input_view_check_pre_it (self, _tmp34_, &_tmp35_, &_tmp36_); + _tmp38_ = _tmp37_; + _g_free0 (_tmp34_); + if (_tmp38_) { + const gchar* _tmp39_ = NULL; + gchar* _tmp40_ = NULL; + gchar* _tmp41_ = NULL; + gint _tmp42_ = 0; + gint _tmp43_ = 0; + _tmp39_ = digit; + _tmp40_ = g_utf8_strreverse (_tmp39_, (gssize) -1); + _tmp41_ = _tmp40_; + _tmp42_ = atoi (_tmp41_); + _tmp43_ = _tmp42_; + _g_free0 (_tmp41_); + result = _tmp43_; + _g_free0 (iter_char); + _g_free0 (digit); + return result; + } + result = -1; + _g_free0 (iter_char); + _g_free0 (digit); + return result; +} + + +static gboolean input_view_check_pre_it (InputView* self, const gchar* s, GtkTextIter* iter, GtkTextIter* iter2) { + gboolean result = FALSE; + gint _tmp0_ = 0; + gchar* iter_char = NULL; + GtkSourceView* _tmp18_ = NULL; + GtkTextBuffer* _tmp19_ = NULL; + GtkTextBuffer* _tmp20_ = NULL; + GtkTextIter _tmp21_ = {0}; + GtkTextIter _tmp22_ = {0}; + gchar* _tmp23_ = NULL; + GRegex* _tmp24_ = NULL; + const gchar* _tmp25_ = NULL; + gboolean _tmp26_ = FALSE; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (s != NULL, FALSE); + g_return_val_if_fail (iter != NULL, FALSE); + g_return_val_if_fail (iter2 != NULL, FALSE); + gtk_text_iter_backward_cursor_position (iter); + _tmp0_ = gtk_text_iter_get_line_offset (iter); + if (_tmp0_ == 0) { + result = FALSE; + return result; + } + { + gint i = 0; + const gchar* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + _tmp1_ = s; + _tmp2_ = strlen (_tmp1_); + _tmp3_ = _tmp2_; + i = _tmp3_ - 1; + { + gboolean _tmp4_ = FALSE; + _tmp4_ = TRUE; + while (TRUE) { + gint _tmp6_ = 0; + gchar* s_char = NULL; + const gchar* _tmp7_ = NULL; + gint _tmp8_ = 0; + gchar* _tmp9_ = NULL; + gchar* iter_char = NULL; + GtkSourceView* _tmp10_ = NULL; + GtkTextBuffer* _tmp11_ = NULL; + GtkTextBuffer* _tmp12_ = NULL; + GtkTextIter _tmp13_ = {0}; + GtkTextIter _tmp14_ = {0}; + gchar* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + if (!_tmp4_) { + gint _tmp5_ = 0; + _tmp5_ = i; + i = _tmp5_ - 1; + } + _tmp4_ = FALSE; + _tmp6_ = i; + if (!(_tmp6_ >= 0)) { + break; + } + _tmp7_ = s; + _tmp8_ = i; + _tmp9_ = string_substring (_tmp7_, (glong) _tmp8_, (glong) 1); + s_char = _tmp9_; + _tmp10_ = self->source_view; + _tmp11_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp10_); + _tmp12_ = _tmp11_; + _tmp13_ = *iter; + _tmp14_ = *iter2; + _tmp15_ = gtk_text_buffer_get_slice (_tmp12_, &_tmp13_, &_tmp14_, TRUE); + iter_char = _tmp15_; + _tmp16_ = s_char; + _tmp17_ = iter_char; + if (g_strcmp0 (_tmp16_, _tmp17_) != 0) { + result = FALSE; + _g_free0 (iter_char); + _g_free0 (s_char); + return result; + } + gtk_text_iter_backward_cursor_position (iter); + gtk_text_iter_backward_cursor_position (iter2); + _g_free0 (iter_char); + _g_free0 (s_char); + } + } + } + _tmp18_ = self->source_view; + _tmp19_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp18_); + _tmp20_ = _tmp19_; + _tmp21_ = *iter; + _tmp22_ = *iter2; + _tmp23_ = gtk_text_buffer_get_slice (_tmp20_, &_tmp21_, &_tmp22_, TRUE); + iter_char = _tmp23_; + _tmp24_ = self->priv->non_digit_regex; + _tmp25_ = iter_char; + _tmp26_ = g_regex_match (_tmp24_, _tmp25_, 0, NULL); + if (_tmp26_) { + result = FALSE; + _g_free0 (iter_char); + return result; + } + result = TRUE; + _g_free0 (iter_char); + return result; +} + + +static gboolean input_view_real_draw (GtkWidget* base, cairo_t* context) { + InputView * self; + gboolean result = FALSE; + gboolean ret = FALSE; + cairo_t* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; + self = (InputView*) base; + g_return_val_if_fail (context != NULL, FALSE); + _tmp0_ = context; + _tmp1_ = GTK_WIDGET_CLASS (input_view_parent_class)->draw ((GtkWidget*) G_TYPE_CHECK_INSTANCE_CAST (self, gtk_box_get_type (), GtkBox), _tmp0_); + ret = _tmp1_; + { + GeeArrayList* _widget_list = NULL; + GeeArrayList* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + gint _widget_size = 0; + GeeArrayList* _tmp4_ = NULL; + gint _tmp5_ = 0; + gint _tmp6_ = 0; + gint _widget_index = 0; + _tmp2_ = self->priv->result_widgets; + _tmp3_ = _g_object_ref0 (_tmp2_); + _widget_list = _tmp3_; + _tmp4_ = _widget_list; + _tmp5_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp4_); + _tmp6_ = _tmp5_; + _widget_size = _tmp6_; + _widget_index = -1; + while (TRUE) { + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _tmp9_ = 0; + ResultBoxWidget* widget = NULL; + GeeArrayList* _tmp10_ = NULL; + gint _tmp11_ = 0; + gpointer _tmp12_ = NULL; + gint dest_x = 0; + gint dest_y = 0; + ResultBoxWidget* _tmp13_ = NULL; + gint _tmp14_ = 0; + gint _tmp15_ = 0; + ResultBoxWidget* _tmp16_ = NULL; + cairo_t* _tmp17_ = NULL; + gint _tmp18_ = 0; + gint _tmp19_ = 0; + _tmp7_ = _widget_index; + _widget_index = _tmp7_ + 1; + _tmp8_ = _widget_index; + _tmp9_ = _widget_size; + if (!(_tmp8_ < _tmp9_)) { + break; + } + _tmp10_ = _widget_list; + _tmp11_ = _widget_index; + _tmp12_ = gee_abstract_list_get ((GeeAbstractList*) _tmp10_, _tmp11_); + widget = (ResultBoxWidget*) _tmp12_; + _tmp13_ = widget; + gtk_widget_translate_coordinates ((GtkWidget*) _tmp13_, (GtkWidget*) self, 0, 0, &_tmp14_, &_tmp15_); + dest_x = _tmp14_; + dest_y = _tmp15_; + _tmp16_ = widget; + _tmp17_ = context; + _tmp18_ = dest_x; + _tmp19_ = dest_y; + result_box_widget_draw_content (_tmp16_, _tmp17_, _tmp18_, _tmp19_); + _g_object_unref0 (widget); + } + _g_object_unref0 (_widget_list); + } + result = ret; + return result; +} + + +void input_view_insert_text (InputView* self, const gchar* text) { + GtkSourceView* _tmp0_ = NULL; + GtkTextBuffer* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + gint _tmp5_ = 0; + gint _tmp6_ = 0; + g_return_if_fail (self != NULL); + g_return_if_fail (text != NULL); + _tmp0_ = self->source_view; + _tmp1_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = text; + _tmp4_ = text; + _tmp5_ = strlen (_tmp4_); + _tmp6_ = _tmp5_; + gtk_text_buffer_insert_at_cursor (_tmp2_, _tmp3_, _tmp6_); +} + + +void input_view_delete_characters (InputView* self, gint count) { + GtkTextIter iter = {0}; + GtkTextIter iter2 = {0}; + gint offset = 0; + GtkSourceView* _tmp0_ = NULL; + GtkTextBuffer* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + gint _tmp3_ = 0; + gint _tmp4_ = 0; + GtkSourceView* _tmp5_ = NULL; + GtkTextBuffer* _tmp6_ = NULL; + GtkTextBuffer* _tmp7_ = NULL; + GtkTextIter _tmp8_ = {0}; + GtkSourceView* _tmp9_ = NULL; + GtkTextBuffer* _tmp10_ = NULL; + GtkTextBuffer* _tmp11_ = NULL; + GtkTextIter _tmp12_ = {0}; + gint _tmp13_ = 0; + GtkSourceView* _tmp14_ = NULL; + GtkTextBuffer* _tmp15_ = NULL; + GtkTextBuffer* _tmp16_ = NULL; + g_return_if_fail (self != NULL); + memset (&iter, 0, sizeof (GtkTextIter)); + memset (&iter2, 0, sizeof (GtkTextIter)); + _tmp0_ = self->source_view; + _tmp1_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp0_); + _tmp2_ = _tmp1_; + g_object_get (_tmp2_, "cursor-position", &_tmp3_, NULL); + _tmp4_ = _tmp3_; + offset = _tmp4_; + _tmp5_ = self->source_view; + _tmp6_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp5_); + _tmp7_ = _tmp6_; + gtk_text_buffer_get_iter_at_offset (_tmp7_, &_tmp8_, offset); + iter = _tmp8_; + _tmp9_ = self->source_view; + _tmp10_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp9_); + _tmp11_ = _tmp10_; + gtk_text_buffer_get_iter_at_offset (_tmp11_, &_tmp12_, offset); + iter2 = _tmp12_; + _tmp13_ = count; + gtk_text_iter_backward_cursor_positions (&iter, _tmp13_); + _tmp14_ = self->source_view; + _tmp15_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp14_); + _tmp16_ = _tmp15_; + gtk_text_buffer_delete (_tmp16_, &iter, &iter2); +} + + +static Block13Data* block13_data_ref (Block13Data* _data13_) { + g_atomic_int_inc (&_data13_->_ref_count_); + return _data13_; +} + + +static void block13_data_unref (void * _userdata_) { + Block13Data* _data13_; + _data13_ = (Block13Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data13_->_ref_count_)) { + InputView* self; + self = _data13_->self; + _g_object_unref0 (_data13_->widget); + _g_object_unref0 (self); + g_slice_free (Block13Data, _data13_); + } +} + + +static void __lambda20_ (Block13Data* _data13_) { + InputView* self; + GeeArrayList* _tmp0_ = NULL; + ResultBoxWidget* _tmp1_ = NULL; + self = _data13_->self; + _tmp0_ = self->priv->result_widgets; + _tmp1_ = _data13_->widget; + gee_abstract_collection_remove ((GeeAbstractCollection*) _tmp0_, _tmp1_); +} + + +static void ___lambda20__gtk_widget_destroy (GtkWidget* _sender, gpointer self) { + __lambda20_ (self); +} + + +static void __lambda21_ (InputView* self) { + gtk_widget_queue_draw ((GtkWidget*) self); +} + + +static void ___lambda21__result_line_changed (ResultLine* _sender, gpointer self) { + __lambda21_ ((InputView*) self); +} + + +void input_view_insert_variable (InputView* self, ResultLine* res) { + Block13Data* _data13_; + gboolean _tmp0_ = FALSE; + GtkTextIter iter = {0}; + GtkSourceView* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + GtkTextBuffer* _tmp6_ = NULL; + GtkSourceView* _tmp7_ = NULL; + GtkTextBuffer* _tmp8_ = NULL; + GtkTextBuffer* _tmp9_ = NULL; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + GtkTextIter _tmp12_ = {0}; + gint actual_line = 0; + gint _tmp13_ = 0; + ResultLine* _tmp14_ = NULL; + gint _tmp15_ = 0; + gint _tmp16_ = 0; + gint _tmp17_ = 0; + GtkTextChildAnchor* anchor = NULL; + GtkSourceView* _tmp18_ = NULL; + GtkTextBuffer* _tmp19_ = NULL; + GtkTextBuffer* _tmp20_ = NULL; + GtkTextIter _tmp21_ = {0}; + GtkTextChildAnchor* _tmp22_ = NULL; + GtkTextChildAnchor* _tmp23_ = NULL; + gint _tmp24_ = 0; + ResultLine* _tmp25_ = NULL; + ResultBoxWidget* _tmp26_ = NULL; + GtkSourceView* _tmp27_ = NULL; + ResultBoxWidget* _tmp28_ = NULL; + GtkTextChildAnchor* _tmp29_ = NULL; + gboolean _tmp30_ = FALSE; + GeeArrayList* _tmp43_ = NULL; + ResultBoxWidget* _tmp44_ = NULL; + ResultBoxWidget* _tmp45_ = NULL; + ResultBoxWidget* _tmp46_ = NULL; + ResultLine* _tmp47_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (res != NULL); + _data13_ = g_slice_new0 (Block13Data); + _data13_->_ref_count_ = 1; + _data13_->self = g_object_ref (self); + _tmp0_ = self->priv->add_space; + if (_tmp0_) { + GtkSourceView* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + GtkTextBuffer* _tmp3_ = NULL; + self->skip_change = TRUE; + _tmp1_ = self->source_view; + _tmp2_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp1_); + _tmp3_ = _tmp2_; + gtk_text_buffer_insert_at_cursor (_tmp3_, " ", -1); + self->skip_change = FALSE; + } + _tmp4_ = self->source_view; + _tmp5_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp4_); + _tmp6_ = _tmp5_; + _tmp7_ = self->source_view; + _tmp8_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp7_); + _tmp9_ = _tmp8_; + g_object_get (_tmp9_, "cursor-position", &_tmp10_, NULL); + _tmp11_ = _tmp10_; + gtk_text_buffer_get_iter_at_offset (_tmp6_, &_tmp12_, _tmp11_); + iter = _tmp12_; + _tmp13_ = gtk_text_iter_get_line (&iter); + actual_line = _tmp13_; + _tmp14_ = res; + _tmp15_ = result_line_get_line (_tmp14_); + _tmp16_ = _tmp15_; + _tmp17_ = actual_line; + if (_tmp16_ >= _tmp17_) { + block13_data_unref (_data13_); + _data13_ = NULL; + return; + } + _tmp18_ = self->source_view; + _tmp19_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp18_); + _tmp20_ = _tmp19_; + _tmp21_ = iter; + _tmp22_ = gtk_text_buffer_create_child_anchor (_tmp20_, &_tmp21_); + _tmp23_ = _g_object_ref0 (_tmp22_); + anchor = _tmp23_; + _tmp24_ = actual_line; + _tmp25_ = res; + _tmp26_ = result_box_widget_new (_tmp24_, _tmp25_); + g_object_ref_sink (_tmp26_); + _data13_->widget = _tmp26_; + _tmp27_ = self->source_view; + _tmp28_ = _data13_->widget; + _tmp29_ = anchor; + gtk_text_view_add_child_at_anchor ((GtkTextView*) _tmp27_, (GtkWidget*) _tmp28_, _tmp29_); + _tmp30_ = self->skip_change; + if (!_tmp30_) { + GtkSourceView* _tmp31_ = NULL; + GtkTextBuffer* _tmp32_ = NULL; + GtkTextBuffer* _tmp33_ = NULL; + GtkSourceView* _tmp34_ = NULL; + GtkTextBuffer* _tmp35_ = NULL; + GtkTextBuffer* _tmp36_ = NULL; + gint _tmp37_ = 0; + gint _tmp38_ = 0; + GtkTextIter _tmp39_ = {0}; + GtkSourceView* _tmp40_ = NULL; + GtkTextBuffer* _tmp41_ = NULL; + GtkTextBuffer* _tmp42_ = NULL; + _tmp31_ = self->source_view; + _tmp32_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp31_); + _tmp33_ = _tmp32_; + _tmp34_ = self->source_view; + _tmp35_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp34_); + _tmp36_ = _tmp35_; + g_object_get (_tmp36_, "cursor-position", &_tmp37_, NULL); + _tmp38_ = _tmp37_; + gtk_text_buffer_get_iter_at_offset (_tmp33_, &_tmp39_, _tmp38_); + iter = _tmp39_; + _tmp40_ = self->source_view; + _tmp41_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp40_); + _tmp42_ = _tmp41_; + gtk_text_buffer_insert (_tmp42_, &iter, " ", 1); + } + _tmp43_ = self->priv->result_widgets; + _tmp44_ = _data13_->widget; + gee_abstract_collection_add ((GeeAbstractCollection*) _tmp43_, _tmp44_); + _tmp45_ = _data13_->widget; + g_signal_connect_data ((GtkWidget*) _tmp45_, "destroy", (GCallback) ___lambda20__gtk_widget_destroy, block13_data_ref (_data13_), (GClosureNotify) block13_data_unref, 0); + _tmp46_ = _data13_->widget; + _tmp47_ = _tmp46_->result; + g_signal_connect_object (_tmp47_, "changed", (GCallback) ___lambda21__result_line_changed, self, 0); + _g_object_unref0 (anchor); + block13_data_unref (_data13_); + _data13_ = NULL; +} + + +gint input_view_get_cursor_line (InputView* self) { + gint result = 0; + GtkTextIter iter = {0}; + GtkSourceView* _tmp0_ = NULL; + GtkTextBuffer* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + GtkTextIter _tmp8_ = {0}; + gint _tmp9_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->source_view; + _tmp1_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = self->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + g_object_get (_tmp5_, "cursor-position", &_tmp6_, NULL); + _tmp7_ = _tmp6_; + gtk_text_buffer_get_iter_at_offset (_tmp2_, &_tmp8_, _tmp7_); + iter = _tmp8_; + _tmp9_ = gtk_text_iter_get_line (&iter); + result = _tmp9_; + return result; +} + + +gchar* input_view_get_text_line_to_end (InputView* self, gint line) { + gchar* result = NULL; + GtkTextIter start = {0}; + GtkTextIter end = {0}; + GtkSourceBuffer* _tmp0_ = NULL; + gint _tmp1_ = 0; + GtkTextIter _tmp2_ = {0}; + GtkSourceBuffer* _tmp3_ = NULL; + GtkTextIter _tmp4_ = {0}; + gint _tmp5_ = 0; + gint _tmp6_ = 0; + gchar* text = NULL; + GtkSourceBuffer* _tmp8_ = NULL; + GtkTextIter _tmp9_ = {0}; + GtkTextIter _tmp10_ = {0}; + gchar* _tmp11_ = NULL; + gint _tmp12_ = 0; + const gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->buffer; + _tmp1_ = line; + gtk_text_buffer_get_iter_at_line ((GtkTextBuffer*) _tmp0_, &_tmp2_, _tmp1_); + start = _tmp2_; + _tmp3_ = self->buffer; + gtk_text_buffer_get_end_iter ((GtkTextBuffer*) _tmp3_, &_tmp4_); + end = _tmp4_; + _tmp5_ = gtk_text_iter_get_offset (&start); + _tmp6_ = gtk_text_iter_get_offset (&end); + if (_tmp5_ == _tmp6_) { + gchar* _tmp7_ = NULL; + _tmp7_ = g_strdup (""); + result = _tmp7_; + return result; + } + _tmp8_ = self->buffer; + _tmp9_ = start; + _tmp10_ = end; + _tmp11_ = gtk_text_buffer_get_slice ((GtkTextBuffer*) _tmp8_, &_tmp9_, &_tmp10_, FALSE); + text = _tmp11_; + _tmp12_ = line; + _tmp13_ = text; + _tmp14_ = input_view_replace_widget_markers (self, _tmp12_, _tmp13_, TRUE, FALSE); + _g_free0 (text); + text = _tmp14_; + result = text; + return result; +} + + +gchar* input_view_get_replaced_content (InputView* self) { + gchar* result = NULL; + GtkTextIter start = {0}; + GtkTextIter end = {0}; + GtkSourceBuffer* _tmp0_ = NULL; + GtkTextIter _tmp1_ = {0}; + GtkSourceBuffer* _tmp2_ = NULL; + GtkTextIter _tmp3_ = {0}; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + gchar* text = NULL; + GtkSourceBuffer* _tmp7_ = NULL; + GtkTextIter _tmp8_ = {0}; + GtkTextIter _tmp9_ = {0}; + gchar* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->buffer; + gtk_text_buffer_get_start_iter ((GtkTextBuffer*) _tmp0_, &_tmp1_); + start = _tmp1_; + _tmp2_ = self->buffer; + gtk_text_buffer_get_end_iter ((GtkTextBuffer*) _tmp2_, &_tmp3_); + end = _tmp3_; + _tmp4_ = gtk_text_iter_get_offset (&start); + _tmp5_ = gtk_text_iter_get_offset (&end); + if (_tmp4_ == _tmp5_) { + gchar* _tmp6_ = NULL; + _tmp6_ = g_strdup (""); + result = _tmp6_; + return result; + } + _tmp7_ = self->buffer; + _tmp8_ = start; + _tmp9_ = end; + _tmp10_ = gtk_text_buffer_get_slice ((GtkTextBuffer*) _tmp7_, &_tmp8_, &_tmp9_, FALSE); + text = _tmp10_; + _tmp11_ = text; + _tmp12_ = input_view_replace_widget_markers (self, 0, _tmp11_, FALSE, FALSE); + _g_free0 (text); + text = _tmp12_; + result = text; + return result; +} + + +gchar* input_view_get_replaced_marked_content (InputView* self) { + gchar* result = NULL; + GtkTextIter start = {0}; + GtkTextIter end = {0}; + GtkSourceBuffer* _tmp0_ = NULL; + GtkTextIter _tmp1_ = {0}; + GtkTextIter _tmp2_ = {0}; + gboolean _tmp3_ = FALSE; + gchar* text = NULL; + GtkSourceBuffer* _tmp4_ = NULL; + GtkTextIter _tmp5_ = {0}; + GtkTextIter _tmp6_ = {0}; + gchar* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->buffer; + _tmp3_ = gtk_text_buffer_get_selection_bounds ((GtkTextBuffer*) _tmp0_, &_tmp1_, &_tmp2_); + start = _tmp1_; + end = _tmp2_; + if (!_tmp3_) { + result = NULL; + return result; + } + _tmp4_ = self->buffer; + _tmp5_ = start; + _tmp6_ = end; + _tmp7_ = gtk_text_buffer_get_slice ((GtkTextBuffer*) _tmp4_, &_tmp5_, &_tmp6_, FALSE); + text = _tmp7_; + _tmp8_ = text; + _tmp9_ = input_view_replace_widget_markers (self, 0, _tmp8_, FALSE, FALSE); + _g_free0 (text); + text = _tmp9_; + result = text; + return result; +} + + +gchar* input_view_get_replaced_marked_real_content (InputView* self) { + gchar* result = NULL; + GtkTextIter start = {0}; + GtkTextIter end = {0}; + GtkSourceBuffer* _tmp0_ = NULL; + GtkTextIter _tmp1_ = {0}; + GtkTextIter _tmp2_ = {0}; + gboolean _tmp3_ = FALSE; + gchar* text = NULL; + GtkSourceBuffer* _tmp4_ = NULL; + GtkTextIter _tmp5_ = {0}; + GtkTextIter _tmp6_ = {0}; + gchar* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->buffer; + _tmp3_ = gtk_text_buffer_get_selection_bounds ((GtkTextBuffer*) _tmp0_, &_tmp1_, &_tmp2_); + start = _tmp1_; + end = _tmp2_; + if (!_tmp3_) { + result = NULL; + return result; + } + _tmp4_ = self->buffer; + _tmp5_ = start; + _tmp6_ = end; + _tmp7_ = gtk_text_buffer_get_slice ((GtkTextBuffer*) _tmp4_, &_tmp5_, &_tmp6_, FALSE); + text = _tmp7_; + _tmp8_ = text; + _tmp9_ = input_view_replace_widget_markers (self, 0, _tmp8_, FALSE, TRUE); + _g_free0 (text); + text = _tmp9_; + result = text; + return result; +} + + +static gboolean string_get_next_char (const gchar* self, gint* index, gunichar* c) { + gunichar _vala_c = 0U; + gboolean result = FALSE; + gint _tmp0_ = 0; + gunichar _tmp1_ = 0U; + gunichar _tmp2_ = 0U; + g_return_val_if_fail (self != NULL, FALSE); + _tmp0_ = *index; + _tmp1_ = g_utf8_get_char (((gchar*) self) + _tmp0_); + _vala_c = _tmp1_; + _tmp2_ = _vala_c; + if (_tmp2_ != ((gunichar) 0)) { + gint _tmp3_ = 0; + gchar* _tmp4_ = NULL; + _tmp3_ = *index; + _tmp4_ = g_utf8_next_char (((gchar*) self) + _tmp3_); + *index = (gint) (_tmp4_ - ((gchar*) self)); + result = TRUE; + if (c) { + *c = _vala_c; + } + return result; + } else { + result = FALSE; + if (c) { + *c = _vala_c; + } + return result; + } + if (c) { + *c = _vala_c; + } +} + + +static gchar* g_unichar_to_string (gunichar self) { + gchar* result = NULL; + gchar* str = NULL; + gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + _tmp0_ = g_new0 (gchar, 7); + str = (gchar*) _tmp0_; + _tmp1_ = str; + g_unichar_to_utf8 (self, _tmp1_); + result = str; + return result; +} + + +static void _vala_array_add4 (gint** array, int* length, int* size, gint value) { + if ((*length) == (*size)) { + *size = (*size) ? (2 * (*size)) : 4; + *array = g_renew (gint, *array, *size); + } + (*array)[(*length)++] = value; +} + + +static gchar* string_splice (const gchar* self, glong start, glong end, const gchar* str) { + gchar* result = NULL; + glong string_length = 0L; + gint _tmp0_ = 0; + gint _tmp1_ = 0; + glong _tmp2_ = 0L; + glong _tmp5_ = 0L; + gboolean _tmp8_ = FALSE; + glong _tmp9_ = 0L; + gboolean _tmp12_ = FALSE; + glong _tmp13_ = 0L; + glong _tmp16_ = 0L; + glong _tmp17_ = 0L; + gsize str_size = 0UL; + const gchar* _tmp18_ = NULL; + const gchar* _result_ = NULL; + gint _tmp22_ = 0; + gint _tmp23_ = 0; + glong _tmp24_ = 0L; + glong _tmp25_ = 0L; + gsize _tmp26_ = 0UL; + void* _tmp27_ = NULL; + gchar* dest = NULL; + const gchar* _tmp28_ = NULL; + gchar* _tmp29_ = NULL; + glong _tmp30_ = 0L; + gchar* _tmp31_ = NULL; + glong _tmp32_ = 0L; + gchar* _tmp33_ = NULL; + const gchar* _tmp34_ = NULL; + gsize _tmp35_ = 0UL; + gchar* _tmp36_ = NULL; + gsize _tmp37_ = 0UL; + gchar* _tmp38_ = NULL; + glong _tmp39_ = 0L; + glong _tmp40_ = 0L; + glong _tmp41_ = 0L; + const gchar* _tmp42_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = strlen (self); + _tmp1_ = _tmp0_; + string_length = (glong) _tmp1_; + _tmp2_ = start; + if (_tmp2_ < ((glong) 0)) { + glong _tmp3_ = 0L; + glong _tmp4_ = 0L; + _tmp3_ = string_length; + _tmp4_ = start; + start = _tmp3_ + _tmp4_; + } + _tmp5_ = end; + if (_tmp5_ < ((glong) 0)) { + glong _tmp6_ = 0L; + glong _tmp7_ = 0L; + _tmp6_ = string_length; + _tmp7_ = end; + end = _tmp6_ + _tmp7_; + } + _tmp9_ = start; + if (_tmp9_ >= ((glong) 0)) { + glong _tmp10_ = 0L; + glong _tmp11_ = 0L; + _tmp10_ = start; + _tmp11_ = string_length; + _tmp8_ = _tmp10_ <= _tmp11_; + } else { + _tmp8_ = FALSE; + } + g_return_val_if_fail (_tmp8_, NULL); + _tmp13_ = end; + if (_tmp13_ >= ((glong) 0)) { + glong _tmp14_ = 0L; + glong _tmp15_ = 0L; + _tmp14_ = end; + _tmp15_ = string_length; + _tmp12_ = _tmp14_ <= _tmp15_; + } else { + _tmp12_ = FALSE; + } + g_return_val_if_fail (_tmp12_, NULL); + _tmp16_ = start; + _tmp17_ = end; + g_return_val_if_fail (_tmp16_ <= _tmp17_, NULL); + _tmp18_ = str; + if (_tmp18_ == NULL) { + str_size = (gsize) 0; + } else { + const gchar* _tmp19_ = NULL; + gint _tmp20_ = 0; + gint _tmp21_ = 0; + _tmp19_ = str; + _tmp20_ = strlen ((const gchar*) _tmp19_); + _tmp21_ = _tmp20_; + str_size = (gsize) _tmp21_; + } + _tmp22_ = strlen (self); + _tmp23_ = _tmp22_; + _tmp24_ = end; + _tmp25_ = start; + _tmp26_ = str_size; + _tmp27_ = g_malloc0 (((_tmp23_ - (_tmp24_ - _tmp25_)) + _tmp26_) + 1); + _result_ = _tmp27_; + _tmp28_ = _result_; + dest = (gchar*) _tmp28_; + _tmp29_ = dest; + _tmp30_ = start; + memcpy (_tmp29_, self, (gsize) _tmp30_); + _tmp31_ = dest; + _tmp32_ = start; + dest = _tmp31_ + _tmp32_; + _tmp33_ = dest; + _tmp34_ = str; + _tmp35_ = str_size; + memcpy (_tmp33_, _tmp34_, _tmp35_); + _tmp36_ = dest; + _tmp37_ = str_size; + dest = _tmp36_ + _tmp37_; + _tmp38_ = dest; + _tmp39_ = end; + _tmp40_ = string_length; + _tmp41_ = end; + memcpy (_tmp38_, ((gchar*) self) + _tmp39_, (gsize) (_tmp40_ - _tmp41_)); + _tmp42_ = _result_; + _result_ = NULL; + result = (gchar*) _tmp42_; + return result; +} + + +static gint string_index_of_nth_char (const gchar* self, glong c) { + gint result = 0; + glong _tmp0_ = 0L; + gchar* _tmp1_ = NULL; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = c; + _tmp1_ = g_utf8_offset_to_pointer (self, _tmp0_); + result = (gint) (_tmp1_ - ((gchar*) self)); + return result; +} + + +static gchar* input_view_replace_widget_markers (InputView* self, gint line_number, const gchar* text, gboolean for_calculator, gboolean real_values) { + gchar* result = NULL; + gchar* return_text = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + GtkTextIter iter = {0}; + gint* replacement_indexes = NULL; + gint* _tmp3_ = NULL; + gint replacement_indexes_length1 = 0; + gint _replacement_indexes_size_ = 0; + gunichar c = 0U; + gint j = 0; + gint delta = 0; + gint* _tmp15_ = NULL; + gint _tmp15__length1 = 0; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (text != NULL, NULL); + _tmp0_ = text; + _tmp1_ = g_strdup (_tmp0_); + return_text = _tmp1_; + _tmp2_ = return_text; + if (g_strcmp0 (_tmp2_, "") == 0) { + result = return_text; + return result; + } + _tmp3_ = g_new0 (gint, 0); + replacement_indexes = _tmp3_; + replacement_indexes_length1 = 0; + _replacement_indexes_size_ = replacement_indexes_length1; + j = 0; + { + gint i = 0; + i = 0; + { + gboolean _tmp4_ = FALSE; + _tmp4_ = TRUE; + while (TRUE) { + const gchar* _tmp5_ = NULL; + gunichar _tmp6_ = 0U; + gboolean _tmp7_ = FALSE; + gunichar _tmp8_ = 0U; + gchar* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + gboolean _tmp11_ = FALSE; + gint _tmp14_ = 0; + if (!_tmp4_) { + } + _tmp4_ = FALSE; + _tmp5_ = return_text; + _tmp7_ = string_get_next_char (_tmp5_, &i, &_tmp6_); + c = _tmp6_; + if (!_tmp7_) { + break; + } + _tmp8_ = c; + _tmp9_ = g_unichar_to_string (_tmp8_); + _tmp10_ = _tmp9_; + _tmp11_ = g_strcmp0 ("", _tmp10_) == 0; + _g_free0 (_tmp10_); + if (_tmp11_) { + gint* _tmp12_ = NULL; + gint _tmp12__length1 = 0; + gint _tmp13_ = 0; + _tmp12_ = replacement_indexes; + _tmp12__length1 = replacement_indexes_length1; + _tmp13_ = j; + _vala_array_add4 (&replacement_indexes, &replacement_indexes_length1, &_replacement_indexes_size_, _tmp13_); + } + _tmp14_ = j; + j = _tmp14_ + 1; + } + } + } + delta = 0; + _tmp15_ = replacement_indexes; + _tmp15__length1 = replacement_indexes_length1; + { + gint* i_collection = NULL; + gint i_collection_length1 = 0; + gint _i_collection_size_ = 0; + gint i_it = 0; + i_collection = _tmp15_; + i_collection_length1 = _tmp15__length1; + for (i_it = 0; i_it < _tmp15__length1; i_it = i_it + 1) { + gint i = 0; + i = i_collection[i_it]; + { + gchar* replacement = NULL; + gchar* _tmp16_ = NULL; + GtkSourceBuffer* _tmp17_ = NULL; + gint _tmp18_ = 0; + GtkTextIter _tmp19_ = {0}; + GtkSourceBuffer* _tmp20_ = NULL; + gint _tmp21_ = 0; + gint _tmp22_ = 0; + GtkTextIter _tmp23_ = {0}; + GtkTextChildAnchor* anchor = NULL; + GtkTextChildAnchor* _tmp24_ = NULL; + GtkTextChildAnchor* _tmp25_ = NULL; + GtkTextChildAnchor* _tmp26_ = NULL; + const gchar* _tmp46_ = NULL; + const gchar* _tmp47_ = NULL; + gint _tmp48_ = 0; + gint _tmp49_ = 0; + gint _tmp50_ = 0; + const gchar* _tmp51_ = NULL; + gint _tmp52_ = 0; + gint _tmp53_ = 0; + gint _tmp54_ = 0; + const gchar* _tmp55_ = NULL; + gchar* _tmp56_ = NULL; + gint _tmp57_ = 0; + const gchar* _tmp58_ = NULL; + gint _tmp59_ = 0; + gint _tmp60_ = 0; + _tmp16_ = g_strdup (""); + replacement = _tmp16_; + _tmp17_ = self->buffer; + _tmp18_ = line_number; + gtk_text_buffer_get_iter_at_line_offset ((GtkTextBuffer*) _tmp17_, &_tmp19_, _tmp18_, 0); + iter = _tmp19_; + _tmp20_ = self->buffer; + _tmp21_ = gtk_text_iter_get_offset (&iter); + _tmp22_ = i; + gtk_text_buffer_get_iter_at_offset ((GtkTextBuffer*) _tmp20_, &_tmp23_, _tmp21_ + _tmp22_); + iter = _tmp23_; + _tmp24_ = gtk_text_iter_get_child_anchor (&iter); + _tmp25_ = _g_object_ref0 (_tmp24_); + anchor = _tmp25_; + _tmp26_ = anchor; + if (_tmp26_ != NULL) { + GtkTextChildAnchor* _tmp27_ = NULL; + GList* _tmp28_ = NULL; + _tmp27_ = anchor; + _tmp28_ = gtk_text_child_anchor_get_widgets (_tmp27_); + { + GList* w_collection = NULL; + GList* w_it = NULL; + w_collection = _tmp28_; + for (w_it = w_collection; w_it != NULL; w_it = w_it->next) { + GtkWidget* w = NULL; + w = (GtkWidget*) w_it->data; + { + ResultBoxWidget* ws = NULL; + GtkWidget* _tmp29_ = NULL; + ResultBoxWidget* _tmp30_ = NULL; + ResultBoxWidget* _tmp31_ = NULL; + _tmp29_ = w; + _tmp30_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp29_, TYPE_RESULT_BOX_WIDGET) ? ((ResultBoxWidget*) _tmp29_) : NULL); + ws = _tmp30_; + _tmp31_ = ws; + if (_tmp31_ != NULL) { + gboolean _tmp32_ = FALSE; + _tmp32_ = real_values; + if (_tmp32_) { + ResultBoxWidget* _tmp33_ = NULL; + ResultLine* _tmp34_ = NULL; + const gchar* _tmp35_ = NULL; + const gchar* _tmp36_ = NULL; + gchar* _tmp37_ = NULL; + _tmp33_ = ws; + _tmp34_ = _tmp33_->result; + _tmp35_ = result_line_get_full_value (_tmp34_); + _tmp36_ = _tmp35_; + _tmp37_ = g_strdup (_tmp36_); + _g_free0 (replacement); + replacement = _tmp37_; + } else { + gboolean _tmp38_ = FALSE; + _tmp38_ = for_calculator; + if (_tmp38_) { + ResultBoxWidget* _tmp39_ = NULL; + gchar* _tmp40_ = NULL; + _tmp39_ = ws; + _tmp40_ = result_box_widget_get_variable_name (_tmp39_); + _g_free0 (replacement); + replacement = _tmp40_; + } else { + ResultBoxWidget* _tmp41_ = NULL; + ResultLine* _tmp42_ = NULL; + gint _tmp43_ = 0; + gint _tmp44_ = 0; + gchar* _tmp45_ = NULL; + _tmp41_ = ws; + _tmp42_ = _tmp41_->result; + _tmp43_ = result_line_get_line (_tmp42_); + _tmp44_ = _tmp43_; + _tmp45_ = g_strdup_printf ("line%d", _tmp44_ + 1); + _g_free0 (replacement); + replacement = _tmp45_; + } + } + } + _g_object_unref0 (ws); + } + } + _g_list_free0 (w_collection); + } + } + _tmp46_ = return_text; + _tmp47_ = return_text; + _tmp48_ = i; + _tmp49_ = delta; + _tmp50_ = string_index_of_nth_char (_tmp47_, (glong) (_tmp48_ + _tmp49_)); + _tmp51_ = return_text; + _tmp52_ = i; + _tmp53_ = delta; + _tmp54_ = string_index_of_nth_char (_tmp51_, (glong) ((_tmp52_ + 1) + _tmp53_)); + _tmp55_ = replacement; + _tmp56_ = string_splice (_tmp46_, (glong) _tmp50_, (glong) _tmp54_, _tmp55_); + _g_free0 (return_text); + return_text = _tmp56_; + _tmp57_ = delta; + _tmp58_ = replacement; + _tmp59_ = strlen (_tmp58_); + _tmp60_ = _tmp59_; + delta = _tmp57_ + (_tmp60_ - 1); + _g_object_unref0 (anchor); + _g_free0 (replacement); + } + } + } + result = return_text; + replacement_indexes = (g_free (replacement_indexes), NULL); + return result; +} + + +static gboolean int64_try_parse (const gchar* str, gint64* _result_) { + gint64 _vala_result = 0LL; + gboolean result = FALSE; + gchar* endptr = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gint64 _tmp2_ = 0LL; + gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + g_return_val_if_fail (str != NULL, FALSE); + _tmp0_ = str; + _tmp2_ = g_ascii_strtoll (_tmp0_, &_tmp1_, (guint) 0); + endptr = _tmp1_; + _vala_result = _tmp2_; + _tmp3_ = endptr; + _tmp4_ = str; + _tmp5_ = str; + _tmp6_ = strlen (_tmp5_); + _tmp7_ = _tmp6_; + if (_tmp3_ == (((gchar*) _tmp4_) + _tmp7_)) { + result = TRUE; + if (_result_) { + *_result_ = _vala_result; + } + return result; + } else { + result = FALSE; + if (_result_) { + *_result_ = _vala_result; + } + return result; + } + if (_result_) { + *_result_ = _vala_result; + } +} + + +static gboolean __lambda16_ (InputView* self, GdkEventMotion* e) { + gboolean result = FALSE; + GtkTextIter iter = {0}; + GtkTextIter iter2 = {0}; + gint _tmp0_ = 0; + gint x = 0; + gint y = 0; + GtkSourceView* _tmp37_ = NULL; + GdkEventMotion* _tmp38_ = NULL; + gdouble _tmp39_ = 0.0; + GdkEventMotion* _tmp40_ = NULL; + gdouble _tmp41_ = 0.0; + gint _tmp42_ = 0; + gint _tmp43_ = 0; + GtkSourceView* _tmp44_ = NULL; + gint _tmp45_ = 0; + gint _tmp46_ = 0; + GtkTextIter _tmp47_ = {0}; + GtkSourceView* _tmp48_ = NULL; + GtkTextBuffer* _tmp49_ = NULL; + GtkTextBuffer* _tmp50_ = NULL; + GtkTextIter _tmp51_ = {0}; + gint _tmp52_ = 0; + gint _tmp53_ = 0; + GtkTextIter _tmp58_ = {0}; + gchar* word = NULL; + GtkSourceView* _tmp59_ = NULL; + GtkTextBuffer* _tmp60_ = NULL; + GtkTextBuffer* _tmp61_ = NULL; + GtkTextIter _tmp62_ = {0}; + GtkTextIter _tmp63_ = {0}; + gchar* _tmp64_ = NULL; + gint _tmp65_ = 0; + gboolean _tmp66_ = FALSE; + gboolean _tmp67_ = FALSE; + gboolean _tmp68_ = FALSE; + gunichar _tmp69_ = 0U; + gint64 val = 0LL; + gboolean success = FALSE; + const gchar* _tmp77_ = NULL; + gint64 _tmp78_ = 0LL; + gboolean _tmp79_ = FALSE; + gboolean _tmp80_ = FALSE; + g_return_val_if_fail (e != NULL, FALSE); + memset (&iter, 0, sizeof (GtkTextIter)); + memset (&iter2, 0, sizeof (GtkTextIter)); + _tmp0_ = self->priv->scrubb_press_x; + if (_tmp0_ > 0) { + gint delta = 0; + gint _tmp1_ = 0; + GdkEventMotion* _tmp2_ = NULL; + gdouble _tmp3_ = 0.0; + gchar* new_value = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + gchar* _tmp6_ = NULL; + GtkSourceView* _tmp7_ = NULL; + GtkTextBuffer* _tmp8_ = NULL; + GtkTextBuffer* _tmp9_ = NULL; + gint _tmp10_ = 0; + GtkTextIter _tmp11_ = {0}; + GtkSourceView* _tmp12_ = NULL; + GtkTextBuffer* _tmp13_ = NULL; + GtkTextBuffer* _tmp14_ = NULL; + gint _tmp15_ = 0; + gint _tmp16_ = 0; + GtkTextIter _tmp17_ = {0}; + const gchar* _tmp18_ = NULL; + gint _tmp19_ = 0; + gint _tmp20_ = 0; + GtkSourceView* _tmp21_ = NULL; + GtkTextBuffer* _tmp22_ = NULL; + GtkTextBuffer* _tmp23_ = NULL; + GtkSourceView* _tmp24_ = NULL; + GtkTextBuffer* _tmp25_ = NULL; + GtkTextBuffer* _tmp26_ = NULL; + gint _tmp27_ = 0; + GtkTextIter _tmp28_ = {0}; + GtkSourceView* _tmp29_ = NULL; + GtkTextBuffer* _tmp30_ = NULL; + GtkTextBuffer* _tmp31_ = NULL; + const gchar* _tmp32_ = NULL; + const gchar* _tmp33_ = NULL; + gint _tmp34_ = 0; + gint _tmp35_ = 0; + GtkTextTag* _tmp36_ = NULL; + _tmp1_ = self->priv->scrubb_press_x; + _tmp2_ = e; + _tmp3_ = _tmp2_->x; + delta = (-_tmp1_) + ((gint) _tmp3_); + _tmp4_ = self->priv->org_value; + _tmp5_ = delta; + _tmp6_ = g_strdup_printf ("%d", _tmp4_ + _tmp5_); + new_value = _tmp6_; + _tmp7_ = self->source_view; + _tmp8_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp7_); + _tmp9_ = _tmp8_; + _tmp10_ = self->priv->start_scrub; + gtk_text_buffer_get_iter_at_offset (_tmp9_, &_tmp11_, _tmp10_); + iter = _tmp11_; + _tmp12_ = self->source_view; + _tmp13_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp12_); + _tmp14_ = _tmp13_; + _tmp15_ = self->priv->start_scrub; + _tmp16_ = self->priv->scrub_width; + gtk_text_buffer_get_iter_at_offset (_tmp14_, &_tmp17_, _tmp15_ + _tmp16_); + iter2 = _tmp17_; + _tmp18_ = new_value; + _tmp19_ = strlen (_tmp18_); + _tmp20_ = _tmp19_; + self->priv->scrub_width = _tmp20_; + self->skip_change = TRUE; + _tmp21_ = self->source_view; + _tmp22_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp21_); + _tmp23_ = _tmp22_; + gtk_text_buffer_delete (_tmp23_, &iter, &iter2); + self->skip_change = FALSE; + _tmp24_ = self->source_view; + _tmp25_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp24_); + _tmp26_ = _tmp25_; + _tmp27_ = self->priv->start_scrub; + gtk_text_buffer_get_iter_at_offset (_tmp26_, &_tmp28_, _tmp27_); + iter = _tmp28_; + _tmp29_ = self->source_view; + _tmp30_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp29_); + _tmp31_ = _tmp30_; + _tmp32_ = new_value; + _tmp33_ = new_value; + _tmp34_ = strlen (_tmp33_); + _tmp35_ = _tmp34_; + _tmp36_ = self->priv->scrub_tag; + gtk_text_buffer_insert_with_tags (_tmp31_, &iter, _tmp32_, _tmp35_, _tmp36_, NULL, NULL); + result = GDK_EVENT_STOP; + _g_free0 (new_value); + return result; + } + _tmp37_ = self->source_view; + _tmp38_ = e; + _tmp39_ = _tmp38_->x; + _tmp40_ = e; + _tmp41_ = _tmp40_->y; + gtk_text_view_window_to_buffer_coords ((GtkTextView*) _tmp37_, GTK_TEXT_WINDOW_TEXT, (gint) _tmp39_, (gint) _tmp41_, &_tmp42_, &_tmp43_); + x = _tmp42_; + y = _tmp43_; + _tmp44_ = self->source_view; + _tmp45_ = x; + _tmp46_ = y; + gtk_text_view_get_iter_at_location ((GtkTextView*) _tmp44_, &_tmp47_, _tmp45_, _tmp46_); + iter = _tmp47_; + _tmp48_ = self->source_view; + _tmp49_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp48_); + _tmp50_ = _tmp49_; + gtk_text_buffer_get_end_iter (_tmp50_, &_tmp51_); + iter2 = _tmp51_; + _tmp52_ = gtk_text_iter_get_offset (&iter); + _tmp53_ = gtk_text_iter_get_offset (&iter2); + if (_tmp52_ == _tmp53_) { + gboolean _tmp54_ = FALSE; + _tmp54_ = self->priv->scrubb_hover; + if (_tmp54_) { + GtkSourceView* _tmp55_ = NULL; + GdkWindow* _tmp56_ = NULL; + GdkCursor* _tmp57_ = NULL; + _tmp55_ = self->source_view; + _tmp56_ = gtk_text_view_get_window ((GtkTextView*) _tmp55_, GTK_TEXT_WINDOW_TEXT); + _tmp57_ = self->priv->x_term; + gdk_window_set_cursor (_tmp56_, _tmp57_); + self->priv->scrubb_hover = FALSE; + } + result = FALSE; + return result; + } + _tmp58_ = iter; + gtk_text_iter_assign (&iter2, &_tmp58_); + gtk_text_iter_backward_word_start (&iter); + input_view_forward_till_no_digit (self, &iter2); + _tmp59_ = self->source_view; + _tmp60_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp59_); + _tmp61_ = _tmp60_; + _tmp62_ = iter; + _tmp63_ = iter2; + _tmp64_ = gtk_text_buffer_get_slice (_tmp61_, &_tmp62_, &_tmp63_, TRUE); + word = _tmp64_; + _tmp65_ = gtk_text_iter_get_offset (&iter); + self->priv->start_scrub = _tmp65_; + gtk_text_iter_backward_char (&iter); + _tmp69_ = gtk_text_iter_get_char (&iter); + if (_tmp69_ == ((gunichar) ',')) { + _tmp68_ = TRUE; + } else { + gunichar _tmp70_ = 0U; + _tmp70_ = gtk_text_iter_get_char (&iter2); + _tmp68_ = _tmp70_ == ((gunichar) ','); + } + if (_tmp68_) { + _tmp67_ = TRUE; + } else { + gunichar _tmp71_ = 0U; + _tmp71_ = gtk_text_iter_get_char (&iter); + _tmp67_ = _tmp71_ == ((gunichar) '.'); + } + if (_tmp67_) { + _tmp66_ = TRUE; + } else { + gunichar _tmp72_ = 0U; + _tmp72_ = gtk_text_iter_get_char (&iter2); + _tmp66_ = _tmp72_ == ((gunichar) '.'); + } + if (_tmp66_) { + gboolean _tmp73_ = FALSE; + _tmp73_ = self->priv->scrubb_hover; + if (_tmp73_) { + GtkSourceView* _tmp74_ = NULL; + GdkWindow* _tmp75_ = NULL; + GdkCursor* _tmp76_ = NULL; + _tmp74_ = self->source_view; + _tmp75_ = gtk_text_view_get_window ((GtkTextView*) _tmp74_, GTK_TEXT_WINDOW_TEXT); + _tmp76_ = self->priv->x_term; + gdk_window_set_cursor (_tmp75_, _tmp76_); + self->priv->scrubb_hover = FALSE; + } + result = FALSE; + _g_free0 (word); + return result; + } + _tmp77_ = word; + _tmp79_ = int64_try_parse (_tmp77_, &_tmp78_); + val = _tmp78_; + success = _tmp79_; + _tmp80_ = success; + if (_tmp80_) { + gboolean _tmp81_ = FALSE; + _tmp81_ = self->priv->scrubb_hover; + if (!_tmp81_) { + gint64 _tmp82_ = 0LL; + gint _tmp83_ = 0; + gchar* _tmp84_ = NULL; + gchar* _tmp85_ = NULL; + gint _tmp86_ = 0; + gint _tmp87_ = 0; + GtkSourceView* _tmp88_ = NULL; + GdkWindow* _tmp89_ = NULL; + GdkCursor* _tmp90_ = NULL; + _tmp82_ = val; + self->priv->org_value = (gint) _tmp82_; + _tmp83_ = self->priv->org_value; + _tmp84_ = g_strdup_printf ("%d", _tmp83_); + _tmp85_ = _tmp84_; + _tmp86_ = strlen (_tmp85_); + _tmp87_ = _tmp86_; + self->priv->scrub_width = _tmp87_; + _g_free0 (_tmp85_); + gtk_text_iter_forward_char (&iter); + _tmp88_ = self->source_view; + _tmp89_ = gtk_text_view_get_window ((GtkTextView*) _tmp88_, GTK_TEXT_WINDOW_TEXT); + _tmp90_ = self->priv->d_arrow; + gdk_window_set_cursor (_tmp89_, _tmp90_); + self->priv->scrubb_hover = TRUE; + } + } else { + gboolean _tmp91_ = FALSE; + _tmp91_ = self->priv->scrubb_hover; + if (_tmp91_) { + GtkSourceView* _tmp92_ = NULL; + GdkWindow* _tmp93_ = NULL; + GdkCursor* _tmp94_ = NULL; + _tmp92_ = self->source_view; + _tmp93_ = gtk_text_view_get_window ((GtkTextView*) _tmp92_, GTK_TEXT_WINDOW_TEXT); + _tmp94_ = self->priv->x_term; + gdk_window_set_cursor (_tmp93_, _tmp94_); + self->priv->scrubb_hover = FALSE; + } + } + result = FALSE; + _g_free0 (word); + return result; +} + + +static gboolean ___lambda16__gtk_widget_motion_notify_event (GtkWidget* _sender, GdkEventMotion* event, gpointer self) { + gboolean result; + result = __lambda16_ ((InputView*) self, event); + return result; +} + + +static gboolean __lambda17_ (InputView* self, GdkEventButton* e) { + gboolean result = FALSE; + gboolean _tmp0_ = FALSE; + gboolean _tmp1_ = FALSE; + gboolean _tmp2_ = FALSE; + g_return_val_if_fail (e != NULL, FALSE); + _tmp2_ = self->priv->scrubb_hover; + if (_tmp2_) { + GdkEventButton* _tmp3_ = NULL; + GdkEventType _tmp4_ = 0; + _tmp3_ = e; + _tmp4_ = _tmp3_->type; + _tmp1_ = _tmp4_ == GDK_BUTTON_PRESS; + } else { + _tmp1_ = FALSE; + } + if (_tmp1_) { + GdkEventButton* _tmp5_ = NULL; + guint _tmp6_ = 0U; + _tmp5_ = e; + _tmp6_ = _tmp5_->button; + _tmp0_ = _tmp6_ != ((guint) GDK_2BUTTON_PRESS); + } else { + _tmp0_ = FALSE; + } + if (_tmp0_) { + GdkEventButton* _tmp7_ = NULL; + gdouble _tmp8_ = 0.0; + GtkSourceView* _tmp9_ = NULL; + GtkTextBuffer* _tmp10_ = NULL; + GtkTextBuffer* _tmp11_ = NULL; + gint _tmp12_ = 0; + gint _tmp13_ = 0; + GtkSourceView* _tmp14_ = NULL; + GtkTextIter iter = {0}; + GtkSourceView* _tmp15_ = NULL; + GtkTextBuffer* _tmp16_ = NULL; + GtkTextBuffer* _tmp17_ = NULL; + gint _tmp18_ = 0; + GtkTextIter _tmp19_ = {0}; + GtkSourceView* _tmp20_ = NULL; + GtkTextBuffer* _tmp21_ = NULL; + GtkTextBuffer* _tmp22_ = NULL; + GtkTextIter _tmp23_ = {0}; + _tmp7_ = e; + _tmp8_ = _tmp7_->x; + self->priv->scrubb_press_x = (gint) _tmp8_; + _tmp9_ = self->source_view; + _tmp10_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp9_); + _tmp11_ = _tmp10_; + g_object_get (_tmp11_, "cursor-position", &_tmp12_, NULL); + _tmp13_ = _tmp12_; + self->priv->last_cursor = _tmp13_; + _tmp14_ = self->source_view; + gtk_text_view_set_cursor_visible ((GtkTextView*) _tmp14_, FALSE); + memset (&iter, 0, sizeof (GtkTextIter)); + _tmp15_ = self->source_view; + _tmp16_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = self->priv->start_scrub; + gtk_text_buffer_get_iter_at_offset (_tmp17_, &_tmp19_, _tmp18_); + iter = _tmp19_; + _tmp20_ = self->source_view; + _tmp21_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp20_); + _tmp22_ = _tmp21_; + _tmp23_ = iter; + gtk_text_buffer_place_cursor (_tmp22_, &_tmp23_); + result = GDK_EVENT_STOP; + return result; + } else { + result = GDK_EVENT_PROPAGATE; + return result; + } +} + + +static gboolean ___lambda17__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = __lambda17_ ((InputView*) self, event); + return result; +} + + +static gboolean __lambda18_ (InputView* self, GdkEventButton* e) { + gboolean result = FALSE; + gint _tmp0_ = 0; + g_return_val_if_fail (e != NULL, FALSE); + _tmp0_ = self->priv->scrubb_press_x; + if (_tmp0_ > 0) { + GtkSourceView* _tmp1_ = NULL; + GdkWindow* _tmp2_ = NULL; + GdkCursor* _tmp3_ = NULL; + GtkTextIter iter = {0}; + GtkTextIter iter2 = {0}; + GtkSourceView* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + GtkTextBuffer* _tmp6_ = NULL; + gint _tmp7_ = 0; + GtkTextIter _tmp8_ = {0}; + GtkSourceView* _tmp9_ = NULL; + GtkTextBuffer* _tmp10_ = NULL; + GtkTextBuffer* _tmp11_ = NULL; + gint _tmp12_ = 0; + gint _tmp13_ = 0; + GtkTextIter _tmp14_ = {0}; + GtkSourceView* _tmp15_ = NULL; + GtkTextBuffer* _tmp16_ = NULL; + GtkTextBuffer* _tmp17_ = NULL; + GtkTextIter _tmp18_ = {0}; + GtkTextIter _tmp19_ = {0}; + GtkSourceView* _tmp20_ = NULL; + GtkSourceView* _tmp21_ = NULL; + GtkTextBuffer* _tmp22_ = NULL; + GtkTextBuffer* _tmp23_ = NULL; + gint _tmp24_ = 0; + GtkTextIter _tmp25_ = {0}; + GtkSourceView* _tmp26_ = NULL; + GtkTextBuffer* _tmp27_ = NULL; + GtkTextBuffer* _tmp28_ = NULL; + GtkTextIter _tmp29_ = {0}; + self->priv->scrubb_press_x = -1; + _tmp1_ = self->source_view; + _tmp2_ = gtk_text_view_get_window ((GtkTextView*) _tmp1_, GTK_TEXT_WINDOW_TEXT); + _tmp3_ = self->priv->x_term; + gdk_window_set_cursor (_tmp2_, _tmp3_); + self->priv->scrubb_hover = FALSE; + memset (&iter, 0, sizeof (GtkTextIter)); + memset (&iter2, 0, sizeof (GtkTextIter)); + _tmp4_ = self->source_view; + _tmp5_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp4_); + _tmp6_ = _tmp5_; + _tmp7_ = self->priv->start_scrub; + gtk_text_buffer_get_iter_at_offset (_tmp6_, &_tmp8_, _tmp7_); + iter = _tmp8_; + _tmp9_ = self->source_view; + _tmp10_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp9_); + _tmp11_ = _tmp10_; + _tmp12_ = self->priv->start_scrub; + _tmp13_ = self->priv->scrub_width; + gtk_text_buffer_get_iter_at_offset (_tmp11_, &_tmp14_, _tmp12_ + _tmp13_); + iter2 = _tmp14_; + _tmp15_ = self->source_view; + _tmp16_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = iter; + _tmp19_ = iter2; + gtk_text_buffer_remove_tag_by_name (_tmp17_, "scrubbing", &_tmp18_, &_tmp19_); + _tmp20_ = self->source_view; + gtk_text_view_set_cursor_visible ((GtkTextView*) _tmp20_, TRUE); + _tmp21_ = self->source_view; + _tmp22_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp21_); + _tmp23_ = _tmp22_; + _tmp24_ = self->priv->last_cursor; + gtk_text_buffer_get_iter_at_offset (_tmp23_, &_tmp25_, _tmp24_); + iter = _tmp25_; + _tmp26_ = self->source_view; + _tmp27_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp26_); + _tmp28_ = _tmp27_; + _tmp29_ = iter; + gtk_text_buffer_place_cursor (_tmp28_, &_tmp29_); + result = GDK_EVENT_STOP; + return result; + } else { + result = GDK_EVENT_PROPAGATE; + return result; + } +} + + +static gboolean ___lambda18__gtk_widget_button_release_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = __lambda18_ ((InputView*) self, event); + return result; +} + + +static void input_view_scrubbing_mode (InputView* self) { + GtkSourceView* _tmp0_ = NULL; + GtkSourceView* _tmp1_ = NULL; + GtkSourceView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + GtkTextTag* _tmp6_ = NULL; + GtkTextTag* _tmp7_ = NULL; + GdkRGBA rgb = {0}; + GtkTextTag* _tmp8_ = NULL; + GdkRGBA _tmp9_ = {0}; + GtkTextTag* _tmp10_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->source_view; + g_signal_connect_object ((GtkWidget*) _tmp0_, "motion-notify-event", (GCallback) ___lambda16__gtk_widget_motion_notify_event, self, 0); + _tmp1_ = self->source_view; + g_signal_connect_object ((GtkWidget*) _tmp1_, "button-press-event", (GCallback) ___lambda17__gtk_widget_button_press_event, self, 0); + _tmp2_ = self->source_view; + g_signal_connect_object ((GtkWidget*) _tmp2_, "button-release-event", (GCallback) ___lambda18__gtk_widget_button_release_event, self, 0); + _tmp3_ = self->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + _tmp6_ = gtk_text_buffer_create_tag (_tmp5_, "scrubbing", NULL); + _tmp7_ = _g_object_ref0 (_tmp6_); + _g_object_unref0 (self->priv->scrub_tag); + self->priv->scrub_tag = _tmp7_; + memset (&rgb, 0, sizeof (GdkRGBA)); + rgb.red = 0.854901961; + rgb.green = 0.933333333; + rgb.blue = 0.984313725; + rgb.alpha = 0.8; + _tmp8_ = self->priv->scrub_tag; + _tmp9_ = rgb; + g_object_set (_tmp8_, "background-rgba", &_tmp9_, NULL); + _tmp10_ = self->priv->scrub_tag; + g_object_set (_tmp10_, "background-set", TRUE, NULL); +} + + +static void input_view_forward_till_no_digit (InputView* self, GtkTextIter* it) { + g_return_if_fail (self != NULL); + g_return_if_fail (it != NULL); + while (TRUE) { + gunichar _tmp0_ = 0U; + gboolean _tmp1_ = FALSE; + gtk_text_iter_forward_char (it); + _tmp0_ = gtk_text_iter_get_char (it); + _tmp1_ = g_unichar_isdigit (_tmp0_); + if (_tmp1_) { + continue; + } + break; + } +} + + +static void g_cclosure_user_marshal_VOID__INT_INT (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data) { + typedef void (*GMarshalFunc_VOID__INT_INT) (gpointer data1, gint arg_1, gint arg_2, gpointer data2); + register GMarshalFunc_VOID__INT_INT callback; + register GCClosure * cc; + register gpointer data1; + register gpointer data2; + cc = (GCClosure *) closure; + g_return_if_fail (n_param_values == 3); + if (G_CCLOSURE_SWAP_DATA (closure)) { + data1 = closure->data; + data2 = param_values->data[0].v_pointer; + } else { + data1 = param_values->data[0].v_pointer; + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT) (marshal_data ? marshal_data : cc->callback); + callback (data1, g_value_get_int (param_values + 1), g_value_get_int (param_values + 2), data2); +} + + +static void g_cclosure_user_marshal_VOID__INT_INT_STRING (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data) { + typedef void (*GMarshalFunc_VOID__INT_INT_STRING) (gpointer data1, gint arg_1, gint arg_2, const char* arg_3, gpointer data2); + register GMarshalFunc_VOID__INT_INT_STRING callback; + register GCClosure * cc; + register gpointer data1; + register gpointer data2; + cc = (GCClosure *) closure; + g_return_if_fail (n_param_values == 4); + if (G_CCLOSURE_SWAP_DATA (closure)) { + data1 = closure->data; + data2 = param_values->data[0].v_pointer; + } else { + data1 = param_values->data[0].v_pointer; + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT_STRING) (marshal_data ? marshal_data : cc->callback); + callback (data1, g_value_get_int (param_values + 1), g_value_get_int (param_values + 2), g_value_get_string (param_values + 3), data2); +} + + +static void input_view_class_init (InputViewClass * klass) { + input_view_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (InputViewPrivate)); + ((GtkWidgetClass *) klass)->draw = input_view_real_draw; + G_OBJECT_CLASS (klass)->finalize = input_view_finalize; + g_signal_new ("line_added", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); + g_signal_new ("line_removed", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); + g_signal_new ("changed_line", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__INT_INT_STRING, G_TYPE_NONE, 3, G_TYPE_INT, G_TYPE_INT, G_TYPE_STRING); + g_signal_new ("insert_result", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT); + g_signal_new ("open", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new ("new_trigger", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new ("escape", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new ("help", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new ("cursor_line_change", TYPE_INPUT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT); +} + + +static void input_view_instance_init (InputView * self) { + gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + gchar** _tmp5_ = NULL; + GeeArrayList* _tmp6_ = NULL; + gchar* _tmp7_ = NULL; + GdkDisplay* _tmp8_ = NULL; + GdkCursor* _tmp9_ = NULL; + GdkDisplay* _tmp10_ = NULL; + GdkCursor* _tmp11_ = NULL; + self->priv = INPUT_VIEW_GET_PRIVATE (self); + _tmp0_ = g_strdup ("+"); + _tmp1_ = g_strdup ("-"); + _tmp2_ = g_strdup ("*"); + _tmp3_ = g_strdup ("/"); + _tmp4_ = g_strdup ("="); + _tmp5_ = g_new0 (gchar*, 5 + 1); + _tmp5_[0] = _tmp0_; + _tmp5_[1] = _tmp1_; + _tmp5_[2] = _tmp2_; + _tmp5_[3] = _tmp3_; + _tmp5_[4] = _tmp4_; + _tmp6_ = gee_array_list_new_wrap (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, _tmp5_, 5, NULL, NULL, NULL); + self->operators = _tmp6_; + self->priv->add_space = FALSE; + self->skip_change = FALSE; + _tmp7_ = g_strdup ("(?=[A-Za-z])line(\\d)+"); + self->priv->line_regex = _tmp7_; + self->priv->total_lines = 0; + self->priv->backspace_button = FALSE; + self->priv->actual_line = 0; + _tmp8_ = gdk_display_get_default (); + _tmp9_ = gdk_cursor_new_for_display (_tmp8_, GDK_XTERM); + self->priv->x_term = _tmp9_; + _tmp10_ = gdk_display_get_default (); + _tmp11_ = gdk_cursor_new_for_display (_tmp10_, GDK_SB_H_DOUBLE_ARROW); + self->priv->d_arrow = _tmp11_; + self->priv->scrubb_hover = FALSE; + self->priv->scrubb_press_x = -1; +} + + +static void input_view_finalize (GObject* obj) { + InputView * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_INPUT_VIEW, InputView); + _g_object_unref0 (self->buffer); + _g_object_unref0 (self->source_view); + _g_object_unref0 (self->priv->search); + _g_object_unref0 (self->priv->result_widgets); + _g_object_unref0 (self->operators); + _g_regex_unref0 (self->priv->digit_regex); + _g_regex_unref0 (self->priv->non_digit_regex); + _g_free0 (self->priv->line_regex); + _g_object_unref0 (self->priv->x_term); + _g_object_unref0 (self->priv->d_arrow); + _g_object_unref0 (self->priv->scrub_tag); + G_OBJECT_CLASS (input_view_parent_class)->finalize (obj); +} + + +GType input_view_get_type (void) { + static volatile gsize input_view_type_id__volatile = 0; + if (g_once_init_enter (&input_view_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (InputViewClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) input_view_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (InputView), 0, (GInstanceInitFunc) input_view_instance_init, NULL }; + GType input_view_type_id; + input_view_type_id = g_type_register_static (gtk_box_get_type (), "InputView", &g_define_type_info, 0); + g_once_init_leave (&input_view_type_id__volatile, input_view_type_id); + } + return input_view_type_id__volatile; +} + + +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { + if ((array != NULL) && (destroy_func != NULL)) { + int i; + for (i = 0; i < array_length; i = i + 1) { + if (((gpointer*) array)[i] != NULL) { + destroy_func (((gpointer*) array)[i]); + } + } + } +} + + +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { + _vala_array_destroy (array, array_length, destroy_func); + g_free (array); +} + + +static gint _vala_array_length (gpointer array) { + int length; + length = 0; + if (array) { + while (((gpointer*) array)[length]) { + length++; + } + } + return length; +} + + + diff -Nru nasc-0.2/build/src/ListFooter.c nasc-0.3/build/src/ListFooter.c --- nasc-0.2/build/src/ListFooter.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/ListFooter.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,340 @@ +/* ListFooter.c generated by valac 0.32.1, the Vala compiler + * generated from ListFooter.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include + + +#define TYPE_LIST_FOOTER (list_footer_get_type ()) +#define LIST_FOOTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIST_FOOTER, ListFooter)) +#define LIST_FOOTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIST_FOOTER, ListFooterClass)) +#define IS_LIST_FOOTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIST_FOOTER)) +#define IS_LIST_FOOTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIST_FOOTER)) +#define LIST_FOOTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIST_FOOTER, ListFooterClass)) + +typedef struct _ListFooter ListFooter; +typedef struct _ListFooterClass ListFooterClass; +typedef struct _ListFooterPrivate ListFooterPrivate; + +#define TYPE_CONTROLLER (controller_get_type ()) +#define CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTROLLER, Controller)) +#define CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTROLLER, ControllerClass)) +#define IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTROLLER)) +#define IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTROLLER)) +#define CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTROLLER, ControllerClass)) + +typedef struct _Controller Controller; +typedef struct _ControllerClass ControllerClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#define TYPE_NASC_SHEET (nasc_sheet_get_type ()) +#define NASC_SHEET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SHEET, NascSheet)) +#define NASC_SHEET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SHEET, NascSheetClass)) +#define IS_NASC_SHEET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SHEET)) +#define IS_NASC_SHEET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SHEET)) +#define NASC_SHEET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SHEET, NascSheetClass)) + +typedef struct _NascSheet NascSheet; +typedef struct _NascSheetClass NascSheetClass; + +struct _ListFooter { + GtkToolbar parent_instance; + ListFooterPrivate * priv; + Controller* controller; +}; + +struct _ListFooterClass { + GtkToolbarClass parent_class; +}; + +struct _ListFooterPrivate { + GtkToolButton* button_add; + GtkToolButton* button_remove; + GtkToolButton* button_undo; +}; + + +static gpointer list_footer_parent_class = NULL; + +GType list_footer_get_type (void) G_GNUC_CONST; +GType controller_get_type (void) G_GNUC_CONST; +#define LIST_FOOTER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_LIST_FOOTER, ListFooterPrivate)) +enum { + LIST_FOOTER_DUMMY_PROPERTY +}; +ListFooter* list_footer_new (void); +ListFooter* list_footer_construct (GType object_type); +static void list_footer_build_ui (ListFooter* self); +static void __lambda89_ (ListFooter* self); +static void ___lambda89__gtk_tool_button_clicked (GtkToolButton* _sender, gpointer self); +static void __lambda90_ (ListFooter* self); +static void ___lambda90__gtk_tool_button_clicked (GtkToolButton* _sender, gpointer self); +static void __lambda91_ (ListFooter* self); +static void ___lambda91__gtk_tool_button_clicked (GtkToolButton* _sender, gpointer self); +void list_footer_update_ui (ListFooter* self); +GType nasc_sheet_get_type (void) G_GNUC_CONST; +GeeArrayList* controller_get_sheets (Controller* self); +GeeLinkedList* controller_get_removal_list (Controller* self); +static void list_footer_finalize (GObject* obj); + + +ListFooter* list_footer_construct (GType object_type) { + ListFooter * self = NULL; + self = (ListFooter*) g_object_new (object_type, NULL); + list_footer_build_ui (self); + return self; +} + + +ListFooter* list_footer_new (void) { + return list_footer_construct (TYPE_LIST_FOOTER); +} + + +static void __lambda89_ (ListFooter* self) { + g_signal_emit_by_name (self, "add-sheet"); +} + + +static void ___lambda89__gtk_tool_button_clicked (GtkToolButton* _sender, gpointer self) { + __lambda89_ ((ListFooter*) self); +} + + +static void __lambda90_ (ListFooter* self) { + g_signal_emit_by_name (self, "remove-sheet"); +} + + +static void ___lambda90__gtk_tool_button_clicked (GtkToolButton* _sender, gpointer self) { + __lambda90_ ((ListFooter*) self); +} + + +static void __lambda91_ (ListFooter* self) { + g_signal_emit_by_name (self, "undo"); +} + + +static void ___lambda91__gtk_tool_button_clicked (GtkToolButton* _sender, gpointer self) { + __lambda91_ ((ListFooter*) self); +} + + +static void list_footer_build_ui (ListFooter* self) { + GtkStyleContext* _tmp0_ = NULL; + GtkStyleContext* _tmp1_ = NULL; + GtkStyleContext* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + GtkToolButton* _tmp4_ = NULL; + GtkToolButton* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkToolButton* _tmp7_ = NULL; + GtkToolButton* _tmp8_ = NULL; + GtkToolButton* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + GtkToolButton* _tmp11_ = NULL; + GtkToolButton* _tmp12_ = NULL; + const gchar* _tmp13_ = NULL; + GtkToolButton* _tmp14_ = NULL; + GtkToolButton* _tmp15_ = NULL; + GtkToolButton* _tmp16_ = NULL; + GtkToolButton* _tmp17_ = NULL; + GtkSeparatorToolItem* separator = NULL; + GtkSeparatorToolItem* _tmp18_ = NULL; + const gchar* _tmp19_ = NULL; + GtkToolButton* _tmp20_ = NULL; + GtkToolButton* _tmp21_ = NULL; + const gchar* _tmp22_ = NULL; + GtkToolButton* _tmp23_ = NULL; + GtkToolButton* _tmp24_ = NULL; + GtkToolButton* _tmp25_ = NULL; + GtkToolButton* _tmp26_ = NULL; + g_return_if_fail (self != NULL); + gtk_toolbar_set_style ((GtkToolbar*) self, GTK_TOOLBAR_ICONS); + _tmp0_ = gtk_widget_get_style_context ((GtkWidget*) self); + gtk_style_context_add_class (_tmp0_, "inline-toolbar"); + _tmp1_ = gtk_widget_get_style_context ((GtkWidget*) self); + gtk_style_context_add_class (_tmp1_, GTK_STYLE_CLASS_INLINE_TOOLBAR); + _tmp2_ = gtk_widget_get_style_context ((GtkWidget*) self); + gtk_style_context_set_junction_sides (_tmp2_, GTK_JUNCTION_TOP); + gtk_toolbar_set_icon_size ((GtkToolbar*) self, GTK_ICON_SIZE_SMALL_TOOLBAR); + gtk_toolbar_set_show_arrow ((GtkToolbar*) self, FALSE); + gtk_widget_set_hexpand ((GtkWidget*) self, TRUE); + _tmp3_ = _ ("Create new sheet"); + _tmp4_ = (GtkToolButton*) gtk_tool_button_new (NULL, _tmp3_); + g_object_ref_sink (_tmp4_); + _g_object_unref0 (self->priv->button_add); + self->priv->button_add = _tmp4_; + _tmp5_ = self->priv->button_add; + _tmp6_ = _ ("Create new sheet"); + gtk_tool_item_set_tooltip_text ((GtkToolItem*) _tmp5_, _tmp6_); + _tmp7_ = self->priv->button_add; + gtk_tool_button_set_icon_name (_tmp7_, "list-add-symbolic"); + _tmp8_ = self->priv->button_add; + g_signal_connect_object (_tmp8_, "clicked", (GCallback) ___lambda89__gtk_tool_button_clicked, self, 0); + _tmp9_ = self->priv->button_add; + gtk_toolbar_insert ((GtkToolbar*) self, (GtkToolItem*) _tmp9_, -1); + _tmp10_ = _ ("Remove sheet"); + _tmp11_ = (GtkToolButton*) gtk_tool_button_new (NULL, _tmp10_); + g_object_ref_sink (_tmp11_); + _g_object_unref0 (self->priv->button_remove); + self->priv->button_remove = _tmp11_; + _tmp12_ = self->priv->button_remove; + _tmp13_ = _ ("Remove sheet"); + gtk_tool_item_set_tooltip_text ((GtkToolItem*) _tmp12_, _tmp13_); + _tmp14_ = self->priv->button_remove; + gtk_tool_button_set_icon_name (_tmp14_, "list-remove-symbolic"); + _tmp15_ = self->priv->button_remove; + gtk_widget_set_sensitive ((GtkWidget*) _tmp15_, FALSE); + _tmp16_ = self->priv->button_remove; + g_signal_connect_object (_tmp16_, "clicked", (GCallback) ___lambda90__gtk_tool_button_clicked, self, 0); + _tmp17_ = self->priv->button_remove; + gtk_toolbar_insert ((GtkToolbar*) self, (GtkToolItem*) _tmp17_, -1); + _tmp18_ = (GtkSeparatorToolItem*) gtk_separator_tool_item_new (); + g_object_ref_sink (_tmp18_); + separator = _tmp18_; + gtk_separator_tool_item_set_draw (separator, FALSE); + gtk_tool_item_set_expand ((GtkToolItem*) separator, TRUE); + gtk_toolbar_insert ((GtkToolbar*) self, (GtkToolItem*) separator, -1); + _tmp19_ = _ ("Undo last sheet removal"); + _tmp20_ = (GtkToolButton*) gtk_tool_button_new (NULL, _tmp19_); + g_object_ref_sink (_tmp20_); + _g_object_unref0 (self->priv->button_undo); + self->priv->button_undo = _tmp20_; + _tmp21_ = self->priv->button_undo; + _tmp22_ = _ ("Undo last sheet removal"); + gtk_tool_item_set_tooltip_text ((GtkToolItem*) _tmp21_, _tmp22_); + _tmp23_ = self->priv->button_undo; + gtk_tool_button_set_icon_name (_tmp23_, "edit-undo-symbolic"); + _tmp24_ = self->priv->button_undo; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp24_, TRUE); + _tmp25_ = self->priv->button_undo; + g_signal_connect_object (_tmp25_, "clicked", (GCallback) ___lambda91__gtk_tool_button_clicked, self, 0); + _tmp26_ = self->priv->button_undo; + gtk_toolbar_insert ((GtkToolbar*) self, (GtkToolItem*) _tmp26_, -1); + list_footer_update_ui (self); + _g_object_unref0 (separator); +} + + +void list_footer_update_ui (ListFooter* self) { + Controller* _tmp0_ = NULL; + Controller* _tmp1_ = NULL; + GeeArrayList* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + gboolean _tmp6_ = FALSE; + Controller* _tmp9_ = NULL; + GeeLinkedList* _tmp10_ = NULL; + GeeLinkedList* _tmp11_ = NULL; + gint _tmp12_ = 0; + gint _tmp13_ = 0; + gboolean _tmp14_ = FALSE; + g_return_if_fail (self != NULL); + _tmp0_ = self->controller; + if (_tmp0_ == NULL) { + return; + } + _tmp1_ = self->controller; + _tmp2_ = controller_get_sheets (_tmp1_); + _tmp3_ = _tmp2_; + _tmp4_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp3_); + _tmp5_ = _tmp4_; + _tmp6_ = _tmp5_ > 1; + _g_object_unref0 (_tmp3_); + if (_tmp6_) { + GtkToolButton* _tmp7_ = NULL; + _tmp7_ = self->priv->button_remove; + gtk_widget_set_sensitive ((GtkWidget*) _tmp7_, TRUE); + } else { + GtkToolButton* _tmp8_ = NULL; + _tmp8_ = self->priv->button_remove; + gtk_widget_set_sensitive ((GtkWidget*) _tmp8_, FALSE); + } + _tmp9_ = self->controller; + _tmp10_ = controller_get_removal_list (_tmp9_); + _tmp11_ = _tmp10_; + _tmp12_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp11_); + _tmp13_ = _tmp12_; + _tmp14_ = _tmp13_ == 0; + _g_object_unref0 (_tmp11_); + if (_tmp14_) { + GtkToolButton* _tmp15_ = NULL; + GtkToolButton* _tmp16_ = NULL; + _tmp15_ = self->priv->button_undo; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp15_, TRUE); + _tmp16_ = self->priv->button_undo; + gtk_widget_hide ((GtkWidget*) _tmp16_); + } else { + GtkToolButton* _tmp17_ = NULL; + _tmp17_ = self->priv->button_undo; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp17_, FALSE); + } + gtk_widget_show_all ((GtkWidget*) self); +} + + +static void list_footer_class_init (ListFooterClass * klass) { + list_footer_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (ListFooterPrivate)); + G_OBJECT_CLASS (klass)->finalize = list_footer_finalize; + g_signal_new ("add_sheet", TYPE_LIST_FOOTER, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new ("remove_sheet", TYPE_LIST_FOOTER, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new ("undo", TYPE_LIST_FOOTER, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); +} + + +static void list_footer_instance_init (ListFooter * self) { + self->priv = LIST_FOOTER_GET_PRIVATE (self); +} + + +static void list_footer_finalize (GObject* obj) { + ListFooter * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_LIST_FOOTER, ListFooter); + _g_object_unref0 (self->priv->button_add); + _g_object_unref0 (self->priv->button_remove); + _g_object_unref0 (self->priv->button_undo); + _g_object_unref0 (self->controller); + G_OBJECT_CLASS (list_footer_parent_class)->finalize (obj); +} + + +GType list_footer_get_type (void) { + static volatile gsize list_footer_type_id__volatile = 0; + if (g_once_init_enter (&list_footer_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (ListFooterClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) list_footer_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ListFooter), 0, (GInstanceInitFunc) list_footer_instance_init, NULL }; + GType list_footer_type_id; + list_footer_type_id = g_type_register_static (gtk_toolbar_get_type (), "ListFooter", &g_define_type_info, 0); + g_once_init_leave (&list_footer_type_id__volatile, list_footer_type_id); + } + return list_footer_type_id__volatile; +} + + + diff -Nru nasc-0.2/build/src/MainWindow.c nasc-0.3/build/src/MainWindow.c --- nasc-0.2/build/src/MainWindow.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/MainWindow.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,1428 @@ +/* MainWindow.c generated by valac 0.32.1, the Vala compiler + * generated from MainWindow.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define NASC_TYPE_MAIN_WINDOW (nasc_main_window_get_type ()) +#define NASC_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NASC_TYPE_MAIN_WINDOW, NascMainWindow)) +#define NASC_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NASC_TYPE_MAIN_WINDOW, NascMainWindowClass)) +#define NASC_IS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NASC_TYPE_MAIN_WINDOW)) +#define NASC_IS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NASC_TYPE_MAIN_WINDOW)) +#define NASC_MAIN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NASC_TYPE_MAIN_WINDOW, NascMainWindowClass)) + +typedef struct _NascMainWindow NascMainWindow; +typedef struct _NascMainWindowClass NascMainWindowClass; +typedef struct _NascMainWindowPrivate NascMainWindowPrivate; + +#define NASC_TYPE_NASC_APP (nasc_nasc_app_get_type ()) +#define NASC_NASC_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NASC_TYPE_NASC_APP, NascNascApp)) +#define NASC_NASC_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NASC_TYPE_NASC_APP, NascNascAppClass)) +#define NASC_IS_NASC_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NASC_TYPE_NASC_APP)) +#define NASC_IS_NASC_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NASC_TYPE_NASC_APP)) +#define NASC_NASC_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NASC_TYPE_NASC_APP, NascNascAppClass)) + +typedef struct _NascNascApp NascNascApp; +typedef struct _NascNascAppClass NascNascAppClass; + +#define TYPE_CONTROLLER (controller_get_type ()) +#define CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTROLLER, Controller)) +#define CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTROLLER, ControllerClass)) +#define IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTROLLER)) +#define IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTROLLER)) +#define CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTROLLER, ControllerClass)) + +typedef struct _Controller Controller; +typedef struct _ControllerClass ControllerClass; + +#define TYPE_INPUT_VIEW (input_view_get_type ()) +#define INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INPUT_VIEW, InputView)) +#define INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INPUT_VIEW, InputViewClass)) +#define IS_INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INPUT_VIEW)) +#define IS_INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INPUT_VIEW)) +#define INPUT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INPUT_VIEW, InputViewClass)) + +typedef struct _InputView InputView; +typedef struct _InputViewClass InputViewClass; + +#define TYPE_RESULT_VIEW (result_view_get_type ()) +#define RESULT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_VIEW, ResultView)) +#define RESULT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_VIEW, ResultViewClass)) +#define IS_RESULT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_VIEW)) +#define IS_RESULT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_VIEW)) +#define RESULT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_VIEW, ResultViewClass)) + +typedef struct _ResultView ResultView; +typedef struct _ResultViewClass ResultViewClass; + +#define TYPE_HELP_BOX (help_box_get_type ()) +#define HELP_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HELP_BOX, HelpBox)) +#define HELP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HELP_BOX, HelpBoxClass)) +#define IS_HELP_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HELP_BOX)) +#define IS_HELP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HELP_BOX)) +#define HELP_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HELP_BOX, HelpBoxClass)) + +typedef struct _HelpBox HelpBox; +typedef struct _HelpBoxClass HelpBoxClass; + +#define TYPE_PERIODIC_TABLE (periodic_table_get_type ()) +#define PERIODIC_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PERIODIC_TABLE, PeriodicTable)) +#define PERIODIC_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PERIODIC_TABLE, PeriodicTableClass)) +#define IS_PERIODIC_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PERIODIC_TABLE)) +#define IS_PERIODIC_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PERIODIC_TABLE)) +#define PERIODIC_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PERIODIC_TABLE, PeriodicTableClass)) + +typedef struct _PeriodicTable PeriodicTable; +typedef struct _PeriodicTableClass PeriodicTableClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +typedef struct _Block1Data Block1Data; + +#define TYPE_NASC_SETTINGS (nasc_settings_get_type ()) +#define NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SETTINGS, NascSettings)) +#define NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SETTINGS, NascSettingsClass)) +#define IS_NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SETTINGS)) +#define IS_NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SETTINGS)) +#define NASC_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SETTINGS, NascSettingsClass)) + +typedef struct _NascSettings NascSettings; +typedef struct _NascSettingsClass NascSettingsClass; +typedef struct _InputViewPrivate InputViewPrivate; + +#define TYPE_NASC_SHEET (nasc_sheet_get_type ()) +#define NASC_SHEET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SHEET, NascSheet)) +#define NASC_SHEET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SHEET, NascSheetClass)) +#define IS_NASC_SHEET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SHEET)) +#define IS_NASC_SHEET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SHEET)) +#define NASC_SHEET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SHEET, NascSheetClass)) + +typedef struct _NascSheet NascSheet; +typedef struct _NascSheetClass NascSheetClass; +#define _g_free0(var) (var = (g_free (var), NULL)) +#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL))) +#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) +#define _cairo_destroy0(var) ((var == NULL) ? NULL : (var = (cairo_destroy (var), NULL))) +#define _cairo_surface_destroy0(var) ((var == NULL) ? NULL : (var = (cairo_surface_destroy (var), NULL))) +#define __g_slist_free__g_free0_0(var) ((var == NULL) ? NULL : (var = (_g_slist_free__g_free0_ (var), NULL))) + +#define NASC_TYPE_PASTE_BIN_DIALOG (nasc_paste_bin_dialog_get_type ()) +#define NASC_PASTE_BIN_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NASC_TYPE_PASTE_BIN_DIALOG, NascPasteBinDialog)) +#define NASC_PASTE_BIN_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NASC_TYPE_PASTE_BIN_DIALOG, NascPasteBinDialogClass)) +#define NASC_IS_PASTE_BIN_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NASC_TYPE_PASTE_BIN_DIALOG)) +#define NASC_IS_PASTE_BIN_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NASC_TYPE_PASTE_BIN_DIALOG)) +#define NASC_PASTE_BIN_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NASC_TYPE_PASTE_BIN_DIALOG, NascPasteBinDialogClass)) + +typedef struct _NascPasteBinDialog NascPasteBinDialog; +typedef struct _NascPasteBinDialogClass NascPasteBinDialogClass; +typedef struct _Block2Data Block2Data; +#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL))) + +#define TYPE_TUTORIAL (tutorial_get_type ()) +#define TUTORIAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TUTORIAL, Tutorial)) +#define TUTORIAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TUTORIAL, TutorialClass)) +#define IS_TUTORIAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TUTORIAL)) +#define IS_TUTORIAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TUTORIAL)) +#define TUTORIAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TUTORIAL, TutorialClass)) + +typedef struct _Tutorial Tutorial; +typedef struct _TutorialClass TutorialClass; + +struct _NascMainWindow { + GtkWindow parent_instance; + NascMainWindowPrivate * priv; +}; + +struct _NascMainWindowClass { + GtkWindowClass parent_class; +}; + +struct _NascMainWindowPrivate { + NascNascApp* app; + GtkPaned* pane; + Controller* controller; + InputView* input_box; + ResultView* result_box; + HelpBox* help_box; + PeriodicTable* periodic_box; + GtkToggleButton* help_button; + GtkStack* main_stack; + GtkStack* right_stack; +}; + +struct _Block1Data { + int _ref_count_; + NascMainWindow* self; + GtkPopover* export_popover; + GtkBox* main_box; + GtkInfoBar* info_bar; + GtkScrolledWindow* scroll; +}; + +struct _InputView { + GtkBox parent_instance; + InputViewPrivate * priv; + GtkSourceBuffer* buffer; + GtkSourceView* source_view; + GeeArrayList* operators; + gboolean skip_change; + gboolean scroll_needed; +}; + +struct _InputViewClass { + GtkBoxClass parent_class; +}; + +struct _Block2Data { + int _ref_count_; + NascMainWindow* self; + GtkInfoBar* info_bar; +}; + + +static gpointer nasc_main_window_parent_class = NULL; + +#define NASC_left_margin 12 +#define NASC_vertical_padding 8 +#define NASC_top_padding 10 +GType nasc_main_window_get_type (void) G_GNUC_CONST; +GType nasc_nasc_app_get_type (void) G_GNUC_CONST; +GType controller_get_type (void) G_GNUC_CONST; +GType input_view_get_type (void) G_GNUC_CONST; +GType result_view_get_type (void) G_GNUC_CONST; +GType help_box_get_type (void) G_GNUC_CONST; +GType periodic_table_get_type (void) G_GNUC_CONST; +#define NASC_MAIN_WINDOW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NASC_TYPE_MAIN_WINDOW, NascMainWindowPrivate)) +enum { + NASC_MAIN_WINDOW_DUMMY_PROPERTY +}; +NascMainWindow* nasc_main_window_new (NascNascApp* app); +NascMainWindow* nasc_main_window_construct (GType object_type, NascNascApp* app); +static Block1Data* block1_data_ref (Block1Data* _data1_); +static void block1_data_unref (void * _userdata_); +GType nasc_settings_get_type (void) G_GNUC_CONST; +NascSettings* nasc_settings_get_instance (void); +gint nasc_settings_get_opening_x (NascSettings* self); +gint nasc_settings_get_opening_y (NascSettings* self); +gint nasc_settings_get_window_width (NascSettings* self); +gint nasc_settings_get_window_height (NascSettings* self); +static gboolean nasc_main_window_on_window_closing (NascMainWindow* self); +static gboolean _nasc_main_window_on_window_closing_gtk_widget_delete_event (GtkWidget* _sender, GdkEventAny* event, gpointer self); +static void __lambda48_ (Block1Data* _data1_); +static void ___lambda48__gtk_button_clicked (GtkButton* _sender, gpointer self); +InputView* input_view_new (void); +InputView* input_view_construct (GType object_type); +ResultView* result_view_new (void); +ResultView* result_view_construct (GType object_type); +gint nasc_settings_get_pane_position (NascSettings* self); +static void __lambda49_ (Block1Data* _data1_, GtkAllocation* alloc); +static void ___lambda49__gtk_widget_size_allocate (GtkWidget* _sender, GtkAllocation* allocation, gpointer self); +Controller* controller_new (InputView* input, ResultView* results); +Controller* controller_construct (GType object_type, InputView* input, ResultView* results); +HelpBox* help_box_new (Controller* controller); +HelpBox* help_box_construct (GType object_type, Controller* controller); +PeriodicTable* periodic_table_new (Controller* controller); +PeriodicTable* periodic_table_construct (GType object_type, Controller* controller); +static void __lambda50_ (Block1Data* _data1_); +static void ___lambda50__periodic_table_close (PeriodicTable* _sender, gpointer self); +static void __lambda51_ (NascMainWindow* self, GObject* s, GParamSpec* p); +void result_view_set_width (ResultView* self, gint width); +static void ___lambda51__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self); +static void nasc_main_window_help_toggle (NascMainWindow* self); +static void _nasc_main_window_help_toggle_gtk_toggle_button_toggled (GtkToggleButton* _sender, gpointer self); +static void __lambda52_ (NascMainWindow* self); +GType nasc_sheet_get_type (void) G_GNUC_CONST; +NascSheet* controller_add_sheet (Controller* self); +void result_view_clear (ResultView* self); +static void ___lambda52__input_view_new_trigger (InputView* _sender, gpointer self); +static void __lambda53_ (NascMainWindow* self); +static void ___lambda53__input_view_help (InputView* _sender, gpointer self); +static void __lambda54_ (NascMainWindow* self); +static void ___lambda54__help_box_close_help (HelpBox* _sender, gpointer self); +static void __lambda55_ (Block1Data* _data1_); +NascSheet* controller_get_actual_sheet (Controller* self); +static void _g_free0_ (gpointer var); +static void _g_slist_free__g_free0_ (GSList* self); +static void ___lambda55__gtk_button_clicked (GtkButton* _sender, gpointer self); +static void __lambda56_ (Block1Data* _data1_); +NascPasteBinDialog* nasc_paste_bin_dialog_new (GtkWindow* parent, Controller* controller); +NascPasteBinDialog* nasc_paste_bin_dialog_construct (GType object_type, GtkWindow* parent, Controller* controller); +GType nasc_paste_bin_dialog_get_type (void) G_GNUC_CONST; +static void ___lambda56__gtk_button_clicked (GtkButton* _sender, gpointer self); +static void __lambda57_ (Block1Data* _data1_); +static gboolean __lambda58_ (NascMainWindow* self); +void input_view_delete_characters (InputView* self, gint count); +static gboolean ___lambda58__gsource_func (gpointer self); +static void nasc_main_window_show_tutorial (NascMainWindow* self, GtkInfoBar* info_bar); +static void ___lambda57__controller_tutorial (Controller* _sender, gpointer self); +static void __lambda86_ (NascMainWindow* self); +static gboolean __lambda87_ (NascMainWindow* self); +static gboolean ___lambda87__gsource_func (gpointer self); +void periodic_table_init (PeriodicTable* self); +static void ___lambda86__controller_periodic (Controller* _sender, gpointer self); +static gboolean __lambda88_ (Block1Data* _data1_); +gboolean nasc_settings_get_show_tutorial (NascSettings* self); +static gboolean ___lambda88__gsource_func (gpointer self); +static Block2Data* block2_data_ref (Block2Data* _data2_); +static void block2_data_unref (void * _userdata_); +GType tutorial_get_type (void) G_GNUC_CONST; +Tutorial* tutorial_new (Controller* controller); +Tutorial* tutorial_construct (GType object_type, Controller* controller); +static void __lambda85_ (Block2Data* _data2_); +static void ___lambda85__tutorial_close (Tutorial* _sender, gpointer self); +void help_box_search_focus (HelpBox* self); +void nasc_settings_set_window_height (NascSettings* self, gint value); +void nasc_settings_set_window_width (NascSettings* self, gint value); +void nasc_settings_set_pane_position (NascSettings* self, gint value); +void nasc_settings_set_opening_x (NascSettings* self, gint value); +void nasc_settings_set_opening_y (NascSettings* self, gint value); +void nasc_settings_set_show_tutorial (NascSettings* self, gboolean value); +void controller_store_sheet_content (Controller* self); +static void nasc_main_window_finalize (GObject* obj); + + +static Block1Data* block1_data_ref (Block1Data* _data1_) { + g_atomic_int_inc (&_data1_->_ref_count_); + return _data1_; +} + + +static void block1_data_unref (void * _userdata_) { + Block1Data* _data1_; + _data1_ = (Block1Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) { + NascMainWindow* self; + self = _data1_->self; + _g_object_unref0 (_data1_->scroll); + _g_object_unref0 (_data1_->info_bar); + _g_object_unref0 (_data1_->main_box); + _g_object_unref0 (_data1_->export_popover); + _g_object_unref0 (self); + g_slice_free (Block1Data, _data1_); + } +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static gboolean _nasc_main_window_on_window_closing_gtk_widget_delete_event (GtkWidget* _sender, GdkEventAny* event, gpointer self) { + gboolean result; + result = nasc_main_window_on_window_closing ((NascMainWindow*) self); + return result; +} + + +static void __lambda48_ (Block1Data* _data1_) { + NascMainWindow* self; + self = _data1_->self; + gtk_widget_show_all ((GtkWidget*) _data1_->export_popover); +} + + +static void ___lambda48__gtk_button_clicked (GtkButton* _sender, gpointer self) { + __lambda48_ (self); +} + + +static void __lambda49_ (Block1Data* _data1_, GtkAllocation* alloc) { + NascMainWindow* self; + GtkAdjustment* v_adjust = NULL; + GtkAdjustment* _tmp0_ = NULL; + GtkAdjustment* _tmp1_ = NULL; + gdouble _tmp2_ = 0.0; + gdouble _tmp3_ = 0.0; + gdouble _tmp4_ = 0.0; + gdouble _tmp5_ = 0.0; + self = _data1_->self; + g_return_if_fail (alloc != NULL); + _tmp0_ = gtk_scrolled_window_get_vadjustment (_data1_->scroll); + _tmp1_ = _g_object_ref0 (_tmp0_); + v_adjust = _tmp1_; + _tmp2_ = gtk_adjustment_get_upper (v_adjust); + _tmp3_ = _tmp2_; + _tmp4_ = gtk_adjustment_get_page_size (v_adjust); + _tmp5_ = _tmp4_; + gtk_adjustment_set_value (v_adjust, _tmp3_ - _tmp5_); + _g_object_unref0 (v_adjust); +} + + +static void ___lambda49__gtk_widget_size_allocate (GtkWidget* _sender, GtkAllocation* allocation, gpointer self) { + __lambda49_ (self, allocation); +} + + +static void __lambda50_ (Block1Data* _data1_) { + NascMainWindow* self; + GtkStack* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + GtkSourceView* _tmp2_ = NULL; + self = _data1_->self; + _tmp0_ = self->priv->main_stack; + gtk_stack_set_visible_child (_tmp0_, (GtkWidget*) _data1_->main_box); + _tmp1_ = self->priv->input_box; + _tmp2_ = _tmp1_->source_view; + gtk_widget_grab_focus ((GtkWidget*) _tmp2_); +} + + +static void ___lambda50__periodic_table_close (PeriodicTable* _sender, gpointer self) { + __lambda50_ (self); +} + + +static void __lambda51_ (NascMainWindow* self, GObject* s, GParamSpec* p) { + ResultView* _tmp0_ = NULL; + GtkPaned* _tmp1_ = NULL; + gint _tmp2_ = 0; + GtkPaned* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + g_return_if_fail (s != NULL); + g_return_if_fail (p != NULL); + _tmp0_ = self->priv->result_box; + _tmp1_ = self->priv->pane; + _tmp2_ = gtk_widget_get_allocated_width ((GtkWidget*) _tmp1_); + _tmp3_ = self->priv->pane; + _tmp4_ = gtk_paned_get_position (_tmp3_); + _tmp5_ = _tmp4_; + result_view_set_width (_tmp0_, (_tmp2_ - _tmp5_) - 1); +} + + +static void ___lambda51__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) { + __lambda51_ ((NascMainWindow*) self, _sender, pspec); +} + + +static void _nasc_main_window_help_toggle_gtk_toggle_button_toggled (GtkToggleButton* _sender, gpointer self) { + nasc_main_window_help_toggle ((NascMainWindow*) self); +} + + +static void __lambda52_ (NascMainWindow* self) { + Controller* _tmp0_ = NULL; + NascSheet* _tmp1_ = NULL; + NascSheet* _tmp2_ = NULL; + ResultView* _tmp3_ = NULL; + _tmp0_ = self->priv->controller; + _tmp1_ = controller_add_sheet (_tmp0_); + _tmp2_ = _tmp1_; + _g_object_unref0 (_tmp2_); + _tmp3_ = self->priv->result_box; + result_view_clear (_tmp3_); +} + + +static void ___lambda52__input_view_new_trigger (InputView* _sender, gpointer self) { + __lambda52_ ((NascMainWindow*) self); +} + + +static void __lambda53_ (NascMainWindow* self) { + GtkToggleButton* _tmp0_ = NULL; + GtkToggleButton* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; + gboolean _tmp3_ = FALSE; + _tmp0_ = self->priv->help_button; + _tmp1_ = self->priv->help_button; + _tmp2_ = gtk_toggle_button_get_active (_tmp1_); + _tmp3_ = _tmp2_; + gtk_toggle_button_set_active (_tmp0_, !_tmp3_); + nasc_main_window_help_toggle (self); +} + + +static void ___lambda53__input_view_help (InputView* _sender, gpointer self) { + __lambda53_ ((NascMainWindow*) self); +} + + +static void __lambda54_ (NascMainWindow* self) { + GtkToggleButton* _tmp0_ = NULL; + GtkToggleButton* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; + gboolean _tmp3_ = FALSE; + _tmp0_ = self->priv->help_button; + _tmp1_ = self->priv->help_button; + _tmp2_ = gtk_toggle_button_get_active (_tmp1_); + _tmp3_ = _tmp2_; + gtk_toggle_button_set_active (_tmp0_, !_tmp3_); + nasc_main_window_help_toggle (self); +} + + +static void ___lambda54__help_box_close_help (HelpBox* _sender, gpointer self) { + __lambda54_ ((NascMainWindow*) self); +} + + +static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) { + gchar* result = NULL; + GError * _inner_error_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (old != NULL, NULL); + g_return_val_if_fail (replacement != NULL, NULL); + { + GRegex* regex = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + GRegex* _tmp3_ = NULL; + GRegex* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + GRegex* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + _tmp0_ = old; + _tmp1_ = g_regex_escape_string (_tmp0_, -1); + _tmp2_ = _tmp1_; + _tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_); + _tmp4_ = _tmp3_; + _g_free0 (_tmp2_); + regex = _tmp4_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch0_g_regex_error; + } + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp6_ = regex; + _tmp7_ = replacement; + _tmp8_ = g_regex_replace_literal (_tmp6_, self, (gssize) -1, 0, _tmp7_, 0, &_inner_error_); + _tmp5_ = _tmp8_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_regex_unref0 (regex); + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch0_g_regex_error; + } + _g_regex_unref0 (regex); + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp9_ = _tmp5_; + _tmp5_ = NULL; + result = _tmp9_; + _g_free0 (_tmp5_); + _g_regex_unref0 (regex); + return result; + } + goto __finally0; + __catch0_g_regex_error: + { + GError* e = NULL; + e = _inner_error_; + _inner_error_ = NULL; + g_assert_not_reached (); + _g_error_free0 (e); + } + __finally0: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } +} + + +static void _g_free0_ (gpointer var) { + var = (g_free (var), NULL); +} + + +static void _g_slist_free__g_free0_ (GSList* self) { + g_slist_foreach (self, (GFunc) _g_free0_, NULL); + g_slist_free (self); +} + + +static void __lambda55_ (Block1Data* _data1_) { + NascMainWindow* self; + gchar* sh = NULL; + Controller* _tmp0_ = NULL; + NascSheet* _tmp1_ = NULL; + NascSheet* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + GtkFileChooserDialog* chooser = NULL; + GtkFileChooserDialog* _tmp6_ = NULL; + GtkFileChooserDialog* _tmp7_ = NULL; + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + GtkFileChooserDialog* _tmp11_ = NULL; + gint _tmp12_ = 0; + GtkFileChooserDialog* _tmp32_ = NULL; + self = _data1_->self; + gtk_widget_hide ((GtkWidget*) _data1_->export_popover); + _tmp0_ = self->priv->controller; + _tmp1_ = controller_get_actual_sheet (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = granite_widgets_source_list_item_get_name ((GraniteWidgetsSourceListItem*) _tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = g_strdup (_tmp4_); + sh = _tmp5_; + _tmp6_ = (GtkFileChooserDialog*) gtk_file_chooser_dialog_new ("Choose a PDF save location", (GtkWindow*) self, GTK_FILE_CHOOSER_ACTION_SAVE, "_Cancel", GTK_RESPONSE_CANCEL, "_Save", GTK_RESPONSE_ACCEPT, NULL); + g_object_ref_sink (_tmp6_); + chooser = _tmp6_; + _tmp7_ = chooser; + _tmp8_ = sh; + _tmp9_ = g_strdup_printf ("%s.pdf", _tmp8_); + _tmp10_ = _tmp9_; + gtk_file_chooser_set_current_name ((GtkFileChooser*) _tmp7_, _tmp10_); + _g_free0 (_tmp10_); + _tmp11_ = chooser; + _tmp12_ = gtk_dialog_run ((GtkDialog*) _tmp11_); + if (_tmp12_ == ((gint) GTK_RESPONSE_ACCEPT)) { + GSList* uris = NULL; + GtkFileChooserDialog* _tmp13_ = NULL; + GSList* _tmp14_ = NULL; + GSList* _tmp15_ = NULL; + _tmp13_ = chooser; + _tmp14_ = gtk_file_chooser_get_uris ((GtkFileChooser*) _tmp13_); + uris = _tmp14_; + _tmp15_ = uris; + { + GSList* uri_collection = NULL; + GSList* uri_it = NULL; + uri_collection = _tmp15_; + for (uri_it = uri_collection; uri_it != NULL; uri_it = uri_it->next) { + const gchar* uri = NULL; + uri = (const gchar*) uri_it->data; + { + cairo_surface_t* canvas = NULL; + const gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gchar* _tmp20_ = NULL; + GtkPaned* _tmp21_ = NULL; + gint _tmp22_ = 0; + GtkPaned* _tmp23_ = NULL; + gint _tmp24_ = 0; + cairo_surface_t* _tmp25_ = NULL; + cairo_surface_t* _tmp26_ = NULL; + cairo_t* cr = NULL; + cairo_surface_t* _tmp27_ = NULL; + cairo_t* _tmp28_ = NULL; + GtkPaned* _tmp29_ = NULL; + cairo_t* _tmp30_ = NULL; + cairo_surface_t* _tmp31_ = NULL; + _tmp16_ = uri; + _tmp17_ = string_replace (_tmp16_, "file://", ""); + _tmp18_ = _tmp17_; + _tmp19_ = g_uri_unescape_string (_tmp18_, NULL); + _tmp20_ = _tmp19_; + _tmp21_ = self->priv->pane; + _tmp22_ = gtk_widget_get_allocated_width ((GtkWidget*) _tmp21_); + _tmp23_ = self->priv->pane; + _tmp24_ = gtk_widget_get_allocated_height ((GtkWidget*) _tmp23_); + _tmp25_ = cairo_pdf_surface_create (_tmp20_, (gdouble) _tmp22_, (gdouble) _tmp24_); + _tmp26_ = _tmp25_; + _g_free0 (_tmp20_); + _g_free0 (_tmp18_); + canvas = _tmp26_; + _tmp27_ = canvas; + _tmp28_ = cairo_create (_tmp27_); + cr = _tmp28_; + _tmp29_ = self->priv->pane; + _tmp30_ = cr; + gtk_widget_draw ((GtkWidget*) _tmp29_, _tmp30_); + _tmp31_ = canvas; + cairo_surface_finish (_tmp31_); + _cairo_destroy0 (cr); + _cairo_surface_destroy0 (canvas); + } + } + } + __g_slist_free__g_free0_0 (uris); + } + _tmp32_ = chooser; + g_signal_emit_by_name ((GtkDialog*) _tmp32_, "close"); + _g_object_unref0 (chooser); + _g_free0 (sh); +} + + +static void ___lambda55__gtk_button_clicked (GtkButton* _sender, gpointer self) { + __lambda55_ (self); +} + + +static void __lambda56_ (Block1Data* _data1_) { + NascMainWindow* self; + Controller* _tmp0_ = NULL; + NascPasteBinDialog* _tmp1_ = NULL; + NascPasteBinDialog* _tmp2_ = NULL; + self = _data1_->self; + gtk_widget_hide ((GtkWidget*) _data1_->export_popover); + _tmp0_ = self->priv->controller; + _tmp1_ = nasc_paste_bin_dialog_new ((GtkWindow*) self, _tmp0_); + g_object_ref_sink (_tmp1_); + _tmp2_ = _tmp1_; + _g_object_unref0 (_tmp2_); +} + + +static void ___lambda56__gtk_button_clicked (GtkButton* _sender, gpointer self) { + __lambda56_ (self); +} + + +static gboolean __lambda58_ (NascMainWindow* self) { + gboolean result = FALSE; + InputView* _tmp0_ = NULL; + _tmp0_ = self->priv->input_box; + input_view_delete_characters (_tmp0_, 10); + result = FALSE; + return result; +} + + +static gboolean ___lambda58__gsource_func (gpointer self) { + gboolean result; + result = __lambda58_ ((NascMainWindow*) self); + return result; +} + + +static void __lambda57_ (Block1Data* _data1_) { + NascMainWindow* self; + self = _data1_->self; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 10, ___lambda58__gsource_func, g_object_ref (self), g_object_unref); + nasc_main_window_show_tutorial (self, _data1_->info_bar); +} + + +static void ___lambda57__controller_tutorial (Controller* _sender, gpointer self) { + __lambda57_ (self); +} + + +static gboolean __lambda87_ (NascMainWindow* self) { + gboolean result = FALSE; + InputView* _tmp0_ = NULL; + _tmp0_ = self->priv->input_box; + input_view_delete_characters (_tmp0_, 6); + result = FALSE; + return result; +} + + +static gboolean ___lambda87__gsource_func (gpointer self) { + gboolean result; + result = __lambda87_ ((NascMainWindow*) self); + return result; +} + + +static void __lambda86_ (NascMainWindow* self) { + PeriodicTable* _tmp0_ = NULL; + GtkStack* _tmp1_ = NULL; + PeriodicTable* _tmp2_ = NULL; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 10, ___lambda87__gsource_func, g_object_ref (self), g_object_unref); + _tmp0_ = self->priv->periodic_box; + periodic_table_init (_tmp0_); + _tmp1_ = self->priv->main_stack; + _tmp2_ = self->priv->periodic_box; + gtk_stack_set_visible_child (_tmp1_, (GtkWidget*) _tmp2_); +} + + +static void ___lambda86__controller_periodic (Controller* _sender, gpointer self) { + __lambda86_ ((NascMainWindow*) self); +} + + +static gboolean __lambda88_ (Block1Data* _data1_) { + NascMainWindow* self; + gboolean result = FALSE; + NascSettings* _tmp0_ = NULL; + NascSettings* _tmp1_ = NULL; + gboolean _tmp2_ = FALSE; + gboolean _tmp3_ = FALSE; + gboolean _tmp4_ = FALSE; + self = _data1_->self; + _tmp0_ = nasc_settings_get_instance (); + _tmp1_ = _tmp0_; + _tmp2_ = nasc_settings_get_show_tutorial (_tmp1_); + _tmp3_ = _tmp2_; + _tmp4_ = _tmp3_; + _g_object_unref0 (_tmp1_); + if (_tmp4_) { + nasc_main_window_show_tutorial (self, _data1_->info_bar); + } + result = FALSE; + return result; +} + + +static gboolean ___lambda88__gsource_func (gpointer self) { + gboolean result; + result = __lambda88_ (self); + return result; +} + + +NascMainWindow* nasc_main_window_construct (GType object_type, NascNascApp* app) { + NascMainWindow * self = NULL; + Block1Data* _data1_; + NascNascApp* _tmp0_ = NULL; + NascNascApp* _tmp1_ = NULL; + NascNascApp* _tmp2_ = NULL; + gint x = 0; + NascSettings* _tmp3_ = NULL; + NascSettings* _tmp4_ = NULL; + gint _tmp5_ = 0; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + gint y = 0; + NascSettings* _tmp8_ = NULL; + NascSettings* _tmp9_ = NULL; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + gint _tmp12_ = 0; + gboolean _tmp13_ = FALSE; + gint _tmp14_ = 0; + NascSettings* _tmp26_ = NULL; + NascSettings* _tmp27_ = NULL; + gint _tmp28_ = 0; + gint _tmp29_ = 0; + NascSettings* _tmp30_ = NULL; + NascSettings* _tmp31_ = NULL; + gint _tmp32_ = 0; + gint _tmp33_ = 0; + GtkHeaderBar* toolbar = NULL; + GtkHeaderBar* _tmp34_ = NULL; + NascNascApp* _tmp35_ = NULL; + const gchar* _tmp36_ = NULL; + GtkToggleButton* _tmp37_ = NULL; + GtkToggleButton* _tmp38_ = NULL; + GtkImage* _tmp39_ = NULL; + GtkImage* _tmp40_ = NULL; + GtkToggleButton* _tmp41_ = NULL; + GtkButton* export_button = NULL; + GtkButton* _tmp42_ = NULL; + GtkPopover* _tmp43_ = NULL; + GtkButton* pdf_button = NULL; + const gchar* _tmp44_ = NULL; + GtkButton* _tmp45_ = NULL; + GtkStyleContext* _tmp46_ = NULL; + GtkButton* share_button = NULL; + const gchar* _tmp47_ = NULL; + GtkButton* _tmp48_ = NULL; + GtkStyleContext* _tmp49_ = NULL; + GtkBox* export_box = NULL; + GtkBox* _tmp50_ = NULL; + GtkToggleButton* _tmp51_ = NULL; + GtkStack* _tmp52_ = NULL; + GtkBox* _tmp53_ = NULL; + GtkStack* _tmp54_ = NULL; + GtkStack* _tmp55_ = NULL; + GtkInfoBar* _tmp56_ = NULL; + GtkStack* _tmp57_ = NULL; + InputView* _tmp58_ = NULL; + ResultView* _tmp59_ = NULL; + GtkPaned* content_pane = NULL; + GtkPaned* _tmp60_ = NULL; + GtkStack* _tmp61_ = NULL; + ResultView* _tmp62_ = NULL; + GtkPaned* _tmp63_ = NULL; + GtkPaned* _tmp64_ = NULL; + GtkPaned* _tmp65_ = NULL; + InputView* _tmp66_ = NULL; + GtkPaned* _tmp67_ = NULL; + GtkStack* _tmp68_ = NULL; + GtkPaned* _tmp69_ = NULL; + NascSettings* _tmp70_ = NULL; + NascSettings* _tmp71_ = NULL; + gint _tmp72_ = 0; + gint _tmp73_ = 0; + GtkScrolledWindow* _tmp74_ = NULL; + InputView* _tmp75_ = NULL; + GtkPaned* _tmp76_ = NULL; + InputView* _tmp77_ = NULL; + ResultView* _tmp78_ = NULL; + Controller* _tmp79_ = NULL; + Controller* _tmp80_ = NULL; + HelpBox* _tmp81_ = NULL; + GtkStack* _tmp82_ = NULL; + HelpBox* _tmp83_ = NULL; + Controller* _tmp84_ = NULL; + PeriodicTable* _tmp85_ = NULL; + PeriodicTable* _tmp86_ = NULL; + GtkStack* _tmp87_ = NULL; + PeriodicTable* _tmp88_ = NULL; + GtkPaned* _tmp89_ = NULL; + GtkToggleButton* _tmp90_ = NULL; + InputView* _tmp91_ = NULL; + InputView* _tmp92_ = NULL; + HelpBox* _tmp93_ = NULL; + Controller* _tmp94_ = NULL; + Controller* _tmp95_ = NULL; + ResultView* _tmp96_ = NULL; + GtkPaned* _tmp97_ = NULL; + gint _tmp98_ = 0; + GtkPaned* _tmp99_ = NULL; + gint _tmp100_ = 0; + gint _tmp101_ = 0; + g_return_val_if_fail (app != NULL, NULL); + _data1_ = g_slice_new0 (Block1Data); + _data1_->_ref_count_ = 1; + self = (NascMainWindow*) g_object_new (object_type, NULL); + _data1_->self = g_object_ref (self); + _tmp0_ = app; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->app); + self->priv->app = _tmp1_; + _tmp2_ = app; + gtk_window_set_application ((GtkWindow*) self, (GtkApplication*) _tmp2_); + gtk_window_set_icon_name ((GtkWindow*) self, "nasc"); + _tmp3_ = nasc_settings_get_instance (); + _tmp4_ = _tmp3_; + _tmp5_ = nasc_settings_get_opening_x (_tmp4_); + _tmp6_ = _tmp5_; + _tmp7_ = _tmp6_; + _g_object_unref0 (_tmp4_); + x = _tmp7_; + _tmp8_ = nasc_settings_get_instance (); + _tmp9_ = _tmp8_; + _tmp10_ = nasc_settings_get_opening_y (_tmp9_); + _tmp11_ = _tmp10_; + _tmp12_ = _tmp11_; + _g_object_unref0 (_tmp9_); + y = _tmp12_; + _tmp14_ = x; + if (_tmp14_ != -1) { + gint _tmp15_ = 0; + _tmp15_ = y; + _tmp13_ = _tmp15_ != -1; + } else { + _tmp13_ = FALSE; + } + if (_tmp13_) { + gint _tmp16_ = 0; + gint _tmp17_ = 0; + _tmp16_ = x; + _tmp17_ = y; + gtk_window_move ((GtkWindow*) self, _tmp16_, _tmp17_); + } else { + gint _tmp18_ = 0; + gint _tmp19_ = 0; + gint _tmp20_ = 0; + gint _tmp21_ = 0; + gint _tmp22_ = 0; + gint _tmp23_ = 0; + gint _tmp24_ = 0; + gint _tmp25_ = 0; + _tmp18_ = gdk_screen_width (); + g_object_get ((GtkWindow*) self, "default-width", &_tmp19_, NULL); + _tmp20_ = _tmp19_; + x = (_tmp18_ - _tmp20_) / 2; + _tmp21_ = gdk_screen_height (); + g_object_get ((GtkWindow*) self, "default-height", &_tmp22_, NULL); + _tmp23_ = _tmp22_; + y = (_tmp21_ - _tmp23_) / 2; + _tmp24_ = x; + _tmp25_ = y; + gtk_window_move ((GtkWindow*) self, _tmp24_, _tmp25_); + } + _tmp26_ = nasc_settings_get_instance (); + _tmp27_ = _tmp26_; + _tmp28_ = nasc_settings_get_window_width (_tmp27_); + _tmp29_ = _tmp28_; + _tmp30_ = nasc_settings_get_instance (); + _tmp31_ = _tmp30_; + _tmp32_ = nasc_settings_get_window_height (_tmp31_); + _tmp33_ = _tmp32_; + gtk_window_set_default_size ((GtkWindow*) self, _tmp29_, _tmp33_); + _g_object_unref0 (_tmp31_); + _g_object_unref0 (_tmp27_); + g_signal_connect_object ((GtkWidget*) self, "delete-event", (GCallback) _nasc_main_window_on_window_closing_gtk_widget_delete_event, self, 0); + _tmp34_ = (GtkHeaderBar*) gtk_header_bar_new (); + g_object_ref_sink (_tmp34_); + toolbar = _tmp34_; + _tmp35_ = app; + _tmp36_ = ((GraniteApplication*) _tmp35_)->program_name; + gtk_header_bar_set_title (toolbar, _tmp36_); + gtk_window_set_titlebar ((GtkWindow*) self, (GtkWidget*) toolbar); + gtk_header_bar_set_show_close_button (toolbar, TRUE); + _tmp37_ = (GtkToggleButton*) gtk_toggle_button_new (); + g_object_ref_sink (_tmp37_); + _g_object_unref0 (self->priv->help_button); + self->priv->help_button = _tmp37_; + _tmp38_ = self->priv->help_button; + _tmp39_ = (GtkImage*) gtk_image_new_from_icon_name ("help-contents", GTK_ICON_SIZE_LARGE_TOOLBAR); + g_object_ref_sink (_tmp39_); + _tmp40_ = _tmp39_; + gtk_button_set_image ((GtkButton*) _tmp38_, (GtkWidget*) _tmp40_); + _g_object_unref0 (_tmp40_); + _tmp41_ = self->priv->help_button; + gtk_widget_set_tooltip_markup ((GtkWidget*) _tmp41_, "Open help"); + _tmp42_ = (GtkButton*) gtk_button_new_from_icon_name ("document-export", GTK_ICON_SIZE_LARGE_TOOLBAR); + g_object_ref_sink (_tmp42_); + export_button = _tmp42_; + gtk_widget_set_tooltip_markup ((GtkWidget*) export_button, "Export…"); + _tmp43_ = (GtkPopover*) gtk_popover_new ((GtkWidget*) export_button); + g_object_ref_sink (_tmp43_); + _data1_->export_popover = _tmp43_; + _tmp44_ = _ ("Export to PDF"); + _tmp45_ = (GtkButton*) gtk_button_new_with_label (_tmp44_); + g_object_ref_sink (_tmp45_); + pdf_button = _tmp45_; + _tmp46_ = gtk_widget_get_style_context ((GtkWidget*) pdf_button); + gtk_style_context_add_class (_tmp46_, "flat"); + g_object_set ((GtkWidget*) pdf_button, "margin", 5, NULL); + _tmp47_ = _ ("Share via PasteBin"); + _tmp48_ = (GtkButton*) gtk_button_new_with_label (_tmp47_); + g_object_ref_sink (_tmp48_); + share_button = _tmp48_; + _tmp49_ = gtk_widget_get_style_context ((GtkWidget*) share_button); + gtk_style_context_add_class (_tmp49_, "flat"); + g_object_set ((GtkWidget*) share_button, "margin", 5, NULL); + gtk_widget_set_margin_top ((GtkWidget*) share_button, 0); + _tmp50_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); + g_object_ref_sink (_tmp50_); + export_box = _tmp50_; + gtk_box_pack_start (export_box, (GtkWidget*) pdf_button, TRUE, TRUE, (guint) 0); + gtk_box_pack_start (export_box, (GtkWidget*) share_button, TRUE, TRUE, (guint) 0); + gtk_container_add ((GtkContainer*) _data1_->export_popover, (GtkWidget*) export_box); + g_signal_connect_data (export_button, "clicked", (GCallback) ___lambda48__gtk_button_clicked, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0); + gtk_header_bar_pack_end (toolbar, (GtkWidget*) export_button); + _tmp51_ = self->priv->help_button; + gtk_header_bar_pack_end (toolbar, (GtkWidget*) _tmp51_); + _tmp52_ = (GtkStack*) gtk_stack_new (); + g_object_ref_sink (_tmp52_); + _g_object_unref0 (self->priv->main_stack); + self->priv->main_stack = _tmp52_; + _tmp53_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); + g_object_ref_sink (_tmp53_); + _data1_->main_box = _tmp53_; + _tmp54_ = self->priv->main_stack; + gtk_stack_add_named (_tmp54_, (GtkWidget*) _data1_->main_box, "main"); + _tmp55_ = self->priv->main_stack; + gtk_container_add ((GtkContainer*) self, (GtkWidget*) _tmp55_); + _tmp56_ = (GtkInfoBar*) gtk_info_bar_new (); + g_object_ref_sink (_tmp56_); + _data1_->info_bar = _tmp56_; + gtk_info_bar_set_message_type (_data1_->info_bar, GTK_MESSAGE_QUESTION); + gtk_widget_set_no_show_all ((GtkWidget*) _data1_->info_bar, TRUE); + gtk_widget_hide ((GtkWidget*) _data1_->info_bar); + gtk_box_pack_start (_data1_->main_box, (GtkWidget*) _data1_->info_bar, FALSE, TRUE, (guint) 0); + _tmp57_ = (GtkStack*) gtk_stack_new (); + g_object_ref_sink (_tmp57_); + _g_object_unref0 (self->priv->right_stack); + self->priv->right_stack = _tmp57_; + _tmp58_ = input_view_new (); + g_object_ref_sink (_tmp58_); + _g_object_unref0 (self->priv->input_box); + self->priv->input_box = _tmp58_; + _tmp59_ = result_view_new (); + g_object_ref_sink (_tmp59_); + _g_object_unref0 (self->priv->result_box); + self->priv->result_box = _tmp59_; + _tmp60_ = (GtkPaned*) gtk_paned_new (GTK_ORIENTATION_HORIZONTAL); + g_object_ref_sink (_tmp60_); + content_pane = _tmp60_; + gtk_paned_set_position (content_pane, 150); + _tmp61_ = self->priv->right_stack; + _tmp62_ = self->priv->result_box; + gtk_stack_add_named (_tmp61_, (GtkWidget*) _tmp62_, "result"); + _tmp63_ = (GtkPaned*) gtk_paned_new (GTK_ORIENTATION_HORIZONTAL); + g_object_ref_sink (_tmp63_); + _g_object_unref0 (self->priv->pane); + self->priv->pane = _tmp63_; + _tmp64_ = self->priv->pane; + g_object_set ((GtkWidget*) _tmp64_, "expand", TRUE, NULL); + _tmp65_ = self->priv->pane; + _tmp66_ = self->priv->input_box; + gtk_paned_pack1 (_tmp65_, (GtkWidget*) _tmp66_, TRUE, FALSE); + _tmp67_ = self->priv->pane; + _tmp68_ = self->priv->right_stack; + gtk_paned_pack2 (_tmp67_, (GtkWidget*) _tmp68_, TRUE, FALSE); + _tmp69_ = self->priv->pane; + _tmp70_ = nasc_settings_get_instance (); + _tmp71_ = _tmp70_; + _tmp72_ = nasc_settings_get_pane_position (_tmp71_); + _tmp73_ = _tmp72_; + gtk_paned_set_position (_tmp69_, _tmp73_); + _g_object_unref0 (_tmp71_); + _tmp74_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL); + g_object_ref_sink (_tmp74_); + _data1_->scroll = _tmp74_; + gtk_scrolled_window_set_policy (_data1_->scroll, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + _tmp75_ = self->priv->input_box; + g_signal_connect_data ((GtkWidget*) _tmp75_, "size-allocate", (GCallback) ___lambda49__gtk_widget_size_allocate, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0); + _tmp76_ = self->priv->pane; + gtk_container_add ((GtkContainer*) _data1_->scroll, (GtkWidget*) _tmp76_); + gtk_paned_pack2 (content_pane, (GtkWidget*) _data1_->scroll, TRUE, FALSE); + gtk_box_pack_start (_data1_->main_box, (GtkWidget*) content_pane, TRUE, TRUE, (guint) 0); + _tmp77_ = self->priv->input_box; + _tmp78_ = self->priv->result_box; + _tmp79_ = controller_new (_tmp77_, _tmp78_); + _g_object_unref0 (self->priv->controller); + self->priv->controller = _tmp79_; + _tmp80_ = self->priv->controller; + _tmp81_ = help_box_new (_tmp80_); + g_object_ref_sink (_tmp81_); + _g_object_unref0 (self->priv->help_box); + self->priv->help_box = _tmp81_; + _tmp82_ = self->priv->right_stack; + _tmp83_ = self->priv->help_box; + gtk_stack_add_named (_tmp82_, (GtkWidget*) _tmp83_, "help"); + _tmp84_ = self->priv->controller; + _tmp85_ = periodic_table_new (_tmp84_); + g_object_ref_sink (_tmp85_); + _g_object_unref0 (self->priv->periodic_box); + self->priv->periodic_box = _tmp85_; + _tmp86_ = self->priv->periodic_box; + g_signal_connect_data (_tmp86_, "close", (GCallback) ___lambda50__periodic_table_close, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0); + _tmp87_ = self->priv->main_stack; + _tmp88_ = self->priv->periodic_box; + gtk_stack_add_named (_tmp87_, (GtkWidget*) _tmp88_, "periodic"); + _tmp89_ = self->priv->pane; + g_signal_connect_object ((GObject*) _tmp89_, "notify::position", (GCallback) ___lambda51__g_object_notify, self, 0); + _tmp90_ = self->priv->help_button; + g_signal_connect_object (_tmp90_, "toggled", (GCallback) _nasc_main_window_help_toggle_gtk_toggle_button_toggled, self, 0); + _tmp91_ = self->priv->input_box; + g_signal_connect_object (_tmp91_, "new-trigger", (GCallback) ___lambda52__input_view_new_trigger, self, 0); + _tmp92_ = self->priv->input_box; + g_signal_connect_object (_tmp92_, "help", (GCallback) ___lambda53__input_view_help, self, 0); + _tmp93_ = self->priv->help_box; + g_signal_connect_object (_tmp93_, "close-help", (GCallback) ___lambda54__help_box_close_help, self, 0); + g_signal_connect_data (pdf_button, "clicked", (GCallback) ___lambda55__gtk_button_clicked, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0); + g_signal_connect_data (share_button, "clicked", (GCallback) ___lambda56__gtk_button_clicked, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0); + _tmp94_ = self->priv->controller; + g_signal_connect_data (_tmp94_, "tutorial", (GCallback) ___lambda57__controller_tutorial, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0); + _tmp95_ = self->priv->controller; + g_signal_connect_object (_tmp95_, "periodic", (GCallback) ___lambda86__controller_periodic, self, 0); + gtk_widget_show_all ((GtkWidget*) self); + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 500, ___lambda88__gsource_func, block1_data_ref (_data1_), block1_data_unref); + _tmp96_ = self->priv->result_box; + _tmp97_ = self->priv->pane; + _tmp98_ = gtk_widget_get_allocated_width ((GtkWidget*) _tmp97_); + _tmp99_ = self->priv->pane; + _tmp100_ = gtk_paned_get_position (_tmp99_); + _tmp101_ = _tmp100_; + result_view_set_width (_tmp96_, (_tmp98_ - _tmp101_) - 1); + _g_object_unref0 (content_pane); + _g_object_unref0 (export_box); + _g_object_unref0 (share_button); + _g_object_unref0 (pdf_button); + _g_object_unref0 (export_button); + _g_object_unref0 (toolbar); + block1_data_unref (_data1_); + _data1_ = NULL; + return self; +} + + +NascMainWindow* nasc_main_window_new (NascNascApp* app) { + return nasc_main_window_construct (NASC_TYPE_MAIN_WINDOW, app); +} + + +static Block2Data* block2_data_ref (Block2Data* _data2_) { + g_atomic_int_inc (&_data2_->_ref_count_); + return _data2_; +} + + +static void block2_data_unref (void * _userdata_) { + Block2Data* _data2_; + _data2_ = (Block2Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data2_->_ref_count_)) { + NascMainWindow* self; + self = _data2_->self; + _g_object_unref0 (_data2_->info_bar); + _g_object_unref0 (self); + g_slice_free (Block2Data, _data2_); + } +} + + +static void __lambda85_ (Block2Data* _data2_) { + NascMainWindow* self; + GtkInfoBar* _tmp0_ = NULL; + GtkInfoBar* _tmp1_ = NULL; + self = _data2_->self; + _tmp0_ = _data2_->info_bar; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp0_, TRUE); + _tmp1_ = _data2_->info_bar; + gtk_widget_hide ((GtkWidget*) _tmp1_); +} + + +static void ___lambda85__tutorial_close (Tutorial* _sender, gpointer self) { + __lambda85_ (self); +} + + +static void nasc_main_window_show_tutorial (NascMainWindow* self, GtkInfoBar* info_bar) { + Block2Data* _data2_; + GtkInfoBar* _tmp0_ = NULL; + GtkInfoBar* _tmp1_ = NULL; + GtkContainer* content = NULL; + GtkInfoBar* _tmp2_ = NULL; + GtkContainer* _tmp3_ = NULL; + GtkContainer* _tmp4_ = NULL; + GtkContainer* _tmp5_ = NULL; + GList* _tmp6_ = NULL; + Tutorial* tut = NULL; + Controller* _tmp8_ = NULL; + Tutorial* _tmp9_ = NULL; + GtkContainer* _tmp10_ = NULL; + GtkInfoBar* _tmp11_ = NULL; + GtkInfoBar* _tmp12_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (info_bar != NULL); + _data2_ = g_slice_new0 (Block2Data); + _data2_->_ref_count_ = 1; + _data2_->self = g_object_ref (self); + _tmp0_ = info_bar; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (_data2_->info_bar); + _data2_->info_bar = _tmp1_; + _tmp2_ = _data2_->info_bar; + _tmp3_ = gtk_info_bar_get_content_area (_tmp2_); + _tmp4_ = _g_object_ref0 (_tmp3_); + content = _tmp4_; + _tmp5_ = content; + _tmp6_ = gtk_container_get_children (_tmp5_); + { + GList* w_collection = NULL; + GList* w_it = NULL; + w_collection = _tmp6_; + for (w_it = w_collection; w_it != NULL; w_it = w_it->next) { + GtkWidget* w = NULL; + w = (GtkWidget*) w_it->data; + { + GtkWidget* _tmp7_ = NULL; + _tmp7_ = w; + gtk_widget_destroy (_tmp7_); + } + } + _g_list_free0 (w_collection); + } + _tmp8_ = self->priv->controller; + _tmp9_ = tutorial_new (_tmp8_); + g_object_ref_sink (_tmp9_); + tut = _tmp9_; + _tmp10_ = content; + gtk_container_add (_tmp10_, (GtkWidget*) tut); + g_signal_connect_data (tut, "close", (GCallback) ___lambda85__tutorial_close, block2_data_ref (_data2_), (GClosureNotify) block2_data_unref, 0); + _tmp11_ = _data2_->info_bar; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp11_, FALSE); + _tmp12_ = _data2_->info_bar; + gtk_widget_show_all ((GtkWidget*) _tmp12_); + _g_object_unref0 (tut); + _g_object_unref0 (content); + block2_data_unref (_data2_); + _data2_ = NULL; +} + + +static void nasc_main_window_help_toggle (NascMainWindow* self) { + GtkToggleButton* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; + gboolean _tmp2_ = FALSE; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->help_button; + _tmp1_ = gtk_toggle_button_get_active (_tmp0_); + _tmp2_ = _tmp1_; + if (_tmp2_) { + GtkStack* _tmp3_ = NULL; + GtkStack* _tmp4_ = NULL; + HelpBox* _tmp5_ = NULL; + _tmp3_ = self->priv->right_stack; + gtk_stack_set_transition_type (_tmp3_, GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT); + _tmp4_ = self->priv->right_stack; + gtk_stack_set_visible_child_name (_tmp4_, "help"); + _tmp5_ = self->priv->help_box; + help_box_search_focus (_tmp5_); + } else { + GtkStack* _tmp6_ = NULL; + GtkStack* _tmp7_ = NULL; + InputView* _tmp8_ = NULL; + GtkSourceView* _tmp9_ = NULL; + _tmp6_ = self->priv->right_stack; + gtk_stack_set_transition_type (_tmp6_, GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT); + _tmp7_ = self->priv->right_stack; + gtk_stack_set_visible_child_name (_tmp7_, "result"); + _tmp8_ = self->priv->input_box; + _tmp9_ = _tmp8_->source_view; + gtk_widget_grab_focus ((GtkWidget*) _tmp9_); + } +} + + +static gboolean nasc_main_window_on_window_closing (NascMainWindow* self) { + gboolean result = FALSE; + gint width = 0; + gint height = 0; + gint _tmp0_ = 0; + gint _tmp1_ = 0; + NascSettings* _tmp2_ = NULL; + NascSettings* _tmp3_ = NULL; + gint _tmp4_ = 0; + NascSettings* _tmp5_ = NULL; + NascSettings* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint pane_width = 0; + GtkPaned* _tmp8_ = NULL; + gint _tmp9_ = 0; + NascSettings* _tmp10_ = NULL; + NascSettings* _tmp11_ = NULL; + gint _tmp12_ = 0; + gint root_x = 0; + gint root_y = 0; + gint _tmp13_ = 0; + gint _tmp14_ = 0; + NascSettings* _tmp15_ = NULL; + NascSettings* _tmp16_ = NULL; + gint _tmp17_ = 0; + NascSettings* _tmp18_ = NULL; + NascSettings* _tmp19_ = NULL; + gint _tmp20_ = 0; + NascSettings* _tmp21_ = NULL; + NascSettings* _tmp22_ = NULL; + gboolean _tmp23_ = FALSE; + gboolean _tmp24_ = FALSE; + gboolean _tmp25_ = FALSE; + Controller* _tmp28_ = NULL; + g_return_val_if_fail (self != NULL, FALSE); + gtk_window_get_size ((GtkWindow*) self, &_tmp0_, &_tmp1_); + width = _tmp0_; + height = _tmp1_; + _tmp2_ = nasc_settings_get_instance (); + _tmp3_ = _tmp2_; + _tmp4_ = height; + nasc_settings_set_window_height (_tmp3_, _tmp4_); + _g_object_unref0 (_tmp3_); + _tmp5_ = nasc_settings_get_instance (); + _tmp6_ = _tmp5_; + _tmp7_ = width; + nasc_settings_set_window_width (_tmp6_, _tmp7_); + _g_object_unref0 (_tmp6_); + _tmp8_ = self->priv->pane; + _tmp9_ = gtk_paned_get_position (_tmp8_); + pane_width = _tmp9_; + _tmp10_ = nasc_settings_get_instance (); + _tmp11_ = _tmp10_; + _tmp12_ = pane_width; + nasc_settings_set_pane_position (_tmp11_, _tmp12_); + _g_object_unref0 (_tmp11_); + gtk_window_get_position ((GtkWindow*) self, &_tmp13_, &_tmp14_); + root_x = _tmp13_; + root_y = _tmp14_; + _tmp15_ = nasc_settings_get_instance (); + _tmp16_ = _tmp15_; + _tmp17_ = root_x; + nasc_settings_set_opening_x (_tmp16_, _tmp17_); + _g_object_unref0 (_tmp16_); + _tmp18_ = nasc_settings_get_instance (); + _tmp19_ = _tmp18_; + _tmp20_ = root_y; + nasc_settings_set_opening_y (_tmp19_, _tmp20_); + _g_object_unref0 (_tmp19_); + _tmp21_ = nasc_settings_get_instance (); + _tmp22_ = _tmp21_; + _tmp23_ = nasc_settings_get_show_tutorial (_tmp22_); + _tmp24_ = _tmp23_; + _tmp25_ = _tmp24_; + _g_object_unref0 (_tmp22_); + if (_tmp25_) { + NascSettings* _tmp26_ = NULL; + NascSettings* _tmp27_ = NULL; + _tmp26_ = nasc_settings_get_instance (); + _tmp27_ = _tmp26_; + nasc_settings_set_show_tutorial (_tmp27_, FALSE); + _g_object_unref0 (_tmp27_); + } + _tmp28_ = self->priv->controller; + controller_store_sheet_content (_tmp28_); + result = FALSE; + return result; +} + + +static void nasc_main_window_class_init (NascMainWindowClass * klass) { + nasc_main_window_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (NascMainWindowPrivate)); + G_OBJECT_CLASS (klass)->finalize = nasc_main_window_finalize; +} + + +static void nasc_main_window_instance_init (NascMainWindow * self) { + self->priv = NASC_MAIN_WINDOW_GET_PRIVATE (self); +} + + +static void nasc_main_window_finalize (GObject* obj) { + NascMainWindow * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, NASC_TYPE_MAIN_WINDOW, NascMainWindow); + _g_object_unref0 (self->priv->app); + _g_object_unref0 (self->priv->pane); + _g_object_unref0 (self->priv->controller); + _g_object_unref0 (self->priv->input_box); + _g_object_unref0 (self->priv->result_box); + _g_object_unref0 (self->priv->help_box); + _g_object_unref0 (self->priv->periodic_box); + _g_object_unref0 (self->priv->help_button); + _g_object_unref0 (self->priv->main_stack); + _g_object_unref0 (self->priv->right_stack); + G_OBJECT_CLASS (nasc_main_window_parent_class)->finalize (obj); +} + + +GType nasc_main_window_get_type (void) { + static volatile gsize nasc_main_window_type_id__volatile = 0; + if (g_once_init_enter (&nasc_main_window_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascMainWindowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_main_window_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascMainWindow), 0, (GInstanceInitFunc) nasc_main_window_instance_init, NULL }; + GType nasc_main_window_type_id; + nasc_main_window_type_id = g_type_register_static (gtk_window_get_type (), "NascMainWindow", &g_define_type_info, 0); + g_once_init_leave (&nasc_main_window_type_id__volatile, nasc_main_window_type_id); + } + return nasc_main_window_type_id__volatile; +} + + + diff -Nru nasc-0.2/build/src/Nasc.c nasc-0.3/build/src/Nasc.c --- nasc-0.2/build/src/Nasc.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/Nasc.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,313 @@ +/* Nasc.c generated by valac 0.32.1, the Vala compiler + * generated from Nasc.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include + + +#define NASC_TYPE_NASC_APP (nasc_nasc_app_get_type ()) +#define NASC_NASC_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NASC_TYPE_NASC_APP, NascNascApp)) +#define NASC_NASC_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NASC_TYPE_NASC_APP, NascNascAppClass)) +#define NASC_IS_NASC_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NASC_TYPE_NASC_APP)) +#define NASC_IS_NASC_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NASC_TYPE_NASC_APP)) +#define NASC_NASC_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NASC_TYPE_NASC_APP, NascNascAppClass)) + +typedef struct _NascNascApp NascNascApp; +typedef struct _NascNascAppClass NascNascAppClass; +typedef struct _NascNascAppPrivate NascNascAppPrivate; + +#define NASC_TYPE_MAIN_WINDOW (nasc_main_window_get_type ()) +#define NASC_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NASC_TYPE_MAIN_WINDOW, NascMainWindow)) +#define NASC_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NASC_TYPE_MAIN_WINDOW, NascMainWindowClass)) +#define NASC_IS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NASC_TYPE_MAIN_WINDOW)) +#define NASC_IS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NASC_TYPE_MAIN_WINDOW)) +#define NASC_MAIN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NASC_TYPE_MAIN_WINDOW, NascMainWindowClass)) + +typedef struct _NascMainWindow NascMainWindow; +typedef struct _NascMainWindowClass NascMainWindowClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +#define _g_free0(var) (var = (g_free (var), NULL)) + +struct _NascNascApp { + GraniteApplication parent_instance; + NascNascAppPrivate * priv; + gchar** args; + gint args_length1; +}; + +struct _NascNascAppClass { + GraniteApplicationClass parent_class; +}; + +struct _NascNascAppPrivate { + NascMainWindow* window; +}; + + +static gpointer nasc_nasc_app_parent_class = NULL; + +GType nasc_nasc_app_get_type (void) G_GNUC_CONST; +GType nasc_main_window_get_type (void) G_GNUC_CONST; +#define NASC_NASC_APP_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NASC_TYPE_NASC_APP, NascNascAppPrivate)) +enum { + NASC_NASC_APP_DUMMY_PROPERTY +}; +NascNascApp* nasc_nasc_app_new (void); +NascNascApp* nasc_nasc_app_construct (GType object_type); +static void nasc_nasc_app_real_activate (GApplication* base); +NascMainWindow* nasc_main_window_new (NascNascApp* app); +NascMainWindow* nasc_main_window_construct (GType object_type, NascNascApp* app); +void nasc_nasc_app_main (gchar** args, int args_length1); +static gchar** _vala_array_dup1 (gchar** self, int length); +static GObject * nasc_nasc_app_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties); +#define CONSTANTS_DATADIR "/usr/share/nasc" +#define CONSTANTS_PKGDATADIR "/usr/share/nasc" +#define CONSTANTS_RELEASE_NAME "nasc" +#define CONSTANTS_VERSION "0.2" +#define CONSTANTS_VERSION_INFO "Release" +static void nasc_nasc_app_finalize (GObject* obj); +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func); +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func); + + +NascNascApp* nasc_nasc_app_construct (GType object_type) { + NascNascApp * self = NULL; + GraniteServicesLogLevel _tmp0_ = 0; + GraniteServicesLogLevel _tmp1_ = 0; + self = (NascNascApp*) granite_application_construct (object_type); + granite_services_logger_initialize ("NaSC"); + _tmp0_ = granite_services_logger_get_DisplayLevel (); + _tmp1_ = _tmp0_; + granite_services_logger_set_DisplayLevel (GRANITE_SERVICES_LOG_LEVEL_ERROR); + return self; +} + + +NascNascApp* nasc_nasc_app_new (void) { + return nasc_nasc_app_construct (NASC_TYPE_NASC_APP); +} + + +static void nasc_nasc_app_real_activate (GApplication* base) { + NascNascApp * self; + GList* _tmp0_ = NULL; + self = (NascNascApp*) base; + _tmp0_ = gtk_application_get_windows ((GtkApplication*) self); + if (_tmp0_ == NULL) { + NascMainWindow* _tmp1_ = NULL; + _tmp1_ = nasc_main_window_new (self); + g_object_ref_sink (_tmp1_); + _g_object_unref0 (self->priv->window); + self->priv->window = _tmp1_; + } else { + NascMainWindow* _tmp2_ = NULL; + _tmp2_ = self->priv->window; + gtk_window_present ((GtkWindow*) _tmp2_); + } +} + + +static gchar** _vala_array_dup1 (gchar** self, int length) { + gchar** result; + int i; + result = g_new0 (gchar*, length + 1); + for (i = 0; i < length; i++) { + gchar* _tmp0_ = NULL; + _tmp0_ = g_strdup (self[i]); + result[i] = _tmp0_; + } + return result; +} + + +void nasc_nasc_app_main (gchar** args, int args_length1) { + NascNascApp* app = NULL; + NascNascApp* _tmp0_ = NULL; + gchar** _tmp1_ = NULL; + gint _tmp1__length1 = 0; + gchar** _tmp2_ = NULL; + gint _tmp2__length1 = 0; + gchar** _tmp3_ = NULL; + gint _tmp3__length1 = 0; + _tmp0_ = nasc_nasc_app_new (); + app = _tmp0_; + _tmp1_ = args; + _tmp1__length1 = args_length1; + _tmp2_ = (_tmp1_ != NULL) ? _vala_array_dup1 (_tmp1_, _tmp1__length1) : ((gpointer) _tmp1_); + _tmp2__length1 = _tmp1__length1; + app->args = (_vala_array_free (app->args, app->args_length1, (GDestroyNotify) g_free), NULL); + app->args = _tmp2_; + app->args_length1 = _tmp2__length1; + _tmp3_ = args; + _tmp3__length1 = args_length1; + granite_application_run ((GraniteApplication*) app, _tmp3_, _tmp3__length1); + _g_object_unref0 (app); +} + + +int main (int argc, char ** argv) { +#if !GLIB_CHECK_VERSION (2,32,0) + g_thread_init (NULL); +#endif +#if !GLIB_CHECK_VERSION (2,35,0) + g_type_init (); +#endif + nasc_nasc_app_main (argv, argc); + return 0; +} + + +static GObject * nasc_nasc_app_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties) { + GObject * obj; + GObjectClass * parent_class; + NascNascApp * self; + gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + gchar** _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + parent_class = G_OBJECT_CLASS (nasc_nasc_app_parent_class); + obj = parent_class->constructor (type, n_construct_properties, construct_properties); + self = G_TYPE_CHECK_INSTANCE_CAST (obj, NASC_TYPE_NASC_APP, NascNascApp); + _tmp0_ = g_strdup ("NaSC"); + _g_free0 (((GraniteApplication*) self)->program_name); + ((GraniteApplication*) self)->program_name = _tmp0_; + _tmp1_ = g_strdup ("nasc"); + _g_free0 (((GraniteApplication*) self)->exec_name); + ((GraniteApplication*) self)->exec_name = _tmp1_; + _tmp2_ = g_strdup (CONSTANTS_DATADIR); + _g_free0 (((GraniteApplication*) self)->build_data_dir); + ((GraniteApplication*) self)->build_data_dir = _tmp2_; + _tmp3_ = g_strdup (CONSTANTS_PKGDATADIR); + _g_free0 (((GraniteApplication*) self)->build_pkg_data_dir); + ((GraniteApplication*) self)->build_pkg_data_dir = _tmp3_; + _tmp4_ = g_strdup (CONSTANTS_RELEASE_NAME); + _g_free0 (((GraniteApplication*) self)->build_release_name); + ((GraniteApplication*) self)->build_release_name = _tmp4_; + _tmp5_ = g_strdup (CONSTANTS_VERSION); + _g_free0 (((GraniteApplication*) self)->build_version); + ((GraniteApplication*) self)->build_version = _tmp5_; + _tmp6_ = g_strdup (CONSTANTS_VERSION_INFO); + _g_free0 (((GraniteApplication*) self)->build_version_info); + ((GraniteApplication*) self)->build_version_info = _tmp6_; + _tmp7_ = g_strdup ("2015"); + _g_free0 (((GraniteApplication*) self)->app_years); + ((GraniteApplication*) self)->app_years = _tmp7_; + _tmp8_ = g_strdup ("nasc"); + _g_free0 (((GraniteApplication*) self)->app_icon); + ((GraniteApplication*) self)->app_icon = _tmp8_; + _tmp9_ = g_strdup ("nasc.desktop"); + _g_free0 (((GraniteApplication*) self)->app_launcher); + ((GraniteApplication*) self)->app_launcher = _tmp9_; + g_application_set_application_id ((GApplication*) self, "net.launchpad.nasc"); + _tmp10_ = g_strdup ("https://bugs.launchpad.net/nasc"); + _g_free0 (((GraniteApplication*) self)->bug_url); + ((GraniteApplication*) self)->bug_url = _tmp10_; + _tmp11_ = g_strdup ("https://answers.launchpad.net/nasc"); + _g_free0 (((GraniteApplication*) self)->help_url); + ((GraniteApplication*) self)->help_url = _tmp11_; + _tmp12_ = g_strdup ("Harvey Cabaguio "); + _tmp13_ = g_new0 (gchar*, 1 + 1); + _tmp13_[0] = _tmp12_; + ((GraniteApplication*) self)->about_artists = (_vala_array_free (((GraniteApplication*) self)->about_artists, ((GraniteApplication*) self)->about_artists_length1, (GDestroyNotify) g_free), NULL); + ((GraniteApplication*) self)->about_artists = _tmp13_; + ((GraniteApplication*) self)->about_artists_length1 = 1; + _tmp14_ = g_strdup ("Do maths like a normal person"); + _g_free0 (((GraniteApplication*) self)->about_comments); + ((GraniteApplication*) self)->about_comments = _tmp14_; + _g_free0 (((GraniteApplication*) self)->about_translators); + ((GraniteApplication*) self)->about_translators = NULL; + ((GraniteApplication*) self)->about_license_type = GTK_LICENSE_GPL_3_0; + return obj; +} + + +static void nasc_nasc_app_class_init (NascNascAppClass * klass) { + nasc_nasc_app_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (NascNascAppPrivate)); + ((GApplicationClass *) klass)->activate = nasc_nasc_app_real_activate; + G_OBJECT_CLASS (klass)->constructor = nasc_nasc_app_constructor; + G_OBJECT_CLASS (klass)->finalize = nasc_nasc_app_finalize; +} + + +static void nasc_nasc_app_instance_init (NascNascApp * self) { + self->priv = NASC_NASC_APP_GET_PRIVATE (self); + self->priv->window = NULL; +} + + +static void nasc_nasc_app_finalize (GObject* obj) { + NascNascApp * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, NASC_TYPE_NASC_APP, NascNascApp); + _g_object_unref0 (self->priv->window); + self->args = (_vala_array_free (self->args, self->args_length1, (GDestroyNotify) g_free), NULL); + G_OBJECT_CLASS (nasc_nasc_app_parent_class)->finalize (obj); +} + + +GType nasc_nasc_app_get_type (void) { + static volatile gsize nasc_nasc_app_type_id__volatile = 0; + if (g_once_init_enter (&nasc_nasc_app_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascNascAppClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_nasc_app_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascNascApp), 0, (GInstanceInitFunc) nasc_nasc_app_instance_init, NULL }; + GType nasc_nasc_app_type_id; + nasc_nasc_app_type_id = g_type_register_static (GRANITE_TYPE_APPLICATION, "NascNascApp", &g_define_type_info, 0); + g_once_init_leave (&nasc_nasc_app_type_id__volatile, nasc_nasc_app_type_id); + } + return nasc_nasc_app_type_id__volatile; +} + + +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { + if ((array != NULL) && (destroy_func != NULL)) { + int i; + for (i = 0; i < array_length; i = i + 1) { + if (((gpointer*) array)[i] != NULL) { + destroy_func (((gpointer*) array)[i]); + } + } + } +} + + +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { + _vala_array_destroy (array, array_length, destroy_func); + g_free (array); +} + + + diff -Nru nasc-0.2/build/src/NascSettings.c nasc-0.3/build/src/NascSettings.c --- nasc-0.2/build/src/NascSettings.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/NascSettings.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,408 @@ +/* NascSettings.c generated by valac 0.32.1, the Vala compiler + * generated from NascSettings.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include + + +#define TYPE_NASC_SETTINGS (nasc_settings_get_type ()) +#define NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SETTINGS, NascSettings)) +#define NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SETTINGS, NascSettingsClass)) +#define IS_NASC_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SETTINGS)) +#define IS_NASC_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SETTINGS)) +#define NASC_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SETTINGS, NascSettingsClass)) + +typedef struct _NascSettings NascSettings; +typedef struct _NascSettingsClass NascSettingsClass; +typedef struct _NascSettingsPrivate NascSettingsPrivate; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +struct _NascSettings { + GraniteServicesSettings parent_instance; + NascSettingsPrivate * priv; +}; + +struct _NascSettingsClass { + GraniteServicesSettingsClass parent_class; +}; + +struct _NascSettingsPrivate { + gboolean _show_tutorial; + gboolean _advanced_mode; + gint _window_width; + gint _window_height; + gint _pane_position; + gint _opening_x; + gint _opening_y; + gint _open_sheet; +}; + + +static gpointer nasc_settings_parent_class = NULL; +static NascSettings* nasc_settings_instance; +static NascSettings* nasc_settings_instance = NULL; + +GType nasc_settings_get_type (void) G_GNUC_CONST; +#define NASC_SETTINGS_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_NASC_SETTINGS, NascSettingsPrivate)) +enum { + NASC_SETTINGS_DUMMY_PROPERTY, + NASC_SETTINGS_SHOW_TUTORIAL, + NASC_SETTINGS_ADVANCED_MODE, + NASC_SETTINGS_WINDOW_WIDTH, + NASC_SETTINGS_WINDOW_HEIGHT, + NASC_SETTINGS_PANE_POSITION, + NASC_SETTINGS_OPENING_X, + NASC_SETTINGS_OPENING_Y, + NASC_SETTINGS_OPEN_SHEET +}; +#define NASC_SETTINGS_variable_names "nasc_line_" +#define NASC_SETTINGS_sheet_split_char "|§§|" +#define NASC_SETTINGS_name_split_char "-§-" +#define NASC_SETTINGS_sheet_path "/.local/share/nasc/" +#define NASC_SETTINGS_template_path "/usr/share/qalculate/nasc_template.sheets" +static NascSettings* nasc_settings_new (void); +static NascSettings* nasc_settings_construct (GType object_type); +NascSettings* nasc_settings_get_instance (void); +gboolean nasc_settings_get_show_tutorial (NascSettings* self); +void nasc_settings_set_show_tutorial (NascSettings* self, gboolean value); +gboolean nasc_settings_get_advanced_mode (NascSettings* self); +void nasc_settings_set_advanced_mode (NascSettings* self, gboolean value); +gint nasc_settings_get_window_width (NascSettings* self); +void nasc_settings_set_window_width (NascSettings* self, gint value); +gint nasc_settings_get_window_height (NascSettings* self); +void nasc_settings_set_window_height (NascSettings* self, gint value); +gint nasc_settings_get_pane_position (NascSettings* self); +void nasc_settings_set_pane_position (NascSettings* self, gint value); +gint nasc_settings_get_opening_x (NascSettings* self); +void nasc_settings_set_opening_x (NascSettings* self, gint value); +gint nasc_settings_get_opening_y (NascSettings* self); +void nasc_settings_set_opening_y (NascSettings* self, gint value); +gint nasc_settings_get_open_sheet (NascSettings* self); +void nasc_settings_set_open_sheet (NascSettings* self, gint value); +static void nasc_settings_finalize (GObject* obj); +static void _vala_nasc_settings_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec); +static void _vala_nasc_settings_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec); + + +static NascSettings* nasc_settings_construct (GType object_type) { + NascSettings * self = NULL; + self = (NascSettings*) granite_services_settings_construct (object_type, "net.launchpad.nasc"); + return self; +} + + +static NascSettings* nasc_settings_new (void) { + return nasc_settings_construct (TYPE_NASC_SETTINGS); +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +NascSettings* nasc_settings_get_instance (void) { + NascSettings* result = NULL; + NascSettings* _tmp0_ = NULL; + NascSettings* _tmp2_ = NULL; + NascSettings* _tmp3_ = NULL; + _tmp0_ = nasc_settings_instance; + if (_tmp0_ == NULL) { + NascSettings* _tmp1_ = NULL; + _tmp1_ = nasc_settings_new (); + _g_object_unref0 (nasc_settings_instance); + nasc_settings_instance = _tmp1_; + } + _tmp2_ = nasc_settings_instance; + _tmp3_ = _g_object_ref0 (_tmp2_); + result = _tmp3_; + return result; +} + + +gboolean nasc_settings_get_show_tutorial (NascSettings* self) { + gboolean result; + gboolean _tmp0_ = FALSE; + g_return_val_if_fail (self != NULL, FALSE); + _tmp0_ = self->priv->_show_tutorial; + result = _tmp0_; + return result; +} + + +void nasc_settings_set_show_tutorial (NascSettings* self, gboolean value) { + gboolean _tmp0_ = FALSE; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_show_tutorial = _tmp0_; + g_object_notify ((GObject *) self, "show-tutorial"); +} + + +gboolean nasc_settings_get_advanced_mode (NascSettings* self) { + gboolean result; + gboolean _tmp0_ = FALSE; + g_return_val_if_fail (self != NULL, FALSE); + _tmp0_ = self->priv->_advanced_mode; + result = _tmp0_; + return result; +} + + +void nasc_settings_set_advanced_mode (NascSettings* self, gboolean value) { + gboolean _tmp0_ = FALSE; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_advanced_mode = _tmp0_; + g_object_notify ((GObject *) self, "advanced-mode"); +} + + +gint nasc_settings_get_window_width (NascSettings* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_window_width; + result = _tmp0_; + return result; +} + + +void nasc_settings_set_window_width (NascSettings* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_window_width = _tmp0_; + g_object_notify ((GObject *) self, "window-width"); +} + + +gint nasc_settings_get_window_height (NascSettings* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_window_height; + result = _tmp0_; + return result; +} + + +void nasc_settings_set_window_height (NascSettings* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_window_height = _tmp0_; + g_object_notify ((GObject *) self, "window-height"); +} + + +gint nasc_settings_get_pane_position (NascSettings* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_pane_position; + result = _tmp0_; + return result; +} + + +void nasc_settings_set_pane_position (NascSettings* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_pane_position = _tmp0_; + g_object_notify ((GObject *) self, "pane-position"); +} + + +gint nasc_settings_get_opening_x (NascSettings* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_opening_x; + result = _tmp0_; + return result; +} + + +void nasc_settings_set_opening_x (NascSettings* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_opening_x = _tmp0_; + g_object_notify ((GObject *) self, "opening-x"); +} + + +gint nasc_settings_get_opening_y (NascSettings* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_opening_y; + result = _tmp0_; + return result; +} + + +void nasc_settings_set_opening_y (NascSettings* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_opening_y = _tmp0_; + g_object_notify ((GObject *) self, "opening-y"); +} + + +gint nasc_settings_get_open_sheet (NascSettings* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_open_sheet; + result = _tmp0_; + return result; +} + + +void nasc_settings_set_open_sheet (NascSettings* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_open_sheet = _tmp0_; + g_object_notify ((GObject *) self, "open-sheet"); +} + + +static void nasc_settings_class_init (NascSettingsClass * klass) { + nasc_settings_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (NascSettingsPrivate)); + G_OBJECT_CLASS (klass)->get_property = _vala_nasc_settings_get_property; + G_OBJECT_CLASS (klass)->set_property = _vala_nasc_settings_set_property; + G_OBJECT_CLASS (klass)->finalize = nasc_settings_finalize; + g_object_class_install_property (G_OBJECT_CLASS (klass), NASC_SETTINGS_SHOW_TUTORIAL, g_param_spec_boolean ("show-tutorial", "show-tutorial", "show-tutorial", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), NASC_SETTINGS_ADVANCED_MODE, g_param_spec_boolean ("advanced-mode", "advanced-mode", "advanced-mode", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), NASC_SETTINGS_WINDOW_WIDTH, g_param_spec_int ("window-width", "window-width", "window-width", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), NASC_SETTINGS_WINDOW_HEIGHT, g_param_spec_int ("window-height", "window-height", "window-height", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), NASC_SETTINGS_PANE_POSITION, g_param_spec_int ("pane-position", "pane-position", "pane-position", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), NASC_SETTINGS_OPENING_X, g_param_spec_int ("opening-x", "opening-x", "opening-x", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), NASC_SETTINGS_OPENING_Y, g_param_spec_int ("opening-y", "opening-y", "opening-y", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), NASC_SETTINGS_OPEN_SHEET, g_param_spec_int ("open-sheet", "open-sheet", "open-sheet", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); +} + + +static void nasc_settings_instance_init (NascSettings * self) { + self->priv = NASC_SETTINGS_GET_PRIVATE (self); +} + + +static void nasc_settings_finalize (GObject* obj) { + NascSettings * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_NASC_SETTINGS, NascSettings); + G_OBJECT_CLASS (nasc_settings_parent_class)->finalize (obj); +} + + +GType nasc_settings_get_type (void) { + static volatile gsize nasc_settings_type_id__volatile = 0; + if (g_once_init_enter (&nasc_settings_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascSettingsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_settings_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascSettings), 0, (GInstanceInitFunc) nasc_settings_instance_init, NULL }; + GType nasc_settings_type_id; + nasc_settings_type_id = g_type_register_static (GRANITE_SERVICES_TYPE_SETTINGS, "NascSettings", &g_define_type_info, 0); + g_once_init_leave (&nasc_settings_type_id__volatile, nasc_settings_type_id); + } + return nasc_settings_type_id__volatile; +} + + +static void _vala_nasc_settings_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { + NascSettings * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_NASC_SETTINGS, NascSettings); + switch (property_id) { + case NASC_SETTINGS_SHOW_TUTORIAL: + g_value_set_boolean (value, nasc_settings_get_show_tutorial (self)); + break; + case NASC_SETTINGS_ADVANCED_MODE: + g_value_set_boolean (value, nasc_settings_get_advanced_mode (self)); + break; + case NASC_SETTINGS_WINDOW_WIDTH: + g_value_set_int (value, nasc_settings_get_window_width (self)); + break; + case NASC_SETTINGS_WINDOW_HEIGHT: + g_value_set_int (value, nasc_settings_get_window_height (self)); + break; + case NASC_SETTINGS_PANE_POSITION: + g_value_set_int (value, nasc_settings_get_pane_position (self)); + break; + case NASC_SETTINGS_OPENING_X: + g_value_set_int (value, nasc_settings_get_opening_x (self)); + break; + case NASC_SETTINGS_OPENING_Y: + g_value_set_int (value, nasc_settings_get_opening_y (self)); + break; + case NASC_SETTINGS_OPEN_SHEET: + g_value_set_int (value, nasc_settings_get_open_sheet (self)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_nasc_settings_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { + NascSettings * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_NASC_SETTINGS, NascSettings); + switch (property_id) { + case NASC_SETTINGS_SHOW_TUTORIAL: + nasc_settings_set_show_tutorial (self, g_value_get_boolean (value)); + break; + case NASC_SETTINGS_ADVANCED_MODE: + nasc_settings_set_advanced_mode (self, g_value_get_boolean (value)); + break; + case NASC_SETTINGS_WINDOW_WIDTH: + nasc_settings_set_window_width (self, g_value_get_int (value)); + break; + case NASC_SETTINGS_WINDOW_HEIGHT: + nasc_settings_set_window_height (self, g_value_get_int (value)); + break; + case NASC_SETTINGS_PANE_POSITION: + nasc_settings_set_pane_position (self, g_value_get_int (value)); + break; + case NASC_SETTINGS_OPENING_X: + nasc_settings_set_opening_x (self, g_value_get_int (value)); + break; + case NASC_SETTINGS_OPENING_Y: + nasc_settings_set_opening_y (self, g_value_get_int (value)); + break; + case NASC_SETTINGS_OPEN_SHEET: + nasc_settings_set_open_sheet (self, g_value_get_int (value)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + + diff -Nru nasc-0.2/build/src/OpenBox.c nasc-0.3/build/src/OpenBox.c --- nasc-0.2/build/src/OpenBox.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/OpenBox.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,820 @@ +/* OpenBox.c generated by valac 0.32.1, the Vala compiler + * generated from OpenBox.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_OPEN_BOX (open_box_get_type ()) +#define OPEN_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_OPEN_BOX, OpenBox)) +#define OPEN_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_OPEN_BOX, OpenBoxClass)) +#define IS_OPEN_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_OPEN_BOX)) +#define IS_OPEN_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_OPEN_BOX)) +#define OPEN_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_OPEN_BOX, OpenBoxClass)) + +typedef struct _OpenBox OpenBox; +typedef struct _OpenBoxClass OpenBoxClass; +typedef struct _OpenBoxPrivate OpenBoxPrivate; + +#define TYPE_CONTROLLER (controller_get_type ()) +#define CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTROLLER, Controller)) +#define CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTROLLER, ControllerClass)) +#define IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTROLLER)) +#define IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTROLLER)) +#define CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTROLLER, ControllerClass)) + +typedef struct _Controller Controller; +typedef struct _ControllerClass ControllerClass; + +#define TYPE_LIST_FOOTER (list_footer_get_type ()) +#define LIST_FOOTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LIST_FOOTER, ListFooter)) +#define LIST_FOOTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LIST_FOOTER, ListFooterClass)) +#define IS_LIST_FOOTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LIST_FOOTER)) +#define IS_LIST_FOOTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LIST_FOOTER)) +#define LIST_FOOTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LIST_FOOTER, ListFooterClass)) + +typedef struct _ListFooter ListFooter; +typedef struct _ListFooterClass ListFooterClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#define TYPE_INPUT_VIEW (input_view_get_type ()) +#define INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INPUT_VIEW, InputView)) +#define INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INPUT_VIEW, InputViewClass)) +#define IS_INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INPUT_VIEW)) +#define IS_INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INPUT_VIEW)) +#define INPUT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INPUT_VIEW, InputViewClass)) + +typedef struct _InputView InputView; +typedef struct _InputViewClass InputViewClass; +typedef struct _InputViewPrivate InputViewPrivate; + +#define TYPE_NASC_SHEET (nasc_sheet_get_type ()) +#define NASC_SHEET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NASC_SHEET, NascSheet)) +#define NASC_SHEET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NASC_SHEET, NascSheetClass)) +#define IS_NASC_SHEET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NASC_SHEET)) +#define IS_NASC_SHEET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NASC_SHEET)) +#define NASC_SHEET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NASC_SHEET, NascSheetClass)) + +typedef struct _NascSheet NascSheet; +typedef struct _NascSheetClass NascSheetClass; +typedef struct _ListFooterPrivate ListFooterPrivate; +typedef struct _Block14Data Block14Data; + +struct _OpenBox { + GtkBox parent_instance; + OpenBoxPrivate * priv; +}; + +struct _OpenBoxClass { + GtkBoxClass parent_class; +}; + +struct _OpenBoxPrivate { + gboolean open_mode; + GtkScrolledWindow* scroll; + gboolean initialized; + Controller* controller; + GraniteWidgetsSourceList* source_list; + ListFooter* footer; +}; + +struct _InputView { + GtkBox parent_instance; + InputViewPrivate * priv; + GtkSourceBuffer* buffer; + GtkSourceView* source_view; + GeeArrayList* operators; + gboolean skip_change; + gboolean scroll_needed; +}; + +struct _InputViewClass { + GtkBoxClass parent_class; +}; + +struct _ListFooter { + GtkToolbar parent_instance; + ListFooterPrivate * priv; + Controller* controller; +}; + +struct _ListFooterClass { + GtkToolbarClass parent_class; +}; + +struct _Block14Data { + int _ref_count_; + OpenBox* self; + Controller* controller; +}; + + +static gpointer open_box_parent_class = NULL; + +GType open_box_get_type (void) G_GNUC_CONST; +GType controller_get_type (void) G_GNUC_CONST; +GType list_footer_get_type (void) G_GNUC_CONST; +#define OPEN_BOX_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_OPEN_BOX, OpenBoxPrivate)) +enum { + OPEN_BOX_DUMMY_PROPERTY +}; +OpenBox* open_box_new (void); +OpenBox* open_box_construct (GType object_type); +ListFooter* list_footer_new (void); +ListFooter* list_footer_construct (GType object_type); +static gboolean __lambda92_ (OpenBox* self, GdkEventKey* e); +GType input_view_get_type (void) G_GNUC_CONST; +InputView* controller_get_input (Controller* self); +static void open_box_on_add_sheet (OpenBox* self); +static void open_box_on_remove_sheet (OpenBox* self); +static gboolean ___lambda92__gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self); +static void _open_box_on_add_sheet_list_footer_add_sheet (ListFooter* _sender, gpointer self); +static void _open_box_on_remove_sheet_list_footer_remove_sheet (ListFooter* _sender, gpointer self); +static void open_box_on_undo_sheet (OpenBox* self); +static void _open_box_on_undo_sheet_list_footer_undo (ListFooter* _sender, gpointer self); +GType nasc_sheet_get_type (void) G_GNUC_CONST; +NascSheet* controller_add_sheet (Controller* self); +static void open_box_update (OpenBox* self); +void controller_remove_sheet (Controller* self, NascSheet* sheet); +NascSheet* controller_get_actual_sheet (Controller* self); +void controller_undo_removal (Controller* self); +gboolean open_box_is_open (OpenBox* self); +void open_box_open (OpenBox* self, Controller* controller); +static void open_box_setup_open_box (OpenBox* self, Controller* controller); +void open_box_close (OpenBox* self); +static Block14Data* block14_data_ref (Block14Data* _data14_); +static void block14_data_unref (void * _userdata_); +static void __lambda93_ (Block14Data* _data14_, GraniteWidgetsSourceListItem* i); +void list_footer_update_ui (ListFooter* self); +GeeArrayList* controller_get_sheets (Controller* self); +void controller_set_sheet (Controller* self, NascSheet* sheet); +static gboolean _____lambda94_ (Block14Data* _data14_); +static gboolean ______lambda94__gsource_func (gpointer self); +static void ___lambda93__granite_widgets_source_list_item_selected (GraniteWidgetsSourceList* _sender, GraniteWidgetsSourceListItem* item, gpointer self); +static void open_box_finalize (GObject* obj); + + +static gboolean __lambda92_ (OpenBox* self, GdkEventKey* e) { + gboolean result = FALSE; + GdkEventKey* _tmp0_ = NULL; + guint _tmp1_ = 0U; + GdkEventKey* _tmp28_ = NULL; + GdkModifierType _tmp29_ = 0; + g_return_val_if_fail (e != NULL, FALSE); + _tmp0_ = e; + _tmp1_ = _tmp0_->keyval; + if (_tmp1_ == ((guint) GDK_KEY_Escape)) { + Controller* _tmp2_ = NULL; + InputView* _tmp3_ = NULL; + InputView* _tmp4_ = NULL; + Controller* _tmp5_ = NULL; + InputView* _tmp6_ = NULL; + InputView* _tmp7_ = NULL; + _tmp2_ = self->priv->controller; + _tmp3_ = controller_get_input (_tmp2_); + _tmp4_ = _tmp3_; + _tmp4_->skip_change = TRUE; + g_signal_emit_by_name (self, "escape"); + _tmp5_ = self->priv->controller; + _tmp6_ = controller_get_input (_tmp5_); + _tmp7_ = _tmp6_; + _tmp7_->skip_change = FALSE; + result = TRUE; + return result; + } else { + GdkEventKey* _tmp8_ = NULL; + guint _tmp9_ = 0U; + _tmp8_ = e; + _tmp9_ = _tmp8_->keyval; + if (_tmp9_ == ((guint) GDK_KEY_Up)) { + GraniteWidgetsSourceListItem* prev = NULL; + GraniteWidgetsSourceList* _tmp10_ = NULL; + GraniteWidgetsSourceList* _tmp11_ = NULL; + GraniteWidgetsSourceListItem* _tmp12_ = NULL; + GraniteWidgetsSourceListItem* _tmp13_ = NULL; + GraniteWidgetsSourceListItem* _tmp14_ = NULL; + GraniteWidgetsSourceListItem* _tmp15_ = NULL; + _tmp10_ = self->priv->source_list; + _tmp11_ = self->priv->source_list; + _tmp12_ = granite_widgets_source_list_get_selected (_tmp11_); + _tmp13_ = _tmp12_; + _tmp14_ = granite_widgets_source_list_get_previous_item (_tmp10_, _tmp13_); + prev = _tmp14_; + _tmp15_ = prev; + if (_tmp15_ != NULL) { + GraniteWidgetsSourceList* _tmp16_ = NULL; + GraniteWidgetsSourceListItem* _tmp17_ = NULL; + _tmp16_ = self->priv->source_list; + _tmp17_ = prev; + granite_widgets_source_list_set_selected (_tmp16_, _tmp17_); + result = TRUE; + _g_object_unref0 (prev); + return result; + } + result = FALSE; + _g_object_unref0 (prev); + return result; + } else { + GdkEventKey* _tmp18_ = NULL; + guint _tmp19_ = 0U; + _tmp18_ = e; + _tmp19_ = _tmp18_->keyval; + if (_tmp19_ == ((guint) GDK_KEY_Down)) { + GraniteWidgetsSourceListItem* next = NULL; + GraniteWidgetsSourceList* _tmp20_ = NULL; + GraniteWidgetsSourceList* _tmp21_ = NULL; + GraniteWidgetsSourceListItem* _tmp22_ = NULL; + GraniteWidgetsSourceListItem* _tmp23_ = NULL; + GraniteWidgetsSourceListItem* _tmp24_ = NULL; + GraniteWidgetsSourceListItem* _tmp25_ = NULL; + _tmp20_ = self->priv->source_list; + _tmp21_ = self->priv->source_list; + _tmp22_ = granite_widgets_source_list_get_selected (_tmp21_); + _tmp23_ = _tmp22_; + _tmp24_ = granite_widgets_source_list_get_next_item (_tmp20_, _tmp23_); + next = _tmp24_; + _tmp25_ = next; + if (_tmp25_ != NULL) { + GraniteWidgetsSourceList* _tmp26_ = NULL; + GraniteWidgetsSourceListItem* _tmp27_ = NULL; + _tmp26_ = self->priv->source_list; + _tmp27_ = next; + granite_widgets_source_list_set_selected (_tmp26_, _tmp27_); + result = TRUE; + _g_object_unref0 (next); + return result; + } + result = FALSE; + _g_object_unref0 (next); + return result; + } + } + } + _tmp28_ = e; + _tmp29_ = _tmp28_->state; + if ((_tmp29_ & GDK_CONTROL_MASK) != 0) { + GdkEventKey* _tmp30_ = NULL; + guint _tmp31_ = 0U; + _tmp30_ = e; + _tmp31_ = _tmp30_->keyval; + if (_tmp31_ == ((guint) GDK_KEY_o)) { + Controller* _tmp32_ = NULL; + InputView* _tmp33_ = NULL; + InputView* _tmp34_ = NULL; + Controller* _tmp35_ = NULL; + InputView* _tmp36_ = NULL; + InputView* _tmp37_ = NULL; + _tmp32_ = self->priv->controller; + _tmp33_ = controller_get_input (_tmp32_); + _tmp34_ = _tmp33_; + _tmp34_->skip_change = TRUE; + g_signal_emit_by_name (self, "escape"); + _tmp35_ = self->priv->controller; + _tmp36_ = controller_get_input (_tmp35_); + _tmp37_ = _tmp36_; + _tmp37_->skip_change = FALSE; + result = TRUE; + return result; + } else { + GdkEventKey* _tmp38_ = NULL; + guint _tmp39_ = 0U; + _tmp38_ = e; + _tmp39_ = _tmp38_->keyval; + if (_tmp39_ == ((guint) GDK_KEY_n)) { + open_box_on_add_sheet (self); + result = TRUE; + return result; + } else { + GdkEventKey* _tmp40_ = NULL; + guint _tmp41_ = 0U; + _tmp40_ = e; + _tmp41_ = _tmp40_->keyval; + if (_tmp41_ == ((guint) GDK_KEY_d)) { + open_box_on_remove_sheet (self); + result = TRUE; + return result; + } + } + } + } + result = FALSE; + return result; +} + + +static gboolean ___lambda92__gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self) { + gboolean result; + result = __lambda92_ ((OpenBox*) self, event); + return result; +} + + +static void _open_box_on_add_sheet_list_footer_add_sheet (ListFooter* _sender, gpointer self) { + open_box_on_add_sheet ((OpenBox*) self); +} + + +static void _open_box_on_remove_sheet_list_footer_remove_sheet (ListFooter* _sender, gpointer self) { + open_box_on_remove_sheet ((OpenBox*) self); +} + + +static void _open_box_on_undo_sheet_list_footer_undo (ListFooter* _sender, gpointer self) { + open_box_on_undo_sheet ((OpenBox*) self); +} + + +OpenBox* open_box_construct (GType object_type) { + OpenBox * self = NULL; + GtkScrolledWindow* _tmp0_ = NULL; + GtkScrolledWindow* _tmp1_ = NULL; + GraniteWidgetsSourceListExpandableItem* _tmp2_ = NULL; + GraniteWidgetsSourceListExpandableItem* _tmp3_ = NULL; + GraniteWidgetsSourceList* _tmp4_ = NULL; + ListFooter* _tmp5_ = NULL; + GtkScrolledWindow* _tmp6_ = NULL; + GraniteWidgetsSourceList* _tmp7_ = NULL; + GtkScrolledWindow* _tmp8_ = NULL; + ListFooter* _tmp9_ = NULL; + ListFooter* _tmp10_ = NULL; + ListFooter* _tmp11_ = NULL; + ListFooter* _tmp12_ = NULL; + self = (OpenBox*) g_object_new (object_type, NULL); + gtk_orientable_set_orientation ((GtkOrientable*) self, GTK_ORIENTATION_VERTICAL); + gtk_widget_set_no_show_all ((GtkWidget*) self, TRUE); + _tmp0_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL); + g_object_ref_sink (_tmp0_); + _g_object_unref0 (self->priv->scroll); + self->priv->scroll = _tmp0_; + _tmp1_ = self->priv->scroll; + gtk_scrolled_window_set_policy (_tmp1_, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); + _tmp2_ = granite_widgets_source_list_expandable_item_new (""); + _tmp3_ = _tmp2_; + _tmp4_ = granite_widgets_source_list_new (_tmp3_); + g_object_ref_sink (_tmp4_); + _g_object_unref0 (self->priv->source_list); + self->priv->source_list = _tmp4_; + _g_object_unref0 (_tmp3_); + _tmp5_ = list_footer_new (); + g_object_ref_sink (_tmp5_); + _g_object_unref0 (self->priv->footer); + self->priv->footer = _tmp5_; + _tmp6_ = self->priv->scroll; + _tmp7_ = self->priv->source_list; + gtk_container_add ((GtkContainer*) _tmp6_, (GtkWidget*) _tmp7_); + _tmp8_ = self->priv->scroll; + gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp8_, TRUE, TRUE, (guint) 0); + _tmp9_ = self->priv->footer; + gtk_box_pack_end ((GtkBox*) self, (GtkWidget*) _tmp9_, FALSE, FALSE, (guint) 0); + gtk_widget_set_size_request ((GtkWidget*) self, 150, -1); + g_signal_connect_object ((GtkWidget*) self, "key-press-event", (GCallback) ___lambda92__gtk_widget_key_press_event, self, 0); + _tmp10_ = self->priv->footer; + g_signal_connect_object (_tmp10_, "add-sheet", (GCallback) _open_box_on_add_sheet_list_footer_add_sheet, self, 0); + _tmp11_ = self->priv->footer; + g_signal_connect_object (_tmp11_, "remove-sheet", (GCallback) _open_box_on_remove_sheet_list_footer_remove_sheet, self, 0); + _tmp12_ = self->priv->footer; + g_signal_connect_object (_tmp12_, "undo", (GCallback) _open_box_on_undo_sheet_list_footer_undo, self, 0); + return self; +} + + +OpenBox* open_box_new (void) { + return open_box_construct (TYPE_OPEN_BOX); +} + + +static void open_box_on_add_sheet (OpenBox* self) { + NascSheet* sh = NULL; + Controller* _tmp0_ = NULL; + NascSheet* _tmp1_ = NULL; + GraniteWidgetsSourceList* _tmp2_ = NULL; + GraniteWidgetsSourceList* _tmp3_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->controller; + _tmp1_ = controller_add_sheet (_tmp0_); + sh = _tmp1_; + open_box_update (self); + _tmp2_ = self->priv->source_list; + granite_widgets_source_list_set_selected (_tmp2_, (GraniteWidgetsSourceListItem*) sh); + _tmp3_ = self->priv->source_list; + granite_widgets_source_list_start_editing_item (_tmp3_, (GraniteWidgetsSourceListItem*) sh); + _g_object_unref0 (sh); +} + + +static void open_box_on_remove_sheet (OpenBox* self) { + Controller* _tmp0_ = NULL; + GraniteWidgetsSourceList* _tmp1_ = NULL; + GraniteWidgetsSourceListItem* _tmp2_ = NULL; + GraniteWidgetsSourceListItem* _tmp3_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->controller; + _tmp1_ = self->priv->source_list; + _tmp2_ = granite_widgets_source_list_get_selected (_tmp1_); + _tmp3_ = _tmp2_; + controller_remove_sheet (_tmp0_, G_TYPE_CHECK_INSTANCE_TYPE (_tmp3_, TYPE_NASC_SHEET) ? ((NascSheet*) _tmp3_) : NULL); + open_box_update (self); +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static void open_box_on_undo_sheet (OpenBox* self) { + NascSheet* sh = NULL; + Controller* _tmp0_ = NULL; + NascSheet* _tmp1_ = NULL; + NascSheet* _tmp2_ = NULL; + NascSheet* _tmp3_ = NULL; + Controller* _tmp4_ = NULL; + GraniteWidgetsSourceList* _tmp5_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->controller; + _tmp1_ = controller_get_actual_sheet (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _g_object_ref0 (_tmp2_); + sh = _tmp3_; + _tmp4_ = self->priv->controller; + controller_undo_removal (_tmp4_); + open_box_update (self); + _tmp5_ = self->priv->source_list; + granite_widgets_source_list_set_selected (_tmp5_, (GraniteWidgetsSourceListItem*) sh); + _g_object_unref0 (sh); +} + + +gboolean open_box_is_open (OpenBox* self) { + gboolean result = FALSE; + gboolean _tmp0_ = FALSE; + g_return_val_if_fail (self != NULL, FALSE); + _tmp0_ = self->priv->open_mode; + result = _tmp0_; + return result; +} + + +void open_box_open (OpenBox* self, Controller* controller) { + gboolean _tmp0_ = FALSE; + Controller* _tmp5_ = NULL; + InputView* _tmp6_ = NULL; + InputView* _tmp7_ = NULL; + GtkSourceView* _tmp8_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (controller != NULL); + gtk_widget_set_no_show_all ((GtkWidget*) self, FALSE); + _tmp0_ = self->priv->initialized; + if (!_tmp0_) { + ListFooter* _tmp1_ = NULL; + Controller* _tmp2_ = NULL; + Controller* _tmp3_ = NULL; + Controller* _tmp4_ = NULL; + _tmp1_ = self->priv->footer; + _tmp2_ = controller; + _tmp3_ = _g_object_ref0 (_tmp2_); + _g_object_unref0 (_tmp1_->controller); + _tmp1_->controller = _tmp3_; + _tmp4_ = controller; + open_box_setup_open_box (self, _tmp4_); + } + gtk_widget_show ((GtkWidget*) self); + gtk_widget_grab_focus ((GtkWidget*) self); + open_box_update (self); + self->priv->open_mode = TRUE; + _tmp5_ = controller; + _tmp6_ = controller_get_input (_tmp5_); + _tmp7_ = _tmp6_; + _tmp8_ = _tmp7_->source_view; + gtk_text_view_set_editable ((GtkTextView*) _tmp8_, FALSE); +} + + +void open_box_close (OpenBox* self) { + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + gtk_text_view_set_editable ((GtkTextView*) _tmp3_, TRUE); + gtk_widget_hide ((GtkWidget*) self); + gtk_widget_set_no_show_all ((GtkWidget*) self, TRUE); + self->priv->open_mode = FALSE; +} + + +static Block14Data* block14_data_ref (Block14Data* _data14_) { + g_atomic_int_inc (&_data14_->_ref_count_); + return _data14_; +} + + +static void block14_data_unref (void * _userdata_) { + Block14Data* _data14_; + _data14_ = (Block14Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data14_->_ref_count_)) { + OpenBox* self; + self = _data14_->self; + _g_object_unref0 (_data14_->controller); + _g_object_unref0 (self); + g_slice_free (Block14Data, _data14_); + } +} + + +static gboolean _____lambda94_ (Block14Data* _data14_) { + OpenBox* self; + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + self = _data14_->self; + _tmp0_ = _data14_->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + gtk_text_view_set_editable ((GtkTextView*) _tmp3_, FALSE); + result = FALSE; + return result; +} + + +static gboolean ______lambda94__gsource_func (gpointer self) { + gboolean result; + result = _____lambda94_ (self); + return result; +} + + +static void __lambda93_ (Block14Data* _data14_, GraniteWidgetsSourceListItem* i) { + OpenBox* self; + GraniteWidgetsSourceListItem* _tmp0_ = NULL; + ListFooter* _tmp1_ = NULL; + Controller* _tmp2_ = NULL; + InputView* _tmp3_ = NULL; + InputView* _tmp4_ = NULL; + GtkSourceView* _tmp5_ = NULL; + self = _data14_->self; + _tmp0_ = i; + if (_tmp0_ == NULL) { + return; + } + _tmp1_ = self->priv->footer; + list_footer_update_ui (_tmp1_); + _tmp2_ = _data14_->controller; + _tmp3_ = controller_get_input (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _tmp4_->source_view; + gtk_text_view_set_editable ((GtkTextView*) _tmp5_, TRUE); + { + GeeArrayList* _fav_list = NULL; + Controller* _tmp6_ = NULL; + GeeArrayList* _tmp7_ = NULL; + gint _fav_size = 0; + GeeArrayList* _tmp8_ = NULL; + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _fav_index = 0; + _tmp6_ = _data14_->controller; + _tmp7_ = controller_get_sheets (_tmp6_); + _fav_list = _tmp7_; + _tmp8_ = _fav_list; + _tmp9_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp8_); + _tmp10_ = _tmp9_; + _fav_size = _tmp10_; + _fav_index = -1; + while (TRUE) { + gint _tmp11_ = 0; + gint _tmp12_ = 0; + gint _tmp13_ = 0; + NascSheet* fav = NULL; + GeeArrayList* _tmp14_ = NULL; + gint _tmp15_ = 0; + gpointer _tmp16_ = NULL; + NascSheet* _tmp17_ = NULL; + GraniteWidgetsSourceListItem* _tmp18_ = NULL; + _tmp11_ = _fav_index; + _fav_index = _tmp11_ + 1; + _tmp12_ = _fav_index; + _tmp13_ = _fav_size; + if (!(_tmp12_ < _tmp13_)) { + break; + } + _tmp14_ = _fav_list; + _tmp15_ = _fav_index; + _tmp16_ = gee_abstract_list_get ((GeeAbstractList*) _tmp14_, _tmp15_); + fav = (NascSheet*) _tmp16_; + _tmp17_ = fav; + _tmp18_ = i; + if (G_TYPE_CHECK_INSTANCE_CAST (_tmp17_, GRANITE_WIDGETS_SOURCE_LIST_TYPE_ITEM, GraniteWidgetsSourceListItem) == _tmp18_) { + Controller* _tmp19_ = NULL; + NascSheet* _tmp20_ = NULL; + _tmp19_ = _data14_->controller; + _tmp20_ = fav; + controller_set_sheet (_tmp19_, _tmp20_); + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 500, ______lambda94__gsource_func, block14_data_ref (_data14_), block14_data_unref); + _g_object_unref0 (fav); + break; + } + _g_object_unref0 (fav); + } + _g_object_unref0 (_fav_list); + } +} + + +static void ___lambda93__granite_widgets_source_list_item_selected (GraniteWidgetsSourceList* _sender, GraniteWidgetsSourceListItem* item, gpointer self) { + __lambda93_ (self, item); +} + + +static void open_box_setup_open_box (OpenBox* self, Controller* controller) { + Block14Data* _data14_; + Controller* _tmp0_ = NULL; + Controller* _tmp1_ = NULL; + Controller* _tmp2_ = NULL; + Controller* _tmp3_ = NULL; + GraniteWidgetsSourceList* _tmp4_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (controller != NULL); + _data14_ = g_slice_new0 (Block14Data); + _data14_->_ref_count_ = 1; + _data14_->self = g_object_ref (self); + _tmp0_ = controller; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (_data14_->controller); + _data14_->controller = _tmp1_; + self->priv->initialized = TRUE; + _tmp2_ = _data14_->controller; + _tmp3_ = _g_object_ref0 (_tmp2_); + _g_object_unref0 (self->priv->controller); + self->priv->controller = _tmp3_; + open_box_update (self); + _tmp4_ = self->priv->source_list; + g_signal_connect_data (_tmp4_, "item-selected", (GCallback) ___lambda93__granite_widgets_source_list_item_selected, block14_data_ref (_data14_), (GClosureNotify) block14_data_unref, 0); + gtk_widget_show_all ((GtkWidget*) self); + block14_data_unref (_data14_); + _data14_ = NULL; +} + + +static void open_box_update (OpenBox* self) { + NascSheet* fav_sheet = NULL; + Controller* _tmp0_ = NULL; + NascSheet* _tmp1_ = NULL; + NascSheet* _tmp2_ = NULL; + NascSheet* _tmp3_ = NULL; + GraniteWidgetsSourceList* _tmp4_ = NULL; + GraniteWidgetsSourceListExpandableItem* _tmp5_ = NULL; + GraniteWidgetsSourceListExpandableItem* _tmp6_ = NULL; + GraniteWidgetsSourceList* _tmp7_ = NULL; + GraniteWidgetsSourceList* _tmp23_ = NULL; + NascSheet* _tmp24_ = NULL; + GraniteWidgetsSourceList* _tmp25_ = NULL; + NascSheet* _tmp26_ = NULL; + ListFooter* _tmp27_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->controller; + _tmp1_ = controller_get_actual_sheet (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _g_object_ref0 (_tmp2_); + fav_sheet = _tmp3_; + _tmp4_ = self->priv->source_list; + _tmp5_ = granite_widgets_source_list_get_root (_tmp4_); + _tmp6_ = _tmp5_; + granite_widgets_source_list_expandable_item_clear (_tmp6_); + _tmp7_ = self->priv->source_list; + gtk_widget_grab_focus ((GtkWidget*) _tmp7_); + { + GeeArrayList* _fav_list = NULL; + Controller* _tmp8_ = NULL; + GeeArrayList* _tmp9_ = NULL; + gint _fav_size = 0; + GeeArrayList* _tmp10_ = NULL; + gint _tmp11_ = 0; + gint _tmp12_ = 0; + gint _fav_index = 0; + _tmp8_ = self->priv->controller; + _tmp9_ = controller_get_sheets (_tmp8_); + _fav_list = _tmp9_; + _tmp10_ = _fav_list; + _tmp11_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp10_); + _tmp12_ = _tmp11_; + _fav_size = _tmp12_; + _fav_index = -1; + while (TRUE) { + gint _tmp13_ = 0; + gint _tmp14_ = 0; + gint _tmp15_ = 0; + NascSheet* fav = NULL; + GeeArrayList* _tmp16_ = NULL; + gint _tmp17_ = 0; + gpointer _tmp18_ = NULL; + GraniteWidgetsSourceList* _tmp19_ = NULL; + GraniteWidgetsSourceListExpandableItem* _tmp20_ = NULL; + GraniteWidgetsSourceListExpandableItem* _tmp21_ = NULL; + NascSheet* _tmp22_ = NULL; + _tmp13_ = _fav_index; + _fav_index = _tmp13_ + 1; + _tmp14_ = _fav_index; + _tmp15_ = _fav_size; + if (!(_tmp14_ < _tmp15_)) { + break; + } + _tmp16_ = _fav_list; + _tmp17_ = _fav_index; + _tmp18_ = gee_abstract_list_get ((GeeAbstractList*) _tmp16_, _tmp17_); + fav = (NascSheet*) _tmp18_; + _tmp19_ = self->priv->source_list; + _tmp20_ = granite_widgets_source_list_get_root (_tmp19_); + _tmp21_ = _tmp20_; + _tmp22_ = fav; + granite_widgets_source_list_expandable_item_add (_tmp21_, (GraniteWidgetsSourceListItem*) _tmp22_); + _g_object_unref0 (fav); + } + _g_object_unref0 (_fav_list); + } + _tmp23_ = self->priv->source_list; + _tmp24_ = fav_sheet; + granite_widgets_source_list_set_selected (_tmp23_, (GraniteWidgetsSourceListItem*) _tmp24_); + _tmp25_ = self->priv->source_list; + _tmp26_ = fav_sheet; + granite_widgets_source_list_scroll_to_item (_tmp25_, (GraniteWidgetsSourceListItem*) _tmp26_, TRUE, FALSE, (gfloat) 0); + _tmp27_ = self->priv->footer; + list_footer_update_ui (_tmp27_); + _g_object_unref0 (fav_sheet); +} + + +static void open_box_class_init (OpenBoxClass * klass) { + open_box_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (OpenBoxPrivate)); + G_OBJECT_CLASS (klass)->finalize = open_box_finalize; + g_signal_new ("escape", TYPE_OPEN_BOX, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); +} + + +static void open_box_instance_init (OpenBox * self) { + self->priv = OPEN_BOX_GET_PRIVATE (self); + self->priv->open_mode = FALSE; + self->priv->initialized = FALSE; +} + + +static void open_box_finalize (GObject* obj) { + OpenBox * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_OPEN_BOX, OpenBox); + _g_object_unref0 (self->priv->scroll); + _g_object_unref0 (self->priv->controller); + _g_object_unref0 (self->priv->source_list); + _g_object_unref0 (self->priv->footer); + G_OBJECT_CLASS (open_box_parent_class)->finalize (obj); +} + + +GType open_box_get_type (void) { + static volatile gsize open_box_type_id__volatile = 0; + if (g_once_init_enter (&open_box_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (OpenBoxClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) open_box_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (OpenBox), 0, (GInstanceInitFunc) open_box_instance_init, NULL }; + GType open_box_type_id; + open_box_type_id = g_type_register_static (gtk_box_get_type (), "OpenBox", &g_define_type_info, 0); + g_once_init_leave (&open_box_type_id__volatile, open_box_type_id); + } + return open_box_type_id__volatile; +} + + + diff -Nru nasc-0.2/build/src/PasteBinDialog.c nasc-0.3/build/src/PasteBinDialog.c --- nasc-0.2/build/src/PasteBinDialog.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/PasteBinDialog.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,957 @@ +/* PasteBinDialog.c generated by valac 0.32.1, the Vala compiler + * generated from PasteBinDialog.vala, do not modify */ + +/* + * Copyright (c) 2011-2012 Giulio Collura + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include + + +#define NASC_TYPE_PASTE_BIN (nasc_paste_bin_get_type ()) +#define NASC_PASTE_BIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NASC_TYPE_PASTE_BIN, NascPasteBin)) +#define NASC_PASTE_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NASC_TYPE_PASTE_BIN, NascPasteBinClass)) +#define NASC_IS_PASTE_BIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NASC_TYPE_PASTE_BIN)) +#define NASC_IS_PASTE_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NASC_TYPE_PASTE_BIN)) +#define NASC_PASTE_BIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NASC_TYPE_PASTE_BIN, NascPasteBinClass)) + +typedef struct _NascPasteBin NascPasteBin; +typedef struct _NascPasteBinClass NascPasteBinClass; +typedef struct _NascPasteBinPrivate NascPasteBinPrivate; +#define _g_free0(var) (var = (g_free (var), NULL)) +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#define NASC_TYPE_PASTE_BIN_DIALOG (nasc_paste_bin_dialog_get_type ()) +#define NASC_PASTE_BIN_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NASC_TYPE_PASTE_BIN_DIALOG, NascPasteBinDialog)) +#define NASC_PASTE_BIN_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NASC_TYPE_PASTE_BIN_DIALOG, NascPasteBinDialogClass)) +#define NASC_IS_PASTE_BIN_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NASC_TYPE_PASTE_BIN_DIALOG)) +#define NASC_IS_PASTE_BIN_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NASC_TYPE_PASTE_BIN_DIALOG)) +#define NASC_PASTE_BIN_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NASC_TYPE_PASTE_BIN_DIALOG, NascPasteBinDialogClass)) + +typedef struct _NascPasteBinDialog NascPasteBinDialog; +typedef struct _NascPasteBinDialogClass NascPasteBinDialogClass; +typedef struct _NascPasteBinDialogPrivate NascPasteBinDialogPrivate; + +#define TYPE_CONTROLLER (controller_get_type ()) +#define CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTROLLER, Controller)) +#define CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTROLLER, ControllerClass)) +#define IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTROLLER)) +#define IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTROLLER)) +#define CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTROLLER, ControllerClass)) + +typedef struct _Controller Controller; +typedef struct _ControllerClass ControllerClass; +#define _g_string_free0(var) ((var == NULL) ? NULL : (var = (g_string_free (var, TRUE), NULL))) + +struct _NascPasteBin { + GObject parent_instance; + NascPasteBinPrivate * priv; +}; + +struct _NascPasteBinClass { + GObjectClass parent_class; +}; + +struct _NascPasteBinDialog { + GtkDialog parent_instance; + NascPasteBinDialogPrivate * priv; +}; + +struct _NascPasteBinDialogClass { + GtkDialogClass parent_class; +}; + +struct _NascPasteBinDialogPrivate { + GtkBox* content; + GtkBox* padding; + GtkEntry* name_entry; + GtkComboBoxText* expiry_combo; + GtkCheckButton* private_check; + GtkButton* send_button; + Controller* controller; +}; + + +static gpointer nasc_paste_bin_parent_class = NULL; +static gpointer nasc_paste_bin_dialog_parent_class = NULL; + +#define NAME "Pastebin" +#define DESCRIPTION "Share files with pastebin service" +GType nasc_paste_bin_get_type (void) G_GNUC_CONST; +enum { + NASC_PASTE_BIN_DUMMY_PROPERTY +}; +#define NASC_PASTE_BIN_PASTE_ID_LEN 8 +#define NASC_PASTE_BIN_NEVER "N" +#define NASC_PASTE_BIN_TEN_MINUTES "10M" +#define NASC_PASTE_BIN_HOUR "1H" +#define NASC_PASTE_BIN_DAY "1D" +#define NASC_PASTE_BIN_MONTH "1M" +#define NASC_PASTE_BIN_PRIVATE "1" +#define NASC_PASTE_BIN_PUBLIC "0" +gint nasc_paste_bin_submit (gchar** link, const gchar* paste_code, const gchar* paste_name, const gchar* paste_private, const gchar* paste_expire_date); +NascPasteBin* nasc_paste_bin_new (void); +NascPasteBin* nasc_paste_bin_construct (GType object_type); +GType nasc_paste_bin_dialog_get_type (void) G_GNUC_CONST; +GType controller_get_type (void) G_GNUC_CONST; +#define NASC_PASTE_BIN_DIALOG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NASC_TYPE_PASTE_BIN_DIALOG, NascPasteBinDialogPrivate)) +enum { + NASC_PASTE_BIN_DIALOG_DUMMY_PROPERTY +}; +NascPasteBinDialog* nasc_paste_bin_dialog_new (GtkWindow* parent, Controller* controller); +NascPasteBinDialog* nasc_paste_bin_dialog_construct (GType object_type, GtkWindow* parent, Controller* controller); +static void nasc_paste_bin_dialog_create_dialog (NascPasteBinDialog* self); +static void nasc_paste_bin_dialog_send_button_clicked (NascPasteBinDialog* self); +static void _nasc_paste_bin_dialog_send_button_clicked_gtk_button_clicked (GtkButton* _sender, gpointer self); +static void nasc_paste_bin_dialog_populate_expiry_combo (NascPasteBinDialog* self); +static GtkAlignment* nasc_paste_bin_dialog_wrap_alignment (GtkWidget* widget, gint top, gint right, gint bottom, gint left); +static gint nasc_paste_bin_dialog_submit_paste (NascPasteBinDialog* self, gchar** link); +gchar* controller_get_export_text (Controller* self); +static void nasc_paste_bin_dialog_finalize (GObject* obj); + + +static guint8* string_get_data (const gchar* self, int* result_length1) { + guint8* result; + guint8* res = NULL; + gint res_length1 = 0; + gint _res_size_ = 0; + gint _tmp0_ = 0; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + guint8* _tmp3_ = NULL; + gint _tmp3__length1 = 0; + guint8* _tmp4_ = NULL; + gint _tmp4__length1 = 0; + g_return_val_if_fail (self != NULL, NULL); + res = (guint8*) self; + res_length1 = -1; + _res_size_ = res_length1; + _tmp0_ = strlen (self); + _tmp1_ = _tmp0_; + res_length1 = (gint) _tmp1_; + _tmp2_ = res_length1; + _tmp3_ = res; + _tmp3__length1 = res_length1; + _tmp4_ = _tmp3_; + _tmp4__length1 = _tmp3__length1; + if (result_length1) { + *result_length1 = _tmp4__length1; + } + result = _tmp4_; + return result; +} + + +static gchar* string_slice (const gchar* self, glong start, glong end) { + gchar* result = NULL; + glong string_length = 0L; + gint _tmp0_ = 0; + gint _tmp1_ = 0; + glong _tmp2_ = 0L; + glong _tmp5_ = 0L; + gboolean _tmp8_ = FALSE; + glong _tmp9_ = 0L; + gboolean _tmp12_ = FALSE; + glong _tmp13_ = 0L; + glong _tmp16_ = 0L; + glong _tmp17_ = 0L; + glong _tmp18_ = 0L; + glong _tmp19_ = 0L; + glong _tmp20_ = 0L; + gchar* _tmp21_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = strlen (self); + _tmp1_ = _tmp0_; + string_length = (glong) _tmp1_; + _tmp2_ = start; + if (_tmp2_ < ((glong) 0)) { + glong _tmp3_ = 0L; + glong _tmp4_ = 0L; + _tmp3_ = string_length; + _tmp4_ = start; + start = _tmp3_ + _tmp4_; + } + _tmp5_ = end; + if (_tmp5_ < ((glong) 0)) { + glong _tmp6_ = 0L; + glong _tmp7_ = 0L; + _tmp6_ = string_length; + _tmp7_ = end; + end = _tmp6_ + _tmp7_; + } + _tmp9_ = start; + if (_tmp9_ >= ((glong) 0)) { + glong _tmp10_ = 0L; + glong _tmp11_ = 0L; + _tmp10_ = start; + _tmp11_ = string_length; + _tmp8_ = _tmp10_ <= _tmp11_; + } else { + _tmp8_ = FALSE; + } + g_return_val_if_fail (_tmp8_, NULL); + _tmp13_ = end; + if (_tmp13_ >= ((glong) 0)) { + glong _tmp14_ = 0L; + glong _tmp15_ = 0L; + _tmp14_ = end; + _tmp15_ = string_length; + _tmp12_ = _tmp14_ <= _tmp15_; + } else { + _tmp12_ = FALSE; + } + g_return_val_if_fail (_tmp12_, NULL); + _tmp16_ = start; + _tmp17_ = end; + g_return_val_if_fail (_tmp16_ <= _tmp17_, NULL); + _tmp18_ = start; + _tmp19_ = end; + _tmp20_ = start; + _tmp21_ = g_strndup (((gchar*) self) + _tmp18_, (gsize) (_tmp19_ - _tmp20_)); + result = _tmp21_; + return result; +} + + +gint nasc_paste_bin_submit (gchar** link, const gchar* paste_code, const gchar* paste_name, const gchar* paste_private, const gchar* paste_expire_date) { + gchar* _vala_link = NULL; + gint result = 0; + const gchar* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + gchar* api_url = NULL; + gchar* _tmp4_ = NULL; + SoupSessionSync* session = NULL; + SoupSessionSync* _tmp5_ = NULL; + SoupMessage* message = NULL; + const gchar* _tmp6_ = NULL; + SoupMessage* _tmp7_ = NULL; + gchar* request = NULL; + const gchar* _tmp8_ = NULL; + const gchar* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + SoupMessage* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + guint8* _tmp15_ = NULL; + gint _tmp15__length1 = 0; + guint8* _tmp16_ = NULL; + gint _tmp16__length1 = 0; + SoupMessage* _tmp17_ = NULL; + SoupSessionSync* _tmp18_ = NULL; + SoupMessage* _tmp19_ = NULL; + gchar* output = NULL; + SoupMessage* _tmp20_ = NULL; + SoupMessageBody* _tmp21_ = NULL; + guint8* _tmp22_ = NULL; + gint _tmp22__length1 = 0; + gchar* _tmp23_ = NULL; + const gchar* _tmp24_ = NULL; + gchar* _tmp25_ = NULL; + gchar* _tmp26_ = NULL; + gboolean _tmp27_ = FALSE; + g_return_val_if_fail (paste_code != NULL, 0); + g_return_val_if_fail (paste_name != NULL, 0); + g_return_val_if_fail (paste_private != NULL, 0); + g_return_val_if_fail (paste_expire_date != NULL, 0); + _tmp0_ = paste_code; + _tmp1_ = strlen (_tmp0_); + _tmp2_ = _tmp1_; + if (_tmp2_ == 0) { + gchar* _tmp3_ = NULL; + _tmp3_ = g_strdup (""); + _g_free0 (_vala_link); + _vala_link = _tmp3_; + result = 2; + if (link) { + *link = _vala_link; + } else { + _g_free0 (_vala_link); + } + return result; + } + _tmp4_ = g_strdup ("http://pastebin.com/api/api_post.php"); + api_url = _tmp4_; + _tmp5_ = (SoupSessionSync*) soup_session_sync_new (); + session = _tmp5_; + _tmp6_ = api_url; + _tmp7_ = soup_message_new ("POST", _tmp6_); + message = _tmp7_; + _tmp8_ = paste_code; + _tmp9_ = paste_name; + _tmp10_ = paste_private; + _tmp11_ = paste_expire_date; + _tmp12_ = soup_form_encode ("api_option", "paste", "api_dev_key", "67480801fa55fc0977f7561cf650a339", "api_paste_code", _tmp8_, "api_paste_name", _tmp9_, "api_paste_private", _tmp10_, "api_paste_expire_date", _tmp11_, "api_paste_format", "matlab", NULL); + request = _tmp12_; + _tmp13_ = message; + _tmp14_ = request; + _tmp15_ = string_get_data (_tmp14_, &_tmp15__length1); + _tmp16_ = _tmp15_; + _tmp16__length1 = _tmp15__length1; + soup_message_set_request (_tmp13_, "application/x-www-form-urlencoded", SOUP_MEMORY_COPY, _tmp16_, (gsize) _tmp16__length1); + _tmp17_ = message; + soup_message_set_flags (_tmp17_, SOUP_MESSAGE_NO_REDIRECT); + _tmp18_ = session; + _tmp19_ = message; + soup_session_send_message ((SoupSession*) _tmp18_, _tmp19_); + _tmp20_ = message; + _tmp21_ = _tmp20_->response_body; + _tmp22_ = _tmp21_->data; + _tmp22__length1 = (gint) _tmp21_->length; + _tmp23_ = g_strdup ((const gchar*) _tmp22_); + output = _tmp23_; + _tmp24_ = output; + _tmp25_ = string_slice (_tmp24_, (glong) 0, (glong) 6); + _tmp26_ = _tmp25_; + _tmp27_ = g_strcmp0 (_tmp26_, "ERROR:") != 0; + _g_free0 (_tmp26_); + if (_tmp27_) { + const gchar* _tmp28_ = NULL; + gchar* _tmp29_ = NULL; + const gchar* _tmp30_ = NULL; + const gchar* _tmp31_ = NULL; + gchar* _tmp32_ = NULL; + _tmp28_ = output; + _tmp29_ = string_slice (_tmp28_, (glong) 0, (glong) (20 + NASC_PASTE_BIN_PASTE_ID_LEN)); + _g_free0 (output); + output = _tmp29_; + _tmp30_ = output; + g_debug ("PasteBinDialog.vala:80: %s", _tmp30_); + _tmp31_ = output; + _tmp32_ = g_strdup (_tmp31_); + _g_free0 (_vala_link); + _vala_link = _tmp32_; + } else { + gchar* _tmp33_ = NULL; + const gchar* _tmp34_ = NULL; + const gchar* _tmp35_ = NULL; + GQuark _tmp37_ = 0U; + static GQuark _tmp36_label0 = 0; + static GQuark _tmp36_label1 = 0; + _tmp33_ = g_strdup (""); + _g_free0 (_vala_link); + _vala_link = _tmp33_; + _tmp34_ = output; + _tmp35_ = _tmp34_; + _tmp37_ = (NULL == _tmp35_) ? 0 : g_quark_from_string (_tmp35_); + if (_tmp37_ == ((0 != _tmp36_label0) ? _tmp36_label0 : (_tmp36_label0 = g_quark_from_static_string ("ERROR: Invalid POST request, or \"paste_code\" value empty")))) { + switch (0) { + default: + { + result = 2; + _g_free0 (output); + _g_free0 (request); + _g_object_unref0 (message); + _g_object_unref0 (session); + _g_free0 (api_url); + if (link) { + *link = _vala_link; + } else { + _g_free0 (_vala_link); + } + return result; + } + } + } else if (_tmp37_ == ((0 != _tmp36_label1) ? _tmp36_label1 : (_tmp36_label1 = g_quark_from_static_string ("ERROR: Invalid file format")))) { + switch (0) { + default: + { + result = 3; + _g_free0 (output); + _g_free0 (request); + _g_object_unref0 (message); + _g_object_unref0 (session); + _g_free0 (api_url); + if (link) { + *link = _vala_link; + } else { + _g_free0 (_vala_link); + } + return result; + } + } + } else { + switch (0) { + default: + { + result = 1; + _g_free0 (output); + _g_free0 (request); + _g_object_unref0 (message); + _g_object_unref0 (session); + _g_free0 (api_url); + if (link) { + *link = _vala_link; + } else { + _g_free0 (_vala_link); + } + return result; + } + } + } + } + result = 0; + _g_free0 (output); + _g_free0 (request); + _g_object_unref0 (message); + _g_object_unref0 (session); + _g_free0 (api_url); + if (link) { + *link = _vala_link; + } else { + _g_free0 (_vala_link); + } + return result; +} + + +NascPasteBin* nasc_paste_bin_construct (GType object_type) { + NascPasteBin * self = NULL; + self = (NascPasteBin*) g_object_new (object_type, NULL); + return self; +} + + +NascPasteBin* nasc_paste_bin_new (void) { + return nasc_paste_bin_construct (NASC_TYPE_PASTE_BIN); +} + + +static void nasc_paste_bin_class_init (NascPasteBinClass * klass) { + nasc_paste_bin_parent_class = g_type_class_peek_parent (klass); +} + + +static void nasc_paste_bin_instance_init (NascPasteBin * self) { +} + + +GType nasc_paste_bin_get_type (void) { + static volatile gsize nasc_paste_bin_type_id__volatile = 0; + if (g_once_init_enter (&nasc_paste_bin_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascPasteBinClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_paste_bin_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascPasteBin), 0, (GInstanceInitFunc) nasc_paste_bin_instance_init, NULL }; + GType nasc_paste_bin_type_id; + nasc_paste_bin_type_id = g_type_register_static (G_TYPE_OBJECT, "NascPasteBin", &g_define_type_info, 0); + g_once_init_leave (&nasc_paste_bin_type_id__volatile, nasc_paste_bin_type_id); + } + return nasc_paste_bin_type_id__volatile; +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static const gchar* string_to_string (const gchar* self) { + const gchar* result = NULL; + g_return_val_if_fail (self != NULL, NULL); + result = self; + return result; +} + + +static void _nasc_paste_bin_dialog_send_button_clicked_gtk_button_clicked (GtkButton* _sender, gpointer self) { + nasc_paste_bin_dialog_send_button_clicked ((NascPasteBinDialog*) self); +} + + +NascPasteBinDialog* nasc_paste_bin_dialog_construct (GType object_type, GtkWindow* parent, Controller* controller) { + NascPasteBinDialog * self = NULL; + Controller* _tmp0_ = NULL; + Controller* _tmp1_ = NULL; + GtkWindow* _tmp2_ = NULL; + const gchar* _tmp4_ = NULL; + GtkBox* content2 = NULL; + GtkBox* _tmp5_ = NULL; + GtkBox* _tmp6_ = NULL; + GtkLabel* label = NULL; + GtkLabel* _tmp7_ = NULL; + gchar* lab = NULL; + const gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + GtkButton* _tmp13_ = NULL; + g_return_val_if_fail (controller != NULL, NULL); + self = (NascPasteBinDialog*) g_object_new (object_type, NULL); + _tmp0_ = controller; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->controller); + self->priv->controller = _tmp1_; + _tmp2_ = parent; + if (_tmp2_ != NULL) { + GtkWindow* _tmp3_ = NULL; + _tmp3_ = parent; + gtk_window_set_transient_for ((GtkWindow*) self, _tmp3_); + } + _tmp4_ = _ ("Share via PasteBin"); + gtk_window_set_title ((GtkWindow*) self, _tmp4_); + _tmp5_ = (GtkBox*) gtk_dialog_get_content_area ((GtkDialog*) self); + _tmp6_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, gtk_box_get_type ()) ? ((GtkBox*) _tmp5_) : NULL); + content2 = _tmp6_; + _tmp7_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp7_); + label = _tmp7_; + _tmp8_ = _ ("Share via PasteBin"); + _tmp9_ = g_strdup (_tmp8_); + lab = _tmp9_; + _tmp10_ = string_to_string (lab); + _tmp11_ = g_strconcat ("", _tmp10_, "", NULL); + _tmp12_ = _tmp11_; + gtk_label_set_markup (label, _tmp12_); + _g_free0 (_tmp12_); + gtk_container_add ((GtkContainer*) content2, (GtkWidget*) label); + nasc_paste_bin_dialog_create_dialog (self); + _tmp13_ = self->priv->send_button; + g_signal_connect_object (_tmp13_, "clicked", (GCallback) _nasc_paste_bin_dialog_send_button_clicked_gtk_button_clicked, self, 0); + _g_free0 (lab); + _g_object_unref0 (label); + _g_object_unref0 (content2); + return self; +} + + +NascPasteBinDialog* nasc_paste_bin_dialog_new (GtkWindow* parent, Controller* controller) { + return nasc_paste_bin_dialog_construct (NASC_TYPE_PASTE_BIN_DIALOG, parent, controller); +} + + +static void nasc_paste_bin_dialog_create_dialog (NascPasteBinDialog* self) { + GtkBox* _tmp0_ = NULL; + GtkBox* _tmp1_ = NULL; + GtkEntry* _tmp2_ = NULL; + GtkEntry* _tmp3_ = NULL; + GtkLabel* name_entry_l = NULL; + const gchar* _tmp4_ = NULL; + GtkLabel* _tmp5_ = NULL; + GtkBox* name_entry_box = NULL; + GtkBox* _tmp6_ = NULL; + GtkEntry* _tmp7_ = NULL; + GtkComboBoxText* _tmp8_ = NULL; + GtkLabel* expiry_combo_l = NULL; + const gchar* _tmp9_ = NULL; + GtkLabel* _tmp10_ = NULL; + GtkBox* expiry_combo_box = NULL; + GtkBox* _tmp11_ = NULL; + GtkComboBoxText* _tmp12_ = NULL; + const gchar* _tmp13_ = NULL; + GtkCheckButton* _tmp14_ = NULL; + const gchar* _tmp15_ = NULL; + GtkButton* _tmp16_ = NULL; + GtkButtonBox* bottom_buttons = NULL; + GtkButtonBox* _tmp17_ = NULL; + GtkButton* _tmp18_ = NULL; + GtkBox* _tmp19_ = NULL; + GtkAlignment* _tmp20_ = NULL; + GtkAlignment* _tmp21_ = NULL; + GtkBox* _tmp22_ = NULL; + GtkBox* _tmp23_ = NULL; + GtkCheckButton* _tmp24_ = NULL; + GtkBox* _tmp25_ = NULL; + GtkBox* _tmp26_ = NULL; + GtkBox* _tmp27_ = NULL; + GtkBox* content2 = NULL; + GtkBox* _tmp28_ = NULL; + GtkBox* _tmp29_ = NULL; + GtkBox* _tmp30_ = NULL; + GtkButton* _tmp31_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 10); + g_object_ref_sink (_tmp0_); + _g_object_unref0 (self->priv->content); + self->priv->content = _tmp0_; + _tmp1_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 10); + g_object_ref_sink (_tmp1_); + _g_object_unref0 (self->priv->padding); + self->priv->padding = _tmp1_; + _tmp2_ = (GtkEntry*) gtk_entry_new (); + g_object_ref_sink (_tmp2_); + _g_object_unref0 (self->priv->name_entry); + self->priv->name_entry = _tmp2_; + _tmp3_ = self->priv->name_entry; + gtk_entry_set_text (_tmp3_, "Test"); + _tmp4_ = _ ("Name:"); + _tmp5_ = (GtkLabel*) gtk_label_new (_tmp4_); + g_object_ref_sink (_tmp5_); + name_entry_l = _tmp5_; + _tmp6_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 58); + g_object_ref_sink (_tmp6_); + name_entry_box = _tmp6_; + gtk_box_pack_start (name_entry_box, (GtkWidget*) name_entry_l, FALSE, TRUE, (guint) 0); + _tmp7_ = self->priv->name_entry; + gtk_box_pack_start (name_entry_box, (GtkWidget*) _tmp7_, TRUE, TRUE, (guint) 0); + _tmp8_ = (GtkComboBoxText*) gtk_combo_box_text_new (); + g_object_ref_sink (_tmp8_); + _g_object_unref0 (self->priv->expiry_combo); + self->priv->expiry_combo = _tmp8_; + nasc_paste_bin_dialog_populate_expiry_combo (self); + _tmp9_ = _ ("Expiry time:"); + _tmp10_ = (GtkLabel*) gtk_label_new (_tmp9_); + g_object_ref_sink (_tmp10_); + expiry_combo_l = _tmp10_; + _tmp11_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 28); + g_object_ref_sink (_tmp11_); + expiry_combo_box = _tmp11_; + gtk_box_pack_start (expiry_combo_box, (GtkWidget*) expiry_combo_l, FALSE, TRUE, (guint) 0); + _tmp12_ = self->priv->expiry_combo; + gtk_box_pack_start (expiry_combo_box, (GtkWidget*) _tmp12_, TRUE, TRUE, (guint) 0); + _tmp13_ = _ ("Keep this paste private"); + _tmp14_ = (GtkCheckButton*) gtk_check_button_new_with_label (_tmp13_); + g_object_ref_sink (_tmp14_); + _g_object_unref0 (self->priv->private_check); + self->priv->private_check = _tmp14_; + _tmp15_ = _ ("Upload"); + _tmp16_ = (GtkButton*) gtk_button_new_with_label (_tmp15_); + g_object_ref_sink (_tmp16_); + _g_object_unref0 (self->priv->send_button); + self->priv->send_button = _tmp16_; + _tmp17_ = (GtkButtonBox*) gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL); + g_object_ref_sink (_tmp17_); + bottom_buttons = _tmp17_; + gtk_button_box_set_layout (bottom_buttons, GTK_BUTTONBOX_CENTER); + gtk_box_set_spacing ((GtkBox*) bottom_buttons, 10); + _tmp18_ = self->priv->send_button; + gtk_box_pack_end ((GtkBox*) bottom_buttons, (GtkWidget*) _tmp18_, TRUE, TRUE, (guint) 0); + _tmp19_ = self->priv->content; + _tmp20_ = nasc_paste_bin_dialog_wrap_alignment ((GtkWidget*) name_entry_box, 12, 0, 0, 0); + _tmp21_ = _tmp20_; + gtk_box_pack_start (_tmp19_, (GtkWidget*) _tmp21_, TRUE, TRUE, (guint) 0); + _g_object_unref0 (_tmp21_); + _tmp22_ = self->priv->content; + gtk_box_pack_start (_tmp22_, (GtkWidget*) expiry_combo_box, TRUE, TRUE, (guint) 0); + _tmp23_ = self->priv->content; + _tmp24_ = self->priv->private_check; + gtk_box_pack_start (_tmp23_, (GtkWidget*) _tmp24_, TRUE, TRUE, (guint) 0); + _tmp25_ = self->priv->content; + gtk_box_pack_end (_tmp25_, (GtkWidget*) bottom_buttons, TRUE, TRUE, (guint) 12); + _tmp26_ = self->priv->padding; + _tmp27_ = self->priv->content; + gtk_box_pack_start (_tmp26_, (GtkWidget*) _tmp27_, FALSE, TRUE, (guint) 12); + _tmp28_ = (GtkBox*) gtk_dialog_get_content_area ((GtkDialog*) self); + _tmp29_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp28_, gtk_box_get_type ()) ? ((GtkBox*) _tmp28_) : NULL); + content2 = _tmp29_; + _tmp30_ = self->priv->padding; + gtk_container_add ((GtkContainer*) content2, (GtkWidget*) _tmp30_); + gtk_widget_show_all ((GtkWidget*) self); + _tmp31_ = self->priv->send_button; + gtk_widget_grab_focus ((GtkWidget*) _tmp31_); + _g_object_unref0 (content2); + _g_object_unref0 (bottom_buttons); + _g_object_unref0 (expiry_combo_box); + _g_object_unref0 (expiry_combo_l); + _g_object_unref0 (name_entry_box); + _g_object_unref0 (name_entry_l); +} + + +static GtkAlignment* nasc_paste_bin_dialog_wrap_alignment (GtkWidget* widget, gint top, gint right, gint bottom, gint left) { + GtkAlignment* result = NULL; + GtkAlignment* alignment = NULL; + GtkAlignment* _tmp0_ = NULL; + gint _tmp1_ = 0; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + gint _tmp4_ = 0; + GtkWidget* _tmp5_ = NULL; + g_return_val_if_fail (widget != NULL, NULL); + _tmp0_ = (GtkAlignment*) gtk_alignment_new (0.0f, 0.0f, 1.0f, 1.0f); + g_object_ref_sink (_tmp0_); + alignment = _tmp0_; + _tmp1_ = top; + g_object_set (alignment, "top-padding", (guint) _tmp1_, NULL); + _tmp2_ = right; + g_object_set (alignment, "right-padding", (guint) _tmp2_, NULL); + _tmp3_ = bottom; + g_object_set (alignment, "bottom-padding", (guint) _tmp3_, NULL); + _tmp4_ = left; + g_object_set (alignment, "left-padding", (guint) _tmp4_, NULL); + _tmp5_ = widget; + gtk_container_add ((GtkContainer*) alignment, _tmp5_); + result = alignment; + return result; +} + + +static void nasc_paste_bin_dialog_send_button_clicked (NascPasteBinDialog* self) { + GtkBox* _tmp0_ = NULL; + GtkSpinner* spinner = NULL; + GtkSpinner* _tmp1_ = NULL; + GtkBox* _tmp2_ = NULL; + GtkSpinner* _tmp3_ = NULL; + GtkSpinner* _tmp4_ = NULL; + GtkSpinner* _tmp5_ = NULL; + gchar* link = NULL; + gint submit_result = 0; + gchar* _tmp6_ = NULL; + gint _tmp7_ = 0; + GtkSpinner* _tmp8_ = NULL; + GtkBox* box = NULL; + GtkBox* _tmp9_ = NULL; + gint _tmp10_ = 0; + GtkBox* _tmp26_ = NULL; + GtkBox* _tmp27_ = NULL; + GtkBox* _tmp28_ = NULL; + GtkBox* _tmp29_ = NULL; + GtkBox* _tmp30_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->content; + gtk_widget_hide ((GtkWidget*) _tmp0_); + _tmp1_ = (GtkSpinner*) gtk_spinner_new (); + g_object_ref_sink (_tmp1_); + spinner = _tmp1_; + _tmp2_ = self->priv->padding; + _tmp3_ = spinner; + gtk_box_pack_start (_tmp2_, (GtkWidget*) _tmp3_, TRUE, TRUE, (guint) 10); + _tmp4_ = spinner; + gtk_widget_show ((GtkWidget*) _tmp4_); + _tmp5_ = spinner; + gtk_spinner_start (_tmp5_); + _tmp7_ = nasc_paste_bin_dialog_submit_paste (self, &_tmp6_); + _g_free0 (link); + link = _tmp6_; + submit_result = _tmp7_; + _tmp8_ = spinner; + gtk_widget_hide ((GtkWidget*) _tmp8_); + _tmp9_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 10); + g_object_ref_sink (_tmp9_); + box = _tmp9_; + _tmp10_ = submit_result; + if (_tmp10_ == 0) { + GtkLinkButton* link_button = NULL; + const gchar* _tmp11_ = NULL; + GtkLinkButton* _tmp12_ = NULL; + GtkBox* _tmp13_ = NULL; + GtkLinkButton* _tmp14_ = NULL; + _tmp11_ = link; + _tmp12_ = (GtkLinkButton*) gtk_link_button_new (_tmp11_); + g_object_ref_sink (_tmp12_); + link_button = _tmp12_; + _tmp13_ = box; + _tmp14_ = link_button; + gtk_box_pack_start (_tmp13_, (GtkWidget*) _tmp14_, FALSE, TRUE, (guint) 25); + _g_object_unref0 (link_button); + } else { + GString* error_desc = NULL; + GString* _tmp15_ = NULL; + gint _tmp16_ = 0; + GString* _tmp20_ = NULL; + GtkLabel* err_label = NULL; + GString* _tmp21_ = NULL; + const gchar* _tmp22_ = NULL; + GtkLabel* _tmp23_ = NULL; + GtkBox* _tmp24_ = NULL; + GtkLabel* _tmp25_ = NULL; + _tmp15_ = g_string_new (""); + error_desc = _tmp15_; + _tmp16_ = submit_result; + switch (_tmp16_) { + case 2: + { + GString* _tmp17_ = NULL; + _tmp17_ = error_desc; + g_string_append (_tmp17_, "The text is void!"); + break; + } + case 3: + { + GString* _tmp18_ = NULL; + _tmp18_ = error_desc; + g_string_append (_tmp18_, "The text format doesn't exist"); + break; + } + default: + { + GString* _tmp19_ = NULL; + _tmp19_ = error_desc; + g_string_append (_tmp19_, "An error occured"); + break; + } + } + _tmp20_ = error_desc; + g_string_append (_tmp20_, "\n" "The text was sent"); + _tmp21_ = error_desc; + _tmp22_ = _tmp21_->str; + _tmp23_ = (GtkLabel*) gtk_label_new (_tmp22_); + g_object_ref_sink (_tmp23_); + err_label = _tmp23_; + _tmp24_ = box; + _tmp25_ = err_label; + gtk_box_pack_start (_tmp24_, (GtkWidget*) _tmp25_, FALSE, TRUE, (guint) 0); + _g_object_unref0 (err_label); + _g_string_free0 (error_desc); + } + _tmp26_ = self->priv->padding; + _tmp27_ = box; + gtk_box_pack_start (_tmp26_, (GtkWidget*) _tmp27_, FALSE, TRUE, (guint) 12); + _tmp28_ = self->priv->padding; + gtk_widget_set_halign ((GtkWidget*) _tmp28_, GTK_ALIGN_CENTER); + _tmp29_ = box; + gtk_widget_set_valign ((GtkWidget*) _tmp29_, GTK_ALIGN_CENTER); + _tmp30_ = box; + gtk_widget_show_all ((GtkWidget*) _tmp30_); + _g_object_unref0 (box); + _g_free0 (link); + _g_object_unref0 (spinner); +} + + +static gint nasc_paste_bin_dialog_submit_paste (NascPasteBinDialog* self, gchar** link) { + gchar* _vala_link = NULL; + gint result = 0; + gchar* paste_code = NULL; + Controller* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* paste_name = NULL; + GtkEntry* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + const gchar* _tmp6_ = NULL; + GtkCheckButton* _tmp7_ = NULL; + gboolean _tmp8_ = FALSE; + gchar* paste_private = NULL; + gchar* _tmp9_ = NULL; + gchar* paste_expire_date = NULL; + GtkComboBoxText* _tmp10_ = NULL; + const gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + gint submit_result = 0; + const gchar* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + gint _tmp16_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->controller; + _tmp1_ = controller_get_export_text (_tmp0_); + paste_code = _tmp1_; + _tmp2_ = self->priv->name_entry; + _tmp3_ = gtk_entry_get_text (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = g_strdup (_tmp4_); + paste_name = _tmp5_; + _tmp7_ = self->priv->private_check; + _tmp8_ = gtk_toggle_button_get_active ((GtkToggleButton*) _tmp7_); + if (_tmp8_ == TRUE) { + _tmp6_ = NASC_PASTE_BIN_PRIVATE; + } else { + _tmp6_ = NASC_PASTE_BIN_PUBLIC; + } + _tmp9_ = g_strdup (_tmp6_); + paste_private = _tmp9_; + _tmp10_ = self->priv->expiry_combo; + _tmp11_ = gtk_combo_box_get_active_id ((GtkComboBox*) _tmp10_); + _tmp12_ = g_strdup (_tmp11_); + paste_expire_date = _tmp12_; + _tmp13_ = paste_code; + _tmp14_ = paste_name; + _tmp16_ = nasc_paste_bin_submit (&_tmp15_, _tmp13_, _tmp14_, paste_private, paste_expire_date); + _g_free0 (_vala_link); + _vala_link = _tmp15_; + submit_result = _tmp16_; + result = submit_result; + _g_free0 (paste_expire_date); + _g_free0 (paste_private); + _g_free0 (paste_name); + _g_free0 (paste_code); + if (link) { + *link = _vala_link; + } else { + _g_free0 (_vala_link); + } + return result; +} + + +static void nasc_paste_bin_dialog_populate_expiry_combo (NascPasteBinDialog* self) { + GtkComboBoxText* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + GtkComboBoxText* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + GtkComboBoxText* _tmp4_ = NULL; + const gchar* _tmp5_ = NULL; + GtkComboBoxText* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; + GtkComboBoxText* _tmp8_ = NULL; + const gchar* _tmp9_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->expiry_combo; + _tmp1_ = _ ("Never"); + gtk_combo_box_text_append (_tmp0_, NASC_PASTE_BIN_NEVER, _tmp1_); + _tmp2_ = self->priv->expiry_combo; + _tmp3_ = _ ("Ten minutes"); + gtk_combo_box_text_append (_tmp2_, NASC_PASTE_BIN_TEN_MINUTES, _tmp3_); + _tmp4_ = self->priv->expiry_combo; + _tmp5_ = _ ("One hour"); + gtk_combo_box_text_append (_tmp4_, NASC_PASTE_BIN_HOUR, _tmp5_); + _tmp6_ = self->priv->expiry_combo; + _tmp7_ = _ ("One day"); + gtk_combo_box_text_append (_tmp6_, NASC_PASTE_BIN_DAY, _tmp7_); + _tmp8_ = self->priv->expiry_combo; + _tmp9_ = _ ("One month"); + gtk_combo_box_text_append (_tmp8_, NASC_PASTE_BIN_MONTH, _tmp9_); +} + + +static void nasc_paste_bin_dialog_class_init (NascPasteBinDialogClass * klass) { + nasc_paste_bin_dialog_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (NascPasteBinDialogPrivate)); + G_OBJECT_CLASS (klass)->finalize = nasc_paste_bin_dialog_finalize; +} + + +static void nasc_paste_bin_dialog_instance_init (NascPasteBinDialog * self) { + self->priv = NASC_PASTE_BIN_DIALOG_GET_PRIVATE (self); +} + + +static void nasc_paste_bin_dialog_finalize (GObject* obj) { + NascPasteBinDialog * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, NASC_TYPE_PASTE_BIN_DIALOG, NascPasteBinDialog); + _g_object_unref0 (self->priv->content); + _g_object_unref0 (self->priv->padding); + _g_object_unref0 (self->priv->name_entry); + _g_object_unref0 (self->priv->expiry_combo); + _g_object_unref0 (self->priv->private_check); + _g_object_unref0 (self->priv->send_button); + _g_object_unref0 (self->priv->controller); + G_OBJECT_CLASS (nasc_paste_bin_dialog_parent_class)->finalize (obj); +} + + +GType nasc_paste_bin_dialog_get_type (void) { + static volatile gsize nasc_paste_bin_dialog_type_id__volatile = 0; + if (g_once_init_enter (&nasc_paste_bin_dialog_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (NascPasteBinDialogClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) nasc_paste_bin_dialog_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (NascPasteBinDialog), 0, (GInstanceInitFunc) nasc_paste_bin_dialog_instance_init, NULL }; + GType nasc_paste_bin_dialog_type_id; + nasc_paste_bin_dialog_type_id = g_type_register_static (gtk_dialog_get_type (), "NascPasteBinDialog", &g_define_type_info, 0); + g_once_init_leave (&nasc_paste_bin_dialog_type_id__volatile, nasc_paste_bin_dialog_type_id); + } + return nasc_paste_bin_dialog_type_id__volatile; +} + + + diff -Nru nasc-0.2/build/src/PeriodicTable.c nasc-0.3/build/src/PeriodicTable.c --- nasc-0.2/build/src/PeriodicTable.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/PeriodicTable.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,3264 @@ +/* PeriodicTable.c generated by valac 0.32.1, the Vala compiler + * generated from PeriodicTable.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_PERIODIC_TABLE (periodic_table_get_type ()) +#define PERIODIC_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PERIODIC_TABLE, PeriodicTable)) +#define PERIODIC_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PERIODIC_TABLE, PeriodicTableClass)) +#define IS_PERIODIC_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PERIODIC_TABLE)) +#define IS_PERIODIC_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PERIODIC_TABLE)) +#define PERIODIC_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PERIODIC_TABLE, PeriodicTableClass)) + +typedef struct _PeriodicTable PeriodicTable; +typedef struct _PeriodicTableClass PeriodicTableClass; +typedef struct _PeriodicTablePrivate PeriodicTablePrivate; + +#define TYPE_CONTROLLER (controller_get_type ()) +#define CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTROLLER, Controller)) +#define CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTROLLER, ControllerClass)) +#define IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTROLLER)) +#define IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTROLLER)) +#define CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTROLLER, ControllerClass)) + +typedef struct _Controller Controller; +typedef struct _ControllerClass ControllerClass; + +#define PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER (periodic_table_element_persenter_get_type ()) +#define PERIODIC_TABLE_ELEMENT_PERSENTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER, PeriodicTableElementPersenter)) +#define PERIODIC_TABLE_ELEMENT_PERSENTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER, PeriodicTableElementPersenterClass)) +#define PERIODIC_TABLE_IS_ELEMENT_PERSENTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER)) +#define PERIODIC_TABLE_IS_ELEMENT_PERSENTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER)) +#define PERIODIC_TABLE_ELEMENT_PERSENTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER, PeriodicTableElementPersenterClass)) + +typedef struct _PeriodicTableElementPersenter PeriodicTableElementPersenter; +typedef struct _PeriodicTableElementPersenterClass PeriodicTableElementPersenterClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#define PERIODIC_TABLE_TYPE_ELEMENT (periodic_table_element_get_type ()) +#define PERIODIC_TABLE_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERIODIC_TABLE_TYPE_ELEMENT, PeriodicTableElement)) +#define PERIODIC_TABLE_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERIODIC_TABLE_TYPE_ELEMENT, PeriodicTableElementClass)) +#define PERIODIC_TABLE_IS_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERIODIC_TABLE_TYPE_ELEMENT)) +#define PERIODIC_TABLE_IS_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERIODIC_TABLE_TYPE_ELEMENT)) +#define PERIODIC_TABLE_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERIODIC_TABLE_TYPE_ELEMENT, PeriodicTableElementClass)) + +typedef struct _PeriodicTableElement PeriodicTableElement; +typedef struct _PeriodicTableElementClass PeriodicTableElementClass; +typedef struct _Block15Data Block15Data; +typedef struct _Block16Data Block16Data; + +#define PERIODIC_TABLE_TYPE_PLACEHOLDER (periodic_table_placeholder_get_type ()) +#define PERIODIC_TABLE_PLACEHOLDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERIODIC_TABLE_TYPE_PLACEHOLDER, PeriodicTablePlaceholder)) +#define PERIODIC_TABLE_PLACEHOLDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERIODIC_TABLE_TYPE_PLACEHOLDER, PeriodicTablePlaceholderClass)) +#define PERIODIC_TABLE_IS_PLACEHOLDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERIODIC_TABLE_TYPE_PLACEHOLDER)) +#define PERIODIC_TABLE_IS_PLACEHOLDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERIODIC_TABLE_TYPE_PLACEHOLDER)) +#define PERIODIC_TABLE_PLACEHOLDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERIODIC_TABLE_TYPE_PLACEHOLDER, PeriodicTablePlaceholderClass)) + +typedef struct _PeriodicTablePlaceholder PeriodicTablePlaceholder; +typedef struct _PeriodicTablePlaceholderClass PeriodicTablePlaceholderClass; +typedef struct _PeriodicTablePlaceholderPrivate PeriodicTablePlaceholderPrivate; +#define _g_free0(var) (var = (g_free (var), NULL)) +typedef struct _PeriodicTableElementPersenterPrivate PeriodicTableElementPersenterPrivate; +typedef struct _Block17Data Block17Data; + +#define TYPE_INPUT_VIEW (input_view_get_type ()) +#define INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INPUT_VIEW, InputView)) +#define INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INPUT_VIEW, InputViewClass)) +#define IS_INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INPUT_VIEW)) +#define IS_INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INPUT_VIEW)) +#define INPUT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INPUT_VIEW, InputViewClass)) + +typedef struct _InputView InputView; +typedef struct _InputViewClass InputViewClass; +typedef struct _ControllerPrivate ControllerPrivate; + +#define TYPE_CALCULATOR (calculator_get_type ()) +#define CALCULATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CALCULATOR, Calculator)) +#define CALCULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CALCULATOR, CalculatorClass)) +#define IS_CALCULATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CALCULATOR)) +#define IS_CALCULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CALCULATOR)) +#define CALCULATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CALCULATOR, CalculatorClass)) + +typedef struct _Calculator Calculator; +typedef struct _CalculatorClass CalculatorClass; +#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL))) +#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) +typedef struct _PeriodicTableElementPrivate PeriodicTableElementPrivate; + +struct _PeriodicTable { + GtkGrid parent_instance; + PeriodicTablePrivate * priv; + Controller* controller; + gchar** elements; + gint elements_length1; + gint* classification; + gint classification_length1; +}; + +struct _PeriodicTableClass { + GtkGridClass parent_class; +}; + +struct _PeriodicTablePrivate { + gboolean initialized; + PeriodicTableElementPersenter* presenter; +}; + +struct _Block15Data { + int _ref_count_; + PeriodicTable* self; + PeriodicTableElement* element_clicked; +}; + +struct _Block16Data { + int _ref_count_; + Block15Data * _data15_; + PeriodicTableElement* el; +}; + +struct _PeriodicTablePlaceholder { + GtkDrawingArea parent_instance; + PeriodicTablePlaceholderPrivate * priv; +}; + +struct _PeriodicTablePlaceholderClass { + GtkDrawingAreaClass parent_class; +}; + +struct _PeriodicTablePlaceholderPrivate { + gchar* text; +}; + +struct _PeriodicTableElementPersenter { + GtkDrawingArea parent_instance; + PeriodicTableElementPersenterPrivate * priv; +}; + +struct _PeriodicTableElementPersenterClass { + GtkDrawingAreaClass parent_class; +}; + +struct _PeriodicTableElementPersenterPrivate { + PeriodicTableElement* el; + PeriodicTable* table; + GdkCursor* left_ptr; + GdkCursor* hand; + gboolean hovering; + GdkRectangle rect1; + GdkRectangle rect2; + GdkRectangle rect3; + GdkRectangle rect4; +}; + +struct _Block17Data { + int _ref_count_; + PeriodicTableElementPersenter* self; + PeriodicTable* table; +}; + +struct _Controller { + GObject parent_instance; + ControllerPrivate * priv; + Calculator* calculator; +}; + +struct _ControllerClass { + GObjectClass parent_class; +}; + +struct _PeriodicTableElement { + GtkDrawingArea parent_instance; + PeriodicTableElementPrivate * priv; +}; + +struct _PeriodicTableElementClass { + GtkDrawingAreaClass parent_class; +}; + +struct _PeriodicTableElementPrivate { + gint _index; + gchar* _symbol; + gint _class; + gint _group; + gint _period; + gboolean focused; +}; + + +static gpointer periodic_table_parent_class = NULL; +static gpointer periodic_table_placeholder_parent_class = NULL; +static gpointer periodic_table_element_persenter_parent_class = NULL; +static gpointer periodic_table_element_parent_class = NULL; + +GType periodic_table_get_type (void) G_GNUC_CONST; +GType controller_get_type (void) G_GNUC_CONST; +GType periodic_table_element_persenter_get_type (void) G_GNUC_CONST; +#define PERIODIC_TABLE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_PERIODIC_TABLE, PeriodicTablePrivate)) +enum { + PERIODIC_TABLE_DUMMY_PROPERTY +}; +#define PERIODIC_TABLE_function "atom(%d;%s)" +#define PERIODIC_TABLE_symbol "symbol" +#define PERIODIC_TABLE_number "number" +#define PERIODIC_TABLE_title "name" +#define PERIODIC_TABLE_class "class" +#define PERIODIC_TABLE_weight "weight" +#define PERIODIC_TABLE_boiling "boiling" +#define PERIODIC_TABLE_melting "melting" +#define PERIODIC_TABLE_density "density" +PeriodicTable* periodic_table_new (Controller* controller); +PeriodicTable* periodic_table_construct (GType object_type, Controller* controller); +PeriodicTableElementPersenter* periodic_table_element_persenter_new (PeriodicTable* table); +PeriodicTableElementPersenter* periodic_table_element_persenter_construct (GType object_type, PeriodicTable* table); +void periodic_table_init (PeriodicTable* self); +GType periodic_table_element_get_type (void) G_GNUC_CONST; +static Block15Data* block15_data_ref (Block15Data* _data15_); +static void block15_data_unref (void * _userdata_); +static gboolean __lambda44_ (PeriodicTable* self, GdkEventButton* evt); +static gboolean ___lambda44__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +static Block16Data* block16_data_ref (Block16Data* _data16_); +static void block16_data_unref (void * _userdata_); +PeriodicTablePlaceholder* periodic_table_placeholder_new (const gchar* text); +PeriodicTablePlaceholder* periodic_table_placeholder_construct (GType object_type, const gchar* text); +GType periodic_table_placeholder_get_type (void) G_GNUC_CONST; +PeriodicTableElement* periodic_table_element_new (gint index, const gchar* symbol, gint class, gint group, gint period); +PeriodicTableElement* periodic_table_element_construct (GType object_type, gint index, const gchar* symbol, gint class, gint group, gint period); +static gboolean _____lambda45_ (Block16Data* _data16_, GdkEventCrossing* e); +void periodic_table_element_persenter_set_element (PeriodicTableElementPersenter* self, PeriodicTableElement* el); +static gboolean ______lambda45__gtk_widget_enter_notify_event (GtkWidget* _sender, GdkEventCrossing* event, gpointer self); +static gboolean _____lambda46_ (Block16Data* _data16_, GdkEventCrossing* e); +static gboolean ______lambda46__gtk_widget_leave_notify_event (GtkWidget* _sender, GdkEventCrossing* event, gpointer self); +static gboolean _____lambda47_ (Block16Data* _data16_, GdkEventButton* e); +static gboolean ______lambda47__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +#define PERIODIC_TABLE_PLACEHOLDER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PERIODIC_TABLE_TYPE_PLACEHOLDER, PeriodicTablePlaceholderPrivate)) +enum { + PERIODIC_TABLE_PLACEHOLDER_DUMMY_PROPERTY +}; +static gboolean periodic_table_placeholder_real_draw (GtkWidget* base, cairo_t* context); +static void periodic_table_placeholder_finalize (GObject* obj); +#define PERIODIC_TABLE_ELEMENT_PERSENTER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER, PeriodicTableElementPersenterPrivate)) +enum { + PERIODIC_TABLE_ELEMENT_PERSENTER_DUMMY_PROPERTY +}; +static Block17Data* block17_data_ref (Block17Data* _data17_); +static void block17_data_unref (void * _userdata_); +static gboolean __lambda42_ (Block17Data* _data17_, GdkEventButton* evt); +GType input_view_get_type (void) G_GNUC_CONST; +InputView* controller_get_input (Controller* self); +void input_view_insert_text (InputView* self, const gchar* text); +const gchar* periodic_table_element_get_symbol (PeriodicTableElement* self); +static gboolean ___lambda42__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +static gboolean __lambda43_ (PeriodicTableElementPersenter* self, GdkEventMotion* evt); +static gboolean ___lambda43__gtk_widget_motion_notify_event (GtkWidget* _sender, GdkEventMotion* event, gpointer self); +static gboolean periodic_table_element_persenter_real_draw (GtkWidget* base, cairo_t* context); +static void periodic_table_element_persenter_draw_rounded_path (PeriodicTableElementPersenter* self, cairo_t* ctx, gdouble x, gdouble y, gdouble width, gdouble height, gdouble radius); +GType calculator_get_type (void) G_GNUC_CONST; +gchar* calculator_calculate (Calculator* self, const gchar* input); +gint periodic_table_element_get_index (PeriodicTableElement* self); +void periodic_table_element_set_class_color (gint class, cairo_t* context, gdouble alpha); +gint periodic_table_element_get_class (PeriodicTableElement* self); +gint periodic_table_element_get_group (PeriodicTableElement* self); +gint periodic_table_element_get_period (PeriodicTableElement* self); +static gchar* periodic_table_element_persenter_get_class_name (PeriodicTableElementPersenter* self, gint class); +static void periodic_table_element_persenter_finalize (GObject* obj); +#define PERIODIC_TABLE_ELEMENT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PERIODIC_TABLE_TYPE_ELEMENT, PeriodicTableElementPrivate)) +enum { + PERIODIC_TABLE_ELEMENT_DUMMY_PROPERTY, + PERIODIC_TABLE_ELEMENT_INDEX, + PERIODIC_TABLE_ELEMENT_SYMBOL, + PERIODIC_TABLE_ELEMENT_CLASS, + PERIODIC_TABLE_ELEMENT_GROUP, + PERIODIC_TABLE_ELEMENT_PERIOD +}; +static void periodic_table_element_set_index (PeriodicTableElement* self, gint value); +static void periodic_table_element_set_symbol (PeriodicTableElement* self, const gchar* value); +static void periodic_table_element_set_class (PeriodicTableElement* self, gint value); +static void periodic_table_element_set_group (PeriodicTableElement* self, gint value); +static void periodic_table_element_set_period (PeriodicTableElement* self, gint value); +gboolean periodic_table_element_enter (PeriodicTableElement* self, GdkEventCrossing* event); +static gboolean _periodic_table_element_enter_gtk_widget_enter_notify_event (GtkWidget* _sender, GdkEventCrossing* event, gpointer self); +gboolean periodic_table_element_leave (PeriodicTableElement* self, GdkEventCrossing* event); +static gboolean _periodic_table_element_leave_gtk_widget_leave_notify_event (GtkWidget* _sender, GdkEventCrossing* event, gpointer self); +static gboolean periodic_table_element_real_draw (GtkWidget* base, cairo_t* context); +static void periodic_table_element_draw_rounded_path (PeriodicTableElement* self, cairo_t* ctx, gdouble x, gdouble y, gdouble width, gdouble height, gdouble radius); +static void periodic_table_element_finalize (GObject* obj); +static void _vala_periodic_table_element_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec); +static void _vala_periodic_table_element_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec); +static void periodic_table_finalize (GObject* obj); +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func); +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func); + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +PeriodicTable* periodic_table_construct (GType object_type, Controller* controller) { + PeriodicTable * self = NULL; + Controller* _tmp0_ = NULL; + Controller* _tmp1_ = NULL; + PeriodicTableElementPersenter* _tmp2_ = NULL; + g_return_val_if_fail (controller != NULL, NULL); + self = (PeriodicTable*) g_object_new (object_type, NULL); + _tmp0_ = controller; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->controller); + self->controller = _tmp1_; + _tmp2_ = periodic_table_element_persenter_new (self); + g_object_ref_sink (_tmp2_); + _g_object_unref0 (self->priv->presenter); + self->priv->presenter = _tmp2_; + g_object_set ((GtkWidget*) self, "margin", 20, NULL); + return self; +} + + +PeriodicTable* periodic_table_new (Controller* controller) { + return periodic_table_construct (TYPE_PERIODIC_TABLE, controller); +} + + +static Block15Data* block15_data_ref (Block15Data* _data15_) { + g_atomic_int_inc (&_data15_->_ref_count_); + return _data15_; +} + + +static void block15_data_unref (void * _userdata_) { + Block15Data* _data15_; + _data15_ = (Block15Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data15_->_ref_count_)) { + PeriodicTable* self; + self = _data15_->self; + _g_object_unref0 (_data15_->element_clicked); + _g_object_unref0 (self); + g_slice_free (Block15Data, _data15_); + } +} + + +static gboolean __lambda44_ (PeriodicTable* self, GdkEventButton* evt) { + gboolean result = FALSE; + g_return_val_if_fail (evt != NULL, FALSE); + g_signal_emit_by_name (self, "close"); + result = FALSE; + return result; +} + + +static gboolean ___lambda44__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = __lambda44_ ((PeriodicTable*) self, event); + return result; +} + + +static Block16Data* block16_data_ref (Block16Data* _data16_) { + g_atomic_int_inc (&_data16_->_ref_count_); + return _data16_; +} + + +static void block16_data_unref (void * _userdata_) { + Block16Data* _data16_; + _data16_ = (Block16Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data16_->_ref_count_)) { + PeriodicTable* self; + self = _data16_->_data15_->self; + _g_object_unref0 (_data16_->el); + block15_data_unref (_data16_->_data15_); + _data16_->_data15_ = NULL; + g_slice_free (Block16Data, _data16_); + } +} + + +static gboolean _____lambda45_ (Block16Data* _data16_, GdkEventCrossing* e) { + Block15Data* _data15_; + PeriodicTable* self; + gboolean result = FALSE; + PeriodicTableElementPersenter* _tmp0_ = NULL; + PeriodicTableElement* _tmp1_ = NULL; + _data15_ = _data16_->_data15_; + self = _data15_->self; + g_return_val_if_fail (e != NULL, FALSE); + _tmp0_ = self->priv->presenter; + _tmp1_ = _data16_->el; + periodic_table_element_persenter_set_element (_tmp0_, _tmp1_); + result = FALSE; + return result; +} + + +static gboolean ______lambda45__gtk_widget_enter_notify_event (GtkWidget* _sender, GdkEventCrossing* event, gpointer self) { + gboolean result; + result = _____lambda45_ (self, event); + return result; +} + + +static gboolean _____lambda46_ (Block16Data* _data16_, GdkEventCrossing* e) { + Block15Data* _data15_; + PeriodicTable* self; + gboolean result = FALSE; + PeriodicTableElementPersenter* _tmp0_ = NULL; + PeriodicTableElement* _tmp1_ = NULL; + _data15_ = _data16_->_data15_; + self = _data15_->self; + g_return_val_if_fail (e != NULL, FALSE); + _tmp0_ = self->priv->presenter; + _tmp1_ = _data15_->element_clicked; + periodic_table_element_persenter_set_element (_tmp0_, _tmp1_); + result = FALSE; + return result; +} + + +static gboolean ______lambda46__gtk_widget_leave_notify_event (GtkWidget* _sender, GdkEventCrossing* event, gpointer self) { + gboolean result; + result = _____lambda46_ (self, event); + return result; +} + + +static gboolean _____lambda47_ (Block16Data* _data16_, GdkEventButton* e) { + Block15Data* _data15_; + PeriodicTable* self; + gboolean result = FALSE; + PeriodicTableElementPersenter* _tmp0_ = NULL; + PeriodicTableElement* _tmp1_ = NULL; + PeriodicTableElement* _tmp2_ = NULL; + PeriodicTableElement* _tmp3_ = NULL; + _data15_ = _data16_->_data15_; + self = _data15_->self; + g_return_val_if_fail (e != NULL, FALSE); + _tmp0_ = self->priv->presenter; + _tmp1_ = _data16_->el; + periodic_table_element_persenter_set_element (_tmp0_, _tmp1_); + _tmp2_ = _data16_->el; + _tmp3_ = _g_object_ref0 (_tmp2_); + _g_object_unref0 (_data15_->element_clicked); + _data15_->element_clicked = _tmp3_; + result = FALSE; + return result; +} + + +static gboolean ______lambda47__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = _____lambda47_ (self, event); + return result; +} + + +void periodic_table_init (PeriodicTable* self) { + Block15Data* _data15_; + gboolean _tmp0_ = FALSE; + GtkButton* close_but = NULL; + GtkButton* _tmp1_ = NULL; + GtkImage* close_img = NULL; + GtkImage* _tmp2_ = NULL; + GtkImage* _tmp3_ = NULL; + GdkPixbuf* _tmp4_ = NULL; + GdkPixbuf* _tmp5_ = NULL; + GtkButton* _tmp6_ = NULL; + GtkButton* _tmp7_ = NULL; + GtkStyleContext* _tmp8_ = NULL; + GtkButton* _tmp9_ = NULL; + GtkImage* _tmp10_ = NULL; + GtkButton* _tmp11_ = NULL; + GtkButton* _tmp12_ = NULL; + gint a = 0; + gint b = 0; + g_return_if_fail (self != NULL); + _data15_ = g_slice_new0 (Block15Data); + _data15_->_ref_count_ = 1; + _data15_->self = g_object_ref (self); + _tmp0_ = self->priv->initialized; + if (_tmp0_) { + block15_data_unref (_data15_); + _data15_ = NULL; + return; + } + _tmp1_ = (GtkButton*) gtk_button_new (); + g_object_ref_sink (_tmp1_); + close_but = _tmp1_; + _tmp2_ = (GtkImage*) gtk_image_new (); + g_object_ref_sink (_tmp2_); + close_img = _tmp2_; + _tmp3_ = close_img; + _tmp4_ = get_close_pixbuf (); + _tmp5_ = _tmp4_; + g_object_set (_tmp3_, "pixbuf", _tmp5_, NULL); + _g_object_unref0 (_tmp5_); + _tmp6_ = close_but; + gtk_widget_set_margin_bottom ((GtkWidget*) _tmp6_, 20); + _tmp7_ = close_but; + _tmp8_ = gtk_widget_get_style_context ((GtkWidget*) _tmp7_); + gtk_style_context_add_class (_tmp8_, "flat"); + _tmp9_ = close_but; + _tmp10_ = close_img; + gtk_button_set_image (_tmp9_, (GtkWidget*) _tmp10_); + _tmp11_ = close_but; + g_signal_connect_object ((GtkWidget*) _tmp11_, "button-press-event", (GCallback) ___lambda44__gtk_widget_button_press_event, self, 0); + _tmp12_ = close_but; + gtk_grid_attach ((GtkGrid*) self, (GtkWidget*) _tmp12_, 0, 0, 1, 1); + a = 0; + b = 1; + _data15_->element_clicked = NULL; + { + gint i = 0; + i = 0; + { + gboolean _tmp13_ = FALSE; + _tmp13_ = TRUE; + while (TRUE) { + Block16Data* _data16_; + gint _tmp15_ = 0; + gchar** _tmp16_ = NULL; + gint _tmp16__length1 = 0; + gint _tmp17_ = 0; + gint group = 0; + gint _tmp51_ = 0; + gint period = 0; + gint _tmp52_ = 0; + gint _tmp53_ = 0; + gint _tmp54_ = 0; + gint _tmp55_ = 0; + gchar** _tmp56_ = NULL; + gint _tmp56__length1 = 0; + gint _tmp57_ = 0; + const gchar* _tmp58_ = NULL; + gint* _tmp59_ = NULL; + gint _tmp59__length1 = 0; + gint _tmp60_ = 0; + gint _tmp61_ = 0; + gint _tmp62_ = 0; + gint _tmp63_ = 0; + PeriodicTableElement* _tmp64_ = NULL; + PeriodicTableElement* _tmp65_ = NULL; + PeriodicTableElement* _tmp66_ = NULL; + PeriodicTableElement* _tmp67_ = NULL; + PeriodicTableElement* _tmp68_ = NULL; + gint _tmp69_ = 0; + gint _tmp70_ = 0; + _data16_ = g_slice_new0 (Block16Data); + _data16_->_ref_count_ = 1; + _data16_->_data15_ = block15_data_ref (_data15_); + if (!_tmp13_) { + gint _tmp14_ = 0; + _tmp14_ = i; + i = _tmp14_ + 1; + } + _tmp13_ = FALSE; + _tmp15_ = i; + _tmp16_ = self->elements; + _tmp16__length1 = self->elements_length1; + if (!(_tmp15_ < _tmp16__length1)) { + block16_data_unref (_data16_); + _data16_ = NULL; + break; + } + _tmp17_ = a; + if ((_tmp17_ % 18) == 0) { + gint _tmp18_ = 0; + _tmp18_ = b; + b = _tmp18_ + 1; + a = 0; + } else { + gboolean _tmp19_ = FALSE; + gint _tmp20_ = 0; + _tmp20_ = a; + if (_tmp20_ == 1) { + gint _tmp21_ = 0; + _tmp21_ = b; + _tmp19_ = _tmp21_ == 2; + } else { + _tmp19_ = FALSE; + } + if (_tmp19_) { + PeriodicTableElementPersenter* _tmp22_ = NULL; + gint _tmp23_ = 0; + gint _tmp24_ = 0; + gint _tmp25_ = 0; + _tmp22_ = self->priv->presenter; + _tmp23_ = a; + a = _tmp23_ + 1; + _tmp24_ = a; + _tmp25_ = b; + gtk_grid_attach ((GtkGrid*) self, (GtkWidget*) _tmp22_, _tmp24_, _tmp25_, 10, 3); + a = 17; + } else { + gboolean _tmp26_ = FALSE; + gint _tmp27_ = 0; + _tmp27_ = a; + if (_tmp27_ == 2) { + gboolean _tmp28_ = FALSE; + gint _tmp29_ = 0; + _tmp29_ = b; + if (_tmp29_ == 3) { + _tmp28_ = TRUE; + } else { + gint _tmp30_ = 0; + _tmp30_ = b; + _tmp28_ = _tmp30_ == 4; + } + _tmp26_ = _tmp28_; + } else { + _tmp26_ = FALSE; + } + if (_tmp26_) { + a = 12; + } else { + gboolean _tmp31_ = FALSE; + gint _tmp32_ = 0; + _tmp32_ = a; + if (_tmp32_ == 2) { + gint _tmp33_ = 0; + _tmp33_ = b; + _tmp31_ = _tmp33_ == 7; + } else { + _tmp31_ = FALSE; + } + if (_tmp31_) { + PeriodicTablePlaceholder* _tmp34_ = NULL; + PeriodicTablePlaceholder* _tmp35_ = NULL; + gint _tmp36_ = 0; + gint _tmp37_ = 0; + _tmp34_ = periodic_table_placeholder_new ("La-Lu"); + g_object_ref_sink (_tmp34_); + _tmp35_ = _tmp34_; + _tmp36_ = a; + _tmp37_ = b; + gtk_grid_attach ((GtkGrid*) self, (GtkWidget*) _tmp35_, _tmp36_, _tmp37_, 1, 1); + _g_object_unref0 (_tmp35_); + b = 10; + } else { + gboolean _tmp38_ = FALSE; + gint _tmp39_ = 0; + _tmp39_ = a; + if (_tmp39_ == 17) { + gint _tmp40_ = 0; + _tmp40_ = b; + _tmp38_ = _tmp40_ == 10; + } else { + _tmp38_ = FALSE; + } + if (_tmp38_) { + a = 3; + b = 7; + } else { + gboolean _tmp41_ = FALSE; + gint _tmp42_ = 0; + _tmp42_ = a; + if (_tmp42_ == 2) { + gint _tmp43_ = 0; + _tmp43_ = b; + _tmp41_ = _tmp43_ == 8; + } else { + _tmp41_ = FALSE; + } + if (_tmp41_) { + PeriodicTablePlaceholder* _tmp44_ = NULL; + PeriodicTablePlaceholder* _tmp45_ = NULL; + gint _tmp46_ = 0; + gint _tmp47_ = 0; + _tmp44_ = periodic_table_placeholder_new ("Ac-Lr"); + g_object_ref_sink (_tmp44_); + _tmp45_ = _tmp44_; + _tmp46_ = a; + _tmp47_ = b; + gtk_grid_attach ((GtkGrid*) self, (GtkWidget*) _tmp45_, _tmp46_, _tmp47_, 1, 1); + _g_object_unref0 (_tmp45_); + b = 11; + } else { + gboolean _tmp48_ = FALSE; + gint _tmp49_ = 0; + _tmp49_ = a; + if (_tmp49_ == 17) { + gint _tmp50_ = 0; + _tmp50_ = b; + _tmp48_ = _tmp50_ == 11; + } else { + _tmp48_ = FALSE; + } + if (_tmp48_) { + a = 3; + b = 8; + } + } + } + } + } + } + } + _tmp51_ = a; + group = _tmp51_ + 1; + _tmp52_ = b; + period = _tmp52_ - 1; + _tmp53_ = period; + if (_tmp53_ == 9) { + period = 6; + } + _tmp54_ = period; + if (_tmp54_ == 10) { + period = 7; + } + _tmp55_ = i; + _tmp56_ = self->elements; + _tmp56__length1 = self->elements_length1; + _tmp57_ = i; + _tmp58_ = _tmp56_[_tmp57_]; + _tmp59_ = self->classification; + _tmp59__length1 = self->classification_length1; + _tmp60_ = i; + _tmp61_ = _tmp59_[_tmp60_]; + _tmp62_ = group; + _tmp63_ = period; + _tmp64_ = periodic_table_element_new (_tmp55_ + 1, _tmp58_, _tmp61_, _tmp62_, _tmp63_); + g_object_ref_sink (_tmp64_); + _data16_->el = _tmp64_; + _tmp65_ = _data16_->el; + g_signal_connect_data ((GtkWidget*) _tmp65_, "enter-notify-event", (GCallback) ______lambda45__gtk_widget_enter_notify_event, block16_data_ref (_data16_), (GClosureNotify) block16_data_unref, 0); + _tmp66_ = _data16_->el; + g_signal_connect_data ((GtkWidget*) _tmp66_, "leave-notify-event", (GCallback) ______lambda46__gtk_widget_leave_notify_event, block16_data_ref (_data16_), (GClosureNotify) block16_data_unref, 0); + _tmp67_ = _data16_->el; + g_signal_connect_data ((GtkWidget*) _tmp67_, "button-press-event", (GCallback) ______lambda47__gtk_widget_button_press_event, block16_data_ref (_data16_), (GClosureNotify) block16_data_unref, 0); + _tmp68_ = _data16_->el; + _tmp69_ = a; + a = _tmp69_ + 1; + _tmp70_ = b; + gtk_grid_attach ((GtkGrid*) self, (GtkWidget*) _tmp68_, _tmp69_, _tmp70_, 1, 1); + block16_data_unref (_data16_); + _data16_ = NULL; + } + } + } + self->priv->initialized = TRUE; + gtk_widget_show_all ((GtkWidget*) self); + gtk_widget_grab_focus ((GtkWidget*) self); + _g_object_unref0 (close_img); + _g_object_unref0 (close_but); + block15_data_unref (_data15_); + _data15_ = NULL; +} + + +PeriodicTablePlaceholder* periodic_table_placeholder_construct (GType object_type, const gchar* text) { + PeriodicTablePlaceholder * self = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_val_if_fail (text != NULL, NULL); + self = (PeriodicTablePlaceholder*) g_object_new (object_type, NULL); + _tmp0_ = text; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->priv->text); + self->priv->text = _tmp1_; + gtk_widget_set_size_request ((GtkWidget*) self, 36, 46); + return self; +} + + +PeriodicTablePlaceholder* periodic_table_placeholder_new (const gchar* text) { + return periodic_table_placeholder_construct (PERIODIC_TABLE_TYPE_PLACEHOLDER, text); +} + + +static gboolean periodic_table_placeholder_real_draw (GtkWidget* base, cairo_t* context) { + PeriodicTablePlaceholder * self; + gboolean result = FALSE; + cairo_t* _tmp0_ = NULL; + cairo_t* _tmp1_ = NULL; + cairo_t* _tmp2_ = NULL; + cairo_t* _tmp3_ = NULL; + cairo_t* _tmp4_ = NULL; + cairo_t* _tmp5_ = NULL; + cairo_t* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; + self = (PeriodicTablePlaceholder*) base; + g_return_val_if_fail (context != NULL, FALSE); + _tmp0_ = context; + cairo_set_source_rgba (_tmp0_, (gdouble) 0, (gdouble) 0, (gdouble) 0, 0.1); + _tmp1_ = context; + cairo_rectangle (_tmp1_, (gdouble) 0, (gdouble) 0, (gdouble) 34, (gdouble) 44); + _tmp2_ = context; + cairo_fill (_tmp2_); + _tmp3_ = context; + cairo_set_source_rgba (_tmp3_, (gdouble) 0, (gdouble) 0, (gdouble) 0, (gdouble) 1); + _tmp4_ = context; + cairo_set_font_size (_tmp4_, (gdouble) 12); + _tmp5_ = context; + cairo_move_to (_tmp5_, (gdouble) 1, (gdouble) 38); + _tmp6_ = context; + _tmp7_ = self->priv->text; + cairo_show_text (_tmp6_, _tmp7_); + result = TRUE; + return result; +} + + +static void periodic_table_placeholder_class_init (PeriodicTablePlaceholderClass * klass) { + periodic_table_placeholder_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (PeriodicTablePlaceholderPrivate)); + ((GtkWidgetClass *) klass)->draw = periodic_table_placeholder_real_draw; + G_OBJECT_CLASS (klass)->finalize = periodic_table_placeholder_finalize; +} + + +static void periodic_table_placeholder_instance_init (PeriodicTablePlaceholder * self) { + self->priv = PERIODIC_TABLE_PLACEHOLDER_GET_PRIVATE (self); +} + + +static void periodic_table_placeholder_finalize (GObject* obj) { + PeriodicTablePlaceholder * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERIODIC_TABLE_TYPE_PLACEHOLDER, PeriodicTablePlaceholder); + _g_free0 (self->priv->text); + G_OBJECT_CLASS (periodic_table_placeholder_parent_class)->finalize (obj); +} + + +GType periodic_table_placeholder_get_type (void) { + static volatile gsize periodic_table_placeholder_type_id__volatile = 0; + if (g_once_init_enter (&periodic_table_placeholder_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (PeriodicTablePlaceholderClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) periodic_table_placeholder_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PeriodicTablePlaceholder), 0, (GInstanceInitFunc) periodic_table_placeholder_instance_init, NULL }; + GType periodic_table_placeholder_type_id; + periodic_table_placeholder_type_id = g_type_register_static (gtk_drawing_area_get_type (), "PeriodicTablePlaceholder", &g_define_type_info, 0); + g_once_init_leave (&periodic_table_placeholder_type_id__volatile, periodic_table_placeholder_type_id); + } + return periodic_table_placeholder_type_id__volatile; +} + + +static Block17Data* block17_data_ref (Block17Data* _data17_) { + g_atomic_int_inc (&_data17_->_ref_count_); + return _data17_; +} + + +static void block17_data_unref (void * _userdata_) { + Block17Data* _data17_; + _data17_ = (Block17Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data17_->_ref_count_)) { + PeriodicTableElementPersenter* self; + self = _data17_->self; + _g_object_unref0 (_data17_->table); + _g_object_unref0 (self); + g_slice_free (Block17Data, _data17_); + } +} + + +static gboolean __lambda42_ (Block17Data* _data17_, GdkEventButton* evt) { + PeriodicTableElementPersenter* self; + gboolean result = FALSE; + gboolean _tmp0_ = FALSE; + GdkRectangle src = {0}; + GdkEventButton* _tmp1_ = NULL; + gdouble _tmp2_ = 0.0; + GdkEventButton* _tmp3_ = NULL; + gdouble _tmp4_ = 0.0; + GdkRectangle _tmp5_ = {0}; + gboolean _tmp6_ = FALSE; + GdkWindow* _tmp49_ = NULL; + GdkCursor* _tmp50_ = NULL; + PeriodicTable* _tmp51_ = NULL; + self = _data17_->self; + g_return_val_if_fail (evt != NULL, FALSE); + _tmp0_ = self->priv->hovering; + if (!_tmp0_) { + result = FALSE; + return result; + } + memset (&src, 0, sizeof (GdkRectangle)); + _tmp1_ = evt; + _tmp2_ = _tmp1_->x; + src.x = (gint) _tmp2_; + _tmp3_ = evt; + _tmp4_ = _tmp3_->y; + src.y = (gint) _tmp4_; + src.width = 1; + src.height = 1; + _tmp5_ = src; + _tmp6_ = gdk_rectangle_intersect (&self->priv->rect1, &_tmp5_, NULL); + if (_tmp6_) { + PeriodicTable* _tmp7_ = NULL; + Controller* _tmp8_ = NULL; + InputView* _tmp9_ = NULL; + InputView* _tmp10_ = NULL; + PeriodicTableElement* _tmp11_ = NULL; + const gchar* _tmp12_ = NULL; + const gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + _tmp7_ = _data17_->table; + _tmp8_ = _tmp7_->controller; + _tmp9_ = controller_get_input (_tmp8_); + _tmp10_ = _tmp9_; + _tmp11_ = self->priv->el; + _tmp12_ = periodic_table_element_get_symbol (_tmp11_); + _tmp13_ = _tmp12_; + _tmp14_ = g_strdup_printf ("atom(%s;%s)", _tmp13_, PERIODIC_TABLE_weight); + _tmp15_ = _tmp14_; + input_view_insert_text (_tmp10_, _tmp15_); + _g_free0 (_tmp15_); + } else { + GdkRectangle _tmp16_ = {0}; + gboolean _tmp17_ = FALSE; + _tmp16_ = src; + _tmp17_ = gdk_rectangle_intersect (&self->priv->rect2, &_tmp16_, NULL); + if (_tmp17_) { + PeriodicTable* _tmp18_ = NULL; + Controller* _tmp19_ = NULL; + InputView* _tmp20_ = NULL; + InputView* _tmp21_ = NULL; + PeriodicTableElement* _tmp22_ = NULL; + const gchar* _tmp23_ = NULL; + const gchar* _tmp24_ = NULL; + gchar* _tmp25_ = NULL; + gchar* _tmp26_ = NULL; + _tmp18_ = _data17_->table; + _tmp19_ = _tmp18_->controller; + _tmp20_ = controller_get_input (_tmp19_); + _tmp21_ = _tmp20_; + _tmp22_ = self->priv->el; + _tmp23_ = periodic_table_element_get_symbol (_tmp22_); + _tmp24_ = _tmp23_; + _tmp25_ = g_strdup_printf ("atom(%s;%s)", _tmp24_, PERIODIC_TABLE_boiling); + _tmp26_ = _tmp25_; + input_view_insert_text (_tmp21_, _tmp26_); + _g_free0 (_tmp26_); + } else { + GdkRectangle _tmp27_ = {0}; + gboolean _tmp28_ = FALSE; + _tmp27_ = src; + _tmp28_ = gdk_rectangle_intersect (&self->priv->rect3, &_tmp27_, NULL); + if (_tmp28_) { + PeriodicTable* _tmp29_ = NULL; + Controller* _tmp30_ = NULL; + InputView* _tmp31_ = NULL; + InputView* _tmp32_ = NULL; + PeriodicTableElement* _tmp33_ = NULL; + const gchar* _tmp34_ = NULL; + const gchar* _tmp35_ = NULL; + gchar* _tmp36_ = NULL; + gchar* _tmp37_ = NULL; + _tmp29_ = _data17_->table; + _tmp30_ = _tmp29_->controller; + _tmp31_ = controller_get_input (_tmp30_); + _tmp32_ = _tmp31_; + _tmp33_ = self->priv->el; + _tmp34_ = periodic_table_element_get_symbol (_tmp33_); + _tmp35_ = _tmp34_; + _tmp36_ = g_strdup_printf ("atom(%s;%s)", _tmp35_, PERIODIC_TABLE_melting); + _tmp37_ = _tmp36_; + input_view_insert_text (_tmp32_, _tmp37_); + _g_free0 (_tmp37_); + } else { + GdkRectangle _tmp38_ = {0}; + gboolean _tmp39_ = FALSE; + _tmp38_ = src; + _tmp39_ = gdk_rectangle_intersect (&self->priv->rect4, &_tmp38_, NULL); + if (_tmp39_) { + PeriodicTable* _tmp40_ = NULL; + Controller* _tmp41_ = NULL; + InputView* _tmp42_ = NULL; + InputView* _tmp43_ = NULL; + PeriodicTableElement* _tmp44_ = NULL; + const gchar* _tmp45_ = NULL; + const gchar* _tmp46_ = NULL; + gchar* _tmp47_ = NULL; + gchar* _tmp48_ = NULL; + _tmp40_ = _data17_->table; + _tmp41_ = _tmp40_->controller; + _tmp42_ = controller_get_input (_tmp41_); + _tmp43_ = _tmp42_; + _tmp44_ = self->priv->el; + _tmp45_ = periodic_table_element_get_symbol (_tmp44_); + _tmp46_ = _tmp45_; + _tmp47_ = g_strdup_printf ("atom(%s;%s)", _tmp46_, PERIODIC_TABLE_density); + _tmp48_ = _tmp47_; + input_view_insert_text (_tmp43_, _tmp48_); + _g_free0 (_tmp48_); + } else { + result = FALSE; + return result; + } + } + } + } + _tmp49_ = gtk_widget_get_window ((GtkWidget*) self); + _tmp50_ = self->priv->left_ptr; + gdk_window_set_cursor (_tmp49_, _tmp50_); + _tmp51_ = _data17_->table; + g_signal_emit_by_name (_tmp51_, "close"); + result = FALSE; + return result; +} + + +static gboolean ___lambda42__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = __lambda42_ (self, event); + return result; +} + + +static gboolean __lambda43_ (PeriodicTableElementPersenter* self, GdkEventMotion* evt) { + gboolean result = FALSE; + PeriodicTableElement* _tmp0_ = NULL; + GdkRectangle src = {0}; + GdkEventMotion* _tmp1_ = NULL; + gdouble _tmp2_ = 0.0; + GdkEventMotion* _tmp3_ = NULL; + gdouble _tmp4_ = 0.0; + gboolean _tmp5_ = FALSE; + gboolean _tmp6_ = FALSE; + gboolean _tmp7_ = FALSE; + GdkRectangle _tmp8_ = {0}; + gboolean _tmp9_ = FALSE; + g_return_val_if_fail (evt != NULL, FALSE); + _tmp0_ = self->priv->el; + if (_tmp0_ == NULL) { + result = FALSE; + return result; + } + memset (&src, 0, sizeof (GdkRectangle)); + _tmp1_ = evt; + _tmp2_ = _tmp1_->x; + src.x = (gint) _tmp2_; + _tmp3_ = evt; + _tmp4_ = _tmp3_->y; + src.y = (gint) _tmp4_; + src.width = 1; + src.height = 1; + _tmp8_ = src; + _tmp9_ = gdk_rectangle_intersect (&self->priv->rect1, &_tmp8_, NULL); + if (_tmp9_) { + _tmp7_ = TRUE; + } else { + GdkRectangle _tmp10_ = {0}; + gboolean _tmp11_ = FALSE; + _tmp10_ = src; + _tmp11_ = gdk_rectangle_intersect (&self->priv->rect2, &_tmp10_, NULL); + _tmp7_ = _tmp11_; + } + if (_tmp7_) { + _tmp6_ = TRUE; + } else { + GdkRectangle _tmp12_ = {0}; + gboolean _tmp13_ = FALSE; + _tmp12_ = src; + _tmp13_ = gdk_rectangle_intersect (&self->priv->rect3, &_tmp12_, NULL); + _tmp6_ = _tmp13_; + } + if (_tmp6_) { + _tmp5_ = TRUE; + } else { + GdkRectangle _tmp14_ = {0}; + gboolean _tmp15_ = FALSE; + _tmp14_ = src; + _tmp15_ = gdk_rectangle_intersect (&self->priv->rect4, &_tmp14_, NULL); + _tmp5_ = _tmp15_; + } + if (_tmp5_) { + gboolean _tmp16_ = FALSE; + _tmp16_ = self->priv->hovering; + if (!_tmp16_) { + GdkWindow* _tmp17_ = NULL; + GdkCursor* _tmp18_ = NULL; + self->priv->hovering = TRUE; + _tmp17_ = gtk_widget_get_window ((GtkWidget*) self); + _tmp18_ = self->priv->hand; + gdk_window_set_cursor (_tmp17_, _tmp18_); + } + } else { + gboolean _tmp19_ = FALSE; + _tmp19_ = self->priv->hovering; + if (_tmp19_) { + GdkWindow* _tmp20_ = NULL; + GdkCursor* _tmp21_ = NULL; + self->priv->hovering = FALSE; + _tmp20_ = gtk_widget_get_window ((GtkWidget*) self); + _tmp21_ = self->priv->left_ptr; + gdk_window_set_cursor (_tmp20_, _tmp21_); + } + } + result = FALSE; + return result; +} + + +static gboolean ___lambda43__gtk_widget_motion_notify_event (GtkWidget* _sender, GdkEventMotion* event, gpointer self) { + gboolean result; + result = __lambda43_ ((PeriodicTableElementPersenter*) self, event); + return result; +} + + +PeriodicTableElementPersenter* periodic_table_element_persenter_construct (GType object_type, PeriodicTable* table) { + PeriodicTableElementPersenter * self = NULL; + Block17Data* _data17_; + PeriodicTable* _tmp0_ = NULL; + PeriodicTable* _tmp1_ = NULL; + PeriodicTable* _tmp2_ = NULL; + PeriodicTable* _tmp3_ = NULL; + g_return_val_if_fail (table != NULL, NULL); + _data17_ = g_slice_new0 (Block17Data); + _data17_->_ref_count_ = 1; + _tmp0_ = table; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (_data17_->table); + _data17_->table = _tmp1_; + self = (PeriodicTableElementPersenter*) g_object_new (object_type, NULL); + _data17_->self = g_object_ref (self); + _tmp2_ = _data17_->table; + _tmp3_ = _g_object_ref0 (_tmp2_); + _g_object_unref0 (self->priv->table); + self->priv->table = _tmp3_; + gtk_widget_set_size_request ((GtkWidget*) self, 360, 138); + gtk_widget_set_events ((GtkWidget*) self, (gint) (GDK_BUTTON_PRESS_MASK | GDK_POINTER_MOTION_MASK)); + g_signal_connect_data ((GtkWidget*) self, "button-press-event", (GCallback) ___lambda42__gtk_widget_button_press_event, block17_data_ref (_data17_), (GClosureNotify) block17_data_unref, 0); + g_signal_connect_object ((GtkWidget*) self, "motion-notify-event", (GCallback) ___lambda43__gtk_widget_motion_notify_event, self, 0); + block17_data_unref (_data17_); + _data17_ = NULL; + return self; +} + + +PeriodicTableElementPersenter* periodic_table_element_persenter_new (PeriodicTable* table) { + return periodic_table_element_persenter_construct (PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER, table); +} + + +static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) { + gchar* result = NULL; + GError * _inner_error_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (old != NULL, NULL); + g_return_val_if_fail (replacement != NULL, NULL); + { + GRegex* regex = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + GRegex* _tmp3_ = NULL; + GRegex* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + GRegex* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + _tmp0_ = old; + _tmp1_ = g_regex_escape_string (_tmp0_, -1); + _tmp2_ = _tmp1_; + _tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_); + _tmp4_ = _tmp3_; + _g_free0 (_tmp2_); + regex = _tmp4_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch13_g_regex_error; + } + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp6_ = regex; + _tmp7_ = replacement; + _tmp8_ = g_regex_replace_literal (_tmp6_, self, (gssize) -1, 0, _tmp7_, 0, &_inner_error_); + _tmp5_ = _tmp8_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_regex_unref0 (regex); + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch13_g_regex_error; + } + _g_regex_unref0 (regex); + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp9_ = _tmp5_; + _tmp5_ = NULL; + result = _tmp9_; + _g_free0 (_tmp5_); + _g_regex_unref0 (regex); + return result; + } + goto __finally13; + __catch13_g_regex_error: + { + GError* e = NULL; + e = _inner_error_; + _inner_error_ = NULL; + g_assert_not_reached (); + _g_error_free0 (e); + } + __finally13: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } +} + + +static gboolean periodic_table_element_persenter_real_draw (GtkWidget* base, cairo_t* context) { + PeriodicTableElementPersenter * self; + gboolean result = FALSE; + cairo_t* _tmp0_ = NULL; + cairo_t* _tmp1_ = NULL; + cairo_t* _tmp2_ = NULL; + PeriodicTableElement* _tmp3_ = NULL; + self = (PeriodicTableElementPersenter*) base; + g_return_val_if_fail (context != NULL, FALSE); + _tmp0_ = context; + cairo_set_source_rgba (_tmp0_, (gdouble) 0, (gdouble) 0, (gdouble) 0, 0.1); + _tmp1_ = context; + periodic_table_element_persenter_draw_rounded_path (self, _tmp1_, (gdouble) 0, (gdouble) 0, (gdouble) 358, (gdouble) 136, (gdouble) 10); + _tmp2_ = context; + cairo_fill (_tmp2_); + _tmp3_ = self->priv->el; + if (_tmp3_ != NULL) { + gchar* name = NULL; + PeriodicTable* _tmp4_ = NULL; + Controller* _tmp5_ = NULL; + Calculator* _tmp6_ = NULL; + PeriodicTableElement* _tmp7_ = NULL; + gint _tmp8_ = 0; + gint _tmp9_ = 0; + gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + PeriodicTableElement* _tmp16_ = NULL; + gint _tmp17_ = 0; + gint _tmp18_ = 0; + cairo_t* _tmp19_ = NULL; + cairo_t* _tmp20_ = NULL; + cairo_t* _tmp21_ = NULL; + cairo_t* _tmp22_ = NULL; + cairo_t* _tmp23_ = NULL; + cairo_text_extents_t extents = {0}; + cairo_t* _tmp24_ = NULL; + PeriodicTableElement* _tmp25_ = NULL; + const gchar* _tmp26_ = NULL; + const gchar* _tmp27_ = NULL; + cairo_text_extents_t _tmp28_ = {0}; + cairo_t* _tmp29_ = NULL; + cairo_text_extents_t _tmp30_ = {0}; + gdouble _tmp31_ = 0.0; + cairo_t* _tmp32_ = NULL; + PeriodicTableElement* _tmp33_ = NULL; + const gchar* _tmp34_ = NULL; + const gchar* _tmp35_ = NULL; + cairo_t* _tmp36_ = NULL; + gchar* index_str = NULL; + PeriodicTableElement* _tmp37_ = NULL; + gint _tmp38_ = 0; + gint _tmp39_ = 0; + gchar* _tmp40_ = NULL; + cairo_t* _tmp41_ = NULL; + const gchar* _tmp42_ = NULL; + cairo_text_extents_t _tmp43_ = {0}; + cairo_t* _tmp44_ = NULL; + cairo_text_extents_t _tmp45_ = {0}; + gdouble _tmp46_ = 0.0; + cairo_t* _tmp47_ = NULL; + const gchar* _tmp48_ = NULL; + PeriodicTableElement* _tmp49_ = NULL; + gint _tmp50_ = 0; + gint _tmp51_ = 0; + cairo_t* _tmp58_ = NULL; + PeriodicTableElement* _tmp59_ = NULL; + gint _tmp60_ = 0; + gint _tmp61_ = 0; + gchar* _tmp62_ = NULL; + gchar* _tmp63_ = NULL; + cairo_t* _tmp64_ = NULL; + cairo_text_extents_t _tmp65_ = {0}; + gdouble _tmp66_ = 0.0; + cairo_t* _tmp67_ = NULL; + PeriodicTableElement* _tmp68_ = NULL; + gint _tmp69_ = 0; + gint _tmp70_ = 0; + gchar* _tmp71_ = NULL; + gchar* _tmp72_ = NULL; + cairo_t* _tmp73_ = NULL; + const gchar* _tmp74_ = NULL; + cairo_text_extents_t _tmp75_ = {0}; + cairo_text_extents_t _tmp76_ = {0}; + gdouble _tmp77_ = 0.0; + cairo_t* _tmp82_ = NULL; + cairo_text_extents_t _tmp83_ = {0}; + gdouble _tmp84_ = 0.0; + cairo_t* _tmp85_ = NULL; + const gchar* _tmp86_ = NULL; + cairo_t* _tmp87_ = NULL; + gchar* weight = NULL; + PeriodicTable* _tmp88_ = NULL; + Controller* _tmp89_ = NULL; + Calculator* _tmp90_ = NULL; + PeriodicTableElement* _tmp91_ = NULL; + gint _tmp92_ = 0; + gint _tmp93_ = 0; + gchar* _tmp94_ = NULL; + gchar* _tmp95_ = NULL; + gchar* _tmp96_ = NULL; + gchar* _tmp97_ = NULL; + gchar* weight_key = NULL; + const gchar* _tmp98_ = NULL; + gchar* _tmp99_ = NULL; + cairo_t* _tmp100_ = NULL; + const gchar* _tmp101_ = NULL; + cairo_text_extents_t _tmp102_ = {0}; + gint x_start = 0; + cairo_text_extents_t _tmp103_ = {0}; + gdouble _tmp104_ = 0.0; + cairo_t* _tmp105_ = NULL; + gint _tmp106_ = 0; + gchar* weight_txt = NULL; + const gchar* _tmp107_ = NULL; + gchar* _tmp108_ = NULL; + gchar* _tmp109_ = NULL; + const gchar* _tmp110_ = NULL; + gchar* _tmp111_ = NULL; + gchar* _tmp112_ = NULL; + cairo_t* _tmp113_ = NULL; + const gchar* _tmp114_ = NULL; + const gchar* _tmp115_ = NULL; + gchar* boiling = NULL; + PeriodicTable* _tmp126_ = NULL; + Controller* _tmp127_ = NULL; + Calculator* _tmp128_ = NULL; + PeriodicTableElement* _tmp129_ = NULL; + gint _tmp130_ = 0; + gint _tmp131_ = 0; + gchar* _tmp132_ = NULL; + gchar* _tmp133_ = NULL; + gchar* _tmp134_ = NULL; + gchar* _tmp135_ = NULL; + gchar* boiling_key = NULL; + const gchar* _tmp136_ = NULL; + gchar* _tmp137_ = NULL; + cairo_t* _tmp138_ = NULL; + const gchar* _tmp139_ = NULL; + cairo_text_extents_t _tmp140_ = {0}; + cairo_text_extents_t _tmp141_ = {0}; + gdouble _tmp142_ = 0.0; + cairo_t* _tmp143_ = NULL; + gint _tmp144_ = 0; + gchar* boiling_txt = NULL; + const gchar* _tmp145_ = NULL; + gchar* _tmp146_ = NULL; + gchar* _tmp147_ = NULL; + const gchar* _tmp148_ = NULL; + gchar* _tmp149_ = NULL; + gchar* _tmp150_ = NULL; + cairo_t* _tmp151_ = NULL; + const gchar* _tmp152_ = NULL; + const gchar* _tmp153_ = NULL; + gchar* melting = NULL; + PeriodicTable* _tmp164_ = NULL; + Controller* _tmp165_ = NULL; + Calculator* _tmp166_ = NULL; + PeriodicTableElement* _tmp167_ = NULL; + gint _tmp168_ = 0; + gint _tmp169_ = 0; + gchar* _tmp170_ = NULL; + gchar* _tmp171_ = NULL; + gchar* _tmp172_ = NULL; + gchar* _tmp173_ = NULL; + gchar* melting_key = NULL; + const gchar* _tmp174_ = NULL; + gchar* _tmp175_ = NULL; + cairo_t* _tmp176_ = NULL; + const gchar* _tmp177_ = NULL; + cairo_text_extents_t _tmp178_ = {0}; + cairo_text_extents_t _tmp179_ = {0}; + gdouble _tmp180_ = 0.0; + cairo_t* _tmp181_ = NULL; + gint _tmp182_ = 0; + gchar* melting_txt = NULL; + const gchar* _tmp183_ = NULL; + gchar* _tmp184_ = NULL; + gchar* _tmp185_ = NULL; + const gchar* _tmp186_ = NULL; + gchar* _tmp187_ = NULL; + gchar* _tmp188_ = NULL; + cairo_t* _tmp189_ = NULL; + const gchar* _tmp190_ = NULL; + const gchar* _tmp191_ = NULL; + gchar* density = NULL; + PeriodicTable* _tmp202_ = NULL; + Controller* _tmp203_ = NULL; + Calculator* _tmp204_ = NULL; + PeriodicTableElement* _tmp205_ = NULL; + gint _tmp206_ = 0; + gint _tmp207_ = 0; + gchar* _tmp208_ = NULL; + gchar* _tmp209_ = NULL; + gchar* _tmp210_ = NULL; + gchar* _tmp211_ = NULL; + gchar* _tmp212_ = NULL; + gchar* _tmp213_ = NULL; + gchar* _tmp214_ = NULL; + gchar* _tmp215_ = NULL; + gchar* _tmp216_ = NULL; + gchar* _tmp217_ = NULL; + gchar* density_key = NULL; + const gchar* _tmp218_ = NULL; + gchar* _tmp219_ = NULL; + cairo_t* _tmp220_ = NULL; + const gchar* _tmp221_ = NULL; + cairo_text_extents_t _tmp222_ = {0}; + cairo_text_extents_t _tmp223_ = {0}; + gdouble _tmp224_ = 0.0; + cairo_t* _tmp225_ = NULL; + gint _tmp226_ = 0; + gchar* density_txt = NULL; + const gchar* _tmp227_ = NULL; + gchar* _tmp228_ = NULL; + gchar* _tmp229_ = NULL; + const gchar* _tmp230_ = NULL; + gchar* _tmp231_ = NULL; + gchar* _tmp232_ = NULL; + cairo_t* _tmp233_ = NULL; + const gchar* _tmp234_ = NULL; + const gchar* _tmp235_ = NULL; + gchar* classification = NULL; + PeriodicTableElement* _tmp246_ = NULL; + gint _tmp247_ = 0; + gint _tmp248_ = 0; + gchar* _tmp249_ = NULL; + gchar* classification_key = NULL; + const gchar* _tmp250_ = NULL; + gchar* _tmp251_ = NULL; + cairo_t* _tmp252_ = NULL; + const gchar* _tmp253_ = NULL; + cairo_text_extents_t _tmp254_ = {0}; + cairo_t* _tmp255_ = NULL; + cairo_text_extents_t _tmp256_ = {0}; + gdouble _tmp257_ = 0.0; + cairo_t* _tmp258_ = NULL; + const gchar* _tmp259_ = NULL; + gchar* _tmp260_ = NULL; + gchar* _tmp261_ = NULL; + const gchar* _tmp262_ = NULL; + gchar* _tmp263_ = NULL; + gchar* _tmp264_ = NULL; + _tmp4_ = self->priv->table; + _tmp5_ = _tmp4_->controller; + _tmp6_ = _tmp5_->calculator; + _tmp7_ = self->priv->el; + _tmp8_ = periodic_table_element_get_index (_tmp7_); + _tmp9_ = _tmp8_; + _tmp10_ = g_strdup_printf (PERIODIC_TABLE_function, _tmp9_, PERIODIC_TABLE_title); + _tmp11_ = _tmp10_; + _tmp12_ = calculator_calculate (_tmp6_, _tmp11_); + _tmp13_ = _tmp12_; + _tmp14_ = string_replace (_tmp13_, "\"", ""); + _tmp15_ = _tmp14_; + _g_free0 (_tmp13_); + _g_free0 (_tmp11_); + name = _tmp15_; + _tmp16_ = self->priv->el; + _tmp17_ = periodic_table_element_get_class (_tmp16_); + _tmp18_ = _tmp17_; + _tmp19_ = context; + periodic_table_element_set_class_color (_tmp18_, _tmp19_, (gdouble) 1); + _tmp20_ = context; + periodic_table_element_persenter_draw_rounded_path (self, _tmp20_, (gdouble) 10, (gdouble) 10, (gdouble) 82, (gdouble) 116, (gdouble) 10); + _tmp21_ = context; + cairo_fill (_tmp21_); + _tmp22_ = context; + cairo_set_source_rgba (_tmp22_, (gdouble) 0, (gdouble) 0, (gdouble) 0, (gdouble) 1); + _tmp23_ = context; + cairo_set_font_size (_tmp23_, (gdouble) 32); + _tmp24_ = context; + _tmp25_ = self->priv->el; + _tmp26_ = periodic_table_element_get_symbol (_tmp25_); + _tmp27_ = _tmp26_; + cairo_text_extents (_tmp24_, _tmp27_, &_tmp28_); + extents = _tmp28_; + _tmp29_ = context; + _tmp30_ = extents; + _tmp31_ = _tmp30_.width; + cairo_move_to (_tmp29_, (41 + 7) - (_tmp31_ / 2), (gdouble) 80); + _tmp32_ = context; + _tmp33_ = self->priv->el; + _tmp34_ = periodic_table_element_get_symbol (_tmp33_); + _tmp35_ = _tmp34_; + cairo_show_text (_tmp32_, _tmp35_); + _tmp36_ = context; + cairo_set_font_size (_tmp36_, (gdouble) 14); + _tmp37_ = self->priv->el; + _tmp38_ = periodic_table_element_get_index (_tmp37_); + _tmp39_ = _tmp38_; + _tmp40_ = g_strdup_printf ("%d", _tmp39_); + index_str = _tmp40_; + _tmp41_ = context; + _tmp42_ = index_str; + cairo_text_extents (_tmp41_, _tmp42_, &_tmp43_); + extents = _tmp43_; + _tmp44_ = context; + _tmp45_ = extents; + _tmp46_ = _tmp45_.height; + cairo_move_to (_tmp44_, (gdouble) 14, 16 + _tmp46_); + _tmp47_ = context; + _tmp48_ = index_str; + cairo_show_text (_tmp47_, _tmp48_); + _tmp49_ = self->priv->el; + _tmp50_ = periodic_table_element_get_group (_tmp49_); + _tmp51_ = _tmp50_; + if (_tmp51_ > 9) { + cairo_t* _tmp52_ = NULL; + cairo_text_extents_t _tmp53_ = {0}; + gdouble _tmp54_ = 0.0; + _tmp52_ = context; + _tmp53_ = extents; + _tmp54_ = _tmp53_.height; + cairo_move_to (_tmp52_, (gdouble) 70, 16 + _tmp54_); + } else { + cairo_t* _tmp55_ = NULL; + cairo_text_extents_t _tmp56_ = {0}; + gdouble _tmp57_ = 0.0; + _tmp55_ = context; + _tmp56_ = extents; + _tmp57_ = _tmp56_.height; + cairo_move_to (_tmp55_, (gdouble) 78, 16 + _tmp57_); + } + _tmp58_ = context; + _tmp59_ = self->priv->el; + _tmp60_ = periodic_table_element_get_group (_tmp59_); + _tmp61_ = _tmp60_; + _tmp62_ = g_strdup_printf ("%d", _tmp61_); + _tmp63_ = _tmp62_; + cairo_show_text (_tmp58_, _tmp63_); + _g_free0 (_tmp63_); + _tmp64_ = context; + _tmp65_ = extents; + _tmp66_ = _tmp65_.height; + cairo_move_to (_tmp64_, (gdouble) 78, 32 + _tmp66_); + _tmp67_ = context; + _tmp68_ = self->priv->el; + _tmp69_ = periodic_table_element_get_period (_tmp68_); + _tmp70_ = _tmp69_; + _tmp71_ = g_strdup_printf ("%d", _tmp70_); + _tmp72_ = _tmp71_; + cairo_show_text (_tmp67_, _tmp72_); + _g_free0 (_tmp72_); + _tmp73_ = context; + _tmp74_ = name; + cairo_text_extents (_tmp73_, _tmp74_, &_tmp75_); + extents = _tmp75_; + _tmp76_ = extents; + _tmp77_ = _tmp76_.width; + if (_tmp77_ > ((gdouble) 82)) { + cairo_t* _tmp78_ = NULL; + cairo_t* _tmp79_ = NULL; + const gchar* _tmp80_ = NULL; + cairo_text_extents_t _tmp81_ = {0}; + _tmp78_ = context; + cairo_set_font_size (_tmp78_, (gdouble) 12); + _tmp79_ = context; + _tmp80_ = name; + cairo_text_extents (_tmp79_, _tmp80_, &_tmp81_); + extents = _tmp81_; + } + _tmp82_ = context; + _tmp83_ = extents; + _tmp84_ = _tmp83_.width; + cairo_move_to (_tmp82_, (41 + 10) - (_tmp84_ / 2), (gdouble) 115); + _tmp85_ = context; + _tmp86_ = name; + cairo_show_text (_tmp85_, _tmp86_); + _tmp87_ = context; + cairo_set_font_size (_tmp87_, (gdouble) 14); + _tmp88_ = self->priv->table; + _tmp89_ = _tmp88_->controller; + _tmp90_ = _tmp89_->calculator; + _tmp91_ = self->priv->el; + _tmp92_ = periodic_table_element_get_index (_tmp91_); + _tmp93_ = _tmp92_; + _tmp94_ = g_strdup_printf (PERIODIC_TABLE_function, _tmp93_, PERIODIC_TABLE_weight); + _tmp95_ = _tmp94_; + _tmp96_ = calculator_calculate (_tmp90_, _tmp95_); + _tmp97_ = _tmp96_; + _g_free0 (_tmp95_); + weight = _tmp97_; + _tmp98_ = _ ("Weight:"); + _tmp99_ = g_strdup (_tmp98_); + weight_key = _tmp99_; + _tmp100_ = context; + _tmp101_ = weight_key; + cairo_text_extents (_tmp100_, _tmp101_, &_tmp102_); + extents = _tmp102_; + _tmp103_ = extents; + _tmp104_ = _tmp103_.width; + x_start = (gint) (200 - _tmp104_); + _tmp105_ = context; + _tmp106_ = x_start; + cairo_move_to (_tmp105_, (gdouble) _tmp106_, (gdouble) 24); + _tmp107_ = weight_key; + _tmp108_ = g_strconcat (_tmp107_, " ", NULL); + _tmp109_ = _tmp108_; + _tmp110_ = weight; + _tmp111_ = g_strconcat (_tmp109_, _tmp110_, NULL); + _tmp112_ = _tmp111_; + _g_free0 (_tmp109_); + weight_txt = _tmp112_; + _tmp113_ = context; + _tmp114_ = weight_txt; + cairo_show_text (_tmp113_, _tmp114_); + _tmp115_ = weight; + if (g_strcmp0 (_tmp115_, "") != 0) { + cairo_t* _tmp116_ = NULL; + const gchar* _tmp117_ = NULL; + cairo_text_extents_t _tmp118_ = {0}; + gint _tmp119_ = 0; + cairo_text_extents_t _tmp120_ = {0}; + gdouble _tmp121_ = 0.0; + cairo_text_extents_t _tmp122_ = {0}; + gdouble _tmp123_ = 0.0; + cairo_text_extents_t _tmp124_ = {0}; + gdouble _tmp125_ = 0.0; + _tmp116_ = context; + _tmp117_ = weight_txt; + cairo_text_extents (_tmp116_, _tmp117_, &_tmp118_); + extents = _tmp118_; + _tmp119_ = x_start; + self->priv->rect1.x = _tmp119_; + _tmp120_ = extents; + _tmp121_ = _tmp120_.height; + self->priv->rect1.y = (gint) (24 - _tmp121_); + _tmp122_ = extents; + _tmp123_ = _tmp122_.width; + self->priv->rect1.width = (gint) _tmp123_; + _tmp124_ = extents; + _tmp125_ = _tmp124_.height; + self->priv->rect1.height = (gint) _tmp125_; + } else { + self->priv->rect1.x = -1; + self->priv->rect1.y = -1; + self->priv->rect1.width = -1; + self->priv->rect1.height = -1; + } + _tmp126_ = self->priv->table; + _tmp127_ = _tmp126_->controller; + _tmp128_ = _tmp127_->calculator; + _tmp129_ = self->priv->el; + _tmp130_ = periodic_table_element_get_index (_tmp129_); + _tmp131_ = _tmp130_; + _tmp132_ = g_strdup_printf (PERIODIC_TABLE_function, _tmp131_, PERIODIC_TABLE_boiling); + _tmp133_ = _tmp132_; + _tmp134_ = calculator_calculate (_tmp128_, _tmp133_); + _tmp135_ = _tmp134_; + _g_free0 (_tmp133_); + boiling = _tmp135_; + _tmp136_ = _ ("Boiling Point:"); + _tmp137_ = g_strdup (_tmp136_); + boiling_key = _tmp137_; + _tmp138_ = context; + _tmp139_ = boiling_key; + cairo_text_extents (_tmp138_, _tmp139_, &_tmp140_); + extents = _tmp140_; + _tmp141_ = extents; + _tmp142_ = _tmp141_.width; + x_start = (gint) (200 - _tmp142_); + _tmp143_ = context; + _tmp144_ = x_start; + cairo_move_to (_tmp143_, (gdouble) _tmp144_, (gdouble) 48); + _tmp145_ = boiling_key; + _tmp146_ = g_strconcat (_tmp145_, " ", NULL); + _tmp147_ = _tmp146_; + _tmp148_ = boiling; + _tmp149_ = g_strconcat (_tmp147_, _tmp148_, NULL); + _tmp150_ = _tmp149_; + _g_free0 (_tmp147_); + boiling_txt = _tmp150_; + _tmp151_ = context; + _tmp152_ = boiling_txt; + cairo_show_text (_tmp151_, _tmp152_); + _tmp153_ = boiling; + if (g_strcmp0 (_tmp153_, "") != 0) { + cairo_t* _tmp154_ = NULL; + const gchar* _tmp155_ = NULL; + cairo_text_extents_t _tmp156_ = {0}; + gint _tmp157_ = 0; + cairo_text_extents_t _tmp158_ = {0}; + gdouble _tmp159_ = 0.0; + cairo_text_extents_t _tmp160_ = {0}; + gdouble _tmp161_ = 0.0; + cairo_text_extents_t _tmp162_ = {0}; + gdouble _tmp163_ = 0.0; + _tmp154_ = context; + _tmp155_ = boiling_txt; + cairo_text_extents (_tmp154_, _tmp155_, &_tmp156_); + extents = _tmp156_; + _tmp157_ = x_start; + self->priv->rect2.x = _tmp157_; + _tmp158_ = extents; + _tmp159_ = _tmp158_.height; + self->priv->rect2.y = (gint) (48 - _tmp159_); + _tmp160_ = extents; + _tmp161_ = _tmp160_.width; + self->priv->rect2.width = (gint) _tmp161_; + _tmp162_ = extents; + _tmp163_ = _tmp162_.height; + self->priv->rect2.height = (gint) _tmp163_; + } else { + self->priv->rect2.x = -1; + self->priv->rect2.y = -1; + self->priv->rect2.width = -1; + self->priv->rect2.height = -1; + } + _tmp164_ = self->priv->table; + _tmp165_ = _tmp164_->controller; + _tmp166_ = _tmp165_->calculator; + _tmp167_ = self->priv->el; + _tmp168_ = periodic_table_element_get_index (_tmp167_); + _tmp169_ = _tmp168_; + _tmp170_ = g_strdup_printf (PERIODIC_TABLE_function, _tmp169_, PERIODIC_TABLE_melting); + _tmp171_ = _tmp170_; + _tmp172_ = calculator_calculate (_tmp166_, _tmp171_); + _tmp173_ = _tmp172_; + _g_free0 (_tmp171_); + melting = _tmp173_; + _tmp174_ = _ ("Melting Point:"); + _tmp175_ = g_strdup (_tmp174_); + melting_key = _tmp175_; + _tmp176_ = context; + _tmp177_ = melting_key; + cairo_text_extents (_tmp176_, _tmp177_, &_tmp178_); + extents = _tmp178_; + _tmp179_ = extents; + _tmp180_ = _tmp179_.width; + x_start = (gint) (200 - _tmp180_); + _tmp181_ = context; + _tmp182_ = x_start; + cairo_move_to (_tmp181_, (gdouble) _tmp182_, (gdouble) 72); + _tmp183_ = melting_key; + _tmp184_ = g_strconcat (_tmp183_, " ", NULL); + _tmp185_ = _tmp184_; + _tmp186_ = melting; + _tmp187_ = g_strconcat (_tmp185_, _tmp186_, NULL); + _tmp188_ = _tmp187_; + _g_free0 (_tmp185_); + melting_txt = _tmp188_; + _tmp189_ = context; + _tmp190_ = melting_txt; + cairo_show_text (_tmp189_, _tmp190_); + _tmp191_ = melting; + if (g_strcmp0 (_tmp191_, "") != 0) { + cairo_t* _tmp192_ = NULL; + const gchar* _tmp193_ = NULL; + cairo_text_extents_t _tmp194_ = {0}; + gint _tmp195_ = 0; + cairo_text_extents_t _tmp196_ = {0}; + gdouble _tmp197_ = 0.0; + cairo_text_extents_t _tmp198_ = {0}; + gdouble _tmp199_ = 0.0; + cairo_text_extents_t _tmp200_ = {0}; + gdouble _tmp201_ = 0.0; + _tmp192_ = context; + _tmp193_ = melting_txt; + cairo_text_extents (_tmp192_, _tmp193_, &_tmp194_); + extents = _tmp194_; + _tmp195_ = x_start; + self->priv->rect3.x = _tmp195_; + _tmp196_ = extents; + _tmp197_ = _tmp196_.height; + self->priv->rect3.y = (gint) (72 - _tmp197_); + _tmp198_ = extents; + _tmp199_ = _tmp198_.width; + self->priv->rect3.width = (gint) _tmp199_; + _tmp200_ = extents; + _tmp201_ = _tmp200_.height; + self->priv->rect3.height = (gint) _tmp201_; + } else { + self->priv->rect3.x = -1; + self->priv->rect3.y = -1; + self->priv->rect3.width = -1; + self->priv->rect3.height = -1; + } + _tmp202_ = self->priv->table; + _tmp203_ = _tmp202_->controller; + _tmp204_ = _tmp203_->calculator; + _tmp205_ = self->priv->el; + _tmp206_ = periodic_table_element_get_index (_tmp205_); + _tmp207_ = _tmp206_; + _tmp208_ = g_strdup_printf (PERIODIC_TABLE_function, _tmp207_, PERIODIC_TABLE_density); + _tmp209_ = _tmp208_; + _tmp210_ = g_strconcat (_tmp209_, " to g / cm^3", NULL); + _tmp211_ = _tmp210_; + _tmp212_ = calculator_calculate (_tmp204_, _tmp211_); + _tmp213_ = _tmp212_; + _tmp214_ = string_replace (_tmp213_, "(", " "); + _tmp215_ = _tmp214_; + _tmp216_ = string_replace (_tmp215_, ")", ""); + _tmp217_ = _tmp216_; + _g_free0 (_tmp215_); + _g_free0 (_tmp213_); + _g_free0 (_tmp211_); + _g_free0 (_tmp209_); + density = _tmp217_; + _tmp218_ = _ ("Density:"); + _tmp219_ = g_strdup (_tmp218_); + density_key = _tmp219_; + _tmp220_ = context; + _tmp221_ = density_key; + cairo_text_extents (_tmp220_, _tmp221_, &_tmp222_); + extents = _tmp222_; + _tmp223_ = extents; + _tmp224_ = _tmp223_.width; + x_start = (gint) (200 - _tmp224_); + _tmp225_ = context; + _tmp226_ = x_start; + cairo_move_to (_tmp225_, (gdouble) _tmp226_, (gdouble) 96); + _tmp227_ = density_key; + _tmp228_ = g_strconcat (_tmp227_, " ", NULL); + _tmp229_ = _tmp228_; + _tmp230_ = density; + _tmp231_ = g_strconcat (_tmp229_, _tmp230_, NULL); + _tmp232_ = _tmp231_; + _g_free0 (_tmp229_); + density_txt = _tmp232_; + _tmp233_ = context; + _tmp234_ = density_txt; + cairo_show_text (_tmp233_, _tmp234_); + _tmp235_ = density; + if (g_strcmp0 (_tmp235_, "") != 0) { + cairo_t* _tmp236_ = NULL; + const gchar* _tmp237_ = NULL; + cairo_text_extents_t _tmp238_ = {0}; + gint _tmp239_ = 0; + cairo_text_extents_t _tmp240_ = {0}; + gdouble _tmp241_ = 0.0; + cairo_text_extents_t _tmp242_ = {0}; + gdouble _tmp243_ = 0.0; + cairo_text_extents_t _tmp244_ = {0}; + gdouble _tmp245_ = 0.0; + _tmp236_ = context; + _tmp237_ = density_txt; + cairo_text_extents (_tmp236_, _tmp237_, &_tmp238_); + extents = _tmp238_; + _tmp239_ = x_start; + self->priv->rect4.x = _tmp239_; + _tmp240_ = extents; + _tmp241_ = _tmp240_.height; + self->priv->rect4.y = (gint) (96 - _tmp241_); + _tmp242_ = extents; + _tmp243_ = _tmp242_.width; + self->priv->rect4.width = (gint) _tmp243_; + _tmp244_ = extents; + _tmp245_ = _tmp244_.height; + self->priv->rect4.height = (gint) _tmp245_; + } else { + self->priv->rect4.x = -1; + self->priv->rect4.y = -1; + self->priv->rect4.width = -1; + self->priv->rect4.height = -1; + } + _tmp246_ = self->priv->el; + _tmp247_ = periodic_table_element_get_class (_tmp246_); + _tmp248_ = _tmp247_; + _tmp249_ = periodic_table_element_persenter_get_class_name (self, _tmp248_); + classification = _tmp249_; + _tmp250_ = _ ("Classification:"); + _tmp251_ = g_strdup (_tmp250_); + classification_key = _tmp251_; + _tmp252_ = context; + _tmp253_ = classification_key; + cairo_text_extents (_tmp252_, _tmp253_, &_tmp254_); + extents = _tmp254_; + _tmp255_ = context; + _tmp256_ = extents; + _tmp257_ = _tmp256_.width; + cairo_move_to (_tmp255_, 200 - _tmp257_, (gdouble) 120); + _tmp258_ = context; + _tmp259_ = classification_key; + _tmp260_ = g_strconcat (_tmp259_, " ", NULL); + _tmp261_ = _tmp260_; + _tmp262_ = classification; + _tmp263_ = g_strconcat (_tmp261_, _tmp262_, NULL); + _tmp264_ = _tmp263_; + cairo_show_text (_tmp258_, _tmp264_); + _g_free0 (_tmp264_); + _g_free0 (_tmp261_); + _g_free0 (classification_key); + _g_free0 (classification); + _g_free0 (density_txt); + _g_free0 (density_key); + _g_free0 (density); + _g_free0 (melting_txt); + _g_free0 (melting_key); + _g_free0 (melting); + _g_free0 (boiling_txt); + _g_free0 (boiling_key); + _g_free0 (boiling); + _g_free0 (weight_txt); + _g_free0 (weight_key); + _g_free0 (weight); + _g_free0 (index_str); + _g_free0 (name); + } + result = TRUE; + return result; +} + + +static void periodic_table_element_persenter_draw_rounded_path (PeriodicTableElementPersenter* self, cairo_t* ctx, gdouble x, gdouble y, gdouble width, gdouble height, gdouble radius) { + gdouble degrees = 0.0; + cairo_t* _tmp0_ = NULL; + cairo_t* _tmp1_ = NULL; + gdouble _tmp2_ = 0.0; + gdouble _tmp3_ = 0.0; + gdouble _tmp4_ = 0.0; + gdouble _tmp5_ = 0.0; + gdouble _tmp6_ = 0.0; + gdouble _tmp7_ = 0.0; + cairo_t* _tmp8_ = NULL; + gdouble _tmp9_ = 0.0; + gdouble _tmp10_ = 0.0; + gdouble _tmp11_ = 0.0; + gdouble _tmp12_ = 0.0; + gdouble _tmp13_ = 0.0; + gdouble _tmp14_ = 0.0; + gdouble _tmp15_ = 0.0; + cairo_t* _tmp16_ = NULL; + gdouble _tmp17_ = 0.0; + gdouble _tmp18_ = 0.0; + gdouble _tmp19_ = 0.0; + gdouble _tmp20_ = 0.0; + gdouble _tmp21_ = 0.0; + gdouble _tmp22_ = 0.0; + cairo_t* _tmp23_ = NULL; + gdouble _tmp24_ = 0.0; + gdouble _tmp25_ = 0.0; + gdouble _tmp26_ = 0.0; + gdouble _tmp27_ = 0.0; + gdouble _tmp28_ = 0.0; + cairo_t* _tmp29_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (ctx != NULL); + degrees = G_PI / 180.0; + _tmp0_ = ctx; + cairo_new_sub_path (_tmp0_); + _tmp1_ = ctx; + _tmp2_ = x; + _tmp3_ = width; + _tmp4_ = radius; + _tmp5_ = y; + _tmp6_ = radius; + _tmp7_ = radius; + cairo_arc (_tmp1_, (_tmp2_ + _tmp3_) - _tmp4_, _tmp5_ + _tmp6_, _tmp7_, -90 * degrees, 0 * degrees); + _tmp8_ = ctx; + _tmp9_ = x; + _tmp10_ = width; + _tmp11_ = radius; + _tmp12_ = y; + _tmp13_ = height; + _tmp14_ = radius; + _tmp15_ = radius; + cairo_arc (_tmp8_, (_tmp9_ + _tmp10_) - _tmp11_, (_tmp12_ + _tmp13_) - _tmp14_, _tmp15_, 0 * degrees, 90 * degrees); + _tmp16_ = ctx; + _tmp17_ = x; + _tmp18_ = radius; + _tmp19_ = y; + _tmp20_ = height; + _tmp21_ = radius; + _tmp22_ = radius; + cairo_arc (_tmp16_, _tmp17_ + _tmp18_, (_tmp19_ + _tmp20_) - _tmp21_, _tmp22_, 90 * degrees, 180 * degrees); + _tmp23_ = ctx; + _tmp24_ = x; + _tmp25_ = radius; + _tmp26_ = y; + _tmp27_ = radius; + _tmp28_ = radius; + cairo_arc (_tmp23_, _tmp24_ + _tmp25_, _tmp26_ + _tmp27_, _tmp28_, 180 * degrees, 270 * degrees); + _tmp29_ = ctx; + cairo_close_path (_tmp29_); +} + + +void periodic_table_element_persenter_set_element (PeriodicTableElementPersenter* self, PeriodicTableElement* el) { + PeriodicTableElement* _tmp0_ = NULL; + PeriodicTableElement* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = el; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->el); + self->priv->el = _tmp1_; + gtk_widget_queue_draw ((GtkWidget*) self); +} + + +static gchar* periodic_table_element_persenter_get_class_name (PeriodicTableElementPersenter* self, gint class) { + gchar* result = NULL; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = class; + switch (_tmp0_) { + case 1: + { + const gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + _tmp1_ = _ ("Alkali Metal"); + _tmp2_ = g_strdup (_tmp1_); + result = _tmp2_; + return result; + } + case 2: + { + const gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + _tmp3_ = _ ("Alkaline-Earth Metal"); + _tmp4_ = g_strdup (_tmp3_); + result = _tmp4_; + return result; + } + case 3: + { + const gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + _tmp5_ = _ ("Lanthanide"); + _tmp6_ = g_strdup (_tmp5_); + result = _tmp6_; + return result; + } + case 4: + { + const gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + _tmp7_ = _ ("Actinide"); + _tmp8_ = g_strdup (_tmp7_); + result = _tmp8_; + return result; + } + case 5: + { + const gchar* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + _tmp9_ = _ ("Transition Metal"); + _tmp10_ = g_strdup (_tmp9_); + result = _tmp10_; + return result; + } + case 6: + { + const gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + _tmp11_ = _ ("Metal"); + _tmp12_ = g_strdup (_tmp11_); + result = _tmp12_; + return result; + } + case 7: + { + const gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + _tmp13_ = _ ("Metalloid"); + _tmp14_ = g_strdup (_tmp13_); + result = _tmp14_; + return result; + } + case 8: + { + const gchar* _tmp15_ = NULL; + gchar* _tmp16_ = NULL; + _tmp15_ = _ ("Non-Metal"); + _tmp16_ = g_strdup (_tmp15_); + result = _tmp16_; + return result; + } + case 9: + { + const gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + _tmp17_ = _ ("Halogen"); + _tmp18_ = g_strdup (_tmp17_); + result = _tmp18_; + return result; + } + case 10: + { + const gchar* _tmp19_ = NULL; + gchar* _tmp20_ = NULL; + _tmp19_ = _ ("Noble Gas"); + _tmp20_ = g_strdup (_tmp19_); + result = _tmp20_; + return result; + } + case 11: + { + const gchar* _tmp21_ = NULL; + gchar* _tmp22_ = NULL; + _tmp21_ = _ ("Transactinide"); + _tmp22_ = g_strdup (_tmp21_); + result = _tmp22_; + return result; + } + default: + { + const gchar* _tmp23_ = NULL; + gchar* _tmp24_ = NULL; + _tmp23_ = _ ("Unknown"); + _tmp24_ = g_strdup (_tmp23_); + result = _tmp24_; + return result; + } + } +} + + +static void periodic_table_element_persenter_class_init (PeriodicTableElementPersenterClass * klass) { + periodic_table_element_persenter_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (PeriodicTableElementPersenterPrivate)); + ((GtkWidgetClass *) klass)->draw = periodic_table_element_persenter_real_draw; + G_OBJECT_CLASS (klass)->finalize = periodic_table_element_persenter_finalize; +} + + +static void periodic_table_element_persenter_instance_init (PeriodicTableElementPersenter * self) { + GdkDisplay* _tmp0_ = NULL; + GdkCursor* _tmp1_ = NULL; + GdkDisplay* _tmp2_ = NULL; + GdkCursor* _tmp3_ = NULL; + self->priv = PERIODIC_TABLE_ELEMENT_PERSENTER_GET_PRIVATE (self); + _tmp0_ = gdk_display_get_default (); + _tmp1_ = gdk_cursor_new_for_display (_tmp0_, GDK_LEFT_PTR); + self->priv->left_ptr = _tmp1_; + _tmp2_ = gdk_display_get_default (); + _tmp3_ = gdk_cursor_new_for_display (_tmp2_, GDK_HAND2); + self->priv->hand = _tmp3_; + self->priv->hovering = FALSE; + memset (&self->priv->rect1, 0, sizeof (GdkRectangle)); + memset (&self->priv->rect2, 0, sizeof (GdkRectangle)); + memset (&self->priv->rect3, 0, sizeof (GdkRectangle)); + memset (&self->priv->rect4, 0, sizeof (GdkRectangle)); +} + + +static void periodic_table_element_persenter_finalize (GObject* obj) { + PeriodicTableElementPersenter * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERIODIC_TABLE_TYPE_ELEMENT_PERSENTER, PeriodicTableElementPersenter); + _g_object_unref0 (self->priv->el); + _g_object_unref0 (self->priv->table); + _g_object_unref0 (self->priv->left_ptr); + _g_object_unref0 (self->priv->hand); + G_OBJECT_CLASS (periodic_table_element_persenter_parent_class)->finalize (obj); +} + + +GType periodic_table_element_persenter_get_type (void) { + static volatile gsize periodic_table_element_persenter_type_id__volatile = 0; + if (g_once_init_enter (&periodic_table_element_persenter_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (PeriodicTableElementPersenterClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) periodic_table_element_persenter_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PeriodicTableElementPersenter), 0, (GInstanceInitFunc) periodic_table_element_persenter_instance_init, NULL }; + GType periodic_table_element_persenter_type_id; + periodic_table_element_persenter_type_id = g_type_register_static (gtk_drawing_area_get_type (), "PeriodicTableElementPersenter", &g_define_type_info, 0); + g_once_init_leave (&periodic_table_element_persenter_type_id__volatile, periodic_table_element_persenter_type_id); + } + return periodic_table_element_persenter_type_id__volatile; +} + + +static gboolean _periodic_table_element_enter_gtk_widget_enter_notify_event (GtkWidget* _sender, GdkEventCrossing* event, gpointer self) { + gboolean result; + result = periodic_table_element_enter ((PeriodicTableElement*) self, event); + return result; +} + + +static gboolean _periodic_table_element_leave_gtk_widget_leave_notify_event (GtkWidget* _sender, GdkEventCrossing* event, gpointer self) { + gboolean result; + result = periodic_table_element_leave ((PeriodicTableElement*) self, event); + return result; +} + + +PeriodicTableElement* periodic_table_element_construct (GType object_type, gint index, const gchar* symbol, gint class, gint group, gint period) { + PeriodicTableElement * self = NULL; + gint _tmp0_ = 0; + const gchar* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + gint _tmp4_ = 0; + g_return_val_if_fail (symbol != NULL, NULL); + self = (PeriodicTableElement*) g_object_new (object_type, NULL); + _tmp0_ = index; + periodic_table_element_set_index (self, _tmp0_); + _tmp1_ = symbol; + periodic_table_element_set_symbol (self, _tmp1_); + _tmp2_ = class; + periodic_table_element_set_class (self, _tmp2_); + _tmp3_ = group; + periodic_table_element_set_group (self, _tmp3_); + _tmp4_ = period; + periodic_table_element_set_period (self, _tmp4_); + gtk_widget_set_size_request ((GtkWidget*) self, 36, 46); + gtk_widget_add_events ((GtkWidget*) self, (gint) ((GDK_LEAVE_NOTIFY_MASK | GDK_ENTER_NOTIFY_MASK) | GDK_BUTTON_PRESS_MASK)); + g_signal_connect_object ((GtkWidget*) self, "enter-notify-event", (GCallback) _periodic_table_element_enter_gtk_widget_enter_notify_event, self, 0); + g_signal_connect_object ((GtkWidget*) self, "leave-notify-event", (GCallback) _periodic_table_element_leave_gtk_widget_leave_notify_event, self, 0); + return self; +} + + +PeriodicTableElement* periodic_table_element_new (gint index, const gchar* symbol, gint class, gint group, gint period) { + return periodic_table_element_construct (PERIODIC_TABLE_TYPE_ELEMENT, index, symbol, class, group, period); +} + + +gboolean periodic_table_element_enter (PeriodicTableElement* self, GdkEventCrossing* event) { + gboolean result = FALSE; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (event != NULL, FALSE); + self->priv->focused = TRUE; + gtk_widget_queue_draw ((GtkWidget*) self); + result = FALSE; + return result; +} + + +gboolean periodic_table_element_leave (PeriodicTableElement* self, GdkEventCrossing* event) { + gboolean result = FALSE; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (event != NULL, FALSE); + self->priv->focused = FALSE; + gtk_widget_queue_draw ((GtkWidget*) self); + result = FALSE; + return result; +} + + +static gboolean periodic_table_element_real_draw (GtkWidget* base, cairo_t* context) { + PeriodicTableElement * self; + gboolean result = FALSE; + gboolean _tmp0_ = FALSE; + cairo_t* _tmp5_ = NULL; + cairo_t* _tmp6_ = NULL; + cairo_t* _tmp7_ = NULL; + cairo_t* _tmp8_ = NULL; + cairo_text_extents_t extents = {0}; + cairo_t* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + cairo_text_extents_t _tmp11_ = {0}; + cairo_t* _tmp12_ = NULL; + cairo_text_extents_t _tmp13_ = {0}; + gdouble _tmp14_ = 0.0; + cairo_t* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + cairo_t* _tmp17_ = NULL; + gchar* index_str = NULL; + gint _tmp18_ = 0; + gchar* _tmp19_ = NULL; + cairo_t* _tmp20_ = NULL; + cairo_text_extents_t _tmp21_ = {0}; + cairo_t* _tmp22_ = NULL; + cairo_text_extents_t _tmp23_ = {0}; + gdouble _tmp24_ = 0.0; + cairo_t* _tmp25_ = NULL; + self = (PeriodicTableElement*) base; + g_return_val_if_fail (context != NULL, FALSE); + _tmp0_ = self->priv->focused; + if (_tmp0_) { + gint _tmp1_ = 0; + cairo_t* _tmp2_ = NULL; + _tmp1_ = self->priv->_class; + _tmp2_ = context; + periodic_table_element_set_class_color (_tmp1_, _tmp2_, (gdouble) 1); + } else { + gint _tmp3_ = 0; + cairo_t* _tmp4_ = NULL; + _tmp3_ = self->priv->_class; + _tmp4_ = context; + periodic_table_element_set_class_color (_tmp3_, _tmp4_, 0.6); + } + _tmp5_ = context; + periodic_table_element_draw_rounded_path (self, _tmp5_, (gdouble) 0, (gdouble) 0, (gdouble) 34, (gdouble) 44, (gdouble) 4); + _tmp6_ = context; + cairo_fill (_tmp6_); + _tmp7_ = context; + cairo_set_source_rgba (_tmp7_, (gdouble) 0, (gdouble) 0, (gdouble) 0, (gdouble) 1); + _tmp8_ = context; + cairo_set_font_size (_tmp8_, (gdouble) 16); + _tmp9_ = context; + _tmp10_ = self->priv->_symbol; + cairo_text_extents (_tmp9_, _tmp10_, &_tmp11_); + extents = _tmp11_; + _tmp12_ = context; + _tmp13_ = extents; + _tmp14_ = _tmp13_.width; + cairo_move_to (_tmp12_, 17 - (_tmp14_ / 2), (gdouble) 38); + _tmp15_ = context; + _tmp16_ = self->priv->_symbol; + cairo_show_text (_tmp15_, _tmp16_); + _tmp17_ = context; + cairo_set_font_size (_tmp17_, (gdouble) 12); + _tmp18_ = self->priv->_index; + _tmp19_ = g_strdup_printf ("%d", _tmp18_); + index_str = _tmp19_; + _tmp20_ = context; + cairo_text_extents (_tmp20_, index_str, &_tmp21_); + extents = _tmp21_; + _tmp22_ = context; + _tmp23_ = extents; + _tmp24_ = _tmp23_.height; + cairo_move_to (_tmp22_, (gdouble) 2, 2 + _tmp24_); + _tmp25_ = context; + cairo_show_text (_tmp25_, index_str); + result = TRUE; + _g_free0 (index_str); + return result; +} + + +static void periodic_table_element_draw_rounded_path (PeriodicTableElement* self, cairo_t* ctx, gdouble x, gdouble y, gdouble width, gdouble height, gdouble radius) { + gdouble degrees = 0.0; + cairo_t* _tmp0_ = NULL; + cairo_t* _tmp1_ = NULL; + gdouble _tmp2_ = 0.0; + gdouble _tmp3_ = 0.0; + gdouble _tmp4_ = 0.0; + gdouble _tmp5_ = 0.0; + gdouble _tmp6_ = 0.0; + gdouble _tmp7_ = 0.0; + cairo_t* _tmp8_ = NULL; + gdouble _tmp9_ = 0.0; + gdouble _tmp10_ = 0.0; + gdouble _tmp11_ = 0.0; + gdouble _tmp12_ = 0.0; + gdouble _tmp13_ = 0.0; + gdouble _tmp14_ = 0.0; + gdouble _tmp15_ = 0.0; + cairo_t* _tmp16_ = NULL; + gdouble _tmp17_ = 0.0; + gdouble _tmp18_ = 0.0; + gdouble _tmp19_ = 0.0; + gdouble _tmp20_ = 0.0; + gdouble _tmp21_ = 0.0; + gdouble _tmp22_ = 0.0; + cairo_t* _tmp23_ = NULL; + gdouble _tmp24_ = 0.0; + gdouble _tmp25_ = 0.0; + gdouble _tmp26_ = 0.0; + gdouble _tmp27_ = 0.0; + gdouble _tmp28_ = 0.0; + cairo_t* _tmp29_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (ctx != NULL); + degrees = G_PI / 180.0; + _tmp0_ = ctx; + cairo_new_sub_path (_tmp0_); + _tmp1_ = ctx; + _tmp2_ = x; + _tmp3_ = width; + _tmp4_ = radius; + _tmp5_ = y; + _tmp6_ = radius; + _tmp7_ = radius; + cairo_arc (_tmp1_, (_tmp2_ + _tmp3_) - _tmp4_, _tmp5_ + _tmp6_, _tmp7_, -90 * degrees, 0 * degrees); + _tmp8_ = ctx; + _tmp9_ = x; + _tmp10_ = width; + _tmp11_ = radius; + _tmp12_ = y; + _tmp13_ = height; + _tmp14_ = radius; + _tmp15_ = radius; + cairo_arc (_tmp8_, (_tmp9_ + _tmp10_) - _tmp11_, (_tmp12_ + _tmp13_) - _tmp14_, _tmp15_, 0 * degrees, 90 * degrees); + _tmp16_ = ctx; + _tmp17_ = x; + _tmp18_ = radius; + _tmp19_ = y; + _tmp20_ = height; + _tmp21_ = radius; + _tmp22_ = radius; + cairo_arc (_tmp16_, _tmp17_ + _tmp18_, (_tmp19_ + _tmp20_) - _tmp21_, _tmp22_, 90 * degrees, 180 * degrees); + _tmp23_ = ctx; + _tmp24_ = x; + _tmp25_ = radius; + _tmp26_ = y; + _tmp27_ = radius; + _tmp28_ = radius; + cairo_arc (_tmp23_, _tmp24_ + _tmp25_, _tmp26_ + _tmp27_, _tmp28_, 180 * degrees, 270 * degrees); + _tmp29_ = ctx; + cairo_close_path (_tmp29_); +} + + +void periodic_table_element_set_class_color (gint class, cairo_t* context, gdouble alpha) { + gint _tmp0_ = 0; + g_return_if_fail (context != NULL); + _tmp0_ = class; + switch (_tmp0_) { + case 1: + { + cairo_t* _tmp1_ = NULL; + gdouble _tmp2_ = 0.0; + _tmp1_ = context; + _tmp2_ = alpha; + cairo_set_source_rgba (_tmp1_, 0.9333, 0.8, 0.9333, _tmp2_); + break; + } + case 2: + { + cairo_t* _tmp3_ = NULL; + gdouble _tmp4_ = 0.0; + _tmp3_ = context; + _tmp4_ = alpha; + cairo_set_source_rgba (_tmp3_, 0.86667, 0.6667, 0.9333, _tmp4_); + break; + } + case 3: + { + cairo_t* _tmp5_ = NULL; + gdouble _tmp6_ = 0.0; + _tmp5_ = context; + _tmp6_ = alpha; + cairo_set_source_rgba (_tmp5_, 0.8, 0.86667, (gdouble) 1, _tmp6_); + break; + } + case 4: + { + cairo_t* _tmp7_ = NULL; + gdouble _tmp8_ = 0.0; + _tmp7_ = context; + _tmp8_ = alpha; + cairo_set_source_rgba (_tmp7_, 0.86667, 0.9333, (gdouble) 1, _tmp8_); + break; + } + case 5: + { + cairo_t* _tmp9_ = NULL; + gdouble _tmp10_ = 0.0; + _tmp9_ = context; + _tmp10_ = alpha; + cairo_set_source_rgba (_tmp9_, 0.8, 0.9333, 0.9333, _tmp10_); + break; + } + case 6: + { + cairo_t* _tmp11_ = NULL; + gdouble _tmp12_ = 0.0; + _tmp11_ = context; + _tmp12_ = alpha; + cairo_set_source_rgba (_tmp11_, 0.7333, (gdouble) 1, 0.7333, _tmp12_); + break; + } + case 7: + { + cairo_t* _tmp13_ = NULL; + gdouble _tmp14_ = 0.0; + _tmp13_ = context; + _tmp14_ = alpha; + cairo_set_source_rgba (_tmp13_, 0.9333, (gdouble) 1, 0.86667, _tmp14_); + break; + } + case 8: + { + cairo_t* _tmp15_ = NULL; + gdouble _tmp16_ = 0.0; + _tmp15_ = context; + _tmp16_ = alpha; + cairo_set_source_rgba (_tmp15_, (gdouble) 1, (gdouble) 1, 0.6667, _tmp16_); + break; + } + case 9: + { + cairo_t* _tmp17_ = NULL; + gdouble _tmp18_ = 0.0; + _tmp17_ = context; + _tmp18_ = alpha; + cairo_set_source_rgba (_tmp17_, (gdouble) 1, 0.86667, 0.6667, _tmp18_); + break; + } + case 10: + { + cairo_t* _tmp19_ = NULL; + gdouble _tmp20_ = 0.0; + _tmp19_ = context; + _tmp20_ = alpha; + cairo_set_source_rgba (_tmp19_, (gdouble) 1, 0.8, 0.86667, _tmp20_); + break; + } + case 11: + { + cairo_t* _tmp21_ = NULL; + gdouble _tmp22_ = 0.0; + _tmp21_ = context; + _tmp22_ = alpha; + cairo_set_source_rgba (_tmp21_, 0.6667, 0.9333, 0.86667, _tmp22_); + break; + } + default: + { + cairo_t* _tmp23_ = NULL; + _tmp23_ = context; + cairo_set_source_rgba (_tmp23_, (gdouble) 0, (gdouble) 0, (gdouble) 0, 0.1); + break; + } + } +} + + +gint periodic_table_element_get_index (PeriodicTableElement* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_index; + result = _tmp0_; + return result; +} + + +static void periodic_table_element_set_index (PeriodicTableElement* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_index = _tmp0_; + g_object_notify ((GObject *) self, "index"); +} + + +const gchar* periodic_table_element_get_symbol (PeriodicTableElement* self) { + const gchar* result; + const gchar* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_symbol; + result = _tmp0_; + return result; +} + + +static void periodic_table_element_set_symbol (PeriodicTableElement* self, const gchar* value) { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->priv->_symbol); + self->priv->_symbol = _tmp1_; + g_object_notify ((GObject *) self, "symbol"); +} + + +gint periodic_table_element_get_class (PeriodicTableElement* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_class; + result = _tmp0_; + return result; +} + + +static void periodic_table_element_set_class (PeriodicTableElement* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_class = _tmp0_; + g_object_notify ((GObject *) self, "class"); +} + + +gint periodic_table_element_get_group (PeriodicTableElement* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_group; + result = _tmp0_; + return result; +} + + +static void periodic_table_element_set_group (PeriodicTableElement* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_group = _tmp0_; + g_object_notify ((GObject *) self, "group"); +} + + +gint periodic_table_element_get_period (PeriodicTableElement* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_period; + result = _tmp0_; + return result; +} + + +static void periodic_table_element_set_period (PeriodicTableElement* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_period = _tmp0_; + g_object_notify ((GObject *) self, "period"); +} + + +static void periodic_table_element_class_init (PeriodicTableElementClass * klass) { + periodic_table_element_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (PeriodicTableElementPrivate)); + ((GtkWidgetClass *) klass)->draw = periodic_table_element_real_draw; + G_OBJECT_CLASS (klass)->get_property = _vala_periodic_table_element_get_property; + G_OBJECT_CLASS (klass)->set_property = _vala_periodic_table_element_set_property; + G_OBJECT_CLASS (klass)->finalize = periodic_table_element_finalize; + g_object_class_install_property (G_OBJECT_CLASS (klass), PERIODIC_TABLE_ELEMENT_INDEX, g_param_spec_int ("index", "index", "index", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), PERIODIC_TABLE_ELEMENT_SYMBOL, g_param_spec_string ("symbol", "symbol", "symbol", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), PERIODIC_TABLE_ELEMENT_CLASS, g_param_spec_int ("class", "class", "class", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), PERIODIC_TABLE_ELEMENT_GROUP, g_param_spec_int ("group", "group", "group", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), PERIODIC_TABLE_ELEMENT_PERIOD, g_param_spec_int ("period", "period", "period", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); +} + + +static void periodic_table_element_instance_init (PeriodicTableElement * self) { + self->priv = PERIODIC_TABLE_ELEMENT_GET_PRIVATE (self); + self->priv->focused = FALSE; +} + + +static void periodic_table_element_finalize (GObject* obj) { + PeriodicTableElement * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERIODIC_TABLE_TYPE_ELEMENT, PeriodicTableElement); + _g_free0 (self->priv->_symbol); + G_OBJECT_CLASS (periodic_table_element_parent_class)->finalize (obj); +} + + +GType periodic_table_element_get_type (void) { + static volatile gsize periodic_table_element_type_id__volatile = 0; + if (g_once_init_enter (&periodic_table_element_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (PeriodicTableElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) periodic_table_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PeriodicTableElement), 0, (GInstanceInitFunc) periodic_table_element_instance_init, NULL }; + GType periodic_table_element_type_id; + periodic_table_element_type_id = g_type_register_static (gtk_drawing_area_get_type (), "PeriodicTableElement", &g_define_type_info, 0); + g_once_init_leave (&periodic_table_element_type_id__volatile, periodic_table_element_type_id); + } + return periodic_table_element_type_id__volatile; +} + + +static void _vala_periodic_table_element_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { + PeriodicTableElement * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, PERIODIC_TABLE_TYPE_ELEMENT, PeriodicTableElement); + switch (property_id) { + case PERIODIC_TABLE_ELEMENT_INDEX: + g_value_set_int (value, periodic_table_element_get_index (self)); + break; + case PERIODIC_TABLE_ELEMENT_SYMBOL: + g_value_set_string (value, periodic_table_element_get_symbol (self)); + break; + case PERIODIC_TABLE_ELEMENT_CLASS: + g_value_set_int (value, periodic_table_element_get_class (self)); + break; + case PERIODIC_TABLE_ELEMENT_GROUP: + g_value_set_int (value, periodic_table_element_get_group (self)); + break; + case PERIODIC_TABLE_ELEMENT_PERIOD: + g_value_set_int (value, periodic_table_element_get_period (self)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_periodic_table_element_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { + PeriodicTableElement * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, PERIODIC_TABLE_TYPE_ELEMENT, PeriodicTableElement); + switch (property_id) { + case PERIODIC_TABLE_ELEMENT_INDEX: + periodic_table_element_set_index (self, g_value_get_int (value)); + break; + case PERIODIC_TABLE_ELEMENT_SYMBOL: + periodic_table_element_set_symbol (self, g_value_get_string (value)); + break; + case PERIODIC_TABLE_ELEMENT_CLASS: + periodic_table_element_set_class (self, g_value_get_int (value)); + break; + case PERIODIC_TABLE_ELEMENT_GROUP: + periodic_table_element_set_group (self, g_value_get_int (value)); + break; + case PERIODIC_TABLE_ELEMENT_PERIOD: + periodic_table_element_set_period (self, g_value_get_int (value)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void periodic_table_class_init (PeriodicTableClass * klass) { + periodic_table_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (PeriodicTablePrivate)); + G_OBJECT_CLASS (klass)->finalize = periodic_table_finalize; + g_signal_new ("close", TYPE_PERIODIC_TABLE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); +} + + +static void periodic_table_instance_init (PeriodicTable * self) { + gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; + gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gchar* _tmp20_ = NULL; + gchar* _tmp21_ = NULL; + gchar* _tmp22_ = NULL; + gchar* _tmp23_ = NULL; + gchar* _tmp24_ = NULL; + gchar* _tmp25_ = NULL; + gchar* _tmp26_ = NULL; + gchar* _tmp27_ = NULL; + gchar* _tmp28_ = NULL; + gchar* _tmp29_ = NULL; + gchar* _tmp30_ = NULL; + gchar* _tmp31_ = NULL; + gchar* _tmp32_ = NULL; + gchar* _tmp33_ = NULL; + gchar* _tmp34_ = NULL; + gchar* _tmp35_ = NULL; + gchar* _tmp36_ = NULL; + gchar* _tmp37_ = NULL; + gchar* _tmp38_ = NULL; + gchar* _tmp39_ = NULL; + gchar* _tmp40_ = NULL; + gchar* _tmp41_ = NULL; + gchar* _tmp42_ = NULL; + gchar* _tmp43_ = NULL; + gchar* _tmp44_ = NULL; + gchar* _tmp45_ = NULL; + gchar* _tmp46_ = NULL; + gchar* _tmp47_ = NULL; + gchar* _tmp48_ = NULL; + gchar* _tmp49_ = NULL; + gchar* _tmp50_ = NULL; + gchar* _tmp51_ = NULL; + gchar* _tmp52_ = NULL; + gchar* _tmp53_ = NULL; + gchar* _tmp54_ = NULL; + gchar* _tmp55_ = NULL; + gchar* _tmp56_ = NULL; + gchar* _tmp57_ = NULL; + gchar* _tmp58_ = NULL; + gchar* _tmp59_ = NULL; + gchar* _tmp60_ = NULL; + gchar* _tmp61_ = NULL; + gchar* _tmp62_ = NULL; + gchar* _tmp63_ = NULL; + gchar* _tmp64_ = NULL; + gchar* _tmp65_ = NULL; + gchar* _tmp66_ = NULL; + gchar* _tmp67_ = NULL; + gchar* _tmp68_ = NULL; + gchar* _tmp69_ = NULL; + gchar* _tmp70_ = NULL; + gchar* _tmp71_ = NULL; + gchar* _tmp72_ = NULL; + gchar* _tmp73_ = NULL; + gchar* _tmp74_ = NULL; + gchar* _tmp75_ = NULL; + gchar* _tmp76_ = NULL; + gchar* _tmp77_ = NULL; + gchar* _tmp78_ = NULL; + gchar* _tmp79_ = NULL; + gchar* _tmp80_ = NULL; + gchar* _tmp81_ = NULL; + gchar* _tmp82_ = NULL; + gchar* _tmp83_ = NULL; + gchar* _tmp84_ = NULL; + gchar* _tmp85_ = NULL; + gchar* _tmp86_ = NULL; + gchar* _tmp87_ = NULL; + gchar* _tmp88_ = NULL; + gchar* _tmp89_ = NULL; + gchar* _tmp90_ = NULL; + gchar* _tmp91_ = NULL; + gchar* _tmp92_ = NULL; + gchar* _tmp93_ = NULL; + gchar* _tmp94_ = NULL; + gchar* _tmp95_ = NULL; + gchar* _tmp96_ = NULL; + gchar* _tmp97_ = NULL; + gchar* _tmp98_ = NULL; + gchar* _tmp99_ = NULL; + gchar* _tmp100_ = NULL; + gchar* _tmp101_ = NULL; + gchar* _tmp102_ = NULL; + gchar* _tmp103_ = NULL; + gchar* _tmp104_ = NULL; + gchar* _tmp105_ = NULL; + gchar* _tmp106_ = NULL; + gchar* _tmp107_ = NULL; + gchar* _tmp108_ = NULL; + gchar* _tmp109_ = NULL; + gchar* _tmp110_ = NULL; + gchar* _tmp111_ = NULL; + gchar* _tmp112_ = NULL; + gchar* _tmp113_ = NULL; + gchar* _tmp114_ = NULL; + gchar* _tmp115_ = NULL; + gchar* _tmp116_ = NULL; + gchar* _tmp117_ = NULL; + gchar** _tmp118_ = NULL; + gint* _tmp119_ = NULL; + self->priv = PERIODIC_TABLE_GET_PRIVATE (self); + _tmp0_ = g_strdup ("H"); + _tmp1_ = g_strdup ("He"); + _tmp2_ = g_strdup ("Li"); + _tmp3_ = g_strdup ("Be"); + _tmp4_ = g_strdup ("B"); + _tmp5_ = g_strdup ("C"); + _tmp6_ = g_strdup ("N"); + _tmp7_ = g_strdup ("O"); + _tmp8_ = g_strdup ("F"); + _tmp9_ = g_strdup ("Ne"); + _tmp10_ = g_strdup ("Na"); + _tmp11_ = g_strdup ("Mg"); + _tmp12_ = g_strdup ("Al"); + _tmp13_ = g_strdup ("Si"); + _tmp14_ = g_strdup ("P"); + _tmp15_ = g_strdup ("S"); + _tmp16_ = g_strdup ("Cl"); + _tmp17_ = g_strdup ("Ar"); + _tmp18_ = g_strdup ("K"); + _tmp19_ = g_strdup ("Ca"); + _tmp20_ = g_strdup ("Sc"); + _tmp21_ = g_strdup ("Ti"); + _tmp22_ = g_strdup ("V"); + _tmp23_ = g_strdup ("Cr"); + _tmp24_ = g_strdup ("Mn"); + _tmp25_ = g_strdup ("Fe"); + _tmp26_ = g_strdup ("Co"); + _tmp27_ = g_strdup ("Ni"); + _tmp28_ = g_strdup ("Cu"); + _tmp29_ = g_strdup ("Zn"); + _tmp30_ = g_strdup ("Ga"); + _tmp31_ = g_strdup ("Ge"); + _tmp32_ = g_strdup ("As"); + _tmp33_ = g_strdup ("Se"); + _tmp34_ = g_strdup ("Br"); + _tmp35_ = g_strdup ("Kr"); + _tmp36_ = g_strdup ("Rb"); + _tmp37_ = g_strdup ("Sr"); + _tmp38_ = g_strdup ("Y"); + _tmp39_ = g_strdup ("Zr"); + _tmp40_ = g_strdup ("Nb"); + _tmp41_ = g_strdup ("Mo"); + _tmp42_ = g_strdup ("Tc"); + _tmp43_ = g_strdup ("Ru"); + _tmp44_ = g_strdup ("Rh"); + _tmp45_ = g_strdup ("Pd"); + _tmp46_ = g_strdup ("Ag"); + _tmp47_ = g_strdup ("Cd"); + _tmp48_ = g_strdup ("In"); + _tmp49_ = g_strdup ("Sn"); + _tmp50_ = g_strdup ("Sb"); + _tmp51_ = g_strdup ("Te"); + _tmp52_ = g_strdup ("I"); + _tmp53_ = g_strdup ("Xe"); + _tmp54_ = g_strdup ("Cs"); + _tmp55_ = g_strdup ("Ba"); + _tmp56_ = g_strdup ("La"); + _tmp57_ = g_strdup ("Ce"); + _tmp58_ = g_strdup ("Pr"); + _tmp59_ = g_strdup ("Nd"); + _tmp60_ = g_strdup ("Pm"); + _tmp61_ = g_strdup ("Sm"); + _tmp62_ = g_strdup ("Eu"); + _tmp63_ = g_strdup ("Gd"); + _tmp64_ = g_strdup ("Tb"); + _tmp65_ = g_strdup ("Dy"); + _tmp66_ = g_strdup ("Ho"); + _tmp67_ = g_strdup ("Er"); + _tmp68_ = g_strdup ("Tm"); + _tmp69_ = g_strdup ("Yb"); + _tmp70_ = g_strdup ("Lu"); + _tmp71_ = g_strdup ("Hf"); + _tmp72_ = g_strdup ("Ta"); + _tmp73_ = g_strdup ("W"); + _tmp74_ = g_strdup ("Re"); + _tmp75_ = g_strdup ("Os"); + _tmp76_ = g_strdup ("Ir"); + _tmp77_ = g_strdup ("Pt"); + _tmp78_ = g_strdup ("Au"); + _tmp79_ = g_strdup ("Hg"); + _tmp80_ = g_strdup ("Tl"); + _tmp81_ = g_strdup ("Pb"); + _tmp82_ = g_strdup ("Bi"); + _tmp83_ = g_strdup ("Po"); + _tmp84_ = g_strdup ("At"); + _tmp85_ = g_strdup ("Rn"); + _tmp86_ = g_strdup ("Fr"); + _tmp87_ = g_strdup ("Ra"); + _tmp88_ = g_strdup ("Ac"); + _tmp89_ = g_strdup ("Th"); + _tmp90_ = g_strdup ("Pa"); + _tmp91_ = g_strdup ("U"); + _tmp92_ = g_strdup ("Np"); + _tmp93_ = g_strdup ("Pu"); + _tmp94_ = g_strdup ("Am"); + _tmp95_ = g_strdup ("Cm"); + _tmp96_ = g_strdup ("Bk"); + _tmp97_ = g_strdup ("Cf"); + _tmp98_ = g_strdup ("Es"); + _tmp99_ = g_strdup ("Fm"); + _tmp100_ = g_strdup ("Md"); + _tmp101_ = g_strdup ("No"); + _tmp102_ = g_strdup ("Lr"); + _tmp103_ = g_strdup ("Rf"); + _tmp104_ = g_strdup ("Db"); + _tmp105_ = g_strdup ("Sg"); + _tmp106_ = g_strdup ("Bh"); + _tmp107_ = g_strdup ("Hs"); + _tmp108_ = g_strdup ("Mt"); + _tmp109_ = g_strdup ("Ds"); + _tmp110_ = g_strdup ("Rg"); + _tmp111_ = g_strdup ("Uub"); + _tmp112_ = g_strdup ("Uut"); + _tmp113_ = g_strdup ("Uuq"); + _tmp114_ = g_strdup ("Uup"); + _tmp115_ = g_strdup ("Uuh"); + _tmp116_ = g_strdup ("Uus"); + _tmp117_ = g_strdup ("Uuo"); + _tmp118_ = g_new0 (gchar*, 118 + 1); + _tmp118_[0] = _tmp0_; + _tmp118_[1] = _tmp1_; + _tmp118_[2] = _tmp2_; + _tmp118_[3] = _tmp3_; + _tmp118_[4] = _tmp4_; + _tmp118_[5] = _tmp5_; + _tmp118_[6] = _tmp6_; + _tmp118_[7] = _tmp7_; + _tmp118_[8] = _tmp8_; + _tmp118_[9] = _tmp9_; + _tmp118_[10] = _tmp10_; + _tmp118_[11] = _tmp11_; + _tmp118_[12] = _tmp12_; + _tmp118_[13] = _tmp13_; + _tmp118_[14] = _tmp14_; + _tmp118_[15] = _tmp15_; + _tmp118_[16] = _tmp16_; + _tmp118_[17] = _tmp17_; + _tmp118_[18] = _tmp18_; + _tmp118_[19] = _tmp19_; + _tmp118_[20] = _tmp20_; + _tmp118_[21] = _tmp21_; + _tmp118_[22] = _tmp22_; + _tmp118_[23] = _tmp23_; + _tmp118_[24] = _tmp24_; + _tmp118_[25] = _tmp25_; + _tmp118_[26] = _tmp26_; + _tmp118_[27] = _tmp27_; + _tmp118_[28] = _tmp28_; + _tmp118_[29] = _tmp29_; + _tmp118_[30] = _tmp30_; + _tmp118_[31] = _tmp31_; + _tmp118_[32] = _tmp32_; + _tmp118_[33] = _tmp33_; + _tmp118_[34] = _tmp34_; + _tmp118_[35] = _tmp35_; + _tmp118_[36] = _tmp36_; + _tmp118_[37] = _tmp37_; + _tmp118_[38] = _tmp38_; + _tmp118_[39] = _tmp39_; + _tmp118_[40] = _tmp40_; + _tmp118_[41] = _tmp41_; + _tmp118_[42] = _tmp42_; + _tmp118_[43] = _tmp43_; + _tmp118_[44] = _tmp44_; + _tmp118_[45] = _tmp45_; + _tmp118_[46] = _tmp46_; + _tmp118_[47] = _tmp47_; + _tmp118_[48] = _tmp48_; + _tmp118_[49] = _tmp49_; + _tmp118_[50] = _tmp50_; + _tmp118_[51] = _tmp51_; + _tmp118_[52] = _tmp52_; + _tmp118_[53] = _tmp53_; + _tmp118_[54] = _tmp54_; + _tmp118_[55] = _tmp55_; + _tmp118_[56] = _tmp56_; + _tmp118_[57] = _tmp57_; + _tmp118_[58] = _tmp58_; + _tmp118_[59] = _tmp59_; + _tmp118_[60] = _tmp60_; + _tmp118_[61] = _tmp61_; + _tmp118_[62] = _tmp62_; + _tmp118_[63] = _tmp63_; + _tmp118_[64] = _tmp64_; + _tmp118_[65] = _tmp65_; + _tmp118_[66] = _tmp66_; + _tmp118_[67] = _tmp67_; + _tmp118_[68] = _tmp68_; + _tmp118_[69] = _tmp69_; + _tmp118_[70] = _tmp70_; + _tmp118_[71] = _tmp71_; + _tmp118_[72] = _tmp72_; + _tmp118_[73] = _tmp73_; + _tmp118_[74] = _tmp74_; + _tmp118_[75] = _tmp75_; + _tmp118_[76] = _tmp76_; + _tmp118_[77] = _tmp77_; + _tmp118_[78] = _tmp78_; + _tmp118_[79] = _tmp79_; + _tmp118_[80] = _tmp80_; + _tmp118_[81] = _tmp81_; + _tmp118_[82] = _tmp82_; + _tmp118_[83] = _tmp83_; + _tmp118_[84] = _tmp84_; + _tmp118_[85] = _tmp85_; + _tmp118_[86] = _tmp86_; + _tmp118_[87] = _tmp87_; + _tmp118_[88] = _tmp88_; + _tmp118_[89] = _tmp89_; + _tmp118_[90] = _tmp90_; + _tmp118_[91] = _tmp91_; + _tmp118_[92] = _tmp92_; + _tmp118_[93] = _tmp93_; + _tmp118_[94] = _tmp94_; + _tmp118_[95] = _tmp95_; + _tmp118_[96] = _tmp96_; + _tmp118_[97] = _tmp97_; + _tmp118_[98] = _tmp98_; + _tmp118_[99] = _tmp99_; + _tmp118_[100] = _tmp100_; + _tmp118_[101] = _tmp101_; + _tmp118_[102] = _tmp102_; + _tmp118_[103] = _tmp103_; + _tmp118_[104] = _tmp104_; + _tmp118_[105] = _tmp105_; + _tmp118_[106] = _tmp106_; + _tmp118_[107] = _tmp107_; + _tmp118_[108] = _tmp108_; + _tmp118_[109] = _tmp109_; + _tmp118_[110] = _tmp110_; + _tmp118_[111] = _tmp111_; + _tmp118_[112] = _tmp112_; + _tmp118_[113] = _tmp113_; + _tmp118_[114] = _tmp114_; + _tmp118_[115] = _tmp115_; + _tmp118_[116] = _tmp116_; + _tmp118_[117] = _tmp117_; + self->elements = _tmp118_; + self->elements_length1 = 118; + _tmp119_ = g_new0 (gint, 118); + _tmp119_[0] = 8; + _tmp119_[1] = 10; + _tmp119_[2] = 1; + _tmp119_[3] = 2; + _tmp119_[4] = 7; + _tmp119_[5] = 8; + _tmp119_[6] = 8; + _tmp119_[7] = 8; + _tmp119_[8] = 9; + _tmp119_[9] = 10; + _tmp119_[10] = 1; + _tmp119_[11] = 2; + _tmp119_[12] = 6; + _tmp119_[13] = 7; + _tmp119_[14] = 8; + _tmp119_[15] = 8; + _tmp119_[16] = 9; + _tmp119_[17] = 10; + _tmp119_[18] = 1; + _tmp119_[19] = 2; + _tmp119_[20] = 5; + _tmp119_[21] = 5; + _tmp119_[22] = 5; + _tmp119_[23] = 5; + _tmp119_[24] = 5; + _tmp119_[25] = 5; + _tmp119_[26] = 5; + _tmp119_[27] = 5; + _tmp119_[28] = 5; + _tmp119_[29] = 5; + _tmp119_[30] = 6; + _tmp119_[31] = 7; + _tmp119_[32] = 7; + _tmp119_[33] = 8; + _tmp119_[34] = 9; + _tmp119_[35] = 10; + _tmp119_[36] = 1; + _tmp119_[37] = 2; + _tmp119_[38] = 5; + _tmp119_[39] = 5; + _tmp119_[40] = 5; + _tmp119_[41] = 5; + _tmp119_[42] = 5; + _tmp119_[43] = 5; + _tmp119_[44] = 5; + _tmp119_[45] = 5; + _tmp119_[46] = 5; + _tmp119_[47] = 5; + _tmp119_[48] = 6; + _tmp119_[49] = 6; + _tmp119_[50] = 7; + _tmp119_[51] = 7; + _tmp119_[52] = 9; + _tmp119_[53] = 10; + _tmp119_[54] = 1; + _tmp119_[55] = 2; + _tmp119_[56] = 3; + _tmp119_[57] = 3; + _tmp119_[58] = 3; + _tmp119_[59] = 3; + _tmp119_[60] = 3; + _tmp119_[61] = 3; + _tmp119_[62] = 3; + _tmp119_[63] = 3; + _tmp119_[64] = 3; + _tmp119_[65] = 3; + _tmp119_[66] = 3; + _tmp119_[67] = 3; + _tmp119_[68] = 3; + _tmp119_[69] = 3; + _tmp119_[70] = 3; + _tmp119_[71] = 5; + _tmp119_[72] = 5; + _tmp119_[73] = 5; + _tmp119_[74] = 5; + _tmp119_[75] = 5; + _tmp119_[76] = 5; + _tmp119_[77] = 5; + _tmp119_[78] = 5; + _tmp119_[79] = 5; + _tmp119_[80] = 6; + _tmp119_[81] = 6; + _tmp119_[82] = 6; + _tmp119_[83] = 7; + _tmp119_[84] = 9; + _tmp119_[85] = 10; + _tmp119_[86] = 1; + _tmp119_[87] = 2; + _tmp119_[88] = 4; + _tmp119_[89] = 4; + _tmp119_[90] = 4; + _tmp119_[91] = 4; + _tmp119_[92] = 4; + _tmp119_[93] = 4; + _tmp119_[94] = 4; + _tmp119_[95] = 4; + _tmp119_[96] = 4; + _tmp119_[97] = 4; + _tmp119_[98] = 4; + _tmp119_[99] = 4; + _tmp119_[100] = 4; + _tmp119_[101] = 4; + _tmp119_[102] = 4; + _tmp119_[103] = 11; + _tmp119_[104] = 11; + _tmp119_[105] = 11; + _tmp119_[106] = 11; + _tmp119_[107] = 11; + _tmp119_[108] = 11; + _tmp119_[109] = 11; + _tmp119_[110] = 11; + _tmp119_[111] = 11; + _tmp119_[112] = 11; + _tmp119_[113] = 11; + _tmp119_[114] = 11; + _tmp119_[115] = 11; + _tmp119_[116] = 11; + _tmp119_[117] = 11; + self->classification = _tmp119_; + self->classification_length1 = 118; + self->priv->initialized = FALSE; +} + + +static void periodic_table_finalize (GObject* obj) { + PeriodicTable * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_PERIODIC_TABLE, PeriodicTable); + _g_object_unref0 (self->controller); + self->elements = (_vala_array_free (self->elements, self->elements_length1, (GDestroyNotify) g_free), NULL); + self->classification = (g_free (self->classification), NULL); + _g_object_unref0 (self->priv->presenter); + G_OBJECT_CLASS (periodic_table_parent_class)->finalize (obj); +} + + +GType periodic_table_get_type (void) { + static volatile gsize periodic_table_type_id__volatile = 0; + if (g_once_init_enter (&periodic_table_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (PeriodicTableClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) periodic_table_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PeriodicTable), 0, (GInstanceInitFunc) periodic_table_instance_init, NULL }; + GType periodic_table_type_id; + periodic_table_type_id = g_type_register_static (gtk_grid_get_type (), "PeriodicTable", &g_define_type_info, 0); + g_once_init_leave (&periodic_table_type_id__volatile, periodic_table_type_id); + } + return periodic_table_type_id__volatile; +} + + +static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { + if ((array != NULL) && (destroy_func != NULL)) { + int i; + for (i = 0; i < array_length; i = i + 1) { + if (((gpointer*) array)[i] != NULL) { + destroy_func (((gpointer*) array)[i]); + } + } + } +} + + +static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { + _vala_array_destroy (array, array_length, destroy_func); + g_free (array); +} + + + diff -Nru nasc-0.2/build/src/ResultBoxWidget.c nasc-0.3/build/src/ResultBoxWidget.c --- nasc-0.2/build/src/ResultBoxWidget.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/ResultBoxWidget.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,805 @@ +/* ResultBoxWidget.c generated by valac 0.32.1, the Vala compiler + * generated from ResultBoxWidget.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_RESULT_BOX_WIDGET (result_box_widget_get_type ()) +#define RESULT_BOX_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_BOX_WIDGET, ResultBoxWidget)) +#define RESULT_BOX_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_BOX_WIDGET, ResultBoxWidgetClass)) +#define IS_RESULT_BOX_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_BOX_WIDGET)) +#define IS_RESULT_BOX_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_BOX_WIDGET)) +#define RESULT_BOX_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_BOX_WIDGET, ResultBoxWidgetClass)) + +typedef struct _ResultBoxWidget ResultBoxWidget; +typedef struct _ResultBoxWidgetClass ResultBoxWidgetClass; +typedef struct _ResultBoxWidgetPrivate ResultBoxWidgetPrivate; + +#define TYPE_RESULT_LINE (result_line_get_type ()) +#define RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_LINE, ResultLine)) +#define RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_LINE, ResultLineClass)) +#define IS_RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_LINE)) +#define IS_RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_LINE)) +#define RESULT_LINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_LINE, ResultLineClass)) + +typedef struct _ResultLine ResultLine; +typedef struct _ResultLineClass ResultLineClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +struct _ResultBoxWidget { + GtkDrawingArea parent_instance; + ResultBoxWidgetPrivate * priv; + ResultLine* result; +}; + +struct _ResultBoxWidgetClass { + GtkDrawingAreaClass parent_class; +}; + +struct _ResultBoxWidgetPrivate { + gint _line_number; +}; + + +static gpointer result_box_widget_parent_class = NULL; + +GType result_box_widget_get_type (void) G_GNUC_CONST; +GType result_line_get_type (void) G_GNUC_CONST; +#define RESULT_BOX_WIDGET_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_RESULT_BOX_WIDGET, ResultBoxWidgetPrivate)) +enum { + RESULT_BOX_WIDGET_DUMMY_PROPERTY, + RESULT_BOX_WIDGET_LINE_NUMBER +}; +ResultBoxWidget* result_box_widget_new (gint line_number, ResultLine* _result_); +ResultBoxWidget* result_box_widget_construct (GType object_type, gint line_number, ResultLine* _result_); +void result_box_widget_set_line_number (ResultBoxWidget* self, gint value); +static void __lambda4_ (ResultBoxWidget* self); +static void ___lambda4__result_line_changed (ResultLine* _sender, gpointer self); +static void __lambda5_ (ResultBoxWidget* self); +static void ___lambda5__result_line_destroy (ResultLine* _sender, gpointer self); +gchar* result_box_widget_get_variable_name (ResultBoxWidget* self); +const gchar* result_line_get_variable_name (ResultLine* self); +static gboolean result_box_widget_real_draw (GtkWidget* base, cairo_t* context); +const gchar* result_line_get_value (ResultLine* self); +gboolean result_box_widget_draw_content (ResultBoxWidget* self, cairo_t* context, gint x, gint y); +static void result_box_widget_roundedrec (ResultBoxWidget* self, cairo_t* cr, gint x, gint y, gint width, gint height, gint radius, gboolean fill); +gint result_box_widget_get_line_number (ResultBoxWidget* self); +static void result_box_widget_finalize (GObject* obj); +static void _vala_result_box_widget_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec); +static void _vala_result_box_widget_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec); + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static void __lambda4_ (ResultBoxWidget* self) { + gtk_widget_queue_draw ((GtkWidget*) self); +} + + +static void ___lambda4__result_line_changed (ResultLine* _sender, gpointer self) { + __lambda4_ ((ResultBoxWidget*) self); +} + + +static void __lambda5_ (ResultBoxWidget* self) { + gtk_widget_destroy ((GtkWidget*) self); +} + + +static void ___lambda5__result_line_destroy (ResultLine* _sender, gpointer self) { + __lambda5_ ((ResultBoxWidget*) self); +} + + +ResultBoxWidget* result_box_widget_construct (GType object_type, gint line_number, ResultLine* _result_) { + ResultBoxWidget * self = NULL; + gint _tmp0_ = 0; + ResultLine* _tmp1_ = NULL; + ResultLine* _tmp2_ = NULL; + ResultLine* _tmp3_ = NULL; + ResultLine* _tmp4_ = NULL; + g_return_val_if_fail (_result_ != NULL, NULL); + self = (ResultBoxWidget*) g_object_new (object_type, NULL); + _tmp0_ = line_number; + result_box_widget_set_line_number (self, _tmp0_); + _tmp1_ = _result_; + _tmp2_ = _g_object_ref0 (_tmp1_); + _g_object_unref0 (self->result); + self->result = _tmp2_; + gtk_widget_set_size_request ((GtkWidget*) self, 15, 15); + gtk_widget_show ((GtkWidget*) self); + _tmp3_ = self->result; + g_signal_connect_object (_tmp3_, "changed", (GCallback) ___lambda4__result_line_changed, self, 0); + _tmp4_ = _result_; + g_signal_connect_object (_tmp4_, "destroy", (GCallback) ___lambda5__result_line_destroy, self, 0); + return self; +} + + +ResultBoxWidget* result_box_widget_new (gint line_number, ResultLine* _result_) { + return result_box_widget_construct (TYPE_RESULT_BOX_WIDGET, line_number, _result_); +} + + +gchar* result_box_widget_get_variable_name (ResultBoxWidget* self) { + gchar* result = NULL; + ResultLine* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->result; + _tmp1_ = result_line_get_variable_name (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = g_strdup (_tmp2_); + result = _tmp3_; + return result; +} + + +static gboolean result_box_widget_real_draw (GtkWidget* base, cairo_t* context) { + ResultBoxWidget * self; + gboolean result = FALSE; + cairo_t* _tmp0_ = NULL; + cairo_text_extents_t extents = {0}; + cairo_t* _tmp1_ = NULL; + ResultLine* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + cairo_text_extents_t _tmp5_ = {0}; + gint box_width = 0; + cairo_text_extents_t _tmp6_ = {0}; + gdouble _tmp7_ = 0.0; + self = (ResultBoxWidget*) base; + g_return_val_if_fail (context != NULL, FALSE); + _tmp0_ = context; + cairo_set_font_size (_tmp0_, (gdouble) 16); + _tmp1_ = context; + _tmp2_ = self->result; + _tmp3_ = result_line_get_value (_tmp2_); + _tmp4_ = _tmp3_; + cairo_text_extents (_tmp1_, _tmp4_, &_tmp5_); + extents = _tmp5_; + _tmp6_ = extents; + _tmp7_ = _tmp6_.width; + box_width = ((gint) _tmp7_) + (2 * 8); + gtk_widget_set_size_request ((GtkWidget*) self, box_width, 15); + result = TRUE; + return result; +} + + +gboolean result_box_widget_draw_content (ResultBoxWidget* self, cairo_t* context, gint x, gint y) { + gboolean result = FALSE; + cairo_t* _tmp0_ = NULL; + cairo_text_extents_t extents = {0}; + cairo_t* _tmp1_ = NULL; + ResultLine* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + const gchar* _tmp4_ = NULL; + cairo_text_extents_t _tmp5_ = {0}; + gint dy = 0; + gint box_dx_text = 0; + gint box_mdy_text = 0; + gint box_height = 0; + gint box_width = 0; + cairo_text_extents_t _tmp6_ = {0}; + gdouble _tmp7_ = 0.0; + cairo_t* _tmp8_ = NULL; + cairo_t* _tmp9_ = NULL; + cairo_t* _tmp10_ = NULL; + gint _tmp11_ = 0; + gint _tmp12_ = 0; + cairo_t* _tmp13_ = NULL; + gint _tmp14_ = 0; + gint _tmp15_ = 0; + cairo_t* _tmp16_ = NULL; + gint _tmp17_ = 0; + gint _tmp18_ = 0; + cairo_t* _tmp19_ = NULL; + cairo_t* _tmp20_ = NULL; + ResultLine* _tmp21_ = NULL; + const gchar* _tmp22_ = NULL; + const gchar* _tmp23_ = NULL; + cairo_t* _tmp24_ = NULL; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (context != NULL, FALSE); + _tmp0_ = context; + cairo_set_font_size (_tmp0_, (gdouble) 16); + _tmp1_ = context; + _tmp2_ = self->result; + _tmp3_ = result_line_get_value (_tmp2_); + _tmp4_ = _tmp3_; + cairo_text_extents (_tmp1_, _tmp4_, &_tmp5_); + extents = _tmp5_; + dy = -2; + box_dx_text = 8; + box_mdy_text = 5; + box_height = 22; + _tmp6_ = extents; + _tmp7_ = _tmp6_.width; + box_width = ((gint) _tmp7_) + (2 * box_dx_text); + _tmp8_ = context; + cairo_set_source_rgba (_tmp8_, 0.854901961, 0.933333333, 0.984313725, 0.6); + _tmp9_ = context; + cairo_set_line_width (_tmp9_, (gdouble) 1); + _tmp10_ = context; + _tmp11_ = x; + _tmp12_ = y; + result_box_widget_roundedrec (self, _tmp10_, _tmp11_, _tmp12_ + dy, box_width, box_height, 4, TRUE); + _tmp13_ = context; + _tmp14_ = x; + _tmp15_ = y; + result_box_widget_roundedrec (self, _tmp13_, _tmp14_, _tmp15_ + dy, box_width, box_height, 4, FALSE); + _tmp16_ = context; + _tmp17_ = x; + _tmp18_ = y; + cairo_move_to (_tmp16_, (gdouble) ((_tmp17_ + box_dx_text) - 1), (gdouble) (((_tmp18_ + dy) + box_height) - box_mdy_text)); + _tmp19_ = context; + cairo_set_source_rgba (_tmp19_, 0.145098039, 0.42745098, 0.615686275, (gdouble) 1); + _tmp20_ = context; + _tmp21_ = self->result; + _tmp22_ = result_line_get_value (_tmp21_); + _tmp23_ = _tmp22_; + cairo_show_text (_tmp20_, _tmp23_); + _tmp24_ = context; + cairo_stroke (_tmp24_); + result = TRUE; + return result; +} + + +static void result_box_widget_roundedrec (ResultBoxWidget* self, cairo_t* cr, gint x, gint y, gint width, gint height, gint radius, gboolean fill) { + gint x0 = 0; + gint _tmp0_ = 0; + gint _tmp1_ = 0; + gint y0 = 0; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + gint rect_width = 0; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + gint rect_height = 0; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + cairo_t* _tmp8_ = NULL; + gint x1 = 0; + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint y1 = 0; + gint _tmp11_ = 0; + gint _tmp12_ = 0; + gint _tmp13_ = 0; + gint _tmp14_ = 0; + cairo_t* _tmp187_ = NULL; + gboolean _tmp188_ = FALSE; + cairo_t* _tmp190_ = NULL; + g_return_if_fail (self != NULL); + g_return_if_fail (cr != NULL); + _tmp0_ = x; + _tmp1_ = radius; + x0 = _tmp0_ + (_tmp1_ / 2); + _tmp2_ = y; + _tmp3_ = radius; + y0 = _tmp2_ + (_tmp3_ / 2); + _tmp4_ = width; + _tmp5_ = radius; + rect_width = _tmp4_ - _tmp5_; + _tmp6_ = height; + _tmp7_ = radius; + rect_height = _tmp6_ - _tmp7_; + _tmp8_ = cr; + cairo_save (_tmp8_); + _tmp9_ = x0; + _tmp10_ = rect_width; + x1 = _tmp9_ + _tmp10_; + _tmp11_ = y0; + _tmp12_ = rect_height; + y1 = _tmp11_ + _tmp12_; + _tmp13_ = rect_width; + _tmp14_ = radius; + if ((_tmp13_ / 2) < _tmp14_) { + gint _tmp15_ = 0; + gint _tmp16_ = 0; + _tmp15_ = rect_height; + _tmp16_ = radius; + if ((_tmp15_ / 2) < _tmp16_) { + cairo_t* _tmp17_ = NULL; + gint _tmp18_ = 0; + gint _tmp19_ = 0; + gint _tmp20_ = 0; + cairo_t* _tmp21_ = NULL; + gint _tmp22_ = 0; + gint _tmp23_ = 0; + gint _tmp24_ = 0; + gint _tmp25_ = 0; + gint _tmp26_ = 0; + gint _tmp27_ = 0; + gint _tmp28_ = 0; + cairo_t* _tmp29_ = NULL; + gint _tmp30_ = 0; + gint _tmp31_ = 0; + gint _tmp32_ = 0; + gint _tmp33_ = 0; + gint _tmp34_ = 0; + gint _tmp35_ = 0; + gint _tmp36_ = 0; + cairo_t* _tmp37_ = NULL; + gint _tmp38_ = 0; + gint _tmp39_ = 0; + gint _tmp40_ = 0; + gint _tmp41_ = 0; + gint _tmp42_ = 0; + gint _tmp43_ = 0; + gint _tmp44_ = 0; + cairo_t* _tmp45_ = NULL; + gint _tmp46_ = 0; + gint _tmp47_ = 0; + gint _tmp48_ = 0; + gint _tmp49_ = 0; + gint _tmp50_ = 0; + gint _tmp51_ = 0; + gint _tmp52_ = 0; + _tmp17_ = cr; + _tmp18_ = x0; + _tmp19_ = y0; + _tmp20_ = y1; + cairo_move_to (_tmp17_, (gdouble) _tmp18_, (gdouble) ((_tmp19_ + _tmp20_) / 2)); + _tmp21_ = cr; + _tmp22_ = x0; + _tmp23_ = y0; + _tmp24_ = x0; + _tmp25_ = y0; + _tmp26_ = x0; + _tmp27_ = x1; + _tmp28_ = y0; + cairo_curve_to (_tmp21_, (gdouble) _tmp22_, (gdouble) _tmp23_, (gdouble) _tmp24_, (gdouble) _tmp25_, (gdouble) ((_tmp26_ + _tmp27_) / 2), (gdouble) _tmp28_); + _tmp29_ = cr; + _tmp30_ = x1; + _tmp31_ = y0; + _tmp32_ = x1; + _tmp33_ = y0; + _tmp34_ = x1; + _tmp35_ = y0; + _tmp36_ = y1; + cairo_curve_to (_tmp29_, (gdouble) _tmp30_, (gdouble) _tmp31_, (gdouble) _tmp32_, (gdouble) _tmp33_, (gdouble) _tmp34_, (gdouble) ((_tmp35_ + _tmp36_) / 2)); + _tmp37_ = cr; + _tmp38_ = x1; + _tmp39_ = y1; + _tmp40_ = x1; + _tmp41_ = y1; + _tmp42_ = x1; + _tmp43_ = x0; + _tmp44_ = y1; + cairo_curve_to (_tmp37_, (gdouble) _tmp38_, (gdouble) _tmp39_, (gdouble) _tmp40_, (gdouble) _tmp41_, (gdouble) ((_tmp42_ + _tmp43_) / 2), (gdouble) _tmp44_); + _tmp45_ = cr; + _tmp46_ = x0; + _tmp47_ = y1; + _tmp48_ = x0; + _tmp49_ = y1; + _tmp50_ = x0; + _tmp51_ = y0; + _tmp52_ = y1; + cairo_curve_to (_tmp45_, (gdouble) _tmp46_, (gdouble) _tmp47_, (gdouble) _tmp48_, (gdouble) _tmp49_, (gdouble) _tmp50_, (gdouble) ((_tmp51_ + _tmp52_) / 2)); + } else { + cairo_t* _tmp53_ = NULL; + gint _tmp54_ = 0; + gint _tmp55_ = 0; + gint _tmp56_ = 0; + cairo_t* _tmp57_ = NULL; + gint _tmp58_ = 0; + gint _tmp59_ = 0; + gint _tmp60_ = 0; + gint _tmp61_ = 0; + gint _tmp62_ = 0; + gint _tmp63_ = 0; + gint _tmp64_ = 0; + cairo_t* _tmp65_ = NULL; + gint _tmp66_ = 0; + gint _tmp67_ = 0; + gint _tmp68_ = 0; + gint _tmp69_ = 0; + gint _tmp70_ = 0; + gint _tmp71_ = 0; + gint _tmp72_ = 0; + cairo_t* _tmp73_ = NULL; + gint _tmp74_ = 0; + gint _tmp75_ = 0; + gint _tmp76_ = 0; + cairo_t* _tmp77_ = NULL; + gint _tmp78_ = 0; + gint _tmp79_ = 0; + gint _tmp80_ = 0; + gint _tmp81_ = 0; + gint _tmp82_ = 0; + gint _tmp83_ = 0; + gint _tmp84_ = 0; + cairo_t* _tmp85_ = NULL; + gint _tmp86_ = 0; + gint _tmp87_ = 0; + gint _tmp88_ = 0; + gint _tmp89_ = 0; + gint _tmp90_ = 0; + gint _tmp91_ = 0; + gint _tmp92_ = 0; + _tmp53_ = cr; + _tmp54_ = x0; + _tmp55_ = y0; + _tmp56_ = radius; + cairo_move_to (_tmp53_, (gdouble) _tmp54_, (gdouble) (_tmp55_ + _tmp56_)); + _tmp57_ = cr; + _tmp58_ = x0; + _tmp59_ = y0; + _tmp60_ = x0; + _tmp61_ = y0; + _tmp62_ = x0; + _tmp63_ = x1; + _tmp64_ = y0; + cairo_curve_to (_tmp57_, (gdouble) _tmp58_, (gdouble) _tmp59_, (gdouble) _tmp60_, (gdouble) _tmp61_, (gdouble) ((_tmp62_ + _tmp63_) / 2), (gdouble) _tmp64_); + _tmp65_ = cr; + _tmp66_ = x1; + _tmp67_ = y0; + _tmp68_ = x1; + _tmp69_ = y0; + _tmp70_ = x1; + _tmp71_ = y0; + _tmp72_ = radius; + cairo_curve_to (_tmp65_, (gdouble) _tmp66_, (gdouble) _tmp67_, (gdouble) _tmp68_, (gdouble) _tmp69_, (gdouble) _tmp70_, (gdouble) (_tmp71_ + _tmp72_)); + _tmp73_ = cr; + _tmp74_ = x1; + _tmp75_ = y1; + _tmp76_ = radius; + cairo_line_to (_tmp73_, (gdouble) _tmp74_, (gdouble) (_tmp75_ - _tmp76_)); + _tmp77_ = cr; + _tmp78_ = x1; + _tmp79_ = y1; + _tmp80_ = x1; + _tmp81_ = y1; + _tmp82_ = x1; + _tmp83_ = x0; + _tmp84_ = y1; + cairo_curve_to (_tmp77_, (gdouble) _tmp78_, (gdouble) _tmp79_, (gdouble) _tmp80_, (gdouble) _tmp81_, (gdouble) ((_tmp82_ + _tmp83_) / 2), (gdouble) _tmp84_); + _tmp85_ = cr; + _tmp86_ = x0; + _tmp87_ = y1; + _tmp88_ = x0; + _tmp89_ = y1; + _tmp90_ = x0; + _tmp91_ = y1; + _tmp92_ = radius; + cairo_curve_to (_tmp85_, (gdouble) _tmp86_, (gdouble) _tmp87_, (gdouble) _tmp88_, (gdouble) _tmp89_, (gdouble) _tmp90_, (gdouble) (_tmp91_ - _tmp92_)); + } + } else { + gint _tmp93_ = 0; + gint _tmp94_ = 0; + _tmp93_ = rect_height; + _tmp94_ = radius; + if ((_tmp93_ / 2) < _tmp94_) { + cairo_t* _tmp95_ = NULL; + gint _tmp96_ = 0; + gint _tmp97_ = 0; + gint _tmp98_ = 0; + cairo_t* _tmp99_ = NULL; + gint _tmp100_ = 0; + gint _tmp101_ = 0; + gint _tmp102_ = 0; + gint _tmp103_ = 0; + gint _tmp104_ = 0; + gint _tmp105_ = 0; + gint _tmp106_ = 0; + cairo_t* _tmp107_ = NULL; + gint _tmp108_ = 0; + gint _tmp109_ = 0; + gint _tmp110_ = 0; + cairo_t* _tmp111_ = NULL; + gint _tmp112_ = 0; + gint _tmp113_ = 0; + gint _tmp114_ = 0; + gint _tmp115_ = 0; + gint _tmp116_ = 0; + gint _tmp117_ = 0; + gint _tmp118_ = 0; + cairo_t* _tmp119_ = NULL; + gint _tmp120_ = 0; + gint _tmp121_ = 0; + gint _tmp122_ = 0; + gint _tmp123_ = 0; + gint _tmp124_ = 0; + gint _tmp125_ = 0; + gint _tmp126_ = 0; + cairo_t* _tmp127_ = NULL; + gint _tmp128_ = 0; + gint _tmp129_ = 0; + gint _tmp130_ = 0; + cairo_t* _tmp131_ = NULL; + gint _tmp132_ = 0; + gint _tmp133_ = 0; + gint _tmp134_ = 0; + gint _tmp135_ = 0; + gint _tmp136_ = 0; + gint _tmp137_ = 0; + gint _tmp138_ = 0; + _tmp95_ = cr; + _tmp96_ = x0; + _tmp97_ = y0; + _tmp98_ = y1; + cairo_move_to (_tmp95_, (gdouble) _tmp96_, (gdouble) ((_tmp97_ + _tmp98_) / 2)); + _tmp99_ = cr; + _tmp100_ = x0; + _tmp101_ = y0; + _tmp102_ = x0; + _tmp103_ = y0; + _tmp104_ = x0; + _tmp105_ = radius; + _tmp106_ = y0; + cairo_curve_to (_tmp99_, (gdouble) _tmp100_, (gdouble) _tmp101_, (gdouble) _tmp102_, (gdouble) _tmp103_, (gdouble) (_tmp104_ + _tmp105_), (gdouble) _tmp106_); + _tmp107_ = cr; + _tmp108_ = x1; + _tmp109_ = radius; + _tmp110_ = y0; + cairo_line_to (_tmp107_, (gdouble) (_tmp108_ - _tmp109_), (gdouble) _tmp110_); + _tmp111_ = cr; + _tmp112_ = x1; + _tmp113_ = y0; + _tmp114_ = x1; + _tmp115_ = y0; + _tmp116_ = x1; + _tmp117_ = y0; + _tmp118_ = y1; + cairo_curve_to (_tmp111_, (gdouble) _tmp112_, (gdouble) _tmp113_, (gdouble) _tmp114_, (gdouble) _tmp115_, (gdouble) _tmp116_, (gdouble) ((_tmp117_ + _tmp118_) / 2)); + _tmp119_ = cr; + _tmp120_ = x1; + _tmp121_ = y1; + _tmp122_ = x1; + _tmp123_ = y1; + _tmp124_ = x1; + _tmp125_ = radius; + _tmp126_ = y1; + cairo_curve_to (_tmp119_, (gdouble) _tmp120_, (gdouble) _tmp121_, (gdouble) _tmp122_, (gdouble) _tmp123_, (gdouble) (_tmp124_ - _tmp125_), (gdouble) _tmp126_); + _tmp127_ = cr; + _tmp128_ = x0; + _tmp129_ = radius; + _tmp130_ = y1; + cairo_line_to (_tmp127_, (gdouble) (_tmp128_ + _tmp129_), (gdouble) _tmp130_); + _tmp131_ = cr; + _tmp132_ = x0; + _tmp133_ = y1; + _tmp134_ = x0; + _tmp135_ = y1; + _tmp136_ = x0; + _tmp137_ = y0; + _tmp138_ = y1; + cairo_curve_to (_tmp131_, (gdouble) _tmp132_, (gdouble) _tmp133_, (gdouble) _tmp134_, (gdouble) _tmp135_, (gdouble) _tmp136_, (gdouble) ((_tmp137_ + _tmp138_) / 2)); + } else { + cairo_t* _tmp139_ = NULL; + gint _tmp140_ = 0; + gint _tmp141_ = 0; + gint _tmp142_ = 0; + cairo_t* _tmp143_ = NULL; + gint _tmp144_ = 0; + gint _tmp145_ = 0; + gint _tmp146_ = 0; + gint _tmp147_ = 0; + gint _tmp148_ = 0; + gint _tmp149_ = 0; + gint _tmp150_ = 0; + cairo_t* _tmp151_ = NULL; + gint _tmp152_ = 0; + gint _tmp153_ = 0; + gint _tmp154_ = 0; + cairo_t* _tmp155_ = NULL; + gint _tmp156_ = 0; + gint _tmp157_ = 0; + gint _tmp158_ = 0; + gint _tmp159_ = 0; + gint _tmp160_ = 0; + gint _tmp161_ = 0; + gint _tmp162_ = 0; + cairo_t* _tmp163_ = NULL; + gint _tmp164_ = 0; + gint _tmp165_ = 0; + gint _tmp166_ = 0; + cairo_t* _tmp167_ = NULL; + gint _tmp168_ = 0; + gint _tmp169_ = 0; + gint _tmp170_ = 0; + gint _tmp171_ = 0; + gint _tmp172_ = 0; + gint _tmp173_ = 0; + gint _tmp174_ = 0; + cairo_t* _tmp175_ = NULL; + gint _tmp176_ = 0; + gint _tmp177_ = 0; + gint _tmp178_ = 0; + cairo_t* _tmp179_ = NULL; + gint _tmp180_ = 0; + gint _tmp181_ = 0; + gint _tmp182_ = 0; + gint _tmp183_ = 0; + gint _tmp184_ = 0; + gint _tmp185_ = 0; + gint _tmp186_ = 0; + _tmp139_ = cr; + _tmp140_ = x0; + _tmp141_ = y0; + _tmp142_ = radius; + cairo_move_to (_tmp139_, (gdouble) _tmp140_, (gdouble) (_tmp141_ + _tmp142_)); + _tmp143_ = cr; + _tmp144_ = x0; + _tmp145_ = y0; + _tmp146_ = x0; + _tmp147_ = y0; + _tmp148_ = x0; + _tmp149_ = radius; + _tmp150_ = y0; + cairo_curve_to (_tmp143_, (gdouble) _tmp144_, (gdouble) _tmp145_, (gdouble) _tmp146_, (gdouble) _tmp147_, (gdouble) (_tmp148_ + _tmp149_), (gdouble) _tmp150_); + _tmp151_ = cr; + _tmp152_ = x1; + _tmp153_ = radius; + _tmp154_ = y0; + cairo_line_to (_tmp151_, (gdouble) (_tmp152_ - _tmp153_), (gdouble) _tmp154_); + _tmp155_ = cr; + _tmp156_ = x1; + _tmp157_ = y0; + _tmp158_ = x1; + _tmp159_ = y0; + _tmp160_ = x1; + _tmp161_ = y0; + _tmp162_ = radius; + cairo_curve_to (_tmp155_, (gdouble) _tmp156_, (gdouble) _tmp157_, (gdouble) _tmp158_, (gdouble) _tmp159_, (gdouble) _tmp160_, (gdouble) (_tmp161_ + _tmp162_)); + _tmp163_ = cr; + _tmp164_ = x1; + _tmp165_ = y1; + _tmp166_ = radius; + cairo_line_to (_tmp163_, (gdouble) _tmp164_, (gdouble) (_tmp165_ - _tmp166_)); + _tmp167_ = cr; + _tmp168_ = x1; + _tmp169_ = y1; + _tmp170_ = x1; + _tmp171_ = y1; + _tmp172_ = x1; + _tmp173_ = radius; + _tmp174_ = y1; + cairo_curve_to (_tmp167_, (gdouble) _tmp168_, (gdouble) _tmp169_, (gdouble) _tmp170_, (gdouble) _tmp171_, (gdouble) (_tmp172_ - _tmp173_), (gdouble) _tmp174_); + _tmp175_ = cr; + _tmp176_ = x0; + _tmp177_ = radius; + _tmp178_ = y1; + cairo_line_to (_tmp175_, (gdouble) (_tmp176_ + _tmp177_), (gdouble) _tmp178_); + _tmp179_ = cr; + _tmp180_ = x0; + _tmp181_ = y1; + _tmp182_ = x0; + _tmp183_ = y1; + _tmp184_ = x0; + _tmp185_ = y1; + _tmp186_ = radius; + cairo_curve_to (_tmp179_, (gdouble) _tmp180_, (gdouble) _tmp181_, (gdouble) _tmp182_, (gdouble) _tmp183_, (gdouble) _tmp184_, (gdouble) (_tmp185_ - _tmp186_)); + } + } + _tmp187_ = cr; + cairo_close_path (_tmp187_); + _tmp188_ = fill; + if (_tmp188_) { + cairo_t* _tmp189_ = NULL; + _tmp189_ = cr; + cairo_fill (_tmp189_); + } + _tmp190_ = cr; + cairo_restore (_tmp190_); +} + + +gint result_box_widget_get_line_number (ResultBoxWidget* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_line_number; + result = _tmp0_; + return result; +} + + +void result_box_widget_set_line_number (ResultBoxWidget* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_line_number = _tmp0_; + g_object_notify ((GObject *) self, "line-number"); +} + + +static void result_box_widget_class_init (ResultBoxWidgetClass * klass) { + result_box_widget_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (ResultBoxWidgetPrivate)); + ((GtkWidgetClass *) klass)->draw = result_box_widget_real_draw; + G_OBJECT_CLASS (klass)->get_property = _vala_result_box_widget_get_property; + G_OBJECT_CLASS (klass)->set_property = _vala_result_box_widget_set_property; + G_OBJECT_CLASS (klass)->finalize = result_box_widget_finalize; + g_object_class_install_property (G_OBJECT_CLASS (klass), RESULT_BOX_WIDGET_LINE_NUMBER, g_param_spec_int ("line-number", "line-number", "line-number", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); +} + + +static void result_box_widget_instance_init (ResultBoxWidget * self) { + self->priv = RESULT_BOX_WIDGET_GET_PRIVATE (self); +} + + +static void result_box_widget_finalize (GObject* obj) { + ResultBoxWidget * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_RESULT_BOX_WIDGET, ResultBoxWidget); + _g_object_unref0 (self->result); + G_OBJECT_CLASS (result_box_widget_parent_class)->finalize (obj); +} + + +GType result_box_widget_get_type (void) { + static volatile gsize result_box_widget_type_id__volatile = 0; + if (g_once_init_enter (&result_box_widget_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (ResultBoxWidgetClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) result_box_widget_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ResultBoxWidget), 0, (GInstanceInitFunc) result_box_widget_instance_init, NULL }; + GType result_box_widget_type_id; + result_box_widget_type_id = g_type_register_static (gtk_drawing_area_get_type (), "ResultBoxWidget", &g_define_type_info, 0); + g_once_init_leave (&result_box_widget_type_id__volatile, result_box_widget_type_id); + } + return result_box_widget_type_id__volatile; +} + + +static void _vala_result_box_widget_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { + ResultBoxWidget * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_RESULT_BOX_WIDGET, ResultBoxWidget); + switch (property_id) { + case RESULT_BOX_WIDGET_LINE_NUMBER: + g_value_set_int (value, result_box_widget_get_line_number (self)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_result_box_widget_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { + ResultBoxWidget * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_RESULT_BOX_WIDGET, ResultBoxWidget); + switch (property_id) { + case RESULT_BOX_WIDGET_LINE_NUMBER: + result_box_widget_set_line_number (self, g_value_get_int (value)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + + diff -Nru nasc-0.2/build/src/ResultLine.c nasc-0.3/build/src/ResultLine.c --- nasc-0.2/build/src/ResultLine.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/ResultLine.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,549 @@ +/* ResultLine.c generated by valac 0.32.1, the Vala compiler + * generated from ResultLine.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_RESULT_LINE (result_line_get_type ()) +#define RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_LINE, ResultLine)) +#define RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_LINE, ResultLineClass)) +#define IS_RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_LINE)) +#define IS_RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_LINE)) +#define RESULT_LINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_LINE, ResultLineClass)) + +typedef struct _ResultLine ResultLine; +typedef struct _ResultLineClass ResultLineClass; +typedef struct _ResultLinePrivate ResultLinePrivate; +#define _g_free0(var) (var = (g_free (var), NULL)) +#define _cairo_destroy0(var) ((var == NULL) ? NULL : (var = (cairo_destroy (var), NULL))) +#define _cairo_surface_destroy0(var) ((var == NULL) ? NULL : (var = (cairo_surface_destroy (var), NULL))) + +struct _ResultLine { + GObject parent_instance; + ResultLinePrivate * priv; +}; + +struct _ResultLineClass { + GObjectClass parent_class; +}; + +struct _ResultLinePrivate { + gint _line; + gchar* _variable_name; + gchar* _value; + gchar* _full_value; + cairo_t* context; + gint width; +}; + + +static gpointer result_line_parent_class = NULL; + +GType result_line_get_type (void) G_GNUC_CONST; +#define RESULT_LINE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_RESULT_LINE, ResultLinePrivate)) +enum { + RESULT_LINE_DUMMY_PROPERTY, + RESULT_LINE_LINE, + RESULT_LINE_VARIABLE_NAME, + RESULT_LINE_VALUE, + RESULT_LINE_FULL_VALUE +}; +ResultLine* result_line_new (gint line, const gchar* name, const gchar* value, gint width); +ResultLine* result_line_construct (GType object_type, gint line, const gchar* name, const gchar* value, gint width); +void result_line_set_line (ResultLine* self, gint value); +void result_line_set_variable_name (ResultLine* self, const gchar* value); +static void result_line_set_value (ResultLine* self, const gchar* value); +gboolean result_line_set_value_with_notification (ResultLine* self, const gchar* value); +const gchar* result_line_get_full_value (ResultLine* self); +static void result_line_set_full_value (ResultLine* self, const gchar* value); +void result_line_set_val (ResultLine* self, const gchar* value); +void result_line_refresh_width (ResultLine* self, gint width); +gint result_line_get_line (ResultLine* self); +const gchar* result_line_get_variable_name (ResultLine* self); +const gchar* result_line_get_value (ResultLine* self); +static void result_line_finalize (GObject* obj); +static void _vala_result_line_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec); +static void _vala_result_line_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec); + + +ResultLine* result_line_construct (GType object_type, gint line, const gchar* name, const gchar* value, gint width) { + ResultLine * self = NULL; + gint _tmp0_ = 0; + const gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gint _tmp3_ = 0; + cairo_surface_t* source = NULL; + cairo_surface_t* _tmp4_ = NULL; + cairo_t* _tmp5_ = NULL; + cairo_t* _tmp6_ = NULL; + g_return_val_if_fail (name != NULL, NULL); + g_return_val_if_fail (value != NULL, NULL); + self = (ResultLine*) g_object_new (object_type, NULL); + _tmp0_ = line; + result_line_set_line (self, _tmp0_); + _tmp1_ = name; + result_line_set_variable_name (self, _tmp1_); + _tmp2_ = value; + result_line_set_value (self, _tmp2_); + _tmp3_ = width; + self->priv->width = _tmp3_; + _tmp4_ = cairo_image_surface_create (CAIRO_FORMAT_A8, 32, 32); + source = _tmp4_; + _tmp5_ = cairo_create (source); + _cairo_destroy0 (self->priv->context); + self->priv->context = _tmp5_; + _tmp6_ = self->priv->context; + cairo_set_font_size (_tmp6_, (gdouble) 16); + _cairo_surface_destroy0 (source); + return self; +} + + +ResultLine* result_line_new (gint line, const gchar* name, const gchar* value, gint width) { + return result_line_construct (TYPE_RESULT_LINE, line, name, value, width); +} + + +gboolean result_line_set_value_with_notification (ResultLine* self, const gchar* value) { + gboolean result = FALSE; + const gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + const gchar* _tmp3_ = NULL; + g_return_val_if_fail (self != NULL, FALSE); + g_return_val_if_fail (value != NULL, FALSE); + _tmp0_ = value; + _tmp1_ = self->priv->_full_value; + if (g_strcmp0 (_tmp0_, _tmp1_) == 0) { + result = FALSE; + return result; + } + _tmp2_ = value; + result_line_set_full_value (self, _tmp2_); + _tmp3_ = value; + result_line_set_val (self, _tmp3_); + g_signal_emit_by_name (self, "changed"); + result = TRUE; + return result; +} + + +static glong string_strnlen (gchar* str, glong maxlen) { + glong result = 0L; + gchar* end = NULL; + gchar* _tmp0_ = NULL; + glong _tmp1_ = 0L; + gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + _tmp0_ = str; + _tmp1_ = maxlen; + _tmp2_ = memchr (_tmp0_, 0, (gsize) _tmp1_); + end = _tmp2_; + _tmp3_ = end; + if (_tmp3_ == NULL) { + glong _tmp4_ = 0L; + _tmp4_ = maxlen; + result = _tmp4_; + return result; + } else { + gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + _tmp5_ = end; + _tmp6_ = str; + result = (glong) (_tmp5_ - _tmp6_); + return result; + } +} + + +static gchar* string_substring (const gchar* self, glong offset, glong len) { + gchar* result = NULL; + glong string_length = 0L; + gboolean _tmp0_ = FALSE; + glong _tmp1_ = 0L; + glong _tmp8_ = 0L; + glong _tmp14_ = 0L; + glong _tmp17_ = 0L; + glong _tmp18_ = 0L; + glong _tmp19_ = 0L; + glong _tmp20_ = 0L; + glong _tmp21_ = 0L; + gchar* _tmp22_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp1_ = offset; + if (_tmp1_ >= ((glong) 0)) { + glong _tmp2_ = 0L; + _tmp2_ = len; + _tmp0_ = _tmp2_ >= ((glong) 0); + } else { + _tmp0_ = FALSE; + } + if (_tmp0_) { + glong _tmp3_ = 0L; + glong _tmp4_ = 0L; + glong _tmp5_ = 0L; + _tmp3_ = offset; + _tmp4_ = len; + _tmp5_ = string_strnlen ((gchar*) self, _tmp3_ + _tmp4_); + string_length = _tmp5_; + } else { + gint _tmp6_ = 0; + gint _tmp7_ = 0; + _tmp6_ = strlen (self); + _tmp7_ = _tmp6_; + string_length = (glong) _tmp7_; + } + _tmp8_ = offset; + if (_tmp8_ < ((glong) 0)) { + glong _tmp9_ = 0L; + glong _tmp10_ = 0L; + glong _tmp11_ = 0L; + _tmp9_ = string_length; + _tmp10_ = offset; + offset = _tmp9_ + _tmp10_; + _tmp11_ = offset; + g_return_val_if_fail (_tmp11_ >= ((glong) 0), NULL); + } else { + glong _tmp12_ = 0L; + glong _tmp13_ = 0L; + _tmp12_ = offset; + _tmp13_ = string_length; + g_return_val_if_fail (_tmp12_ <= _tmp13_, NULL); + } + _tmp14_ = len; + if (_tmp14_ < ((glong) 0)) { + glong _tmp15_ = 0L; + glong _tmp16_ = 0L; + _tmp15_ = string_length; + _tmp16_ = offset; + len = _tmp15_ - _tmp16_; + } + _tmp17_ = offset; + _tmp18_ = len; + _tmp19_ = string_length; + g_return_val_if_fail ((_tmp17_ + _tmp18_) <= _tmp19_, NULL); + _tmp20_ = offset; + _tmp21_ = len; + _tmp22_ = g_strndup (((gchar*) self) + _tmp20_, (gsize) _tmp21_); + result = _tmp22_; + return result; +} + + +void result_line_set_val (ResultLine* self, const gchar* value) { + cairo_text_extents_t extents = {0}; + cairo_t* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + cairo_text_extents_t _tmp2_ = {0}; + cairo_text_extents_t _tmp3_ = {0}; + gdouble _tmp4_ = 0.0; + gint _tmp5_ = 0; + g_return_if_fail (self != NULL); + g_return_if_fail (value != NULL); + _tmp0_ = self->priv->context; + _tmp1_ = value; + cairo_text_extents (_tmp0_, _tmp1_, &_tmp2_); + extents = _tmp2_; + _tmp3_ = extents; + _tmp4_ = _tmp3_.width; + _tmp5_ = self->priv->width; + if (((gint) _tmp4_) > _tmp5_) { + gchar* tmp = NULL; + const gchar* _tmp6_ = NULL; + gchar* _tmp7_ = NULL; + const gchar* _tmp30_ = NULL; + gchar* _tmp31_ = NULL; + const gchar* _tmp32_ = NULL; + _tmp6_ = value; + _tmp7_ = g_strdup (_tmp6_); + tmp = _tmp7_; + while (TRUE) { + cairo_text_extents_t _tmp8_ = {0}; + gdouble _tmp9_ = 0.0; + gint _tmp10_ = 0; + const gchar* _tmp11_ = NULL; + const gchar* _tmp12_ = NULL; + gint _tmp13_ = 0; + gint _tmp14_ = 0; + gchar* _tmp15_ = NULL; + cairo_t* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + cairo_text_extents_t _tmp18_ = {0}; + _tmp8_ = extents; + _tmp9_ = _tmp8_.width; + _tmp10_ = self->priv->width; + if (!(((gint) _tmp9_) > (2 * _tmp10_))) { + break; + } + _tmp11_ = tmp; + _tmp12_ = tmp; + _tmp13_ = strlen (_tmp12_); + _tmp14_ = _tmp13_; + _tmp15_ = string_substring (_tmp11_, (glong) 0, (glong) (_tmp14_ / 2)); + _g_free0 (tmp); + tmp = _tmp15_; + _tmp16_ = self->priv->context; + _tmp17_ = tmp; + cairo_text_extents (_tmp16_, _tmp17_, &_tmp18_); + extents = _tmp18_; + } + while (TRUE) { + cairo_text_extents_t _tmp19_ = {0}; + gdouble _tmp20_ = 0.0; + gint _tmp21_ = 0; + const gchar* _tmp22_ = NULL; + const gchar* _tmp23_ = NULL; + gint _tmp24_ = 0; + gint _tmp25_ = 0; + gchar* _tmp26_ = NULL; + cairo_t* _tmp27_ = NULL; + const gchar* _tmp28_ = NULL; + cairo_text_extents_t _tmp29_ = {0}; + _tmp19_ = extents; + _tmp20_ = _tmp19_.width; + _tmp21_ = self->priv->width; + if (!(((gint) _tmp20_) > _tmp21_)) { + break; + } + _tmp22_ = tmp; + _tmp23_ = tmp; + _tmp24_ = strlen (_tmp23_); + _tmp25_ = _tmp24_; + _tmp26_ = string_substring (_tmp22_, (glong) 0, (glong) (_tmp25_ - 1)); + _g_free0 (tmp); + tmp = _tmp26_; + _tmp27_ = self->priv->context; + _tmp28_ = tmp; + cairo_text_extents (_tmp27_, _tmp28_, &_tmp29_); + extents = _tmp29_; + } + _tmp30_ = tmp; + _tmp31_ = g_strconcat (_tmp30_, "...", NULL); + _g_free0 (tmp); + tmp = _tmp31_; + _tmp32_ = tmp; + result_line_set_value (self, _tmp32_); + _g_free0 (tmp); + } else { + const gchar* _tmp33_ = NULL; + _tmp33_ = value; + result_line_set_value (self, _tmp33_); + } +} + + +void result_line_refresh_width (ResultLine* self, gint width) { + gint _tmp0_ = 0; + const gchar* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = width; + self->priv->width = _tmp0_; + _tmp1_ = self->priv->_full_value; + if (_tmp1_ != NULL) { + const gchar* _tmp2_ = NULL; + _tmp2_ = self->priv->_full_value; + result_line_set_val (self, _tmp2_); + } +} + + +gint result_line_get_line (ResultLine* self) { + gint result; + gint _tmp0_ = 0; + g_return_val_if_fail (self != NULL, 0); + _tmp0_ = self->priv->_line; + result = _tmp0_; + return result; +} + + +void result_line_set_line (ResultLine* self, gint value) { + gint _tmp0_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = value; + self->priv->_line = _tmp0_; + g_object_notify ((GObject *) self, "line"); +} + + +const gchar* result_line_get_variable_name (ResultLine* self) { + const gchar* result; + const gchar* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_variable_name; + result = _tmp0_; + return result; +} + + +void result_line_set_variable_name (ResultLine* self, const gchar* value) { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->priv->_variable_name); + self->priv->_variable_name = _tmp1_; + g_object_notify ((GObject *) self, "variable-name"); +} + + +const gchar* result_line_get_value (ResultLine* self) { + const gchar* result; + const gchar* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_value; + result = _tmp0_; + return result; +} + + +static void result_line_set_value (ResultLine* self, const gchar* value) { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->priv->_value); + self->priv->_value = _tmp1_; + g_object_notify ((GObject *) self, "value"); +} + + +const gchar* result_line_get_full_value (ResultLine* self) { + const gchar* result; + const gchar* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_full_value; + result = _tmp0_; + return result; +} + + +static void result_line_set_full_value (ResultLine* self, const gchar* value) { + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = g_strdup (_tmp0_); + _g_free0 (self->priv->_full_value); + self->priv->_full_value = _tmp1_; + g_object_notify ((GObject *) self, "full-value"); +} + + +static void result_line_class_init (ResultLineClass * klass) { + result_line_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (ResultLinePrivate)); + G_OBJECT_CLASS (klass)->get_property = _vala_result_line_get_property; + G_OBJECT_CLASS (klass)->set_property = _vala_result_line_set_property; + G_OBJECT_CLASS (klass)->finalize = result_line_finalize; + g_object_class_install_property (G_OBJECT_CLASS (klass), RESULT_LINE_LINE, g_param_spec_int ("line", "line", "line", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), RESULT_LINE_VARIABLE_NAME, g_param_spec_string ("variable-name", "variable-name", "variable-name", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), RESULT_LINE_VALUE, g_param_spec_string ("value", "value", "value", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), RESULT_LINE_FULL_VALUE, g_param_spec_string ("full-value", "full-value", "full-value", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_signal_new ("changed", TYPE_RESULT_LINE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new ("destroy", TYPE_RESULT_LINE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); +} + + +static void result_line_instance_init (ResultLine * self) { + self->priv = RESULT_LINE_GET_PRIVATE (self); +} + + +static void result_line_finalize (GObject* obj) { + ResultLine * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_RESULT_LINE, ResultLine); + _g_free0 (self->priv->_variable_name); + _g_free0 (self->priv->_value); + _g_free0 (self->priv->_full_value); + _cairo_destroy0 (self->priv->context); + G_OBJECT_CLASS (result_line_parent_class)->finalize (obj); +} + + +GType result_line_get_type (void) { + static volatile gsize result_line_type_id__volatile = 0; + if (g_once_init_enter (&result_line_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (ResultLineClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) result_line_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ResultLine), 0, (GInstanceInitFunc) result_line_instance_init, NULL }; + GType result_line_type_id; + result_line_type_id = g_type_register_static (G_TYPE_OBJECT, "ResultLine", &g_define_type_info, 0); + g_once_init_leave (&result_line_type_id__volatile, result_line_type_id); + } + return result_line_type_id__volatile; +} + + +static void _vala_result_line_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { + ResultLine * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_RESULT_LINE, ResultLine); + switch (property_id) { + case RESULT_LINE_LINE: + g_value_set_int (value, result_line_get_line (self)); + break; + case RESULT_LINE_VARIABLE_NAME: + g_value_set_string (value, result_line_get_variable_name (self)); + break; + case RESULT_LINE_VALUE: + g_value_set_string (value, result_line_get_value (self)); + break; + case RESULT_LINE_FULL_VALUE: + g_value_set_string (value, result_line_get_full_value (self)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_result_line_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { + ResultLine * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_RESULT_LINE, ResultLine); + switch (property_id) { + case RESULT_LINE_LINE: + result_line_set_line (self, g_value_get_int (value)); + break; + case RESULT_LINE_VARIABLE_NAME: + result_line_set_variable_name (self, g_value_get_string (value)); + break; + case RESULT_LINE_VALUE: + result_line_set_value (self, g_value_get_string (value)); + break; + case RESULT_LINE_FULL_VALUE: + result_line_set_full_value (self, g_value_get_string (value)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + + diff -Nru nasc-0.2/build/src/ResultView.c nasc-0.3/build/src/ResultView.c --- nasc-0.2/build/src/ResultView.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/ResultView.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,1257 @@ +/* ResultView.c generated by valac 0.32.1, the Vala compiler + * generated from ResultView.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_RESULT_VIEW (result_view_get_type ()) +#define RESULT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_VIEW, ResultView)) +#define RESULT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_VIEW, ResultViewClass)) +#define IS_RESULT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_VIEW)) +#define IS_RESULT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_VIEW)) +#define RESULT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_VIEW, ResultViewClass)) + +typedef struct _ResultView ResultView; +typedef struct _ResultViewClass ResultViewClass; +typedef struct _ResultViewPrivate ResultViewPrivate; + +#define TYPE_RESULT_LINE (result_line_get_type ()) +#define RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_LINE, ResultLine)) +#define RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_LINE, ResultLineClass)) +#define IS_RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_LINE)) +#define IS_RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_LINE)) +#define RESULT_LINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_LINE, ResultLineClass)) + +typedef struct _ResultLine ResultLine; +typedef struct _ResultLineClass ResultLineClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +#define _g_slist_free0(var) ((var == NULL) ? NULL : (var = (g_slist_free (var), NULL))) +#define __vala_PangoFontDescription_free0(var) ((var == NULL) ? NULL : (var = (_vala_PangoFontDescription_free (var), NULL))) +#define _g_free0(var) (var = (g_free (var), NULL)) + +struct _ResultView { + GtkBox parent_instance; + ResultViewPrivate * priv; +}; + +struct _ResultViewClass { + GtkBoxClass parent_class; +}; + +struct _ResultViewPrivate { + GtkTextView* text_view; + GdkCursor* left_ptr; + GdkCursor* hand; + gboolean hovering_over_result; + GeeArrayList* _result_list; + gint actual_width; + gboolean update_needed; + GtkTextTag* bold_tag; + GtkSpinner* spinner; + GtkBin* spinner_box; + gint actual_line; +}; + + +static gpointer result_view_parent_class = NULL; + +GType result_view_get_type (void) G_GNUC_CONST; +GType result_line_get_type (void) G_GNUC_CONST; +#define RESULT_VIEW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_RESULT_VIEW, ResultViewPrivate)) +enum { + RESULT_VIEW_DUMMY_PROPERTY, + RESULT_VIEW_RESULT_LIST +}; +#define RESULT_VIEW_START_WIDTH 210 +ResultView* result_view_new (void); +ResultView* result_view_construct (GType object_type); +static void result_view_set_result_list (ResultView* self, GeeArrayList* value); +#define NASC_left_margin 12 +#define NASC_vertical_padding 8 +static PangoFontDescription* _vala_PangoFontDescription_copy (PangoFontDescription* self); +static gboolean __lambda22_ (ResultView* self, GdkEventButton* evt); +GeeArrayList* result_view_get_result_list (ResultView* self); +static gboolean ___lambda22__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +static gboolean __lambda23_ (ResultView* self, GdkEventMotion* evt); +static gboolean ___lambda23__gtk_widget_motion_notify_event (GtkWidget* _sender, GdkEventMotion* event, gpointer self); +#define NASC_top_padding 10 +static void _vala_PangoFontDescription_free (PangoFontDescription* self); +void result_view_set_width (ResultView* self, gint width); +void result_line_refresh_width (ResultLine* self, gint width); +void result_view_update (ResultView* self, gint line, gboolean force); +static gboolean result_view_real_draw (GtkWidget* base, cairo_t* cr); +void result_view_show_spinner (ResultView* self, gint line); +void result_view_hide_spinner (ResultView* self); +void result_view_set_line (ResultView* self, gint index, const gchar* _result_); +gboolean result_line_set_value_with_notification (ResultLine* self, const gchar* value); +void result_view_add_line (ResultView* self, gint line, gint count); +#define NASC_SETTINGS_variable_names "nasc_line_" +ResultLine* result_line_new (gint line, const gchar* name, const gchar* value, gint width); +ResultLine* result_line_construct (GType object_type, gint line, const gchar* name, const gchar* value, gint width); +void result_line_set_line (ResultLine* self, gint value); +void result_line_set_variable_name (ResultLine* self, const gchar* value); +void result_view_remove_line (ResultView* self, gint line, gint count); +void result_view_clear (ResultView* self); +const gchar* result_line_get_value (ResultLine* self); +static void result_view_finalize (GObject* obj); +static void _vala_result_view_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec); +static void _vala_result_view_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec); + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static PangoFontDescription* _vala_PangoFontDescription_copy (PangoFontDescription* self) { + return g_boxed_copy (pango_font_description_get_type (), self); +} + + +static gpointer __vala_PangoFontDescription_copy0 (gpointer self) { + return self ? _vala_PangoFontDescription_copy (self) : NULL; +} + + +static gboolean __lambda22_ (ResultView* self, GdkEventButton* evt) { + gboolean result = FALSE; + gboolean _tmp0_ = FALSE; + GtkTextIter start = {0}; + GtkTextIter end = {0}; + GtkTextIter iter = {0}; + gint x = 0; + gint y = 0; + GtkTextView* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + GtkTextBuffer* _tmp3_ = NULL; + GtkTextIter _tmp4_ = {0}; + GtkTextIter _tmp5_ = {0}; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + GtkTextView* _tmp8_ = NULL; + GdkEventButton* _tmp9_ = NULL; + gdouble _tmp10_ = 0.0; + GdkEventButton* _tmp11_ = NULL; + gdouble _tmp12_ = 0.0; + gint _tmp13_ = 0; + gint _tmp14_ = 0; + GtkTextView* _tmp15_ = NULL; + gint _tmp16_ = 0; + gint _tmp17_ = 0; + GtkTextIter _tmp18_ = {0}; + gint line_number = 0; + gint _tmp19_ = 0; + GeeArrayList* _tmp20_ = NULL; + gint _tmp21_ = 0; + gpointer _tmp22_ = NULL; + ResultLine* _tmp23_ = NULL; + GtkTextView* _tmp24_ = NULL; + GdkWindow* _tmp25_ = NULL; + GdkCursor* _tmp26_ = NULL; + g_return_val_if_fail (evt != NULL, FALSE); + _tmp0_ = self->priv->hovering_over_result; + if (!_tmp0_) { + result = FALSE; + return result; + } + _tmp1_ = self->priv->text_view; + _tmp2_ = gtk_text_view_get_buffer (_tmp1_); + _tmp3_ = _tmp2_; + gtk_text_buffer_get_selection_bounds (_tmp3_, &_tmp4_, &_tmp5_); + start = _tmp4_; + end = _tmp5_; + _tmp6_ = gtk_text_iter_get_offset (&start); + _tmp7_ = gtk_text_iter_get_offset (&end); + if (_tmp6_ != _tmp7_) { + result = FALSE; + return result; + } + _tmp8_ = self->priv->text_view; + _tmp9_ = evt; + _tmp10_ = _tmp9_->x; + _tmp11_ = evt; + _tmp12_ = _tmp11_->y; + gtk_text_view_window_to_buffer_coords (_tmp8_, GTK_TEXT_WINDOW_TEXT, (gint) _tmp10_, (gint) _tmp12_, &_tmp13_, &_tmp14_); + x = _tmp13_; + y = _tmp14_; + _tmp15_ = self->priv->text_view; + _tmp16_ = x; + _tmp17_ = y; + gtk_text_view_get_iter_at_location (_tmp15_, &_tmp18_, _tmp16_, _tmp17_); + iter = _tmp18_; + _tmp19_ = gtk_text_iter_get_line (&iter); + line_number = _tmp19_; + _tmp20_ = self->priv->_result_list; + _tmp21_ = line_number; + _tmp22_ = gee_abstract_list_get ((GeeAbstractList*) _tmp20_, _tmp21_); + _tmp23_ = (ResultLine*) _tmp22_; + g_signal_emit_by_name (self, "insert-variable", _tmp23_); + _g_object_unref0 (_tmp23_); + _tmp24_ = self->priv->text_view; + _tmp25_ = gtk_text_view_get_window (_tmp24_, GTK_TEXT_WINDOW_TEXT); + _tmp26_ = self->priv->left_ptr; + gdk_window_set_cursor (_tmp25_, _tmp26_); + result = FALSE; + return result; +} + + +static gboolean ___lambda22__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { + gboolean result; + result = __lambda22_ ((ResultView*) self, event); + return result; +} + + +static gboolean __lambda23_ (ResultView* self, GdkEventMotion* evt) { + gboolean result = FALSE; + GtkTextIter iter = {0}; + gint x = 0; + gint y = 0; + GtkTextView* _tmp0_ = NULL; + GdkEventMotion* _tmp1_ = NULL; + gdouble _tmp2_ = 0.0; + GdkEventMotion* _tmp3_ = NULL; + gdouble _tmp4_ = 0.0; + gint _tmp5_ = 0; + gint _tmp6_ = 0; + GtkTextView* _tmp7_ = NULL; + gint _tmp8_ = 0; + gint _tmp9_ = 0; + GtkTextIter _tmp10_ = {0}; + gboolean hovering = FALSE; + GSList* _tmp11_ = NULL; + gboolean _tmp12_ = FALSE; + gboolean _tmp13_ = FALSE; + g_return_val_if_fail (evt != NULL, FALSE); + _tmp0_ = self->priv->text_view; + _tmp1_ = evt; + _tmp2_ = _tmp1_->x; + _tmp3_ = evt; + _tmp4_ = _tmp3_->y; + gtk_text_view_window_to_buffer_coords (_tmp0_, GTK_TEXT_WINDOW_TEXT, (gint) _tmp2_, (gint) _tmp4_, &_tmp5_, &_tmp6_); + x = _tmp5_; + y = _tmp6_; + _tmp7_ = self->priv->text_view; + _tmp8_ = x; + _tmp9_ = y; + gtk_text_view_get_iter_at_location (_tmp7_, &_tmp10_, _tmp8_, _tmp9_); + iter = _tmp10_; + hovering = FALSE; + _tmp11_ = gtk_text_iter_get_tags (&iter); + { + GSList* tag_collection = NULL; + GSList* tag_it = NULL; + tag_collection = _tmp11_; + for (tag_it = tag_collection; tag_it != NULL; tag_it = tag_it->next) { + GtkTextTag* tag = NULL; + tag = (GtkTextTag*) tag_it->data; + { + hovering = TRUE; + } + } + _g_slist_free0 (tag_collection); + } + _tmp12_ = hovering; + _tmp13_ = self->priv->hovering_over_result; + if (_tmp12_ != _tmp13_) { + gboolean _tmp14_ = FALSE; + gboolean _tmp15_ = FALSE; + _tmp14_ = hovering; + self->priv->hovering_over_result = _tmp14_; + _tmp15_ = self->priv->hovering_over_result; + if (_tmp15_) { + GtkTextView* _tmp16_ = NULL; + GdkWindow* _tmp17_ = NULL; + GdkCursor* _tmp18_ = NULL; + _tmp16_ = self->priv->text_view; + _tmp17_ = gtk_text_view_get_window (_tmp16_, GTK_TEXT_WINDOW_TEXT); + _tmp18_ = self->priv->hand; + gdk_window_set_cursor (_tmp17_, _tmp18_); + } else { + GtkTextView* _tmp19_ = NULL; + GdkWindow* _tmp20_ = NULL; + GdkCursor* _tmp21_ = NULL; + _tmp19_ = self->priv->text_view; + _tmp20_ = gtk_text_view_get_window (_tmp19_, GTK_TEXT_WINDOW_TEXT); + _tmp21_ = self->priv->left_ptr; + gdk_window_set_cursor (_tmp20_, _tmp21_); + } + } + result = FALSE; + return result; +} + + +static gboolean ___lambda23__gtk_widget_motion_notify_event (GtkWidget* _sender, GdkEventMotion* event, gpointer self) { + gboolean result; + result = __lambda23_ ((ResultView*) self, event); + return result; +} + + +static void _vala_PangoFontDescription_free (PangoFontDescription* self) { + g_boxed_free (pango_font_description_get_type (), self); +} + + +ResultView* result_view_construct (GType object_type) { + ResultView * self = NULL; + GeeArrayList* _tmp0_ = NULL; + GeeArrayList* _tmp1_ = NULL; + GtkSpinner* _tmp2_ = NULL; + GtkSpinner* _tmp3_ = NULL; + GtkAlignment* _tmp4_ = NULL; + GtkBin* _tmp5_ = NULL; + GtkSpinner* _tmp6_ = NULL; + GtkBin* _tmp7_ = NULL; + GtkBin* _tmp8_ = NULL; + GtkSpinner* _tmp9_ = NULL; + GtkTextView* _tmp10_ = NULL; + GtkTextView* _tmp11_ = NULL; + GtkTextView* _tmp12_ = NULL; + GtkTextView* _tmp13_ = NULL; + GtkTextView* _tmp14_ = NULL; + GtkTextView* _tmp15_ = NULL; + GtkTextView* _tmp16_ = NULL; + GtkTextView* _tmp17_ = NULL; + GtkTextBuffer* _tmp18_ = NULL; + GtkTextBuffer* _tmp19_ = NULL; + GtkTextTag* _tmp20_ = NULL; + GtkTextTag* _tmp21_ = NULL; + GtkTextTag* _tmp22_ = NULL; + PangoFontDescription* font_desc = NULL; + GtkTextView* _tmp23_ = NULL; + GtkStyleContext* _tmp24_ = NULL; + PangoFontDescription* _tmp25_ = NULL; + PangoFontDescription* _tmp26_ = NULL; + GtkTextView* _tmp27_ = NULL; + GdkRGBA color = {0}; + GtkTextView* _tmp28_ = NULL; + GdkRGBA _tmp29_ = {0}; + GtkTextView* _tmp30_ = NULL; + GtkTextView* _tmp31_ = NULL; + GtkTextView* _tmp32_ = NULL; + GtkTextView* _tmp33_ = NULL; + GtkAlignment* alignment = NULL; + GtkAlignment* _tmp34_ = NULL; + GtkTextView* _tmp35_ = NULL; + GdkRGBA _tmp36_ = {0}; + GtkBin* _tmp37_ = NULL; + self = (ResultView*) g_object_new (object_type, NULL); + _tmp0_ = gee_array_list_new (TYPE_RESULT_LINE, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL); + _tmp1_ = _tmp0_; + result_view_set_result_list (self, _tmp1_); + _g_object_unref0 (_tmp1_); + _tmp2_ = (GtkSpinner*) gtk_spinner_new (); + g_object_ref_sink (_tmp2_); + _g_object_unref0 (self->priv->spinner); + self->priv->spinner = _tmp2_; + _tmp3_ = self->priv->spinner; + gtk_spinner_start (_tmp3_); + _tmp4_ = (GtkAlignment*) gtk_alignment_new (0.9f, (gfloat) 0, (gfloat) 0, (gfloat) 0); + g_object_ref_sink (_tmp4_); + _g_object_unref0 (self->priv->spinner_box); + self->priv->spinner_box = (GtkBin*) _tmp4_; + _tmp5_ = self->priv->spinner_box; + _tmp6_ = self->priv->spinner; + gtk_container_add ((GtkContainer*) _tmp5_, (GtkWidget*) _tmp6_); + _tmp7_ = self->priv->spinner_box; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp7_, TRUE); + _tmp8_ = self->priv->spinner_box; + gtk_widget_set_size_request ((GtkWidget*) _tmp8_, 20, -1); + _tmp9_ = self->priv->spinner; + gtk_widget_set_size_request ((GtkWidget*) _tmp9_, 20, 20); + _tmp10_ = (GtkTextView*) gtk_text_view_new (); + g_object_ref_sink (_tmp10_); + _g_object_unref0 (self->priv->text_view); + self->priv->text_view = _tmp10_; + _tmp11_ = self->priv->text_view; + gtk_widget_set_size_request ((GtkWidget*) _tmp11_, RESULT_VIEW_START_WIDTH, -1); + _tmp12_ = self->priv->text_view; + gtk_text_view_set_editable (_tmp12_, FALSE); + _tmp13_ = self->priv->text_view; + gtk_text_view_set_cursor_visible (_tmp13_, FALSE); + _tmp14_ = self->priv->text_view; + gtk_text_view_set_left_margin (_tmp14_, NASC_left_margin); + _tmp15_ = self->priv->text_view; + gtk_text_view_set_pixels_below_lines (_tmp15_, NASC_vertical_padding); + _tmp16_ = self->priv->text_view; + gtk_widget_set_can_focus ((GtkWidget*) _tmp16_, FALSE); + _tmp17_ = self->priv->text_view; + _tmp18_ = gtk_text_view_get_buffer (_tmp17_); + _tmp19_ = _tmp18_; + _tmp20_ = gtk_text_buffer_create_tag (_tmp19_, "bold", NULL); + _tmp21_ = _g_object_ref0 (_tmp20_); + _g_object_unref0 (self->priv->bold_tag); + self->priv->bold_tag = _tmp21_; + _tmp22_ = self->priv->bold_tag; + g_object_set (_tmp22_, "weight", (gint) PANGO_WEIGHT_BOLD, NULL); + _tmp23_ = self->priv->text_view; + _tmp24_ = gtk_widget_get_style_context ((GtkWidget*) _tmp23_); + _tmp25_ = gtk_style_context_get_font (_tmp24_, GTK_STATE_FLAG_NORMAL); + _tmp26_ = __vala_PangoFontDescription_copy0 (_tmp25_); + font_desc = _tmp26_; + pango_font_description_set_size (font_desc, 12 * PANGO_SCALE); + _tmp27_ = self->priv->text_view; + gtk_widget_override_font ((GtkWidget*) _tmp27_, font_desc); + memset (&color, 0, sizeof (GdkRGBA)); + color.red = (gdouble) 230; + color.green = (gdouble) 230; + color.blue = (gdouble) 230; + color.alpha = (gdouble) 0; + _tmp28_ = self->priv->text_view; + _tmp29_ = color; + gtk_widget_override_background_color ((GtkWidget*) _tmp28_, GTK_STATE_FLAG_NORMAL, &_tmp29_); + _tmp30_ = self->priv->text_view; + gtk_widget_set_events ((GtkWidget*) _tmp30_, (gint) GDK_BUTTON_PRESS_MASK); + _tmp31_ = self->priv->text_view; + g_signal_connect_object ((GtkWidget*) _tmp31_, "button-press-event", (GCallback) ___lambda22__gtk_widget_button_press_event, self, 0); + _tmp32_ = self->priv->text_view; + gtk_widget_set_events ((GtkWidget*) _tmp32_, (gint) GDK_POINTER_MOTION_MASK); + _tmp33_ = self->priv->text_view; + g_signal_connect_object ((GtkWidget*) _tmp33_, "motion-notify-event", (GCallback) ___lambda23__gtk_widget_motion_notify_event, self, 0); + _tmp34_ = (GtkAlignment*) gtk_alignment_new ((gfloat) 0, (gfloat) 0, (gfloat) 1, (gfloat) 1); + g_object_ref_sink (_tmp34_); + alignment = _tmp34_; + g_object_set (alignment, "top-padding", (guint) NASC_top_padding, NULL); + _tmp35_ = self->priv->text_view; + gtk_container_add ((GtkContainer*) alignment, (GtkWidget*) _tmp35_); + _tmp36_ = color; + gtk_widget_override_background_color ((GtkWidget*) self, GTK_STATE_FLAG_NORMAL, &_tmp36_); + gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) alignment, TRUE, TRUE, (guint) 0); + _tmp37_ = self->priv->spinner_box; + gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp37_, TRUE, TRUE, (guint) 0); + _g_object_unref0 (alignment); + __vala_PangoFontDescription_free0 (font_desc); + return self; +} + + +ResultView* result_view_new (void) { + return result_view_construct (TYPE_RESULT_VIEW); +} + + +void result_view_set_width (ResultView* self, gint width) { + gint _tmp0_ = 0; + gint _tmp14_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = width; + self->priv->actual_width = _tmp0_ - 5; + { + GeeArrayList* _rl_list = NULL; + GeeArrayList* _tmp1_ = NULL; + GeeArrayList* _tmp2_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + gint _rl_index = 0; + _tmp1_ = self->priv->_result_list; + _tmp2_ = _g_object_ref0 (_tmp1_); + _rl_list = _tmp2_; + _tmp3_ = _rl_list; + _tmp4_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp3_); + _tmp5_ = _tmp4_; + _rl_size = _tmp5_; + _rl_index = -1; + while (TRUE) { + gint _tmp6_ = 0; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp9_ = NULL; + gint _tmp10_ = 0; + gpointer _tmp11_ = NULL; + ResultLine* _tmp12_ = NULL; + gint _tmp13_ = 0; + _tmp6_ = _rl_index; + _rl_index = _tmp6_ + 1; + _tmp7_ = _rl_index; + _tmp8_ = _rl_size; + if (!(_tmp7_ < _tmp8_)) { + break; + } + _tmp9_ = _rl_list; + _tmp10_ = _rl_index; + _tmp11_ = gee_abstract_list_get ((GeeAbstractList*) _tmp9_, _tmp10_); + rl = (ResultLine*) _tmp11_; + _tmp12_ = rl; + _tmp13_ = self->priv->actual_width; + result_line_refresh_width (_tmp12_, _tmp13_); + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp14_ = self->priv->actual_line; + result_view_update (self, _tmp14_, TRUE); +} + + +static gboolean result_view_real_draw (GtkWidget* base, cairo_t* cr) { + ResultView * self; + gboolean result = FALSE; + gboolean res = FALSE; + cairo_t* _tmp0_ = NULL; + gboolean _tmp1_ = FALSE; + GtkTextView* _tmp2_ = NULL; + GdkWindow* _tmp3_ = NULL; + GdkCursor* _tmp4_ = NULL; + self = (ResultView*) base; + g_return_val_if_fail (cr != NULL, FALSE); + _tmp0_ = cr; + _tmp1_ = GTK_WIDGET_CLASS (result_view_parent_class)->draw ((GtkWidget*) G_TYPE_CHECK_INSTANCE_CAST (self, gtk_box_get_type (), GtkBox), _tmp0_); + res = _tmp1_; + _tmp2_ = self->priv->text_view; + _tmp3_ = gtk_text_view_get_window (_tmp2_, GTK_TEXT_WINDOW_TEXT); + _tmp4_ = self->priv->left_ptr; + gdk_window_set_cursor (_tmp3_, _tmp4_); + result = res; + return result; +} + + +void result_view_show_spinner (ResultView* self, gint line) { + GtkBin* _tmp0_ = NULL; + GtkSpinner* _tmp1_ = NULL; + gint _tmp2_ = 0; + GtkBin* _tmp3_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->spinner_box; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp0_, FALSE); + _tmp1_ = self->priv->spinner; + _tmp2_ = line; + gtk_widget_set_margin_top ((GtkWidget*) _tmp1_, NASC_top_padding + (_tmp2_ * 27)); + _tmp3_ = self->priv->spinner_box; + gtk_widget_show_all ((GtkWidget*) _tmp3_); +} + + +void result_view_hide_spinner (ResultView* self) { + GtkBin* _tmp0_ = NULL; + GtkBin* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->spinner_box; + gtk_widget_hide ((GtkWidget*) _tmp0_); + _tmp1_ = self->priv->spinner_box; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp1_, TRUE); +} + + +void result_view_set_line (ResultView* self, gint index, const gchar* _result_) { + gchar* line_res = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gint _tmp2_ = 0; + GeeArrayList* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + g_return_if_fail (self != NULL); + g_return_if_fail (_result_ != NULL); + _tmp0_ = _result_; + _tmp1_ = g_strdup (_tmp0_); + line_res = _tmp1_; + _tmp2_ = index; + _tmp3_ = self->priv->_result_list; + _tmp4_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp3_); + _tmp5_ = _tmp4_; + if (_tmp2_ < _tmp5_) { + ResultLine* res = NULL; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gpointer _tmp8_ = NULL; + gboolean update = FALSE; + ResultLine* _tmp9_ = NULL; + const gchar* _tmp10_ = NULL; + gboolean _tmp11_ = FALSE; + gboolean _tmp12_ = FALSE; + _tmp6_ = self->priv->_result_list; + _tmp7_ = index; + _tmp8_ = gee_abstract_list_get ((GeeAbstractList*) _tmp6_, _tmp7_); + res = (ResultLine*) _tmp8_; + _tmp9_ = res; + _tmp10_ = line_res; + _tmp11_ = result_line_set_value_with_notification (_tmp9_, _tmp10_); + update = _tmp11_; + _tmp12_ = update; + if (_tmp12_) { + self->priv->update_needed = TRUE; + } + _g_object_unref0 (res); + } + _g_free0 (line_res); +} + + +void result_view_add_line (ResultView* self, gint line, gint count) { + g_return_if_fail (self != NULL); + { + gint i = 0; + i = 0; + { + gboolean _tmp0_ = FALSE; + _tmp0_ = TRUE; + while (TRUE) { + gint _tmp2_ = 0; + gint _tmp3_ = 0; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + if (!_tmp0_) { + gint _tmp1_ = 0; + _tmp1_ = i; + i = _tmp1_ + 1; + } + _tmp0_ = FALSE; + _tmp2_ = i; + _tmp3_ = count; + if (!(_tmp2_ < _tmp3_)) { + break; + } + _tmp4_ = i; + _tmp5_ = line; + _tmp6_ = self->priv->_result_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + if ((_tmp4_ + _tmp5_) > _tmp8_) { + gchar* variable_name = NULL; + GeeArrayList* _tmp9_ = NULL; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + gchar* _tmp12_ = NULL; + gchar* _tmp13_ = NULL; + gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + GeeArrayList* _tmp16_ = NULL; + GeeArrayList* _tmp17_ = NULL; + gint _tmp18_ = 0; + gint _tmp19_ = 0; + const gchar* _tmp20_ = NULL; + gint _tmp21_ = 0; + ResultLine* _tmp22_ = NULL; + ResultLine* _tmp23_ = NULL; + _tmp9_ = self->priv->_result_list; + _tmp10_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp9_); + _tmp11_ = _tmp10_; + _tmp12_ = g_strdup_printf ("%d", _tmp11_); + _tmp13_ = _tmp12_; + _tmp14_ = g_strconcat (NASC_SETTINGS_variable_names, _tmp13_, NULL); + _tmp15_ = _tmp14_; + _g_free0 (_tmp13_); + variable_name = _tmp15_; + _tmp16_ = self->priv->_result_list; + _tmp17_ = self->priv->_result_list; + _tmp18_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp17_); + _tmp19_ = _tmp18_; + _tmp20_ = variable_name; + _tmp21_ = self->priv->actual_width; + _tmp22_ = result_line_new (_tmp19_, _tmp20_, "", _tmp21_); + _tmp23_ = _tmp22_; + gee_abstract_collection_add ((GeeAbstractCollection*) _tmp16_, _tmp23_); + _g_object_unref0 (_tmp23_); + _g_free0 (variable_name); + } else { + gchar* variable_name = NULL; + gint _tmp24_ = 0; + gint _tmp25_ = 0; + gchar* _tmp26_ = NULL; + gchar* _tmp27_ = NULL; + gchar* _tmp28_ = NULL; + gchar* _tmp29_ = NULL; + GeeArrayList* _tmp30_ = NULL; + gint _tmp31_ = 0; + gint _tmp32_ = 0; + gint _tmp33_ = 0; + gint _tmp34_ = 0; + const gchar* _tmp35_ = NULL; + gint _tmp36_ = 0; + ResultLine* _tmp37_ = NULL; + ResultLine* _tmp38_ = NULL; + _tmp24_ = i; + _tmp25_ = line; + _tmp26_ = g_strdup_printf ("%d", _tmp24_ + _tmp25_); + _tmp27_ = _tmp26_; + _tmp28_ = g_strconcat (NASC_SETTINGS_variable_names, _tmp27_, NULL); + _tmp29_ = _tmp28_; + _g_free0 (_tmp27_); + variable_name = _tmp29_; + _tmp30_ = self->priv->_result_list; + _tmp31_ = i; + _tmp32_ = line; + _tmp33_ = i; + _tmp34_ = line; + _tmp35_ = variable_name; + _tmp36_ = self->priv->actual_width; + _tmp37_ = result_line_new (_tmp33_ + _tmp34_, _tmp35_, "", _tmp36_); + _tmp38_ = _tmp37_; + gee_abstract_list_insert ((GeeAbstractList*) _tmp30_, _tmp31_ + _tmp32_, _tmp38_); + _g_object_unref0 (_tmp38_); + _g_free0 (variable_name); + } + } + } + } + { + gint i = 0; + GeeArrayList* _tmp39_ = NULL; + gint _tmp40_ = 0; + gint _tmp41_ = 0; + _tmp39_ = self->priv->_result_list; + _tmp40_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp39_); + _tmp41_ = _tmp40_; + i = _tmp41_ - 1; + { + gboolean _tmp42_ = FALSE; + _tmp42_ = TRUE; + while (TRUE) { + gint _tmp44_ = 0; + gint _tmp45_ = 0; + gint _tmp46_ = 0; + ResultLine* tmp = NULL; + GeeArrayList* _tmp47_ = NULL; + gint _tmp48_ = 0; + gpointer _tmp49_ = NULL; + ResultLine* _tmp50_ = NULL; + gint _tmp51_ = 0; + ResultLine* _tmp52_ = NULL; + gint _tmp53_ = 0; + gchar* _tmp54_ = NULL; + gchar* _tmp55_ = NULL; + gchar* _tmp56_ = NULL; + gchar* _tmp57_ = NULL; + if (!_tmp42_) { + gint _tmp43_ = 0; + _tmp43_ = i; + i = _tmp43_ - 1; + } + _tmp42_ = FALSE; + _tmp44_ = i; + _tmp45_ = line; + _tmp46_ = count; + if (!(_tmp44_ >= (_tmp45_ + _tmp46_))) { + break; + } + _tmp47_ = self->priv->_result_list; + _tmp48_ = i; + _tmp49_ = gee_abstract_list_get ((GeeAbstractList*) _tmp47_, _tmp48_); + tmp = (ResultLine*) _tmp49_; + _tmp50_ = tmp; + _tmp51_ = i; + result_line_set_line (_tmp50_, _tmp51_); + _tmp52_ = tmp; + _tmp53_ = i; + _tmp54_ = g_strdup_printf ("%d", _tmp53_); + _tmp55_ = _tmp54_; + _tmp56_ = g_strconcat (NASC_SETTINGS_variable_names, _tmp55_, NULL); + _tmp57_ = _tmp56_; + result_line_set_variable_name (_tmp52_, _tmp57_); + _g_free0 (_tmp57_); + _g_free0 (_tmp55_); + _g_object_unref0 (tmp); + } + } + } +} + + +void result_view_remove_line (ResultView* self, gint line, gint count) { + gboolean _tmp0_ = FALSE; + gint _tmp1_ = 0; + g_return_if_fail (self != NULL); + _tmp1_ = line; + if (_tmp1_ <= 0) { + gint _tmp2_ = 0; + GeeArrayList* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; + _tmp2_ = count; + _tmp3_ = self->priv->_result_list; + _tmp4_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp3_); + _tmp5_ = _tmp4_; + _tmp0_ = _tmp2_ == _tmp5_; + } else { + _tmp0_ = FALSE; + } + if (_tmp0_) { + GeeArrayList* _tmp6_ = NULL; + _tmp6_ = self->priv->_result_list; + gee_abstract_collection_clear ((GeeAbstractCollection*) _tmp6_); + return; + } + { + gint i = 0; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + _tmp7_ = line; + _tmp8_ = count; + i = _tmp7_ + _tmp8_; + { + gboolean _tmp9_ = FALSE; + _tmp9_ = TRUE; + while (TRUE) { + gint _tmp11_ = 0; + gint _tmp12_ = 0; + GeeArrayList* _tmp13_ = NULL; + gint _tmp14_ = 0; + gint _tmp15_ = 0; + gint _tmp16_ = 0; + if (!_tmp9_) { + gint _tmp10_ = 0; + _tmp10_ = i; + i = _tmp10_ - 1; + } + _tmp9_ = FALSE; + _tmp11_ = i; + _tmp12_ = line; + if (!(_tmp11_ > _tmp12_)) { + break; + } + _tmp13_ = self->priv->_result_list; + _tmp14_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp13_); + _tmp15_ = _tmp14_; + _tmp16_ = i; + if (_tmp15_ > _tmp16_) { + GeeArrayList* _tmp17_ = NULL; + gint _tmp18_ = 0; + gpointer _tmp19_ = NULL; + ResultLine* _tmp20_ = NULL; + _tmp17_ = self->priv->_result_list; + _tmp18_ = i; + _tmp19_ = gee_abstract_list_remove_at ((GeeAbstractList*) _tmp17_, _tmp18_); + _tmp20_ = (ResultLine*) _tmp19_; + _g_object_unref0 (_tmp20_); + self->priv->update_needed = TRUE; + } + } + } + } + { + gint i = 0; + GeeArrayList* _tmp21_ = NULL; + gint _tmp22_ = 0; + gint _tmp23_ = 0; + _tmp21_ = self->priv->_result_list; + _tmp22_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp21_); + _tmp23_ = _tmp22_; + i = _tmp23_ - 1; + { + gboolean _tmp24_ = FALSE; + _tmp24_ = TRUE; + while (TRUE) { + gint _tmp26_ = 0; + gint _tmp27_ = 0; + gint _tmp28_ = 0; + ResultLine* tmp = NULL; + GeeArrayList* _tmp29_ = NULL; + gint _tmp30_ = 0; + gpointer _tmp31_ = NULL; + ResultLine* _tmp32_ = NULL; + gint _tmp33_ = 0; + ResultLine* _tmp34_ = NULL; + gint _tmp35_ = 0; + gchar* _tmp36_ = NULL; + gchar* _tmp37_ = NULL; + gchar* _tmp38_ = NULL; + gchar* _tmp39_ = NULL; + if (!_tmp24_) { + gint _tmp25_ = 0; + _tmp25_ = i; + i = _tmp25_ - 1; + } + _tmp24_ = FALSE; + _tmp26_ = i; + _tmp27_ = line; + if (!(_tmp26_ >= _tmp27_)) { + break; + } + _tmp28_ = i; + if (_tmp28_ == -1) { + break; + } + _tmp29_ = self->priv->_result_list; + _tmp30_ = i; + _tmp31_ = gee_abstract_list_get ((GeeAbstractList*) _tmp29_, _tmp30_); + tmp = (ResultLine*) _tmp31_; + _tmp32_ = tmp; + _tmp33_ = i; + result_line_set_line (_tmp32_, _tmp33_); + _tmp34_ = tmp; + _tmp35_ = i; + _tmp36_ = g_strdup_printf ("%d", _tmp35_); + _tmp37_ = _tmp36_; + _tmp38_ = g_strconcat (NASC_SETTINGS_variable_names, _tmp37_, NULL); + _tmp39_ = _tmp38_; + result_line_set_variable_name (_tmp34_, _tmp39_); + _g_free0 (_tmp39_); + _g_free0 (_tmp37_); + _g_object_unref0 (tmp); + } + } + } +} + + +void result_view_clear (ResultView* self) { + GeeArrayList* _tmp0_ = NULL; + GtkTextView* _tmp1_ = NULL; + GtkTextBuffer* _tmp2_ = NULL; + GtkTextBuffer* _tmp3_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->_result_list; + gee_abstract_collection_clear ((GeeAbstractCollection*) _tmp0_); + _tmp1_ = self->priv->text_view; + _tmp2_ = gtk_text_view_get_buffer (_tmp1_); + _tmp3_ = _tmp2_; + g_object_set (_tmp3_, "text", "", NULL); +} + + +void result_view_update (ResultView* self, gint line, gboolean force) { + gint _tmp0_ = 0; + gboolean _tmp1_ = FALSE; + gboolean _tmp2_ = FALSE; + gboolean _tmp3_ = FALSE; + GtkTextIter iter = {0}; + GtkTextView* _tmp8_ = NULL; + GtkTextBuffer* _tmp9_ = NULL; + GtkTextBuffer* _tmp10_ = NULL; + GtkTextView* _tmp11_ = NULL; + GtkTextBuffer* _tmp12_ = NULL; + GtkTextBuffer* _tmp13_ = NULL; + GtkTextIter _tmp14_ = {0}; + g_return_if_fail (self != NULL); + _tmp0_ = line; + self->priv->actual_line = _tmp0_; + _tmp3_ = self->priv->update_needed; + if (!_tmp3_) { + gboolean _tmp4_ = FALSE; + _tmp4_ = force; + _tmp2_ = !_tmp4_; + } else { + _tmp2_ = FALSE; + } + if (_tmp2_) { + GeeArrayList* _tmp5_ = NULL; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + _tmp5_ = self->priv->_result_list; + _tmp6_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp5_); + _tmp7_ = _tmp6_; + _tmp1_ = _tmp7_ != 0; + } else { + _tmp1_ = FALSE; + } + if (_tmp1_) { + return; + } + _tmp8_ = self->priv->text_view; + _tmp9_ = gtk_text_view_get_buffer (_tmp8_); + _tmp10_ = _tmp9_; + g_object_set (_tmp10_, "text", "", NULL); + _tmp11_ = self->priv->text_view; + _tmp12_ = gtk_text_view_get_buffer (_tmp11_); + _tmp13_ = _tmp12_; + gtk_text_buffer_get_iter_at_offset (_tmp13_, &_tmp14_, 0); + iter = _tmp14_; + { + gint i = 0; + i = 0; + { + gboolean _tmp15_ = FALSE; + _tmp15_ = TRUE; + while (TRUE) { + gint _tmp17_ = 0; + GeeArrayList* _tmp18_ = NULL; + gint _tmp19_ = 0; + gint _tmp20_ = 0; + ResultLine* res = NULL; + GeeArrayList* _tmp21_ = NULL; + gint _tmp22_ = 0; + gpointer _tmp23_ = NULL; + GtkTextTag* tag = NULL; + GtkTextView* _tmp24_ = NULL; + GtkTextBuffer* _tmp25_ = NULL; + GtkTextBuffer* _tmp26_ = NULL; + GtkTextTagTable* _tmp27_ = NULL; + GtkTextTagTable* _tmp28_ = NULL; + gint _tmp29_ = 0; + gchar* _tmp30_ = NULL; + gchar* _tmp31_ = NULL; + gchar* _tmp32_ = NULL; + gchar* _tmp33_ = NULL; + GtkTextTag* _tmp34_ = NULL; + GtkTextTag* _tmp35_ = NULL; + GtkTextTag* _tmp36_ = NULL; + GtkTextTag* _tmp37_ = NULL; + gint _tmp48_ = 0; + gint _tmp49_ = 0; + gint _tmp65_ = 0; + GeeArrayList* _tmp66_ = NULL; + gint _tmp67_ = 0; + gint _tmp68_ = 0; + if (!_tmp15_) { + gint _tmp16_ = 0; + _tmp16_ = i; + i = _tmp16_ + 1; + } + _tmp15_ = FALSE; + _tmp17_ = i; + _tmp18_ = self->priv->_result_list; + _tmp19_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp18_); + _tmp20_ = _tmp19_; + if (!(_tmp17_ < _tmp20_)) { + break; + } + _tmp21_ = self->priv->_result_list; + _tmp22_ = i; + _tmp23_ = gee_abstract_list_get ((GeeAbstractList*) _tmp21_, _tmp22_); + res = (ResultLine*) _tmp23_; + _tmp24_ = self->priv->text_view; + _tmp25_ = gtk_text_view_get_buffer (_tmp24_); + _tmp26_ = _tmp25_; + _tmp27_ = gtk_text_buffer_get_tag_table (_tmp26_); + _tmp28_ = _tmp27_; + _tmp29_ = i; + _tmp30_ = g_strdup_printf ("%d", _tmp29_); + _tmp31_ = _tmp30_; + _tmp32_ = g_strconcat (NASC_SETTINGS_variable_names, _tmp31_, NULL); + _tmp33_ = _tmp32_; + _tmp34_ = gtk_text_tag_table_lookup (_tmp28_, _tmp33_); + _tmp35_ = _g_object_ref0 (_tmp34_); + _tmp36_ = _tmp35_; + _g_free0 (_tmp33_); + _g_free0 (_tmp31_); + tag = _tmp36_; + _tmp37_ = tag; + if (_tmp37_ == NULL) { + GtkTextView* _tmp38_ = NULL; + GtkTextBuffer* _tmp39_ = NULL; + GtkTextBuffer* _tmp40_ = NULL; + gint _tmp41_ = 0; + gchar* _tmp42_ = NULL; + gchar* _tmp43_ = NULL; + gchar* _tmp44_ = NULL; + gchar* _tmp45_ = NULL; + GtkTextTag* _tmp46_ = NULL; + GtkTextTag* _tmp47_ = NULL; + _tmp38_ = self->priv->text_view; + _tmp39_ = gtk_text_view_get_buffer (_tmp38_); + _tmp40_ = _tmp39_; + _tmp41_ = i; + _tmp42_ = g_strdup_printf ("%d", _tmp41_); + _tmp43_ = _tmp42_; + _tmp44_ = g_strconcat (NASC_SETTINGS_variable_names, _tmp43_, NULL); + _tmp45_ = _tmp44_; + _tmp46_ = gtk_text_buffer_create_tag (_tmp40_, _tmp45_, NULL, NULL); + _tmp47_ = _g_object_ref0 (_tmp46_); + _g_object_unref0 (tag); + tag = _tmp47_; + _g_free0 (_tmp45_); + _g_free0 (_tmp43_); + } + _tmp48_ = i; + _tmp49_ = line; + if (_tmp48_ == _tmp49_) { + GtkTextView* _tmp50_ = NULL; + GtkTextBuffer* _tmp51_ = NULL; + GtkTextBuffer* _tmp52_ = NULL; + ResultLine* _tmp53_ = NULL; + const gchar* _tmp54_ = NULL; + const gchar* _tmp55_ = NULL; + GtkTextTag* _tmp56_ = NULL; + GtkTextTag* _tmp57_ = NULL; + _tmp50_ = self->priv->text_view; + _tmp51_ = gtk_text_view_get_buffer (_tmp50_); + _tmp52_ = _tmp51_; + _tmp53_ = res; + _tmp54_ = result_line_get_value (_tmp53_); + _tmp55_ = _tmp54_; + _tmp56_ = tag; + _tmp57_ = self->priv->bold_tag; + gtk_text_buffer_insert_with_tags (_tmp52_, &iter, _tmp55_, -1, _tmp56_, _tmp57_, NULL, NULL); + } else { + GtkTextView* _tmp58_ = NULL; + GtkTextBuffer* _tmp59_ = NULL; + GtkTextBuffer* _tmp60_ = NULL; + ResultLine* _tmp61_ = NULL; + const gchar* _tmp62_ = NULL; + const gchar* _tmp63_ = NULL; + GtkTextTag* _tmp64_ = NULL; + _tmp58_ = self->priv->text_view; + _tmp59_ = gtk_text_view_get_buffer (_tmp58_); + _tmp60_ = _tmp59_; + _tmp61_ = res; + _tmp62_ = result_line_get_value (_tmp61_); + _tmp63_ = _tmp62_; + _tmp64_ = tag; + gtk_text_buffer_insert_with_tags (_tmp60_, &iter, _tmp63_, -1, _tmp64_, NULL, NULL); + } + _tmp65_ = i; + _tmp66_ = self->priv->_result_list; + _tmp67_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp66_); + _tmp68_ = _tmp67_; + if (_tmp65_ != (_tmp68_ - 1)) { + GtkTextView* _tmp69_ = NULL; + GtkTextBuffer* _tmp70_ = NULL; + GtkTextBuffer* _tmp71_ = NULL; + GtkTextIter _tmp72_ = {0}; + GtkTextView* _tmp73_ = NULL; + GtkTextBuffer* _tmp74_ = NULL; + GtkTextBuffer* _tmp75_ = NULL; + _tmp69_ = self->priv->text_view; + _tmp70_ = gtk_text_view_get_buffer (_tmp69_); + _tmp71_ = _tmp70_; + gtk_text_buffer_get_end_iter (_tmp71_, &_tmp72_); + iter = _tmp72_; + _tmp73_ = self->priv->text_view; + _tmp74_ = gtk_text_view_get_buffer (_tmp73_); + _tmp75_ = _tmp74_; + gtk_text_buffer_insert (_tmp75_, &iter, "\n", 1); + } + _g_object_unref0 (tag); + _g_object_unref0 (res); + } + } + } + self->priv->update_needed = FALSE; +} + + +GeeArrayList* result_view_get_result_list (ResultView* self) { + GeeArrayList* result; + GeeArrayList* _tmp0_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + _tmp0_ = self->priv->_result_list; + result = _tmp0_; + return result; +} + + +static void result_view_set_result_list (ResultView* self, GeeArrayList* value) { + GeeArrayList* _tmp0_ = NULL; + GeeArrayList* _tmp1_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = value; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->priv->_result_list); + self->priv->_result_list = _tmp1_; + g_object_notify ((GObject *) self, "result-list"); +} + + +static void result_view_class_init (ResultViewClass * klass) { + result_view_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (ResultViewPrivate)); + ((GtkWidgetClass *) klass)->draw = result_view_real_draw; + G_OBJECT_CLASS (klass)->get_property = _vala_result_view_get_property; + G_OBJECT_CLASS (klass)->set_property = _vala_result_view_set_property; + G_OBJECT_CLASS (klass)->finalize = result_view_finalize; + g_object_class_install_property (G_OBJECT_CLASS (klass), RESULT_VIEW_RESULT_LIST, g_param_spec_object ("result-list", "result-list", "result-list", GEE_TYPE_ARRAY_LIST, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_signal_new ("insert_variable", TYPE_RESULT_VIEW, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, TYPE_RESULT_LINE); +} + + +static void result_view_instance_init (ResultView * self) { + GdkDisplay* _tmp0_ = NULL; + GdkCursor* _tmp1_ = NULL; + GdkDisplay* _tmp2_ = NULL; + GdkCursor* _tmp3_ = NULL; + self->priv = RESULT_VIEW_GET_PRIVATE (self); + _tmp0_ = gdk_display_get_default (); + _tmp1_ = gdk_cursor_new_for_display (_tmp0_, GDK_LEFT_PTR); + self->priv->left_ptr = _tmp1_; + _tmp2_ = gdk_display_get_default (); + _tmp3_ = gdk_cursor_new_for_display (_tmp2_, GDK_HAND2); + self->priv->hand = _tmp3_; + self->priv->hovering_over_result = FALSE; + self->priv->actual_width = RESULT_VIEW_START_WIDTH; +} + + +static void result_view_finalize (GObject* obj) { + ResultView * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_RESULT_VIEW, ResultView); + _g_object_unref0 (self->priv->text_view); + _g_object_unref0 (self->priv->left_ptr); + _g_object_unref0 (self->priv->hand); + _g_object_unref0 (self->priv->_result_list); + _g_object_unref0 (self->priv->bold_tag); + _g_object_unref0 (self->priv->spinner); + _g_object_unref0 (self->priv->spinner_box); + G_OBJECT_CLASS (result_view_parent_class)->finalize (obj); +} + + +GType result_view_get_type (void) { + static volatile gsize result_view_type_id__volatile = 0; + if (g_once_init_enter (&result_view_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (ResultViewClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) result_view_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ResultView), 0, (GInstanceInitFunc) result_view_instance_init, NULL }; + GType result_view_type_id; + result_view_type_id = g_type_register_static (gtk_box_get_type (), "ResultView", &g_define_type_info, 0); + g_once_init_leave (&result_view_type_id__volatile, result_view_type_id); + } + return result_view_type_id__volatile; +} + + +static void _vala_result_view_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { + ResultView * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_RESULT_VIEW, ResultView); + switch (property_id) { + case RESULT_VIEW_RESULT_LIST: + g_value_set_object (value, result_view_get_result_list (self)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static void _vala_result_view_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { + ResultView * self; + self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_RESULT_VIEW, ResultView); + switch (property_id) { + case RESULT_VIEW_RESULT_LIST: + result_view_set_result_list (self, g_value_get_object (value)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + + diff -Nru nasc-0.2/build/src/Tutorial.c nasc-0.3/build/src/Tutorial.c --- nasc-0.2/build/src/Tutorial.c 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/src/Tutorial.c 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,2326 @@ +/* Tutorial.c generated by valac 0.32.1, the Vala compiler + * generated from Tutorial.vala, do not modify */ + +/* + * Copyright (c) 2015 Peter Arnold + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_TUTORIAL_PAGE (tutorial_page_get_type ()) +#define TUTORIAL_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TUTORIAL_PAGE, TutorialPage)) +#define TUTORIAL_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TUTORIAL_PAGE, TutorialPageClass)) +#define IS_TUTORIAL_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TUTORIAL_PAGE)) +#define IS_TUTORIAL_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TUTORIAL_PAGE)) +#define TUTORIAL_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TUTORIAL_PAGE, TutorialPageClass)) + +typedef struct _TutorialPage TutorialPage; +typedef struct _TutorialPageClass TutorialPageClass; +typedef struct _TutorialPagePrivate TutorialPagePrivate; + +#define TYPE_TUTORIAL (tutorial_get_type ()) +#define TUTORIAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TUTORIAL, Tutorial)) +#define TUTORIAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TUTORIAL, TutorialClass)) +#define IS_TUTORIAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TUTORIAL)) +#define IS_TUTORIAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TUTORIAL)) +#define TUTORIAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TUTORIAL, TutorialClass)) + +typedef struct _Tutorial Tutorial; +typedef struct _TutorialClass TutorialClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +#define _g_free0(var) (var = (g_free (var), NULL)) +typedef struct _TutorialPrivate TutorialPrivate; + +#define TYPE_CONTROLLER (controller_get_type ()) +#define CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTROLLER, Controller)) +#define CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTROLLER, ControllerClass)) +#define IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTROLLER)) +#define IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTROLLER)) +#define CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTROLLER, ControllerClass)) + +typedef struct _Controller Controller; +typedef struct _ControllerClass ControllerClass; +typedef struct _Block18Data Block18Data; +#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL))) +typedef struct _Block19Data Block19Data; + +#define TYPE_INPUT_VIEW (input_view_get_type ()) +#define INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INPUT_VIEW, InputView)) +#define INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INPUT_VIEW, InputViewClass)) +#define IS_INPUT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INPUT_VIEW)) +#define IS_INPUT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INPUT_VIEW)) +#define INPUT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INPUT_VIEW, InputViewClass)) + +typedef struct _InputView InputView; +typedef struct _InputViewClass InputViewClass; +typedef struct _InputViewPrivate InputViewPrivate; + +#define TYPE_RESULT_LINE (result_line_get_type ()) +#define RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_LINE, ResultLine)) +#define RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_LINE, ResultLineClass)) +#define IS_RESULT_LINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_LINE)) +#define IS_RESULT_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_LINE)) +#define RESULT_LINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_LINE, ResultLineClass)) + +typedef struct _ResultLine ResultLine; +typedef struct _ResultLineClass ResultLineClass; + +#define TYPE_RESULT_VIEW (result_view_get_type ()) +#define RESULT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESULT_VIEW, ResultView)) +#define RESULT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESULT_VIEW, ResultViewClass)) +#define IS_RESULT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESULT_VIEW)) +#define IS_RESULT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESULT_VIEW)) +#define RESULT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESULT_VIEW, ResultViewClass)) + +typedef struct _ResultView ResultView; +typedef struct _ResultViewClass ResultViewClass; +#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL))) +#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) + +struct _TutorialPage { + GtkBox parent_instance; + TutorialPagePrivate * priv; +}; + +struct _TutorialPageClass { + GtkBoxClass parent_class; +}; + +struct _TutorialPagePrivate { + gint index; + Tutorial* stack; + GtkButton* next_button; +}; + +struct _Tutorial { + GtkStack parent_instance; + TutorialPrivate * priv; + Controller* controller; +}; + +struct _TutorialClass { + GtkStackClass parent_class; +}; + +struct _TutorialPrivate { + guint timer; + gint check_timer; + gint success_timer; +}; + +struct _Block18Data { + int _ref_count_; + Tutorial* self; + TutorialPage* page0; +}; + +struct _Block19Data { + int _ref_count_; + Tutorial* self; + TutorialPage* old_page; +}; + +struct _InputView { + GtkBox parent_instance; + InputViewPrivate * priv; + GtkSourceBuffer* buffer; + GtkSourceView* source_view; + GeeArrayList* operators; + gboolean skip_change; + gboolean scroll_needed; +}; + +struct _InputViewClass { + GtkBoxClass parent_class; +}; + + +static gpointer tutorial_page_parent_class = NULL; +static gpointer tutorial_parent_class = NULL; + +GType tutorial_page_get_type (void) G_GNUC_CONST; +GType tutorial_get_type (void) G_GNUC_CONST; +#define TUTORIAL_PAGE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TUTORIAL_PAGE, TutorialPagePrivate)) +enum { + TUTORIAL_PAGE_DUMMY_PROPERTY +}; +TutorialPage* tutorial_page_new (Tutorial* stack, const gchar* description, const gchar* content, gint index); +TutorialPage* tutorial_page_construct (GType object_type, Tutorial* stack, const gchar* description, const gchar* content, gint index); +static void tutorial_page_next (TutorialPage* self); +static void _tutorial_page_next_gtk_button_clicked (GtkButton* _sender, gpointer self); +static void __lambda82_ (TutorialPage* self); +static void ___lambda82__gtk_button_clicked (GtkButton* _sender, gpointer self); +void tutorial_new_page (Tutorial* self, gint index); +void tutorial_page_focus_button (TutorialPage* self); +void tutorial_page_success (TutorialPage* self); +static void tutorial_page_finalize (GObject* obj); +GType controller_get_type (void) G_GNUC_CONST; +#define TUTORIAL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TUTORIAL, TutorialPrivate)) +enum { + TUTORIAL_DUMMY_PROPERTY +}; +Tutorial* tutorial_new (Controller* controller); +Tutorial* tutorial_construct (GType object_type, Controller* controller); +static Block18Data* block18_data_ref (Block18Data* _data18_); +static void block18_data_unref (void * _userdata_); +static void ____lambda83_ (Tutorial* self); +static void _____lambda83__tutorial_page_close (TutorialPage* _sender, gpointer self); +static gboolean __lambda84_ (Block18Data* _data18_); +static gboolean ___lambda84__gsource_func (gpointer self); +static Block19Data* block19_data_ref (Block19Data* _data19_); +static void block19_data_unref (void * _userdata_); +GType input_view_get_type (void) G_GNUC_CONST; +InputView* controller_get_input (Controller* self); +static gboolean ___lambda59_ (Block19Data* _data19_); +GType result_line_get_type (void) G_GNUC_CONST; +GType result_view_get_type (void) G_GNUC_CONST; +ResultView* controller_get_results (Controller* self); +GeeArrayList* result_view_get_result_list (ResultView* self); +const gchar* result_line_get_value (ResultLine* self); +static gboolean ___lambda60_ (Tutorial* self); +void controller_set_content (Controller* self, const gchar* content); +static gboolean ____lambda60__gsource_func (gpointer self); +static gboolean ____lambda59__gsource_func (gpointer self); +static gboolean ___lambda61_ (Block19Data* _data19_); +static gboolean ___lambda62_ (Tutorial* self); +static gboolean ____lambda62__gsource_func (gpointer self); +static gboolean ____lambda61__gsource_func (gpointer self); +static gboolean ___lambda63_ (Block19Data* _data19_); +static gboolean ___lambda64_ (Tutorial* self); +static gboolean ____lambda64__gsource_func (gpointer self); +static gboolean ____lambda63__gsource_func (gpointer self); +static gboolean ___lambda65_ (Block19Data* _data19_); +static gboolean ___lambda66_ (Tutorial* self); +static gboolean ____lambda66__gsource_func (gpointer self); +static gboolean ____lambda65__gsource_func (gpointer self); +static gboolean ___lambda67_ (Block19Data* _data19_); +static gboolean ___lambda68_ (Tutorial* self); +static gboolean ____lambda68__gsource_func (gpointer self); +static gboolean ____lambda67__gsource_func (gpointer self); +static gboolean ___lambda69_ (Block19Data* _data19_); +static gboolean ___lambda70_ (Tutorial* self); +static gboolean ____lambda70__gsource_func (gpointer self); +static gboolean ____lambda69__gsource_func (gpointer self); +static gboolean ___lambda71_ (Block19Data* _data19_); +static gboolean ___lambda72_ (Tutorial* self); +static gboolean ____lambda72__gsource_func (gpointer self); +static gboolean ____lambda71__gsource_func (gpointer self); +static gboolean ___lambda73_ (Block19Data* _data19_); +static gboolean ___lambda74_ (Tutorial* self); +static gboolean ____lambda74__gsource_func (gpointer self); +static gboolean ____lambda73__gsource_func (gpointer self); +static gboolean ___lambda75_ (Block19Data* _data19_); +static gboolean ___lambda76_ (Tutorial* self); +static gboolean ____lambda76__gsource_func (gpointer self); +static gboolean ____lambda75__gsource_func (gpointer self); +static gboolean ___lambda77_ (Block19Data* _data19_); +static gboolean ___lambda78_ (Tutorial* self); +static gboolean ____lambda78__gsource_func (gpointer self); +static gboolean ____lambda77__gsource_func (gpointer self); +static gboolean ___lambda79_ (Block19Data* _data19_); +static gboolean ___lambda80_ (Tutorial* self); +static gboolean ____lambda80__gsource_func (gpointer self); +static gboolean ____lambda79__gsource_func (gpointer self); +static gboolean ___lambda81_ (Tutorial* self); +static gboolean ____lambda81__gsource_func (gpointer self); +static void tutorial_finalize (GObject* obj); + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +static const gchar* string_to_string (const gchar* self) { + const gchar* result = NULL; + g_return_val_if_fail (self != NULL, NULL); + result = self; + return result; +} + + +static void _tutorial_page_next_gtk_button_clicked (GtkButton* _sender, gpointer self) { + tutorial_page_next ((TutorialPage*) self); +} + + +static void __lambda82_ (TutorialPage* self) { + g_signal_emit_by_name (self, "close"); +} + + +static void ___lambda82__gtk_button_clicked (GtkButton* _sender, gpointer self) { + __lambda82_ ((TutorialPage*) self); +} + + +TutorialPage* tutorial_page_construct (GType object_type, Tutorial* stack, const gchar* description, const gchar* content, gint index) { + TutorialPage * self = NULL; + gint _tmp0_ = 0; + Tutorial* _tmp1_ = NULL; + Tutorial* _tmp2_ = NULL; + GtkBox* main_box = NULL; + GtkBox* _tmp3_ = NULL; + GtkBox* content_box = NULL; + GtkBox* _tmp4_ = NULL; + GtkLabel* desc = NULL; + GtkLabel* _tmp5_ = NULL; + GtkLabel* _tmp6_ = NULL; + GtkLabel* _tmp7_ = NULL; + GtkLabel* _tmp8_ = NULL; + const gchar* _tmp9_ = NULL; + GtkBox* _tmp10_ = NULL; + GtkLabel* _tmp11_ = NULL; + GtkLabel* todo = NULL; + GtkLabel* _tmp12_ = NULL; + GtkLabel* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + const gchar* _tmp15_ = NULL; + gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + GtkBox* _tmp18_ = NULL; + GtkLabel* _tmp19_ = NULL; + GtkButton* close_button = NULL; + GtkButton* _tmp20_ = NULL; + GtkButton* _tmp21_ = NULL; + GtkButton* _tmp22_ = NULL; + GtkButton* _tmp23_ = NULL; + GtkBox* button_box = NULL; + GtkBox* _tmp24_ = NULL; + GtkBox* _tmp25_ = NULL; + GtkButton* _tmp26_ = NULL; + GtkBox* _tmp27_ = NULL; + GtkButton* _tmp28_ = NULL; + GtkBox* _tmp29_ = NULL; + GtkBox* _tmp30_ = NULL; + GtkBox* _tmp31_ = NULL; + GtkBox* _tmp32_ = NULL; + GtkBox* _tmp33_ = NULL; + gint _tmp34_ = 0; + GtkButton* _tmp38_ = NULL; + GtkButton* _tmp39_ = NULL; + g_return_val_if_fail (stack != NULL, NULL); + g_return_val_if_fail (description != NULL, NULL); + g_return_val_if_fail (content != NULL, NULL); + self = (TutorialPage*) g_object_new (object_type, NULL); + _tmp0_ = index; + self->priv->index = _tmp0_; + _tmp1_ = stack; + _tmp2_ = _g_object_ref0 (_tmp1_); + _g_object_unref0 (self->priv->stack); + self->priv->stack = _tmp2_; + _tmp3_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 10); + g_object_ref_sink (_tmp3_); + main_box = _tmp3_; + _tmp4_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6); + g_object_ref_sink (_tmp4_); + content_box = _tmp4_; + _tmp5_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp5_); + desc = _tmp5_; + _tmp6_ = desc; + gtk_label_set_selectable (_tmp6_, TRUE); + _tmp7_ = desc; + gtk_label_set_line_wrap (_tmp7_, TRUE); + _tmp8_ = desc; + _tmp9_ = description; + gtk_label_set_markup (_tmp8_, _tmp9_); + _tmp10_ = content_box; + _tmp11_ = desc; + gtk_box_pack_start (_tmp10_, (GtkWidget*) _tmp11_, TRUE, TRUE, (guint) 0); + _tmp12_ = (GtkLabel*) gtk_label_new (""); + g_object_ref_sink (_tmp12_); + todo = _tmp12_; + _tmp13_ = todo; + _tmp14_ = content; + _tmp15_ = string_to_string (_tmp14_); + _tmp16_ = g_strconcat ("", _tmp15_, "", NULL); + _tmp17_ = _tmp16_; + gtk_label_set_markup (_tmp13_, _tmp17_); + _g_free0 (_tmp17_); + _tmp18_ = content_box; + _tmp19_ = todo; + gtk_box_pack_start (_tmp18_, (GtkWidget*) _tmp19_, TRUE, TRUE, (guint) 0); + _tmp20_ = (GtkButton*) gtk_button_new_from_icon_name ("close-symbolic", GTK_ICON_SIZE_BUTTON); + g_object_ref_sink (_tmp20_); + close_button = _tmp20_; + _tmp21_ = close_button; + gtk_button_set_relief (_tmp21_, GTK_RELIEF_NONE); + _tmp22_ = close_button; + g_object_set (_tmp22_, "xalign", (gfloat) 1, NULL); + _tmp23_ = (GtkButton*) gtk_button_new_from_icon_name ("go-next-symbolic", GTK_ICON_SIZE_BUTTON); + g_object_ref_sink (_tmp23_); + _g_object_unref0 (self->priv->next_button); + self->priv->next_button = _tmp23_; + _tmp24_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6); + g_object_ref_sink (_tmp24_); + button_box = _tmp24_; + _tmp25_ = button_box; + _tmp26_ = close_button; + gtk_box_pack_start (_tmp25_, (GtkWidget*) _tmp26_, FALSE, TRUE, (guint) 0); + _tmp27_ = button_box; + _tmp28_ = self->priv->next_button; + gtk_box_pack_start (_tmp27_, (GtkWidget*) _tmp28_, TRUE, TRUE, (guint) 0); + _tmp29_ = main_box; + _tmp30_ = content_box; + gtk_box_pack_start (_tmp29_, (GtkWidget*) _tmp30_, TRUE, TRUE, (guint) 0); + _tmp31_ = main_box; + _tmp32_ = button_box; + gtk_box_pack_end (_tmp31_, (GtkWidget*) _tmp32_, FALSE, TRUE, (guint) 0); + _tmp33_ = main_box; + gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp33_, TRUE, TRUE, (guint) 0); + _tmp34_ = index; + if (_tmp34_ == 0) { + GtkButton* _tmp35_ = NULL; + _tmp35_ = self->priv->next_button; + gtk_button_set_label (_tmp35_, "Start Tutorial"); + } else { + gint _tmp36_ = 0; + _tmp36_ = index; + if (_tmp36_ == 12) { + GtkButton* _tmp37_ = NULL; + _tmp37_ = self->priv->next_button; + gtk_widget_set_no_show_all ((GtkWidget*) _tmp37_, TRUE); + } + } + _tmp38_ = self->priv->next_button; + g_signal_connect_object (_tmp38_, "clicked", (GCallback) _tutorial_page_next_gtk_button_clicked, self, 0); + _tmp39_ = close_button; + g_signal_connect_object (_tmp39_, "clicked", (GCallback) ___lambda82__gtk_button_clicked, self, 0); + _g_object_unref0 (button_box); + _g_object_unref0 (close_button); + _g_object_unref0 (todo); + _g_object_unref0 (desc); + _g_object_unref0 (content_box); + _g_object_unref0 (main_box); + return self; +} + + +TutorialPage* tutorial_page_new (Tutorial* stack, const gchar* description, const gchar* content, gint index) { + return tutorial_page_construct (TYPE_TUTORIAL_PAGE, stack, description, content, index); +} + + +static void tutorial_page_next (TutorialPage* self) { + Tutorial* _tmp0_ = NULL; + Tutorial* _tmp1_ = NULL; + gint _tmp2_ = 0; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->stack; + gtk_stack_set_transition_type ((GtkStack*) _tmp0_, GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT); + _tmp1_ = self->priv->stack; + _tmp2_ = self->priv->index; + tutorial_new_page (_tmp1_, _tmp2_ + 1); +} + + +void tutorial_page_focus_button (TutorialPage* self) { + GtkButton* _tmp0_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->next_button; + gtk_widget_grab_focus ((GtkWidget*) _tmp0_); +} + + +void tutorial_page_success (TutorialPage* self) { + GtkButton* _tmp0_ = NULL; + GtkImage* _tmp1_ = NULL; + GtkImage* _tmp2_ = NULL; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->next_button; + _tmp1_ = (GtkImage*) gtk_image_new_from_icon_name ("dialog-ok", GTK_ICON_SIZE_BUTTON); + g_object_ref_sink (_tmp1_); + _tmp2_ = _tmp1_; + gtk_button_set_image (_tmp0_, (GtkWidget*) _tmp2_); + _g_object_unref0 (_tmp2_); +} + + +static void tutorial_page_class_init (TutorialPageClass * klass) { + tutorial_page_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (TutorialPagePrivate)); + G_OBJECT_CLASS (klass)->finalize = tutorial_page_finalize; + g_signal_new ("close", TYPE_TUTORIAL_PAGE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); +} + + +static void tutorial_page_instance_init (TutorialPage * self) { + self->priv = TUTORIAL_PAGE_GET_PRIVATE (self); +} + + +static void tutorial_page_finalize (GObject* obj) { + TutorialPage * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TUTORIAL_PAGE, TutorialPage); + _g_object_unref0 (self->priv->stack); + _g_object_unref0 (self->priv->next_button); + G_OBJECT_CLASS (tutorial_page_parent_class)->finalize (obj); +} + + +GType tutorial_page_get_type (void) { + static volatile gsize tutorial_page_type_id__volatile = 0; + if (g_once_init_enter (&tutorial_page_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (TutorialPageClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tutorial_page_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TutorialPage), 0, (GInstanceInitFunc) tutorial_page_instance_init, NULL }; + GType tutorial_page_type_id; + tutorial_page_type_id = g_type_register_static (gtk_box_get_type (), "TutorialPage", &g_define_type_info, 0); + g_once_init_leave (&tutorial_page_type_id__volatile, tutorial_page_type_id); + } + return tutorial_page_type_id__volatile; +} + + +static Block18Data* block18_data_ref (Block18Data* _data18_) { + g_atomic_int_inc (&_data18_->_ref_count_); + return _data18_; +} + + +static void block18_data_unref (void * _userdata_) { + Block18Data* _data18_; + _data18_ = (Block18Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data18_->_ref_count_)) { + Tutorial* self; + self = _data18_->self; + _g_object_unref0 (_data18_->page0); + _g_object_unref0 (self); + g_slice_free (Block18Data, _data18_); + } +} + + +static void ____lambda83_ (Tutorial* self) { + guint _tmp0_ = 0U; + _tmp0_ = self->priv->timer; + if (_tmp0_ != ((guint) -1)) { + guint _tmp1_ = 0U; + _tmp1_ = self->priv->timer; + g_source_remove (_tmp1_); + self->priv->timer = (guint) -1; + } + g_signal_emit_by_name (self, "close"); +} + + +static void _____lambda83__tutorial_page_close (TutorialPage* _sender, gpointer self) { + ____lambda83_ ((Tutorial*) self); +} + + +static gboolean __lambda84_ (Block18Data* _data18_) { + Tutorial* self; + gboolean result = FALSE; + TutorialPage* _tmp0_ = NULL; + self = _data18_->self; + _tmp0_ = _data18_->page0; + tutorial_page_focus_button (_tmp0_); + result = FALSE; + return result; +} + + +static gboolean ___lambda84__gsource_func (gpointer self) { + gboolean result; + result = __lambda84_ (self); + return result; +} + + +Tutorial* tutorial_construct (GType object_type, Controller* controller) { + Tutorial * self = NULL; + Block18Data* _data18_; + Controller* _tmp0_ = NULL; + Controller* _tmp1_ = NULL; + const gchar* _tmp2_ = NULL; + gchar* _tmp3_ = NULL; + gchar* _tmp4_ = NULL; + TutorialPage* _tmp5_ = NULL; + TutorialPage* _tmp6_ = NULL; + TutorialPage* _tmp7_ = NULL; + TutorialPage* page1 = NULL; + TutorialPage* _tmp8_ = NULL; + TutorialPage* _tmp9_ = NULL; + TutorialPage* page2 = NULL; + TutorialPage* _tmp10_ = NULL; + TutorialPage* _tmp11_ = NULL; + TutorialPage* page3 = NULL; + TutorialPage* _tmp12_ = NULL; + TutorialPage* _tmp13_ = NULL; + TutorialPage* page4 = NULL; + TutorialPage* _tmp14_ = NULL; + TutorialPage* _tmp15_ = NULL; + TutorialPage* page5 = NULL; + TutorialPage* _tmp16_ = NULL; + TutorialPage* _tmp17_ = NULL; + TutorialPage* page6 = NULL; + TutorialPage* _tmp18_ = NULL; + TutorialPage* _tmp19_ = NULL; + TutorialPage* page7 = NULL; + TutorialPage* _tmp20_ = NULL; + TutorialPage* _tmp21_ = NULL; + TutorialPage* page8 = NULL; + TutorialPage* _tmp22_ = NULL; + TutorialPage* _tmp23_ = NULL; + TutorialPage* page9 = NULL; + TutorialPage* _tmp24_ = NULL; + TutorialPage* _tmp25_ = NULL; + TutorialPage* page10 = NULL; + TutorialPage* _tmp26_ = NULL; + TutorialPage* _tmp27_ = NULL; + TutorialPage* page11 = NULL; + TutorialPage* _tmp28_ = NULL; + TutorialPage* _tmp29_ = NULL; + TutorialPage* page12 = NULL; + TutorialPage* _tmp30_ = NULL; + TutorialPage* _tmp31_ = NULL; + GList* _tmp32_ = NULL; + g_return_val_if_fail (controller != NULL, NULL); + _data18_ = g_slice_new0 (Block18Data); + _data18_->_ref_count_ = 1; + self = (Tutorial*) g_object_new (object_type, NULL); + _data18_->self = g_object_ref (self); + _tmp0_ = controller; + _tmp1_ = _g_object_ref0 (_tmp0_); + _g_object_unref0 (self->controller); + self->controller = _tmp1_; + gtk_widget_set_hexpand ((GtkWidget*) self, TRUE); + _tmp2_ = g_get_real_name (); + _tmp3_ = g_strdup_printf ("Hi %s, thank you for using NaSC!\n" \ +"In NaSC you can put text and math side by side and the answer will be " \ +"shown on the right pane.", _tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = tutorial_page_new (self, _tmp4_, "Do you want to learn the basics?", 0); + g_object_ref_sink (_tmp5_); + _tmp6_ = _tmp5_; + _g_free0 (_tmp4_); + _data18_->page0 = _tmp6_; + _tmp7_ = _data18_->page0; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp7_, "0"); + _tmp8_ = tutorial_page_new (self, "Let's start with simple math.", "Calculate: 11 + 42", 1); + g_object_ref_sink (_tmp8_); + page1 = _tmp8_; + _tmp9_ = page1; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp9_, "1"); + _tmp10_ = tutorial_page_new (self, "You can plug the answers (ans) in future equations. Just click on the " \ +"answer.\n" \ +"If a answer changes, so does the equation its used in.", "Calculate: ans * 2", 2); + g_object_ref_sink (_tmp10_); + page2 = _tmp10_; + _tmp11_ = page2; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp11_, "2"); + _tmp12_ = tutorial_page_new (self, "You can also reference the last answer with the keyword \"ans\" or wit" \ +"h \"lineX\" where X is the linenumber of the answer.", "Calculate: sin 45° + cos 2rad", 3); + g_object_ref_sink (_tmp12_); + page3 = _tmp12_; + _tmp13_ = page3; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp13_, "3"); + _tmp14_ = tutorial_page_new (self, "You can define your own variables", "Calculate: a = 5", 4); + g_object_ref_sink (_tmp14_); + page4 = _tmp14_; + _tmp15_ = page4; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp15_, "4"); + _tmp16_ = tutorial_page_new (self, "and use them in your equations", "Calculate: 22 + a", 5); + g_object_ref_sink (_tmp16_); + page5 = _tmp16_; + _tmp17_ = page5; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp17_, "5"); + _tmp18_ = tutorial_page_new (self, "You can get answers in various units", "Calculate: 14 cm * 3 cm", 6); + g_object_ref_sink (_tmp18_); + page6 = _tmp18_; + _tmp19_ = page6; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp19_, "6"); + _tmp20_ = tutorial_page_new (self, "and convert between these units", "Calculate: ans to in", 7); + g_object_ref_sink (_tmp20_); + page7 = _tmp20_; + _tmp21_ = page7; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp21_, "7"); + _tmp22_ = tutorial_page_new (self, "You can play with time", "Calculate: 3days + 4hour + 4years to ms", 8); + g_object_ref_sink (_tmp22_); + page8 = _tmp22_; + _tmp23_ = page8; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp23_, "8"); + _tmp24_ = tutorial_page_new (self, "or print the week of the year", "Calculate: week(12.12.2015)", 9); + g_object_ref_sink (_tmp24_); + page9 = _tmp24_; + _tmp25_ = page9; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp25_, "9"); + _tmp26_ = tutorial_page_new (self, "For a list of all those keywords and their capabilities, just open the" \ +" help.", "Calculate: The absolut value of -2 (Hint: abs)", 10); + g_object_ref_sink (_tmp26_); + page10 = _tmp26_; + _tmp27_ = page10; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp27_, "10"); + _tmp28_ = tutorial_page_new (self, "Shortcuts:\n" \ +"Ctrl + O = Open ; Ctrl + H = Help ; Ctrl + P = π " \ +"; Ctrl + R = √ ; Ctrl + L = Last Answer", "Calculate: π * 42cm", 11); + g_object_ref_sink (_tmp28_); + page11 = _tmp28_; + _tmp29_ = page11; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp29_, "11"); + _tmp30_ = tutorial_page_new (self, "Great, you finished the Tutorial.", "Have fun with NaSC", 12); + g_object_ref_sink (_tmp30_); + page12 = _tmp30_; + _tmp31_ = page12; + gtk_stack_add_named ((GtkStack*) self, (GtkWidget*) _tmp31_, "12"); + _tmp32_ = gtk_container_get_children ((GtkContainer*) self); + { + GList* tp_collection = NULL; + GList* tp_it = NULL; + tp_collection = _tmp32_; + for (tp_it = tp_collection; tp_it != NULL; tp_it = tp_it->next) { + GtkWidget* tp = NULL; + tp = (GtkWidget*) tp_it->data; + { + GtkWidget* _tmp33_ = NULL; + _tmp33_ = tp; + g_signal_connect_object (G_TYPE_CHECK_INSTANCE_TYPE (_tmp33_, TYPE_TUTORIAL_PAGE) ? ((TutorialPage*) _tmp33_) : NULL, "close", (GCallback) _____lambda83__tutorial_page_close, self, 0); + } + } + _g_list_free0 (tp_collection); + } + gtk_stack_set_visible_child_name ((GtkStack*) self, "0"); + gtk_widget_show_all ((GtkWidget*) self); + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 100, ___lambda84__gsource_func, block18_data_ref (_data18_), block18_data_unref); + _g_object_unref0 (page12); + _g_object_unref0 (page11); + _g_object_unref0 (page10); + _g_object_unref0 (page9); + _g_object_unref0 (page8); + _g_object_unref0 (page7); + _g_object_unref0 (page6); + _g_object_unref0 (page5); + _g_object_unref0 (page4); + _g_object_unref0 (page3); + _g_object_unref0 (page2); + _g_object_unref0 (page1); + block18_data_unref (_data18_); + _data18_ = NULL; + return self; +} + + +Tutorial* tutorial_new (Controller* controller) { + return tutorial_construct (TYPE_TUTORIAL, controller); +} + + +static Block19Data* block19_data_ref (Block19Data* _data19_) { + g_atomic_int_inc (&_data19_->_ref_count_); + return _data19_; +} + + +static void block19_data_unref (void * _userdata_) { + Block19Data* _data19_; + _data19_ = (Block19Data*) _userdata_; + if (g_atomic_int_dec_and_test (&_data19_->_ref_count_)) { + Tutorial* self; + self = _data19_->self; + _g_object_unref0 (_data19_->old_page); + _g_object_unref0 (self); + g_slice_free (Block19Data, _data19_); + } +} + + +static gboolean ___lambda60_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + tutorial_new_page (self, 2); + _tmp0_ = self->controller; + controller_set_content (_tmp0_, "11 + 42\n"); + result = FALSE; + return result; +} + + +static gboolean ____lambda60__gsource_func (gpointer self) { + gboolean result; + result = ___lambda60_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda59_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp18_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + if (g_strcmp0 (_tmp17_, "53") == 0) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp18_ = found; + if (_tmp18_) { + TutorialPage* _tmp19_ = NULL; + gint _tmp20_ = 0; + _tmp19_ = _data19_->old_page; + tutorial_page_success (_tmp19_); + _tmp20_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp20_, ____lambda60__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda59__gsource_func (gpointer self) { + gboolean result; + result = ___lambda59_ (self); + return result; +} + + +static gboolean ___lambda62_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 3); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda62__gsource_func (gpointer self) { + gboolean result; + result = ___lambda62_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda61_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp18_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + if (g_strcmp0 (_tmp17_, "106") == 0) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp18_ = found; + if (_tmp18_) { + TutorialPage* _tmp19_ = NULL; + gint _tmp20_ = 0; + _tmp19_ = _data19_->old_page; + tutorial_page_success (_tmp19_); + _tmp20_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp20_, ____lambda62__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda61__gsource_func (gpointer self) { + gboolean result; + result = ___lambda61_ (self); + return result; +} + + +static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) { + gchar* result = NULL; + GError * _inner_error_ = NULL; + g_return_val_if_fail (self != NULL, NULL); + g_return_val_if_fail (old != NULL, NULL); + g_return_val_if_fail (replacement != NULL, NULL); + { + GRegex* regex = NULL; + const gchar* _tmp0_ = NULL; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + GRegex* _tmp3_ = NULL; + GRegex* _tmp4_ = NULL; + gchar* _tmp5_ = NULL; + GRegex* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + gchar* _tmp9_ = NULL; + _tmp0_ = old; + _tmp1_ = g_regex_escape_string (_tmp0_, -1); + _tmp2_ = _tmp1_; + _tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_); + _tmp4_ = _tmp3_; + _g_free0 (_tmp2_); + regex = _tmp4_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch14_g_regex_error; + } + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp6_ = regex; + _tmp7_ = replacement; + _tmp8_ = g_regex_replace_literal (_tmp6_, self, (gssize) -1, 0, _tmp7_, 0, &_inner_error_); + _tmp5_ = _tmp8_; + if (G_UNLIKELY (_inner_error_ != NULL)) { + _g_regex_unref0 (regex); + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch14_g_regex_error; + } + _g_regex_unref0 (regex); + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + _tmp9_ = _tmp5_; + _tmp5_ = NULL; + result = _tmp9_; + _g_free0 (_tmp5_); + _g_regex_unref0 (regex); + return result; + } + goto __finally14; + __catch14_g_regex_error: + { + GError* e = NULL; + e = _inner_error_; + _inner_error_ = NULL; + g_assert_not_reached (); + _g_error_free0 (e); + } + __finally14: + if (G_UNLIKELY (_inner_error_ != NULL)) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } +} + + +static gboolean ___lambda64_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 4); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda64__gsource_func (gpointer self) { + gboolean result; + result = ___lambda64_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda63_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp21_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gboolean _tmp20_ = FALSE; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = string_replace (_tmp17_, ".", ","); + _tmp19_ = _tmp18_; + _tmp20_ = g_strcmp0 (_tmp19_, "0,29095994") == 0; + _g_free0 (_tmp19_); + if (_tmp20_) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp21_ = found; + if (_tmp21_) { + TutorialPage* _tmp22_ = NULL; + gint _tmp23_ = 0; + _tmp22_ = _data19_->old_page; + tutorial_page_success (_tmp22_); + _tmp23_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp23_, ____lambda64__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda63__gsource_func (gpointer self) { + gboolean result; + result = ___lambda63_ (self); + return result; +} + + +static gboolean ___lambda66_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 5); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda66__gsource_func (gpointer self) { + gboolean result; + result = ___lambda66_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda65_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp18_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + if (g_strcmp0 (_tmp17_, "5") == 0) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp18_ = found; + if (_tmp18_) { + TutorialPage* _tmp19_ = NULL; + gint _tmp20_ = 0; + _tmp19_ = _data19_->old_page; + tutorial_page_success (_tmp19_); + _tmp20_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp20_, ____lambda66__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda65__gsource_func (gpointer self) { + gboolean result; + result = ___lambda65_ (self); + return result; +} + + +static gboolean ___lambda68_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 6); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda68__gsource_func (gpointer self) { + gboolean result; + result = ___lambda68_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda67_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp18_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + if (g_strcmp0 (_tmp17_, "27") == 0) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp18_ = found; + if (_tmp18_) { + TutorialPage* _tmp19_ = NULL; + gint _tmp20_ = 0; + _tmp19_ = _data19_->old_page; + tutorial_page_success (_tmp19_); + _tmp20_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp20_, ____lambda68__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda67__gsource_func (gpointer self) { + gboolean result; + result = ___lambda67_ (self); + return result; +} + + +static gboolean ___lambda70_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 7); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda70__gsource_func (gpointer self) { + gboolean result; + result = ___lambda70_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda69_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp21_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gboolean _tmp20_ = FALSE; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = string_replace (_tmp17_, ".", ","); + _tmp19_ = _tmp18_; + _tmp20_ = g_strcmp0 (_tmp19_, "0,0042 m²") == 0; + _g_free0 (_tmp19_); + if (_tmp20_) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp21_ = found; + if (_tmp21_) { + TutorialPage* _tmp22_ = NULL; + gint _tmp23_ = 0; + _tmp22_ = _data19_->old_page; + tutorial_page_success (_tmp22_); + _tmp23_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp23_, ____lambda70__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda69__gsource_func (gpointer self) { + gboolean result; + result = ___lambda69_ (self); + return result; +} + + +static gboolean ___lambda72_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 8); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda72__gsource_func (gpointer self) { + gboolean result; + result = ___lambda72_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda71_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp21_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gboolean _tmp20_ = FALSE; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = string_replace (_tmp17_, ".", ","); + _tmp19_ = _tmp18_; + _tmp20_ = g_strcmp0 (_tmp19_, "6,510013 in²") == 0; + _g_free0 (_tmp19_); + if (_tmp20_) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp21_ = found; + if (_tmp21_) { + TutorialPage* _tmp22_ = NULL; + gint _tmp23_ = 0; + _tmp22_ = _data19_->old_page; + tutorial_page_success (_tmp22_); + _tmp23_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp23_, ____lambda72__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda71__gsource_func (gpointer self) { + gboolean result; + result = ___lambda71_ (self); + return result; +} + + +static gboolean ___lambda74_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 9); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda74__gsource_func (gpointer self) { + gboolean result; + result = ___lambda74_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda73_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp21_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gboolean _tmp20_ = FALSE; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = string_replace (_tmp17_, ".", ","); + _tmp19_ = _tmp18_; + _tmp20_ = g_strcmp0 (_tmp19_, "1,26504 x 10¹¹ ms") == 0; + _g_free0 (_tmp19_); + if (_tmp20_) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp21_ = found; + if (_tmp21_) { + TutorialPage* _tmp22_ = NULL; + gint _tmp23_ = 0; + _tmp22_ = _data19_->old_page; + tutorial_page_success (_tmp22_); + _tmp23_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp23_, ____lambda74__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda73__gsource_func (gpointer self) { + gboolean result; + result = ___lambda73_ (self); + return result; +} + + +static gboolean ___lambda76_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 10); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda76__gsource_func (gpointer self) { + gboolean result; + result = ___lambda76_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda75_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp18_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + if (g_strcmp0 (_tmp17_, "50") == 0) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp18_ = found; + if (_tmp18_) { + TutorialPage* _tmp19_ = NULL; + gint _tmp20_ = 0; + _tmp19_ = _data19_->old_page; + tutorial_page_success (_tmp19_); + _tmp20_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp20_, ____lambda76__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda75__gsource_func (gpointer self) { + gboolean result; + result = ___lambda75_ (self); + return result; +} + + +static gboolean ___lambda78_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 11); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda78__gsource_func (gpointer self) { + gboolean result; + result = ___lambda78_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda77_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp18_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + if (g_strcmp0 (_tmp17_, "2") == 0) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp18_ = found; + if (_tmp18_) { + TutorialPage* _tmp19_ = NULL; + gint _tmp20_ = 0; + _tmp19_ = _data19_->old_page; + tutorial_page_success (_tmp19_); + _tmp20_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp20_, ____lambda78__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda77__gsource_func (gpointer self) { + gboolean result; + result = ___lambda77_ (self); + return result; +} + + +static gboolean ___lambda80_ (Tutorial* self) { + gboolean result = FALSE; + Controller* _tmp0_ = NULL; + InputView* _tmp1_ = NULL; + InputView* _tmp2_ = NULL; + GtkSourceView* _tmp3_ = NULL; + GtkTextBuffer* _tmp4_ = NULL; + GtkTextBuffer* _tmp5_ = NULL; + tutorial_new_page (self, 12); + _tmp0_ = self->controller; + _tmp1_ = controller_get_input (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = _tmp2_->source_view; + _tmp4_ = gtk_text_view_get_buffer ((GtkTextView*) _tmp3_); + _tmp5_ = _tmp4_; + gtk_text_buffer_insert_at_cursor (_tmp5_, "\n", -1); + result = FALSE; + return result; +} + + +static gboolean ____lambda80__gsource_func (gpointer self) { + gboolean result; + result = ___lambda80_ ((Tutorial*) self); + return result; +} + + +static gboolean ___lambda79_ (Block19Data* _data19_) { + Tutorial* self; + gboolean result = FALSE; + gboolean found = FALSE; + gboolean _tmp21_ = FALSE; + self = _data19_->self; + found = FALSE; + { + GeeArrayList* _rl_list = NULL; + Controller* _tmp0_ = NULL; + ResultView* _tmp1_ = NULL; + ResultView* _tmp2_ = NULL; + GeeArrayList* _tmp3_ = NULL; + GeeArrayList* _tmp4_ = NULL; + GeeArrayList* _tmp5_ = NULL; + gint _rl_size = 0; + GeeArrayList* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + gint _rl_index = 0; + _tmp0_ = self->controller; + _tmp1_ = controller_get_results (_tmp0_); + _tmp2_ = _tmp1_; + _tmp3_ = result_view_get_result_list (_tmp2_); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (_tmp4_); + _rl_list = _tmp5_; + _tmp6_ = _rl_list; + _tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _rl_size = _tmp8_; + _rl_index = -1; + while (TRUE) { + gint _tmp9_ = 0; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + ResultLine* rl = NULL; + GeeArrayList* _tmp12_ = NULL; + gint _tmp13_ = 0; + gpointer _tmp14_ = NULL; + ResultLine* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + const gchar* _tmp17_ = NULL; + gchar* _tmp18_ = NULL; + gchar* _tmp19_ = NULL; + gboolean _tmp20_ = FALSE; + _tmp9_ = _rl_index; + _rl_index = _tmp9_ + 1; + _tmp10_ = _rl_index; + _tmp11_ = _rl_size; + if (!(_tmp10_ < _tmp11_)) { + break; + } + _tmp12_ = _rl_list; + _tmp13_ = _rl_index; + _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_); + rl = (ResultLine*) _tmp14_; + _tmp15_ = rl; + _tmp16_ = result_line_get_value (_tmp15_); + _tmp17_ = _tmp16_; + _tmp18_ = string_replace (_tmp17_, ".", ","); + _tmp19_ = _tmp18_; + _tmp20_ = g_strcmp0 (_tmp19_, "1,3194689 m") == 0; + _g_free0 (_tmp19_); + if (_tmp20_) { + found = TRUE; + } + _g_object_unref0 (rl); + } + _g_object_unref0 (_rl_list); + } + _tmp21_ = found; + if (_tmp21_) { + TutorialPage* _tmp22_ = NULL; + gint _tmp23_ = 0; + _tmp22_ = _data19_->old_page; + tutorial_page_success (_tmp22_); + _tmp23_ = self->priv->success_timer; + g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp23_, ____lambda80__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = (guint) -1; + result = FALSE; + return result; + } + result = TRUE; + return result; +} + + +static gboolean ____lambda79__gsource_func (gpointer self) { + gboolean result; + result = ___lambda79_ (self); + return result; +} + + +static gboolean ___lambda81_ (Tutorial* self) { + gboolean result = FALSE; + g_signal_emit_by_name (self, "close"); + result = FALSE; + return result; +} + + +static gboolean ____lambda81__gsource_func (gpointer self) { + gboolean result; + result = ___lambda81_ ((Tutorial*) self); + return result; +} + + +void tutorial_new_page (Tutorial* self, gint index) { + Block19Data* _data19_; + gint _tmp0_ = 0; + gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + GtkWidget* _tmp3_ = NULL; + GtkWidget* _tmp4_ = NULL; + TutorialPage* _tmp5_ = NULL; + Controller* _tmp6_ = NULL; + InputView* _tmp7_ = NULL; + InputView* _tmp8_ = NULL; + GtkSourceView* _tmp9_ = NULL; + guint _tmp10_ = 0U; + gint _tmp12_ = 0; + gint _tmp15_ = 0; + gint _tmp18_ = 0; + gint _tmp21_ = 0; + gint _tmp24_ = 0; + gint _tmp27_ = 0; + gint _tmp30_ = 0; + gint _tmp33_ = 0; + gint _tmp36_ = 0; + gint _tmp39_ = 0; + gint _tmp42_ = 0; + gint _tmp45_ = 0; + g_return_if_fail (self != NULL); + _data19_ = g_slice_new0 (Block19Data); + _data19_->_ref_count_ = 1; + _data19_->self = g_object_ref (self); + _tmp0_ = index; + _tmp1_ = g_strdup_printf ("%d", _tmp0_); + _tmp2_ = _tmp1_; + gtk_stack_set_visible_child_name ((GtkStack*) self, _tmp2_); + _g_free0 (_tmp2_); + _tmp3_ = gtk_stack_get_visible_child ((GtkStack*) self); + _tmp4_ = _tmp3_; + _tmp5_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp4_, TYPE_TUTORIAL_PAGE) ? ((TutorialPage*) _tmp4_) : NULL); + _data19_->old_page = _tmp5_; + _tmp6_ = self->controller; + _tmp7_ = controller_get_input (_tmp6_); + _tmp8_ = _tmp7_; + _tmp9_ = _tmp8_->source_view; + gtk_widget_grab_focus ((GtkWidget*) _tmp9_); + _tmp10_ = self->priv->timer; + if (_tmp10_ != ((guint) -1)) { + guint _tmp11_ = 0U; + _tmp11_ = self->priv->timer; + g_source_remove (_tmp11_); + self->priv->timer = (guint) -1; + } + _tmp12_ = index; + if (_tmp12_ == 1) { + gint _tmp13_ = 0; + guint _tmp14_ = 0U; + _tmp13_ = self->priv->check_timer; + _tmp14_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp13_, ____lambda59__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp14_; + } + _tmp15_ = index; + if (_tmp15_ == 2) { + gint _tmp16_ = 0; + guint _tmp17_ = 0U; + _tmp16_ = self->priv->check_timer; + _tmp17_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp16_, ____lambda61__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp17_; + } + _tmp18_ = index; + if (_tmp18_ == 3) { + gint _tmp19_ = 0; + guint _tmp20_ = 0U; + _tmp19_ = self->priv->check_timer; + _tmp20_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp19_, ____lambda63__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp20_; + } + _tmp21_ = index; + if (_tmp21_ == 4) { + gint _tmp22_ = 0; + guint _tmp23_ = 0U; + _tmp22_ = self->priv->check_timer; + _tmp23_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp22_, ____lambda65__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp23_; + } + _tmp24_ = index; + if (_tmp24_ == 5) { + gint _tmp25_ = 0; + guint _tmp26_ = 0U; + _tmp25_ = self->priv->check_timer; + _tmp26_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp25_, ____lambda67__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp26_; + } + _tmp27_ = index; + if (_tmp27_ == 6) { + gint _tmp28_ = 0; + guint _tmp29_ = 0U; + _tmp28_ = self->priv->check_timer; + _tmp29_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp28_, ____lambda69__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp29_; + } + _tmp30_ = index; + if (_tmp30_ == 7) { + gint _tmp31_ = 0; + guint _tmp32_ = 0U; + _tmp31_ = self->priv->check_timer; + _tmp32_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp31_, ____lambda71__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp32_; + } + _tmp33_ = index; + if (_tmp33_ == 8) { + gint _tmp34_ = 0; + guint _tmp35_ = 0U; + _tmp34_ = self->priv->check_timer; + _tmp35_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp34_, ____lambda73__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp35_; + } + _tmp36_ = index; + if (_tmp36_ == 9) { + gint _tmp37_ = 0; + guint _tmp38_ = 0U; + _tmp37_ = self->priv->check_timer; + _tmp38_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp37_, ____lambda75__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp38_; + } + _tmp39_ = index; + if (_tmp39_ == 10) { + gint _tmp40_ = 0; + guint _tmp41_ = 0U; + _tmp40_ = self->priv->check_timer; + _tmp41_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp40_, ____lambda77__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp41_; + } + _tmp42_ = index; + if (_tmp42_ == 11) { + gint _tmp43_ = 0; + guint _tmp44_ = 0U; + _tmp43_ = self->priv->check_timer; + _tmp44_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) _tmp43_, ____lambda79__gsource_func, block19_data_ref (_data19_), block19_data_unref); + self->priv->timer = _tmp44_; + } + _tmp45_ = index; + if (_tmp45_ == 12) { + gint _tmp46_ = 0; + guint _tmp47_ = 0U; + _tmp46_ = self->priv->check_timer; + _tmp47_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) (_tmp46_ * 6), ____lambda81__gsource_func, g_object_ref (self), g_object_unref); + self->priv->timer = _tmp47_; + } + block19_data_unref (_data19_); + _data19_ = NULL; +} + + +static void tutorial_class_init (TutorialClass * klass) { + tutorial_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (TutorialPrivate)); + G_OBJECT_CLASS (klass)->finalize = tutorial_finalize; + g_signal_new ("close", TYPE_TUTORIAL, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); +} + + +static void tutorial_instance_init (Tutorial * self) { + self->priv = TUTORIAL_GET_PRIVATE (self); + self->priv->timer = (guint) -1; + self->priv->check_timer = 500; + self->priv->success_timer = 1000; +} + + +static void tutorial_finalize (GObject* obj) { + Tutorial * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TUTORIAL, Tutorial); + _g_object_unref0 (self->controller); + G_OBJECT_CLASS (tutorial_parent_class)->finalize (obj); +} + + +GType tutorial_get_type (void) { + static volatile gsize tutorial_type_id__volatile = 0; + if (g_once_init_enter (&tutorial_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (TutorialClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tutorial_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Tutorial), 0, (GInstanceInitFunc) tutorial_instance_init, NULL }; + GType tutorial_type_id; + tutorial_type_id = g_type_register_static (gtk_stack_get_type (), "Tutorial", &g_define_type_info, 0); + g_once_init_leave (&tutorial_type_id__volatile, tutorial_type_id); + } + return tutorial_type_id__volatile; +} + + + diff -Nru nasc-0.2/build/Uninstall.cmake nasc-0.3/build/Uninstall.cmake --- nasc-0.2/build/Uninstall.cmake 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/build/Uninstall.cmake 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,23 @@ +if (NOT EXISTS "/home/pa/Projekte/nascOrg/build/install_manifest.txt") + message(FATAL_ERROR "Cannot find install manifest: \"/home/pa/Projekte/nascOrg/build/install_manifest.txt\"") +endif(NOT EXISTS "/home/pa/Projekte/nascOrg/build/install_manifest.txt") + +file(READ "/home/pa/Projekte/nascOrg/build/install_manifest.txt" files) +string(REGEX REPLACE "\n" ";" files "${files}") +cmake_policy (SET CMP0007 NEW) +list(REVERSE files) +foreach (file ${files}) + message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"") + if (EXISTS "$ENV{DESTDIR}${file}") + execute_process( + COMMAND /usr/bin/cmake -E remove "$ENV{DESTDIR}${file}" + OUTPUT_VARIABLE rm_out + RESULT_VARIABLE rm_retval + ) + if(NOT ${rm_retval} EQUAL 0) + message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"") + endif (NOT ${rm_retval} EQUAL 0) + else (EXISTS "$ENV{DESTDIR}${file}") + message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.") + endif (EXISTS "$ENV{DESTDIR}${file}") +endforeach(file) diff -Nru nasc-0.2/CMakeLists.txt nasc-0.3/CMakeLists.txt --- nasc-0.2/CMakeLists.txt 2016-09-05 21:32:43.000000000 +0000 +++ nasc-0.3/CMakeLists.txt 2017-05-01 16:46:10.000000000 +0000 @@ -27,7 +27,7 @@ set (PKGDATADIR "${DATADIR}") set (GETTEXT_PACKAGE "nasc") set (RELEASE_NAME "nasc") -set (VERSION "0.2") +set (VERSION "0.3") set (VERSION_INFO "Release") set (PREFIX ${CMAKE_INSTALL_PREFIX}) set (DOLLAR "$") diff -Nru nasc-0.2/com.github.parnold-x.nasc.gschema.xml nasc-0.3/com.github.parnold-x.nasc.gschema.xml --- nasc-0.2/com.github.parnold-x.nasc.gschema.xml 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/com.github.parnold-x.nasc.gschema.xml 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,64 @@ + + + + + true + Show a Tutorial at startup + + If the user starts the first time a tutorial is shown + + + + + false + If true advanced functions are shown in the help + + If you are a true math geek you need this set to true + + + + + 800 + The user's last window width + + The user's last window width + + + + + 800 + The user's last window height + + The user's last window height + + + + + 445 + The user's last pane position + + The user's last pane position + + + + + -1 + Most recent x position of nasc + Most recent x position of nasc + + + + -1 + Most recent y position of nasc + Most recent y position of nasc + + + + 0 + The open sheet + + The open sheet + + + + \ No newline at end of file diff -Nru nasc-0.2/debian/bzr-builder.manifest nasc-0.3/debian/bzr-builder.manifest --- nasc-0.2/debian/bzr-builder.manifest 2016-09-05 21:32:43.000000000 +0000 +++ nasc-0.3/debian/bzr-builder.manifest 2017-05-01 16:46:11.000000000 +0000 @@ -1,2 +1,2 @@ -# bzr-builder format 0.3 deb-version {debupstream}-0~79 -lp:nasc revid:parnold1@gmail.com-20160905212402-h3idvv4qai2ms9ad +# bzr-builder format 0.3 deb-version {debupstream}-0~9 +lp:~nasc-team/nasc/github-import revid:git-v1:bd5e9a1b0c5f93a6813d28f239fb785f011b4d75 diff -Nru nasc-0.2/debian/changelog nasc-0.3/debian/changelog --- nasc-0.2/debian/changelog 2016-09-05 21:32:43.000000000 +0000 +++ nasc-0.3/debian/changelog 2017-05-01 16:46:11.000000000 +0000 @@ -1,11 +1,12 @@ -nasc (0.2-0~79~ubuntu0.4.1) xenial; urgency=low +nasc (0.3-0~9~ubuntu0.4.1) xenial; urgency=low * Auto build. - -- Launchpad Package Builder Mon, 05 Sep 2016 21:32:43 +0000 + -- Djax Mon, 01 May 2017 16:46:11 +0000 -nasc (0.2) UNSTABLE; urgency=low +nasc (0.3) UNSTABLE; urgency=low + * Move to github * Redesign * Initial release. diff -Nru nasc-0.2/debian/control nasc-0.3/debian/control --- nasc-0.2/debian/control 2016-09-05 21:32:43.000000000 +0000 +++ nasc-0.3/debian/control 2017-05-01 16:46:10.000000000 +0000 @@ -10,7 +10,7 @@ libsoup2.4-dev, libglib2.0-dev (>= 2.29.0), libgranite-dev (>= 0.3.0), - libgtk-3-dev (>=3.12), + libgtk-3-dev (>=3.12), libgtksourceview-3.0-dev (>=3.10), valac Standards-Version: 3.9.3 diff -Nru nasc-0.2/debian/copyright nasc-0.3/debian/copyright --- nasc-0.2/debian/copyright 2016-09-05 21:32:43.000000000 +0000 +++ nasc-0.3/debian/copyright 2017-05-01 16:46:10.000000000 +0000 @@ -1,9 +1,9 @@ Format: http://dep.debian.net/deps/dep5 Upstream-Name: NaSC -Source: https://code.launchpad.net/~parnold-x/nasc/trunk +Source: https://github.com/parnold-x/nasc/tree/master Files: * -Copyright: 2015 NaSC Developers +Copyright: 2015 Peter Arnold License: GPL-3.0+ License: GPL-3.0+ diff -Nru nasc-0.2/libqalculatenasc/config.cmd nasc-0.3/libqalculatenasc/config.cmd --- nasc-0.2/libqalculatenasc/config.cmd 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/config.cmd 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,2 @@ +#! /bin/sh + /home/pa/Projekte/nascOrg/libqalculatenasc/configure.sh '--src=/home/pa/Projekte/nascOrg/libqalculatenasc' '--prefix=/home/pa/Projekte/nascOrg/build' '--libdir=/home/pa/Projekte/nascOrg/build' diff -Nru nasc-0.2/libqalculatenasc/config.h nasc-0.3/libqalculatenasc/config.h --- nasc-0.2/libqalculatenasc/config.h 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/config.h 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,21 @@ +/* + * configuration for libqalculatenasc, generated Mo 5. Sep 23:19:21 CEST 2016 + * by pa@pa-VirtualBox + */ +#ifndef __AC_LIBQALCULATENASC_D +#define __AC_LIBQALCULATENASC_D 1 + + +#define OS_LINUX 1 +#define while(x) while( (x) != 0 ) +#define if(x) if( (x) != 0 ) +#define DWORD unsigned int +#define WORD unsigned short +#define BYTE unsigned char +#define HAVE_BASENAME 1 +#define HAVE_LIBGEN_H 1 +#define TABSTOP 1 +#define PATH_FIND "/usr/bin/find" +#define PATH_SED "/bin/sed" + +#endif/* __AC_LIBQALCULATENASC_D */ diff -Nru nasc-0.2/libqalculatenasc/config.log nasc-0.3/libqalculatenasc/config.log --- nasc-0.2/libqalculatenasc/config.log 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/config.log 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,31 @@ +[echo -n] works +Configuring for [libqalculatenasc] +Looking for cpp +CPP=[/lib/cpp], CPPFLAGS=[] +looking for install + (/usr/bin/install) +checking out the C compiler +ngc18600.c:2:1: warning: return type defaults to ‘int’ [-Wimplicit-int] + main() + ^ +defining WORD & DWORD scalar types +ngc18600.c: In function ‘main’: +ngc18600.c:28:2: warning: implicit declaration of function ‘exit’ [-Wimplicit-function-declaration] + exit(1); + ^ +ngc18600.c:28:2: warning: incompatible implicit declaration of built-in function ‘exit’ +ngc18600.c:28:2: note: include ‘’ or provide a declaration of ‘exit’ +ngc18600.c:35:2: warning: incompatible implicit declaration of built-in function ‘exit’ + exit(2); + ^ +ngc18600.c:35:2: note: include ‘’ or provide a declaration of ‘exit’ +ngc18600.c:37:5: warning: incompatible implicit declaration of built-in function ‘exit’ + exit(0); + ^ +ngc18600.c:37:5: note: include ‘’ or provide a declaration of ‘exit’ +looking for header libgen.h +find is /usr/bin/find +/bin/ln exists, and ln -s works +/home/pa/Projekte/nascOrg/libqalculatenasc/configure.sh: 973: /home/pa/Projekte/nascOrg/libqalculatenasc/configure.sh: AC: not found +sed is /bin/sed +generating Makefile diff -Nru nasc-0.2/libqalculatenasc/config.mak nasc-0.3/libqalculatenasc/config.mak --- nasc-0.2/libqalculatenasc/config.mak 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/config.mak 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,2 @@ +HAVE_FIND = 1 +HAVE_SED = 1 diff -Nru nasc-0.2/libqalculatenasc/config.md nasc-0.3/libqalculatenasc/config.md --- nasc-0.2/libqalculatenasc/config.md 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/config.md 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,5 @@ +#! /bin/sh +# script generated Mo 5. Sep 23:19:21 CEST 2016 by configure.sh + +test -d "$1" || mkdir -p "$1" +exit 0 diff -Nru nasc-0.2/libqalculatenasc/config.sub nasc-0.3/libqalculatenasc/config.sub --- nasc-0.2/libqalculatenasc/config.sub 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/config.sub 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,30 @@ +s;@CPP@;/lib/cpp;g +s;@CPPFLAGS@;;g +s;@INSTALL@;/usr/bin/install;g +s;@INSTALL_PROGRAM@;/usr/bin/install -s -m 755;g +s;@INSTALL_DATA@;/usr/bin/install -m 444;g +s;@INSTALL_DIR@;/home/pa/Projekte/nascOrg/libqalculatenasc/config.md;g +s:@DWORD@:unsigned int:g +s:@WORD@:unsigned short:g +s:@BYTE@:unsigned char:g +s;@TABSTOP@;;g +s;@LIBS@;;g +s;@CONFIGURE_FILES@;config.cmd config.sub config.h config.mak config.log config.md;g +s;@GENERATED_FILES@;Makefile;g +s;@CC@;cc -Wno-return-type -Wno-implicit-int;g +s;@CFLAGS@;-g;g +s;@LDFLAGS@;-g;g +s;@srcdir@;/home/pa/Projekte/nascOrg/libqalculatenasc;g +s;@prefix@;/home/pa/Projekte/nascOrg/build;g +s;@exedir@;/home/pa/Projekte/nascOrg/build/bin;g +s;@sbindir@;/home/pa/Projekte/nascOrg/build/sbin;g +s;@libdir@;/home/pa/Projekte/nascOrg/build;g +s;@libexec@;/home/pa/Projekte/nascOrg/build/lib;g +s;@confdir@;/etc;g +s;@mandir@;/home/pa/Projekte/nascOrg/build/man;g +s;@FIND@;/usr/bin/find;g +s;@LN_S@;/bin/ln -s;g +s;@AR@;/usr/bin/ar;g +s;@RANLIB@;/usr/bin/ranlib;g +s;@LD_LIBRARY_PATH@;HERE;g +s;@SED@;/bin/sed;g diff -Nru nasc-0.2/libqalculatenasc/librarian.sh nasc-0.3/libqalculatenasc/librarian.sh --- nasc-0.2/libqalculatenasc/librarian.sh 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/librarian.sh 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,19 @@ +#! /bin/sh +# +# Build static libraries, hiding (some) ickiness from the makefile + +ACTION=$1; shift +LIBRARY=$1; shift +VERSION=$1; shift + +case "$ACTION" in +make) /usr/bin/ar crv $LIBRARY.a "$@" + /usr/bin/ranlib $LIBRARY.a + rm -f $LIBRARY + /bin/ln -s $LIBRARY.a $LIBRARY + ;; +files) echo "${LIBRARY}.a" + ;; +install)/usr/bin/install -m 644 ${LIBRARY}.a $1 + ;; +esac diff -Nru nasc-0.2/libqalculatenasc/Makefile nasc-0.3/libqalculatenasc/Makefile --- nasc-0.2/libqalculatenasc/Makefile 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/Makefile 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1,25 @@ +CC = g++ +LIBTOOL = ./libtool +DEBUG = -g +CFLAGS = -std=c++11 -fPIC -O3 -c $(DEBUG) +LFLAGS = --tag=CXX --mode=link g++ -shared + +BINDIR=/home/pa/Projekte/nascOrg/build/bin +MANDIR=/home/pa/Projekte/nascOrg/build/man +LIBDIR=/home/pa/Projekte/nascOrg/build +INCDIR=/home/pa/Projekte/nascOrg/build/include/ + +libqalculatenasc.so : QalculateNasc.o + $(LIBTOOL) $(LFLAGS) QalculateNasc.o -o libqalculatenasc.so -lqalculate + +QalculateNasc.o : QalculateNasc.h QalculateNasc.cc + $(CC) $(CFLAGS) QalculateNasc.cc + +all: libqalculatenasc.so + +clean: + \rm -f QalculateNasc.o libqalculatenasc.so + +install: + install libqalculatenasc.so $(LIBDIR) + install QalculateNasc.h $(LIBDIR) diff -Nru nasc-0.2/libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt nasc-0.3/libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt --- nasc-0.2/libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1 @@ +cmd='/home/pa/Projekte/nascOrg/libqalculatenasc/configure.sh;--src=/home/pa/Projekte/nascOrg/libqalculatenasc;--prefix=/home/pa/Projekte/nascOrg/build;--libdir=/home/pa/Projekte/nascOrg/build' diff -Nru nasc-0.2/libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt.in nasc-0.3/libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt.in --- nasc-0.2/libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt.in 1970-01-01 00:00:00.000000000 +0000 +++ nasc-0.3/libqalculatenasc/tmp/libqalculatenasc-cfgcmd.txt.in 2017-05-01 16:46:10.000000000 +0000 @@ -0,0 +1 @@ +cmd='@cmd@' diff -Nru nasc-0.2/src/Nasc.vala nasc-0.3/src/Nasc.vala --- nasc-0.2/src/Nasc.vala 2016-09-05 21:32:43.000000000 +0000 +++ nasc-0.3/src/Nasc.vala 2017-05-01 16:46:10.000000000 +0000 @@ -35,14 +35,14 @@ app_years = "2015"; app_icon = "nasc"; app_launcher = "nasc.desktop"; - application_id = "net.launchpad.nasc"; + application_id = "com.github.parnold-x.nasc"; - /* main_url = "https://code.launchpad.net/nasc"; */ - bug_url = "https://bugs.launchpad.net/nasc"; - help_url = "https://answers.launchpad.net/nasc"; + main_url = "https://github.com/parnold-x/nasc/tree/master"; + bug_url = "https://github.com/parnold-x/nasc/issues"; + // help_url = "https://answers.launchpad.net/nasc"; /* translate_url = "https://translations.launchpad.net/nasc"; */ - /* about_authors = { "NaSC Authors" }; */ + about_authors = { "Peter Arnold " }; about_artists = { "Harvey Cabaguio " }; about_comments = "Do maths like a normal person"; about_translators = null;