Repository: Valama/valama Branch: master Commit: a7539fa031f1 Files: 168 Total size: 2.2 MB Directory structure: gitextract_l57k69iv/ ├── .gitignore ├── .travis.yml ├── .tx/ │ └── config ├── AUTHORS ├── CMakeLists.txt ├── COPYING ├── Changelog ├── README.md ├── cmake/ │ ├── Common.cmake │ ├── FindIntltool.cmake │ ├── Gettext.cmake │ ├── GlibCompileSchema.cmake.in │ ├── GlibCompileSchema_verify.cmake.in │ ├── SimpleUninstall.cmake │ ├── gitlog-to-changelog.pl │ ├── guanako.cmake │ ├── project.cmake │ └── vala/ │ ├── FindVala.cmake │ ├── FindValadoc.cmake │ ├── UseVala.cmake │ ├── ValaDocs.cmake │ └── ValaPkgs.cmake ├── data/ │ ├── buildsystems/ │ │ ├── autotools/ │ │ │ ├── autotools.info │ │ │ └── buildsystem/ │ │ │ ├── AUTHORS │ │ │ ├── COPYING │ │ │ ├── ChangeLog │ │ │ ├── NEWS │ │ │ ├── README │ │ │ └── autogen.sh │ │ └── cmake/ │ │ ├── buildsystem/ │ │ │ ├── CMakeLists.txt │ │ │ └── cmake/ │ │ │ ├── Common.cmake │ │ │ ├── FindIntltool.cmake │ │ │ ├── Gettext.cmake │ │ │ ├── GlibCompileSchema.cmake.in │ │ │ ├── GlibCompileSchema_verify.cmake.in │ │ │ ├── SimpleUninstall.cmake │ │ │ └── vala/ │ │ │ ├── FindVala.cmake │ │ │ ├── FindValadoc.cmake │ │ │ ├── UseVala.cmake │ │ │ ├── ValaDocs.cmake │ │ │ └── ValaPkgs.cmake │ │ └── cmake.info │ ├── layout.xml │ ├── org.valama.gschema.xml │ ├── templates/ │ │ ├── clutter/ │ │ │ ├── clutter.info │ │ │ └── template/ │ │ │ ├── src/ │ │ │ │ └── main.vala │ │ │ ├── template.vlp │ │ │ └── vapi/ │ │ │ └── config.vapi │ │ ├── elementary/ │ │ │ ├── elementary.info │ │ │ └── template/ │ │ │ ├── data/ │ │ │ │ └── hello.desktop │ │ │ ├── src/ │ │ │ │ └── main.vala │ │ │ ├── template.vlp │ │ │ └── vapi/ │ │ │ └── config.vapi │ │ ├── plain_lib/ │ │ │ ├── plain_lib.info │ │ │ └── template/ │ │ │ ├── src/ │ │ │ │ └── lib.vala │ │ │ └── template.vlp │ │ ├── plain_vala/ │ │ │ ├── plain_vala.info │ │ │ └── template/ │ │ │ ├── src/ │ │ │ │ └── main.vala │ │ │ ├── template.vlp │ │ │ └── vapi/ │ │ │ └── config.vapi │ │ ├── simple_gst_audio/ │ │ │ ├── simple_gst_audio.info │ │ │ └── template/ │ │ │ ├── src/ │ │ │ │ └── main.vala │ │ │ ├── template.vlp │ │ │ └── vapi/ │ │ │ └── config.vapi │ │ ├── simple_gst_video/ │ │ │ ├── simple_gst_video.info │ │ │ └── template/ │ │ │ ├── src/ │ │ │ │ └── main.vala │ │ │ ├── template.vlp │ │ │ └── vapi/ │ │ │ └── config.vapi │ │ └── simple_gtk/ │ │ ├── simple_gtk.info │ │ └── template/ │ │ ├── src/ │ │ │ └── main.vala │ │ ├── template.vlp │ │ └── vapi/ │ │ └── config.vapi │ ├── valama.1.in │ ├── valama.desktop.in │ └── valama.xml ├── extravapi/ │ ├── gdl-3.0/ │ │ ├── gdl-3.0.deps │ │ └── gdl-3.0.vapi │ ├── gtk+-3.0/ │ │ ├── gtk+-3.0.deps │ │ └── gtk+-3.0.vapi │ ├── gtksourceview-3.0/ │ │ ├── gtksourceview-3.0.deps │ │ └── gtksourceview-3.0.vapi │ └── webkit2gtk-3.0/ │ ├── webkit2gtk-3.0.deps │ └── webkit2gtk-3.0.vapi ├── guanako/ │ ├── CMakeLists.txt │ ├── config.vapi │ ├── data/ │ │ ├── guanako.lang │ │ └── syntax │ ├── guanako.deps.in │ ├── guanako.pc.in │ ├── guanako.vala │ ├── guanako_auto_indent.vala │ ├── guanako_frankenstein.vala │ ├── guanako_helpers.vala │ ├── guanako_iterators.vala │ ├── guanako_refactoring.vala │ ├── guanako_vapi_discoverer.vala │ ├── reporter.vala │ ├── scanner/ │ │ ├── valaparser.vala │ │ └── valascanner.vala │ └── stylecheck.vala ├── icons/ │ └── CMakeLists.txt ├── po/ │ ├── CMakeLists.txt │ ├── de.po │ ├── fr.po │ ├── valama.pot │ └── zh_TW.po ├── src/ │ ├── buildsystem/ │ │ ├── autotools.vala │ │ ├── base.vala │ │ ├── buildsystem_template.vala │ │ ├── cmake.vala │ │ └── plain.vala │ ├── common/ │ │ ├── args.vala │ │ ├── common.vala │ │ └── ui_helpers.vala │ ├── completion_provider.vala │ ├── dialogs/ │ │ ├── about.vala │ │ ├── create_file.vala │ │ ├── missing_packages.vala │ │ └── project_settings.vala │ ├── main.vala │ ├── project/ │ │ ├── build_project.vala │ │ ├── package_management.vala │ │ ├── project.vala │ │ ├── project_file.vala │ │ └── project_templates.vala │ ├── settings.vala │ ├── ui/ │ │ ├── app_output.vala │ │ ├── breakpoints.vala │ │ ├── build_output.vala │ │ ├── current_file_structure.vala │ │ ├── disabled/ │ │ │ └── stylechecker.vala │ │ ├── glade_viewer.vala │ │ ├── project_browser.vala │ │ ├── reports.vala │ │ ├── search.vala │ │ ├── source_viewer.vala │ │ ├── structure_view.vala │ │ ├── super_source_view.vala │ │ ├── symbol_browser.vala │ │ ├── ui_elements.vala │ │ ├── valadoc_browser.vala │ │ ├── welcome_screen/ │ │ │ ├── create_project_buildsystem.vala │ │ │ ├── create_project_location.vala │ │ │ ├── create_project_packages.vala │ │ │ ├── create_project_template.vala │ │ │ ├── load_project.vala │ │ │ └── main_screen.vala │ │ ├── welcome_screen.vala │ │ └── widgets/ │ │ └── browser_path.vala │ └── ui_main.vala ├── tests/ │ ├── CMakeLists.txt │ ├── projectfile/ │ │ ├── invalid_empty.vlp │ │ ├── invalid_garbage.vlp │ │ ├── pathtest.vlp │ │ ├── version_exact.vlp │ │ ├── version_high.vlp │ │ ├── version_low.vlp │ │ └── version_none.vlp │ ├── testcase.vala │ ├── testcompversion.vala │ ├── testmain.vala │ ├── testpathsplit.vala │ └── testprojectfile.vala ├── valama.vlp └── vapi/ ├── config.vapi ├── gladeui-2.0.deps ├── gladeui-2.0.vapi └── glib-2.0.vapi ================================================ FILE CONTENTS ================================================ ================================================ FILE: .gitignore ================================================ build ================================================ FILE: .travis.yml ================================================ language: c compiler: - gcc - clang branches: except: - artwork - debian - gh-pages - packaging - valamang before_install: - sudo apt-get update -qq - sudo apt-get install update-manager-core software-properties-common - sudo sed -i 's/^\(Prompt=\).*/\1lts/' /etc/update-manager/release-upgrades - sudo do-release-upgrade -d -f DistUpgradeViewNonInteractive - sudo add-apt-repository -y ppa:vala-team/ppa - sudo apt-get update -qq - eval $(sed -n '/^On Debian based systems install/{n;n;p}' README.md) valadoc script: mkdir build && cd build && cmake -DVALADOC_VERBOSE=ON .. && make && make docs-valama notifications: irc: channels: - "irc.freenode.org#valama" on_success: change on_failure: always use_notice: true skip_join: true ================================================ FILE: .tx/config ================================================ [main] host = https://www.transifex.com type = PO minimum_perc = 80 [valama.valama] file_filter = po/.po source_file = po/valama.pot source_lang = en ================================================ FILE: AUTHORS ================================================ Linus Seelinger Dominique Lasserre ================================================ FILE: CMakeLists.txt ================================================ # # CMakeLists.txt # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # cmake_minimum_required(VERSION "2.8.4") include("${CMAKE_SOURCE_DIR}/cmake/project.cmake") if(CMAKE_MAJOR_VERSION GREATER "2") cmake_policy(SET CMP0048 NEW) project("${project_name}" VERSION "${${project_name}_VERSION}" LANGUAGES "C") else() project("${project_name}" "C") endif() string(TOLOWER "${project_name}" project_name_lower) set(bindir "bin") set(datarootdir "share") set(libdir "lib") set(includedir "include") set(datadir "${datarootdir}/${project_name_lower}") set(uidir "${datadir}/ui") set(localedir "${datarootdir}/locale") set(appdir "${datarootdir}/applications") set(gsettingsdir "${datarootdir}/glib-2.0/schemas") set(pixrootdir "${datarootdir}/pixmaps") set(pixdir "${pixrootdir}/${project_name_lower}") set(docdir "${datadir}/doc") set(mandir "${datarootdir}/man") set(mimedir "${datarootdir}/mime/packages") if(CMAKE_INSTALL_PREFIX) set(install_prefix "${CMAKE_INSTALL_PREFIX}/") else() set(install_prefix) endif() list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/vala") list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") find_package(Vala "0.20" REQUIRED) option(TRANSLATION "Build translation." ON) option(ICONS "Generate icons." ON) option(TESTS "Run tests after after build." ON) option(GUANAKO "Build guanako library." ON) if(CMAKE_BUILD_TYPE STREQUAL "Release") option(DOCS "Build documentation." ON) else() option(DOCS "Build documentation." OFF) endif() option(VALADOC_VERBOSE "Verbose (private/internal) document generation." OFF) option(VALADOC_EXTRA "Generate documentation also for all depending packages." OFF) if(VALADOC_VERBOSE OR VALADOC_EXTRA) set(DOCS ON) endif() option(CREATE_CHANGELOG "Create changelog from git log." OFF) option(LOCAL "Add some functionality to execute directly from source directory." ON) option(POSTINSTALL_HOOK "Execute hook scripts (gsettings update) after installation." ON) if(GUANAKO) set(project_root "${project_name_lower}") set(project_root_version "${${project_name}_VERSION}") add_subdirectory("guanako") list(REMOVE_ITEM required_pkgs "guanako") list(APPEND vapifiles "${CMAKE_BINARY_DIR}/guanako/guanako.vapi") endif() if(ICONS) add_subdirectory("icons") endif() if(TRANSLATION) add_subdirectory("po") endif() # Custom library version checks. set(definitions) set(vapidirs) find_package(PkgConfig) # Unix or Windows if(WIN32) list(APPEND definitions "WIN32") elseif(UNIX) list(APPEND definitions "UNIX") else() list(APPEND definitions "NOT_UNIX") list(APPEND definitions "NOT_WIN32") endif() # config list(REMOVE_ITEM required_pkgs "config {nocheck,nolink}") # libvala-X.Y if(VALA_SHORTVER STREQUAL "0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_20") elseif(VALA_SHORTVER STREQUAL "0.22") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_20") elseif(VALA_SHORTVER STREQUAL "0.24") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_20") elseif(VALA_SHORTVER STREQUAL "0.26") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_26") elseif(VALA_SHORTVER STREQUAL "0.28") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_28") elseif(VALA_SHORTVER STREQUAL "0.30") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(APPEND definitions "VALAC_0_28") else() list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND required_pkgs "libvala-${VALA_SHORTVER}") list(APPEND definitions "VALAC_0_20") endif() # gtk+-3.0 pkg_check_modules(GTK3.0 REQUIRED "gtk+-3.0 >= 3.10") compare_version_strings("${VALA_SHORTVER}" "0.20" valares) if(valares LESS 1) message(STATUS "Use gtk+-3.0 vapi from valac 0.22 to support new gtk+-3.0 " "3.10 symbols.") list(APPEND vapidirs "--vapidir=${CMAKE_SOURCE_DIR}/extravapi/gtk+-3.0") endif() #gtksourceview-3.0 pkg_check_modules(GTKSV3.0 REQUIRED "gtksourceview-3.0 >= 3.10") compare_version_strings("3.12" "${GTKSV3.0_VERSION}" gtksvres) compare_version_strings("3.13.90" "${GTKSV3.0_VERSION}" gtksvres1) if(("${GTKSV3.0_VERSION}" VERSION_GREATER "3.14.3") OR ("${GTKSV3.0_VERSION}" VERSION_EQUAL "3.14.3")) message (STATUS "Update files for GtkSourceView 3.14.3") list(APPEND definitions "GTK_SOURCE_VIEW_3_14_3") elseif(("${GTKSV3.0_VERSION}" VERSION_GREATER "3.13.90") OR ("${GTKSV3.0_VERSION}" VERSION_EQUAL "3.13.90")) message (STATUS "Update file for GtkSourceView 3.14") list(APPEND definitions "GTK_SOURCE_VIEW_3_14") elseif(gtksvres LESS 1) list(APPEND definitions "GTK_SOURCE_VIEW_3_12") else() compare_version_strings("0.24" "${VALA_SHORTVER}" valares) if(valares LESS 1) message(STATUS "Use gtksourceview-3.0 vapi from valac 0.22 to not fail" "with deprecated symbols with gtksourceview-3.0 < 3.12.") list(APPEND vapidirs "--vapidir=${CMAKE_SOURCE_DIR}/extravapi/gtksourceview-3.0") endif() endif() # gdl-3.0 pkg_check_modules(GDL3.0 REQUIRED "gdl-3.0 >= 3.3.91") compare_version_strings("3.9.91" "${GDL3.0_VERSION}" gdlres) if(gdlres LESS 1) list(APPEND definitions "GDL_3_9_91") compare_version_strings("0.20" "${VALA_SHORTVER}" valares) if(valares LESS 1) message(STATUS "Use enhanced gdl-3.0 vapi to support new features with " "gdl-3.0 >= 3.9.91.") list(APPEND vapidirs "--vapidir=${CMAKE_SOURCE_DIR}/extravapi/gdl-3.0") endif() endif() # glib-2.0 pkg_check_modules(GLIB2.0 REQUIRED "glib-2.0") # gladeui-2.0 pkg_check_modules(GLADEUI2.0 REQUIRED "gladeui-2.0") list(APPEND vapidirs "--vapidir=${CMAKE_SOURCE_DIR}/vapi") pkg_check_modules(WKGTK "webkit2gtk-4.0") if (WKGTK_FOUND) list(REMOVE_ITEM required_pkgs "webkit2gtk-3.0") list(APPEND required_pkgs "webkit2gtk-4.0") list(APPEND definitions "WEBKIT2_GTK_4.0") else() message(STATUS "Use webkit2gtk-3.0 vapi from valac 0.25.1") list(APPEND vapidirs "--vapidir=${CMAKE_SOURCE_DIR}/extravapi/webkit2gtk-3.0") endif() set(default_vala_flags "--thread" "--target-glib" "${GLIB2.0_VERSION}" "--enable-experimental" "--fatal-warnings" ) include(ValaPkgs) vala_pkgs(VALA_C PACKAGES ${required_pkgs} DEFINITIONS ${definitions} OPTIONAL ${optional_pkgs} SRCFILES ${srcfiles} VAPIS ${vapifiles} OPTIONS ${default_vala_flags} ${vapidirs} ) # Set common C-macros. add_definitions(-DPACKAGE_NAME="${project_name}") add_definitions(-DPACKAGE_VERSION="${${project_name}_VERSION}") add_definitions(-DGETTEXT_PACKAGE="${project_name_lower}") add_definitions(-DPACKAGE_DATA_DIR="${install_prefix}${datadir}") add_definitions(-DPACKAGE_UI_DIR="${install_prefix}${uidir}") add_definitions(-DLOCALE_DIR="${install_prefix}${localedir}") add_definitions(-DPIXMAP_DIR="${install_prefix}${pixdir}") add_definitions(-DVALA_VERSION="${VALA_SHORTVER}") add_executable("${project_name_lower}" ${VALA_C}) target_link_libraries("${project_name_lower}" ${PROJECT_LDFLAGS} ${GLADEUI2.0_LDFLAGS} "-lm" ) add_definitions( ${PROJECT_C_FLAGS} ${GLADEUI2.0_CFLAGS} ) if(GUANAKO) include_directories("${PROJECT_BINARY_DIR}/guanako") target_link_libraries("${project_name_lower}" "guanako") endif() # Create the docs. find_package(Valadoc) if(VALADOC_FOUND) include(ValaDocs) if(VALADOC_EXTRA) set(extra_valadoc_opts "--private" "--internal" ) else() set(extra_valadoc_opts) endif() if(VALADOC_EXTRA) foreach(pkgstr ${required_pkgs}) string(REGEX REPLACE "^([^ \t]+).*" "\\1" pkg "${pkgstr}") list(APPEND extra_valadoc_opts "--deps=${pkg}") endforeach() endif() if(CMAKE_BUILD_TYPE STREQUAL "Debug") set(valadoc_debug "--verbose") else() set(valadoc_debug) endif() if(DOCS) set(make_all "ALL") else() set(make_all) endif() set(valadoc_pkgs) foreach(pkgstr ${required_pkgs} ${optional_pkgs}) string(REGEX REPLACE "^([^ \t]+).*" "\\1" pkg "${pkgstr}") list(APPEND valadoc_pkgs "${pkg}") endforeach() valadoc_gen("${project_name}" ${make_all} PACKAGES ${valadoc_pkgs} DEFINITIONS ${definitions} SRCFILES ${srcfiles} ${vapifiles} OPTIONS ${vapidirs} "--vapidir" "${VALA_DATADIR}/vapi" "--vapidir" "${CMAKE_SOURCE_DIR}/vapi" "--vapidir" "${VALA_VAPIDIR}" "--target-glib" "${GLIB2.0_VERSION}" ${extra_valadoc_opts} ${valadoc_debug} ) if(GUANAKO) add_dependencies("docs-${project_name_lower}" "guanako") endif() else() set(DOCS OFF) endif() # Run tests. if(TESTS) add_subdirectory("tests") endif() if(CREATE_CHANGELOG) find_package(Perl) if(PERL_EXECUTABLE) execute_process(COMMAND "${PERL_EXECUTABLE}" "${CMAKE_SOURCE_DIR}/cmake/gitlog-to-changelog.pl" WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}" OUTPUT_FILE "Changelog") endif() endif() if(CMAKE_BUILD_TYPE STREQUAL "Release") else(CMAKE_BUILD_TYPE STREQUAL "Debug") set(CMAKE_VERBOSE_MAKEFILE ON) endif() # Generate and install manual page. datestring(MONTH_DATE "%B %Y") set(DATADIR "${install_prefix}${datadir}/") set(manfile "data/${project_name_lower}.1") configure_file("${manfile}.in" "${manfile}") install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${manfile}" DESTINATION "${mandir}/man1") # Gsettings schemas if(LOCAL) set(local_build "LOCAL") else() set(local_build) endif() gsettings_install(${local_build} FILES "data/org.valama.gschema.xml") install(TARGETS ${project_name_lower} DESTINATION "${bindir}") # Additional files. install(DIRECTORY "pixmaps/" DESTINATION "${pixdir}") install(FILES "data/layout.xml" DESTINATION "${datadir}") install(DIRECTORY "data/templates" DESTINATION "${datadir}") install(DIRECTORY "data/buildsystems" DESTINATION "${datadir}") install(FILES "data/valama.xml" DESTINATION "${mimedir}") # Install user interface files if used and copy them to build directory. set(uifiles_build) foreach(uifile ${uifiles}) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${uifile}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${uifile}" "${CMAKE_CURRENT_BINARY_DIR}/${uifile}" DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${uifile}" COMMENT "" ) list(APPEND uifiles_build "${CMAKE_CURRENT_BINARY_DIR}/${uifile}") install(FILES ${uifile} DESTINATION "${uidir}") endforeach() add_custom_target("ui_copy_${project_name_lower}" DEPENDS ${uifiles_build}) add_dependencies("${project_name_lower}" "ui_copy_${project_name_lower}") # Uninstall target add_custom_target(uninstall COMMAND "${CMAKE_COMMAND}" -D "CUSTOM_SOURCE_DIR:FILEPATH=${CMAKE_SOURCE_DIR}" -D "POSTREMOVE_HOOK:BOOL=${POSTINSTALL_HOOK}" -D "GSETTINGSDIR:FILEPATH=${install_prefix}${gsettingsdir}" -P "${CMAKE_SOURCE_DIR}/cmake/SimpleUninstall.cmake" ) # Print some information about build. datestring(current_date "%F %T") message("") message("---------------------------------------------") message(" ${current_date}") if(GUANAKO) set(guanako_text " (Guanako ${Guanako_VERSION})") else() set(guanako_text) endif() message("${project_name} ${${project_name}_VERSION}${guanako_text}") message("") if(CMAKE_BUILD_TYPE) message("Build type: ${CMAKE_BUILD_TYPE}") string(TOUPPER "${CMAKE_BUILD_TYPE}" release_upper) set(c_flags "${CMAKE_C_FLAGS_${release_upper}}") else() message("Build type: Default") set(c_flags "${CMAKE_C_FLAGS}") endif() message("") message("Installation prefix: ${CMAKE_INSTALL_PREFIX}") foreach(def ${definitions}) list(APPEND default_vala_flags "-D;${def}") endforeach() base_list_to_delimited_string(vala_flags DELIM " " BASE_LIST "${default_vala_flags}" ) message("C compiler: ${CMAKE_C_COMPILER}") message("C compiler version ${CMAKE_C_COMPILER_VERSION}") if("${c_flags}" STREQUAL "") set(c_flags "(none)") endif() message("C flags: ${c_flags}") message("Vala compiler: ${VALA_EXECUTABLE}") message("Vala compiler version: ${VALA_VERSION}") if("${vala_flags}" STREQUAL "") set(vala_flags "(none)") endif() message("Vala flags: ${vala_flags}") message("GLib version: ${GLIB2.0_VERSION}") message("") if(DOCS) if(VALADOC_VERBOSE AND VALADOC_EXTRA) message("Build documentation: extra/verbose") elseif(VALADOC_VERBOSE) message("Build documentation: verbose") elseif(VALADOC_EXTRA) message("Build documentation: extra") else() message("Build documentation: normal") endif() else() message("Build documentation: no") endif() if(TRANSLATION_BUILD) message("Build translations: yes") else() message("Build translations: no") endif() if(GETTEXT_PACKAGE_NAME) if(GETTEXT_PACKAGE_VERSION) message("Gettext package: ${GETTEXT_PACKAGE_NAME} (${GETTEXT_PACKAGE_VERSION})") else() message("Gettext package: ${GETTEXT_PACKAGE_NAME}") endif() endif() if(TESTS) message("Tests: enabled") else() message("Tests: disabled") endif() if(CMAKE_VERBOSE_MAKEFILE) message("Verbose build: yes") else() message("Verbose build: no") endif() message("") message("---------------------------------------------") message("") # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: COPYING ================================================ GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 3 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, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . ================================================ FILE: Changelog ================================================ 2014-08-19 Dominique Lasserre Include Valama Changelog. CMake: Create Changelog with FSF gitlog-to-changelog. Valama: Add extravapi directory to project. Valama: Allow + in file names. 2014-08-18 Dominique Lasserre Valama file structure: Add missing tooltips. * Add tooltips and set search entry text to symbol name (so a "all-files" button doesn't clear the search). * Disable some debug messages. Guanako: Synchronize parser and scanner from upstream. * Unfortunately versions are incompatible between 0.26 (and before) maintaining both versions until 0.24 support drops. CMake: Add webkit2gtk-3.0 vapi to support vala < 0.26 * Update valama.vlp. * Add libsoup-2.4 as dependency. Valama: Add rudimental valadoc browser. Guanako: Fix package listing. * Sort package names case insensitive. * Don't include last (empty) line from pkg-config output (null string). Valama: Increase package dialog window size. Valama: Fix alignment of package list. * Remove leading whitespaces from pkg-config package list descriptions. Valama: Fix valadoc comment. Valama Autotools: Fix distclean. * Copy clean, just with distclean target this time. Valama: Check for Makefile existance for clean command. * For make clean command obviously the Makefile needs to exist. * Update CMake distclean check. Valama: Add global threads option for make commands. * Add configurable (no config implemented yet) option to control make options in one place. Valama: Fix first build system selection. * Set default build system in welcome_screen (according to template). Valama Autotools: Don't add packages without pc file. Valama Autotools: Remove creation date from configure.ac. * Synchronize this with CMake build system. As long as there is no check for same content a time doesn't make sense (only shows when you compile the project). Valama Autotools: Fix build path. * Bug introduced by f3fcc1e. Valama Autotools: Drop prepared flag. 2014-08-16 Dominique Lasserre Valama: Fix plain build system. * Set buildpath in preparation method. * Use base method in BuilderCMake and BuilderAutotools as well. 2014-08-15 Dominique Lasserre Valama: Workaround to support fullscreen again. * Workaround via hidden button to fix regression introduced by a720b9a. It's now possible to get out of the fullscreen mode again (keybinding only). Valama: Simplify menu. * Remove most nested parts. * Use new menu button for extra widgets (reporter, search, etc.). 2014-08-14 Dominique Lasserre Valama: Fix build system selection in welcome screen. * Support plain build system. * Select default build system from template and enable library checkbox. * Create less new objects (reuse and avoid unnecessary creation). 2014-08-13 Dominique Lasserre Valama: Fix resetting of project settings. * Support reset of is-library and buildsystem selections. CMake: Synchronize buildsystem files. CMake: Fix xgettext comment extraction. * Adjust changed gschema.xml path. 2014-08-12 Dominique Lasserre Valama: Move toolbar and menu into window header. * Saves some space at the top but menu is too clunky, needs to go into more buttons and a larger drop down menu, less nested menu items. * Split into left and right toolbar. Support Valama building Valama * Remove packages with custom vapis (config, gladeui-2.0) from package list and add compiler flags manually. Travis: Exclude valamang branch from testing. Guanako: Search for pkg by name. Valama: Don't add same vapi twice. Guanako: Support custom vapis as packages. Support custom vapi for package. * Support empty extracheck with just a custom vapi. Fix debug output (remove comma at EOL) Add prefix (Guanako/Valama) to console messages. * Fix some message types (error, warning). 2014-08-04 Dominique Lasserre Synchronize CMake buildsystem. Fix gee versioned dependency in valama.vlp. 2014-08-02 Dominique Lasserre Project file: Support choices in extrachecks * Simplify valama.vlp a bit. * No nested choices supported yet. 2014-08-01 Dominique Lasserre Drop gdl < 3.8 support. - Current version in Debian unstable is 3.8 so still keep support for this version (current gtk+-3.0 version is 3.12). CMake: New libvala, old gtksourceview support * Support libvala >= 0.24 with gtksourceview 3.10. travis-ci: Easily add PPA - Install software-properties-common to use add-apt-repository command. Update installation description. - Use libvala-0.24 as default, update travis-ci accordingly (use PPA again). Update Valama vlp file. - Set defines according to CMakeLists.txt. - Update extra vapi paths. Update versioned dependencies. - gtk+-3.0 and gtksourcview-3.0 >= 3.10 (from 3.4) CMake: Search for global valac first. - Fix regression introduced by 19347ef. Don't try to find a smarter solution than the OS. Fix travis build and some gdl CMake checks. - Use Ubuntu 14.04 to test build (run distribution upgrade before test). - Add gtk+-3.10 support for valac 0.20. - Use vapidir option to overwrite system vapis (instead of custom vapi which may conflict with system vapi coming as dependency). - Use own directory for each extra vapi to not pull in all vapis. - Support old gdl versions again (fix regression introduced by 9177d13). 2014-07-31 Linus Seelinger Merge pull request #152 from inizan-yannick/master Specify Gtk.SourceView in code to avoid conflicts with new Vala.SourceView 2014-07-31 inizan-yannick update .travis.yml update .travis.yml update README.md with newer packages. update .travis.yml with newer repository. Specify Gtk.SourceView in code to avoid conflicts with new Vala.SourceView. 2014-05-28 Linus Seelinger Merge pull request #147 from inizan-yannick/master Update Guanako for vala-0.26 2014-04-02 inizan-yannick define VALA_0_26 for Vala.ArrayType 2014-03-31 inizan-yannick fix findVala.cmake correctly 2014-03-28 Linus Seelinger Merge pull request #144 from inizan-yannick/master remove unsupported vala versions 2014-03-26 inizan-yannick fix define variables 2014-03-25 inizan-yannick remove unsupported vala version, vala-0.26 added. fix #128. fix super source view for Gtk >= 3.12. translations updated. 2014-03-21 inizan-yannick update french translations. 2014-03-20 Linus Seelinger Merge pull request #142 from inizan-yannick/master Initialize buildpath for each buildsystem 2014-03-15 inizan-yannick Initialize buildpath for each buildsystem, fix the bug in cmake.vala, at preparate function. 2014-03-11 inizan-yannick Merge remote-tracking branch 'upstream/master' 2014-03-07 Linus Seelinger Merge pull request #139 from august0815/elemntary Elementary template 2014-02-23 Mario ver. 0.1a . . Ver.0.1 Elementary Template 2014-02-10 Linus Seelinger Valama: Do not complete after curly brackets 2014-01-26 Linus Seelinger Merge pull request #135 from steveno/master Add some missing dependencies on Fedora 20 2014-01-26 Steven Oliver Add missing dep to Fedora instructions Need package to convert icons Add missing dep to Fedora instructions 2014-01-21 inizan-yannick consider posix as package. fix build system choice: builder is correctly set. 2014-01-21 Linus Seelinger Merge pull request #134 from inizan-yannick/master package selection dialog updated. 2014-01-21 inizan-yannick fix CMakeLists.txt for valadoc Add library support for Autotools (no for cmake), with a template. ProjectSettings: add a CheckButton for library project, and a ComboBoxText for build system selection. WelcomeScreen: add a package selection dialog. 2014-01-20 inizan-yannick choose build system in project wizard. package selection dialog updated. don't include package if .pc file is missing. 2014-01-20 Linus Seelinger Guanako: No null sourcerefs in refactoring method 2014-01-19 Linus Seelinger Valama: Fixed instability caused by last commit 2014-01-17 Linus Seelinger Valama: Highlight other references of symbol at cursor 2014-01-11 Linus Seelinger Valama: Hopefully fix incomplete quit (#133) Valama: Remove GTK < 3.10 support Merge pull request #130 from inizan-yannick/master 'icon_size' properties must be set with an enum, not int with lastest vala versions. 2014-01-05 inizan-yannick Support of GladeUI construction. Support of Autotools. Addition of templates for Gst Audio/Video. 2013-12-25 Linus Seelinger Guanako: Use LinkedList instead of ArrayList where possible 2013-12-24 inizan-yannick 'icon_size' properties must be set with an enum, not int with lastest vala versions. 2013-12-23 Linus Seelinger Valama: Redesigned project settings Valama: Lots of cleaning up, introducing GTK 3.10 * Reworked welcome screen (clean internal structure), new design using GTK 3.10 * Removed old dialogs * Using GtkHeaderBar * Preparing build system selection 2013-12-16 Linus Seelinger Guanako: Improved boolean expression completion 2013-12-11 Linus Seelinger Valama: Removed old dialog, clearing search entry clears marks and results 2013-12-09 Linus Seelinger Valama: fix #114, thanks to inizan-yannick 2013-10-12 Linus Seelinger Merge pull request #118 from ppareit/master Fix search for selected text when search window is already open #42 2013-10-11 Pieter Pareit Fix issue #42, search for selected text when search window is already open. 2013-10-07 Linus Seelinger Further work on reference finding Valama: Do not autocomplete after semicolon (Fixes #119) 2013-10-04 Linus Seelinger Guanako: Improved reference finding 2013-10-02 Linus Seelinger Little reference fix, removed obsolete z_position from clutter display Fixed some collateral damage of earlier changes 2013-10-02 Dominique Lasserre Update README: clutter-gtk-1.0 dependency 2013-10-01 Linus Seelinger Forgot a file. Well done, linus, well done. Experimental project structure viewer using Clutter * Added clutter-gtk dependency (uncritical, as llvmpipe can kick in if there is no gpu acceleration) * Added experimental structure viewer (shows (some) references, drag&drop) * Experimental CodeVisitor implementation 2013-09-29 Dominique Lasserre Fix build on gdl < 3.5.5, valac >= 0.20 systems (travis). * Fix compare_version_strings handling for gdl/gtk. Fix gdl and gtk version checks. * Adjust gdl check to 3.3.91 because of post release bump to 3.4. * Fix check for valac >= 0.20 and gdl < 3.5.5 (regression). CMake: Fix version string comparison (by James Bigler). * Fix compilation on gtk+ >= 3.10, gdl >= 3.10, etc. Update CMake checks for gee-0.8 >= 0.10.5. Merge pull request #117 from inizan-yannick/patch-1 Version 0.10.5 of gee-0.8 or newer is needed (read_only_view of MultiMap). Thanks to Yannick Inizan! 2013-09-28 inizan-yannick Update README.md version 0.10.5 of gee-0.8 or newer is needed 2013-09-23 Dominique Lasserre Add Ubuntu installation instruction. Closes #116 2013-09-19 Dominique Lasserre Case insensitive ordering of packages list. Guanako: Add initialization method for static members. Guanako: Cache vapi dirs. ProjectBrowser: Display directory and document icons. * Just a little eye candy, project browser needs to be reworked. 2013-09-16 Dominique Lasserre CMake: Synchronize build system. Merge jakobwesthoff/Vala_CMake * Add option for conditional compilation. (Jörg Thalheim) - Update CMakeLists and guanako/CMakeLists.txt accordingly. * Fix ARGS_DIRECTORY handling. (Gary Kramlich) 2013-09-13 Dominique Lasserre Template, build system caching and improved loading. * Support multiple template and build system directories. * Also search in $USERDATADIR/valama/{templates,buildsystems} for templates / build systems. * Cache available packages (Guanako), locales, templates and build systems and provide read only view on them. (There is a bug for maps, related to #666728) * Provide default (builtin) empty template. * Support creating ValamaProject/ProjectFile from data string. 2013-09-12 Linus Seelinger Initial line-by-line execution support * Guanako: Frankenstein: Line-by-line breakpoints. Still a little stupid, but works unless there are multiple statements per line. * Valama: GUI for line-by-line execution Initial reference finding support * Guanako: Support finding references of an object * Valama: Made search widget more flexible, show reference finding results Initial refactoring support * Guanako: Support iterating through expressions * Valama: Allow jumping to a symbol's declaration * Valama: Improved current file structure behaviour Guanako: Non-alphabetic prefixed proposals first Guanako: Initial support for embedded statements, escaped values Valama: Made completion thread more reliable Completion improvements * Guanako: Support return statements, various minor improvements * Valama: Determine current line in a more intelligent way (supports multiple statements in one line etc) 2013-09-06 Dominique Lasserre Guanako: Don't crash on circular deps, keep ordering of deps. Closes #113 * No performance optimizations. get_package_dependencies_int could include package_name in deps list to save some runtime performance. Additionally add_packages code could be cleaned up. Shouldn't be a bottleneck though because package list + deps are not that big. * datatype_to_string: Track InvalidType with conflicting vapis. Currently no hint on user interface. Run SymbolBrowser update only once when multiple pkgs were added. 2013-09-06 Dominique Lasserre Merge pull request #110 from inizan-yannick/master Use combobox to add (multiple) new packages. Thanks to Yannick Inizan! Runtime of selecting ("commiting") new packages is always O(n) (where n is maximum number of packages). This shouldn't be an issue because there aren't too much packages but can be improved by keeping a list of selected packages with O(mlog(m)) performance costs by inserting/deleting (where m is number of currently selected packages) and O(1) costs with "commiting" new packages. 2013-09-06 inizan-yannick package selection by checkbox, change accordingly project.vala 2013-09-05 Dominique Lasserre Guanako: expression_to_string(..) fallback to to_string() * Fixes subset of #112. 2013-09-04 Dominique Lasserre Reduce buffering of application/build output. * Use smallest possible buffer size which is G_MAX_CHAR_SIZE = 10. Unfortunately this does not completely disable buffering. Related to #15. Possibly it's better to use a vte-terminal instead of spawn-async + textview. Additional advantage is to directly have a terminal available on build errors. 2013-09-02 Dominique Lasserre New gdl-3.0 release: 3.9.91 (update defines) Merge pull request #111 from placidrage/master Fixed finding valac with version in filename. Thanks to Joe R. Nassimian! 2013-09-01 Joe R. Nassimian Fixed finding vala with version in filenames Build failed on systems when version was appended to valac-. The problem was solved by using the second and more complete definition of the find_program command. http://cmake.org/cmake/help/v2.8.8/cmake.html#command:find_program 2013-09-01 Linus Seelinger Guanako: Improved array completion 2013-08-31 Linus Seelinger Guanako: Fixed symbol accessibility outside methods 2013-08-29 Linus Seelinger Valama: * Fixed method signature remaining visible * Update search results even if all files are included (newly openend files must be included, too!) 2013-08-27 Dominique Lasserre Push transifex configuration. CMake: Enable DOCS with VALADOC_* enabled implicitly. travis-ci: Remove quiet options to see build failure. Add travis-ci hook. Use ui directory for ui files by default. Support empty directories by default. * Already support it while parsing vlp file. 2013-08-26 Dominique Lasserre Fix deprecated gsettings path. Closes #108 2013-08-25 Dominique Lasserre Update README: Name IRC channel Fix guessing of source language. Thanks to Julien Legras. 2013-08-24 Dominique Lasserre WelcomeScreen: Use ~ as abbreviation for home directory. Use absolute path to save recent project files. CMake: Support imagemagick, drop manpage compression, quoting, VERBATIM * Support imagmagick's convert as fallback if rsvg-convert is not available. * Drop manual page compression. * Quote all strings. * Use VERBATIM for all custom commands. * Use additional (version independent) vala/vapi vapidir for valadoc Fix UiTemplateSettings FileChooserButton bookmarked locations. * Fix also deprecated ui_create_project_dialog. Update cmake/project.cmake (only indentations). remove_recursively: Improve error messages. * Show exactly which file failed with which error. * Cmake buildsystem: Show distclean error in build output window. Reset cached not available defines with distclean target. Remember new and already checked but not enabled defines. * Recognize already enabled defines from bare Ganako CodeContext. * Remember already checked (but not enabled) defines. Currently no possibility to force recheck (which e.g. makes sense after installing some libraries on system after launching Valama). 2013-08-21 Dominique Lasserre CMake: Synchronize buildsystem. 2013-08-20 Dominique Lasserre CMake: Improve gsettings installation. * Verify schemas (only with LOCAL option). * Copy schemas to build directory when origian schemas changed (only with LOCAL option). 2013-08-20 Linus Seelinger Guanako: *word does not allow empty string any more; work on completion outside methods 2013-08-19 Dominique Lasserre Merge pull request #107 from juliomino/master Add fullscreen support. Closes #89. Thanks to Julien Legras! 2013-08-19 Julien Legras Add fullscreen support (valama Issue #89) 2013-08-17 Dominique Lasserre CMake: Copy ui files to build directory whenever they changed. 2013-08-15 Dominique Lasserre CMake: Copy ui files to build directory. 2013-08-15 Linus Seelinger Guanako: Completion for classes and namespaces declaration; Fixed a possible crash 2013-08-14 Linus Seelinger Valama: Fix occasional crash caused by invalid error positions Guanako: Little performance tuning/cleanup in get_symbol_at_pos 2013-08-12 Dominique Lasserre Fix build error: Remove uninstall target of Guanako 2013-08-11 Dominique Lasserre Indent cmake/project.cmake Merge jakobwesthoff/Vala_CMake * Check for valac-Major.Minor too so this work on more distros. (Tomáš Chvátal) Synchronize CMake templates. Basic support for ui/glade files. 2013-08-11 Linus Seelinger Valama: Keep completion proposals open after selecting one Guanako: Little fix for autocompletion of subroutine parameters 2013-08-02 Dominique Lasserre Update README (new libvala version supported) * Remove hint to edit cmake/project.cmake and cmake/guanako.cmake manually because this should now work without any changes. Use proper solution for #695972 since gdl >= 3.8. * stock-id update works well since gdl 3.8.1 (add new define GDL_3_8). Include mnemonic strings fully into gettext string. * Important because difference of word starting is locale dependant. 2013-08-02 Dominique Lasserre GTK_STOCK transition (partially). * Since Gtk 3.10 GTK_STOCK is deprecated so replace it. See also migration document[1]. Some stock values are currently hardcoded (only transitional): - libgdl has not deprecated stock items yet so keep using Gdl.DockItem.with_stock. There is Gdl.DockItem.with_pixbuf_icon but perhaps there will come an icon_name property. - libgtksourceview has changed with 3.9.3 which is currently not installed on my system, so wait for proper transition. Some icons are gone from dialogs. If they are important they have to be added manually. NOTE: Do not forget to track theme changes and change icons loaded by Gtk.IconTheme.load_icon. [1]: https://docs.google.com/document/d/1KCVPoYQBqMbDP11tHPpjW6uaEHrvLUmcDPqKAppCY8o/pub 2013-08-02 Dominique Lasserre Support Vala 0.21.1 (libvala-0.22). * Fix recognition of odd minor version numbers. Tests: Invalid project files. 2013-07-31 Linus Seelinger Valama: Working on menus * Added compile dropdown menu in toolbar * Added a separator in view menu * Cut out some middleman functions 2013-07-24 Dominique Lasserre CMake: Vala compile rules improvement. * Neither recompile all Vala source files twice nor recompile all C files every time only a single Vala file has changed. 2013-07-21 Dominique Lasserre Merge pull request #102 from Overscore/master Update French translation. Thanks to Overscore! 2013-07-21 Overscore Update fr.po 2013-07-20 Dominique Lasserre Drop FixedTreeSet. * Every distribution should no provide a fixed libgee version. Drop gee-1.0 support. 2013-07-20 Dominique Lasserre Extend symbolsig_to_string (no failures with all vapis). * No failures with currently supported symbols (methods and classes). Full coverage of distributed vapis for those symbols. NOTE: Though the symbolsig_to_string method (and submethods) becomes difficult to maintain for different (atm 3) outputs (and we support currently only a limited subset of symbols) a small AST (per symbol) could be a scalable solution. A small parser can then format the symbol's AST representation with markup etc. 2013-07-20 Dominique Lasserre WelcomeScreen: Place logo with CSS. Fix double click event. * Use CSS definition to place logo to easily add additional UI elements at the same place (e.g. buttons etc.). * Open project with button release not already press event. 2013-07-19 Dominique Lasserre WelcomeScreen: Completely work with ids to switch creation steps. 2013-07-12 Dominique Lasserre Fix po files. WelcomeScreen refactoring (2). * Use TemplatePage class for project settings. * Remove deprecated and unused WelcomeScreen.add_page. All new template pages now has to use TemplatePage as base class. WelcomeScreen refactoring. * Use TemplatePage class for file chooser (opener). * Add some symbols to TemplatePage. Handle request_close in main routine. * Don't save project file twice. 2013-07-09 Dominique Lasserre Update README: ldconfig call on system wide installation 2013-07-09 Dominique Lasserre Cover multy byte chars for root path. * Add some tests: - utf8_paths - bytecharindex * Make some public methods static. * Case insensitive file extension for template images. (Manually permute possibilities.) 2013-07-08 Dominique Lasserre Run symbol update threaded. 2013-07-06 Dominique Lasserre Move symbol to string conversion to Guanako. * Build complete symbol (e.g. method) signature from Vala.Symbol. Don't use Vala.DataType.to_qualified_string() to be more flexible. E.g. add some markup or line breaks later etc. * Currently only method signature is complete. 2013-07-02 Dominique Lasserre Use rsvg-convert instead of imagemagick to convert svg to png. Synchronize CMake build system files. 2013-06-30 Dominique Lasserre Fix crash introduced by 8c0cd64. * Possibility that SourceLocation.column is after EOL so check it too. Support sorting in symbol browser. 2013-06-29 Dominique Lasserre UiSourceViewer: Workaround if error bounds out of (visible) range. * Thanks to Florian Brosch. Code is copied from a vala editor draft. UiReport: Fix source code jump. * Fix regression introduced by 2c1ff3b. Get rid of duplicate data structure (list of errors) and store Reporter.Error directly in ListStore (which requires the Reporter.Error to be an GObject). 2013-06-28 Dominique Lasserre Fix tests if guanako is not already installed. Add one missing project file test to cover all relevant branches. Synchronize valaparser from 6747b2f7. 2013-06-28 Dominique Lasserre Add some ProjectFile tests. * ProjectFile tests: - get_absolute_path - get_relative_path - Loading different project file versions. * Note: Those tests require the test program to be executed directly from tests/ directory. * ProjectFile constructor now throws LoadingError on failure. * CMake: - copy_dirs: Recursively copy directory content. - get_files_recursively: Recursively list all file content in specified directory 2013-06-27 Dominique Lasserre Continue restructuring project management related files. * project.vala | project_file | package_managment | buildsystem/base ------------|-------------------------------------|----------- | | package_exists <|------ | | package_flags <|------ -------|-----------------|>VersionRelation | -------|>VLP_VERSION_MIN | | -------|>LoadingError | | ProjectBuilder: Fix exit code. 2013-06-27 Dominique Lasserre Almost full support for plain build system. * Defining (and lookup) of const strings (e.g. PACKAGE_NAME, etc.) is not implemented yet. The lookup is perhaps a Guanako feature. * NOTE: Plain build system does not cache anything at all so it's not recommended for anything than very small projects. 2013-06-25 Dominique Lasserre UiReport: Fix synchronized sorting. Valama: guess_pkg_by_define: Don't display error on false try. CMake: gsettings_install: Fix LOCAL option. Closes #94 * Fix "improvement" of ed53979a. 2013-06-24 Dominique Lasserre UiReport: Support sorting of columns. Disable stylechecker. 2013-06-22 Dominique Lasserre Gettext.cmake: Use parent directory as default working dir. Fix build system file display. 2013-06-22 Linus Seelinger Valama: Set buildsystem after loading 2013-06-22 Dominique Lasserre Fix project file update on package changes. * Fix object permissions for ProjectFile. Though those are not perfect because Collection.add, Collection.remove etc. is still (and was already) possible. So in future use read_only_view to only allow read only access (for plugins) to some collections. * Use TreeMap instead of TreeMultiMap for packages map. No hints in source code found why a multimap is necessary. It does not make sense because package names are distinct. Multiple same packages with different versions won't work anyway (name clashes). * Project.add_package_by_name now returns null if package was already added to project. Fix docstrings. Closes #93 2013-06-21 Linus Seelinger Valama: Major clean-up in project.vala. Looked like Sauerkraut before. Writing back package changes will be fixed later. Valama: Removed obsolete current symbol widget (completely, i hope) 2013-06-21 Dominique Lasserre CMake: Make tests target dependent of guanako and valama targets. * Fixes parallel build issue but not problems with single source files used by multiple targets. Reduce clutter template deprecated warnings. * One warning is still remaining: Actor.animate 2013-06-20 Dominique Lasserre Add tests (based on libgee tests). * Add tests for following methods: - comp_version - split_path (already fix some issues) * Use libgee's testcase.vala for some GLib.Tests abstractions. * CMake integration not completed because some files are required both for tests and also Valama executable itself. And some source files currently are compiled twice. This leads to some unnecessary recompile issues. * NOTE: Build system test features aren't used at all to keep tests independent of build system (but functionality is limited therefore). E.g. tests will completely fail on a single failure and it's not possible to disable tests without modifying source code (it's easy though). 2013-06-18 Dominique Lasserre Some string <-> VersionRelation abstractions. 2013-06-17 Dominique Lasserre Don't try to guess already enabled defines. Don't save custom_vapis back to project file if enabled by extracheck. Valama: Support custom vapis (project file). * Support package checks to enable defines based on package version and/or use custom vapis based on version (or independent of it). * Allow to disable dependency tracking for packages/vapis (project format change). * Guanako: - Add static method to get list of vapi/deps directories: get_vapi_dirs - Add static method to look for vapi/deps file: get_vapi_path, get_deps_path - Add get_vapis method to get used vapis (analogous to get_source_files). * Drop some macros: PIXMAP_DIR, VALA_VAPI_DIR, VALA_DATA_DIR Valama: Extend project format: defines, custom vapis * Incompatible with previous format. 2013-06-13 Dominique Lasserre CMake: Gettext (desktop files): Support build in source directory. 2013-06-11 Dominique Lasserre CMake: FindVala: Fix if no suitable vala version found. 2013-06-10 Dominique Lasserre Merge pull request #90 from cicku/patch-1 Fix Fedora dependency in README.md. Thanks to Christopher Meng! 2013-06-10 Christopher Meng Update README.md Fix the incorrect dep name. Note I'll package it soon. 2013-06-07 Dominique Lasserre Update image URL. 2013-06-02 Dominique Lasserre CMake: Support whitespaces in source path for intltool command. * Just use relative paths... 2013-06-01 Dominique Lasserre CMake: Gettext: Don't fail on if no desktop files or po files exist. 2013-05-30 Dominique Lasserre Update German translation. Update pot file. Update Readme. CMake: Fix gsettings file with non-absolute filename. CMake: Finish intltool gsettings/desktop file support. CMake: gsettings/gettext support. Requires intltool. Gsettings: Rename app.valama to apps.valama. CMake: .desktop file i18n support. Requires intltool. 2013-05-29 Dominique Lasserre Merge pull request #88 from Overscore/master French translation update. Thanks to Overscore! 2013-05-28 Overscore Update fr.po 2013-05-28 Linus Seelinger Guanako: Some completion def improvements (especially creation methods) 2013-05-28 Dominique Lasserre Fix build for gee-1.0. 2013-05-25 Linus Seelinger Guanako: Fixed local variables Guanako: Minor syntax def fixes; Propose all base types Guanako: Fixed variable completion 2013-05-25 Dominique Lasserre Update CMake buildsystem files. 2013-05-24 Dominique Lasserre Fixup German string. Add .gitignore. * Currently only ignore CMake build directory: build Merge pull request #84 from Overscore/master Update French translation. Thanks to Overscore! 2013-05-24 Overscore Fix up French translation 2013-05-24 Dominique Lasserre CMake: Improve Gettext support. * Fix some minor issues and make customization with xgettext options easier. 2013-05-23 Dominique Lasserre Guanako: Sync valaparser from upstream libvala. 2013-05-22 Dominique Lasserre Fix toolbar build and execute button labels. Closes #86 Update German translation. * Fixes one issue and merge into other files. Update pot file and add some gettext comments. * Merge translation files. CMake: Use pot target instead of pot_file. Guanako: Fix pkgconfig file. * Don't include {nocheck} packages. * CMake: Don't replace ${} vars in .pc file. 2013-05-21 Dominique Lasserre Update Readme: "Added" image 2013-05-20 Linus Seelinger Improved and solidified Frankenstein * GUI warning instead of crash when receiving wrong ID's from client * Force rebuild when changing stuff 2013-05-19 Linus Seelinger Various Frankenstein improvements * Highlight reached stops and timers * Remember selection * Avoid duplicate stops/timers * Unown DBus name on destructor (destructor does not get called on project change though) 2013-05-19 Dominique Lasserre Fix valadoc generation (strip {...} from pkg). Closes #82 Merge pull request #79 from Overscore/master French translation updates (eliminate fuzzies and fix mistakes). Thanks to Overscore! (multiple revisions rebased) 2013-05-19 Overscore Update fr.po Corrected fuzzies and other mistakes 2013-05-18 Linus Seelinger Guanako: Fixed FrankenTimers, corrected some stderrs 2013-05-18 Dominique Lasserre Fix project save/load cycle on non-en systems. * Make VersionRelation.to_string method return values locale independent. New version relations: AFTER (>) and BEFORE (<) 2013-05-18 Linus Seelinger Valama: Make Frankenstein instance dependent (using PIDs) fixes #75 2013-05-18 Dominique Lasserre Move fixup vapis from cmake/vapi to more general extravapi/. * Preparations to use custom vapis not only with cmake. 2013-05-18 Dominique Lasserre FrankenStein and plain build system improvements. * FrankenStein: - Catch all exceptions. - Use StringBuilder. - Use constant string for main block. * Plain build system: - Support defines and vapis. - Dynamically set glib target version. - Support "plain" as identifier (additionally to "valama"). * TODO: - Don't read entire files into memory on frankensteinification. This takes a lot of time (and memory). Only act on files where an action is required. - Run frankenstein initialization asynchronously. 2013-05-17 Dominique Lasserre CMake: Update gsettings_install documentation. * Btw.: uninstall target was added with 06ba881 . Update README (local gsettings installation). CMake: Install and compile gsettings schemas. * Execute installation/removal hooks (option). * Compile gsettings schema locally. (Use XDG_DATA_DIRS environment variable.) Fixup German translation string. Show error tags only for correct file. Closes #77 2013-05-16 Linus Seelinger Valama: Set Gtk Application to NON_UNIQUE (fixes #74) Valama: Added GSettings file, install target Valama: Introduce GSettings support; Remember window size 2013-05-16 Dominique Lasserre Update po/fr.po (unfuzzy some fuzzies). Handle error annotations with SourceViewer. Closes #66 * Move annotation code from Reporter to SourceViewer. * Draw on Guanako update and on new file. * Use init method in SourceViewer to connect signals. More descriptive label for project open and save menu items. Revert "Valama: Show error annotations immediately (closes #66)" This reverts commit d60c8501915404c9a1ad2878c36b5dd1f83d808a. 2013-05-16 Linus Seelinger Forgot a file Improved completion performance Valama: Show error annotations immediately (closes #66) 2013-05-15 Dominique Lasserre Build output: Intelligent auto scroll. 2013-05-13 Dominique Lasserre Valama: Improve build system integration over UI * Implement clean and distclean for cmake build system. * Add remove_recursively method (rm -rf). * Menu changes: * Project menu - Settings * Build menu: - Build: make - Rebuild: make clean && make - Clean build: make distclean && make - Clean: make clean - Clean all: make distclean * Run menu: - Execute - Stop 2013-05-10 Dominique Lasserre Merge pull request #69 from Overscore/master Fix French translation file. Update German translation and add some gettext comments. * CMake: Fix the comment feature. Use // TRANSLATOR: ... 2013-05-08 Overscore Update fr.po Update fr.po 2013-05-08 Dominique Lasserre Merge pull request #67 from Overscore/master French translation update. Thanks to Overscore! cmake: Add option "UPDATE_PO" to disable .po update. * Option is enabled as default. Turn it off with: cmake -DUPDATE_PO=OFF .. * gettext_create_translations: Add boolean config value NOUPDATE to handle this functionality. 2013-05-08 Overscore Update fr.po 2013-05-07 Dominique Lasserre Set key bindings to F5, F7 to run/compile. Closes #65 Update .pot file. Support directory creation in project browser. * Set tooltips to project browser buttons. 2013-05-06 Dominique Lasserre Update pot file. 2013-05-05 Dominique Lasserre Detach dock layout handling from MainWidget instance. * Preparation for #64. Improve file creation dialog and removal of files. * Create file dialog: - Name directory where to create file. Fixes #61 (2). - Support path in filename (create missing directories Automatically). - Directly open created file. * File removal: - Run guanako source file removal threaded. - Don't try to close buffers multiple times. 2013-05-04 Dominique Lasserre Valama: Support default files to open at initial project loading. * "opened-files" key is supported for project files but won't get rewritten to file. So this is only relevant on very first project load up (which is loading from template). Partly solution for #61 (1). TODO: Support this for templates only and not for normal projects. * No layout support for srcdock at the moment but this would fully fix the #61 (1) issue. 2013-05-02 Dominique Lasserre Guanako: Allow parallel read-only access to context. Closes #50 * Use internal CodeContext to a allow parallel read-only access. * refs are not necessary to modify context so don't use them. 2013-04-30 Linus Seelinger Valama: Remove loop_update; Guanako: Fixed a loop in proposal sorting Guanako: Support numbers and strings as parameters Valama: Improved current symbol source annotation Guanako: Initial commit of rebuilt syntax file 2013-04-30 Dominique Lasserre Quit MainLoop loop_update on quitting application. Close #55 CMake fine tuning. Fix some issues with valadoc and CMake. * Enable documentation as default for release builds (if valadoc is available). * Support multiple independent documentation builds inside a single CMake project. * Avoid manual valac arguments and add library functionality to UseVala.cmake. 2013-04-29 Dominique Lasserre Update README and don't fail if imagemagick is not installed. * Add Fedora dependencies. Add mime file (.vlp). * Run e.g. `update-mime-database /usr/share/mime` to update the mime database. Add manpage. Run flow analyzer also on file update. * Does not fix #49 fully but all warnings are shown. Existing problem: Due to the vanish_file limitations methods not used in updated file but in other files are treated as 'unused methods'. Old symbols don't get removed from Vala AST so with a file update the old new methods aren't used (apparently). Fix Pair. * Correctly inherit Pair from Gee.Map.Entry and not Gtk.Entry... 2013-04-28 Linus Seelinger Valama: Allow variable offset in source annotations. * Used to avoid overlapping error annotations. Valama: Fixed wrong insertion if the user is faster than the autocompletion 2013-04-28 Dominique Lasserre Fix comp_version and also check for epochs. * Rename comp_proj_version to comp_version. 2013-04-26 Linus Seelinger Valama: Show completion proposals on whitespaces if the line is not empty 2013-04-26 Dominique Lasserre Run flow analyzer check on initial run. Closes: #49 2013-04-25 Linus Seelinger Valama: Made completion run thread more reliable Valama: Source annotations horizontally follow the scrolled view 2013-04-23 Dominique Lasserre Fix setting of defines. * Guanako: New method commit_defines() to commit new defines to context. (Might be not useful at all.) 2013-04-22 Dominique Lasserre Guanako: set_reporter: Fix regression for Reporter subclasses. Guanako: set_reporter: Typechecking enabled. 2013-04-21 Linus Seelinger Valama: Source annotations: Fixed a warning, calculate height from actual text size 2013-04-21 Dominique Lasserre Reporter: Make errlist virtual. * Use GObject class constructors to make this working (we use GObject.new to create new instances). 2013-04-20 Linus Seelinger Valama: Show current symbol info as annotation. Allow persistent annotations. 2013-04-20 Dominique Lasserre Add row and column information to source view. Reporter: Reset errlist with new instance. Closes: #48 2013-04-19 Linus Seelinger Valama: Animated SuperSourceView annotations, allow different colors Valama: Show highlight animation when jumping to an error/warning Valama: Support source code annotations (e.g. for error texts) * Abstracted animations in SuperSourceView * New animation type: Annotation * Integrated in error reports 2013-04-18 Linus Seelinger Valama: SuperSourceView: Draw animations on top of the text Valama: Introduced SuperSourceView to enhance GtkSourceView * Currently, SuperSourceView can show a cairo-based highlighting animation on specific line. * Integrated this in the search widget 2013-04-16 Dominique Lasserre Fix 3.6.2 > gdl-3.0 >= 3.5.5 with valac < 0.19. * Gdl API should now fully supported since 3.4 with valac >= 0.18. Improve defines heuristic. * Now usable (works for all defines in Valama project). * Still issues after enabling new defines (and after remove defines). 2013-04-15 Dominique Lasserre Fix gdl defines. Closes #47 * gdl API change came with 3.5.5 and not with 3.6.2. Fix compilation for valac >= 0.19 and gdl < 3.5.5. Versioned defines guessing preparations. * Guess OS platform (Unix/Windows). Set during compile time with CMake. Support for gdl switcher hacks with new upstream version. * New gdl version currently not released (only in master). * Switcher hacks are grip showing/hiding and some tab style properties. 2013-04-12 Dominique Lasserre Fix valadoc generation. * Forgot to enable defines also for valadoc... 2013-04-08 Dominique Lasserre Merge pull request #46 from uzytkownik/master Don't force installation into /usr. Thanks to uzytkownik. 2013-04-08 Maciej Piechotka Don't force the installation into /usr 2013-04-08 Dominique Lasserre Support gee-1.0 again. Remove deprecated Thread.set_priority. * Deprecated since glib 2.32. 2013-04-07 Dominique Lasserre Guanako: Make it more thread-safe. * Lock context on public read/write operations. Cmake: Extend find_package(Vala) macro and setup useful vars. * Setup with pkg-config information: - VALA_SHORTVER - VALA_LIBPKG - VALA_VAPIDIR - VALA_DATADIR - VALA_VAPIGEN - VALA_GEN_INTROSPECT - VALA_VALA_GEN_INTROSPECT * Use those variables to set Valama and Guanako constants to make build more generic. * Valama: Drop Config.VALA_DATADIR (if it is necessary use the value from Guanako directly). 2013-04-06 Linus Seelinger Guanako: Finally fixed array handling (I hope) 2013-04-06 Dominique Lasserre Guanako: Use own Vala.Reporter, support complete context update. * Move Valama.ReportWrapper to Guanako.Reporter and use derived Reporter class within Valama to display errors immediately (debug output). Guanako.Reporter holds persistent list of all Errors. * Fix complete update of context. * Guanako: Allow changing glib version (use set_glib_version then call update). * Valama: Update context after all defines were processed after initial buffer update. 2013-04-02 Dominique Lasserre Guanako: Set glib version with constructor. 2013-03-31 Dominique Lasserre Fix saving/loading ui/project meta information. 2013-03-28 Dominique Lasserre ReportWrapper: Add experimental warnings also to exp list. ReportWrapper: Support experimental warning type (workaround). * Dirty workaround by string lookup (for "are experimental" at the end). * ReportWrapper: Don't call Report.set_verbose_errors because verbosity is not used anyway. * Guanako: Support if set_report_wrapper was not called. SymbolBrowser: Simplify previous change. SymbolBrowser: Disconnect initial update handler correctly. * Note: Does not update new project symbols (after buffer changes). See: #40 2013-03-27 Dominique Lasserre Start Guanako update after setting new define (not working). UiSourceViewer: Add status bar to source items. * Syntax highlighting customization possible (not remembered over different sessions or even a buffer close/open cycles). 2013-03-27 Linus Seelinger Valama: Hide completion proposals on non-valid keys 2013-03-27 Dominique Lasserre Fix forgotten package_list and replace with packages.get_keys(). 2013-03-27 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Valama: Don't show completion proposals on space, delete etc. 2013-03-27 Dominique Lasserre Check package versions with pkg-config. * Check package versions with pkg-config and display detailed information in template selector. * Support removal of package choices (only individual packages at the moment). - Clear choice if empty. * Use TreeMultiMap for ValamaProject.packages list. That makes ValamaProject.package_list obsolete so remove it. * Escape all variable text in markup labels and use StringBuilder. 2013-03-26 Dominique Lasserre BuildSystem: Enable defines based on heuristic. * Currently very basic check only based on package name. No version and version relation check at the moment. * Guanako: Fix return value of add_define. * ValamaProject: Add helper method for guanko_project.get_context_packages(). 2013-03-26 Linus Seelinger Valama: Unified quit method 2013-03-26 Dominique Lasserre Add ValamaProject.buildsystem BuildSystem object. * Share the same build system over all modules. 2013-03-25 Linus Seelinger Valama: Made Valama a Gtk.Application 2013-03-25 Dominique Lasserre Fix removal of used defines. * Vala.Parser now builds separate define list for each Vala.SourceFile from scratch. BuildOutput: Hide info_bar at startup. 2013-03-25 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Valama: Added an InfoBar to build output 2013-03-25 Dominique Lasserre ValamaProject: Update used defines and emit signal on changes. * Note: Due to a bug in Guanako added defines won't get removed. 2013-03-25 Linus Seelinger Valama: Setting completion threads' priority to LOW Merge branch 'master' of https://github.com/Valama/valama Valama: Fixed search highlights 2013-03-25 Dominique Lasserre BuilderCMake: Fix issue when choice is not available on system. 2013-03-24 Dominique Lasserre Use Posix.kill to kill launched application. BuildOutput: Display application exit code correctly now. * BuildSystem: Show when command received signal. 2013-03-24 Dominique Lasserre Almost completed BuildSystem transition (regression). * Note: Application launch does not fully work with new design yet (regression). * BuilderPlain not tested at all. * Exit status fully supported (beside application launcher). * Error handling vs. return status not completed yet. * Minor fixes (e.g. close launched application when quitting Valama). 2013-03-23 Dominique Lasserre BuildOutput: Don't replace complete buffer with each newline. * Also only focus element one time. 2013-03-22 Linus Seelinger Valama: ARGH, NEVER USE STRUCTS!!! Syncing breakpoint sourcemarks and frankenstein line values finally works. * I simply replaced the struct I had used before by a class. Now assigning values back to Frankenstein works. No idea why. Structs are evil. 2013-03-22 Dominique Lasserre Build system abstraction: initialization * Only CMake initialization done. 2013-03-22 Linus Seelinger Valama: Keep breakpoint marks in sync with guanako's data 2013-03-21 Dominique Lasserre Guanako: Get list of all defines in source code. * NOTE: Heavy overhead by including a modified version of Vala.Parser and Vala.Scanner. See also #696325 2013-03-21 Linus Seelinger Forgot to add the file. Guanako: Added FixedTreeSet to work around a memory leak 2013-03-21 Dominique Lasserre Guanako add default defines (GLIB_X_Y, VALA_X_Y). Set LD_LIBRARY_PATH for local installation to find Guanako. 2013-03-21 Dominique Lasserre Save and load project meta information. * Save IdeModes state. Not fully working (hidden dock items due to state aren't restored after loading). Perhaps this should really go to the ui stuff. The xml loading (and saving) procedure is always the same so it would make sense to have an abstraction of it (entry point, etc.) or some helper methods. 2013-03-21 Dominique Lasserre Save user interface meta information. * Currently only locked state. Perhaps this should better go directly to layout.xml. Make Valama again compatible for gee-1.0. 2013-03-21 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Conflicts: guanako/guanako.vala Guanako: Allow aborting the old completion run (Should improve performance when typing on slower systems) 2013-03-21 Dominique Lasserre Replace deprecated contains with has_key. 2013-03-20 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Guanako: Completion runs packed in a class (Valama: Small symbol browser fix) 2013-03-20 Dominique Lasserre WelcomeScreen: Move clicked project to top. 2013-03-20 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Valama: Fixed and simplified symbol icon handling 2013-03-20 Dominique Lasserre Fix markup in Label.label issue. UiCurrentSymbol: Fix container removal of internal_widget. Sort recent manager list. Fix grid row of project folder location. Entry: Make error label optional. * Don't use label for project name in creation step. Later change the background color / border color of the entry. I didn't got this atm with css "background-color" (does only affect selected text background) or "border-color" does not change anything. Current symbol: Always display a label. * Show label before Guanako update finished. * Update display without delay (after computation is finished). Escape unknown markup input. Add view menu item for current symbol. WelcomeScreen: Allow opening of projects always. * Not only when recent list is not empty. 2013-03-20 Linus Seelinger Guanako: Working on arrays vs current symbol fix. Sorry for merge screw-up -.- Merge branch 'master' of https://github.com/Valama/valama 2013-03-20 Dominique Lasserre Add valadoc comments to WelcomeScreen. Refactoring WelcomeScreen: Make it modular. * WelcomeScreen is now completely modular. - Use a notebook for new project creation steps. - Fix some minor issues. - Change initial layout a bit (make it more compact). - Last page with project name and project location not optimal (doesn't look nice). Moved error label in own grid row to not extend the whole grid with an invalid character. - At the moment it is possible to add new pages with helper class TemplatePage or add widgets directly. The latter is more complicated because all the low level signal stuff has to be done manually and there are also other drawbacks regarding selection state. So most likely the widget possibility will be removed later. * Save/update recent manager information immediately (after project name change). Update list in WelcomeScreen screen. - Save information to ~/.cache/valama/recent_projects.xml (add .xml extension). * Order list of templates by name. * Scale template icon to 33x33. * Entry: Make default text of error label customizable. 2013-03-19 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Conflicts: cmake/project.cmake Introduced current symbol info widget; Fixed array completion * Guanako: Introduce current symbol stack * Guanako: Array handling fixed * Valama: Current symbol widget 2013-03-19 Dominique Lasserre Use stricter compiler settings withing Valama to don't miss warnings. 2013-03-18 Dominique Lasserre Build symbol browser after first Guanako update. * Show simple loading animation before Guanako update has finished. 2013-03-17 Dominique Lasserre Catch all errors. Don't hardcode element-*-16.png icons. Don't save project twice after switching back to welcome screen. ui_load_project: Save current project before loading new one. Show save dialog also when closing application. * Does silently save all buffers when close with window manager. Add show save dialog for modified buffers. * Only show dialog when gdl element is closed not with application quit. Use proper workaround for stock-id changes. * Thanks to Evan Nemerson for the proper solution: https://bugzilla.gnome.org/show_bug.cgi?id=695972#c1 2013-03-16 Dominique Lasserre Fix stock_id changes not recognized with new gdl-vapi. * Also add some comments which GNOME bug is involved where. 2013-03-15 Dominique Lasserre Fix closing and reopening of source items. Make first source item not closable. Fix closing of buffers and add some debug output. 2013-03-14 Dominique Lasserre Allow removal of all file types (source, build system, data). Reset welcome_screen to first grid when project load succeeded. Run the VIM syntax checker over comments and strings. Reduce I/O load. * Accumulate files for substitutions to seek only one time. * Also make sure the temporary file for the substitution does not exist already. Support substitutions in template. * Substitution is NOT save and can cause lots of unnecessary io operations. - At the moment only the basics are implemented. Necessary checks to generate temporary file and intelligent substitution accumulation for single files is missing but will come soon (see the new two FIXMEs). * Initialize all private setters in ValamaProject with constructor. 2013-03-13 Dominique Lasserre Don't update complete report widget on non-source files. * Reduce debug output on source_viewer.current_srcfocus changes. * Use current_sourceview_changed consequently instead of property emission. Generate dirs/files to save (automatically) only before saving. * Add lots of data files to .vlp. - Currently there is no check for valid plaintext files. * Allow creation of (sub)directories with ui_create_project (allow / and \). * Recursive directory lookup would be nice and shorten .vlp. 2013-03-12 Dominique Lasserre vlp: Automatically reduce separate files and prefer directories. * Try to avoid and use instead to shorten project file. * Fix get_relative_path null issue. * Use private _foo fields because ref is not allowed with properties. symbols and project browser: Use signals on package changes. Support data files. Closes #9 * Add support for data files. * All kind of files can now be added (newly created). Synchronize cmake buildsystem data files. 2013-03-12 Dominique Lasserre cmake: Distinguish between libs to link and to check. Closes #39 * Extend cmake integration and cmake code itself (ValaPkgs): Support {nolink} and {nocheck} options (and combinations {nolink,nocheck}). - nolink: Do not compile with cflags and libs. - nocheck: Do not check with pkg-config (implies nolink). Manually added packages have no option but the nocheck option will be added if there is no .pc file for those packages (exact_package_name.pc). Packages added as dependency of manually added packages have the option nolink except there is no .pc file. In that case the nocheck option is added. * List all packages in cmake/project.cmake. 2013-03-12 Dominique Lasserre Replace deprecated Map.contains with Map.has_key. Allow removal and adding of new packages over UI. 2013-03-11 Dominique Lasserre Correctly quote search patterns. Fix internal visibility state of dock elements and don't lock items. 2013-03-10 Dominique Lasserre UiSearch: Fix edge case if current buffer is null (no opened buffer). Differentiate between IdeMode hiding and manual hiding. Add workaround for gdl <= 3.5.5 for hidden (attached) dock elements. 2013-03-09 Dominique Lasserre Reload gdl-element visibility on layout changes. 2013-03-05 Dominique Lasserre Improve PkgChoice and PackageInfo correlation. * Add PkgChoice field in PackageInfo to easily switch between both data structures. * Again split up project loading in two parts: - Loading of project file. - Initilizing of project data (source files, completion etc.). * Make the partly loaded ValamaProject a field in ProjectTemplate. Later this will be used to fully load the project when selected. * Add (optional) description to package choice. * Fix ordering of PackageInfo objects (use custom compare_func). * get_choice: Also usable if Guanako project is not initialized. Version checks are still missing and CodeContext check is not necessary. 2013-03-04 Dominique Lasserre Use %u for formatted enum value output (bug_msg). Allow versioned package dependencies (at the moment only internal). cmake: Dynamically set glib version. cmake: Add gdl-3.0 vapi from valac 0.20. * Fix issue with old vapi and new gdl version: gdl >= 3.6.2 and valac <= 0.18 * Only use local vapi if necessary. Make CopyRecursiveFlags enum a Flags enum and fix a size count issue. Remove debuglevel option and allow optional argument for --debug/-d. 2013-03-03 Dominique Lasserre Detailed template information in UiTemplateSelector. * Add accels to UiTemplateSelector: "i" to show info and "Esc" to go back to template list. * Add Vala version information to template (optional). * Add long description to template (optional). Long description supports Pango markdown formatting. * Hide build output progressbar at the beginning (fixes dirty workarround). * Wrap long lines and add some comments. 2013-03-03 Dominique Lasserre Hide build output progressbar and stretch it to dock item width. 2013-03-02 Dominique Lasserre Display text output with monospace font. Fix some hide/locking issues and save layout before Gtk.main_quit. Improve xml file parsing, better error catching. * Easily use locales in template file. * Fix package display if started directly with .vlp. * Add option --force-old to don't fail immediately if .vlp or .info file version is too old. * Template info widget (inplace) is in progress. 2013-03-02 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Valama: Moved get_available_packages to Guanako; Show missing packages in template selector 2013-03-02 Dominique Lasserre Reduce line length in source file. Valac warnings reduced (unused variables removed). Fixup docstrings. UiElement: Track visibility and share status over connected items. * Add menu and toolbar helper methods for UiElement show/hide elements. * Add all items to view menu. * Allow all items to close. Track visibility of dock_item (UiElement). * Use this with UiSearch and toggle elements. 2013-03-01 Dominique Lasserre Reset from lock/unlock signals with saved state. Don't execute show_search signal handler multiple times. Closes #33 * Handler gets only executed if status really has changed. Use internal state variable to track dock_item state. Readme: no need to manually edit cmake files for gee/libvala. 2013-03-01 Linus Seelinger Valama: App output uses unified channel readed Merge branch 'master' of https://github.com/Valama/valama Valama: Improved/simplified build output 2013-03-01 Dominique Lasserre Replace built-in-directive VALA_X_Y with custom VALAC_X_Y * Because built-in is only for one version (==) and custom variant is >=. 2013-02-28 Dominique Lasserre Allow package alternatives (extend vlp). * Currently only under the hood (no gui option). * Allow gee-0.8 or gee-1.0 and libvala-0.18 or libvala-0.20. * Fix cmake issues with local Guanako vapi (globbing and relative path issues). 2013-02-28 Linus Seelinger Valama: Search: Selected text as default search Merge branch 'master' of https://github.com/Valama/valama Conflicts: src/ui/search.vala Valama: Improved search, added current_sourceview_changed signal * Search: Added title toolbar and current/all files button * SourceViewer: Added current_sourceview_changed signal that only gets emitted when the current source file is actually changed 2013-02-28 Dominique Lasserre Update required version information. Clean up preprocessor directives and some obsolete cmake options. * Make use of built in defines VALA_X_Y. * Use LIB_X_Y instead of LIB_LESS_X_Y (now >= X_Y instead of < X_Y). * Output some warnings in special not recommended library version situations. * Fix gdl-3.0 <= 3.6.2 and vala <= 0.20 issue. 2013-02-27 Dominique Lasserre Make search widget toggable with menu item or toolbutton. * Add new signal "show_search" in UiSearch to synchronize Button and menu item. * Add menu item for gdl grip hide/locking. * Add accelerators for gdl grip hide/locking and search show/hide. * Add -DGDL_LESS_3_6 to decide between new is_closed() or old flags field. * Standardize menu naming (item_MENUPART_NAME). 2013-02-27 Linus Seelinger Valama: Added application output widget 2013-02-27 Dominique Lasserre Name gnome-icon-theme-symbolic as dependency. 2013-02-27 Linus Seelinger Valama: Added search button. Accelerator does not work yet. 2013-02-27 Dominique Lasserre Make GLib a standard using directive (guanako). 2013-02-27 Linus Seelinger Valama: Recompile after mode change Valama: Improved build handling (auto-build before launch if necessary) Valama: Switched accelerators to GDL constants; Added accelerators for building/launching (F keys don't seem to work??) Valama: Cured Valama's paranoia by correctly handling .vala vs .vapi; minor warning fixes 2013-02-26 Linus Seelinger Valama: Added method to focus a Gdl.DockItem; Auto-focus build output Valama: Fixed welcome/main screen switching 2013-02-26 Dominique Lasserre curfilestruct: Check all for all accessibility types (e.g. protected). 2013-02-26 Dominique Lasserre Improve UiReport. * Add toolbutton to switch between errors of single file and errors of whole project. Rebuild list only if needed. * ReportWrapper: Also track deprecated elements and notes. Use two lists: One internal list to build up new results and one public list. This will keep the public list in consistent state. * Add new signal guanako_update_started and emit right before guanako update. * Add new (temporary) option --debuglevel. Currently valac errors have level 2. * Todo items: - Currently there is no difference between experimental and normal warnings. Could be difficult to map SourceReference to CodeNode (which is needed to get exp info). - Result may not be sorted (by lines or files). Set or Hash->Set may help. - Currently no gui element to filter (possibility is provided with flags enum). - Use -d/--debug with an optional argument and replace --debuglevel. * Problems: - Vala context update behaves very differently in producing errors when doing small changes in a single file. 2013-02-26 Dominique Lasserre Improve gdl (un)locking capatibility integration. * Improve UiElement class. - Drop element_name field and replace it with generic get_name() method. - Connect locking and unlocking signals directly within base constructor. - Add (un)locking signals to MainWidget. In order to connect from UiElement to MainWidget, split initialization in two parts: * The first part builds up base stuff like main dock, main menu, main toolbar. * The second part initialize alle UiElements, menu items and tool buttons. This step will be the plugin loading part in future. - Add option to disable (un)/locking capatibility by setting locking field (use this with UiSourceViewer); * Make IdeModes enum a flag enum to combine multiple values easily. Add some helper methods. * Change ProjectBrowser label to currently used project. * Drop no longer needed UiElementPool. * Work arround gtk issue with Widget.remove assertion. * Reanable menu. * Use standardized names for gdl items (wdg_*). * Add some docstrings. 2013-02-25 Linus Seelinger Valama: Hide breakpoints widget when not in DEBUG mode Valama: Improved GUI - general gnomeification ;) (Loosely following design proposal https://live.gnome.org/Design/Apps/IDE) * Deactivated menu bar (Once the about dialog is added to the welcome screen, it should be obsolete) * Allow returning to welcome screen (Makes open project button obsolete) * Initial work on a GUI lock (GDL still causes some drawing trouble) * Abstracted UIElements' public widget (Necessary for lock), UIElements now hold a reference to their Gdl.DockItems 2013-02-24 Dominique Lasserre Fix race condition with g_type_check_instance_is_a. Catch all errors and remove unused var. 2013-02-23 Linus Seelinger Valama: Improved recent projects display Valama: Allow opening existing projects via welcome screen Valama: Improved welcome screen 2013-02-22 Linus Seelinger Valama: Focus fixes 2013-02-22 Dominique Lasserre Minor null check, don't use stdxxx.printf within Valama. jump_to_position will jump to column and open file if necessary. * Focus grabbing does not work. 2013-02-22 Linus Seelinger Valama: Threaded initial guanako update * Significantly speeds up project loading and should be safe. In case of crashes directly after opening a project, this might need some more work ;) Valama: Fixed guanako update signal; Current file structure jumps to current symbol 2013-02-22 Dominique Lasserre Catch all errors/warnings; reload current structure on Guanako update. * Add new project signal guanako_update_started which is emitted on start of Guanako update. 2013-02-22 Linus Seelinger Valama: One more little recent files fix Valama: Little recent projects fix Valama: Initial work on a welcome screen 2013-02-21 Dominique Lasserre Fix no-update issue of current_file_structure (by Linus). * Make wdg_current_file_structure static and global to fix update issue. * Add some debug output to current_file_structure. Fix CMakeLists.txt typo (gtk-3.0 -> gtk+-3.0). Fix gdl appearance (fixes by Linus) and handle --layout as ro. * Gdl appearance fixes: - Show all widgets before laoding layout. Otherwise only closed items would be visible. - Show main window before adding widgets to open it full screen to not screw up gdl layout. * Make --layout file read only again. * Show some better debug and error messages (gdl layout loading). 2013-02-21 Linus Seelinger Valama: Moving GDL stuff to widget Valama: Fixed undo/redo buttons 2013-02-20 Linus Seelinger Valama: Further moving to main widget 2013-02-20 Dominique Lasserre Fixup missing type -> map_icon mappings. Remove some debug output. Complete symbol iterations and add lots of icons. * Note: Some private/public icons are identical. They are copied from Anjuta. 2013-02-19 Dominique Lasserre Display also enum, errordomain etc. in current_file_structure widget. Add typename string attribute to Guanako iterators. * Note: iter_symbol has the current type name. iter_statement_callback has the previous type name (type of statement). * Add string to pixmap method. * Use icons in symbolbrowser. * Rename iter_callback_return to IterCallbackReturns and make all enum values uppercase. 2013-02-19 Linus Seelinger Valama: Initial work on turning the current UI into a widget 2013-02-19 Dominique Lasserre Code cleanup. Added command line options to all files/dirs. * Guanako: - Remove gtk dependency. Guanako.Project constructor can now throw erros. - Possibility to load syntax from custom file. - Move debug_msg in Guanako namespace. * Valama: - New options: syntax, templates, buildsystems, layout to pass custom files / dirs locations. This will make a local run directly from source code possible (no installation required anymore). - Separate window_main completely from source_viewer. source_viewer is docked as all other widgets. - Move IDEModes to project context and rename it to IdeModes. Field is renamed from IDEMode to idemode. - Update some valadoc comments. - Update README. 2013-02-18 Linus Seelinger Valama: Unified method for jumping to a specific location 2013-02-18 Dominique Lasserre Add lock to private build of symbols. Make breakpoint buttons more sensitive. Capture some edge cases. 2013-02-18 Linus Seelinger Valama: Improved current file structure usability 2013-02-17 Linus Seelinger Valama: Activate current symbol in current file structure 2013-02-17 Dominique Lasserre Add option --reset-layout to load system layout. Use TreeSet as sorted list for files and packages. * Guanako: Add sourcefiles property for manually added source files. 2013-02-17 Linus Seelinger Valama: Minor GUI improvements Valama: Forgot to remove unnecessary stuff Valama: Added icons to current file structure stuff 2013-02-16 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Valama: Improved text tags 2013-02-16 Dominique Lasserre Don't try to unlink files not associated with guanako project. Make it < gtk 3.6 compatible again. 2013-02-16 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Conflicts: src/ui/search.vala Valama: Further work on search widget 2013-02-16 Dominique Lasserre Merge and fix other absolute/relative path issues. Use absolute paths. 2013-02-16 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Valama: Search: Improved results viewer, allow jumping to result 2013-02-16 Dominique Lasserre cmake: Regenerate docs only on source file changes. 2013-02-15 Linus Seelinger Valama: Initial work on a (threaded) search widget 2013-02-15 Dominique Lasserre Remove localization of autogenerated project.cmake. 2013-02-15 Linus Seelinger Valama: Little fix in breaktpoints UI 2013-02-14 Linus Seelinger Valama: Separating source viewer from WindowMain 2013-02-14 Dominique Lasserre Fix command line parsing -> project load. Reorganize source file structure. Update layout. 2013-02-14 Linus Seelinger Valama: Fixed a few Gtk warnings Valama: Current file structure browser (need a good name for it :) ) allows jumping to the selected symbol Merge branch 'master' of https://github.com/Valama/valama Conflicts: guanako/guanako.vala 2013-02-13 Linus Seelinger Valama: Added bookmark-like display of current source file (Not completed yet) 2013-02-13 Dominique Lasserre Catch missing errors and replace deprecated VBox. Work arround #693127 and make vapi fix obsolete. 2013-02-13 Dominique Lasserre Merge branch 'catchemall' Conflicts: guanako/guanako_frankenstein.vala src/build_project.vala src/main.vala src/project.vala src/ui_main.vala Clean up some other whitespace code issues and use *msg methods in Valama. 2013-02-13 Dominique Lasserre Catch all errors, add debug_msg to Guanako and add debug parameter. * Also clean up the code (incl. templates) a bit. * Set buildsystem of templates to cmake. 2013-02-13 Linus Seelinger Valama: Initial support for IDE modes 2013-02-13 Dominique Lasserre Use debug option instead of "macro" in Valama part. 2013-02-13 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Forgot to add a file. 2013-02-13 Dominique Lasserre Update project file directly after first load and after setting changes. * Make sure to save project name / other settings immediately to prevent data loss if Valama crashes etc. 2013-02-13 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Guanako/Valama: FrankenStein works now! * Still only valama buildsystem * Added GUI for handling FrankenStops and FrankenTimers * FrankenStein might fail to compile in case of invalid stop/timer positions 2013-02-13 Dominique Lasserre Fix cmake missing target issue of templates. Update template project files with version info. Add version information to project file. Closes #31 Disable doc generation by default. Closes #30 * This is a bug in valadoc which ignores conditionals. 2013-02-12 Linus Seelinger Adjusted a disclaimer Guanako: Began work on Frankenstein (DBus-based breakpoints, performance measurement etc) Guanako: Fixed upper/lower case sorting Guanako: Improved performance (more efficient sorting). Eats CPU cores for breakfast now. 2013-02-11 Linus Seelinger Valama: Initial work on abstracting the buildsystem 2013-02-10 Linus Seelinger Valama: Stopping the application works now 2013-02-09 Linus Seelinger Valama: Starting application via GUI and added an output signal (stopping does not work yet) 2013-02-09 Dominique Lasserre Use getter method for gdl item child. * This fix will be released with valac 0.19+. Unfortunately older vapis has to be updated manually. Any workarround to resolve this without too much effort (e.g. inherit gdl classes) within Valama code is welcome. * Cut some long lines. Fix file names in disclaimer. 2013-02-08 linus Valama: Added (useful) compiling via GUI, show progress (cmake based) 2013-02-07 Dominique Lasserre Enable threading as default. * No changes in application behaviour because this flag isn't used anywhere. Build docs by default if valadoc was found. valac-0.16 no longer supported. 2013-02-07 linus Valama: Threaded building of completion proposals Guanako: Made a lock smaller Guanako: Fixed threading crashes / freezes, cleaner structure Guanako: Initial multithreaded autocompletion 2013-02-05 linus Valama: Improved guanako update timeout; path fix 2013-02-04 Dominique Lasserre Build paths with correct seperator. 2013-02-04 linus Valama: Error report works correctly with multiple source files 2013-02-04 Dominique Lasserre Make docking gdl 3.4 compatible. * There are still some warnings but it doesn't seem there are any drawbacks. gdl 3.6 and higher still works fine. Make it 0.16 compatible again (text iterators). Install text icon correctly. * Add new DESTINATION argument to convert_svg_to_png. * On buffer iteration foreach_buffer use SourceBuffer (and not only buffertext). Reporter: Don't update if no valid buffer exists (e.g. at the beginning). Merge branch 'cmdline' Add command line parsing functionality. 2013-02-04 linus Valama: Fixed repeated guanako updates Valama: Initial real-time error highlighting (Still needs support for all opened SourceViews) Merge branch 'master' of https://github.com/Valama/valama Valama: Cleaned up the completion provider, proposals should now be positioned correctly. Really should go to bed now. 2013-02-03 Dominique Lasserre Update README and some comments regarding gdl issues. Fix cmake < 0.20 compatibility. And make 0.16 fully compatible. * Fix 0.16 gdl issue. Invalid cast from Gdl.DockNotebook to Gtk.Notebook necessary. Make Valama compilable with valac < 0.20 Synchronize cmake buildsystem template. Merge branch 'staging' Add valama text logo to about dialog. Improve cmake. * C file generation now only on Vala file changes. * Add some debug output for buffer change. 2013-02-02 Linus Seelinger Valama: Do not update completion info when changes occur within the current line (improves completion performance) 2013-01-29 Dominique Lasserre Update pot file and German translation. * Re-add guanako files to translation system. Don't generate .c files each time (touch them). 2013-01-28 Dominique Lasserre Merge branch 'valadocs' Conflicts: src/main.vala src/ui_main.vala * Drop unnecessary CodeView class (wrapper for Gtk.SourceView and Gtk.SourceBuffer). 2013-01-28 Dominique Lasserre Simplify signal connection and fix warning on first opened buffer. * Remove srcfocus_changed signal and instead use property notification signal. Remove dependency from window to project. 2013-01-26 Dominique Lasserre Update code documentation. * All but Guanako and UiElement derived classes completed. * Work forward to fix #6. Strictly separate app from window. Add some valadocs documentation. * Add wrapper for SourceView to add dirty flag. * Get rid of some valac warnings (access with this to static members). * Some minor fixes. 2013-01-24 Dominique Lasserre Fix dirty flag of new document. * Simplify current_* properties. Mark unsaved files (change gdl icon accordingly). Closes #20 Fix scope error (try,finally block). 2013-01-23 Dominique Lasserre Add dirty flag to all buffers. * Remove guanako again from Valama project file (it is not working so far). 2013-01-22 Dominique Lasserre Make cmake code more generic (name all source/vapi files explicitly). * Add guanako/ to Valama project. Add about dialog. Add menu, accels and mnemorics; redo and undo implementations. Focus newly opened files. 2013-01-21 Dominique Lasserre Split build system files from templates. * Template path has changed. New installation of Valama is required to use templates. 2013-01-19 Dominique Lasserre Merge branch 'project-browser-iters' Fix add and remove button behavior (project browser). * Improve iterator handling. * Problems: - Removal of files does not work (project browser vs. project objects not synchronised). - How to differentiate between project and buildsystem files? In future implementations the buildsystem is a plugin so project browser has only to care about source files. Therefore hardcoded workaround is ok to fix this until buildsystem plugin comes. * There are some duplicate code parts (TreePath and TreeIter stuff). Bump required cmake version to 2.8.4 to make it more Windows compatible. 2013-01-19 Linus Seelinger Fixed the fix (wrong path used -.-) Merge branch 'master' of https://github.com/Valama/valama Valama: Fixed TextIter related crashes when running guanako updates threaded (Always update threaded, now that it works); Fixed wrong usage of guanako's update_file (Runs far smoother now, doesn't duplicate symbols); Fixed a segfault related to proposal selection 2013-01-18 Dominique Lasserre Omit directories on file selector (project browser). * Also set sensitivity of add and remove buttons correctly. Build up file tree in project browser with nodes. 2013-01-15 Dominique Lasserre Use Path.build_path in Guanako project. Replace join_paths method by GLib.Path.build_path. 2013-01-14 Dominique Lasserre Remove file types from project file. * This should be done later with special plugins (every plugin has to know which file types are valid.). 2013-01-12 Linus Seelinger Project Browser: Only set add/remove buttons to sensitive when an action is defined 2013-01-11 Dominique Lasserre Simplify opening of project/buildsystem file. Make buildsystem files available in project browser and sort it. * Dirty solution to sort lists at the end and not at time of insertion. But with a few items it does not hurt. Update readme (add license paragraph). Update copyright years and set author to Valama development team. * See AUTHORS (or git blame) for all authors/contributors. Update pot and po files (relative paths). Fix cmake and gettext to work with relative paths. 2013-01-10 Dominique Lasserre Preserve expansion of Project browser. Add new config items. * New config items (not really used atm): - source-directories - source-files - file-types - buildsystem-directories - buildsystem-files - buildsystem-file-types 2013-01-07 Dominique Lasserre Update Readme * gee-0.8 supported * Packaging branch hint. Code cleanup (pushed for LSenf). Switch back to gee-1.0. * Switch back because Debian currently hasn't gee-0.8 in repository. See #695982 * Project is still and will be compatible to gee-0.8 . Proper implementation of method for all opened views (delegate). Merge branch 'master' into multiple-buffers Conflicts: src/main.vala src/project.vala Don't overwrite files with false content. Closes #25 * Dirty hack but with ViewMap in 8fe440b55f4a323d85514837f0499829b2b35e74 this can be done the smart way. * App might crash. Workarround: Disable completion provider. 2013-01-06 Dominique Lasserre Fix vapi paths in project browser. * Thanks to august0815 for reporting! 2013-01-05 Dominique Lasserre Handle source file focus detection completely with MainWindow. * Completion provider will crash the app. * Newly opened tabs aren't automatically selected. * New tabs aren't opened right beside the previous selected tab. Switch to gee-0.8 and use custom struct for vieworder (no HashMap). 2013-01-04 Dominique Lasserre Add join_paths method to join paths together. 2013-01-02 Dominique Lasserre cmake: Remove debug output. cmake: Support custom library paths (options) from pkgconfig. * This will support all non-trivial library flags. E.g. $ pkg-config --libs mylib -L/usr/local/lib -lmylib Update Readme. gdl recommendation and libvala-0.16 hint. Merge branch 'multiple-buffers' Conflicts: src/ui_main.vala Set default windowed size. Gdl tabs work properly with >= 3.6. 2013-01-02 Linus Seelinger Update README.md Added GDL to deps Little GDL fix Project browser: Always expand 2013-01-02 Dominique Lasserre Merge branch 'multiple-buffers' Conflicts: src/project.vala Support multiple independent source file buffers. Closes #14 * Basic implementation: - All source files belong to an extra Gdl.Dock. - Currently there is no proper buffer_close signal handling (check if buffer is dirty -> dialog). Atm closing doesn't do anything. - "Interrupt" of closing a buffer is not properly implemented (tab position can change). - Not saved ("New document") view is not usable (completion and saving is not working) * Some minor improvements. 2013-01-01 Linus Seelinger Fixed adding packages via project_browser 2012-12-31 Linus Seelinger Added a missing ui file Fixed a vala 0.16 compatibility issue. Building still does not work though (issue reported) Guanako: Fixed dependency handling in remove_package; Valama: Show a warning dialog when vapis are not found 2012-12-30 Linus Seelinger Fixed UiReport error counting (Funny segfaults...) Removed threads from UI updates 2012-12-29 Linus Seelinger First After-Christmas-Commit! :) Guanako: Support interfaces implemented by classes; Syntax rules: Simplified signal rules 2012-12-23 Linus Seelinger Merge branch 'master' of https://github.com/Valama/valama Include config.vapi in sources, do not allow removing it via project_browser 2012-12-23 Dominique Lasserre Make symbol browser and report element not-closable. * Temporary solution because there is no possibility to open/add those ui elements once closed. Merge branch 'gdl' 2012-12-23 Dominique Lasserre Implement Gdl elements. Closes #13 * All four ui elements are now gdl items so it is possible to move them arround. An exception is the source view item which is locked to make sure at least one item is connected to the main window (only a design decision). With multiple supported source buffers this can be extended to only be locked if one single source buffer is open. New class MainWindow now replaces Window class and provides an abstract docking interface. - Layout is saved on window close to ~/.config/valama/layout.xml; global layout is available as a fallback in share/valama/layout.xml On window resize the layout gets screwed up. A layout reload could fix that in some cases. So in future revisions this could be done. (But even in Anjuta this isn't implemented.) Current solution is probably not very extendable (for new ui elements) (plugin support). 2012-12-22 Dominique Lasserre Merge pull request #18 from Overscore/master French translation update. Thanks to Overscore! 2012-12-22 Overscore French translation update 2012-12-21 Dominique Lasserre Fix coding style. * Also remove some no longer needed comments. 2012-12-21 Linus Seelinger Guanako: Clone call parameters for "?" options Merge branch 'master' of github.com:Valama/valama Guanako: Simplified CallParameter class Guanako: Fixed return values; Switch compare from bool back to void Guanako: Support array / array element access 2012-12-21 Dominique Lasserre Merge pull request #16 from Overscore/master French translation update. Thanks to Overscore! 2012-12-21 Linus Seelinger Guanako: Array stuff 2012-12-20 Overscore French translation update 2012-12-20 Dominique Lasserre Abstract cmake valadocs generation. Add i18n support to Guanako. * Currently there is no check if documentation is complete so once added to target all (or invoked manually via docs target) it will build docs from scratch. Same issue for translations. Merge branch 'overscore-i18n-fr' French translation added. Thanks to Overscore! 2012-12-20 Overscore French translation 2012-12-20 Dominique Lasserre Rearrange cmake stuff. Complete gettext integration. * FYI: In last commit I forgot to add cmake/Gettext.cmake (which is now completely redesigend to fit in Valama cmake system). 2012-12-19 Dominique Lasserre Add sample German translation. * Especially cmake macro is not well configured to work smoothly with Valama. (Some unneeded functionality provided by macro and some dirty hacks in Valama CMakeLists.txt to make it work.) Hardcoded paths etc. At this point localization is in theory possible (in fact it is probably to early in development to start with i18n) but there won't be any bigger changes for translators (only cmake integration will change a bit or more). Make all related strings translateable. Prepare gettext transition. Improve cmake stuff. 2012-12-16 Dominique Lasserre Merge pull request #6 from Overscore/master valama.desktop fix. Thanks to Overscore. FileTransfeR: Don't move each file in tree on same filesystem. * Also error if not enough space is available (and transfer goes to different filesystem). 2012-12-16 Overscore Added 2 semicolon to meet freedesktop standard 2012-12-15 Dominique Lasserre Allow compilation without guanako already installed. * Thanks to Overscore to report this issue. 2012-12-06 Dominique Lasserre Support # comments in guanako.lang for gtksourceview. 2012-12-04 Dominique Lasserre Disable threads for now and enable compiler debug flag. * There are some problem with gtksourceview and Guanako completion speed so disable all threads per default (which actually means only run one other thread at the same time). * Enable debug compiler flag. 2012-12-03 Dominique Lasserre Outsource report wrapper and widget. Set target glib version to 2.32 for guanako. Update docs: UiElement and FileTransfer 2012-12-02 Dominique Lasserre Also install all icons etc. with docs. Auto doc generation (Valadoc). Enhances: #5 * Optional target "doc". Build with `make doc` and install normally. Add basic guanako syntax highlighting (gtksourceview). * Basic means basic. 2012-12-01 Linus Seelinger Guanako: Support return values in syntax rules; Support arrays 2012-11-30 Linus Seelinger Syntax rules: Fix in static / instance handling 2012-11-30 Dominique Lasserre Don't remove original file object after copying. 2012-11-30 Linus Seelinger Guanako: Do not add source files that already exist Guanako: Sorting function case sensitive Syntax rules: Slight loss of control over git -.- Merge branch 'master' of https://github.com/Valama/valama Syntax rules: Fixed assignment and call of static symbols Syntax rules: Fixed assignment to static variables 2012-11-30 Dominique Lasserre Close project dialog properly with window manager exit button. 2012-11-29 Linus Seelinger Valama: Removed auto indent button, as auto indent is not functional at the moment Valama: Fixed broken error report Guanako: Eliminate direct access to CodeContext 2012-11-29 Dominique Lasserre Merge branch 'ui' Finish recursive movements. * Note: The movement method is only interesting on movements on different filesystems. It is sligthly? slower on movements on same filesystem because it moves every file object an not only original file object. The only advantage over the File.move is to provide a counter for processed files. m 2012-11-29 Linus Seelinger Guanako: Optimized sorting performance (Each object is only sorted once) Guanako: Sorting results, avoiding duplications 2012-11-29 Dominique Lasserre Maximize window to resolve small window problem temporarily. Fix copyright headers and add some missing vim modelines. Merge pull request #3 from Baldrs/master Monospaced font for editor. Thanks to Baldrs. Closes #3 2012-11-29 baldrs Changed font to Monospace, removed useless lines from pervious commit 2012-11-29 Dominique Lasserre Change annyoing small window size to a more appropriate one. Provide new FileTransfer class to copy and move files. * FileTransfer class provides two signal to easily connect progress bar (number of files and count of bytes transferred). Be careful: Currently it is not possible to move file trees (original directories aren't removed.) 2012-11-28 baldrs Monospaced font, indent 2012-11-28 Dominique Lasserre Don't remove manually added package automatically if vapi wasn't found. 2012-11-27 Dominique Lasserre Use (in)valid_input signals on project settings dialog. Make custom Edit class rely on non empty text. * Add two signals valid_input and invalid_input to signal if text is empty or not. This allows to control sensivity of buttons. Closes: #2 Add recursive copy operation. Catch unhandled errors. Merge branch 'master' into ui Only add vapi to context if file exists. 2012-11-26 Dominique Lasserre Support threads with valac 0.16. * Possible fix for #1. But it introduces (at least for me) a new bug on project change. See discussion: https://github.com/Valama/valama/issues/1 Merge branch 'master' into ui 2012-11-26 Linus Seelinger Removed a binary added by mistake Templates: E-Mail fix that broke XML parsing Merge branch 'master' of https://github.com/Valama/valama Templates: Added clutter template 2012-11-26 Dominique Lasserre Remove SymbolBrowser update on source file save. 2012-11-26 Linus Seelinger Templates: Added simple_gtk template 2012-11-26 Dominique Lasserre Exit properly on cancelled create_project dialog. 2012-11-25 Dominique Lasserre Merge branch 'ui' Update class names and change some minor whitespaces issues. Conflicts: src/main.vala 2012-11-25 Dominique Lasserre Add threading support for ui elements. * Introduce new base class: UiElement Other UI classes like ProjectBrowser or SymbolBrowser are now derived from this class. The base class provides basic dependency support (only threaded not sequentially atm). Public functionality is given over update() call. The derived classes has to implement a custom build() method to update their own interface. The update() method then calls all build() methods of all dependencies of all dependencies etc. So if the interface (reverse) depends on others, register those reverse dependencies with connect(UiElement) method. Dependency resolution is very basic so be careful to avoid circular dependencies. To change shared ValamaProject of these elements, call update(ValamaProject) with a new project. There exists a pool for all toplevel elements (independent elements) but this will probably go or change with GDL. * Some naming conventions: classes are written the "camel" way: ValamaProject, ProjectBrowser, SymbolBrowser * New macro is supported: DEBUG This is enabled by default and there is atm no cmake option that turns it off. This will change later (DEBUG off and an cmake option). 2012-11-25 Linus Seelinger Templates: Added cmake structure to Plain Vala template, should be fully functional now Creating projects based on templates works; Show project creation dialog if valama is called without arguments 2012-11-25 Dominique Lasserre Install app icon to share/pixmaps/. 2012-11-25 Linus Seelinger cmake: install templates Deleted a temp file Initial work on project templates 2012-11-24 Dominique Lasserre Merge branch 'master' into ui Let valama_project.load_project_file() throw LoadingError. * valama_project can no throw a LoadingErorr which is thrown by load_project_file method if xml file (.vlp) parsing does not succeed. This is not properly handled if Valama is started with an invalid project file. But this should be done with an easier interface for all GUI elements because all of them needs the valama_project class. So fixing this issue is related to roadmap 1.0: 4. GDL * Additionally check inode on Unix systems (disable with NOT_UNIX macro) to prevent opening same file. Let valama_project.load_project_file() throw LoadingError. * valama_project can now throw a LoadingErorr which is thrown by load_project_file method if xml file (.vlp) parsing does not succeed. This is not properly handled if Valama is started with an invalid project file. But this should be done with an easier interface for all GUI elements because all of them needs the valama_project class. So fixing this issue is related to roadmap 1.0: 4. GDL * Additionally check inode on Unix systems (disable with NOT_UNIX macro) to prevent opening same file. Set some regexes to ignorecase. Abstract project dirs and supported source file suffixes. * valama_project class: - project_source_dirs and project_file_types are string[] properties which include project dirs (default: src/) and source file suffixes (default: .vala). * Furthermore compare file name on new project load. This does not check if projects are *really* different (e.g. because links, mounts). Fix project syntax. 2012-11-23 Linus Seelinger Clean completion proposal insertion; Syntax rules: Support ref / out when passing parameters Support structs 2012-11-23 Dominique Lasserre Merge branch 'ui' Open existing projects. 2012-11-23 Linus Seelinger Syntax rules: Support templates and loops 2012-11-23 Dominique Lasserre Install .desktop file. Fix file header description. Generate thumbnail icons. * Note: There is no postinst hook to update icon cache. Let the distros decide how to manage this. 2012-11-22 Dominique Lasserre Initial commit. Finish guanako transition. 2012-11-22 Linus Seelinger Syntax rules: Unified method call parameters Avoid huge terminal output when loading a project caused by superfluous completion info updates Syntax rules: Eliminate $Object, $Value improved Syntax rules: Improved assignments and method calls; Guanako: Fixed a segfault 2012-11-20 Dominique Lasserre Fix guanako soname (1 vs. version 1.0). Fix ftbfs with debhelper 9 (hardening flags). Separate Guanako as separate library. 2012-11-17 Linus Seelinger Syntax rules: Improved if statements and signal connections 2012-11-16 Linus Seelinger Parser: Also differentiate member binding type INSTANCE Parser: Support exclusively getting static symbols ( modifier for syntax rules); Syntax rules: initial differentiation of member binding 2012-11-13 Dominique Lasserre Smooth exception handling for all thrown errors. * Many code style fixes. Name conventions have to be done separately. 2012-11-12 Dominique Lasserre Manual corrections to be 100% compatible with master. Merge branch 'master' into exception_handling 2012-11-12 Linus Seelinger Improved syntax rules 2012-11-11 Dominique Lasserre Merge branch 'master' into exception_handling Conflicts: src/main.vala Readd open new file button. Allow adding to toplevel and switch to other file on removal. Merge branch 'master' of github.com:Valama/valama File creator dialog: Catch if filename length is zero. 2012-11-11 Linus Seelinger Allow creating/deleting files from project_browser 2012-11-10 Linus Seelinger Moved insert_text handler into Entry class 2012-11-10 Dominique Lasserre With previous changes in guanako project browser works fine! Merge branch 'ui' Improve file dialog. Swap valid input check to ui_helpers. 2012-11-10 Linus Seelinger Parser: One more little name matching fix Parser: Fixed name parsing, using regexes Better handling of loaded source files 2012-11-10 Dominique Lasserre Add new file button. 2012-11-10 Linus Seelinger Package dialog: Do not show packages that are already selected 2012-11-10 Dominique Lasserre Merge branch 'ui' into exception_handling Conflicts: src/main.vala src/ui_project_browser.vala src/ui_project_dialog.vala Add new file button. Add tooltips. Update README.md over webinterface (minor) Sort Vala packages in package dialog. Settings dialog: Use SpinButtons for project version. 2012-11-09 Dominique Lasserre Setup all main.vala error catchers. 2012-11-09 Linus Seelinger Parser: Ignore empty words; Syntax rules: Completed declarations inside functions Removed a little code dinosaur Parser: support arbitrary words; Syntax rules: Support var declarations 2012-11-09 Dominique Lasserre Settings dialog: Control hint label only with timer. * Label if user input (project name) was invalid now now longer disappears if valid character was inserted (or removed). Merge branch 'master' into exception_handling Conflicts: src/ui_project_dialog.vala Add discard button to reset settings and group boxes properly. Add cancel option to settings dialog. Merge branch 'master' of github.com:Valama/valama Catch all thrown exceptions and replace deprecated stuff. * Gkt.Box is used instead of HBox or VBox. But this will be deprecated soon? Gtk.Grid is the way to go in future. * GLib.Thread.create was not replaced. * Exception catchers are only pseudo catchers atm. Fix README spelling mistake and set Valama version to 0.1.2. Update README over webinterface. Update README (requirements). Only save settings if ok is clicked. Check for valid project name. * Xml file input (.vlp) has to be checked too. 2012-11-07 Linus Seelinger Parser: Syntax error report in case of missing parameters Parser: Use regex; Syntax errors reported instead of some possible segfaults Fixed segfault in using directive completion Merge branch 'master' of https://github.com/Valama/valama Completion: Completed using statements Completion: Completed using statements 2012-11-06 Linus Seelinger Syntax: Whitespace fix; Added using statements 2012-11-04 Linus Seelinger Vala 0.16 compatibility fix 2012-11-03 Linus Seelinger Completion: Support "new" expressions and namespaces 2012-11-02 Linus Seelinger Working on syntax rules and supported types Completion: Fixed segfault at end of syntax rule; Fixed passing written text inside completion engine 2012-11-01 Linus Seelinger Correct parameter handling 2012-10-28 Linus Seelinger Reworking completion syntax 2012-09-17 Linus Seelinger Experimental auto-indentation based on libvala 2012-09-15 Linus Seelinger Handle Enums correctly; GUI version setting 2012-09-14 Linus Seelinger Complete outsourcing of syntax rules; auto-complete return statements 2012-09-13 Linus Seelinger Added missing file ( O:-) ) Multithreaded completion updates (Still slightly aggressive) 2012-09-12 Linus Seelinger Manage project version via IDE; Introduced project config dialog; Fixed early autocompletion abortion Keep project name in project file; write to cmake Pass on selected packages to cmake Initial info for methods 2012-09-11 Linus Seelinger Outsourcing cmake packages list 2012-09-11 Dominique Lasserre ValaPkgs.cmake: Support compiler options. 2012-09-11 Linus Seelinger removed a funny code dinosaur Ignore missing packages when resolving package dependencies Switching to conditional compilation Introduce config file 2012-09-11 Dominique Lasserre Replace syntax depending on Vala version 0.16 or 0.17+ 2012-09-11 Linus Seelinger libvala 0.16/0.18 compatibility fix 2012-09-10 Dominique Lasserre Fix Ubuntu 12.04 gthread issue and set Vala version to exactly 0.16. Update README.md Add missing build dependency libgee-dev. Merge branch 'master' of github.com:Valama/valama Add new function vala_pkgs to simplify vala integration and pkg-config checks. 2012-09-10 Linus Seelinger Autocompletion: Added constants; Improved iterators Minor deprecation fix Use Gee.Set when building completion proposals to avoid duplicates Added icons from Anjuta and use them for autocompletion proposals Take project file as cli argument Package handling: Include child dependencies Correctly handle package dependencies 2012-09-09 Linus Seelinger Added package selection dialog Packages can be removed now, symbols are updated Working on adding/removing packages 2012-09-08 Linus Seelinger Proposals can be used now. (wahey!!); Added out/ref to parameters 2012-09-06 Linus Seelinger Added project saving routine Display included packages in GUI; load packages from project file Outsourced project class; enhanced completion rules; simplified symbol resolver 2012-09-05 Dominique Lasserre cmake: install data/syntax to /usr/share/valama/syntax 2012-09-05 Linus Seelinger Added comments to syntax file Read syntax templates from file Working on completion rules Added options to syntax templates; Fixed a little whitespace bug Using recursive syntax templates for autocompletion; propose keywords 2012-08-27 Linus Seelinger Initial auto indentation 2012-08-27 Dominique Lasserre Fix trailing whitespaces. * It is recommended to use the pre-commit git sample hook if the editor does not detect such issues. 2012-08-25 Linus Seelinger Regard using directives in autocompletion 2012-08-24 Linus Seelinger Improved error report; Autocompletion based on current environment; Make use of scopes for getting accessible symbols 2012-08-23 Linus Seelinger Introducing template-based autocompletion 2012-08-19 Linus Seelinger Fixed auto-update symbol and completion infos with nasty workaround 2012-08-17 Linus Seelinger Symbol browser updates on file saves 2012-08-17 Linus Seelinger Fixed SemanticAnalyzer usage in guanako 2012-08-10 Dominique Lasserre Add copyright disclaimers and GPLv3 copyright file. Fix indents. 2012-08-08 Linus Seelinger Fixed foreach iterator visibility Save before building Fixed a funny completion problem Fixed error output Fixed build directory creation Merge branch 'master' of github.com:Valama/valama Include base classes in proposals; Outsourcing; experimental vapi discoverer (voodoo...) 2012-08-08 Dominique Lasserre Update README.md Add missing deps. 2012-08-08 Linus Seelinger Autocompletion: Handle new statements Propose non-local namespace, symbols and stuff Found the @!€++###§ gremlins. 2012-08-07 Linus Seelinger Improved project browser; Save and build function; finding strange gremlins inside vala Working on project browser 2012-08-07 Linus Seelinger Added file update function Improved bracket handling in autocompletion 2012-08-06 Linus Seelinger Added C dependency; removed old compile script 2012-08-06 Dominique Lasserre Add cmake integration and move source files to src/ directory. 2012-08-06 Linus Seelinger Working on bracket handling in resolve_symbol Merge branch 'master' of github.com:Valama/valama Killed some warnings 2012-08-06 Linus Seelinger Killed some warnings 2012-08-06 Dominique Lasserre Update README.md 2012-08-06 Linus Seelinger Replaced tabs with whitespaces; working on completion First running version ;) Initial commit 2012-08-06 Dominique Lasserre Initial commit ================================================ FILE: README.md ================================================ # Valama # [![Join the chat at https://gitter.im/Valama/valama](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/Valama/valama?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) #### *The next gen Vala IDE.* #### Discussion and support on IRC channel [#valama](http://webchat.freenode.net/?channels=#valama) (freenode). ![Valama 28.05.2013](https://raw.github.com/Valama/valama/gh-pages/images/valama_2013-05-28.png) [![Build Status](https://travis-ci.org/Valama/valama.png)](https://travis-ci.org/Valama/valama) ## Manual installation ## ### Requirements * cmake (>= 2.8.4) * valac (>= 0.20), valac-0.24 or valac-0.26 is recommended * pkg-config * gobject-2.0 * glib-2.0 * gio-2.0 * gladeui-2.0 (for glade files) * gee-0.8 (>= 0.10.5) * at least libvala-0.20, libvala-0.24 or libvala-0.26 is recommended * gdk-3.0 * gdl-3.0 (>= 3.8), 3.10 or newer is recommended * gtk+-3.0 (>= 3.10) * gtksourceview-3.0 (>= 3.10), 3.12 or newer is recommended * clutter-gtk-1.0 * libxml-2.0 * gthread-2.0 * webkit2gtk-3.0 * Intltool (required to generate .desktop and .xml files with localization) * GNOME desktop icon theme (symbolic icons) (only required to display icons properly) (recommended) * rsvg-convert/imagemagick (only required to generate application icons from svg template) (recommended) On Debian based systems install following packages: sudo apt-get install build-essential valac-0.24 libvala-0.24-dev cmake pkg-config libgtksourceview-3.0-dev libgee-0.8-dev libxml2-dev libgdl-3-dev libgladeui-dev libclutter-gtk-1.0-dev libwebkit2gtk-3.0-dev intltool gnome-icon-theme-symbolic librsvg2-bin For a newer Vala version on Ubuntu based systems, you have to include the [Vala Team PPA](https://launchpad.net/~vala-team/+archive/ppa) first. On Fedora based systems install following packages: sudo yum install vala-devel cmake gtksourceview3-devel glade3-libgladeui-devel glade-devel libgee-devel libxml2-devel libgdl-devel clutter-gtk-devel webkitgtk-devel webkitgtk3-devel intltool gnome-icon-theme-symbolic librsvg2 librsvg2-tools #### Ubuntu PPA #### Activate [Valama daily PPA ](https://launchpad.net/~valama-dev/+archive/valama-daily) and install `valama` package. ### Building ### 1. `mkdir build && cd build` 1. `cmake ..` 1. `make -j2` ### Installation ### 1. `sudo make install` 1. `sudo ldconfig` (to update linker cache for the shared Guanako helper library) This will automatically install and compile gsettings schemas. (You can disable installtion/removal hooks during compile time with `-DPOSTINSTALL_HOOK=OFF` option.) #### Local installation #### Build Valama then run with following options directly from build directory: XDG_DATA_DIRS=".:$XDG_DATA_DIRS" LD_LIBRARY_PATH=guanako ./valama --syntax ../guanako/data/syntax --templates ../data/templates --buildsystems ../data/buildsystems [FILE] Optionally use `--layout ../data/layout.xml` to use standard layout. ## Packaging files for distributions ## To build and install Valama for your distribution look at the [packaging](https://github.com/Valama/valama/tree/packaging) branch. If you don't find your distribution there, you are welcome to contribute your packaging files to this branch (and put you work under GPL-3+). ## Contribution ## See the wiki page for some information [Wiki](https://github.com/Valama/valama/wiki) or drop in on [#valama](http://webchat.freenode.net/?channels=#valama) (irc.freenode.net). ## License ## Valama is distributed under the terms of the GNU General Public License version 3 or later and published by: * Linus Seelinger * Dominique Lasserre For a full list of all contributors see [here](https://github.com/Valama/valama/graphs/contributors) and take a look at [AUTHORS](https://github.com/Valama/valama/blob/master/AUTHORS) file. ## Credits ## element-\* icons from [Anjuta IDE](https://projects.gnome.org/anjuta/) (GPL2 licensed) ================================================ FILE: cmake/Common.cmake ================================================ # # cmake/Common.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # The base_list_to_delimited_string function transforms a list into a delimited # string. # This function is based on the basis_list_to_delimited_string in # CommonTools.cmake by the Build system And Software Implementation Standard # (BASIS) project by the University of Pennsylvania (Penn). # # Usage: # # The first parameter is set to transformed list. # # DELIM # A string which will be the delimiter between all list elements. # # BASE_LIST # The list which will be transformed to a single string. # # # Simple example: # # set(packages "abc" "def" "fhi" "jkl" "mno") # base_list_to_delimited_string(transformed_list # DELIM # "||" # BASE_LIST # ${packages} # ) # message("show it:${transformed_list}") # >> show it:abc||def||fhi||jkl||mno # function(base_list_to_delimited_string output) cmake_parse_arguments(ARGS "" "" "DELIM;BASE_LIST" ${ARGN}) set(list_string) foreach(element ${ARGS_BASE_LIST}) if(list_string) set(list_string "${list_string}${ARGS_DELIM}") endif() if(element MATCHES "${ARGS_DELIM}") set(list_string "${list_string}\"${element}\"") else() set(list_string "${list_string}${element}") endif() endforeach() set("${output}" "${list_string}" PARENT_SCOPE) endfunction() ## # Convert svg to png and set up installation places. rsvg-convert or # imagemagick (with svg support) is required. # # Usage: # The first parameter is set to all png files. Add them later to a custom # target. Generated directories are: # ${prefix}/share/icons/hicolor/${size}x${size}/apps/${png_name}.png # # ICON # svg icon path # # SIZES # List of all supported sizes. # # PNG_NAME # Name of png file (without suffix) which is the target file name. # # DESTINATION # Directory where to install all generated files to (plain). # # # Simple example: # # set(sizes 42 43 44) # convert_svg_to_png(png_files # ICON # my_really_cool_icon.svg # SIZES # "${sizes}" # PNG_NAME # freshy # ) # add_custom_target(my_target_name ALL DEPENDS ${png_files}) # # # This will build and install my_really_cool_icon.svg to: # # /usr/share/icons/hicolor/42x42/apps/freshy.png # # /usr/share/icons/hicolor/43x43/apps/freshy.png # # /usr/share/icons/hicolor/44x44/apps/freshy.png # function(convert_svg_to_png output) include(CMakeParseArguments) cmake_parse_arguments(ARGS "" "DESTINATION" "ICON;SIZES;PNG_NAME" ${ARGN}) set(png_list) if(ARGS_ICON) if(ARGS_PNG_NAME) find_program(CONVERT rsvg-convert) if(NOT CONVERT) find_program(CONVERT_IMG convert) endif() if(CONVERT OR CONVERT_IMG) if(NOT datarootdir) set(datarootdir "share") endif() foreach(size ${ARGS_SIZES}) set(tmppath "icons/hicolor/${size}x${size}/apps") set(icondir "${CMAKE_CURRENT_BINARY_DIR}/${tmppath}") set(iconpath "${icondir}/${ARGS_PNG_NAME}.png") if(CONVERT) add_custom_command( OUTPUT "${iconpath}" COMMAND "${CMAKE_COMMAND}" -E make_directory "${icondir}" COMMAND "${CONVERT}" "--background-color" "none" "--width" "${size}" "--height" "${size}" "${ARGS_ICON}" "--output" "${iconpath}" DEPENDS "${ARGS_ICON}" VERBATIM ) else() add_custom_command( OUTPUT "${iconpath}" COMMAND "${CMAKE_COMMAND}" -E make_directory "${icondir}" COMMAND "${CONVERT_IMG}" "-background" "none" "-resize" "${size}x${size}" "${ARGS_ICON}" "${iconpath}" DEPENDS "${ARGS_ICON}" VERBATIM ) endif() list(APPEND png_list "${iconpath}") if(ARGS_DESTINATION) install(FILES "${iconpath}" DESTINATION "${ARGS_DESTINATION}") else() install(FILES "${iconpath}" DESTINATION "${datarootdir}/${tmppath}") endif() endforeach() else() message(WARNING "Could not find convert program. Don't generate icons.") endif() endif() endif() set(${output} "${png_list}" PARENT_SCOPE) endfunction() ## # Get formatted date string. # # Usage: # The first parameter is set to output date string. # # FORMAT # Format string. # # # Simple example: # # datestring(date # FORMAT "%B %Y" # ) # # Will print out e.g. "Date: April 2013" # message("Date: ${date}") # macro(datestring output) include(CMakeParseArguments) cmake_parse_arguments(ARGS "" "FORMAT" "" ${ARGN}) if(ARGS_FORMAT) set(format "${ARGS_FORMAT}") else() set(format "${ARGN}") endif() if(WIN32) #FIXME: Needs to be tested. Perhaps wrapping with cmd is needed. execute_process( COMMAND "date" "${format}" OUTPUT_VARIABLE "${output}" OUTPUT_STRIP_TRAILING_WHITESPACE ) else() execute_process( COMMAND "date" "+${format}" OUTPUT_VARIABLE "${output}" OUTPUT_STRIP_TRAILING_WHITESPACE ) endif() endmacro() ## # Install/verify gsettings files and compile schemas. # # Depends on cmake/GlibCompileSchema.cmake.in (for compiling) and # cmake/GlibCompileSchema_verify.cmake.in (for verifying, only wth local # option) # # Usage: # # LOCAL # If set compile gsettings schemas locally (in # ${CMAKE_BINARY_DIR}/glib-2.0/schemas) directory). Add this directory to # your XDG_DATA_DIRS variable. # # GSETTINGSDIR # Directory where to install gsettings schemas. Default is: # share/glib-2.0/schemas # # FILES # List of gsettings schema files to install / compiile. # # # Simple example: # # gsettings_install( # LOCAL # GSETTINGSDIR # share/glib-2.0/schemas # FILES # "data/app.foobar.gschema.xml" # ) # function(gsettings_install) include(CMakeParseArguments) cmake_parse_arguments(ARGS "LOCAL" "GSETTINGSDIR" "FILES" ${ARGN}) find_program(GLIBCOMPILESCHEMA "glib-compile-schemas" REQUIRED) if(NOT "" STREQUAL "${ARGS_FILES}") if(ARGS_LOCAL) set(GSETTINGSDIR "glib-2.0/schemas") configure_file( "${CMAKE_SOURCE_DIR}/cmake/GlibCompileSchema.cmake.in" "${CMAKE_BINARY_DIR}/GlibCompileSchema_local.cmake" @ONLY ) configure_file( "${CMAKE_SOURCE_DIR}/cmake/GlibCompileSchema_verify.cmake.in" "${CMAKE_BINARY_DIR}/GlibCompileSchema_verify.cmake" COPYONLY ) set(gfiles_copied) foreach(gfile ${ARGS_FILES}) if(NOT IS_ABSOLUTE "${gfile}") set(gfile "${CMAKE_CURRENT_SOURCE_DIR}/${gfile}") endif() get_filename_component(filename "${gfile}" NAME) set(gfile_copied "${CMAKE_CURRENT_BINARY_DIR}/glib-2.0/schemas/${filename}") add_custom_command( OUTPUT "${gfile_copied}" COMMAND "${CMAKE_COMMAND}" -D "GLIBCOMPILESCHEMA:FILEPATH=${GLIBCOMPILESCHEMA}" -D "GLIB_SCHEMAFILE:FILEPATH=${gfile}" -P "${CMAKE_BINARY_DIR}/GlibCompileSchema_verify.cmake" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${gfile}" "${gfile_copied}" DEPENDS "${gfile}" COMMENT "Install and verify gsettings schemas locally..." VERBATIM ) list(APPEND gfiles_copied "${gfile_copied}") endforeach() add_custom_command( OUTPUT "glib-2.0/schemas/gschemas.compiled" COMMAND "${CMAKE_COMMAND}" -P "${CMAKE_BINARY_DIR}/GlibCompileSchema_local.cmake" DEPENDS ${gfiles_copied} COMMENT "Compile gsettings schemas..." VERBATIM ) add_custom_target("gsettings_${project_name_lower}" DEPENDS "glib-2.0/schemas/gschemas.compiled" ) add_dependencies("${project_name_lower}" "gsettings_${project_name_lower}") endif() if(NOT ARGS_GSETTINGSDIR) set(ARGS_GSETTINGSDIR "share/glib-2.0/schemas") endif() foreach(gfile ${ARGS_FILES}) install(FILES "${gfile}" DESTINATION "${ARGS_GSETTINGSDIR}") endforeach() if(POSTINSTALL_HOOK AND "$ENV{DESTDIR}" STREQUAL "") if(CMAKE_INSTALL_PREFIX) set(install_prefix "${CMAKE_INSTALL_PREFIX}/") else() set(install_prefix) endif() set(GSETTINGSDIR "${install_prefix}${ARGS_GSETTINGSDIR}") configure_file( "${CMAKE_SOURCE_DIR}/cmake/GlibCompileSchema.cmake.in" "${CMAKE_BINARY_DIR}/GlibCompileSchema.cmake" @ONLY ) install(SCRIPT "${CMAKE_BINARY_DIR}/GlibCompileSchema.cmake") endif() endif() endfunction() ## # Recursively copy directory content. # # Usage: # # TARGET # Name of CMake target. Default is 'copy_dirs'. # # BASEDIR # Name of base directory to build relative paths compared to TARGETDIR. # Default is ${CMAKE_CURRENT_SOURCE_DIR}. # # TARGETDIR # Name of base directory where to copy files to. Default is # ${CMAKE_CURRENT_BINARY_DIR}. # # DIRS # List of directories (or files) to recursively copy. # # # Simple example: # # copy_dirs( # TARGET # "custom_target_name # BASEDIR # "${CMAKE_CURRENT_SOURCE_DIR}/foo" # TARGETDIR # "${CMAKE_CURRENT_BINARY_DIR}/bar" # DIRS # "blub̈́*" # "/foobar/bar" # ) # # Copy ${}/foo/blub* and /foobar/bar to ${}/bar (= ${}/bar/blub*) and # # ${}/bar/foobar/bar) # add_custom_target("foobar" # ALL # DEPENDS # "custom_target_name" # COMMENT "Copy some files" # ) # function(copy_dirs) include(CMakeParseArguments) cmake_parse_arguments(ARGS "" "TARGET;BASEDIR;TARGETDIR" "DIRS" ${ARGN}) if(NOT ARGS_BASEDIR) set(ARGS_BASEDIR "${CMAKE_CURRENT_SOURCE_DIR}") endif() if(NOT ARGS_TARGET) set(ARGS_TARGET "copy_dirs") endif() if(NOT ARGS_TARGETDIR) set(ARGS_TARGETDIR "${CMAKE_CURRENT_BINARY_DIR}") endif() set(copyfiles) foreach(globexpr ${ARGS_DIRS}) file(GLOB tmpdirs ${globexpr}) if(tmpdirs) foreach(tmpdir ${tmpdirs}) get_files_recursively(files "${tmpdir}") list(APPEND copyfiles ${files}) endforeach() else() get_files_recursively(files "${globexpr}") list(APPEND copyfiles ${files}) endif() endforeach() set(copyfiles_d) foreach(copyfile ${copyfiles}) file(RELATIVE_PATH copyfile_d "${ARGS_BASEDIR}" "${copyfile}") set(copyfile_d "${ARGS_TARGETDIR}/${copyfile_d}") add_custom_command( OUTPUT "${copyfile_d}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${copyfile}" "${copyfile_d}" DEPENDS "${copyfile}" VERBATIM ) list(APPEND copyfiles_d "${copyfile_d}") endforeach() add_custom_target("${ARGS_TARGET}" DEPENDS ${copyfiles_d} #COMMENT "Copy data files." ) endfunction() ## # Recursively get list of files. # # From refaim on stackoverflow: http://stackoverflow.com/a/7788165/770468 # # Usage: # The first parameter is set to list of files. The second one is the path of # current directory. # # # Simple example: # # # Set ${files} to all files in foo/ directory. # get_files_recursively(files "foo") # macro(get_files_recursively result curdir) file(GLOB children RELATIVE "${curdir}" "${curdir}/*") set(files) foreach(child ${children}) if(IS_DIRECTORY "${curdir}/${child}") get_files_recursively(subfiles "${curdir}") list(APPEND files ${subfiles}) else() list(APPEND files "${curdir}/${child}") endif() endforeach() set(${result} ${files}) endmacro() ## # Computes the realtionship between two version strings. A version # string is a number delineated by '.'s such as 1.3.2 and 0.99.9.1. # You can feed version strings with different number of dot versions, # and the shorter version number will be padded with zeros: 9.2 < # 9.2.1 will actually compare 9.2.0 < 9.2.1. # # Input: a_in - value, not variable # b_in - value, not variable # result_out - variable with value: # -1 : a_in < b_in # 0 : a_in == b_in # 1 : a_in > b_in # # Written by James Bigler. # http://www.cmake.org/Wiki/CMakeCompareVersionStrings (2013/09/29) # macro(compare_version_strings a_in b_in result_out) # Since SEPARATE_ARGUMENTS using ' ' as the separation token, # replace '.' with ' ' to allow easy tokenization of the string. string(REPLACE "." " " a ${a_in}) string(REPLACE "." " " b ${b_in}) separate_arguments(a) separate_arguments(b) # Check the size of each list to see if they are equal. list(LENGTH a a_length) list(LENGTH b b_length) # Pad the shorter list with zeros. # Note that range needs to be one less than the length as the for # loop is inclusive (silly CMake). if(a_length LESS b_length) # a is shorter set(shorter a) math(EXPR range "${b_length} - 1") math(EXPR pad_range "${b_length} - ${a_length} - 1") else() # b is shorter set(shorter b) math(EXPR range "${a_length} - 1") math(EXPR pad_range "${a_length} - ${b_length} - 1") endif() # PAD out if we need to if(NOT pad_range LESS 0) foreach(pad RANGE ${pad_range}) # Since shorter is an alias for b, we need to get to it by by dereferencing shorter. list(APPEND ${shorter} 0) endforeach() endif() set(result 0) foreach(index RANGE ${range}) if(result EQUAL 0) # Only continue to compare things as long as they are equal list(GET a ${index} a_version) list(GET b ${index} b_version) # LESS if(a_version LESS b_version) set(result -1) endif() # GREATER if(a_version GREATER b_version) set(result 1) endif() endif() endforeach() # Copy out the return result set(${result_out} ${result}) endmacro() ================================================ FILE: cmake/FindIntltool.cmake ================================================ # # cmake/Intltool.cmake # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## find_program(INTLTOOL_EXTRACT_EXECUTABLE intltool-extract) find_program(INTLTOOL_MERGE_EXECUTABLE intltool-merge) mark_as_advanced(INTLTOOL_EXTRACT_EXECUTABLE) mark_as_advanced(INTLTOOL_MERGE_EXECUTABLE) if(INTLTOOL_EXTRACT_EXECUTABLE) execute_process( COMMAND "${INTLTOOL_EXTRACT_EXECUTABLE}" "--version" OUTPUT_VARIABLE intltool_version ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE ) if(intltool_version MATCHES "^intltool-extract \\(.*\\) [0-9]") string(REGEX REPLACE "^intltool-extract \\([^\\)]*\\) ([0-9\\.]+[^ \n]*).*" "\\1" INTLTOOL_VERSION_STRING "${intltool_version}") endif() unset(intltool_version) endif() include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Intltool REQUIRED_VARS INTLTOOL_EXTRACT_EXECUTABLE INTLTOOL_MERGE_EXECUTABLE VERSION_VAR INTLTOOL_VERSION_STRING ) set(INTLTOOL_OPTIONS_DEFAULT "--quiet" ) ================================================ FILE: cmake/Gettext.cmake ================================================ # # cmake/Gettext.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # # Heavily based on Jim Nelson's Gettext.cmake in Geary project: # https://github.com/ypcs/geary # ## # Add find_package handler for gettext programs msgmerge, msgfmt, msgcat and # xgettext. ## # Constant: # XGETTEXT_OPTIONS_DEFAULT: Provide common xgettext options. # XGETTEXT_VALA_OPTIONS_DEFAULT: Provide common xgettext options for Vala files. # XGETTEXT_GLADE_OPTIONS_DEFAULT: Provide common xgettext options for glade. ## # The gettext_create_pot macro creates .pot files with xgettext from multiple # source files. # Provide target 'pot' to generate .pot file. # # Supported sections: # # PACKAGE (optional) # Gettext package name. Get exported to parent scope. # Default: ${PROJECT_NAME} # # VERSION (optional) # Gettext package version. Get exported to parent scope. # Default: ${${GETTEXT_PACKAGE_NAME}_VERSION} # (${GETTEXT_PACKAGE_NAME} is package name from option above) # # OPTIONS (optional) # Pass list of xgettext options (you can use XGETTEXT_OPTIONS_DEFAULT, # XGETTEXT_VALA_OPTIONS_DEFAULT and XGETTEXT_GLADE_OPTIONS_DEFAULT # constants). # Default: ${XGETTEXT_{,VALA,GLADE}_OPTIONS_DEFAULT} # # SRCFILES (optional/mandatory) # List of source files to extract gettext strings from. Globbing is # supported. # # GLADEFILES (optional/mandatory) # List of glade source files to extract gettext strings from. Globbing is # supported. # # DESKTOPFILES (optional/mandatory) # List of .desktop files to extract gettext strings from. Globbing is # supported. # intltool required. # # GSETTINGSFILES (optional/mandatory) # List of gsettings (.gschema.xml) files to extract gettext strings from. # Globbing is supported. # intltool required. # # Either SRCFILES or GLADEFILES or DESKTOPFILES or GSETTINGSFILES (or all) # have to be filled with some files. # ## # The gettext_create_translations function generates .gmo files from .po files # and install them as .mo files. # Provide target 'translations' to build .gmo files. # # Supported sections: # # ALL (optional) # Make translations target a dependency of the 'all' target. (Build # translations with every build.) # # PODIR (optional) # Directory with .po files. # Default: ${CMAKE_CURRENT_SOURCE_DIR} # # LOCALEDIR (optional) # Base directory where to install translations. # Default: share/cmake # # LANGUAGES (optional) # List of language 'short names'. This is in generel the part before the .po. # With English locale this is e.g. 'en_GB' or 'en_US' etc. # # POFILES (optional) # List of .po files. # ## # # The following call is a simple example (within project po directory): # # include(Gettext) # if(XGETTEXT_FOUND) # set(potfile "${CMAKE_CURRENT_SOURCE_DIR}/my_project.pot") # gettext_create_pot("${potfile}" # SRCFILES # "${PROJECT_SOURCE_DIR}/src/*.vala" # ) # gettext_create_translations("${potfile}" ALL) # endif() # ## find_program(GETTEXT_MSGMERGE_EXECUTABLE msgmerge) find_program(GETTEXT_MSGFMT_EXECUTABLE msgfmt) find_program(GETTEXT_MSGCAT_EXECUTABLE msgcat) find_program(XGETTEXT_EXECUTABLE xgettext) mark_as_advanced(GETTEXT_MSGMERGE_EXECUTABLE) mark_as_advanced(GETTEXT_MSGFMT_EXECUTABLE) mark_as_advanced(GETTEXT_MSGCAT_EXECUTABLE) mark_as_advanced(XGETTEXT_EXECUTABLE) if(XGETTEXT_EXECUTABLE) execute_process( COMMAND "${XGETTEXT_EXECUTABLE}" "--version" OUTPUT_VARIABLE gettext_version ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE ) if(gettext_version MATCHES "^xgettext \\(.*\\) [0-9]") string(REGEX REPLACE "^xgettext \\([^\\)]*\\) ([0-9\\.]+[^ \n]*).*" "\\1" GETTEXT_VERSION_STRING "${gettext_version}") endif() unset(gettext_version) endif() include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Gettext REQUIRED_VARS XGETTEXT_EXECUTABLE GETTEXT_MSGMERGE_EXECUTABLE GETTEXT_MSGFMT_EXECUTABLE GETTEXT_MSGCAT_EXECUTABLE VERSION_VAR GETTEXT_VERSION_STRING ) if(XGETTEXT_EXECUTABLE AND GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE AND GETTEXT_MSGCAT_EXECUTABLE) set(XGETTEXT_FOUND TRUE) # Export variable to use it as status info. set(TRANSLATION_BUILD TRUE PARENT_SCOPE) else() set(XGETTEXT_FOUND FALSE) set(TRANSLATION_BUILD FALSE PARENT_SCOPE) endif() set(XGETTEXT_OPTIONS_DEFAULT "-s" "--escape" "--add-comments=TRANSLATORS:" #TODO: Make this configurable. "--from-code=UTF-8" ) set(XGETTEXT_VALA_OPTIONS_DEFAULT "--language" "C" "--keyword=_" "--keyword=N_" "--keyword=C_:1c,2" "--keyword=NC_:1c,2" ) set(XGETTEXT_GLADE_OPTIONS_DEFAULT "--language" "Glade" "--omit-header" ) set(XGETTEXT_INTLTOOL_OPTIONS "--language" "C" "--keyword=N_:1" ) set(_INTLTOOL_DESKTOPFILES) if(XGETTEXT_FOUND) macro(gettext_create_pot potfile) cmake_parse_arguments(ARGS "" "PACKAGE;VERSION;WORKING_DIRECTORY" "OPTIONS;VALA_OPTIONS;GLADE_OPTIONS;SRCFILES;GLADEFILES;DESKTOPFILES;GSETTINGSFILES" ${ARGN}) if(ARGS_PACKAGE) set(package_name "${ARGS_PACKAGE}") elseif(GETTEXT_PACKAGE) set(package_name "${GETTEXT_PACKAGE}") else() set(package_name "${PROJECT_NAME}") endif() if(ARGS_VERSION) set(package_version "${ARGS_VERSION}") elseif(VERSION) set(package_version "${VERSION}") else() set(package_version "${${package_name}_VERSION}") endif() # Export for status information. set(GETTEXT_PACKAGE_NAME "${package_name}" PARENT_SCOPE) set(GETTEXT_PACKAGE_VERSION "${package_version}" PARENT_SCOPE) if(NOT ARGS_WORKING_DIRECTORY) set(ARGS_WORKING_DIRECTORY "../") endif() set(xgettext_options "--package-name" "${package_name}") if(package_version) list(APPEND xgettext_options "--package-version" "${package_version}") endif() if(ARGS_OPTIONS) list(APPEND xgettext_options ${ARGS_OPTIONS}) else() list(APPEND xgettext_options ${XGETTEXT_OPTIONS_DEFAULT}) endif() if(ARGS_XGETTEXT_VALA_OPTIONS_DEFAULT) set(xgettext_vala_options ${ARGS_XGETTEXT_VALA_OPTIONS_DEFAULT}) else() set(xgettext_vala_options ${XGETTEXT_VALA_OPTIONS_DEFAULT}) endif() if(ARGS_XGETTEXT_GLADE_OPTIONS_DEFAULT) set(xgettext_glade_options ${ARGS_XGETTEXT_GLADE_OPTIONS_DEFAULT}) else() set(xgettext_glade_options ${XGETTEXT_GLADE_OPTIONS_DEFAULT}) endif() if(ARGS_SRCFILES OR ARGS_GLADEFILES OR ARGS_DESKTOPFILES OR ARGS_GSETTINGSFILES) set(src_list) set(src_list_abs) foreach(globexpr ${ARGS_SRCFILES}) if(NOT IS_ABSOLUTE "${globexpr}") get_filename_component(absDir "${ARGS_WORKING_DIRECTORY}" ABSOLUTE) set(globexpr "${absDir}/${globexpr}") endif() set(tmpsrcfiles) file(GLOB tmpsrcfiles ${globexpr}) if (tmpsrcfiles) foreach(absFile ${tmpsrcfiles}) file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile}") list(APPEND src_list "${relFile}") list(APPEND src_list_abs "${absFile}") endforeach() else() file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${globexpr}") list(APPEND src_list "${relFile}") list(APPEND src_list_abs "${globexpr}") endif() endforeach() set(glade_list) set(glade_list_abs) foreach(globexpr ${ARGS_GLADEFILES}) if(NOT IS_ABSOLUTE "${globexpr}") get_filename_component(absDir "${ARGS_WORKING_DIRECTORY}" ABSOLUTE) set(globexpr "${absDir}/${globexpr}") endif() set(tmpgladefiles) file(GLOB tmpgladefiles ${globexpr}) if (tmpgladefiles) foreach(absFile ${tmpgladefiles}) file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile}") list(APPEND glade_list "${relFile}") list(APPEND glade_list_abs "${absFile}") endforeach() else() file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${globexpr}") list(APPEND glade_list "${relFile}") list(APPEND glade_list_abs "${globexpr}") endif() endforeach() if(ARGS_DESKTOPFILES OR ARGS_GSETTINGSFILES) find_package(Intltool REQUIRED) endif() set(desktop_list) set(desktop_list_abs) set(desktop_list_b) set(desktop_list_b_abs) set(desktop_list_h) set(desktop_list_h_abs) foreach(globexpr ${ARGS_DESKTOPFILES}) if(NOT IS_ABSOLUTE "${globexpr}") get_filename_component(absDir "${ARGS_WORKING_DIRECTORY}" ABSOLUTE) set(globexpr "${absDir}/${globexpr}") endif() set(tmpdesktopfiles) file(GLOB tmpdesktopfiles ${globexpr}) if (tmpdesktopfiles) foreach(absFile ${tmpdesktopfiles}) file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile}") list(APPEND desktop_list "${relFile}") list(APPEND desktop_list_abs "${absFile}") file(RELATIVE_PATH relFile_b "${PROJECT_SOURCE_DIR}" "${absFile}") list(APPEND desktop_list_b "${relFile_b}") get_filename_component(absFile_b "${PROJECT_BINARY_DIR}/${relFile_b}" ABSOLUTE) list(APPEND desktop_list_b_abs "${absFile_b}") file(RELATIVE_PATH relFile_h "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile_b}.h") list(APPEND desktop_list_h "${relFile_h}") list(APPEND desktop_list_h_abs "${absFile_b}.h") add_custom_command( OUTPUT "${absFile_b}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${relFile}" "${absFile_b}" DEPENDS "${absFile}" VERBATIM ) endforeach() else() file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${globexpr}") list(APPEND desktop_list "${relFile}") list(APPEND desktop_list_abs "${globexpr}") file(RELATIVE_PATH relFile_b "${PROJECT_SOURCE_DIR}" "${globexpr}") list(APPEND desktop_list_b "${relFile_b}") get_filename_component(absFile_b "${PROJECT_BINARY_DIR}/${relFile_b}" ABSOLUTE) list(APPEND desktop_list_b_abs "${absFile_b}") file(RELATIVE_PATH relFile_h "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile_b}.h") list(APPEND desktop_list_h "${relFile_h}") list(APPEND desktop_list_h_abs "${absFile_b}.h") add_custom_command( OUTPUT "${absFile_b}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${relFile}" "${absFile_b}" DEPENDS "${absFile}" VERBATIM ) endif() endforeach() set(_INTLTOOL_DESKTOPFILES ${desktop_list_b}) set(gsettings_list) set(gsettings_list_abs) set(gsettings_list_b) set(gsettings_list_b_abs) set(gsettings_list_h) set(gsettings_list_h_abs) foreach(globexpr ${ARGS_GSETTINGSFILES}) if(NOT IS_ABSOLUTE "${globexpr}") get_filename_component(absDir "${ARGS_WORKING_DIRECTORY}" ABSOLUTE) set(globexpr "${absDir}/${globexpr}") endif() set(tmpgsettingsfiles) file(GLOB tmpgsettingsfiles ${globexpr}) if (tmpgsettingsfiles) foreach(absFile ${tmpgsettingsfiles}) file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile}") list(APPEND gsettings_list "${relFile}") list(APPEND gsettings_list_abs "${absFile}") file(RELATIVE_PATH relFile_b "${PROJECT_SOURCE_DIR}" "${absFile}") list(APPEND gsettings_list_b "${relFile_b}") get_filename_component(absFile_b "${PROJECT_BINARY_DIR}/${relFile_b}" ABSOLUTE) list(APPEND gsettings_list_b_abs "${absFile_b}") file(RELATIVE_PATH relFile_h "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile_b}.h") list(APPEND gsettings_list_h "${relFile_h}") list(APPEND gsettings_list_h_abs "${absFile_b}.h") add_custom_command( OUTPUT "${absFile_b}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${relFile}" "${absFile_b}" DEPENDS "${absFile}" VERBATIM ) endforeach() else() file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${globexpr}") list(APPEND gsettings_list "${relFile}") list(APPEND gsettings_list_abs "${globexpr}") file(RELATIVE_PATH relFile_b "${PROJECT_SOURCE_DIR}" "${globexpr}") list(APPEND gsettings_list_b "${relFile_b}") get_filename_component(absFile_b "${PROJECT_BINARY_DIR}/${relFile_b}" ABSOLUTE) list(APPEND gsettings_list_b_abs "${absFile_b}") file(RELATIVE_PATH relFile_h "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile_b}.h") list(APPEND gsettings_list_h "${relFile_h}") list(APPEND gsettings_list_h_abs "${absFile_b}.h") add_custom_command( OUTPUT "${absFile_b}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${relFile}" "${absFile_b}" VERBATIM ) endif() endforeach() if(ARGS_SRCFILES) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" COMMAND "${XGETTEXT_EXECUTABLE}" ${xgettext_options} ${xgettext_vala_options} "-o" "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" ${src_list} COMMAND # Make sure file exists even if no translatable strings available. "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" DEPENDS ${src_list_abs} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) else() add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" VERBATIM ) endif() if(ARGS_GLADEFILES) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" COMMAND "${XGETTEXT_EXECUTABLE}" ${xgettext_options} ${xgettext_glade_options} "-o" "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" ${glade_list} COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" DEPENDS ${glade_list_abs} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) else() add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" VERBATIM ) endif() if(ARGS_DESKTOPFILES) add_custom_command( OUTPUT ${desktop_list_h_abs} COMMAND "${INTLTOOL_EXTRACT_EXECUTABLE}" ${INTLTOOL_OPTIONS_DEFAULT} "--type" "gettext/ini" ${desktop_list_b} DEPENDS ${desktop_list_b_abs} WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" VERBATIM ) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" COMMAND "${XGETTEXT_EXECUTABLE}" ${xgettext_options} ${XGETTEXT_INTLTOOL_OPTIONS} "-o" "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" ${desktop_list_h} COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" DEPENDS ${desktop_list_h_abs} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) else() add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" VERBATIM ) endif() if(ARGS_GSETTINGSFILES) add_custom_command( OUTPUT ${gsettings_list_h_abs} COMMAND "${INTLTOOL_EXTRACT_EXECUTABLE}" ${INTLTOOL_OPTIONS_DEFAULT} "--type" "gettext/gsettings" ${gsettings_list_b} DEPENDS ${gsettings_list_b_abs} WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" VERBATIM ) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" COMMAND "${XGETTEXT_EXECUTABLE}" ${xgettext_options} ${XGETTEXT_INTLTOOL_OPTIONS} "-o" "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" ${gsettings_list_h} COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" DEPENDS ${gsettings_list_h_abs} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) else() add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" VERBATIM ) endif() add_custom_target(pot COMMAND "${GETTEXT_MSGCAT_EXECUTABLE}" "-o" "${potfile}" "--use-first" "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" COMMENT "Extract translatable messages to ${potfile}" VERBATIM ) endif() endmacro() function(gettext_create_translations potfile) cmake_parse_arguments(ARGS "ALL;NOUPDATE;DESKTOPFILES_INSTALL" "PODIR;LOCALEDIR" "LANGUAGES;POFILES" ${ARGN}) get_filename_component(_potBasename "${potfile}" NAME_WE) get_filename_component(_absPotFile "${potfile}" ABSOLUTE) if(ARGS_ALL) set(make_all "ALL") else() set(make_all) endif() if(ARGS_LOCALEDIR) set(_localedir "${ARGS_LOCALEDIR}") elseif(localedir) set(_localedir "${localedir}") else() set(_localedir "share/locale") endif() set(langs) list(APPEND langs ${ARGS_LANGUAGES}) foreach(globexpr ${ARGS_POFILES}) set(tmppofiles) file(GLOB tmppofiles ${globexpr}) if(tmppofiles) foreach(tmppofile ${tmppofiles}) string(REGEX REPLACE ".*/([a-zA-Z_]+)(\\.po)?$" "\\1" lang "${tmppofile}") list(APPEND langs "${lang}") endforeach() else() string(REGEX REPLACE ".*/([a-zA-Z_]+)(\\.po)?$" "\\1" lang "${globexpr}") list(APPEND langs "${lang}") endif() endforeach() if(NOT langs AND NOT ARGS_PODIR) set(ARGS_PODIR "${CMAKE_CURRENT_SOURCE_DIR}") endif() if(ARGS_PODIR) file(GLOB pofiles "${ARGS_PODIR}/*.po") foreach(pofile ${pofiles}) string(REGEX REPLACE ".*/([a-zA-Z_]+)\\.po$" "\\1" lang "${pofile}") list(APPEND langs "${lang}") endforeach() endif() if(langs) list(REMOVE_DUPLICATES langs) endif() set(_gmoFile) set(_gmoFiles) foreach (lang ${langs}) get_filename_component(_absFile "${lang}.po" ABSOLUTE) set(_gmoFile "${CMAKE_CURRENT_BINARY_DIR}/${lang}.gmo") if(ARGS_NOUPDATE) set(_absFile_new "${CMAKE_CURRENT_BINARY_DIR}/${lang}.po") add_custom_command( OUTPUT "${_absFile_new}" COMMAND "${CMAKE_COMMAND}" -E copy "${_absFile}" "${_absFile_new}" DEPENDS "${_absPotFile}" "${_absFile}" VERBATIM ) set(_absFile "${_absFile_new}") endif() add_custom_command( OUTPUT "${_gmoFile}" COMMAND "${GETTEXT_MSGMERGE_EXECUTABLE}" "--quiet" "--update" "--backup=none" "-s" "${_absFile}" "${_absPotFile}" COMMAND "${GETTEXT_MSGFMT_EXECUTABLE}" "-o" "${_gmoFile}" "${_absFile}" DEPENDS "${_absPotFile}" "${_absFile}" WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" VERBATIM ) install( FILES "${_gmoFile}" DESTINATION "${_localedir}/${lang}/LC_MESSAGES" RENAME "${_potBasename}.mo" ) list(APPEND _gmoFiles "${_gmoFile}") endforeach() set(desktopfiles) if(langs AND _INTLTOOL_DESKTOPFILES) file(RELATIVE_PATH cursrcdir_rel "${CMAKE_CURRENT_BINARY_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") if(cursrcdir_rel STREQUAL "") set(cursrcdir_rel ".") endif() foreach(desktopfiletmp ${_INTLTOOL_DESKTOPFILES}) string(REGEX REPLACE "(\\.desktop).*$" "\\1" desktopfile "${desktopfiletmp}") set(desktopfile_abs "${PROJECT_BINARY_DIR}/${desktopfile}") list(APPEND desktopfiles "${desktopfile_abs}") file(RELATIVE_PATH desktopfile_rel "${CMAKE_CURRENT_BINARY_DIR}" "${desktopfile_abs}") file(RELATIVE_PATH desktopfiletmp_rel "${CMAKE_CURRENT_BINARY_DIR}" "${PROJECT_BINARY_DIR}/${desktopfiletmp}") add_custom_command( OUTPUT "${desktopfile_abs}" COMMAND "${INTLTOOL_MERGE_EXECUTABLE}" ${INTLTOOL_OPTIONS_DEFAULT} "--desktop-style" "${cursrcdir_rel}" "${desktopfiletmp_rel}" "${desktopfile_rel}" DEPENDS "${PROJECT_BINARY_DIR}/${desktopfiletmp}" VERBATIM ) if(ARGS_DESKTOPFILES_INSTALL AND NOT cursrcdir_rel STREQUAL ".") add_custom_command( OUTPUT "${CMAKE_SOURCE_DIR}/${desktopfile}" "desktopinstall.stamp" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${desktopfile_abs}" "${CMAKE_SOURCE_DIR}/${desktopfile}" COMMAND "${CMAKE_COMMAND}" -E touch "desktopinstall.stamp" DEPENDS "${desktopfile_abs}" VERBATIM ) else() add_custom_command( OUTPUT "desktopinstall.stamp" COMMAND "${CMAKE_COMMAND}" -E touch "desktopinstall.stamp" DEPENDS "${desktopfile_abs}" VERBATIM ) endif() list(APPEND desktopfiles "desktopinstall.stamp") install( FILES "${desktopfile_abs}" DESTINATION "share/applications" ) endforeach() endif() add_custom_target(translations "${make_all}" DEPENDS ${_gmoFiles} ${desktopfiles} COMMENT "Build translations." ) endfunction() endif() # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: cmake/GlibCompileSchema.cmake.in ================================================ # # cmake/GlibCompileSchema.cmake # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # find_program(GLIBCOMPILESCHEMA "glib-compile-schemas") if(GLIBCOMPILESCHEMA) execute_process( COMMAND "${GLIBCOMPILESCHEMA}" @GSETTINGSDIR@ ) endif() ================================================ FILE: cmake/GlibCompileSchema_verify.cmake.in ================================================ # # cmake/GlibCompileSchema.cmake.in # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # execute_process( COMMAND "${GLIBCOMPILESCHEMA}" "--dry-run" "--schema-file=${GLIB_SCHEMAFILE}" ERROR_VARIABLE stderr OUTPUT_VARIABLE stderr OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_STRIP_TRAILING_WHITESPACE ) if(NOT "${stderr}" STREQUAL "") message(FATAL_ERROR "Schema validation error: ${stderr}") endif() # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: cmake/SimpleUninstall.cmake ================================================ # # cmake/SimpleUninstall.cmake # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # # Slightly modified version from: http://www.cmake.org/Wiki/CMake_FAQ # if(NOT EXISTS "${CMAKE_BINARY_DIR}/install_manifest.txt") message(FATAL_ERROR "Cannot find install manifest: " "\"${CMAKE_BINARY_DIR}/install_manifest.txt\"") endif() file(READ "${CMAKE_BINARY_DIR}/install_manifest.txt" files) string(REGEX REPLACE "\n" ";" files "${files}") cmake_policy(PUSH) # Ignore empty list elements. cmake_policy(SET CMP0007 OLD) list(REVERSE files) cmake_policy(POP) foreach(file ${files}) message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"") if(EXISTS "$ENV{DESTDIR}${file}") execute_process( COMMAND "${CMAKE_COMMAND}" -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() else() message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.") endif() endforeach() if(NOT "$ENV{DESTDIR}" AND POSTREMOVE_HOOK) if (GSETTINGSDIR) set(compile_schema_file "${CMAKE_BINARY_DIR}/GlibCompileSchema_uninstall.cmake") if(NOT EXISTS "${compile_schema_file}") if(NOT CUSTOM_SOURCE_DIR) set(CUSTOM_SOURCE_DIR "${CMAKE_SOURCE_DIR}") endif() configure_file( "${CUSTOM_SOURCE_DIR}/cmake/GlibCompileSchema.cmake.in" "${compile_schema_file}" @ONLY ) endif() endif() execute_process( COMMAND "${CMAKE_COMMAND}" -P "${compile_schema_file}" ) endif() ================================================ FILE: cmake/gitlog-to-changelog.pl ================================================ eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}' & eval 'exec perl -wS "$0" $argv:q' if 0; # Convert git log output to ChangeLog format. my $VERSION = '2012-07-29 06:11'; # UTC # The definition above must lie within the first 8 lines in order # for the Emacs time-stamp write hook (at end) to update it. # If you change this file with Emacs, please let the write hook # do its job. Otherwise, update this string manually. # Copyright (C) 2008-2014 Free Software Foundation, Inc. # 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 3 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, see . # Written by Jim Meyering use strict; use warnings; use Getopt::Long; use POSIX qw(strftime); (my $ME = $0) =~ s|.*/||; # use File::Coda; # http://meyering.net/code/Coda/ END { defined fileno STDOUT or return; close STDOUT and return; warn "$ME: failed to close standard output: $!\n"; $? ||= 1; } sub usage ($) { my ($exit_code) = @_; my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR); if ($exit_code != 0) { print $STREAM "Try '$ME --help' for more information.\n"; } else { print $STREAM < ChangeLog $ME -- -n 5 foo > last-5-commits-to-branch-foo SPECIAL SYNTAX: The following types of strings are interpreted specially when they appear at the beginning of a log message line. They are not copied to the output. Copyright-paperwork-exempt: Yes Append the "(tiny change)" notation to the usual "date name email" ChangeLog header to mark a change that does not require a copyright assignment. Co-authored-by: Joe User List the specified name and email address on a second ChangeLog header, denoting a co-author. Signed-off-by: Joe User These lines are simply elided. In a FILE specified via --amend, comment lines (starting with "#") are ignored. FILE must consist of pairs where SHA is a 40-byte SHA1 (alone on a line) referring to a commit in the current project, and CODE refers to one or more consecutive lines of Perl code. Pairs must be separated by one or more blank line. Here is sample input for use with --amend=FILE, from coreutils: 3a169f4c5d9159283548178668d2fae6fced3030 # fix typo in title: s/all tile types/all file types/ 1379ed974f1fa39b12e2ffab18b3f7a607082202 # Due to a bug in vc-dwim, I mis-attributed a patch by Paul to myself. # Change the author to be Paul. Note the escaped "@": s,Jim .*>,Paul Eggert , EOF } exit $exit_code; } # If the string $S is a well-behaved file name, simply return it. # If it contains white space, quotes, etc., quote it, and return the new string. sub shell_quote($) { my ($s) = @_; if ($s =~ m![^\w+/.,-]!) { # Convert each single quote to '\'' $s =~ s/\'/\'\\\'\'/g; # Then single quote the string. $s = "'$s'"; } return $s; } sub quoted_cmd(@) { return join (' ', map {shell_quote $_} @_); } # Parse file F. # Comment lines (starting with "#") are ignored. # F must consist of pairs where SHA is a 40-byte SHA1 # (alone on a line) referring to a commit in the current project, and # CODE refers to one or more consecutive lines of Perl code. # Pairs must be separated by one or more blank line. sub parse_amend_file($) { my ($f) = @_; open F, '<', $f or die "$ME: $f: failed to open for reading: $!\n"; my $fail; my $h = {}; my $in_code = 0; my $sha; while (defined (my $line = )) { $line =~ /^\#/ and next; chomp $line; $line eq '' and $in_code = 0, next; if (!$in_code) { $line =~ /^([0-9a-fA-F]{40})$/ or (warn "$ME: $f:$.: invalid line; expected an SHA1\n"), $fail = 1, next; $sha = lc $1; $in_code = 1; exists $h->{$sha} and (warn "$ME: $f:$.: duplicate SHA1\n"), $fail = 1, next; } else { $h->{$sha} ||= ''; $h->{$sha} .= "$line\n"; } } close F; $fail and exit 1; return $h; } # git_dir_option $SRCDIR # # From $SRCDIR, the --git-dir option to pass to git (none if $SRCDIR # is undef). Return as a list (0 or 1 element). sub git_dir_option($) { my ($srcdir) = @_; my @res = (); if (defined $srcdir) { my $qdir = shell_quote $srcdir; my $cmd = "cd $qdir && git rev-parse --show-toplevel"; my $qcmd = shell_quote $cmd; my $git_dir = qx($cmd); defined $git_dir or die "$ME: cannot run $qcmd: $!\n"; $? == 0 or die "$ME: $qcmd had unexpected exit code or signal ($?)\n"; chomp $git_dir; push @res, "--git-dir=$git_dir/.git"; } @res; } { my $since_date; my $format_string = '%s%n%b%n'; my $amend_file; my $append_dot = 0; my $cluster = 1; my $strip_tab = 0; my $strip_cherry_pick = 0; my $srcdir; GetOptions ( help => sub { usage 0 }, version => sub { print "$ME version $VERSION\n"; exit }, 'since=s' => \$since_date, 'format=s' => \$format_string, 'amend=s' => \$amend_file, 'append-dot' => \$append_dot, 'cluster!' => \$cluster, 'strip-tab' => \$strip_tab, 'strip-cherry-pick' => \$strip_cherry_pick, 'srcdir=s' => \$srcdir, ) or usage 1; defined $since_date and unshift @ARGV, "--since=$since_date"; # This is a hash that maps an SHA1 to perl code (i.e., s/old/new/) # that makes a correction in the log or attribution of that commit. my $amend_code = defined $amend_file ? parse_amend_file $amend_file : {}; my @cmd = ('git', git_dir_option $srcdir, qw(log --log-size), '--pretty=format:%H:%ct %an <%ae>%n%n'.$format_string, @ARGV); open PIPE, '-|', @cmd or die ("$ME: failed to run '". quoted_cmd (@cmd) ."': $!\n" . "(Is your Git too old? Version 1.5.1 or later is required.)\n"); my $prev_multi_paragraph; my $prev_date_line = ''; my @prev_coauthors = (); while (1) { defined (my $in = ) or last; $in =~ /^log size (\d+)$/ or die "$ME:$.: Invalid line (expected log size):\n$in"; my $log_nbytes = $1; my $log; my $n_read = read PIPE, $log, $log_nbytes; $n_read == $log_nbytes or die "$ME:$.: unexpected EOF\n"; # Extract leading hash. my ($sha, $rest) = split ':', $log, 2; defined $sha or die "$ME:$.: malformed log entry\n"; $sha =~ /^[0-9a-fA-F]{40}$/ or die "$ME:$.: invalid SHA1: $sha\n"; # If this commit's log requires any transformation, do it now. my $code = $amend_code->{$sha}; if (defined $code) { eval 'use Safe'; my $s = new Safe; # Put the unpreprocessed entry into "$_". $_ = $rest; # Let $code operate on it, safely. my $r = $s->reval("$code") or die "$ME:$.:$sha: failed to eval \"$code\":\n$@\n"; # Note that we've used this entry. delete $amend_code->{$sha}; # Update $rest upon success. $rest = $_; } # Remove lines inserted by "git cherry-pick". if ($strip_cherry_pick) { $rest =~ s/^\s*Conflicts:\n.*//sm; $rest =~ s/^\s*\(cherry picked from commit [\da-f]+\)\n//m; } my @line = split "\n", $rest; my $author_line = shift @line; defined $author_line or die "$ME:$.: unexpected EOF\n"; $author_line =~ /^(\d+) (.*>)$/ or die "$ME:$.: Invalid line " . "(expected date/author/email):\n$author_line\n"; # Format 'Copyright-paperwork-exempt: Yes' as a standard ChangeLog # `(tiny change)' annotation. my $tiny = (grep (/^Copyright-paperwork-exempt:\s+[Yy]es$/, @line) ? ' (tiny change)' : ''); my $date_line = sprintf "%s %s$tiny\n", strftime ("%F", localtime ($1)), $2; my @coauthors = grep /^Co-authored-by:.*$/, @line; # Omit meta-data lines we've already interpreted. @line = grep !/^(?:Signed-off-by:[ ].*>$ |Co-authored-by:[ ] |Copyright-paperwork-exempt:[ ] )/x, @line; # Remove leading and trailing blank lines. if (@line) { while ($line[0] =~ /^\s*$/) { shift @line; } while ($line[$#line] =~ /^\s*$/) { pop @line; } } # Record whether there are two or more paragraphs. my $multi_paragraph = grep /^\s*$/, @line; # Format 'Co-authored-by: A U Thor ' lines in # standard multi-author ChangeLog format. for (@coauthors) { s/^Co-authored-by:\s*/\t /; s/\s*/ or warn "$ME: warning: missing email address for " . substr ($_, 5) . "\n"; } # If clustering of commit messages has been disabled, if this header # would be different from the previous date/name/email/coauthors header, # or if this or the previous entry consists of two or more paragraphs, # then print the header. if ( ! $cluster || $date_line ne $prev_date_line || "@coauthors" ne "@prev_coauthors" || $multi_paragraph || $prev_multi_paragraph) { $prev_date_line eq '' or print "\n"; print $date_line; @coauthors and print join ("\n", @coauthors), "\n"; } $prev_date_line = $date_line; @prev_coauthors = @coauthors; $prev_multi_paragraph = $multi_paragraph; # If there were any lines if (@line == 0) { warn "$ME: warning: empty commit message:\n $date_line\n"; } else { if ($append_dot) { # If the first line of the message has enough room, then if (length $line[0] < 72) { # append a dot if there is no other punctuation or blank # at the end. $line[0] =~ /[[:punct:]\s]$/ or $line[0] .= '.'; } } # Remove one additional leading TAB from each line. $strip_tab and map { s/^\t// } @line; # Prefix each non-empty line with a TAB. @line = map { length $_ ? "\t$_" : '' } @line; print "\n", join ("\n", @line), "\n"; } defined ($in = ) or last; $in ne "\n" and die "$ME:$.: unexpected line:\n$in"; } close PIPE or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n"; # FIXME-someday: include $PROCESS_STATUS in the diagnostic # Complain about any unused entry in the --amend=F specified file. my $fail = 0; foreach my $sha (keys %$amend_code) { warn "$ME:$amend_file: unused entry: $sha\n"; $fail = 1; } exit $fail; } # Local Variables: # mode: perl # indent-tabs-mode: nil # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "my $VERSION = '" # time-stamp-format: "%:y-%02m-%02d %02H:%02M" # time-stamp-time-zone: "UTC" # time-stamp-end: "'; # UTC" # End: ================================================ FILE: cmake/guanako.cmake ================================================ set(project_name "Guanako") set(Guanako_VERSION "1.0") set(soversion "1") set(required_pkgs "config {nocheck,nolink}" "gobject-2.0" "glib-2.0" "gio-2.0" "gee-0.8 >= 0.10.5" "libvala-0.20" "libvala-0.22" "libvala-0.24" "libvala-0.26" "libvala-0.28" "libvala-0.30" "libxml-2.0" "posix {nocheck,nolink}" ) set(srcfiles "guanako.vala" "guanako_auto_indent.vala" "guanako_frankenstein.vala" "guanako_helpers.vala" "guanako_iterators.vala" "guanako_refactoring.vala" "guanako_vapi_discoverer.vala" "reporter.vala" "scanner/valascanner.vala" "scanner/valaparser.vala" ) set(vapifiles "config.vapi" ) ================================================ FILE: cmake/project.cmake ================================================ # This file was auto generated by Valama 0.1.2. Do not modify it. set(project_name "Valama") set(Valama_VERSION "0.1.2") set(required_pkgs "atk {nolink}" "cairo {nolink}" "clutter-1.0 {nolink}" "clutter-gtk-1.0" "cogl-1.0 {nolink}" "config {nocheck,nolink}" "gdk-3.0" "gdk-pixbuf-2.0 {nolink}" "gdl-3.0 >= 3.8" "gee-0.8 >= 0.10.5" "gio-2.0" "gladeui-2.0" "glib-2.0 >= 2.32" "gmodule-2.0 {nolink}" "gobject-2.0" "gtk+-3.0 >= 3.9" "gtksourceview-3.0 >= 3.9" "guanako" "json-glib-1.0 {nolink}" "libsoup-2.4 {nolink}" "libvala-0.20" "libvala-0.22" "libvala-0.24" "libvala-0.26" "libvala-0.28" "libvala-0.30" "libxml-2.0" "pango {nolink}" "pangocairo {nolink}" "posix {nocheck,nolink}" "webkit2gtk-3.0" "x11 {nolink}" ) set(srcfiles "src/buildsystem/autotools.vala" "src/buildsystem/base.vala" "src/buildsystem/buildsystem_template.vala" "src/buildsystem/cmake.vala" "src/buildsystem/plain.vala" "src/common/args.vala" "src/common/common.vala" "src/common/ui_helpers.vala" "src/completion_provider.vala" "src/dialogs/about.vala" "src/dialogs/create_file.vala" "src/dialogs/missing_packages.vala" "src/dialogs/project_settings.vala" "src/main.vala" "src/project/build_project.vala" "src/project/package_management.vala" "src/project/project.vala" "src/project/project_file.vala" "src/project/project_templates.vala" "src/settings.vala" "src/ui/app_output.vala" "src/ui/breakpoints.vala" "src/ui/build_output.vala" "src/ui/current_file_structure.vala" "src/ui/glade_viewer.vala" "src/ui/project_browser.vala" "src/ui/reports.vala" "src/ui/search.vala" "src/ui/source_viewer.vala" "src/ui/structure_view.vala" "src/ui/super_source_view.vala" "src/ui/symbol_browser.vala" "src/ui/ui_elements.vala" "src/ui/valadoc_browser.vala" "src/ui/welcome_screen.vala" "src/ui/welcome_screen/create_project_buildsystem.vala" "src/ui/welcome_screen/create_project_location.vala" "src/ui/welcome_screen/create_project_packages.vala" "src/ui/welcome_screen/create_project_template.vala" "src/ui/welcome_screen/load_project.vala" "src/ui/welcome_screen/main_screen.vala" "src/ui/widgets/browser_path.vala" "src/ui_main.vala" ) set(vapifiles "vapi/config.vapi" ) set(uifiles ) ================================================ FILE: cmake/vala/FindVala.cmake ================================================ # # cmake/vala/FindVala.cmake # ## # Find module for the Vala compiler (valac) # # This module determines whether a Vala compiler is installed on the current # system and where its executable is. # # Call the module using "find_package(Vala) from within your CMakeLists.txt. # # The following variables will be set after an invocation: # # VALA_FOUND Whether the vala compiler has been found or not # VALA_EXECUTABLE Full path to the valac executable if it has been found # VALA_VERSION Version number of the available valac # # VALA_SHORTVER Short version of valac (major.minor). Round up development # versions. E.g. 0.19.1 -> 0.20, 0.20.1 -> 0.20 # VALA_LIBPKG Name of libvala library (libvala-${VALA_SHORTVER}). # VALA_VAPIDIR Vapi directory path. # VALA_DATADIR Path to libvala data directory. E.g. /usr/share/libvala-0.20 # VALA_VAPIGEN Path to vapigen executable. # VALA_GEN_INTROSPECT Path to version specific gen-introspect executable. # VALA_VALA_GEN_INTROSPECT Path to version independent gen-introspect # executable. # ## # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # Copyright 2009-2010 Jakob Westhoff. All rights reserved. # Copyright 2010-2011 Daniel Pfeifer # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # 1. Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY JAKOB WESTHOFF ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL JAKOB WESTHOFF OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # The views and conclusions contained in the software and documentation are those # of the authors and should not be interpreted as representing official policies, # either expressed or implied, of Jakob Westhoff ## # Search for the valac executable in the usual system paths. find_program(VALA_EXECUTABLE NAMES "valac" "valac-0.30" "valac-0.28" "valac-0.26" "valac-0.24" "valac-0.22" "valac-0.20") mark_as_advanced(VALA_EXECUTABLE) # Determine the valac version if(VALA_EXECUTABLE) execute_process( COMMAND "${VALA_EXECUTABLE}" "--version" OUTPUT_VARIABLE VALA_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE ) string(REPLACE "Vala " "" VALA_VERSION "${VALA_VERSION}") string(REPLACE "." ";" VALA_LIST "${VALA_VERSION}") list(GET VALA_LIST 0 maj_ver) list(GET VALA_LIST 1 min_ver) list(GET VALA_LIST 2 rev_ver) math(EXPR is_odd "${min_ver} % 2") list(LENGTH VALA_LIST len) if((${is_odd} EQUAL 1)) math(EXPR min_ver "${min_ver} + 1") elseif(len GREATER 3) math(EXPR min_ver "${min_ver} + 2") endif() set(VALA_SHORTVER "${maj_ver}.${min_ver}" CACHE INTERNAL "") if(NOT "${maj_ver}" STREQUAL "" AND NOT "${min_ver}" STREQUAL "") set(VALA_LIBPKG "libvala-${VALA_SHORTVER}" CACHE INTERNAL "") find_package(PkgConfig) pkg_check_modules("VALA" REQUIRED "${VALA_LIBPKG}") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" VAPIDIR "" "--variable=vapidir") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" DATADIR "" "--variable=datadir") set(VALA_DATADIR "${VALA_DATADIR}/vala" CACHE INTERNAL "") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" VAPIGEN "" "--variable=vapigen") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" GEN_INTROSPECT "" "--variable=gen_introspect") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" VALA_GEN_INTROSPECT "" "--variable=vala_gen_introspect") endif() endif() # Handle the QUIETLY and REQUIRED arguments, which may be given to the find call. # Furthermore set VALA_FOUND to TRUE if Vala has been found (aka. # VALA_EXECUTABLE etc. are set) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Vala REQUIRED_VARS VALA_EXECUTABLE VALA_SHORTVER VALA_LIBPKG VALA_VAPIDIR VALA_DATADIR VALA_VAPIGEN VALA_GEN_INTROSPECT VALA_VALA_GEN_INTROSPECT VERSION_VAR VALA_VERSION ) # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: cmake/vala/FindValadoc.cmake ================================================ # # cmake/vala/FindValadocs.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # Add find_package handler for valadoc. ## # Search for the valac executable in the usual system paths. find_program(VALADOC_EXECUTABLE "valadoc") mark_as_advanced(VALADOC_EXECUTABLE) # Determine the valadoc version if(VALADOC_EXECUTABLE) execute_process( COMMAND "${VALADOC_EXECUTABLE}" "--version" OUTPUT_VARIABLE VALADOC_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE ) string(REPLACE "Valadoc " "" VALADOC_VERSION "${VALADOC_VERSION}") endif() # Add find_package handler for valadoc. include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Valadoc REQUIRED_VARS VALADOC_EXECUTABLE VERSION_VAR VALADOC_VERSION ) ================================================ FILE: cmake/vala/UseVala.cmake ================================================ # # cmake/vala/UseVala.cmake # ## # Compile vala files to their c equivalents for further processing. # # The "vala_precompile" function takes care of calling the valac executable on # the given source to produce c files which can then be processed further using # default cmake functions. # # The first parameter provided is a variable, which will be filled with a list # of C files outputted by the vala compiler. This list can than be used in # conjunction with functions like "add_executable" or others to create the # necessary compile rules with CMake. # # The following sections may be specified afterwards to provide certain options # to the vala compiler: # # SOURCES # A list of .vala files to be compiled. Please take care to add every vala # file belonging to the currently compiled project or library as Vala will # otherwise not be able to resolve all dependencies. # # PACKAGES # A list of vala packages/libraries to be used during the compile cycle. The # package names are exactly the same, as they would be passed to the valac # "--pkg=" option. # # OPTIONS # A list of optional options to be passed to the valac executable. This can be # used to pass "--thread" for example to enable multi-threading support. # # DEFINITIONS # A list of symbols to be used for conditional compilation. They are the same # as they would be passed using the valac "--define=" option. # # CUSTOM_VAPIS # A list of custom vapi files to be included for compilation. This can be # useful to include freshly created vala libraries without having to install # them in the system. # # GENERATE_VAPI # Pass all the needed flags to the compiler to create an internal vapi for # the compiled library. The provided name will be used for this and a # .vapi file will be created. # # GENERATE_GIR # Create a GObject-Introspection repository file. Name it # ".gir". Library name is set to generated vapi name without # file extension suffix or if no vapi is to be generated guess from gir # name. # # GENERATE_HEADER # Let the compiler generate a header file for the compiled code. There will # be a header file as well as an internal header file being generated called # .h and _internal.h # # PUBLIC # When enabled generate only public parts of vapis/headers. # # The following call is a simple example to the vala_precompile macro showing # an example to every of the optional sections: # # find_package(Vala "0.12" REQUIRED) # include(${VALA_USE_FILE}) # # vala_precompile(VALA_C # SOURCES # source1.vala # source2.vala # source3.vala # PACKAGES # gtk+-2.0 # gio-1.0 # posix # DIRECTORY # gen # OPTIONS # --thread # CUSTOM_VAPIS # some_vapi.vapi # GENERATE_VAPI # myvapi # GENERATE_GIR # MyLib-1.0 # GENERATE_HEADER # myheader # ) # # Most important is the variable VALA_C which will contain all the generated c # file names after the call. ## ## # Copyright 2009-2010 Jakob Westhoff. All rights reserved. # Copyright 2010-2011 Daniel Pfeifer # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # 1. Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY JAKOB WESTHOFF ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL JAKOB WESTHOFF OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # The views and conclusions contained in the software and documentation are those # of the authors and should not be interpreted as representing official policies, # either expressed or implied, of Jakob Westhoff ## include(CMakeParseArguments) function(vala_precompile output) cmake_parse_arguments(ARGS "PUBLIC" "DIRECTORY;GENERATE_HEADER;GENERATE_VAPI;GENERATE_GIR" "SOURCES;PACKAGES;OPTIONS;DEFINITIONS;CUSTOM_VAPIS" ${ARGN}) if(ARGS_DIRECTORY) get_filename_component(DIRECTORY "${ARGS_DIRECTORY}" ABSOLUTE) else() set(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}") endif() include_directories("${DIRECTORY}") set(vala_pkg_opts) foreach(pkg ${ARGS_PACKAGES}) list(APPEND vala_pkg_opts "--pkg=${pkg}") endforeach() set(vala_define_opts) foreach(def ${ARGS_DEFINITIONS}) list(APPEND vala_define_opts "--define=${def}") endforeach() set(in_files) set(out_files) set(out_files_rel) foreach(src ${ARGS_SOURCES} ${ARGS_UNPARSED_ARGUMENTS}) list(APPEND in_files "${CMAKE_CURRENT_SOURCE_DIR}/${src}") string(REPLACE ".vala" ".c" src "${src}") string(REPLACE ".gs" ".c" src "${src}") set(out_file "${DIRECTORY}/${src}") list(APPEND out_files "${DIRECTORY}/${src}") set(out_files_rel "${out_files_rel}, ${src}") endforeach() string(REGEX REPLACE "^, " "" out_files_rel "${out_files_rel}") set(custom_vapi_arguments) if(ARGS_CUSTOM_VAPIS) foreach(vapi ${ARGS_CUSTOM_VAPIS}) if("${vapi}" MATCHES "${CMAKE_SOURCE_DIR}" OR "${vapi}" MATCHES "${CMAKE_BINARY_DIR}") list(APPEND custom_vapi_arguments "${vapi}") else() list(APPEND custom_vapi_arguments "${CMAKE_CURRENT_SOURCE_DIR}/${vapi}") endif() endforeach() endif() set(vapi_arguments) set(gir_arguments) if(ARGS_GENERATE_VAPI) list(APPEND out_files "${DIRECTORY}/${ARGS_GENERATE_VAPI}.vapi") set(out_files_rel "${out_files_rel}, ${ARGS_GENERATE_VAPI}.vapi") if(ARGS_PUBLIC) set(vapi_arguments "--library=${ARGS_GENERATE_VAPI}") else() set(vapi_arguments "--internal-vapi=${ARGS_GENERATE_VAPI}.vapi") endif() # Header and internal header is needed to generate internal vapi if(NOT ARGS_PUBLIC AND NOT ARGS_GENERATE_HEADER) set(ARGS_GENERATE_HEADER "${ARGS_GENERATE_VAPI}") endif() endif() if(ARGS_GENERATE_GIR) list(APPEND out_files "${DIRECTORY}/${ARGS_GENERATE_GIR}.gir") set(out_files_rel "${out_files_rel}, ${ARGS_GENERATE_GIR}.gir") list(APPEND gir_arguments "--gir=${ARGS_GENERATE_GIR}.gir") if(NOT ARGS_PUBLIC OR NOT ARGS_GENERATE_VAPI) set(tmplibname) string(REGEX MATCH "^[^-]*" tmplibname "${ARGS_GENERATE_GIR}") set(libname) string(TOLOWER "${tmplibname}" libname) list(APPEND gir_arguments "--library=${libname}") endif() endif() set(header_arguments) if(ARGS_GENERATE_HEADER) list(APPEND out_files "${DIRECTORY}/${ARGS_GENERATE_HEADER}.h") set(out_files_rel "${out_files_rel}, ${ARGS_GENERATE_HEADER}.h") list(APPEND header_arguments "--header=${DIRECTORY}/${ARGS_GENERATE_HEADER}.h") if(NOT ARGS_PUBLIC) list(APPEND out_files "${DIRECTORY}/${ARGS_GENERATE_HEADER}_internal.h") set(out_files_rel "${out_files_rel}, ${ARGS_GENERATE_HEADER}_internal.h") list(APPEND header_arguments "--internal-header=${DIRECTORY}/${ARGS_GENERATE_HEADER}_internal.h") endif() endif() add_custom_command( OUTPUT "vala.stamp" COMMAND "${VALA_EXECUTABLE}" "-C" ${header_arguments} ${vapi_arguments} ${gir_arguments} "-b" "${CMAKE_CURRENT_SOURCE_DIR}" "-d" "${DIRECTORY}" ${vala_pkg_opts} ${vala_define_opts} ${ARGS_OPTIONS} ${in_files} ${custom_vapi_arguments} COMMAND "${CMAKE_COMMAND}" -E touch "vala.stamp" DEPENDS ${in_files} ${ARGS_CUSTOM_VAPIS} COMMENT "Generating ${out_files_rel}" VERBATIM ) add_custom_command( OUTPUT ${out_files} DEPENDS "vala.stamp" COMMENT "" ) set(${output} ${out_files} PARENT_SCOPE) endfunction() # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: cmake/vala/ValaDocs.cmake ================================================ # # cmake/vala/ValaDocs.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # The valadoc_gen function generates Vala documentation from .vala and .vapi # source files. The first parameter is the project name. # Provide target 'docs' to build documentation. # # Supported sections: # # ALL (optional) # Include this target in all builds. # # INSTALLDIR (optional) # Directory where to install documentation to. # Default: ${datadir} # If ${datadir} not defined: share/${package_name_lower} # (where ${package_name_lower} is ${package_name} with letters) # If ${package_name} is not defined raise error. # # DOCDIR (optional) # Directory where to build documentation to. # Default: ${CMAKE_CURRENT_BINARY_DIR}/docs # # PACKAGES (in general mandatory) # List of all Vala packages the project depends on. # # DEFINITIONS (optional) # A list of symbols for conditional compilation. # # SRCFILES # List of all project files. Globbing is supported. # # OPTIONS (optional) # List of additional valadoc options. if(VALADOC_FOUND) function(valadoc_gen package_name) cmake_parse_arguments(ARGS "ALL" "INSTALLDIR;DOCDIR" "PACKAGES;DEFINITIONS;SRCFILES;OPTIONS" ${ARGN}) if(ARGS_SRCFILES) if(ARGS_ALL) set(make_all "ALL") else() set(make_all) endif() string(TOLOWER "${package_name}" package_name_lower) if(ARGS_INSTALLDIR) set(installdir "${ARGS_DOCDIR}") elseif(datadir) set(installdir "${datadir}") elseif(package_name) set(installdir "share/${package_name_lower}") else() message(SEND_ERROR "No installation directory given.") endif() if(ARGS_DOCDIR) set(docdir "${ARGS_DOCDIR}") else() set(docdir "${CMAKE_CURRENT_BINARY_DIR}/docs") endif() set(srcfiles) set(srcfiles_abs) foreach(globexpr ${ARGS_SRCFILES}) file(GLOB tmpsrcfiles ${globexpr}) if(tmpsrcfiles) foreach(tmpsrcfile ${tmpsrcfiles}) file(RELATIVE_PATH srcfile "${CMAKE_CURRENT_BINARY_DIR}" "${tmpsrcfile}") list(APPEND srcfiles "${srcfile}") get_filename_component(srcfile_abs "${tmpsrcfile}" ABSOLUTE) list(APPEND srcfiles_abs "${srcfile_abs}") endforeach() else() file(RELATIVE_PATH srcfile "${CMAKE_CURRENT_BINARY_DIR}" "${globexpr}") list(APPEND srcfiles "${srcfile}") get_filename_component(srcfile_abs "${globexpr}" ABSOLUTE) list(APPEND srcfiles_abs "${srcfile_abs}") endif() endforeach() set(pkg_opts) foreach(pkg ${ARGS_PACKAGES}) list(APPEND pkg_opts "--pkg=${pkg}") endforeach() set(valadoc_options "-o" "${docdir}" "--package-name" "${package_name}" ) foreach(def ${ARGS_DEFINITIONS}) list(APPEND valadoc_options "--define=${def}") endforeach() if(ARGS_OPTIONS) list(APPEND valadoc_options ${ARGS_OPTIONS}) endif() add_custom_command( OUTPUT "${docdir}/index.html" COMMAND "${CMAKE_COMMAND}" -E remove_directory "${docdir}" COMMAND "${VALADOC_EXECUTABLE}" ${srcfiles} ${pkg_opts} ${valadoc_options} DEPENDS ${srcfiles_abs} VERBATIM ) add_custom_target("docs-${package_name_lower}" ${make_all} DEPENDS "${docdir}/index.html" COMMENT "Generating documentation with valadoc." ) install( DIRECTORY "${docdir}" DESTINATION "${installdir}" OPTIONAL ) endif() endfunction() endif() ================================================ FILE: cmake/vala/ValaPkgs.cmake ================================================ # # cmake/vala/ValaPkgs.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # The vala_pkgs function is a wrapper to perform pkg-config check, # automatically set compiler and linker flags and call the actual # vala_precompile function. # # Supported sections: # # PACKAGES # A list of vala packages that are required to build the target. Versioned # dependencies are supported. There is also a possibility to suppress # checking with pkg-config or to suppress --cflags and --libs of pkg-config. # To use those options append {option,option,...}. # # DEFINITIONS # A list of symbols for conditional compilation. (optional) # # OPTIONAL # A list of vala packages that are optional to build the target. (optional) # # SRCFILES # A list of Vala source files. Globbing is supported. # # VAPIS # A list of custom .vapi files. Globbing is supported. (optional) # # LIBRARY # Name of library to generate. # # GIRFILE # Generate GObject-Introspection repository file. # # OPTIONS # A list of options passed to the valac compiler. (optional) # # # The following call is a simple example: # # SET(packages "foo >= 1.4.2" "bla <= 9") # vala_pkgs(VALA_C # PACKAGES # "gtk+-3.0 >= 3.8" # gee-1.0 # ${packages} # "sdl-image {nocheck,nolink}" # "sdl" # OPTIONAL # libxml-2.0 # SRCFILES # file.vala # file2.vala # src/file3.vala # ) # add_executable(myexecutable ${VALA_C}) # target_link_libraries(myexecutable ${PROJECT_LDFLAGS}) # add_definitions(${PROJECT_C_FLAGS}) # include(CMakeParseArguments) function(vala_pkgs output) cmake_parse_arguments(ARGS "" "LIBRARY;GIRFILE" "PACKAGES;DEFINITIONS;OPTIONAL;SRCFILES;VAPIS;OPTIONS" ${ARGN}) if(ARGS_PACKAGES OR ARGS_OPTIONAL) find_package(PkgConfig) endif() if(ARGS_SRCFILES) include(UseVala) # Package list without versions to pass to vala_precompile. set(pkglist) set(definitions) set(libraries) if(ARGS_PACKAGES) foreach(pkg ${ARGS_PACKAGES}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nocheck[ \t]*(|,[^}]+)}[ \t]*$" matchit "${pkg}") string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkgstripped "${pkg}") if(NOT matchit) string(TOUPPER "${pkgstripped}" pkgdesctmp) string(REGEX REPLACE "([A-Z0-9-])[-+]*([0-9.]*)$" "\\1\\2" pkgdesc "${pkgdesctmp}") pkg_check_modules(${pkgdesc} REQUIRED ${pkgstripped}) if (${${pkgdesc}_FOUND}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nolink[ \t]*(|,[^}]+)}[ \t]*$" matchit "${pkg}") if(NOT matchit) string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkgstripped "${pkg}") list(APPEND definitions "${${pkgdesc}_CFLAGS}") list(APPEND libraries "${${pkgdesc}_LDFLAGS}") endif() endif() endif() string(STRIP ${pkgstripped} tmppkgname) string(REGEX REPLACE "[ ].*$" "" pkgname "${tmppkgname}") list(APPEND pkglist "${pkgname}") endforeach() endif() set(optional_pkgs) if(ARGS_OPTIONAL) foreach(pkg ${ARGS_OPTIONAL}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nocheck[ \t]*(|,[^}]+)}[ \t]*$" matchit "${pkg}") string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkgstripped "${pkg}") if(NOT matchit) string(TOUPPER "${pkgstripped}" pkgdesctmp) string(REGEX REPLACE "([A-Z0-9-])[-+]*([0-9.]*)$" "\\1\\2" pkgdesc "${pkgdesctmp}") pkg_check_modules("${pkgdesc}" "${pkgstripped}") if(${${pkgdesc}_FOUND}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nolink[ \t]*(|,[^}]+)}[ \t]*$" matchit "${pkg}") if(NOT matchit) string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkgstripped "${pkg}") list(APPEND definitions "${${pkgdesc}_CFLAGS}") list(APPEND libraries "${${pkgdesc}_LDFLAGS}") endif() endif() endif() string(STRIP "${pkgstripped}" tmppkgname) string(REGEX REPLACE "([^ ]+)" "\\1" pkgname "${tmppkgname}") list(APPEND pkglist "${pkgname}") endforeach() endif() pkg_check_modules(GTHREAD REQUIRED "gthread-2.0") if(GTHREAD_FOUND) list(APPEND definitions "${GTHREAD_CFLAGS}") list(APPEND libraries "${GTHREAD_LDFLAGS}") endif() set(srcfiles) foreach(globexpr ${ARGS_SRCFILES}) set(tmpsrcfiles) file(GLOB tmpsrcfiles ${globexpr}) if(tmpsrcfiles) foreach(tmpsrcfile ${tmpsrcfiles}) set(srcfile) file(RELATIVE_PATH srcfile "${CMAKE_CURRENT_SOURCE_DIR}" "${tmpsrcfile}") list(APPEND srcfiles "${srcfile}") endforeach() else() list(APPEND srcfiles "${globexpr}") endif() endforeach() set(vapifiles) if(ARGS_VAPIS) foreach(globexpr ${ARGS_VAPIS}) set(tmpvapifiles) file(GLOB tmpvapifiles ${globexpr}) if(tmpvapifiles) foreach(tmpvapifile ${tmpvapifiles}) set(vapifile) file(RELATIVE_PATH vapifile "${CMAKE_CURRENT_SOURCE_DIR}" "${tmpvapifile}") list(APPEND vapifiles "${vapifile}") endforeach() else() list(APPEND vapifiles "${globexpr}") endif() endforeach() endif() vala_precompile(VALA_C ${srcfiles} PACKAGES ${pkglist} DEFINITIONS "${ARGS_DEFINITIONS}" CUSTOM_VAPIS ${vapifiles} GENERATE_VAPI "${ARGS_LIBRARY}" GENERATE_HEADER "${ARGS_LIBRARY}" GENERATE_GIR "${ARGS_GIRFILE}" OPTIONS ${ARGS_OPTIONS} PUBLIC ) set(${output} ${VALA_C} PARENT_SCOPE) set(PROJECT_C_FLAGS ${definitions} PARENT_SCOPE) set(PROJECT_LDFLAGS ${libraries} PARENT_SCOPE) endif() endfunction() # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: data/buildsystems/autotools/autotools.info ================================================ Yannick Inizan inizan.yannick@gmail.com Autotools Autotools buildsystem. ================================================ FILE: data/buildsystems/autotools/buildsystem/AUTHORS ================================================ ================================================ FILE: data/buildsystems/autotools/buildsystem/COPYING ================================================ ================================================ FILE: data/buildsystems/autotools/buildsystem/ChangeLog ================================================ ================================================ FILE: data/buildsystems/autotools/buildsystem/NEWS ================================================ ================================================ FILE: data/buildsystems/autotools/buildsystem/README ================================================ ================================================ FILE: data/buildsystems/autotools/buildsystem/autogen.sh ================================================ #!/bin/sh set -ex autoreconf -f -i -Wall,error ./configure ================================================ FILE: data/buildsystems/cmake/buildsystem/CMakeLists.txt ================================================ # # CMakeLists.txt # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # cmake_minimum_required(VERSION "2.8.4") include("${CMAKE_SOURCE_DIR}/cmake/project.cmake") include("${CMAKE_SOURCE_DIR}/cmake/Common.cmake") if(CMAKE_MAJOR_VERSION GREATER "2") cmake_policy(SET CMP0048 NEW) project("${project_name}" VERSION "${${project_name}_VERSION}" LANGUAGES "C") else() project("${project_name}" "C") endif() string(TOLOWER "${project_name}" project_name_lower) set(bindir "bin") set(datarootdir "share") set(libdir "lib") set(includedir "include") set(datadir "${datarootdir}/${project_name_lower}") set(uidir "${datadir}/ui") set(localedir "${datarootdir}/locale") set(appdir "${datarootdir}/applications") set(gsettingsdir "${datarootdir}/glib-2.0/schemas") set(pixrootdir "${datarootdir}/pixmaps") set(pixdir "${pixrootdir}/${project_name_lower}") set(docdir "${datadir}/doc") set(mandir "${datarootdir}/man") set(mimedir "${datarootdir}/mime/packages") if(CMAKE_INSTALL_PREFIX) set(install_prefix "${CMAKE_INSTALL_PREFIX}/") else() set(install_prefix) endif() list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/vala") list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") find_package(Vala "0.20" REQUIRED) # Custom library version checks. set(definitions) set(vapidirs) find_package(PkgConfig) # config list(REMOVE_ITEM required_pkgs "config {nocheck,nolink}") # glib-2.0 pkg_check_modules(GLIB2.0 REQUIRED "glib-2.0") set(default_vala_flags "--thread" "--target-glib" "${GLIB2.0_VERSION}" #"--enable-experimental" #"--fatal-warnings" ) include(ValaPkgs) vala_pkgs(VALA_C PACKAGES ${required_pkgs} DEFINITIONS ${definitions} OPTIONAL ${optional_pkgs} SRCFILES ${srcfiles} VAPIS ${vapifiles} OPTIONS ${default_vala_flags} ${vapidirs} ) # Set common C-macros. add_definitions(-DPACKAGE_NAME="${project_name}") add_definitions(-DPACKAGE_VERSION="${${project_name}_VERSION}") if(project_root) add_definitions(-DGETTEXT_PACKAGE="${project_root}") else() add_definitions(-DGETTEXT_PACKAGE="${project_name_lower}") endif() add_definitions(-DPACKAGE_DATA_DIR="${install_prefix}${datadir}") add_definitions(-DPACKAGE_UI_DIR="${install_prefix}${uidir}") add_definitions(-DLOCALE_DIR="${install_prefix}${localedir}") add_definitions(-DPIXMAP_DIR="${install_prefix}${pixdir}") add_definitions(-DVALA_VERSION="${VALA_SHORTVER}") add_executable("${project_name_lower}" ${VALA_C}) target_link_libraries("${project_name_lower}" ${PROJECT_LDFLAGS} ) add_definitions( ${PROJECT_C_FLAGS} ) install(TARGETS ${project_name_lower} DESTINATION "${bindir}") # Install user interface files if used and copy them to build directory. set(uifiles_build) foreach(uifile ${uifiles}) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${uifile}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${uifile}" "${CMAKE_CURRENT_BINARY_DIR}/${uifile}" DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${uifile}" COMMENT "" ) list(APPEND uifiles_build "${CMAKE_CURRENT_BINARY_DIR}/${uifile}") install(FILES ${uifile} DESTINATION "${uidir}") endforeach() add_custom_target("ui_copy_${project_name_lower}" DEPENDS ${uifiles_build}) add_dependencies("${project_name_lower}" "ui_copy_${project_name_lower}") # Uninstall target add_custom_target(uninstall COMMAND "${CMAKE_COMMAND}" -D "CUSTOM_SOURCE_DIR:FILEPATH=${CMAKE_SOURCE_DIR}" -D "POSTREMOVE_HOOK:BOOL=${POSTINSTALL_HOOK}" -D "GSETTINGSDIR:FILEPATH=${install_prefix}${gsettingsdir}" -P "${CMAKE_SOURCE_DIR}/cmake/SimpleUninstall.cmake" ) # Print some information about build. datestring(current_date "%F %T") message("") message("---------------------------------------------") message(" ${current_date}") message("${project_name} ${${project_name}_VERSION}") message("") if(CMAKE_BUILD_TYPE) message("Build type: ${CMAKE_BUILD_TYPE}") string(TOUPPER "${CMAKE_BUILD_TYPE}" release_upper) set(c_flags "${CMAKE_C_FLAGS_${release_upper}}") else() message("Build type: Default") set(c_flags "${CMAKE_C_FLAGS}") endif() message("") message("Installation prefix: ${CMAKE_INSTALL_PREFIX}") foreach(def ${definitions}) list(APPEND default_vala_flags "-D;${def}") endforeach() base_list_to_delimited_string(vala_flags DELIM " " BASE_LIST "${default_vala_flags}" ) message("C compiler: ${CMAKE_C_COMPILER}") message("C compiler version ${CMAKE_C_COMPILER_VERSION}") if("${c_flags}" STREQUAL "") set(c_flags "(none)") endif() message("C flags: ${c_flags}") message("Vala compiler: ${VALA_EXECUTABLE}") message("Vala compiler version: ${VALA_VERSION}") if("${vala_flags}" STREQUAL "") set(vala_flags "(none)") endif() message("Vala flags: ${vala_flags}") message("GLib version: ${GLIB2.0_VERSION}") message("") if(GETTEXT_PACKAGE_NAME) if(GETTEXT_PACKAGE_VERSION) message("Gettext package: ${GETTEXT_PACKAGE_NAME} (${GETTEXT_PACKAGE_VERSION})") else() message("Gettext package: ${GETTEXT_PACKAGE_NAME}") endif() endif() if(CMAKE_VERBOSE_MAKEFILE) message("Verbose build: yes") else() message("Verbose build: no") endif() message("") message("---------------------------------------------") message("") # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/Common.cmake ================================================ # # cmake/Common.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # The base_list_to_delimited_string function transforms a list into a delimited # string. # This function is based on the basis_list_to_delimited_string in # CommonTools.cmake by the Build system And Software Implementation Standard # (BASIS) project by the University of Pennsylvania (Penn). # # Usage: # # The first parameter is set to transformed list. # # DELIM # A string which will be the delimiter between all list elements. # # BASE_LIST # The list which will be transformed to a single string. # # # Simple example: # # set(packages "abc" "def" "fhi" "jkl" "mno") # base_list_to_delimited_string(transformed_list # DELIM # "||" # BASE_LIST # ${packages} # ) # message("show it:${transformed_list}") # >> show it:abc||def||fhi||jkl||mno # function(base_list_to_delimited_string output) cmake_parse_arguments(ARGS "" "" "DELIM;BASE_LIST" ${ARGN}) set(list_string) foreach(element ${ARGS_BASE_LIST}) if(list_string) set(list_string "${list_string}${ARGS_DELIM}") endif() if(element MATCHES "${ARGS_DELIM}") set(list_string "${list_string}\"${element}\"") else() set(list_string "${list_string}${element}") endif() endforeach() set("${output}" "${list_string}" PARENT_SCOPE) endfunction() ## # Convert svg to png and set up installation places. rsvg-convert or # imagemagick (with svg support) is required. # # Usage: # The first parameter is set to all png files. Add them later to a custom # target. Generated directories are: # ${prefix}/share/icons/hicolor/${size}x${size}/apps/${png_name}.png # # ICON # svg icon path # # SIZES # List of all supported sizes. # # PNG_NAME # Name of png file (without suffix) which is the target file name. # # DESTINATION # Directory where to install all generated files to (plain). # # # Simple example: # # set(sizes 42 43 44) # convert_svg_to_png(png_files # ICON # my_really_cool_icon.svg # SIZES # "${sizes}" # PNG_NAME # freshy # ) # add_custom_target(my_target_name ALL DEPENDS ${png_files}) # # # This will build and install my_really_cool_icon.svg to: # # /usr/share/icons/hicolor/42x42/apps/freshy.png # # /usr/share/icons/hicolor/43x43/apps/freshy.png # # /usr/share/icons/hicolor/44x44/apps/freshy.png # function(convert_svg_to_png output) include(CMakeParseArguments) cmake_parse_arguments(ARGS "" "DESTINATION" "ICON;SIZES;PNG_NAME" ${ARGN}) set(png_list) if(ARGS_ICON) if(ARGS_PNG_NAME) find_program(CONVERT rsvg-convert) if(NOT CONVERT) find_program(CONVERT_IMG convert) endif() if(CONVERT OR CONVERT_IMG) if(NOT datarootdir) set(datarootdir "share") endif() foreach(size ${ARGS_SIZES}) set(tmppath "icons/hicolor/${size}x${size}/apps") set(icondir "${CMAKE_CURRENT_BINARY_DIR}/${tmppath}") set(iconpath "${icondir}/${ARGS_PNG_NAME}.png") if(CONVERT) add_custom_command( OUTPUT "${iconpath}" COMMAND "${CMAKE_COMMAND}" -E make_directory "${icondir}" COMMAND "${CONVERT}" "--background-color" "none" "--width" "${size}" "--height" "${size}" "${ARGS_ICON}" "--output" "${iconpath}" DEPENDS "${ARGS_ICON}" VERBATIM ) else() add_custom_command( OUTPUT "${iconpath}" COMMAND "${CMAKE_COMMAND}" -E make_directory "${icondir}" COMMAND "${CONVERT_IMG}" "-background" "none" "-resize" "${size}x${size}" "${ARGS_ICON}" "${iconpath}" DEPENDS "${ARGS_ICON}" VERBATIM ) endif() list(APPEND png_list "${iconpath}") if(ARGS_DESTINATION) install(FILES "${iconpath}" DESTINATION "${ARGS_DESTINATION}") else() install(FILES "${iconpath}" DESTINATION "${datarootdir}/${tmppath}") endif() endforeach() else() message(WARNING "Could not find convert program. Don't generate icons.") endif() endif() endif() set(${output} "${png_list}" PARENT_SCOPE) endfunction() ## # Get formatted date string. # # Usage: # The first parameter is set to output date string. # # FORMAT # Format string. # # # Simple example: # # datestring(date # FORMAT "%B %Y" # ) # # Will print out e.g. "Date: April 2013" # message("Date: ${date}") # macro(datestring output) include(CMakeParseArguments) cmake_parse_arguments(ARGS "" "FORMAT" "" ${ARGN}) if(ARGS_FORMAT) set(format "${ARGS_FORMAT}") else() set(format "${ARGN}") endif() if(WIN32) #FIXME: Needs to be tested. Perhaps wrapping with cmd is needed. execute_process( COMMAND "date" "${format}" OUTPUT_VARIABLE "${output}" OUTPUT_STRIP_TRAILING_WHITESPACE ) else() execute_process( COMMAND "date" "+${format}" OUTPUT_VARIABLE "${output}" OUTPUT_STRIP_TRAILING_WHITESPACE ) endif() endmacro() ## # Install/verify gsettings files and compile schemas. # # Depends on cmake/GlibCompileSchema.cmake.in (for compiling) and # cmake/GlibCompileSchema_verify.cmake.in (for verifying, only wth local # option) # # Usage: # # LOCAL # If set compile gsettings schemas locally (in # ${CMAKE_BINARY_DIR}/glib-2.0/schemas) directory). Add this directory to # your XDG_DATA_DIRS variable. # # GSETTINGSDIR # Directory where to install gsettings schemas. Default is: # share/glib-2.0/schemas # # FILES # List of gsettings schema files to install / compiile. # # # Simple example: # # gsettings_install( # LOCAL # GSETTINGSDIR # share/glib-2.0/schemas # FILES # "data/app.foobar.gschema.xml" # ) # function(gsettings_install) include(CMakeParseArguments) cmake_parse_arguments(ARGS "LOCAL" "GSETTINGSDIR" "FILES" ${ARGN}) find_program(GLIBCOMPILESCHEMA "glib-compile-schemas" REQUIRED) if(NOT "" STREQUAL "${ARGS_FILES}") if(ARGS_LOCAL) set(GSETTINGSDIR "glib-2.0/schemas") configure_file( "${CMAKE_SOURCE_DIR}/cmake/GlibCompileSchema.cmake.in" "${CMAKE_BINARY_DIR}/GlibCompileSchema_local.cmake" @ONLY ) configure_file( "${CMAKE_SOURCE_DIR}/cmake/GlibCompileSchema_verify.cmake.in" "${CMAKE_BINARY_DIR}/GlibCompileSchema_verify.cmake" COPYONLY ) set(gfiles_copied) foreach(gfile ${ARGS_FILES}) if(NOT IS_ABSOLUTE "${gfile}") set(gfile "${CMAKE_CURRENT_SOURCE_DIR}/${gfile}") endif() get_filename_component(filename "${gfile}" NAME) set(gfile_copied "${CMAKE_CURRENT_BINARY_DIR}/glib-2.0/schemas/${filename}") add_custom_command( OUTPUT "${gfile_copied}" COMMAND "${CMAKE_COMMAND}" -D "GLIBCOMPILESCHEMA:FILEPATH=${GLIBCOMPILESCHEMA}" -D "GLIB_SCHEMAFILE:FILEPATH=${gfile}" -P "${CMAKE_BINARY_DIR}/GlibCompileSchema_verify.cmake" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${gfile}" "${gfile_copied}" DEPENDS "${gfile}" COMMENT "Install and verify gsettings schemas locally..." VERBATIM ) list(APPEND gfiles_copied "${gfile_copied}") endforeach() add_custom_command( OUTPUT "glib-2.0/schemas/gschemas.compiled" COMMAND "${CMAKE_COMMAND}" -P "${CMAKE_BINARY_DIR}/GlibCompileSchema_local.cmake" DEPENDS ${gfiles_copied} COMMENT "Compile gsettings schemas..." VERBATIM ) add_custom_target("gsettings_${project_name_lower}" DEPENDS "glib-2.0/schemas/gschemas.compiled" ) add_dependencies("${project_name_lower}" "gsettings_${project_name_lower}") endif() if(NOT ARGS_GSETTINGSDIR) set(ARGS_GSETTINGSDIR "share/glib-2.0/schemas") endif() foreach(gfile ${ARGS_FILES}) install(FILES "${gfile}" DESTINATION "${ARGS_GSETTINGSDIR}") endforeach() if(POSTINSTALL_HOOK AND "$ENV{DESTDIR}" STREQUAL "") if(CMAKE_INSTALL_PREFIX) set(install_prefix "${CMAKE_INSTALL_PREFIX}/") else() set(install_prefix) endif() set(GSETTINGSDIR "${install_prefix}${ARGS_GSETTINGSDIR}") configure_file( "${CMAKE_SOURCE_DIR}/cmake/GlibCompileSchema.cmake.in" "${CMAKE_BINARY_DIR}/GlibCompileSchema.cmake" @ONLY ) install(SCRIPT "${CMAKE_BINARY_DIR}/GlibCompileSchema.cmake") endif() endif() endfunction() ## # Recursively copy directory content. # # Usage: # # TARGET # Name of CMake target. Default is 'copy_dirs'. # # BASEDIR # Name of base directory to build relative paths compared to TARGETDIR. # Default is ${CMAKE_CURRENT_SOURCE_DIR}. # # TARGETDIR # Name of base directory where to copy files to. Default is # ${CMAKE_CURRENT_BINARY_DIR}. # # DIRS # List of directories (or files) to recursively copy. # # # Simple example: # # copy_dirs( # TARGET # "custom_target_name # BASEDIR # "${CMAKE_CURRENT_SOURCE_DIR}/foo" # TARGETDIR # "${CMAKE_CURRENT_BINARY_DIR}/bar" # DIRS # "blub̈́*" # "/foobar/bar" # ) # # Copy ${}/foo/blub* and /foobar/bar to ${}/bar (= ${}/bar/blub*) and # # ${}/bar/foobar/bar) # add_custom_target("foobar" # ALL # DEPENDS # "custom_target_name" # COMMENT "Copy some files" # ) # function(copy_dirs) include(CMakeParseArguments) cmake_parse_arguments(ARGS "" "TARGET;BASEDIR;TARGETDIR" "DIRS" ${ARGN}) if(NOT ARGS_BASEDIR) set(ARGS_BASEDIR "${CMAKE_CURRENT_SOURCE_DIR}") endif() if(NOT ARGS_TARGET) set(ARGS_TARGET "copy_dirs") endif() if(NOT ARGS_TARGETDIR) set(ARGS_TARGETDIR "${CMAKE_CURRENT_BINARY_DIR}") endif() set(copyfiles) foreach(globexpr ${ARGS_DIRS}) file(GLOB tmpdirs ${globexpr}) if(tmpdirs) foreach(tmpdir ${tmpdirs}) get_files_recursively(files "${tmpdir}") list(APPEND copyfiles ${files}) endforeach() else() get_files_recursively(files "${globexpr}") list(APPEND copyfiles ${files}) endif() endforeach() set(copyfiles_d) foreach(copyfile ${copyfiles}) file(RELATIVE_PATH copyfile_d "${ARGS_BASEDIR}" "${copyfile}") set(copyfile_d "${ARGS_TARGETDIR}/${copyfile_d}") add_custom_command( OUTPUT "${copyfile_d}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${copyfile}" "${copyfile_d}" DEPENDS "${copyfile}" VERBATIM ) list(APPEND copyfiles_d "${copyfile_d}") endforeach() add_custom_target("${ARGS_TARGET}" DEPENDS ${copyfiles_d} #COMMENT "Copy data files." ) endfunction() ## # Recursively get list of files. # # From refaim on stackoverflow: http://stackoverflow.com/a/7788165/770468 # # Usage: # The first parameter is set to list of files. The second one is the path of # current directory. # # # Simple example: # # # Set ${files} to all files in foo/ directory. # get_files_recursively(files "foo") # macro(get_files_recursively result curdir) file(GLOB children RELATIVE "${curdir}" "${curdir}/*") set(files) foreach(child ${children}) if(IS_DIRECTORY "${curdir}/${child}") get_files_recursively(subfiles "${curdir}") list(APPEND files ${subfiles}) else() list(APPEND files "${curdir}/${child}") endif() endforeach() set(${result} ${files}) endmacro() ## # Computes the realtionship between two version strings. A version # string is a number delineated by '.'s such as 1.3.2 and 0.99.9.1. # You can feed version strings with different number of dot versions, # and the shorter version number will be padded with zeros: 9.2 < # 9.2.1 will actually compare 9.2.0 < 9.2.1. # # Input: a_in - value, not variable # b_in - value, not variable # result_out - variable with value: # -1 : a_in < b_in # 0 : a_in == b_in # 1 : a_in > b_in # # Written by James Bigler. # http://www.cmake.org/Wiki/CMakeCompareVersionStrings (2013/09/29) # macro(compare_version_strings a_in b_in result_out) # Since SEPARATE_ARGUMENTS using ' ' as the separation token, # replace '.' with ' ' to allow easy tokenization of the string. string(REPLACE "." " " a ${a_in}) string(REPLACE "." " " b ${b_in}) separate_arguments(a) separate_arguments(b) # Check the size of each list to see if they are equal. list(LENGTH a a_length) list(LENGTH b b_length) # Pad the shorter list with zeros. # Note that range needs to be one less than the length as the for # loop is inclusive (silly CMake). if(a_length LESS b_length) # a is shorter set(shorter a) math(EXPR range "${b_length} - 1") math(EXPR pad_range "${b_length} - ${a_length} - 1") else() # b is shorter set(shorter b) math(EXPR range "${a_length} - 1") math(EXPR pad_range "${a_length} - ${b_length} - 1") endif() # PAD out if we need to if(NOT pad_range LESS 0) foreach(pad RANGE ${pad_range}) # Since shorter is an alias for b, we need to get to it by by dereferencing shorter. list(APPEND ${shorter} 0) endforeach() endif() set(result 0) foreach(index RANGE ${range}) if(result EQUAL 0) # Only continue to compare things as long as they are equal list(GET a ${index} a_version) list(GET b ${index} b_version) # LESS if(a_version LESS b_version) set(result -1) endif() # GREATER if(a_version GREATER b_version) set(result 1) endif() endif() endforeach() # Copy out the return result set(${result_out} ${result}) endmacro() ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/FindIntltool.cmake ================================================ # # cmake/Intltool.cmake # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## find_program(INTLTOOL_EXTRACT_EXECUTABLE intltool-extract) find_program(INTLTOOL_MERGE_EXECUTABLE intltool-merge) mark_as_advanced(INTLTOOL_EXTRACT_EXECUTABLE) mark_as_advanced(INTLTOOL_MERGE_EXECUTABLE) if(INTLTOOL_EXTRACT_EXECUTABLE) execute_process( COMMAND "${INTLTOOL_EXTRACT_EXECUTABLE}" "--version" OUTPUT_VARIABLE intltool_version ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE ) if(intltool_version MATCHES "^intltool-extract \\(.*\\) [0-9]") string(REGEX REPLACE "^intltool-extract \\([^\\)]*\\) ([0-9\\.]+[^ \n]*).*" "\\1" INTLTOOL_VERSION_STRING "${intltool_version}") endif() unset(intltool_version) endif() include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Intltool REQUIRED_VARS INTLTOOL_EXTRACT_EXECUTABLE INTLTOOL_MERGE_EXECUTABLE VERSION_VAR INTLTOOL_VERSION_STRING ) set(INTLTOOL_OPTIONS_DEFAULT "--quiet" ) ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/Gettext.cmake ================================================ # # cmake/Gettext.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # # Heavily based on Jim Nelson's Gettext.cmake in Geary project: # https://github.com/ypcs/geary # ## # Add find_package handler for gettext programs msgmerge, msgfmt, msgcat and # xgettext. ## # Constant: # XGETTEXT_OPTIONS_DEFAULT: Provide common xgettext options. # XGETTEXT_VALA_OPTIONS_DEFAULT: Provide common xgettext options for Vala files. # XGETTEXT_GLADE_OPTIONS_DEFAULT: Provide common xgettext options for glade. ## # The gettext_create_pot macro creates .pot files with xgettext from multiple # source files. # Provide target 'pot' to generate .pot file. # # Supported sections: # # PACKAGE (optional) # Gettext package name. Get exported to parent scope. # Default: ${PROJECT_NAME} # # VERSION (optional) # Gettext package version. Get exported to parent scope. # Default: ${${GETTEXT_PACKAGE_NAME}_VERSION} # (${GETTEXT_PACKAGE_NAME} is package name from option above) # # OPTIONS (optional) # Pass list of xgettext options (you can use XGETTEXT_OPTIONS_DEFAULT, # XGETTEXT_VALA_OPTIONS_DEFAULT and XGETTEXT_GLADE_OPTIONS_DEFAULT # constants). # Default: ${XGETTEXT_{,VALA,GLADE}_OPTIONS_DEFAULT} # # SRCFILES (optional/mandatory) # List of source files to extract gettext strings from. Globbing is # supported. # # GLADEFILES (optional/mandatory) # List of glade source files to extract gettext strings from. Globbing is # supported. # # DESKTOPFILES (optional/mandatory) # List of .desktop files to extract gettext strings from. Globbing is # supported. # intltool required. # # GSETTINGSFILES (optional/mandatory) # List of gsettings (.gschema.xml) files to extract gettext strings from. # Globbing is supported. # intltool required. # # Either SRCFILES or GLADEFILES or DESKTOPFILES or GSETTINGSFILES (or all) # have to be filled with some files. # ## # The gettext_create_translations function generates .gmo files from .po files # and install them as .mo files. # Provide target 'translations' to build .gmo files. # # Supported sections: # # ALL (optional) # Make translations target a dependency of the 'all' target. (Build # translations with every build.) # # PODIR (optional) # Directory with .po files. # Default: ${CMAKE_CURRENT_SOURCE_DIR} # # LOCALEDIR (optional) # Base directory where to install translations. # Default: share/cmake # # LANGUAGES (optional) # List of language 'short names'. This is in generel the part before the .po. # With English locale this is e.g. 'en_GB' or 'en_US' etc. # # POFILES (optional) # List of .po files. # ## # # The following call is a simple example (within project po directory): # # include(Gettext) # if(XGETTEXT_FOUND) # set(potfile "${CMAKE_CURRENT_SOURCE_DIR}/my_project.pot") # gettext_create_pot("${potfile}" # SRCFILES # "${PROJECT_SOURCE_DIR}/src/*.vala" # ) # gettext_create_translations("${potfile}" ALL) # endif() # ## find_program(GETTEXT_MSGMERGE_EXECUTABLE msgmerge) find_program(GETTEXT_MSGFMT_EXECUTABLE msgfmt) find_program(GETTEXT_MSGCAT_EXECUTABLE msgcat) find_program(XGETTEXT_EXECUTABLE xgettext) mark_as_advanced(GETTEXT_MSGMERGE_EXECUTABLE) mark_as_advanced(GETTEXT_MSGFMT_EXECUTABLE) mark_as_advanced(GETTEXT_MSGCAT_EXECUTABLE) mark_as_advanced(XGETTEXT_EXECUTABLE) if(XGETTEXT_EXECUTABLE) execute_process( COMMAND "${XGETTEXT_EXECUTABLE}" "--version" OUTPUT_VARIABLE gettext_version ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE ) if(gettext_version MATCHES "^xgettext \\(.*\\) [0-9]") string(REGEX REPLACE "^xgettext \\([^\\)]*\\) ([0-9\\.]+[^ \n]*).*" "\\1" GETTEXT_VERSION_STRING "${gettext_version}") endif() unset(gettext_version) endif() include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Gettext REQUIRED_VARS XGETTEXT_EXECUTABLE GETTEXT_MSGMERGE_EXECUTABLE GETTEXT_MSGFMT_EXECUTABLE GETTEXT_MSGCAT_EXECUTABLE VERSION_VAR GETTEXT_VERSION_STRING ) if(XGETTEXT_EXECUTABLE AND GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE AND GETTEXT_MSGCAT_EXECUTABLE) set(XGETTEXT_FOUND TRUE) # Export variable to use it as status info. set(TRANSLATION_BUILD TRUE PARENT_SCOPE) else() set(XGETTEXT_FOUND FALSE) set(TRANSLATION_BUILD FALSE PARENT_SCOPE) endif() set(XGETTEXT_OPTIONS_DEFAULT "-s" "--escape" "--add-comments=TRANSLATORS:" #TODO: Make this configurable. "--from-code=UTF-8" ) set(XGETTEXT_VALA_OPTIONS_DEFAULT "--language" "C" "--keyword=_" "--keyword=N_" "--keyword=C_:1c,2" "--keyword=NC_:1c,2" ) set(XGETTEXT_GLADE_OPTIONS_DEFAULT "--language" "Glade" "--omit-header" ) set(XGETTEXT_INTLTOOL_OPTIONS "--language" "C" "--keyword=N_:1" ) set(_INTLTOOL_DESKTOPFILES) if(XGETTEXT_FOUND) macro(gettext_create_pot potfile) cmake_parse_arguments(ARGS "" "PACKAGE;VERSION;WORKING_DIRECTORY" "OPTIONS;VALA_OPTIONS;GLADE_OPTIONS;SRCFILES;GLADEFILES;DESKTOPFILES;GSETTINGSFILES" ${ARGN}) if(ARGS_PACKAGE) set(package_name "${ARGS_PACKAGE}") elseif(GETTEXT_PACKAGE) set(package_name "${GETTEXT_PACKAGE}") else() set(package_name "${PROJECT_NAME}") endif() if(ARGS_VERSION) set(package_version "${ARGS_VERSION}") elseif(VERSION) set(package_version "${VERSION}") else() set(package_version "${${package_name}_VERSION}") endif() # Export for status information. set(GETTEXT_PACKAGE_NAME "${package_name}" PARENT_SCOPE) set(GETTEXT_PACKAGE_VERSION "${package_version}" PARENT_SCOPE) if(NOT ARGS_WORKING_DIRECTORY) set(ARGS_WORKING_DIRECTORY "../") endif() set(xgettext_options "--package-name" "${package_name}") if(package_version) list(APPEND xgettext_options "--package-version" "${package_version}") endif() if(ARGS_OPTIONS) list(APPEND xgettext_options ${ARGS_OPTIONS}) else() list(APPEND xgettext_options ${XGETTEXT_OPTIONS_DEFAULT}) endif() if(ARGS_XGETTEXT_VALA_OPTIONS_DEFAULT) set(xgettext_vala_options ${ARGS_XGETTEXT_VALA_OPTIONS_DEFAULT}) else() set(xgettext_vala_options ${XGETTEXT_VALA_OPTIONS_DEFAULT}) endif() if(ARGS_XGETTEXT_GLADE_OPTIONS_DEFAULT) set(xgettext_glade_options ${ARGS_XGETTEXT_GLADE_OPTIONS_DEFAULT}) else() set(xgettext_glade_options ${XGETTEXT_GLADE_OPTIONS_DEFAULT}) endif() if(ARGS_SRCFILES OR ARGS_GLADEFILES OR ARGS_DESKTOPFILES OR ARGS_GSETTINGSFILES) set(src_list) set(src_list_abs) foreach(globexpr ${ARGS_SRCFILES}) if(NOT IS_ABSOLUTE "${globexpr}") get_filename_component(absDir "${ARGS_WORKING_DIRECTORY}" ABSOLUTE) set(globexpr "${absDir}/${globexpr}") endif() set(tmpsrcfiles) file(GLOB tmpsrcfiles ${globexpr}) if (tmpsrcfiles) foreach(absFile ${tmpsrcfiles}) file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile}") list(APPEND src_list "${relFile}") list(APPEND src_list_abs "${absFile}") endforeach() else() file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${globexpr}") list(APPEND src_list "${relFile}") list(APPEND src_list_abs "${globexpr}") endif() endforeach() set(glade_list) set(glade_list_abs) foreach(globexpr ${ARGS_GLADEFILES}) if(NOT IS_ABSOLUTE "${globexpr}") get_filename_component(absDir "${ARGS_WORKING_DIRECTORY}" ABSOLUTE) set(globexpr "${absDir}/${globexpr}") endif() set(tmpgladefiles) file(GLOB tmpgladefiles ${globexpr}) if (tmpgladefiles) foreach(absFile ${tmpgladefiles}) file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile}") list(APPEND glade_list "${relFile}") list(APPEND glade_list_abs "${absFile}") endforeach() else() file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${globexpr}") list(APPEND glade_list "${relFile}") list(APPEND glade_list_abs "${globexpr}") endif() endforeach() if(ARGS_DESKTOPFILES OR ARGS_GSETTINGSFILES) find_package(Intltool REQUIRED) endif() set(desktop_list) set(desktop_list_abs) set(desktop_list_b) set(desktop_list_b_abs) set(desktop_list_h) set(desktop_list_h_abs) foreach(globexpr ${ARGS_DESKTOPFILES}) if(NOT IS_ABSOLUTE "${globexpr}") get_filename_component(absDir "${ARGS_WORKING_DIRECTORY}" ABSOLUTE) set(globexpr "${absDir}/${globexpr}") endif() set(tmpdesktopfiles) file(GLOB tmpdesktopfiles ${globexpr}) if (tmpdesktopfiles) foreach(absFile ${tmpdesktopfiles}) file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile}") list(APPEND desktop_list "${relFile}") list(APPEND desktop_list_abs "${absFile}") file(RELATIVE_PATH relFile_b "${PROJECT_SOURCE_DIR}" "${absFile}") list(APPEND desktop_list_b "${relFile_b}") get_filename_component(absFile_b "${PROJECT_BINARY_DIR}/${relFile_b}" ABSOLUTE) list(APPEND desktop_list_b_abs "${absFile_b}") file(RELATIVE_PATH relFile_h "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile_b}.h") list(APPEND desktop_list_h "${relFile_h}") list(APPEND desktop_list_h_abs "${absFile_b}.h") add_custom_command( OUTPUT "${absFile_b}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${relFile}" "${absFile_b}" DEPENDS "${absFile}" VERBATIM ) endforeach() else() file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${globexpr}") list(APPEND desktop_list "${relFile}") list(APPEND desktop_list_abs "${globexpr}") file(RELATIVE_PATH relFile_b "${PROJECT_SOURCE_DIR}" "${globexpr}") list(APPEND desktop_list_b "${relFile_b}") get_filename_component(absFile_b "${PROJECT_BINARY_DIR}/${relFile_b}" ABSOLUTE) list(APPEND desktop_list_b_abs "${absFile_b}") file(RELATIVE_PATH relFile_h "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile_b}.h") list(APPEND desktop_list_h "${relFile_h}") list(APPEND desktop_list_h_abs "${absFile_b}.h") add_custom_command( OUTPUT "${absFile_b}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${relFile}" "${absFile_b}" DEPENDS "${absFile}" VERBATIM ) endif() endforeach() set(_INTLTOOL_DESKTOPFILES ${desktop_list_b}) set(gsettings_list) set(gsettings_list_abs) set(gsettings_list_b) set(gsettings_list_b_abs) set(gsettings_list_h) set(gsettings_list_h_abs) foreach(globexpr ${ARGS_GSETTINGSFILES}) if(NOT IS_ABSOLUTE "${globexpr}") get_filename_component(absDir "${ARGS_WORKING_DIRECTORY}" ABSOLUTE) set(globexpr "${absDir}/${globexpr}") endif() set(tmpgsettingsfiles) file(GLOB tmpgsettingsfiles ${globexpr}) if (tmpgsettingsfiles) foreach(absFile ${tmpgsettingsfiles}) file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile}") list(APPEND gsettings_list "${relFile}") list(APPEND gsettings_list_abs "${absFile}") file(RELATIVE_PATH relFile_b "${PROJECT_SOURCE_DIR}" "${absFile}") list(APPEND gsettings_list_b "${relFile_b}") get_filename_component(absFile_b "${PROJECT_BINARY_DIR}/${relFile_b}" ABSOLUTE) list(APPEND gsettings_list_b_abs "${absFile_b}") file(RELATIVE_PATH relFile_h "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile_b}.h") list(APPEND gsettings_list_h "${relFile_h}") list(APPEND gsettings_list_h_abs "${absFile_b}.h") add_custom_command( OUTPUT "${absFile_b}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${relFile}" "${absFile_b}" DEPENDS "${absFile}" VERBATIM ) endforeach() else() file(RELATIVE_PATH relFile "${CMAKE_CURRENT_SOURCE_DIR}" "${globexpr}") list(APPEND gsettings_list "${relFile}") list(APPEND gsettings_list_abs "${globexpr}") file(RELATIVE_PATH relFile_b "${PROJECT_SOURCE_DIR}" "${globexpr}") list(APPEND gsettings_list_b "${relFile_b}") get_filename_component(absFile_b "${PROJECT_BINARY_DIR}/${relFile_b}" ABSOLUTE) list(APPEND gsettings_list_b_abs "${absFile_b}") file(RELATIVE_PATH relFile_h "${CMAKE_CURRENT_SOURCE_DIR}" "${absFile_b}.h") list(APPEND gsettings_list_h "${relFile_h}") list(APPEND gsettings_list_h_abs "${absFile_b}.h") add_custom_command( OUTPUT "${absFile_b}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${relFile}" "${absFile_b}" VERBATIM ) endif() endforeach() if(ARGS_SRCFILES) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" COMMAND "${XGETTEXT_EXECUTABLE}" ${xgettext_options} ${xgettext_vala_options} "-o" "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" ${src_list} COMMAND # Make sure file exists even if no translatable strings available. "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" DEPENDS ${src_list_abs} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) else() add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" VERBATIM ) endif() if(ARGS_GLADEFILES) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" COMMAND "${XGETTEXT_EXECUTABLE}" ${xgettext_options} ${xgettext_glade_options} "-o" "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" ${glade_list} COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" DEPENDS ${glade_list_abs} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) else() add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" VERBATIM ) endif() if(ARGS_DESKTOPFILES) add_custom_command( OUTPUT ${desktop_list_h_abs} COMMAND "${INTLTOOL_EXTRACT_EXECUTABLE}" ${INTLTOOL_OPTIONS_DEFAULT} "--type" "gettext/ini" ${desktop_list_b} DEPENDS ${desktop_list_b_abs} WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" VERBATIM ) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" COMMAND "${XGETTEXT_EXECUTABLE}" ${xgettext_options} ${XGETTEXT_INTLTOOL_OPTIONS} "-o" "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" ${desktop_list_h} COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" DEPENDS ${desktop_list_h_abs} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) else() add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" VERBATIM ) endif() if(ARGS_GSETTINGSFILES) add_custom_command( OUTPUT ${gsettings_list_h_abs} COMMAND "${INTLTOOL_EXTRACT_EXECUTABLE}" ${INTLTOOL_OPTIONS_DEFAULT} "--type" "gettext/gsettings" ${gsettings_list_b} DEPENDS ${gsettings_list_b_abs} WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" VERBATIM ) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" COMMAND "${XGETTEXT_EXECUTABLE}" ${xgettext_options} ${XGETTEXT_INTLTOOL_OPTIONS} "-o" "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" ${gsettings_list_h} COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" DEPENDS ${gsettings_list_h_abs} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) else() add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" VERBATIM ) endif() add_custom_target(pot COMMAND "${GETTEXT_MSGCAT_EXECUTABLE}" "-o" "${potfile}" "--use-first" "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/_source.pot" "${CMAKE_CURRENT_BINARY_DIR}/_glade.pot" "${CMAKE_CURRENT_BINARY_DIR}/_desktop.pot" "${CMAKE_CURRENT_BINARY_DIR}/_gsettings.pot" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" COMMENT "Extract translatable messages to ${potfile}" VERBATIM ) endif() endmacro() function(gettext_create_translations potfile) cmake_parse_arguments(ARGS "ALL;NOUPDATE;DESKTOPFILES_INSTALL" "PODIR;LOCALEDIR" "LANGUAGES;POFILES" ${ARGN}) get_filename_component(_potBasename "${potfile}" NAME_WE) get_filename_component(_absPotFile "${potfile}" ABSOLUTE) if(ARGS_ALL) set(make_all "ALL") else() set(make_all) endif() if(ARGS_LOCALEDIR) set(_localedir "${ARGS_LOCALEDIR}") elseif(localedir) set(_localedir "${localedir}") else() set(_localedir "share/locale") endif() set(langs) list(APPEND langs ${ARGS_LANGUAGES}) foreach(globexpr ${ARGS_POFILES}) set(tmppofiles) file(GLOB tmppofiles ${globexpr}) if(tmppofiles) foreach(tmppofile ${tmppofiles}) string(REGEX REPLACE ".*/([a-zA-Z_]+)(\\.po)?$" "\\1" lang "${tmppofile}") list(APPEND langs "${lang}") endforeach() else() string(REGEX REPLACE ".*/([a-zA-Z_]+)(\\.po)?$" "\\1" lang "${globexpr}") list(APPEND langs "${lang}") endif() endforeach() if(NOT langs AND NOT ARGS_PODIR) set(ARGS_PODIR "${CMAKE_CURRENT_SOURCE_DIR}") endif() if(ARGS_PODIR) file(GLOB pofiles "${ARGS_PODIR}/*.po") foreach(pofile ${pofiles}) string(REGEX REPLACE ".*/([a-zA-Z_]+)\\.po$" "\\1" lang "${pofile}") list(APPEND langs "${lang}") endforeach() endif() if(langs) list(REMOVE_DUPLICATES langs) endif() set(_gmoFile) set(_gmoFiles) foreach (lang ${langs}) get_filename_component(_absFile "${lang}.po" ABSOLUTE) set(_gmoFile "${CMAKE_CURRENT_BINARY_DIR}/${lang}.gmo") if(ARGS_NOUPDATE) set(_absFile_new "${CMAKE_CURRENT_BINARY_DIR}/${lang}.po") add_custom_command( OUTPUT "${_absFile_new}" COMMAND "${CMAKE_COMMAND}" -E copy "${_absFile}" "${_absFile_new}" DEPENDS "${_absPotFile}" "${_absFile}" VERBATIM ) set(_absFile "${_absFile_new}") endif() add_custom_command( OUTPUT "${_gmoFile}" COMMAND "${GETTEXT_MSGMERGE_EXECUTABLE}" "--quiet" "--update" "--backup=none" "-s" "${_absFile}" "${_absPotFile}" COMMAND "${GETTEXT_MSGFMT_EXECUTABLE}" "-o" "${_gmoFile}" "${_absFile}" DEPENDS "${_absPotFile}" "${_absFile}" WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" VERBATIM ) install( FILES "${_gmoFile}" DESTINATION "${_localedir}/${lang}/LC_MESSAGES" RENAME "${_potBasename}.mo" ) list(APPEND _gmoFiles "${_gmoFile}") endforeach() set(desktopfiles) if(langs AND _INTLTOOL_DESKTOPFILES) file(RELATIVE_PATH cursrcdir_rel "${CMAKE_CURRENT_BINARY_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") if(cursrcdir_rel STREQUAL "") set(cursrcdir_rel ".") endif() foreach(desktopfiletmp ${_INTLTOOL_DESKTOPFILES}) string(REGEX REPLACE "(\\.desktop).*$" "\\1" desktopfile "${desktopfiletmp}") set(desktopfile_abs "${PROJECT_BINARY_DIR}/${desktopfile}") list(APPEND desktopfiles "${desktopfile_abs}") file(RELATIVE_PATH desktopfile_rel "${CMAKE_CURRENT_BINARY_DIR}" "${desktopfile_abs}") file(RELATIVE_PATH desktopfiletmp_rel "${CMAKE_CURRENT_BINARY_DIR}" "${PROJECT_BINARY_DIR}/${desktopfiletmp}") add_custom_command( OUTPUT "${desktopfile_abs}" COMMAND "${INTLTOOL_MERGE_EXECUTABLE}" ${INTLTOOL_OPTIONS_DEFAULT} "--desktop-style" "${cursrcdir_rel}" "${desktopfiletmp_rel}" "${desktopfile_rel}" DEPENDS "${PROJECT_BINARY_DIR}/${desktopfiletmp}" VERBATIM ) if(ARGS_DESKTOPFILES_INSTALL AND NOT cursrcdir_rel STREQUAL ".") add_custom_command( OUTPUT "${CMAKE_SOURCE_DIR}/${desktopfile}" "desktopinstall.stamp" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${desktopfile_abs}" "${CMAKE_SOURCE_DIR}/${desktopfile}" COMMAND "${CMAKE_COMMAND}" -E touch "desktopinstall.stamp" DEPENDS "${desktopfile_abs}" VERBATIM ) else() add_custom_command( OUTPUT "desktopinstall.stamp" COMMAND "${CMAKE_COMMAND}" -E touch "desktopinstall.stamp" DEPENDS "${desktopfile_abs}" VERBATIM ) endif() list(APPEND desktopfiles "desktopinstall.stamp") install( FILES "${desktopfile_abs}" DESTINATION "share/applications" ) endforeach() endif() add_custom_target(translations "${make_all}" DEPENDS ${_gmoFiles} ${desktopfiles} COMMENT "Build translations." ) endfunction() endif() # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/GlibCompileSchema.cmake.in ================================================ # # cmake/GlibCompileSchema.cmake # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # find_program(GLIBCOMPILESCHEMA "glib-compile-schemas") if(GLIBCOMPILESCHEMA) execute_process( COMMAND "${GLIBCOMPILESCHEMA}" @GSETTINGSDIR@ ) endif() ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/GlibCompileSchema_verify.cmake.in ================================================ # # cmake/GlibCompileSchema.cmake.in # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # execute_process( COMMAND "${GLIBCOMPILESCHEMA}" "--dry-run" "--schema-file=${GLIB_SCHEMAFILE}" ERROR_VARIABLE stderr OUTPUT_VARIABLE stderr OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_STRIP_TRAILING_WHITESPACE ) if(NOT "${stderr}" STREQUAL "") message(FATAL_ERROR "Schema validation error: ${stderr}") endif() # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/SimpleUninstall.cmake ================================================ # # cmake/SimpleUninstall.cmake # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # # Slightly modified version from: http://www.cmake.org/Wiki/CMake_FAQ # if(NOT EXISTS "${CMAKE_BINARY_DIR}/install_manifest.txt") message(FATAL_ERROR "Cannot find install manifest: " "\"${CMAKE_BINARY_DIR}/install_manifest.txt\"") endif() file(READ "${CMAKE_BINARY_DIR}/install_manifest.txt" files) string(REGEX REPLACE "\n" ";" files "${files}") cmake_policy(PUSH) # Ignore empty list elements. cmake_policy(SET CMP0007 OLD) list(REVERSE files) cmake_policy(POP) foreach(file ${files}) message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"") if(EXISTS "$ENV{DESTDIR}${file}") execute_process( COMMAND "${CMAKE_COMMAND}" -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() else() message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.") endif() endforeach() if(NOT "$ENV{DESTDIR}" AND POSTREMOVE_HOOK) if (GSETTINGSDIR) set(compile_schema_file "${CMAKE_BINARY_DIR}/GlibCompileSchema_uninstall.cmake") if(NOT EXISTS "${compile_schema_file}") if(NOT CUSTOM_SOURCE_DIR) set(CUSTOM_SOURCE_DIR "${CMAKE_SOURCE_DIR}") endif() configure_file( "${CUSTOM_SOURCE_DIR}/cmake/GlibCompileSchema.cmake.in" "${compile_schema_file}" @ONLY ) endif() endif() execute_process( COMMAND "${CMAKE_COMMAND}" -P "${compile_schema_file}" ) endif() ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/vala/FindVala.cmake ================================================ # # cmake/vala/FindVala.cmake # ## # Find module for the Vala compiler (valac) # # This module determines whether a Vala compiler is installed on the current # system and where its executable is. # # Call the module using "find_package(Vala) from within your CMakeLists.txt. # # The following variables will be set after an invocation: # # VALA_FOUND Whether the vala compiler has been found or not # VALA_EXECUTABLE Full path to the valac executable if it has been found # VALA_VERSION Version number of the available valac # # VALA_SHORTVER Short version of valac (major.minor). Round up development # versions. E.g. 0.19.1 -> 0.20, 0.20.1 -> 0.20 # VALA_LIBPKG Name of libvala library (libvala-${VALA_SHORTVER}). # VALA_VAPIDIR Vapi directory path. # VALA_DATADIR Path to libvala data directory. E.g. /usr/share/libvala-0.20 # VALA_VAPIGEN Path to vapigen executable. # VALA_GEN_INTROSPECT Path to version specific gen-introspect executable. # VALA_VALA_GEN_INTROSPECT Path to version independent gen-introspect # executable. # ## # Copyright (C) 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # Copyright 2009-2010 Jakob Westhoff. All rights reserved. # Copyright 2010-2011 Daniel Pfeifer # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # 1. Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY JAKOB WESTHOFF ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL JAKOB WESTHOFF OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # The views and conclusions contained in the software and documentation are those # of the authors and should not be interpreted as representing official policies, # either expressed or implied, of Jakob Westhoff ## # Search for the valac executable in the usual system paths. find_program(VALA_EXECUTABLE NAMES "valac" "valac-0.26" "valac-0.24" "valac-0.22" "valac-0.20") mark_as_advanced(VALA_EXECUTABLE) # Determine the valac version if(VALA_EXECUTABLE) execute_process( COMMAND "${VALA_EXECUTABLE}" "--version" OUTPUT_VARIABLE VALA_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE ) string(REPLACE "Vala " "" VALA_VERSION "${VALA_VERSION}") string(REPLACE "." ";" VALA_LIST "${VALA_VERSION}") list(GET VALA_LIST 0 maj_ver) list(GET VALA_LIST 1 min_ver) list(GET VALA_LIST 2 rev_ver) math(EXPR is_odd "${min_ver} % 2") list(LENGTH VALA_LIST len) if((${is_odd} EQUAL 1)) math(EXPR min_ver "${min_ver} + 1") elseif(len GREATER 3) math(EXPR min_ver "${min_ver} + 2") endif() set(VALA_SHORTVER "${maj_ver}.${min_ver}" CACHE INTERNAL "") if(NOT "${maj_ver}" STREQUAL "" AND NOT "${min_ver}" STREQUAL "") set(VALA_LIBPKG "libvala-${VALA_SHORTVER}" CACHE INTERNAL "") find_package(PkgConfig) pkg_check_modules("VALA" REQUIRED "${VALA_LIBPKG}") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" VAPIDIR "" "--variable=vapidir") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" DATADIR "" "--variable=datadir") set(VALA_DATADIR "${VALA_DATADIR}/vala" CACHE INTERNAL "") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" VAPIGEN "" "--variable=vapigen") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" GEN_INTROSPECT "" "--variable=gen_introspect") _pkgconfig_invoke("${VALA_LIBPKG}" "VALA" VALA_GEN_INTROSPECT "" "--variable=vala_gen_introspect") endif() endif() # Handle the QUIETLY and REQUIRED arguments, which may be given to the find call. # Furthermore set VALA_FOUND to TRUE if Vala has been found (aka. # VALA_EXECUTABLE etc. are set) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Vala REQUIRED_VARS VALA_EXECUTABLE VALA_SHORTVER VALA_LIBPKG VALA_VAPIDIR VALA_DATADIR VALA_VAPIGEN VALA_GEN_INTROSPECT VALA_VALA_GEN_INTROSPECT VERSION_VAR VALA_VERSION ) # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/vala/FindValadoc.cmake ================================================ # # cmake/vala/FindValadocs.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # Add find_package handler for valadoc. ## # Search for the valac executable in the usual system paths. find_program(VALADOC_EXECUTABLE "valadoc") mark_as_advanced(VALADOC_EXECUTABLE) # Determine the valadoc version if(VALADOC_EXECUTABLE) execute_process( COMMAND "${VALADOC_EXECUTABLE}" "--version" OUTPUT_VARIABLE VALADOC_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE ) string(REPLACE "Valadoc " "" VALADOC_VERSION "${VALADOC_VERSION}") endif() # Add find_package handler for valadoc. include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Valadoc REQUIRED_VARS VALADOC_EXECUTABLE VERSION_VAR VALADOC_VERSION ) ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/vala/UseVala.cmake ================================================ # # cmake/vala/UseVala.cmake # ## # Compile vala files to their c equivalents for further processing. # # The "vala_precompile" function takes care of calling the valac executable on # the given source to produce c files which can then be processed further using # default cmake functions. # # The first parameter provided is a variable, which will be filled with a list # of C files outputted by the vala compiler. This list can than be used in # conjunction with functions like "add_executable" or others to create the # necessary compile rules with CMake. # # The following sections may be specified afterwards to provide certain options # to the vala compiler: # # SOURCES # A list of .vala files to be compiled. Please take care to add every vala # file belonging to the currently compiled project or library as Vala will # otherwise not be able to resolve all dependencies. # # PACKAGES # A list of vala packages/libraries to be used during the compile cycle. The # package names are exactly the same, as they would be passed to the valac # "--pkg=" option. # # OPTIONS # A list of optional options to be passed to the valac executable. This can be # used to pass "--thread" for example to enable multi-threading support. # # DEFINITIONS # A list of symbols to be used for conditional compilation. They are the same # as they would be passed using the valac "--define=" option. # # CUSTOM_VAPIS # A list of custom vapi files to be included for compilation. This can be # useful to include freshly created vala libraries without having to install # them in the system. # # GENERATE_VAPI # Pass all the needed flags to the compiler to create an internal vapi for # the compiled library. The provided name will be used for this and a # .vapi file will be created. # # GENERATE_GIR # Create a GObject-Introspection repository file. Name it # ".gir". Library name is set to generated vapi name without # file extension suffix or if no vapi is to be generated guess from gir # name. # # GENERATE_HEADER # Let the compiler generate a header file for the compiled code. There will # be a header file as well as an internal header file being generated called # .h and _internal.h # # PUBLIC # When enabled generate only public parts of vapis/headers. # # The following call is a simple example to the vala_precompile macro showing # an example to every of the optional sections: # # find_package(Vala "0.12" REQUIRED) # include(${VALA_USE_FILE}) # # vala_precompile(VALA_C # SOURCES # source1.vala # source2.vala # source3.vala # PACKAGES # gtk+-2.0 # gio-1.0 # posix # DIRECTORY # gen # OPTIONS # --thread # CUSTOM_VAPIS # some_vapi.vapi # GENERATE_VAPI # myvapi # GENERATE_GIR # MyLib-1.0 # GENERATE_HEADER # myheader # ) # # Most important is the variable VALA_C which will contain all the generated c # file names after the call. ## ## # Copyright 2009-2010 Jakob Westhoff. All rights reserved. # Copyright 2010-2011 Daniel Pfeifer # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # 1. Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY JAKOB WESTHOFF ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL JAKOB WESTHOFF OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # The views and conclusions contained in the software and documentation are those # of the authors and should not be interpreted as representing official policies, # either expressed or implied, of Jakob Westhoff ## include(CMakeParseArguments) function(vala_precompile output) cmake_parse_arguments(ARGS "PUBLIC" "DIRECTORY;GENERATE_HEADER;GENERATE_VAPI;GENERATE_GIR" "SOURCES;PACKAGES;OPTIONS;DEFINITIONS;CUSTOM_VAPIS" ${ARGN}) if(ARGS_DIRECTORY) get_filename_component(DIRECTORY "${ARGS_DIRECTORY}" ABSOLUTE) else() set(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}") endif() include_directories("${DIRECTORY}") set(vala_pkg_opts) foreach(pkg ${ARGS_PACKAGES}) list(APPEND vala_pkg_opts "--pkg=${pkg}") endforeach() set(vala_define_opts) foreach(def ${ARGS_DEFINITIONS}) list(APPEND vala_define_opts "--define=${def}") endforeach() set(in_files) set(out_files) set(out_files_rel) foreach(src ${ARGS_SOURCES} ${ARGS_UNPARSED_ARGUMENTS}) list(APPEND in_files "${CMAKE_CURRENT_SOURCE_DIR}/${src}") string(REPLACE ".vala" ".c" src "${src}") string(REPLACE ".gs" ".c" src "${src}") set(out_file "${DIRECTORY}/${src}") list(APPEND out_files "${DIRECTORY}/${src}") set(out_files_rel "${out_files_rel}, ${src}") endforeach() string(REGEX REPLACE "^, " "" out_files_rel "${out_files_rel}") set(custom_vapi_arguments) if(ARGS_CUSTOM_VAPIS) foreach(vapi ${ARGS_CUSTOM_VAPIS}) if("${vapi}" MATCHES "${CMAKE_SOURCE_DIR}" OR "${vapi}" MATCHES "${CMAKE_BINARY_DIR}") list(APPEND custom_vapi_arguments "${vapi}") else() list(APPEND custom_vapi_arguments "${CMAKE_CURRENT_SOURCE_DIR}/${vapi}") endif() endforeach() endif() set(vapi_arguments) set(gir_arguments) if(ARGS_GENERATE_VAPI) list(APPEND out_files "${DIRECTORY}/${ARGS_GENERATE_VAPI}.vapi") set(out_files_rel "${out_files_rel}, ${ARGS_GENERATE_VAPI}.vapi") if(ARGS_PUBLIC) set(vapi_arguments "--library=${ARGS_GENERATE_VAPI}") else() set(vapi_arguments "--internal-vapi=${ARGS_GENERATE_VAPI}.vapi") endif() # Header and internal header is needed to generate internal vapi if(NOT ARGS_PUBLIC AND NOT ARGS_GENERATE_HEADER) set(ARGS_GENERATE_HEADER "${ARGS_GENERATE_VAPI}") endif() endif() if(ARGS_GENERATE_GIR) list(APPEND out_files "${DIRECTORY}/${ARGS_GENERATE_GIR}.gir") set(out_files_rel "${out_files_rel}, ${ARGS_GENERATE_GIR}.gir") list(APPEND gir_arguments "--gir=${ARGS_GENERATE_GIR}.gir") if(NOT ARGS_PUBLIC OR NOT ARGS_GENERATE_VAPI) set(tmplibname) string(REGEX MATCH "^[^-]*" tmplibname "${ARGS_GENERATE_GIR}") set(libname) string(TOLOWER "${tmplibname}" libname) list(APPEND gir_arguments "--library=${libname}") endif() endif() set(header_arguments) if(ARGS_GENERATE_HEADER) list(APPEND out_files "${DIRECTORY}/${ARGS_GENERATE_HEADER}.h") set(out_files_rel "${out_files_rel}, ${ARGS_GENERATE_HEADER}.h") list(APPEND header_arguments "--header=${DIRECTORY}/${ARGS_GENERATE_HEADER}.h") if(NOT ARGS_PUBLIC) list(APPEND out_files "${DIRECTORY}/${ARGS_GENERATE_HEADER}_internal.h") set(out_files_rel "${out_files_rel}, ${ARGS_GENERATE_HEADER}_internal.h") list(APPEND header_arguments "--internal-header=${DIRECTORY}/${ARGS_GENERATE_HEADER}_internal.h") endif() endif() add_custom_command( OUTPUT "vala.stamp" COMMAND "${VALA_EXECUTABLE}" "-C" ${header_arguments} ${vapi_arguments} ${gir_arguments} "-b" "${CMAKE_CURRENT_SOURCE_DIR}" "-d" "${DIRECTORY}" ${vala_pkg_opts} ${vala_define_opts} ${ARGS_OPTIONS} ${in_files} ${custom_vapi_arguments} COMMAND "${CMAKE_COMMAND}" -E touch "vala.stamp" DEPENDS ${in_files} ${ARGS_CUSTOM_VAPIS} COMMENT "Generating ${out_files_rel}" VERBATIM ) add_custom_command( OUTPUT ${out_files} DEPENDS "vala.stamp" COMMENT "" ) set(${output} ${out_files} PARENT_SCOPE) endfunction() # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/vala/ValaDocs.cmake ================================================ # # cmake/vala/ValaDocs.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # The valadoc_gen function generates Vala documentation from .vala and .vapi # source files. The first parameter is the project name. # Provide target 'docs' to build documentation. # # Supported sections: # # ALL (optional) # Include this target in all builds. # # INSTALLDIR (optional) # Directory where to install documentation to. # Default: ${datadir} # If ${datadir} not defined: share/${package_name_lower} # (where ${package_name_lower} is ${package_name} with letters) # If ${package_name} is not defined raise error. # # DOCDIR (optional) # Directory where to build documentation to. # Default: ${CMAKE_CURRENT_BINARY_DIR}/docs # # PACKAGES (in general mandatory) # List of all Vala packages the project depends on. # # DEFINITIONS (optional) # A list of symbols for conditional compilation. # # SRCFILES # List of all project files. Globbing is supported. # # OPTIONS (optional) # List of additional valadoc options. if(VALADOC_FOUND) function(valadoc_gen package_name) cmake_parse_arguments(ARGS "ALL" "INSTALLDIR;DOCDIR" "PACKAGES;DEFINITIONS;SRCFILES;OPTIONS" ${ARGN}) if(ARGS_SRCFILES) if(ARGS_ALL) set(make_all "ALL") else() set(make_all) endif() string(TOLOWER "${package_name}" package_name_lower) if(ARGS_INSTALLDIR) set(installdir "${ARGS_DOCDIR}") elseif(datadir) set(installdir "${datadir}") elseif(package_name) set(installdir "share/${package_name_lower}") else() message(SEND_ERROR "No installation directory given.") endif() if(ARGS_DOCDIR) set(docdir "${ARGS_DOCDIR}") else() set(docdir "${CMAKE_CURRENT_BINARY_DIR}/docs") endif() set(srcfiles) set(srcfiles_abs) foreach(globexpr ${ARGS_SRCFILES}) file(GLOB tmpsrcfiles ${globexpr}) if(tmpsrcfiles) foreach(tmpsrcfile ${tmpsrcfiles}) file(RELATIVE_PATH srcfile "${CMAKE_CURRENT_BINARY_DIR}" "${tmpsrcfile}") list(APPEND srcfiles "${srcfile}") get_filename_component(srcfile_abs "${tmpsrcfile}" ABSOLUTE) list(APPEND srcfiles_abs "${srcfile_abs}") endforeach() else() file(RELATIVE_PATH srcfile "${CMAKE_CURRENT_BINARY_DIR}" "${globexpr}") list(APPEND srcfiles "${srcfile}") get_filename_component(srcfile_abs "${globexpr}" ABSOLUTE) list(APPEND srcfiles_abs "${srcfile_abs}") endif() endforeach() set(pkg_opts) foreach(pkg ${ARGS_PACKAGES}) list(APPEND pkg_opts "--pkg=${pkg}") endforeach() set(valadoc_options "-o" "${docdir}" "--package-name" "${package_name}" ) foreach(def ${ARGS_DEFINITIONS}) list(APPEND valadoc_options "--define=${def}") endforeach() if(ARGS_OPTIONS) list(APPEND valadoc_options ${ARGS_OPTIONS}) endif() add_custom_command( OUTPUT "${docdir}/index.html" COMMAND "${CMAKE_COMMAND}" -E remove_directory "${docdir}" COMMAND "${VALADOC_EXECUTABLE}" ${srcfiles} ${pkg_opts} ${valadoc_options} DEPENDS ${srcfiles_abs} VERBATIM ) add_custom_target("docs-${package_name_lower}" ${make_all} DEPENDS "${docdir}/index.html" COMMENT "Generating documentation with valadoc." ) install( DIRECTORY "${docdir}" DESTINATION "${installdir}" OPTIONAL ) endif() endfunction() endif() ================================================ FILE: data/buildsystems/cmake/buildsystem/cmake/vala/ValaPkgs.cmake ================================================ # # cmake/vala/ValaPkgs.cmake # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # ## # The vala_pkgs function is a wrapper to perform pkg-config check, # automatically set compiler and linker flags and call the actual # vala_precompile function. # # Supported sections: # # PACKAGES # A list of vala packages that are required to build the target. Versioned # dependencies are supported. There is also a possibility to suppress # checking with pkg-config or to suppress --cflags and --libs of pkg-config. # To use those options append {option,option,...}. # # DEFINITIONS # A list of symbols for conditional compilation. (optional) # # OPTIONAL # A list of vala packages that are optional to build the target. (optional) # # SRCFILES # A list of Vala source files. Globbing is supported. # # VAPIS # A list of custom .vapi files. Globbing is supported. (optional) # # LIBRARY # Name of library to generate. # # GIRFILE # Generate GObject-Introspection repository file. # # OPTIONS # A list of options passed to the valac compiler. (optional) # # # The following call is a simple example: # # SET(packages "foo >= 1.4.2" "bla <= 9") # vala_pkgs(VALA_C # PACKAGES # "gtk+-3.0 >= 3.8" # gee-1.0 # ${packages} # "sdl-image {nocheck,nolink}" # "sdl" # OPTIONAL # libxml-2.0 # SRCFILES # file.vala # file2.vala # src/file3.vala # ) # add_executable(myexecutable ${VALA_C}) # target_link_libraries(myexecutable ${PROJECT_LDFLAGS}) # add_definitions(${PROJECT_C_FLAGS}) # include(CMakeParseArguments) function(vala_pkgs output) cmake_parse_arguments(ARGS "" "LIBRARY;GIRFILE" "PACKAGES;DEFINITIONS;OPTIONAL;SRCFILES;VAPIS;OPTIONS" ${ARGN}) if(ARGS_PACKAGES OR ARGS_OPTIONAL) find_package(PkgConfig) endif() if(ARGS_SRCFILES) include(UseVala) # Package list without versions to pass to vala_precompile. set(pkglist) set(definitions) set(libraries) if(ARGS_PACKAGES) foreach(pkg ${ARGS_PACKAGES}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nocheck[ \t]*(|,[^}]+)}[ \t]*$" matchit "${pkg}") string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkgstripped "${pkg}") if(NOT matchit) string(TOUPPER "${pkgstripped}" pkgdesctmp) string(REGEX REPLACE "([A-Z0-9-])[-+]*([0-9.]*)$" "\\1\\2" pkgdesc "${pkgdesctmp}") pkg_check_modules(${pkgdesc} REQUIRED ${pkgstripped}) if (${${pkgdesc}_FOUND}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nolink[ \t]*(|,[^}]+)}[ \t]*$" matchit "${pkg}") if(NOT matchit) string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkgstripped "${pkg}") list(APPEND definitions "${${pkgdesc}_CFLAGS}") list(APPEND libraries "${${pkgdesc}_LDFLAGS}") endif() endif() endif() string(STRIP ${pkgstripped} tmppkgname) string(REGEX REPLACE "[ ].*$" "" pkgname "${tmppkgname}") list(APPEND pkglist "${pkgname}") endforeach() endif() set(optional_pkgs) if(ARGS_OPTIONAL) foreach(pkg ${ARGS_OPTIONAL}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nocheck[ \t]*(|,[^}]+)}[ \t]*$" matchit "${pkg}") string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkgstripped "${pkg}") if(NOT matchit) string(TOUPPER "${pkgstripped}" pkgdesctmp) string(REGEX REPLACE "([A-Z0-9-])[-+]*([0-9.]*)$" "\\1\\2" pkgdesc "${pkgdesctmp}") pkg_check_modules("${pkgdesc}" "${pkgstripped}") if(${${pkgdesc}_FOUND}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nolink[ \t]*(|,[^}]+)}[ \t]*$" matchit "${pkg}") if(NOT matchit) string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkgstripped "${pkg}") list(APPEND definitions "${${pkgdesc}_CFLAGS}") list(APPEND libraries "${${pkgdesc}_LDFLAGS}") endif() endif() endif() string(STRIP "${pkgstripped}" tmppkgname) string(REGEX REPLACE "([^ ]+)" "\\1" pkgname "${tmppkgname}") list(APPEND pkglist "${pkgname}") endforeach() endif() pkg_check_modules(GTHREAD REQUIRED "gthread-2.0") if(GTHREAD_FOUND) list(APPEND definitions "${GTHREAD_CFLAGS}") list(APPEND libraries "${GTHREAD_LDFLAGS}") endif() set(srcfiles) foreach(globexpr ${ARGS_SRCFILES}) set(tmpsrcfiles) file(GLOB tmpsrcfiles ${globexpr}) if(tmpsrcfiles) foreach(tmpsrcfile ${tmpsrcfiles}) set(srcfile) file(RELATIVE_PATH srcfile "${CMAKE_CURRENT_SOURCE_DIR}" "${tmpsrcfile}") list(APPEND srcfiles "${srcfile}") endforeach() else() list(APPEND srcfiles "${globexpr}") endif() endforeach() set(vapifiles) if(ARGS_VAPIS) foreach(globexpr ${ARGS_VAPIS}) set(tmpvapifiles) file(GLOB tmpvapifiles ${globexpr}) if(tmpvapifiles) foreach(tmpvapifile ${tmpvapifiles}) set(vapifile) file(RELATIVE_PATH vapifile "${CMAKE_CURRENT_SOURCE_DIR}" "${tmpvapifile}") list(APPEND vapifiles "${vapifile}") endforeach() else() list(APPEND vapifiles "${globexpr}") endif() endforeach() endif() vala_precompile(VALA_C ${srcfiles} PACKAGES ${pkglist} DEFINITIONS "${ARGS_DEFINITIONS}" CUSTOM_VAPIS ${vapifiles} GENERATE_VAPI "${ARGS_LIBRARY}" GENERATE_HEADER "${ARGS_LIBRARY}" GENERATE_GIR "${ARGS_GIRFILE}" OPTIONS ${ARGS_OPTIONS} PUBLIC ) set(${output} ${VALA_C} PARENT_SCOPE) set(PROJECT_C_FLAGS ${definitions} PARENT_SCOPE) set(PROJECT_LDFLAGS ${libraries} PARENT_SCOPE) endif() endfunction() # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: data/buildsystems/cmake/cmake.info ================================================ Dominique Lasserre lasserre.d@gmail.com CMake CMake buildsystem. ================================================ FILE: data/layout.xml ================================================ ================================================ FILE: data/org.valama.gschema.xml ================================================ 950 Horizontal window size 700 Vertical window size ================================================ FILE: data/templates/clutter/clutter.info ================================================ ================================================ FILE: data/templates/clutter/template/src/main.vala ================================================ using GLib; using Clutter; static Stage stage; static Rectangle r; static void main (string[] args) { Clutter.init (ref args); stage = new Stage(); r = new Rectangle(); r.width = 100; r.height = 100; r.color = Color.from_string ("Green"); r.reactive = true; r.button_press_event.connect (() => { animate_it(); return false; }); stage.add_child (r); stage.show(); animate_it(); Clutter.main(); } static void animate_it() { r.x = 0; r.y = 0; r.animate (AnimationMode.EASE_OUT_BOUNCE, 3000, x: stage.width - r.width, y: stage.height - r.height, rotation_angle_z: r.rotation_angle_z + 90); } ================================================ FILE: data/templates/clutter/template/template.vlp ================================================ cmake 0 0 0 src vapi ui cmake src/main.vala ================================================ FILE: data/templates/clutter/template/vapi/config.vapi ================================================ [CCode (cprefix = "", lower_case_cprefix = "")] namespace Config { public const string VALA_VERSION; } ================================================ FILE: data/templates/elementary/elementary.info ================================================ ================================================ FILE: data/templates/elementary/template/data/hello.desktop ================================================ [Desktop Entry] Version=0.1 Type=Application Name=Hello _GenericName=Helo_test _Comment=TEST Categories=GTK;Office; Exec=hello Icon=hello Terminal=false Name[de_DE]=hello ================================================ FILE: data/templates/elementary/template/src/main.vala ================================================ using Gtk; namespace Hello{ public class Hello : Granite.Application{ public Window main_window; private Gtk.Toolbar toolbar; private Gtk.Box content; construct{ // the name of your program program_name = "Hello"; // the name of the executable, usually the name in lower case exec_name = "Hello"; app_years = "2014"; /* the icon for your app. you normally ship it with your project in the data directory and copy it to the icon directory. You don't include file endings here (you can also use one of the default icons as I'm doing here) */ app_icon = "hello.png"; // the .desktop file for your app, also in data directory app_launcher = "hello.desktop"; // an unique id which will identify your application application_id = "org.elementary.hello"; // those urls will be shown in the automatically // generated about dialog main_url = "https://github.com/august0815/valama"; bug_url = ""; help_url = "https://github.com/august0815/valama/issues/new"; translate_url = "https://github.com/august0815/valama/issues/new"; // here you can proudly list your own name and the names of // those who helped you about_authors = {""}; about_documenters = {"Mario Marcec "}; // if you got an icon or a nice mockup from someone // you can list him here about_artists = {"Mario Marcec"}; // a short comment on the app about_comments = "A simple Hello to you"; about_translators = "NOBODY YET"; // this should be one of : // http://unstable.valadoc.org/#!api=gtk+-3.0/Gtk.License; // For elementary GPL3 is the default one, // it’s a good idea to use it about_license_type = License.GPL_3_0; } public Hello (){ Gtk.Settings.get_default ().gtk_application_prefer_dark_theme = true; } public override void activate (){ if (this.main_window == null) build_and_run (); } public void build_and_run (){ this.main_window = new Window (); this.main_window.set_default_size (320, 75); this.main_window.set_application (this); this.main_window.window_position = WindowPosition.CENTER; Gtk.Box container = new Gtk.Box(Gtk.Orientation.VERTICAL, 0); this.toolbar = new Gtk.Toolbar(); var menu = new Gtk.Menu(); var appmenu = this.create_appmenu (menu); this.toolbar.add(appmenu); container.add(this.toolbar); var button = new Button.with_label ("Click me!"); button.clicked.connect (() => { button.label = "Thank you"; }); this.content = new Gtk.Box(Gtk.Orientation.VERTICAL, 0); container.add(content); container.add(button); this.main_window.add(container); this.main_window.show_all (); } } } public static int main (string [] args){ Gtk.init (ref args); var hello = new Hello.Hello (); return hello.run (args); } ================================================ FILE: data/templates/elementary/template/template.vlp ================================================ cmake 0 0 0 src data data vapi ui cmake src/main.vala ================================================ FILE: data/templates/elementary/template/vapi/config.vapi ================================================ [CCode (cprefix = "", lower_case_cprefix = "")] namespace Config { public const string VALA_VERSION; } ================================================ FILE: data/templates/plain_lib/plain_lib.info ================================================ ================================================ FILE: data/templates/plain_lib/template/src/lib.vala ================================================ using GLib; namespace MyNS { public class Lib : Object { public signal void sample_signal(int a, int b); public int calc (int a, int b) { sample_signal (a, b); return a + b; } } } ================================================ FILE: data/templates/plain_lib/template/template.vlp ================================================ autotools 0 0 0 src src/lib.vala ================================================ FILE: data/templates/plain_vala/plain_vala.info ================================================ ================================================ FILE: data/templates/plain_vala/template/src/main.vala ================================================ using GLib; static void main (string[] args) { stdout.printf ("Hello world!\n"); } ================================================ FILE: data/templates/plain_vala/template/template.vlp ================================================ cmake 0 0 0 src vapi ui cmake src/main.vala ================================================ FILE: data/templates/plain_vala/template/vapi/config.vapi ================================================ [CCode (cprefix = "", lower_case_cprefix = "")] namespace Config { public const string VALA_VERSION; } ================================================ FILE: data/templates/simple_gst_audio/simple_gst_audio.info ================================================ ================================================ FILE: data/templates/simple_gst_audio/template/src/main.vala ================================================ void main (string[] args) { if (args.length < 2) { print ("usage: main file://path/to/file or main http://radio:8080"); return; } Gst.init (ref args); var loop = new MainLoop(); dynamic Gst.Element playbin = Gst.ElementFactory.make ("playbin","playbin"); playbin.bus.add_watch (0, (bus, message) => { switch (message.type) { case Gst.MessageType.ERROR: print ("error occured !"); loop.quit(); break; case Gst.MessageType.EOS: loop.quit(); break; } return false; }); playbin.uri = args[1]; playbin.set_state (Gst.State.PLAYING); loop.run(); } ================================================ FILE: data/templates/simple_gst_audio/template/template.vlp ================================================ cmake 0 0 0 src vapi ui cmake src/main.vala ================================================ FILE: data/templates/simple_gst_audio/template/vapi/config.vapi ================================================ [CCode (cprefix = "", lower_case_cprefix = "")] namespace Config { public const string VALA_VERSION; } ================================================ FILE: data/templates/simple_gst_video/simple_gst_video.info ================================================ ================================================ FILE: data/templates/simple_gst_video/template/src/main.vala ================================================ using Gst; using Gtk; static void main (string[] args) { if (args.length < 2) { // Note: playbin handle uris, no paths. print ("usage: test file:///path/to/file\n"); return; } Gtk.init (ref args); Gst.init (ref args); dynamic Element playbin = ElementFactory.make ("playbin", "playbin"); playbin.uri = args[1]; Window window = new Window(); playbin.bus.add_watch (0, (bus, message) => { // get the window id of current GtkWindow for inlay the video. if (Gst.Video.is_video_overlay_prepare_window_handle_message (message)) (message.src as Gst.Video.Overlay).set_window_handle ((uint*)Gdk.X11Window.get_xid (window.get_window())); switch (message.type) { case Gst.MessageType.ERROR: print ("an error was occured !\n"); Gtk.main_quit(); break; case Gst.MessageType.EOS: print ("end of current stream. quit ..\n"); Gtk.main_quit(); break; } return true; }); window.realize.connect(() => { // when the GtkWindow is shown, set the playbin state at PLAYING. playbin.set_state (State.PLAYING); }); window.show_all(); Gtk.main(); } ================================================ FILE: data/templates/simple_gst_video/template/template.vlp ================================================ cmake 0 0 0 src vapi ui cmake src/main.vala ================================================ FILE: data/templates/simple_gst_video/template/vapi/config.vapi ================================================ [CCode (cprefix = "", lower_case_cprefix = "")] namespace Config { public const string VALA_VERSION; } ================================================ FILE: data/templates/simple_gtk/simple_gtk.info ================================================ ================================================ FILE: data/templates/simple_gtk/template/src/main.vala ================================================ using GLib; using Gtk; static Label lbl_hello; static void main (string[] args) { Gtk.init (ref args); var window_main = new Window(); window_main.title = "Hello world!"; window_main.set_default_size (200, 200); window_main.destroy.connect (Gtk.main_quit); var vbox_main = new Box (Orientation.VERTICAL, 0); lbl_hello = new Label ("Hello!"); var btn_bye = new Button.with_label ("Magic!"); btn_bye.clicked.connect (on_btn_bye_clicked); vbox_main.pack_start (lbl_hello, true, true); vbox_main.pack_start (btn_bye, false, true); window_main.add (vbox_main); window_main.show_all(); Gtk.main(); } static void on_btn_bye_clicked() { lbl_hello.label = "Bye!"; } ================================================ FILE: data/templates/simple_gtk/template/template.vlp ================================================ cmake 0 0 0 src vapi ui cmake src/main.vala ================================================ FILE: data/templates/simple_gtk/template/vapi/config.vapi ================================================ [CCode (cprefix = "", lower_case_cprefix = "")] namespace Config { public const string VALA_VERSION; } ================================================ FILE: data/valama.1.in ================================================ .TH VALAMA "1" "@MONTH_DATE@" "Valama @Valama_VERSION@" "User Commands" .SH NAME Valama \- Next generation Vala IDE .SH SYNOPSIS \fBvalama\fR [\fB-h\fR|\fB--help\fR] [\fB-v\fR|\fB--version\fR] [\fB--syntax\fR \fIfile\fR] [\fB--templates\fR \fIdirectory\fR] [\fB--buildsystems\fR \fIdirectory\fR] [{\fB-d\fR|\fB--debug\fR} [\fIlevel\fR]] [\fB--force\-old\fR] [\fB--layout\fR \fIfile\fR] [\fB--reset\-layout\fR] [\fIfile\fR ...] .SH DESCRIPTION \fBValama\fR is an integrated development environment (IDE) to support creation of Vala applications. Some features: .IP \(bu intelligent code completion (easily extendible syntax definition file) .IP \(bu live error checking .IP \(bu project templates .SH OPTIONS .TP \fB\-h\fR, \fB\-\-help\fR Show help. .TP \fB\-v\fR, \fB\-\-version\fR Display version number. .TP \fB\-\-syntax\fR \fIfile\fR Guanako syntax file (used for code completion). .TP \fB\-\-templates\fR \fIdirectory\fR Templates directory. .TP \fB\-\-buildsystems\fR \fIdirectory\fR Build systems directory. .TP \fB\-d\fR, \fB\-\-debug\fR \fI[debuglevel]\fR Output debug information. Be more verbose on higher debug level. .TP \fB\-\-force\-old\fR Force loading of possibly incompatible template or project files. .TP \fB\-\-layout\fR \fIfile\fR Path to GUI layout file. .TP \fB\-\-reset\-layout\fR Load default layout. .SH FILES .TP \fI@DATADIR@syntax\fR Default Guanako syntax definition file. .TP \fI@DATADIR@templates\fR Default templates directory. Each template has its own subdirectory with a \fItesttemplate.info\fR file for meta information like supported Vala versions, package dependencies, etc. In the sub-subdirectory \fItemplate\fR is the actual template source code. .TP \fI@DATADIR@buildsystems\fR Default build system plug-in directory. Each build system plug-in has its own subdirectory with a \fItestbuildsystem.info\fR file for meta information. In the sub-subdirectory \fIbuildsystem\fR is the actual buildsystem template code. .TP \fI@DATADIR@layout.xml\fR Default GUI layout file to place widgets like the project browser, reporter, etc. ================================================ FILE: data/valama.desktop.in ================================================ [Desktop Entry] Type=Application _Name=Valama _GenericName=IDE _Comment=Create Vala projects. Icon=valama Exec=valama MimeType=application/x-valama; Categories=GNOME;GTK;Development;IDE; _Keywords=Vala;IDE;Development; ================================================ FILE: data/valama.xml ================================================ Valama project file Valama Projektdatei ================================================ FILE: extravapi/gdl-3.0/gdl-3.0.deps ================================================ gtk+-3.0 gio-2.0 ================================================ FILE: extravapi/gdl-3.0/gdl-3.0.vapi ================================================ /* gdl-3.0.vapi generated by vapigen, do not modify. */ [CCode (cprefix = "Gdl", gir_namespace = "Gdl", gir_version = "3", lower_case_cprefix = "gdl_")] namespace Gdl { [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_get_type ()")] public class Dock : Gdl.DockObject, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Dock (); public void add_floating_item (Gdl.DockItem item, int x, int y, int width, int height); public void add_item (Gdl.DockItem item, Gdl.DockPlacement placement); public unowned Gdl.DockItem get_item_by_name (string name); public GLib.List get_named_items (); [Deprecated (since = "3.6")] public unowned Gdl.DockPlaceholder get_placeholder_by_name (string name); public unowned Gdl.DockObject get_root (); public void hide_preview (); public Gtk.Widget new_from (bool floating); public void set_skip_taskbar (bool skip); public void show_preview (Gdk.Rectangle rect); [Deprecated (since = "3.6")] public void xor_rect (Gdk.Rectangle rect); [Deprecated (since = "3.6")] public void xor_rect_hide (); [NoAccessorMethod] public string default_title { owned get; set; } [NoAccessorMethod] public bool floating { get; construct; } [NoAccessorMethod] public int floatx { get; set construct; } [NoAccessorMethod] public int floaty { get; set construct; } [NoAccessorMethod] public int height { get; set construct; } [NoAccessorMethod] public bool skip_taskbar { get; set construct; } [NoAccessorMethod] public int width { get; set construct; } public virtual signal void layout_changed (); } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_bar_get_type ()")] public class DockBar : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public DockBar (GLib.Object? master); [Deprecated (since = "3.6")] public Gtk.Orientation get_orientation (); public Gdl.DockBarStyle get_style (); [Deprecated (since = "3.6")] public void set_orientation (Gtk.Orientation orientation); public void set_style (Gdl.DockBarStyle style); [NoAccessorMethod] public Gdl.DockBarStyle dockbar_style { get; set construct; } [NoAccessorMethod] public GLib.Object master { owned get; set; } } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_item_get_type ()")] public class DockItem : Gdl.DockObject, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public DockItem (string name, string long_name, Gdl.DockItemBehavior behavior); public void bind (Gtk.Widget dock); public void dock_to (Gdl.DockItem? target, Gdl.DockPlacement position, int docking_param); public Gdl.DockItemBehavior get_behavior_flags (); public unowned Gtk.Widget get_child (); public void get_drag_area (Gdk.Rectangle rect); public unowned Gtk.Widget get_grip (); public Gtk.Orientation get_orientation (); public unowned Gtk.Widget get_tablabel (); public void hide_grip (); public void hide_item (); public void iconify_item (); public bool is_closed (); public bool is_iconified (); public bool is_placeholder (); public void @lock (); public void notify_deselected (); public void notify_selected (); public bool or_child_has_focus (); public void preferred_size (Gtk.Requisition req); public void set_behavior_flags (Gdl.DockItemBehavior behavior, bool clear); public void set_child (Gtk.Widget? child); public void set_default_position (Gdl.DockObject reference); [CCode (cname = "gdl_dock_item_class_set_has_grip")] public class void set_has_grip (bool has_grip); public virtual void set_orientation (Gtk.Orientation orientation); public void set_tablabel (Gtk.Widget tablabel); public void show_grip (); public void show_item (); public void unbind (); public void unlock (); public void unset_behavior_flags (Gdl.DockItemBehavior behavior); [CCode (has_construct_function = false, type = "GtkWidget*")] public DockItem.with_pixbuf_icon (string name, string long_name, Gdk.Pixbuf pixbuf_icon, Gdl.DockItemBehavior behavior); [CCode (has_construct_function = false, type = "GtkWidget*")] public DockItem.with_stock (string name, string long_name, string stock_id, Gdl.DockItemBehavior behavior); [NoAccessorMethod] public Gdl.DockItemBehavior behavior { get; set; } [NoAccessorMethod] public bool closed { get; set; } [NoAccessorMethod] public bool iconified { get; set; } [NoAccessorMethod] public bool locked { get; set; } public Gtk.Orientation orientation { get; set construct; } [NoAccessorMethod] public int preferred_height { get; set; } [NoAccessorMethod] public int preferred_width { get; set; } [NoAccessorMethod] public bool resize { get; set; } public signal void deselected (); public virtual signal void dock_drag_begin (); public virtual signal void dock_drag_end (bool cancelled); public virtual signal void dock_drag_motion (Gdk.Device device, int x, int y); public virtual signal void move_focus_child (Gtk.DirectionType direction); public signal void selected (); } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_item_button_image_get_type ()")] public class DockItemButtonImage : Gtk.Widget, Atk.Implementor, Gtk.Buildable { public Gdl.DockItemButtonImageType image_type; [CCode (has_construct_function = false, type = "GtkWidget*")] public DockItemButtonImage (Gdl.DockItemButtonImageType image_type); } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_item_grip_get_type ()")] public class DockItemGrip : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public DockItemGrip (Gdl.DockItem item); public bool has_event (Gdk.Event event); public void hide_handle (); public void set_cursor (bool in_drag); public void set_label (Gtk.Widget label); public void show_handle (); public Gdl.DockItem item { construct; } } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_layout_get_type ()")] public class DockLayout : GLib.Object { [CCode (has_construct_function = false)] public DockLayout (GLib.Object master); public void attach (Gdl.DockMaster master); public void delete_layout (string name); public GLib.List get_layouts (bool include_default); public unowned GLib.Object get_master (); public bool is_dirty (); public bool load_from_file (string filename); public bool load_layout (string? name); public void save_layout (string? name); public bool save_to_file (string filename); public void set_master (GLib.Object master); [NoAccessorMethod] public bool dirty { get; } public GLib.Object master { get; set; } } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_master_get_type ()")] public class DockMaster : GLib.Object { [CCode (has_construct_function = false)] protected DockMaster (); public void add (Gdl.DockObject object); public void @foreach (GLib.Func function); public void foreach_toplevel (bool include_controller, GLib.Func function); public unowned Gdl.DockObject get_controller (); public string get_dock_name (); public unowned Gdl.DockObject get_object (string nick_name); public void remove (Gdl.DockObject object); public void set_controller (Gdl.DockObject new_controller); [NoAccessorMethod] public string default_title { owned get; set; } [NoAccessorMethod] public int locked { get; set; } [NoAccessorMethod] public Gdl.SwitcherStyle switcher_style { get; set; } [NoAccessorMethod] public int tab_pos { get; set; } [NoAccessorMethod] public bool tab_reorderable { get; set; } public virtual signal void layout_changed (); } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_notebook_get_type ()")] public class DockNotebook : Gdl.DockItem, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public DockNotebook (); [NoAccessorMethod] public int page { get; set; } } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_object_get_type ()")] public class DockObject : Gtk.Container, Atk.Implementor, Gtk.Buildable { public Gdl.DockObjectFlags deprecated_flags; public weak GLib.Object deprecated_master; [CCode (has_construct_function = false)] protected DockObject (); public void bind (GLib.Object master); public virtual bool child_placement (Gdl.DockObject child, Gdl.DockPlacement? placement); public virtual bool dock_request (int x, int y, Gdl.DockRequest request); public void freeze (); public unowned Gdl.DockObject get_controller (); public unowned string get_long_name (); public unowned GLib.Object get_master (); public unowned Gdl.DockObject get_parent_object (); public unowned Gdk.Pixbuf get_pixbuf (); public unowned string get_stock_id (); public unowned Gdl.Dock get_toplevel (); public bool is_automatic (); public bool is_bound (); public bool is_closed (); public bool is_compound (); public bool is_frozen (); public void layout_changed_notify (); public static unowned string nick_from_type (GLib.Type type); public virtual void present (Gdl.DockObject? child); public virtual void reduce (); public virtual bool reorder (Gdl.DockObject child, Gdl.DockPlacement new_position, GLib.Value? other_data); public void set_long_name (string name); public void set_manual (); public void set_pixbuf (Gdk.Pixbuf? icon); public void set_stock_id (string stock_id); public static GLib.Type set_type_for_nick (string nick, GLib.Type type); public void thaw (); public static GLib.Type type_from_nick (string nick); public void unbind (); public string long_name { get; set construct; } [NoAccessorMethod] public Gdl.DockMaster master { owned get; set construct; } public string name { get; construct; } [NoAccessorMethod] public void* pixbuf_icon { get; set; } public string stock_id { get; set construct; } [HasEmitter] public virtual signal void detach (bool recursive); [HasEmitter] public virtual signal void dock (Gdl.DockObject requestor, Gdl.DockPlacement position, GLib.Value other_data); } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_paned_get_type ()")] public class DockPaned : Gdl.DockItem, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public DockPaned (Gtk.Orientation orientation); [NoAccessorMethod] public uint position { get; set; } } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_param_get_type ()")] public class DockParam { [CCode (has_construct_function = false)] protected DockParam (); } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_placeholder_get_type ()")] public class DockPlaceholder : Gdl.DockObject, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public DockPlaceholder (string name, Gdl.DockObject object, Gdl.DockPlacement position, bool sticky); public void attach (Gdl.DockObject object); [NoAccessorMethod] public bool floating { get; construct; } [NoAccessorMethod] public int floatx { get; construct; } [NoAccessorMethod] public int floaty { get; construct; } [NoAccessorMethod] public int height { get; set construct; } [NoAccessorMethod] public Gdl.DockObject host { owned get; set; } [NoAccessorMethod] public Gdl.DockPlacement next_placement { get; set; } [NoAccessorMethod] public bool sticky { get; construct; } [NoAccessorMethod] public int width { get; set construct; } } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_dock_tablabel_get_type ()")] public class DockTablabel : Gtk.Bin, Atk.Implementor, Gtk.Buildable { public bool active; public uint drag_handle_size; public Gdk.EventButton drag_start_event; public weak Gdk.Window event_window; public bool pre_drag; [CCode (has_construct_function = false, type = "GtkWidget*")] [Deprecated (since = "3.6")] public DockTablabel (Gdl.DockItem item); public void activate (); public void deactivate (); [NoAccessorMethod] public Gdl.DockItem item { owned get; set; } public virtual signal void button_pressed_handle (Gdk.Event event); } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_preview_window_get_type ()")] public class PreviewWindow : Gtk.Window, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public PreviewWindow (); public void update (Gdk.Rectangle rect); } [CCode (cheader_filename = "gdl/gdl.h", type_id = "gdl_switcher_get_type ()")] public class Switcher : Gtk.Notebook, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Switcher (); public int insert_page (Gtk.Widget page, Gtk.Widget tab_widget, string label, string tooltips, string stock_id, Gdk.Pixbuf pixbuf_icon, int position); [NoAccessorMethod] public Gdl.SwitcherStyle switcher_style { get; set; } [NoAccessorMethod] public int tab_pos { get; set; } [NoAccessorMethod] public bool tab_reorderable { get; set; } } [CCode (cheader_filename = "gdl/gdl.h", has_type_id = false)] public struct DockRequest { public weak Gdl.DockObject applicant; public weak Gdl.DockObject target; public Gdl.DockPlacement position; public Cairo.RectangleInt rect; public GLib.Value extra; } [CCode (cheader_filename = "gdl/gdl.h", cprefix = "GDL_DOCK_BAR_", type_id = "gdl_dock_bar_style_get_type ()")] public enum DockBarStyle { ICONS, TEXT, BOTH, AUTO } [CCode (cheader_filename = "gdl/gdl.h", cprefix = "GDL_DOCK_ITEM_BEH_", type_id = "gdl_dock_item_behavior_get_type ()")] [Flags] public enum DockItemBehavior { NORMAL, NEVER_FLOATING, NEVER_VERTICAL, NEVER_HORIZONTAL, LOCKED, CANT_DOCK_TOP, CANT_DOCK_BOTTOM, CANT_DOCK_LEFT, CANT_DOCK_RIGHT, CANT_DOCK_CENTER, CANT_CLOSE, CANT_ICONIFY, NO_GRIP } [CCode (cheader_filename = "gdl/gdl.h", cprefix = "GDL_DOCK_ITEM_BUTTON_IMAGE_", has_type_id = false)] public enum DockItemButtonImageType { CLOSE, ICONIFY } [CCode (cheader_filename = "gdl/gdl.h", cprefix = "GDL_DOCK_", type_id = "gdl_dock_item_flags_get_type ()")] [Deprecated (since = "3.6")] [Flags] public enum DockItemFlags { IN_DRAG, IN_PREDRAG, ICONIFIED, USER_ACTION } [CCode (cheader_filename = "gdl/gdl.h", cprefix = "GDL_DOCK_", type_id = "gdl_dock_object_flags_get_type ()")] [Flags] public enum DockObjectFlags { AUTOMATIC, ATTACHED, IN_REFLOW, IN_DETACH } [CCode (cheader_filename = "gdl/gdl.h", cprefix = "GDL_DOCK_PARAM_", type_id = "gdl_dock_param_flags_get_type ()")] [Flags] public enum DockParamFlags { EXPORT, AFTER } [CCode (cheader_filename = "gdl/gdl.h", cprefix = "GDL_DOCK_", type_id = "gdl_dock_placement_get_type ()")] public enum DockPlacement { NONE, TOP, BOTTOM, RIGHT, LEFT, CENTER, FLOATING } [CCode (cheader_filename = "gdl/gdl.h", cprefix = "GDL_SWITCHER_STYLE_", type_id = "gdl_switcher_style_get_type ()")] public enum SwitcherStyle { TEXT, ICON, BOTH, TOOLBAR, TABS, NONE } [CCode (cheader_filename = "gdl/gdl.h", cname = "GDL_DOCK_MASTER_PROPERTY")] public const string DOCK_MASTER_PROPERTY; [CCode (cheader_filename = "gdl/gdl.h", cname = "GDL_DOCK_NAME_PROPERTY")] public const string DOCK_NAME_PROPERTY; [CCode (cheader_filename = "gdl/gdl.h", cname = "GDL_DOCK_OBJECT_FLAGS_SHIFT")] [Deprecated (since = "3.6")] public const int DOCK_OBJECT_FLAGS_SHIFT; [CCode (cheader_filename = "gdl/gdl.h")] public static void marshal_VOID__OBJECT_ENUM_BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data); [CCode (cheader_filename = "gdl/gdl.h")] public static void marshal_VOID__OBJECT_INT_INT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data); [CCode (cheader_filename = "gdl/gdl.h")] public static void marshal_VOID__UINT_UINT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data); } ================================================ FILE: extravapi/gtk+-3.0/gtk+-3.0.deps ================================================ gio-2.0 atk cairo gdk-pixbuf-2.0 gdk-3.0 pango x11 ================================================ FILE: extravapi/gtk+-3.0/gtk+-3.0.vapi ================================================ /* gtk+-3.0.vapi generated by vapigen, do not modify. */ [CCode (gir_namespace = "Gtk", gir_version = "3.0")] namespace Gtk { [Deprecated (since = "3.10")] namespace Stock { [CCode (cheader_filename = "gtk/gtk.h")] public const string ABOUT; [CCode (cheader_filename = "gtk/gtk.h")] public const string ADD; [CCode (cheader_filename = "gtk/gtk.h")] public const string APPLY; [CCode (cheader_filename = "gtk/gtk.h")] public const string BOLD; [CCode (cheader_filename = "gtk/gtk.h")] public const string CANCEL; [CCode (cheader_filename = "gtk/gtk.h")] public const string CAPS_LOCK_WARNING; [CCode (cheader_filename = "gtk/gtk.h")] public const string CDROM; [CCode (cheader_filename = "gtk/gtk.h")] public const string CLEAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string CLOSE; [CCode (cheader_filename = "gtk/gtk.h")] public const string COLOR_PICKER; [CCode (cheader_filename = "gtk/gtk.h")] public const string CONNECT; [CCode (cheader_filename = "gtk/gtk.h")] public const string CONVERT; [CCode (cheader_filename = "gtk/gtk.h")] public const string COPY; [CCode (cheader_filename = "gtk/gtk.h")] public const string CUT; [CCode (cheader_filename = "gtk/gtk.h")] public const string DELETE; [CCode (cheader_filename = "gtk/gtk.h")] public const string DIALOG_AUTHENTICATION; [CCode (cheader_filename = "gtk/gtk.h")] public const string DIALOG_ERROR; [CCode (cheader_filename = "gtk/gtk.h")] public const string DIALOG_INFO; [CCode (cheader_filename = "gtk/gtk.h")] public const string DIALOG_QUESTION; [CCode (cheader_filename = "gtk/gtk.h")] public const string DIALOG_WARNING; [CCode (cheader_filename = "gtk/gtk.h")] public const string DIRECTORY; [CCode (cheader_filename = "gtk/gtk.h")] public const string DISCARD; [CCode (cheader_filename = "gtk/gtk.h")] public const string DISCONNECT; [CCode (cheader_filename = "gtk/gtk.h")] public const string DND; [CCode (cheader_filename = "gtk/gtk.h")] public const string DND_MULTIPLE; [CCode (cheader_filename = "gtk/gtk.h")] public const string EDIT; [CCode (cheader_filename = "gtk/gtk.h")] public const string EXECUTE; [CCode (cheader_filename = "gtk/gtk.h")] public const string FILE; [CCode (cheader_filename = "gtk/gtk.h")] public const string FIND; [CCode (cheader_filename = "gtk/gtk.h")] public const string FIND_AND_REPLACE; [CCode (cheader_filename = "gtk/gtk.h")] public const string FLOPPY; [CCode (cheader_filename = "gtk/gtk.h")] public const string FULLSCREEN; [CCode (cheader_filename = "gtk/gtk.h")] public const string GOTO_BOTTOM; [CCode (cheader_filename = "gtk/gtk.h")] public const string GOTO_FIRST; [CCode (cheader_filename = "gtk/gtk.h")] public const string GOTO_LAST; [CCode (cheader_filename = "gtk/gtk.h")] public const string GOTO_TOP; [CCode (cheader_filename = "gtk/gtk.h")] public const string GO_BACK; [CCode (cheader_filename = "gtk/gtk.h")] public const string GO_DOWN; [CCode (cheader_filename = "gtk/gtk.h")] public const string GO_FORWARD; [CCode (cheader_filename = "gtk/gtk.h")] public const string GO_UP; [CCode (cheader_filename = "gtk/gtk.h")] public const string HARDDISK; [CCode (cheader_filename = "gtk/gtk.h")] public const string HELP; [CCode (cheader_filename = "gtk/gtk.h")] public const string HOME; [CCode (cheader_filename = "gtk/gtk.h")] public const string INDENT; [CCode (cheader_filename = "gtk/gtk.h")] public const string INDEX; [CCode (cheader_filename = "gtk/gtk.h")] public const string INFO; [CCode (cheader_filename = "gtk/gtk.h")] public const string ITALIC; [CCode (cheader_filename = "gtk/gtk.h")] public const string JUMP_TO; [CCode (cheader_filename = "gtk/gtk.h")] public const string JUSTIFY_CENTER; [CCode (cheader_filename = "gtk/gtk.h")] public const string JUSTIFY_FILL; [CCode (cheader_filename = "gtk/gtk.h")] public const string JUSTIFY_LEFT; [CCode (cheader_filename = "gtk/gtk.h")] public const string JUSTIFY_RIGHT; [CCode (cheader_filename = "gtk/gtk.h")] public const string LEAVE_FULLSCREEN; [CCode (cheader_filename = "gtk/gtk.h")] public const string MEDIA_FORWARD; [CCode (cheader_filename = "gtk/gtk.h")] public const string MEDIA_NEXT; [CCode (cheader_filename = "gtk/gtk.h")] public const string MEDIA_PAUSE; [CCode (cheader_filename = "gtk/gtk.h")] public const string MEDIA_PLAY; [CCode (cheader_filename = "gtk/gtk.h")] public const string MEDIA_PREVIOUS; [CCode (cheader_filename = "gtk/gtk.h")] public const string MEDIA_RECORD; [CCode (cheader_filename = "gtk/gtk.h")] public const string MEDIA_REWIND; [CCode (cheader_filename = "gtk/gtk.h")] public const string MEDIA_STOP; [CCode (cheader_filename = "gtk/gtk.h")] public const string MISSING_IMAGE; [CCode (cheader_filename = "gtk/gtk.h")] public const string NETWORK; [CCode (cheader_filename = "gtk/gtk.h")] public const string NEW; [CCode (cheader_filename = "gtk/gtk.h")] public const string NO; [CCode (cheader_filename = "gtk/gtk.h")] public const string OK; [CCode (cheader_filename = "gtk/gtk.h")] public const string OPEN; [CCode (cheader_filename = "gtk/gtk.h")] public const string ORIENTATION_LANDSCAPE; [CCode (cheader_filename = "gtk/gtk.h")] public const string ORIENTATION_PORTRAIT; [CCode (cheader_filename = "gtk/gtk.h")] public const string ORIENTATION_REVERSE_LANDSCAPE; [CCode (cheader_filename = "gtk/gtk.h")] public const string ORIENTATION_REVERSE_PORTRAIT; [CCode (cheader_filename = "gtk/gtk.h")] public const string PAGE_SETUP; [CCode (cheader_filename = "gtk/gtk.h")] public const string PASTE; [CCode (cheader_filename = "gtk/gtk.h")] public const string PREFERENCES; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_ERROR; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_PAUSED; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_PREVIEW; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_REPORT; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_WARNING; [CCode (cheader_filename = "gtk/gtk.h")] public const string PROPERTIES; [CCode (cheader_filename = "gtk/gtk.h")] public const string QUIT; [CCode (cheader_filename = "gtk/gtk.h")] public const string REDO; [CCode (cheader_filename = "gtk/gtk.h")] public const string REFRESH; [CCode (cheader_filename = "gtk/gtk.h")] public const string REMOVE; [CCode (cheader_filename = "gtk/gtk.h")] public const string REVERT_TO_SAVED; [CCode (cheader_filename = "gtk/gtk.h")] public const string SAVE; [CCode (cheader_filename = "gtk/gtk.h")] public const string SAVE_AS; [CCode (cheader_filename = "gtk/gtk.h")] public const string SELECT_ALL; [CCode (cheader_filename = "gtk/gtk.h")] public const string SELECT_COLOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string SELECT_FONT; [CCode (cheader_filename = "gtk/gtk.h")] public const string SORT_ASCENDING; [CCode (cheader_filename = "gtk/gtk.h")] public const string SORT_DESCENDING; [CCode (cheader_filename = "gtk/gtk.h")] public const string SPELL_CHECK; [CCode (cheader_filename = "gtk/gtk.h")] public const string STOP; [CCode (cheader_filename = "gtk/gtk.h")] public const string STRIKETHROUGH; [CCode (cheader_filename = "gtk/gtk.h")] public const string UNDELETE; [CCode (cheader_filename = "gtk/gtk.h")] public const string UNDERLINE; [CCode (cheader_filename = "gtk/gtk.h")] public const string UNDO; [CCode (cheader_filename = "gtk/gtk.h")] public const string UNINDENT; [CCode (cheader_filename = "gtk/gtk.h")] public const string YES; [CCode (cheader_filename = "gtk/gtk.h")] public const string ZOOM_100; [CCode (cheader_filename = "gtk/gtk.h")] public const string ZOOM_FIT; [CCode (cheader_filename = "gtk/gtk.h")] public const string ZOOM_IN; [CCode (cheader_filename = "gtk/gtk.h")] public const string ZOOM_OUT; [CCode (cheader_filename = "gtk/gtk.h")] public static void add (Gtk.StockItem[] items); [CCode (cheader_filename = "gtk/gtk.h")] public static void add_static (Gtk.StockItem[] items); [CCode (cheader_filename = "gtk/gtk.h")] public static GLib.SList list_ids (); [CCode (cheader_filename = "gtk/gtk.h")] public static bool lookup (string stock_id, out Gtk.StockItem item); } [CCode (cheader_filename = "gtk/gtk.h")] public class AboutDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public AboutDialog (); public void add_credit_section (string section_name, string people); public unowned string get_artists (); public unowned string get_authors (); public unowned string get_comments (); public unowned string get_copyright (); public unowned string get_documenters (); public unowned string get_license (); public Gtk.License get_license_type (); public unowned Gdk.Pixbuf get_logo (); public unowned string get_logo_icon_name (); public unowned string get_program_name (); public unowned string get_translator_credits (); public unowned string get_version (); public unowned string get_website (); public unowned string get_website_label (); public bool get_wrap_license (); public void set_artists ([CCode (array_length = false)] string[] artists); public void set_authors ([CCode (array_length = false)] string[] authors); public void set_comments (string comments); public void set_copyright (string copyright); public void set_documenters ([CCode (array_length = false)] string[] documenters); public void set_license (string license); public void set_license_type (Gtk.License license_type); public void set_logo (Gdk.Pixbuf logo); public void set_logo_icon_name (string icon_name); public void set_program_name (string name); public void set_translator_credits (string translator_credits); public void set_version (string version); public void set_website (string website); public void set_website_label (string website_label); public void set_wrap_license (bool wrap_license); [CCode (array_length = false, array_null_terminated = true)] public string[] artists { get; set; } [CCode (array_length = false, array_null_terminated = true)] public string[] authors { get; set; } public string comments { get; set; } public string copyright { get; set; } [CCode (array_length = false, array_null_terminated = true)] public string[] documenters { get; set; } public string license { get; set; } public Gtk.License license_type { get; set; } public Gdk.Pixbuf logo { get; set; } public string logo_icon_name { get; set; } public string program_name { get; set; } public string translator_credits { get; set; } public string version { get; set; } public string website { get; set; } public string website_label { get; set; } public bool wrap_license { get; set; } public virtual signal bool activate_link (string uri); } [CCode (cheader_filename = "gtk/gtk.h")] public class AccelGroup : GLib.Object { [CCode (has_construct_function = false)] public AccelGroup (); public bool activate (GLib.Quark accel_quark, GLib.Object acceleratable, uint accel_key, Gdk.ModifierType accel_mods); public void connect (uint accel_key, Gdk.ModifierType accel_mods, Gtk.AccelFlags accel_flags, [CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate closure); public void connect_by_path (string accel_path, [CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate closure); public bool disconnect (GLib.Closure closure); public bool disconnect_key (uint accel_key, Gdk.ModifierType accel_mods); public Gtk.AccelKey* find (Gtk.AccelGroupFindFunc find_func); public static unowned Gtk.AccelGroup from_accel_closure (GLib.Closure closure); public bool get_is_locked (); public Gdk.ModifierType get_modifier_mask (); public void @lock (); public unowned Gtk.AccelGroupEntry query (uint accel_key, Gdk.ModifierType accel_mods, uint n_entries); public void unlock (); public bool is_locked { get; } public Gdk.ModifierType modifier_mask { get; } public virtual signal bool accel_activate (GLib.Object p0, uint p1, Gdk.ModifierType p2); public virtual signal void accel_changed (uint keyval, Gdk.ModifierType modifier, GLib.Closure accel_closure); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class AccelGroupEntry { public GLib.Quark accel_path_quark; public weak GLib.Closure closure; public Gtk.AccelKey key; } [CCode (cheader_filename = "gtk/gtk.h")] public class AccelLabel : Gtk.Label, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public AccelLabel (string str); public unowned Gtk.Widget get_accel_widget (); public uint get_accel_width (); public bool refetch (); public void set_accel (uint accelerator_key, Gdk.ModifierType accelerator_mods); public void set_accel_closure ([CCode (type = "GClosure*")] owned Gtk.AccelGroupActivate accel_closure); public void set_accel_widget (Gtk.Widget accel_widget); [NoAccessorMethod] public GLib.Closure accel_closure { owned get; set; } public Gtk.Widget accel_widget { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class AccelMap : GLib.Object { [CCode (has_construct_function = false)] protected AccelMap (); public static void add_entry (string accel_path, uint accel_key, Gdk.ModifierType accel_mods); public static void add_filter (string filter_pattern); public static bool change_entry (string accel_path, uint accel_key, Gdk.ModifierType accel_mods, bool replace); public static void @foreach (void* data, Gtk.AccelMapForeach foreach_func); public static void foreach_unfiltered (void* data, Gtk.AccelMapForeach foreach_func); public static unowned Gtk.AccelMap @get (); public static void load (string file_name); public static void load_fd (int fd); public static void load_scanner (GLib.Scanner scanner); public static void lock_path (string accel_path); public static bool lookup_entry (string accel_path, out Gtk.AccelKey key); public static void save (string file_name); public static void save_fd (int fd); public static void unlock_path (string accel_path); public virtual signal void changed (string p0, uint p1, Gdk.ModifierType p2); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class AccelMapClass { } [CCode (cheader_filename = "gtk/gtk.h")] public class Accessible : Atk.Object { [CCode (has_construct_function = false)] protected Accessible (); [Deprecated (replacement = "Accessible.set_widget", since = "3.4")] public virtual void connect_widget_destroyed (); public unowned Gtk.Widget get_widget (); public void set_widget (Gtk.Widget widget); [NoWrapper] public virtual void widget_set (); [NoWrapper] public virtual void widget_unset (); public Gtk.Widget widget { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "GLib.Action", since = "3.10")] public class Action : GLib.Object, Gtk.Buildable { [CCode (has_construct_function = false)] public Action (string name, string? label, string? tooltip, string? stock_id); public void block_activate (); public void connect_accelerator (); [NoWrapper] public virtual void connect_proxy (Gtk.Widget proxy); public unowned Gtk.Widget create_icon (Gtk.IconSize icon_size); public virtual unowned Gtk.Widget create_menu (); public virtual unowned Gtk.Widget create_menu_item (); public virtual unowned Gtk.Widget create_tool_item (); public void disconnect_accelerator (); [NoWrapper] public virtual void disconnect_proxy (Gtk.Widget proxy); public unowned GLib.Closure get_accel_closure (); public unowned string get_accel_path (); public bool get_always_show_image (); public unowned GLib.Icon get_gicon (); public unowned string get_icon_name (); public bool get_is_important (); public unowned string get_label (); public unowned GLib.SList get_proxies (); public bool get_sensitive (); public unowned string get_short_label (); public unowned string get_stock_id (); public unowned string get_tooltip (); public bool get_visible (); public bool get_visible_horizontal (); public bool get_visible_vertical (); public bool is_sensitive (); public bool is_visible (); public void set_accel_group (Gtk.AccelGroup accel_group); public void set_accel_path (string accel_path); public void set_always_show_image (bool always_show); public void set_gicon (GLib.Icon icon); public void set_icon_name (string icon_name); public void set_is_important (bool is_important); public void set_label (string label); public void set_sensitive (bool sensitive); public void set_short_label (string short_label); public void set_stock_id (string stock_id); public void set_tooltip (string tooltip); public void set_visible (bool visible); public void set_visible_horizontal (bool visible_horizontal); public void set_visible_vertical (bool visible_vertical); public void unblock_activate (); [NoAccessorMethod] public Gtk.ActionGroup action_group { owned get; set; } public bool always_show_image { get; set construct; } public GLib.Icon gicon { get; set; } [NoAccessorMethod] public bool hide_if_empty { get; set; } public string icon_name { get; set; } public bool is_important { get; set; } public string label { get; set; } public string name { get; construct; } public bool sensitive { get; set; } public string short_label { get; set; } public string stock_id { get; set; } public string tooltip { get; set; } public bool visible { get; set; } public bool visible_horizontal { get; set; } [NoAccessorMethod] public bool visible_overflown { get; set; } public bool visible_vertical { get; set; } [HasEmitter] public virtual signal void activate (); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.10")] public class ActionGroup : GLib.Object, Gtk.Buildable { [CCode (has_construct_function = false)] public ActionGroup (string name); public void add_action (Gtk.Action action); public void add_action_with_accel (Gtk.Action action, string? accelerator); public void add_actions (Gtk.ActionEntry[] entries, void* user_data); public void add_actions_full (Gtk.ActionEntry[] entries, void* user_data, GLib.DestroyNotify? destroy); public void add_radio_actions (Gtk.RadioActionEntry[] entries, int value, [CCode (type = "GCallback")] Gtk.RadioActionCallback on_change); public void add_radio_actions_full (Gtk.RadioActionEntry[] entries, int value, [CCode (type = "GCallback")] Gtk.RadioActionCallback on_change, GLib.DestroyNotify? destroy); public void add_toggle_actions (Gtk.ToggleActionEntry[] entries, void* user_data); public void add_toggle_actions_full (Gtk.ToggleActionEntry[] entries, void* user_data, GLib.DestroyNotify? destroy); public unowned Gtk.AccelGroup get_accel_group (); public virtual unowned Gtk.Action get_action (string action_name); public bool get_sensitive (); public bool get_visible (); public GLib.List list_actions (); public void remove_action (Gtk.Action action); public void set_accel_group (Gtk.AccelGroup accel_group); public void set_sensitive (bool sensitive); public void set_translate_func (owned Gtk.TranslateFunc func); public void set_translation_domain (string domain); public void set_visible (bool visible); public unowned string translate_string (string str); public Gtk.AccelGroup accel_group { get; set; } public string name { get; construct; } public bool sensitive { get; set; } public bool visible { get; set; } public virtual signal void connect_proxy (Gtk.Action p0, Gtk.Widget p1); public virtual signal void disconnect_proxy (Gtk.Action p0, Gtk.Widget p1); public virtual signal void post_activate (Gtk.Action p0); public virtual signal void pre_activate (Gtk.Action p0); } [CCode (cheader_filename = "gtk/gtk.h")] public class Adjustment : GLib.InitiallyUnowned { [CCode (has_construct_function = false)] public Adjustment (double value, double lower, double upper, double step_increment, double page_increment, double page_size); public void clamp_page (double lower, double upper); public void configure (double value, double lower, double upper, double step_increment, double page_increment, double page_size); public double get_lower (); public double get_minimum_increment (); public double get_page_increment (); public double get_page_size (); public double get_step_increment (); public double get_upper (); public double get_value (); public void set_lower (double lower); public void set_page_increment (double page_increment); public void set_page_size (double page_size); public void set_step_increment (double step_increment); public void set_upper (double upper); public void set_value (double value); public double lower { get; set; } public double page_increment { get; set; } public double page_size { get; set; } public double step_increment { get; set; } public double upper { get; set; } public double value { get; set; } [HasEmitter] public virtual signal void changed (); [HasEmitter] public virtual signal void value_changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Alignment : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Alignment (float xalign, float yalign, float xscale, float yscale); public void get_padding (out uint padding_top, out uint padding_bottom, out uint padding_left, out uint padding_right); public void @set (float xalign, float yalign, float xscale, float yscale); public void set_padding (uint padding_top, uint padding_bottom, uint padding_left, uint padding_right); [NoAccessorMethod] public uint bottom_padding { get; set; } [NoAccessorMethod] public uint left_padding { get; set; } [NoAccessorMethod] public uint right_padding { get; set; } [NoAccessorMethod] public uint top_padding { get; set; } [NoAccessorMethod] public float xalign { get; set; } [NoAccessorMethod] public float xscale { get; set; } [NoAccessorMethod] public float yalign { get; set; } [NoAccessorMethod] public float yscale { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class AppChooserButton : Gtk.ComboBox, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.CellEditable, Gtk.AppChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public AppChooserButton (string content_type); public void append_custom_item (string name, string label, GLib.Icon icon); public void append_separator (); public unowned string get_heading (); public bool get_show_default_item (); public bool get_show_dialog_item (); public void set_active_custom_item (string name); public void set_heading (string heading); public void set_show_default_item (bool setting); public void set_show_dialog_item (bool setting); public string heading { get; set; } public bool show_default_item { get; set construct; } public bool show_dialog_item { get; set construct; } public virtual signal void custom_item_activated (string item_name); } [CCode (cheader_filename = "gtk/gtk.h")] public class AppChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.AppChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public AppChooserDialog (Gtk.Window parent, Gtk.DialogFlags flags, GLib.File file); [CCode (has_construct_function = false, type = "GtkWidget*")] public AppChooserDialog.for_content_type (Gtk.Window parent, Gtk.DialogFlags flags, string content_type); public unowned string get_heading (); public unowned Gtk.Widget get_widget (); public void set_heading (string heading); [NoAccessorMethod] public GLib.File gfile { owned get; construct; } public string heading { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class AppChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.AppChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public AppChooserWidget (string content_type); public unowned string get_default_text (); public bool get_show_all (); public bool get_show_default (); public bool get_show_fallback (); public bool get_show_other (); public bool get_show_recommended (); public void set_default_text (string text); public void set_show_all (bool setting); public void set_show_default (bool setting); public void set_show_fallback (bool setting); public void set_show_other (bool setting); public void set_show_recommended (bool setting); public string default_text { get; set; } public bool show_all { get; set construct; } public bool show_default { get; set construct; } public bool show_fallback { get; set construct; } public bool show_other { get; set construct; } public bool show_recommended { get; set construct; } public virtual signal void application_activated (GLib.AppInfo app_info); public virtual signal void application_selected (GLib.AppInfo app_info); public virtual signal void populate_popup (Gtk.Menu menu, GLib.AppInfo app_info); } [CCode (cheader_filename = "gtk/gtk.h")] public class Application : GLib.Application, GLib.ActionGroup, GLib.ActionMap { [CCode (has_construct_function = false)] public Application (string application_id, GLib.ApplicationFlags flags); public void add_accelerator (string accelerator, string action_name, GLib.Variant? parameter); public void add_window (Gtk.Window window); public unowned Gtk.Window get_active_window (); public unowned GLib.MenuModel get_app_menu (); public unowned GLib.MenuModel get_menubar (); public unowned Gtk.Window get_window_by_id (uint id); public unowned GLib.List get_windows (); public uint inhibit (Gtk.Window? window, Gtk.ApplicationInhibitFlags flags, string? reason); public bool is_inhibited (Gtk.ApplicationInhibitFlags flags); public void remove_accelerator (string action_name, GLib.Variant? parameter); public void remove_window (Gtk.Window window); public void set_app_menu (GLib.MenuModel app_menu); public void set_menubar (GLib.MenuModel menubar); public void uninhibit (uint cookie); public Gtk.Window active_window { get; } public GLib.MenuModel app_menu { get; set; } public GLib.MenuModel menubar { get; set; } [NoAccessorMethod] public bool register_session { get; set; } public virtual signal void window_added (Gtk.Window window); public virtual signal void window_removed (Gtk.Window window); } [CCode (cheader_filename = "gtk/gtk.h")] public class ApplicationWindow : Gtk.Window, Atk.Implementor, Gtk.Buildable, GLib.ActionGroup, GLib.ActionMap { [CCode (has_construct_function = false, type = "GtkWidget*")] public ApplicationWindow (Gtk.Application application); public uint get_id (); public bool get_show_menubar (); public void set_show_menubar (bool show_menubar); public bool show_menubar { get; set construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Arrow : Gtk.Misc, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Arrow (Gtk.ArrowType arrow_type, Gtk.ShadowType shadow_type); public void @set (Gtk.ArrowType arrow_type, Gtk.ShadowType shadow_type); [NoAccessorMethod] public Gtk.ArrowType arrow_type { get; set; } [NoAccessorMethod] public Gtk.ShadowType shadow_type { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class ArrowAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Image { [CCode (has_construct_function = false)] protected ArrowAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class AspectFrame : Gtk.Frame, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public AspectFrame (string? label, float xalign, float yalign, float ratio, bool obey_child); public void @set (float xalign, float yalign, float ratio, bool obey_child); [NoAccessorMethod] public bool obey_child { get; set; } [NoAccessorMethod] public float ratio { get; set; } [NoAccessorMethod] public float xalign { get; set; } [NoAccessorMethod] public float yalign { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Assistant : Gtk.Window, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Assistant (); public void add_action_widget (Gtk.Widget child); public int append_page (Gtk.Widget page); public void commit (); public int get_current_page (); public int get_n_pages (); public unowned Gtk.Widget get_nth_page (int page_num); public bool get_page_complete (Gtk.Widget page); [Deprecated (since = "3.2")] public unowned Gdk.Pixbuf get_page_header_image (Gtk.Widget page); [Deprecated (since = "3.2")] public unowned Gdk.Pixbuf get_page_side_image (Gtk.Widget page); public unowned string get_page_title (Gtk.Widget page); public Gtk.AssistantPageType get_page_type (Gtk.Widget page); public int insert_page (Gtk.Widget page, int position); public void next_page (); public int prepend_page (Gtk.Widget page); public void previous_page (); public void remove_action_widget (Gtk.Widget child); public void remove_page (int page_num); public void set_current_page (int page_num); public void set_forward_page_func (owned Gtk.AssistantPageFunc page_func); public void set_page_complete (Gtk.Widget page, bool complete); [Deprecated (since = "3.2")] public void set_page_header_image (Gtk.Widget page, Gdk.Pixbuf pixbuf); [Deprecated (since = "3.2")] public void set_page_side_image (Gtk.Widget page, Gdk.Pixbuf pixbuf); public void set_page_title (Gtk.Widget page, string title); public void set_page_type (Gtk.Widget page, Gtk.AssistantPageType type); public void update_buttons_state (); public virtual signal void apply (); public virtual signal void cancel (); public virtual signal void close (); public virtual signal void prepare (Gtk.Widget page); } [CCode (cheader_filename = "gtk/gtk.h")] public class Bin : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false)] protected Bin (); public unowned Gtk.Widget get_child (); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class BindingEntry { public weak Gtk.BindingSet binding_set; public uint destroyed; public weak Gtk.BindingEntry hash_next; public uint in_emission; public uint keyval; public uint marks_unbound; public Gdk.ModifierType modifiers; public weak Gtk.BindingEntry set_next; public weak Gtk.BindingSignal signals; public static void add_signal (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, uint n_args, ...); public static GLib.TokenType add_signal_from_string (Gtk.BindingSet binding_set, string signal_desc); public static void add_signall (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, GLib.SList binding_args); public static void remove (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers); public static void skip (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class BindingSet { public weak Gtk.BindingEntry current; public weak Gtk.BindingEntry entries; public uint parsed; public int priority; public weak string set_name; [CCode (has_construct_function = false)] public BindingSet (string set_name); public bool activate (uint keyval, Gdk.ModifierType modifiers, GLib.Object object); [Deprecated (since = "3.0")] public void add_path (Gtk.PathType path_type, string path_pattern, Gtk.PathPriorityType priority); public static unowned Gtk.BindingSet by_class (void* object_class); public static unowned Gtk.BindingSet find (string set_name); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class BindingSignal { [CCode (array_length_cname = "n_args")] public weak Gtk.BindingArg[] args; public uint n_args; public weak Gtk.BindingSignal next; public weak string signal_name; } [CCode (cheader_filename = "gtk/gtk.h")] public class BooleanCellAccessible : Gtk.RendererCellAccessible, Atk.Action, Atk.Component { [CCode (has_construct_function = false)] protected BooleanCellAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Box : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Box (Gtk.Orientation orientation, int spacing); public Gtk.BaselinePosition get_baseline_position (); public bool get_homogeneous (); public int get_spacing (); public void pack_end (Gtk.Widget child, bool expand = true, bool fill = true, uint padding = 0); public void pack_start (Gtk.Widget child, bool expand = true, bool fill = true, uint padding = 0); public void query_child_packing (Gtk.Widget child, out bool expand, out bool fill, out uint padding, out Gtk.PackType pack_type); public void reorder_child (Gtk.Widget child, int position); public void set_baseline_position (Gtk.BaselinePosition position); public void set_child_packing (Gtk.Widget child, bool expand, bool fill, uint padding, Gtk.PackType pack_type); public void set_homogeneous (bool homogeneous); public void set_spacing (int spacing); public Gtk.BaselinePosition baseline_position { get; set; } public bool homogeneous { get; set; } public int spacing { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Builder : GLib.Object { [CCode (has_construct_function = false)] public Builder (); public void add_callback_symbol (string callback_name, GLib.Callback callback_symbol); public void add_callback_symbols (string first_callback_name, ...); public uint add_from_file (string filename) throws GLib.Error; public uint add_from_resource (string resource_path) throws GLib.Error; public uint add_from_string (string buffer, size_t length) throws GLib.Error; public uint add_objects_from_file (string filename, [CCode (array_length = false)] string[] object_ids) throws GLib.Error; public uint add_objects_from_resource (string resource_path, [CCode (array_length = false)] string[] object_ids) throws GLib.Error; public uint add_objects_from_string (string buffer, size_t length, [CCode (array_length = false)] string[] object_ids) throws GLib.Error; public void connect_signals (void* user_data); public void connect_signals_full (Gtk.BuilderConnectFunc func); public static GLib.Quark error_quark (); public void expose_object (string name, GLib.Object object); [CCode (has_construct_function = false)] public Builder.from_file (string filename); [CCode (has_construct_function = false)] public Builder.from_resource (string resource_path); [CCode (has_construct_function = false)] public Builder.from_string (string str, ssize_t length); public unowned GLib.Object get_object (string name); public GLib.SList get_objects (); public unowned string get_translation_domain (); public virtual GLib.Type get_type_from_name (string type_name); public unowned GLib.Callback lookup_callback_symbol (string callback_name); public void set_translation_domain (string domain); public bool value_from_string (GLib.ParamSpec pspec, string str, GLib.Value value) throws GLib.Error; public bool value_from_string_type (GLib.Type type, string str, GLib.Value value) throws GLib.Error; public string translation_domain { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Button : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Button (); [CCode (has_construct_function = false, type = "GtkWidget*")] public Button.from_icon_name (string icon_name, Gtk.IconSize size); [CCode (has_construct_function = false, type = "GtkWidget*")] public Button.from_stock (string stock_id); public void get_alignment (out float xalign, out float yalign); public bool get_always_show_image (); public unowned Gdk.Window get_event_window (); public bool get_focus_on_click (); public unowned Gtk.Widget get_image (); public Gtk.PositionType get_image_position (); public unowned string get_label (); public Gtk.ReliefStyle get_relief (); public bool get_use_stock (); public bool get_use_underline (); public void set_alignment (float xalign, float yalign); public void set_always_show_image (bool always_show); public void set_focus_on_click (bool focus_on_click); public void set_image (Gtk.Widget image); public void set_image_position (Gtk.PositionType position); public void set_label (string? label); public void set_relief (Gtk.ReliefStyle newstyle); public void set_use_stock (bool use_stock); public void set_use_underline (bool use_underline); [CCode (has_construct_function = false, type = "GtkWidget*")] public Button.with_label (string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public Button.with_mnemonic (string label); public bool always_show_image { get; set construct; } public bool focus_on_click { get; set; } public Gtk.Widget image { get; set; } public Gtk.PositionType image_position { get; set; } public string label { get; set construct; } public Gtk.ReliefStyle relief { get; set; } public bool use_stock { get; set construct; } public bool use_underline { get; set construct; } [NoAccessorMethod] public float xalign { get; set; } [NoAccessorMethod] public float yalign { get; set; } public virtual signal void activate (); [HasEmitter] public virtual signal void clicked (); [Deprecated (replacement = "Gtk.Widget.enter_notify_event", since = "2.8")] [HasEmitter] public virtual signal void enter (); [Deprecated (replacement = "Gtk.Widget.leave_notify_event", since = "2.8")] [HasEmitter] public virtual signal void leave (); [Deprecated (replacement = "Gtk.Widget.button_press_event", since = "2.8")] [HasEmitter] public virtual signal void pressed (); [Deprecated (replacement = "Gtk.Widget.button_release_event", since = "2.8")] [HasEmitter] public virtual signal void released (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ButtonAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Action, Atk.Image { [CCode (has_construct_function = false)] protected ButtonAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ButtonBox : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ButtonBox (Gtk.Orientation orientation); public bool get_child_non_homogeneous (Gtk.Widget child); public bool get_child_secondary (Gtk.Widget child); public Gtk.ButtonBoxStyle get_layout (); public void set_child_non_homogeneous (Gtk.Widget child, bool non_homogeneous); public void set_child_secondary (Gtk.Widget child, bool is_secondary); public void set_layout (Gtk.ButtonBoxStyle layout_style); [NoAccessorMethod] public Gtk.ButtonBoxStyle layout_style { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Calendar : Gtk.Widget, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Calendar (); public void clear_marks (); public void get_date (out uint year, out uint month, out uint day); public bool get_day_is_marked (uint day); public int get_detail_height_rows (); public int get_detail_width_chars (); public Gtk.CalendarDisplayOptions get_display_options (); public void mark_day (uint day); public void select_day (uint day); public void select_month (uint month, uint year); public void set_detail_func (owned Gtk.CalendarDetailFunc func); public void set_detail_height_rows (int rows); public void set_detail_width_chars (int chars); public void set_display_options (Gtk.CalendarDisplayOptions flags); public void unmark_day (uint day); [NoAccessorMethod] public int day { get; set; } public int detail_height_rows { get; set; } public int detail_width_chars { get; set; } [NoAccessorMethod] public int month { get; set; } [NoAccessorMethod] public bool no_month_change { get; set; } [NoAccessorMethod] public bool show_day_names { get; set; } [NoAccessorMethod] public bool show_details { get; set; } [NoAccessorMethod] public bool show_heading { get; set; } [NoAccessorMethod] public bool show_week_numbers { get; set; } [NoAccessorMethod] public int year { get; set; } public virtual signal void day_selected (); public virtual signal void day_selected_double_click (); public virtual signal void month_changed (); public virtual signal void next_month (); public virtual signal void next_year (); public virtual signal void prev_month (); public virtual signal void prev_year (); } [CCode (cheader_filename = "gtk/gtk.h")] public class CellAccessible : Gtk.Accessible, Atk.Action, Atk.Component { [CCode (has_construct_function = false)] protected CellAccessible (); [NoWrapper] public virtual void update_cache (); } [CCode (cheader_filename = "gtk/gtk.h")] public class CellArea : GLib.InitiallyUnowned, Gtk.CellLayout, Gtk.Buildable { [CCode (has_construct_function = false)] protected CellArea (); public virtual bool activate (Gtk.CellAreaContext context, Gtk.Widget widget, Gdk.Rectangle cell_area, Gtk.CellRendererState flags, bool edit_only); public bool activate_cell (Gtk.Widget widget, Gtk.CellRenderer renderer, Gdk.Event event, Gdk.Rectangle cell_area, Gtk.CellRendererState flags); public virtual void add (Gtk.CellRenderer renderer); public void add_focus_sibling (Gtk.CellRenderer renderer, Gtk.CellRenderer sibling); public void add_with_properties (Gtk.CellRenderer renderer, ...); public void attribute_connect (Gtk.CellRenderer renderer, string attribute, int column); public void attribute_disconnect (Gtk.CellRenderer renderer, string attribute); public void cell_get (Gtk.CellRenderer renderer, ...); public void cell_get_property (Gtk.CellRenderer renderer, string property_name, GLib.Value value); public void cell_get_valist (Gtk.CellRenderer renderer, string first_property_name, void* var_args); public void cell_set (Gtk.CellRenderer renderer, ...); public void cell_set_property (Gtk.CellRenderer renderer, string property_name, GLib.Value value); public void cell_set_valist (Gtk.CellRenderer renderer, string first_property_name, void* var_args); public virtual unowned Gtk.CellAreaContext copy_context (Gtk.CellAreaContext context); public virtual unowned Gtk.CellAreaContext create_context (); public virtual int event (Gtk.CellAreaContext context, Gtk.Widget widget, Gdk.Event event, Gdk.Rectangle cell_area, Gtk.CellRendererState flags); [CCode (cname = "gtk_cell_area_class_find_cell_property")] public class unowned GLib.ParamSpec find_cell_property (string property_name); public virtual bool focus (Gtk.DirectionType direction); public virtual void @foreach (Gtk.CellCallback callback); public virtual void foreach_alloc (Gtk.CellAreaContext context, Gtk.Widget widget, Gdk.Rectangle cell_area, Gdk.Rectangle background_area, Gtk.CellAllocCallback callback, void* callback_data); public void get_cell_allocation (Gtk.CellAreaContext context, Gtk.Widget widget, Gtk.CellRenderer renderer, Gdk.Rectangle cell_area, Gdk.Rectangle allocation); public unowned Gtk.CellRenderer get_cell_at_position (Gtk.CellAreaContext context, Gtk.Widget widget, Gdk.Rectangle cell_area, int x, int y, Gdk.Rectangle alloc_area); [NoWrapper] public virtual void get_cell_property (Gtk.CellRenderer renderer, uint property_id, GLib.Value value, GLib.ParamSpec pspec); public unowned string get_current_path_string (); public unowned Gtk.CellEditable get_edit_widget (); public unowned Gtk.CellRenderer get_edited_cell (); public unowned Gtk.CellRenderer get_focus_cell (); public unowned Gtk.CellRenderer get_focus_from_sibling (Gtk.CellRenderer renderer); public unowned GLib.List get_focus_siblings (Gtk.CellRenderer renderer); public virtual void get_preferred_height (Gtk.CellAreaContext context, Gtk.Widget widget, out int minimum_height, out int natural_height); public virtual void get_preferred_height_for_width (Gtk.CellAreaContext context, Gtk.Widget widget, int width, out int minimum_height, out int natural_height); public virtual void get_preferred_width (Gtk.CellAreaContext context, Gtk.Widget widget, out int minimum_width, out int natural_width); public virtual void get_preferred_width_for_height (Gtk.CellAreaContext context, Gtk.Widget widget, int height, out int minimum_width, out int natural_width); public virtual Gtk.SizeRequestMode get_request_mode (); public bool has_renderer (Gtk.CellRenderer renderer); public void inner_cell_area (Gtk.Widget widget, Gdk.Rectangle cell_area, Gdk.Rectangle inner_area); [CCode (cname = "gtk_cell_area_class_install_cell_property")] public class void install_cell_property (uint property_id, GLib.ParamSpec pspec); public virtual bool is_activatable (); public bool is_focus_sibling (Gtk.CellRenderer renderer, Gtk.CellRenderer sibling); [CCode (cname = "gtk_cell_area_class_list_cell_properties")] public class unowned GLib.ParamSpec list_cell_properties (uint n_properties); public virtual void remove (Gtk.CellRenderer renderer); public void remove_focus_sibling (Gtk.CellRenderer renderer, Gtk.CellRenderer sibling); public virtual void render (Gtk.CellAreaContext context, Gtk.Widget widget, Cairo.Context cr, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags, bool paint_focus); public void request_renderer (Gtk.CellRenderer renderer, Gtk.Orientation orientation, Gtk.Widget widget, int for_size, int minimum_size, int natural_size); [NoWrapper] public virtual void set_cell_property (Gtk.CellRenderer renderer, uint property_id, GLib.Value value, GLib.ParamSpec pspec); public void set_focus_cell (Gtk.CellRenderer renderer); public void stop_editing (bool canceled); public Gtk.CellEditable edit_widget { get; } public Gtk.CellRenderer edited_cell { get; } public Gtk.CellRenderer focus_cell { get; set; } public virtual signal void add_editable (Gtk.CellRenderer p0, Gtk.CellEditable p1, Gdk.Rectangle p2, string p3); [HasEmitter] public virtual signal void apply_attributes (Gtk.TreeModel tree_model, Gtk.TreeIter iter, bool is_expander, bool is_expanded); public virtual signal void focus_changed (Gtk.CellRenderer p0, string p1); public virtual signal void remove_editable (Gtk.CellRenderer p0, Gtk.CellEditable p1); } [CCode (cheader_filename = "gtk/gtk.h")] public class CellAreaBox : Gtk.CellArea, Gtk.CellLayout, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkCellArea*")] public CellAreaBox (); public int get_spacing (); public void set_spacing (int spacing); public int spacing { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class CellAreaContext : GLib.Object { [CCode (has_construct_function = false)] protected CellAreaContext (); public virtual void allocate (int width, int height); public void get_allocation (int width, int height); public unowned Gtk.CellArea get_area (); public void get_preferred_height (out int minimum_height, out int natural_height); public virtual void get_preferred_height_for_width (int width, out int minimum_height, out int natural_height); public void get_preferred_width (out int minimum_width, out int natural_width); public virtual void get_preferred_width_for_height (int height, out int minimum_width, out int natural_width); public void push_preferred_height (int minimum_height, int natural_height); public void push_preferred_width (int minimum_width, int natural_width); public virtual void reset (); public Gtk.CellArea area { get; construct; } [NoAccessorMethod] public int minimum_height { get; } [NoAccessorMethod] public int minimum_width { get; } [NoAccessorMethod] public int natural_height { get; } [NoAccessorMethod] public int natural_width { get; } } [CCode (cheader_filename = "gtk/gtk.h")] public abstract class CellRenderer : GLib.InitiallyUnowned { [CCode (has_construct_function = false)] protected CellRenderer (); public virtual bool activate (Gdk.Event event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags); public virtual Gdk.Rectangle get_aligned_area (Gtk.Widget widget, Gtk.CellRendererState flags, Gdk.Rectangle cell_area); public void get_alignment (out float xalign, out float yalign); public void get_fixed_size (out int width, out int height); public void get_padding (out int xpad, out int ypad); public virtual void get_preferred_height (Gtk.Widget widget, out int minimum_size, out int natural_size); public virtual void get_preferred_height_for_width (Gtk.Widget widget, int width, out int minimum_height, out int natural_height); public void get_preferred_size (Gtk.Widget widget, out Gtk.Requisition minimum_size, out Gtk.Requisition natural_size); public virtual void get_preferred_width (Gtk.Widget widget, out int minimum_size, out int natural_size); public virtual void get_preferred_width_for_height (Gtk.Widget widget, int height, out int minimum_width, out int natural_width); public virtual Gtk.SizeRequestMode get_request_mode (); public bool get_sensitive (); [Deprecated (replacement = "get_preferred_size", since = "3.0")] public abstract void get_size (Gtk.Widget widget, Gdk.Rectangle? cell_area, out int x_offset, out int y_offset, out int width, out int height); public Gtk.StateFlags get_state (Gtk.Widget widget, Gtk.CellRendererState cell_state); public bool get_visible (); public bool is_activatable (); public abstract void render (Cairo.Context cr, Gtk.Widget widget, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags); [CCode (cname = "gtk_cell_renderer_class_set_accessible_type")] public class void set_accessible_type (GLib.Type type); public void set_alignment (float xalign, float yalign); public void set_fixed_size (int width, int height); public void set_padding (int xpad, int ypad); public void set_sensitive (bool sensitive); public void set_visible (bool visible); public virtual unowned Gtk.CellEditable start_editing (Gdk.Event event, Gtk.Widget widget, string path, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.CellRendererState flags); public void stop_editing (bool canceled); [NoAccessorMethod] public string cell_background { set; } [Deprecated (replacement = "Gtk.CellRenderer.cell_background_rgba", since = "3.4")] [NoAccessorMethod] public Gdk.Color cell_background_gdk { get; set; } [NoAccessorMethod] public Gdk.RGBA cell_background_rgba { get; set; } [NoAccessorMethod] public bool cell_background_set { get; set; } [NoAccessorMethod] public bool editing { get; } [NoAccessorMethod] public int height { get; set; } [NoAccessorMethod] public bool is_expanded { get; set; } [NoAccessorMethod] public bool is_expander { get; set; } [NoAccessorMethod] public Gtk.CellRendererMode mode { get; set; } public bool sensitive { get; set; } public bool visible { get; set; } [NoAccessorMethod] public int width { get; set; } [NoAccessorMethod] public float xalign { get; set; } [NoAccessorMethod] public uint xpad { get; set; } [NoAccessorMethod] public float yalign { get; set; } [NoAccessorMethod] public uint ypad { get; set; } [HasEmitter] public virtual signal void editing_canceled (); public virtual signal void editing_started (Gtk.CellEditable editable, string path); } [CCode (cheader_filename = "gtk/gtk.h")] public class CellRendererAccel : Gtk.CellRendererText { [CCode (has_construct_function = false, type = "GtkCellRenderer*")] public CellRendererAccel (); [NoAccessorMethod] public uint accel_key { get; set; } [NoAccessorMethod] public Gtk.CellRendererAccelMode accel_mode { get; set; } [NoAccessorMethod] public Gdk.ModifierType accel_mods { get; set; } [NoAccessorMethod] public uint keycode { get; set; } public virtual signal void accel_cleared (string path_string); public virtual signal void accel_edited (string path_string, uint accel_key, Gdk.ModifierType accel_mods, uint hardware_keycode); } [CCode (cheader_filename = "gtk/gtk.h")] public class CellRendererCombo : Gtk.CellRendererText { [CCode (has_construct_function = false, type = "GtkCellRenderer*")] public CellRendererCombo (); [NoAccessorMethod] public bool has_entry { get; set; } [NoAccessorMethod] public Gtk.TreeModel model { owned get; set; } [NoAccessorMethod] public int text_column { get; set; } public virtual signal void changed (string p0, Gtk.TreeIter p1); } [CCode (cheader_filename = "gtk/gtk.h")] public class CellRendererPixbuf : Gtk.CellRenderer { [CCode (has_construct_function = false, type = "GtkCellRenderer*")] public CellRendererPixbuf (); [NoAccessorMethod] public bool follow_state { get; set; } [NoAccessorMethod] public GLib.Icon gicon { owned get; set; } [NoAccessorMethod] public string icon_name { owned get; set; } [NoAccessorMethod] public Gdk.Pixbuf pixbuf { owned get; set; } [NoAccessorMethod] public Gdk.Pixbuf pixbuf_expander_closed { owned get; set; } [NoAccessorMethod] public Gdk.Pixbuf pixbuf_expander_open { owned get; set; } [NoAccessorMethod] public string stock_detail { owned get; set; } [NoAccessorMethod] public string stock_id { owned get; set; } [NoAccessorMethod] public uint stock_size { get; set; } [NoAccessorMethod] public Cairo.Surface surface { owned get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class CellRendererProgress : Gtk.CellRenderer, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkCellRenderer*")] public CellRendererProgress (); [NoAccessorMethod] public bool inverted { get; set; } [NoAccessorMethod] public int pulse { get; set; } [NoAccessorMethod] public string text { owned get; set; } [NoAccessorMethod] public float text_xalign { get; set; } [NoAccessorMethod] public float text_yalign { get; set; } [NoAccessorMethod] public int value { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class CellRendererSpin : Gtk.CellRendererText { [CCode (has_construct_function = false, type = "GtkCellRenderer*")] public CellRendererSpin (); [NoAccessorMethod] public Gtk.Adjustment adjustment { owned get; set; } [NoAccessorMethod] public double climb_rate { get; set; } [NoAccessorMethod] public uint digits { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class CellRendererSpinner : Gtk.CellRenderer { [CCode (has_construct_function = false, type = "GtkCellRenderer*")] public CellRendererSpinner (); [NoAccessorMethod] public bool active { get; set; } [NoAccessorMethod] public uint pulse { get; set; } [NoAccessorMethod] public Gtk.IconSize size { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class CellRendererText : Gtk.CellRenderer { [CCode (has_construct_function = false, type = "GtkCellRenderer*")] public CellRendererText (); public void set_fixed_height_from_font (int number_of_rows); [NoAccessorMethod] public bool align_set { get; set; } [NoAccessorMethod] public Pango.Alignment alignment { get; set; } [NoAccessorMethod] public Pango.AttrList attributes { owned get; set; } [NoAccessorMethod] public string background { set; } [Deprecated (replacement = "background_rgba", since = "3.4")] [NoAccessorMethod] public Gdk.Color background_gdk { get; set; } [NoAccessorMethod] public Gdk.RGBA background_rgba { get; set; } [NoAccessorMethod] public bool background_set { get; set; } [NoAccessorMethod] public bool editable { get; set; } [NoAccessorMethod] public bool editable_set { get; set; } [NoAccessorMethod] public Pango.EllipsizeMode ellipsize { get; set; } [NoAccessorMethod] public bool ellipsize_set { get; set; } [NoAccessorMethod] public string family { owned get; set; } [NoAccessorMethod] public bool family_set { get; set; } [NoAccessorMethod] public string font { owned get; set; } [NoAccessorMethod] public Pango.FontDescription font_desc { owned get; set; } [NoAccessorMethod] public string foreground { set; } [Deprecated (replacement = "foreground_rgba", since = "3.4")] [NoAccessorMethod] public Gdk.Color foreground_gdk { get; set; } [NoAccessorMethod] public Gdk.RGBA foreground_rgba { get; set; } [NoAccessorMethod] public bool foreground_set { get; set; } [NoAccessorMethod] public string language { owned get; set; } [NoAccessorMethod] public bool language_set { get; set; } [NoAccessorMethod] public string markup { set; } [NoAccessorMethod] public int max_width_chars { get; set; } [NoAccessorMethod] public string placeholder_text { owned get; set; } [NoAccessorMethod] public int rise { get; set; } [NoAccessorMethod] public bool rise_set { get; set; } [NoAccessorMethod] public double scale { get; set; } [NoAccessorMethod] public bool scale_set { get; set; } [NoAccessorMethod] public bool single_paragraph_mode { get; set; } [NoAccessorMethod] public int size { get; set; } [NoAccessorMethod] public double size_points { get; set; } [NoAccessorMethod] public bool size_set { get; set; } [NoAccessorMethod] public Pango.Stretch stretch { get; set; } [NoAccessorMethod] public bool stretch_set { get; set; } [NoAccessorMethod] public bool strikethrough { get; set; } [NoAccessorMethod] public bool strikethrough_set { get; set; } [NoAccessorMethod] public Pango.Style style { get; set; } [NoAccessorMethod] public bool style_set { get; set; } [NoAccessorMethod] public string text { owned get; set; } [NoAccessorMethod] public Pango.Underline underline { get; set; } [NoAccessorMethod] public bool underline_set { get; set; } [NoAccessorMethod] public Pango.Variant variant { get; set; } [NoAccessorMethod] public bool variant_set { get; set; } [NoAccessorMethod] public int weight { get; set; } [NoAccessorMethod] public bool weight_set { get; set; } [NoAccessorMethod] public int width_chars { get; set; } [NoAccessorMethod] public Pango.WrapMode wrap_mode { get; set; } [NoAccessorMethod] public int wrap_width { get; set; } public virtual signal void edited (string path, string new_text); } [CCode (cheader_filename = "gtk/gtk.h")] public class CellRendererToggle : Gtk.CellRenderer { [CCode (has_construct_function = false, type = "GtkCellRenderer*")] public CellRendererToggle (); public bool get_activatable (); public bool get_active (); public bool get_radio (); public void set_activatable (bool setting); public void set_active (bool setting); public void set_radio (bool radio); public bool activatable { get; set; } public bool active { get; set; } [NoAccessorMethod] public bool inconsistent { get; set; } [NoAccessorMethod] public int indicator_size { get; set; } public bool radio { get; set; } public virtual signal void toggled (string path); } [CCode (cheader_filename = "gtk/gtk.h")] public class CellView : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public CellView (); public unowned Gtk.TreePath get_displayed_row (); public bool get_draw_sensitive (); public bool get_fit_model (); public unowned Gtk.TreeModel get_model (); public bool get_size_of_row (Gtk.TreePath path, out Gtk.Requisition requisition); [Deprecated (replacement = "set_background_rgba", since = "3.4")] public void set_background_color (Gdk.Color color); public void set_background_rgba (Gdk.RGBA rgba); public void set_displayed_row (Gtk.TreePath path); public void set_draw_sensitive (bool draw_sensitive); public void set_fit_model (bool fit_model); public void set_model (Gtk.TreeModel? model); [CCode (has_construct_function = false, type = "GtkWidget*")] public CellView.with_context (Gtk.CellArea area, Gtk.CellAreaContext context); [CCode (has_construct_function = false, type = "GtkWidget*")] public CellView.with_markup (string markup); [CCode (has_construct_function = false, type = "GtkWidget*")] public CellView.with_pixbuf (Gdk.Pixbuf pixbuf); [CCode (has_construct_function = false, type = "GtkWidget*")] public CellView.with_text (string text); [NoAccessorMethod] public string background { set; } [Deprecated (replacement = "background_rgba", since = "3.4")] [NoAccessorMethod] public Gdk.Color background_gdk { get; set; } [NoAccessorMethod] public Gdk.RGBA background_rgba { get; set; } [NoAccessorMethod] public bool background_set { get; set; } [NoAccessorMethod] public Gtk.CellArea cell_area { owned get; construct; } [NoAccessorMethod] public Gtk.CellAreaContext cell_area_context { owned get; construct; } public bool draw_sensitive { get; set; } public bool fit_model { get; set; } public Gtk.TreeModel model { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class CheckButton : Gtk.ToggleButton, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public CheckButton (); [NoWrapper] public virtual void draw_indicator (Cairo.Context cr); [CCode (has_construct_function = false, type = "GtkWidget*")] public CheckButton.with_label (string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public CheckButton.with_mnemonic (string label); } [CCode (cheader_filename = "gtk/gtk.h")] public class CheckMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkWidget*")] public CheckMenuItem (); [NoWrapper] public virtual void draw_indicator (Cairo.Context cr); public bool get_active (); public bool get_draw_as_radio (); public bool get_inconsistent (); public void set_active (bool is_active); public void set_draw_as_radio (bool draw_as_radio); public void set_inconsistent (bool setting); [CCode (has_construct_function = false, type = "GtkWidget*")] public CheckMenuItem.with_label (string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public CheckMenuItem.with_mnemonic (string label); public bool active { get; set; } public bool draw_as_radio { get; set; } public bool inconsistent { get; set; } [HasEmitter] public virtual signal void toggled (); } [CCode (cheader_filename = "gtk/gtk.h")] public class CheckMenuItemAccessible : Gtk.MenuItemAccessible, Atk.Component, Atk.Action, Atk.Selection { [CCode (has_construct_function = false)] protected CheckMenuItemAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Clipboard : GLib.Object { [CCode (has_construct_function = false)] protected Clipboard (); public void clear (); public static unowned Gtk.Clipboard @get (Gdk.Atom selection); public unowned Gdk.Display get_display (); public static unowned Gtk.Clipboard get_for_display (Gdk.Display display, Gdk.Atom selection); public unowned GLib.Object get_owner (); public void request_contents (Gdk.Atom target, Gtk.ClipboardReceivedFunc callback); public void request_image (Gtk.ClipboardImageReceivedFunc callback); public void request_rich_text (Gtk.TextBuffer buffer, Gtk.ClipboardRichTextReceivedFunc callback); public void request_targets (Gtk.ClipboardTargetsReceivedFunc callback); public void request_text (Gtk.ClipboardTextReceivedFunc callback); public void request_uris (Gtk.ClipboardURIReceivedFunc callback); public void set_can_store (Gtk.TargetEntry[] targets); public void set_image (Gdk.Pixbuf pixbuf); public void set_text (string text, int len); public bool set_with_data (Gtk.TargetEntry[] targets, Gtk.ClipboardGetFunc get_func, Gtk.ClipboardClearFunc clear_func); public bool set_with_owner (Gtk.TargetEntry[] targets, Gtk.ClipboardGetFunc get_func, Gtk.ClipboardClearFunc clear_func, GLib.Object owner); public void store (); public Gtk.SelectionData? wait_for_contents (Gdk.Atom target); public Gdk.Pixbuf? wait_for_image (); [CCode (array_length_type = "gsize")] public uint8[]? wait_for_rich_text (Gtk.TextBuffer buffer, out Gdk.Atom format); public bool wait_for_targets (out Gdk.Atom[] targets); public string? wait_for_text (); [CCode (array_length = false, array_null_terminated = true)] public string[]? wait_for_uris (); public bool wait_is_image_available (); public bool wait_is_rich_text_available (Gtk.TextBuffer buffer); public bool wait_is_target_available (Gdk.Atom target); public bool wait_is_text_available (); public bool wait_is_uris_available (); public virtual signal void owner_change (Gdk.Event p0); } [CCode (cheader_filename = "gtk/gtk.h")] public class ColorButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable, Gtk.ColorChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public ColorButton (); public uint16 get_alpha (); public void get_color (out Gdk.Color color); public unowned string get_title (); public bool get_use_alpha (); public void set_alpha (uint16 alpha); public void set_color (Gdk.Color color); public void set_title (string title); public void set_use_alpha (bool use_alpha); [CCode (has_construct_function = false, type = "GtkWidget*")] public ColorButton.with_color (Gdk.Color color); [CCode (has_construct_function = false, type = "GtkWidget*")] public ColorButton.with_rgba (Gdk.RGBA rgba); public uint alpha { get; set; } [Deprecated (replacement = "rgba", since = "3.4")] public Gdk.Color color { get; set; } public Gdk.RGBA rgba { get; set; } public string title { get; set; } public bool use_alpha { get; set; } public virtual signal void color_set (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ColorChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.ColorChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public ColorChooserDialog (string? title, Gtk.Window? parent); [NoAccessorMethod] public bool show_editor { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class ColorChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.ColorChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public ColorChooserWidget (); [NoAccessorMethod] public bool show_editor { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class ColorSelection : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ColorSelection (); public uint16 get_current_alpha (); [Deprecated (replacement = "get_current_rgba", since = "3.4")] public void get_current_color (out Gdk.Color color); public void get_current_rgba (Gdk.RGBA rgba); public bool get_has_opacity_control (); public bool get_has_palette (); public uint16 get_previous_alpha (); public void get_previous_color (out Gdk.Color color); public void get_previous_rgba (Gdk.RGBA rgba); public bool is_adjusting (); public static bool palette_from_string (string str, Gdk.Color[] colors); public static unowned string palette_to_string (Gdk.Color[] colors); public static unowned Gtk.ColorSelectionChangePaletteWithScreenFunc set_change_palette_with_screen_hook (Gtk.ColorSelectionChangePaletteWithScreenFunc func); public void set_current_alpha (uint16 alpha); [Deprecated (replacement = "set_current_rgba", since = "3.4")] public void set_current_color (Gdk.Color color); public void set_current_rgba (Gdk.RGBA rgba); public void set_has_opacity_control (bool has_opacity); public void set_has_palette (bool has_palette); public void set_previous_alpha (uint16 alpha); public void set_previous_color (Gdk.Color color); public void set_previous_rgba (Gdk.RGBA rgba); public uint current_alpha { get; set; } public Gdk.Color current_color { get; set; } public Gdk.RGBA current_rgba { get; set; } public bool has_opacity_control { get; set; } public bool has_palette { get; set; } public virtual signal void color_changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ColorSelectionDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ColorSelectionDialog (string title); public unowned Gtk.ColorSelection get_color_selection (); [NoAccessorMethod] public Gtk.Widget cancel_button { owned get; } public Gtk.Widget color_selection { get; } [NoAccessorMethod] public Gtk.Widget help_button { owned get; } [NoAccessorMethod] public Gtk.Widget ok_button { owned get; } } [CCode (cheader_filename = "gtk/gtk.h")] public class ComboBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.CellEditable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ComboBox (); public int get_active (); public unowned string get_active_id (); public bool get_active_iter (out Gtk.TreeIter iter); public bool get_add_tearoffs (); public Gtk.SensitivityType get_button_sensitivity (); public int get_column_span_column (); public int get_entry_text_column (); public bool get_focus_on_click (); public bool get_has_entry (); public int get_id_column (); public unowned Gtk.TreeModel get_model (); public unowned Atk.Object get_popup_accessible (); public bool get_popup_fixed_width (); public unowned Gtk.TreeViewRowSeparatorFunc get_row_separator_func (); public int get_row_span_column (); public unowned string get_title (); public int get_wrap_width (); public void popup_for_device (Gdk.Device device); public void set_active (int index_); public bool set_active_id (string active_id); public void set_active_iter (Gtk.TreeIter iter); public void set_add_tearoffs (bool add_tearoffs); public void set_button_sensitivity (Gtk.SensitivityType sensitivity); public void set_column_span_column (int column_span); public void set_entry_text_column (int text_column); public void set_focus_on_click (bool focus_on_click); public void set_id_column (int id_column); public void set_model (Gtk.TreeModel? model); public void set_popup_fixed_width (bool fixed); public void set_row_separator_func (owned Gtk.TreeViewRowSeparatorFunc func); public void set_row_span_column (int row_span); public void set_title (string title); public void set_wrap_width (int width); [CCode (has_construct_function = false, type = "GtkWidget*")] public ComboBox.with_area (Gtk.CellArea area); [CCode (has_construct_function = false, type = "GtkWidget*")] public ComboBox.with_area_and_entry (Gtk.CellArea area); [CCode (has_construct_function = false, type = "GtkWidget*")] public ComboBox.with_entry (); [CCode (has_construct_function = false, type = "GtkWidget*")] public ComboBox.with_model (Gtk.TreeModel model); [CCode (has_construct_function = false, type = "GtkWidget*")] public ComboBox.with_model_and_entry (Gtk.TreeModel model); public int active { get; set; } public string active_id { get; set; } public bool add_tearoffs { get; set; } public Gtk.SensitivityType button_sensitivity { get; set; } [NoAccessorMethod] public Gtk.CellArea cell_area { owned get; construct; } public int column_span_column { get; set; } public int entry_text_column { get; set; } public bool focus_on_click { get; set; } public bool has_entry { get; construct; } [NoAccessorMethod] public bool has_frame { get; set; } public int id_column { get; set; } public Gtk.TreeModel model { get; set; } public bool popup_fixed_width { get; set; } [NoAccessorMethod] public bool popup_shown { get; } public int row_span_column { get; set; } [NoAccessorMethod] public string tearoff_title { owned get; set; } public int wrap_width { get; set; } public virtual signal void changed (); public virtual signal unowned string format_entry_text (string path); public virtual signal void move_active (Gtk.ScrollType p0); [HasEmitter] public virtual signal bool popdown (); [HasEmitter] public virtual signal void popup (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ComboBoxAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Action, Atk.Selection { [CCode (has_construct_function = false)] protected ComboBoxAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ComboBoxText : Gtk.ComboBox, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.CellEditable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ComboBoxText (); public void append (string id, string text); public void append_text (string text); public unowned string get_active_text (); public void insert (int position, string id, string text); public void insert_text (int position, string text); public void prepend (string id, string text); public void prepend_text (string text); public void remove (int position); public void remove_all (); [CCode (has_construct_function = false, type = "GtkWidget*")] public ComboBoxText.with_entry (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Container : Gtk.Widget, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false)] protected Container (); public void add_with_properties (Gtk.Widget widget, ...); public void child_get (Gtk.Widget child, ...); public void child_get_property (Gtk.Widget child, string property_name, GLib.Value value); public void child_get_valist (Gtk.Widget child, string first_property_name, void* var_args); public void child_notify (Gtk.Widget child, string child_property); public void child_set (Gtk.Widget child, ...); public void child_set_property (Gtk.Widget child, string property_name, GLib.Value value); public void child_set_valist (Gtk.Widget child, string first_property_name, void* var_args); public virtual GLib.Type child_type (); public static unowned GLib.ParamSpec class_find_child_property (GLib.ObjectClass cclass, string property_name); public static unowned GLib.ParamSpec class_list_child_properties (GLib.ObjectClass cclass, uint n_properties); [NoWrapper] public virtual unowned string composite_name (Gtk.Widget child); public void forall (Gtk.Callback callback); [CCode (vfunc_name = "forall")] [NoWrapper] public virtual void forall_internal (bool include_internal, Gtk.Callback callback); public void @foreach (Gtk.Callback callback); public uint get_border_width (); [NoWrapper] public virtual void get_child_property (Gtk.Widget child, uint property_id, GLib.Value value, GLib.ParamSpec pspec); public GLib.List get_children (); public bool get_focus_chain (out GLib.List focusable_widgets); public unowned Gtk.Widget get_focus_child (); public unowned Gtk.Adjustment get_focus_hadjustment (); public unowned Gtk.Adjustment get_focus_vadjustment (); public virtual unowned Gtk.WidgetPath get_path_for_child (Gtk.Widget child); public Gtk.ResizeMode get_resize_mode (); [CCode (cname = "gtk_container_class_handle_border_width")] public class void handle_border_width (); [CCode (cname = "gtk_container_class_install_child_property")] public class void install_child_property (uint property_id, GLib.ParamSpec pspec); public void propagate_draw (Gtk.Widget child, Cairo.Context cr); public void resize_children (); public void set_border_width (uint border_width); [NoWrapper] public virtual void set_child_property (Gtk.Widget child, uint property_id, GLib.Value value, GLib.ParamSpec pspec); public void set_focus_chain (GLib.List focusable_widgets); public void set_focus_hadjustment (Gtk.Adjustment adjustment); public void set_focus_vadjustment (Gtk.Adjustment adjustment); public void set_reallocate_redraws (bool needs_redraws); public void set_resize_mode (Gtk.ResizeMode resize_mode); public void unset_focus_chain (); public uint border_width { get; set; } [NoAccessorMethod] public Gtk.Widget child { set; } public Gtk.ResizeMode resize_mode { get; set; } [HasEmitter] public virtual signal void add (Gtk.Widget widget); [HasEmitter] public virtual signal void check_resize (); [HasEmitter] public virtual signal void remove (Gtk.Widget widget); [HasEmitter] public virtual signal void set_focus_child (Gtk.Widget? child); } [CCode (cheader_filename = "gtk/gtk.h")] public class ContainerAccessible : Gtk.WidgetAccessible, Atk.Component { [CCode (has_construct_function = false)] protected ContainerAccessible (); [NoWrapper] public virtual int add_gtk (Gtk.Container container, Gtk.Widget widget, void* data); [NoWrapper] public virtual int remove_gtk (Gtk.Container container, Gtk.Widget widget, void* data); } [CCode (cheader_filename = "gtk/gtk.h")] public class ContainerCellAccessible : Gtk.CellAccessible, Atk.Action, Atk.Component { [CCode (has_construct_function = false)] public ContainerCellAccessible (); public void add_child (Gtk.CellAccessible child); public unowned GLib.List get_children (); public void remove_child (Gtk.CellAccessible child); } [CCode (cheader_filename = "gtk/gtk.h")] public class CssProvider : GLib.Object, Gtk.StyleProvider { [CCode (has_construct_function = false)] public CssProvider (); public static GLib.Quark error_quark (); public static unowned Gtk.CssProvider get_default (); public static unowned Gtk.CssProvider get_named (string name, string? variant); public bool load_from_data (string data, ssize_t length) throws GLib.Error; public bool load_from_file (GLib.File file) throws GLib.Error; public bool load_from_path (string path) throws GLib.Error; public unowned string to_string (); public virtual signal void parsing_error (Gtk.CssSection section, GLib.Error error); } [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_css_section_ref", type_id = "gtk_css_section_get_type ()", unref_function = "gtk_css_section_unref")] [Compact] public class CssSection { public uint get_end_line (); public uint get_end_position (); public unowned GLib.File get_file (); public unowned Gtk.CssSection get_parent (); public Gtk.CssSectionType get_section_type (); public uint get_start_line (); public uint get_start_position (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Dialog : Gtk.Window, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Dialog (); public void add_action_widget (Gtk.Widget child, int response_id); public unowned Gtk.Widget add_button (string button_text, int response_id); public void add_buttons (...); public unowned Gtk.Widget get_action_area (); [CCode (type = "GtkWidget*")] public unowned Gtk.Box get_content_area (); public int get_response_for_widget (Gtk.Widget widget); public unowned Gtk.Widget get_widget_for_response (int response_id); public int run (); [CCode (sentinel = "-1")] public void set_alternative_button_order (...); public void set_alternative_button_order_from_array (int n_params, int new_order); public void set_default_response (int response_id); public void set_response_sensitive (int response_id, bool setting); [CCode (has_construct_function = false, type = "GtkWidget*")] public Dialog.with_buttons (string? title, Gtk.Window? parent, Gtk.DialogFlags flags, ...); public virtual signal void close (); [HasEmitter] public virtual signal void response (int response_id); } [CCode (cheader_filename = "gtk/gtk.h")] public class DrawingArea : Gtk.Widget, Atk.Implementor, Gtk.Buildable { public void* dummy; [CCode (has_construct_function = false, type = "GtkWidget*")] public DrawingArea (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Entry : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Editable, Gtk.CellEditable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Entry (); public bool get_activates_default (); public float get_alignment (); public unowned Pango.AttrList get_attributes (); public unowned Gtk.EntryBuffer get_buffer (); public unowned Gtk.EntryCompletion get_completion (); public int get_current_icon_drag_source (); public unowned Gtk.Adjustment get_cursor_hadjustment (); [NoWrapper] public virtual void get_frame_size (int x, int y, int width, int height); public bool get_has_frame (); public bool get_icon_activatable (Gtk.EntryIconPosition icon_pos); public void get_icon_area (Gtk.EntryIconPosition icon_pos, Gdk.Rectangle icon_area); public int get_icon_at_pos (int x, int y); public unowned GLib.Icon get_icon_gicon (Gtk.EntryIconPosition icon_pos); public unowned string get_icon_name (Gtk.EntryIconPosition icon_pos); public unowned Gdk.Pixbuf get_icon_pixbuf (Gtk.EntryIconPosition icon_pos); public bool get_icon_sensitive (Gtk.EntryIconPosition icon_pos); public unowned string get_icon_stock (Gtk.EntryIconPosition icon_pos); public Gtk.ImageType get_icon_storage_type (Gtk.EntryIconPosition icon_pos); public unowned string get_icon_tooltip_markup (Gtk.EntryIconPosition icon_pos); public unowned string get_icon_tooltip_text (Gtk.EntryIconPosition icon_pos); public unowned Gtk.Border? get_inner_border (); public Gtk.InputHints get_input_hints (); public Gtk.InputPurpose get_input_purpose (); public unichar get_invisible_char (); public unowned Pango.Layout get_layout (); public void get_layout_offsets (out int x, out int y); public int get_max_length (); public bool get_overwrite_mode (); public unowned string get_placeholder_text (); public double get_progress_fraction (); public double get_progress_pulse_step (); public unowned Pango.TabArray? get_tabs (); public unowned string get_text (); public void get_text_area (out Gdk.Rectangle text_area); [NoWrapper] public virtual void get_text_area_size (out int x, out int y, out int width, out int height); public uint16 get_text_length (); public bool get_visibility (); public int get_width_chars (); public bool im_context_filter_keypress (Gdk.EventKey event); public int layout_index_to_text_index (int layout_index); public void progress_pulse (); public void reset_im_context (); public void set_activates_default (bool setting); public void set_alignment (float xalign); public void set_attributes (Pango.AttrList attrs); public void set_buffer (Gtk.EntryBuffer buffer); public void set_completion (Gtk.EntryCompletion completion); public void set_cursor_hadjustment (Gtk.Adjustment adjustment); public void set_has_frame (bool setting); public void set_icon_activatable (Gtk.EntryIconPosition icon_pos, bool activatable); public void set_icon_drag_source (Gtk.EntryIconPosition icon_pos, Gtk.TargetList target_list, Gdk.DragAction actions); public void set_icon_from_gicon (Gtk.EntryIconPosition icon_pos, GLib.Icon? icon); public void set_icon_from_icon_name (Gtk.EntryIconPosition icon_pos, string? icon_name); public void set_icon_from_pixbuf (Gtk.EntryIconPosition icon_pos, Gdk.Pixbuf? pixbuf); public void set_icon_from_stock (Gtk.EntryIconPosition icon_pos, string? stock_id); public void set_icon_sensitive (Gtk.EntryIconPosition icon_pos, bool sensitive); public void set_icon_tooltip_markup (Gtk.EntryIconPosition icon_pos, string? tooltip); public void set_icon_tooltip_text (Gtk.EntryIconPosition icon_pos, string? tooltip); [Deprecated (since = "3.4")] public void set_inner_border (Gtk.Border border); public void set_input_hints (Gtk.InputHints hints); public void set_input_purpose (Gtk.InputPurpose purpose); public void set_invisible_char (unichar ch); public void set_max_length (int max); public void set_overwrite_mode (bool overwrite); public void set_placeholder_text (string text); public void set_progress_fraction (double fraction); public void set_progress_pulse_step (double fraction); public void set_tabs (Pango.TabArray tabs); public void set_text (string text); public void set_visibility (bool visible); public void set_width_chars (int n_chars); public int text_index_to_layout_index (int text_index); public void unset_invisible_char (); [CCode (has_construct_function = false, type = "GtkWidget*")] public Entry.with_buffer (Gtk.EntryBuffer buffer); public bool activates_default { get; set; } public Pango.AttrList attributes { get; set; } public Gtk.EntryBuffer buffer { get; set construct; } [NoAccessorMethod] public bool caps_lock_warning { get; set; } public Gtk.EntryCompletion completion { get; set; } [NoAccessorMethod] public int cursor_position { get; } [NoAccessorMethod] public bool editable { get; set; } public bool has_frame { get; set; } [NoAccessorMethod] public string im_module { owned get; set; } [Deprecated (since = "3.4")] public Gtk.Border inner_border { get; set; } public Gtk.InputHints input_hints { get; set; } public Gtk.InputPurpose input_purpose { get; set; } public uint invisible_char { get; set; } [NoAccessorMethod] public bool invisible_char_set { get; set; } public int max_length { get; set; } public bool overwrite_mode { get; set; } public string placeholder_text { get; set; } [NoAccessorMethod] public bool populate_all { get; set; } [NoAccessorMethod] public bool primary_icon_activatable { get; set; } [NoAccessorMethod] public GLib.Icon primary_icon_gicon { owned get; set; } [NoAccessorMethod] public string primary_icon_name { owned get; set; } [NoAccessorMethod] public Gdk.Pixbuf primary_icon_pixbuf { owned get; set; } [NoAccessorMethod] public bool primary_icon_sensitive { get; set; } [NoAccessorMethod] public string primary_icon_stock { owned get; set; } [NoAccessorMethod] public Gtk.ImageType primary_icon_storage_type { get; } [NoAccessorMethod] public string primary_icon_tooltip_markup { owned get; set; } [NoAccessorMethod] public string primary_icon_tooltip_text { owned get; set; } public double progress_fraction { get; set; } public double progress_pulse_step { get; set; } [NoAccessorMethod] public int scroll_offset { get; } [NoAccessorMethod] public bool secondary_icon_activatable { get; set; } [NoAccessorMethod] public GLib.Icon secondary_icon_gicon { owned get; set; } [NoAccessorMethod] public string secondary_icon_name { owned get; set; } [NoAccessorMethod] public Gdk.Pixbuf secondary_icon_pixbuf { owned get; set; } [NoAccessorMethod] public bool secondary_icon_sensitive { get; set; } [NoAccessorMethod] public string secondary_icon_stock { owned get; set; } [NoAccessorMethod] public Gtk.ImageType secondary_icon_storage_type { get; } [NoAccessorMethod] public string secondary_icon_tooltip_markup { owned get; set; } [NoAccessorMethod] public string secondary_icon_tooltip_text { owned get; set; } [NoAccessorMethod] public int selection_bound { get; } [NoAccessorMethod] public Gtk.ShadowType shadow_type { get; set; } public Pango.TabArray tabs { get; set; } public string text { get; set; } public uint text_length { get; } [NoAccessorMethod] public bool truncate_multiline { get; set; } public bool visibility { get; set; } public int width_chars { get; set; } [NoAccessorMethod] public float xalign { get; set; } public virtual signal void activate (); public virtual signal void backspace (); public virtual signal void copy_clipboard (); public virtual signal void cut_clipboard (); public virtual signal void delete_from_cursor (Gtk.DeleteType type, int count); public virtual signal void icon_press (Gtk.EntryIconPosition p0, Gdk.Event p1); public virtual signal void icon_release (Gtk.EntryIconPosition p0, Gdk.Event p1); public virtual signal void insert_at_cursor (string str); public virtual signal void move_cursor (Gtk.MovementStep step, int count, bool extend_selection); public virtual signal void paste_clipboard (); public virtual signal void populate_popup (Gtk.Menu popup); public virtual signal void preedit_changed (string p0); public virtual signal void toggle_overwrite (); } [CCode (cheader_filename = "gtk/gtk.h")] public class EntryAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.EditableText, Atk.Text, Atk.Action { [CCode (has_construct_function = false)] protected EntryAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class EntryBuffer : GLib.Object { [CCode (has_construct_function = false)] public EntryBuffer (uint8[] initial_chars); public virtual uint delete_text (uint position, int n_chars); public void emit_deleted_text (uint position, uint n_chars); public void emit_inserted_text (uint position, uint8[] chars); public size_t get_bytes (); public virtual uint get_length (); public int get_max_length (); public virtual unowned string get_text (); public virtual uint insert_text (uint position, uint8[] chars); public void set_max_length (int max_length); public void set_text (uint8[] chars); public uint length { get; } public int max_length { get; set; } public string text { get; set; } public virtual signal void deleted_text (uint position, uint n_chars); public virtual signal void inserted_text (uint position, string chars, uint n_chars); } [CCode (cheader_filename = "gtk/gtk.h")] public class EntryCompletion : GLib.Object, Gtk.CellLayout, Gtk.Buildable { [CCode (has_construct_function = false)] public EntryCompletion (); public void complete (); public unowned string compute_prefix (string key); public void delete_action (int index_); public unowned string get_completion_prefix (); public unowned Gtk.Widget get_entry (); public bool get_inline_completion (); public bool get_inline_selection (); public int get_minimum_key_length (); public unowned Gtk.TreeModel get_model (); public bool get_popup_completion (); public bool get_popup_set_width (); public bool get_popup_single_match (); public int get_text_column (); public void insert_action_markup (int index_, string markup); public void insert_action_text (int index_, string text); public void set_inline_completion (bool inline_completion); public void set_inline_selection (bool inline_selection); public void set_match_func (owned Gtk.EntryCompletionMatchFunc func); public void set_minimum_key_length (int length); public void set_model (Gtk.TreeModel? model); public void set_popup_completion (bool popup_completion); public void set_popup_set_width (bool popup_set_width); public void set_popup_single_match (bool popup_single_match); public void set_text_column (int column); [CCode (has_construct_function = false)] public EntryCompletion.with_area (Gtk.CellArea area); [NoAccessorMethod] public Gtk.CellArea cell_area { owned get; construct; } public bool inline_completion { get; set; } public bool inline_selection { get; set; } public int minimum_key_length { get; set; } public Gtk.TreeModel model { get; set; } public bool popup_completion { get; set; } public bool popup_set_width { get; set; } public bool popup_single_match { get; set; } public int text_column { get; set; } public virtual signal void action_activated (int index_); public virtual signal bool cursor_on_match (Gtk.TreeModel model, Gtk.TreeIter iter); [HasEmitter] public virtual signal bool insert_prefix (string prefix); public virtual signal bool match_selected (Gtk.TreeModel model, Gtk.TreeIter iter); } [CCode (cheader_filename = "gtk/gtk.h")] public class EntryIconAccessible : Atk.Object, Atk.Action, Atk.Component { [CCode (has_construct_function = false)] protected EntryIconAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class EventBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public EventBox (); public bool get_above_child (); public bool get_visible_window (); public void set_above_child (bool above_child); public void set_visible_window (bool visible_window); public bool above_child { get; set; } public bool visible_window { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Expander : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Expander (string label); public bool get_expanded (); public unowned string get_label (); public bool get_label_fill (); public unowned Gtk.Widget get_label_widget (); public bool get_resize_toplevel (); public int get_spacing (); public bool get_use_markup (); public bool get_use_underline (); public void set_expanded (bool expanded); public void set_label (string label); public void set_label_fill (bool label_fill); public void set_label_widget (Gtk.Widget label_widget); public void set_resize_toplevel (bool resize_toplevel); public void set_spacing (int spacing); public void set_use_markup (bool use_markup); public void set_use_underline (bool use_underline); [CCode (has_construct_function = false, type = "GtkWidget*")] public Expander.with_mnemonic (string label); public bool expanded { get; set construct; } public string label { get; set construct; } public bool label_fill { get; set construct; } public Gtk.Widget label_widget { get; set; } public bool resize_toplevel { get; set; } public int spacing { get; set; } public bool use_markup { get; set construct; } public bool use_underline { get; set construct; } public virtual signal void activate (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ExpanderAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Action { [CCode (has_construct_function = false)] protected ExpanderAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class FileChooserButton : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.FileChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public FileChooserButton (string title, Gtk.FileChooserAction action); public bool get_focus_on_click (); public unowned string get_title (); public int get_width_chars (); public void set_focus_on_click (bool focus_on_click); public void set_title (string title); public void set_width_chars (int n_chars); [CCode (has_construct_function = false, type = "GtkWidget*")] public FileChooserButton.with_dialog (Gtk.Dialog dialog); public Gtk.FileChooser dialog { construct; } public bool focus_on_click { get; set; } public string title { get; set; } public int width_chars { get; set; } public virtual signal void file_set (); } [CCode (cheader_filename = "gtk/gtk.h")] public class FileChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.FileChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public FileChooserDialog (string? title, Gtk.Window? parent, Gtk.FileChooserAction action, ...); } [CCode (cheader_filename = "gtk/gtk.h")] public class FileChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.FileChooser, Gtk.FileChooserEmbed { [CCode (has_construct_function = false, type = "GtkWidget*")] public FileChooserWidget (Gtk.FileChooserAction action); } [CCode (cheader_filename = "gtk/gtk.h")] public class FileFilter : GLib.InitiallyUnowned, Gtk.Buildable { [CCode (has_construct_function = false)] public FileFilter (); public void add_custom (Gtk.FileFilterFlags needed, owned Gtk.FileFilterFunc func); public void add_mime_type (string mime_type); public void add_pattern (string pattern); public void add_pixbuf_formats (); public bool filter (Gtk.FileFilterInfo filter_info); [CCode (cname = "gtk_file_filter_get_name")] public unowned string get_filter_name (); public Gtk.FileFilterFlags get_needed (); [CCode (cname = "gtk_file_filter_set_name")] public void set_filter_name (string name); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class FileFilterInfo { public Gtk.FileFilterFlags contains; public weak string display_name; public weak string filename; public weak string mime_type; public weak string uri; } [CCode (cheader_filename = "gtk/gtk.h")] public class Fixed : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Fixed (); public void move (Gtk.Widget widget, int x, int y); public void put (Gtk.Widget widget, int x, int y); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class FixedChild { public weak Gtk.Widget widget; public int x; public int y; } [CCode (cheader_filename = "gtk/gtk.h")] public class FontButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable, Gtk.FontChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public FontButton (); public unowned string get_font_name (); public bool get_show_size (); public bool get_show_style (); public unowned string get_title (); public bool get_use_font (); public bool get_use_size (); public bool set_font_name (string fontname); public void set_show_size (bool show_size); public void set_show_style (bool show_style); public void set_title (string title); public void set_use_font (bool use_font); public void set_use_size (bool use_size); [CCode (has_construct_function = false, type = "GtkWidget*")] public FontButton.with_font (string fontname); public string font_name { get; set; } public bool show_size { get; set; } public bool show_style { get; set; } public string title { get; set; } public bool use_font { get; set; } public bool use_size { get; set; } public virtual signal void font_set (); } [CCode (cheader_filename = "gtk/gtk.h")] public class FontChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.FontChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public FontChooserDialog (string? title, Gtk.Window? parent); } [CCode (cheader_filename = "gtk/gtk.h")] public class FontChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.FontChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public FontChooserWidget (); } [CCode (cheader_filename = "gtk/gtk.h")] public class FontSelection : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public FontSelection (); public unowned Pango.FontFace get_face (); public unowned Gtk.Widget get_face_list (); public unowned Pango.FontFamily get_family (); public unowned Gtk.Widget get_family_list (); public unowned string get_font_name (); public unowned Gtk.Widget get_preview_entry (); public unowned string get_preview_text (); public int get_size (); public unowned Gtk.Widget get_size_entry (); public unowned Gtk.Widget get_size_list (); public bool set_font_name (string fontname); public void set_preview_text (string text); public string font_name { get; set; } public string preview_text { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "FontChooserDialog", since = "3.2")] public class FontSelectionDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public FontSelectionDialog (string title); public unowned Gtk.Widget get_cancel_button (); public unowned string get_font_name (); public unowned Gtk.Widget get_font_selection (); public unowned Gtk.Widget get_ok_button (); public unowned string get_preview_text (); public bool set_font_name (string fontname); public void set_preview_text (string text); } [CCode (cheader_filename = "gtk/gtk.h")] public class Frame : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Frame (string? label); [NoWrapper] public virtual void compute_child_allocation (Gtk.Allocation allocation); public unowned string get_label (); public void get_label_align (float xalign, float yalign); public unowned Gtk.Widget? get_label_widget (); public Gtk.ShadowType get_shadow_type (); public void set_label (string? label); public void set_label_align (float xalign, float yalign); public void set_label_widget (Gtk.Widget? label_widget); public void set_shadow_type (Gtk.ShadowType type); public string label { get; set; } public Gtk.Widget label_widget { get; set; } [NoAccessorMethod] public float label_xalign { get; set; } [NoAccessorMethod] public float label_yalign { get; set; } public Gtk.ShadowType shadow_type { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class FrameAccessible : Gtk.ContainerAccessible, Atk.Component { [CCode (has_construct_function = false)] protected FrameAccessible (); } [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_gradient_ref", type_id = "gtk_gradient_get_type ()", unref_function = "gtk_gradient_unref")] [Compact] public class Gradient { public void add_color_stop (double offset, Gtk.SymbolicColor color); [CCode (has_construct_function = false)] public Gradient.linear (double x0, double y0, double x1, double y1); [CCode (has_construct_function = false)] public Gradient.radial (double x0, double y0, double radius0, double x1, double y1, double radius1); public bool resolve (Gtk.StyleProperties props, out unowned Cairo.Pattern resolved_gradient); public unowned Cairo.Pattern resolve_for_context (Gtk.StyleContext context); public unowned string to_string (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Grid : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Grid (); public void attach (Gtk.Widget child, int left, int top, int width, int height); public void attach_next_to (Gtk.Widget child, Gtk.Widget? sibling, Gtk.PositionType side, int width, int height); public int get_baseline_row (); public unowned Gtk.Widget get_child_at (int left, int top); public bool get_column_homogeneous (); public uint get_column_spacing (); public Gtk.BaselinePosition get_row_baseline_position (int row); public bool get_row_homogeneous (); public uint get_row_spacing (); public void insert_column (int position); public void insert_next_to (Gtk.Widget sibling, Gtk.PositionType side); public void insert_row (int position); public void remove_column (int position); public void remove_row (int position); public void set_baseline_row (int row); public void set_column_homogeneous (bool homogeneous); public void set_column_spacing (uint spacing); public void set_row_baseline_position (int row, Gtk.BaselinePosition pos); public void set_row_homogeneous (bool homogeneous); public void set_row_spacing (uint spacing); public int baseline_row { get; set; } public bool column_homogeneous { get; set; } public int column_spacing { get; set; } public bool row_homogeneous { get; set; } public int row_spacing { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Grid", since = "3.2")] public class HBox : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HBox (bool homogeneous, int spacing); } [CCode (cheader_filename = "gtk/gtk.h")] public class HButtonBox : Gtk.ButtonBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HButtonBox (); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Paned", since = "3.2")] public class HPaned : Gtk.Paned, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HPaned (); } [CCode (cheader_filename = "gtk/gtk.h")] public class HSV : Gtk.Widget, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HSV (); public void get_color (out double h, out double s, out double v); public void get_metrics (out int size, out int ring_width); public bool is_adjusting (); public void set_color (double h, double s, double v); public void set_metrics (int size, int ring_width); public static void to_rgb (double h, double s, double v, out double r, out double g, out double b); public virtual signal void changed (); public virtual signal void move (Gtk.DirectionType type); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.2")] public class HScale : Gtk.Scale, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HScale (Gtk.Adjustment? adjustment); [CCode (has_construct_function = false, type = "GtkWidget*")] public HScale.with_range (double min, double max, double step); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.2")] public class HScrollbar : Gtk.Scrollbar, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HScrollbar (Gtk.Adjustment? adjustment); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Separator", since = "3.2")] public class HSeparator : Gtk.Separator, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HSeparator (); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.4")] public class HandleBox : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HandleBox (); public bool get_child_detached (); public Gtk.PositionType get_handle_position (); public Gtk.ShadowType get_shadow_type (); public Gtk.PositionType get_snap_edge (); public void set_handle_position (Gtk.PositionType position); public void set_shadow_type (Gtk.ShadowType type); public void set_snap_edge (Gtk.PositionType edge); public bool child_detached { get; } public Gtk.PositionType handle_position { get; set; } public Gtk.ShadowType shadow_type { get; set; } public Gtk.PositionType snap_edge { get; set; } [NoAccessorMethod] public bool snap_edge_set { get; set; } public virtual signal void child_attached (Gtk.Widget child); } [CCode (cheader_filename = "gtk/gtk.h")] public class HeaderBar : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public HeaderBar (); public unowned Gtk.Widget get_custom_title (); public bool get_show_close_button (); public unowned string get_subtitle (); public unowned string get_title (); public void pack_end (Gtk.Widget child); public void pack_start (Gtk.Widget child); public void set_custom_title (Gtk.Widget title_widget); public void set_show_close_button (bool setting); public void set_subtitle (string? subtitle); public void set_title (string title); public Gtk.Widget custom_title { get; set construct; } public bool show_close_button { get; set; } [NoAccessorMethod] public int spacing { get; set; } public string subtitle { get; set; } public string title { get; set; } } [CCode (cheader_filename = "gtk/gtk.h,gtk/gtkimmodule.h")] public class IMContext : GLib.Object { [CCode (has_construct_function = false)] protected IMContext (); public virtual bool filter_keypress (Gdk.EventKey event); public virtual void focus_in (); public virtual void focus_out (); public virtual void get_preedit_string (out unowned string str, out Pango.AttrList attrs, out int cursor_pos); public virtual bool get_surrounding (out unowned string text, out int cursor_index); public virtual void reset (); public virtual void set_client_window (Gdk.Window window); public virtual void set_cursor_location (Gdk.Rectangle area); public virtual void set_surrounding (string text, int len, int cursor_index); public virtual void set_use_preedit (bool use_preedit); [NoAccessorMethod] public Gtk.InputHints input_hints { get; set; } [NoAccessorMethod] public Gtk.InputPurpose input_purpose { get; set; } public virtual signal void commit (string str); [HasEmitter] public virtual signal bool delete_surrounding (int offset, int n_chars); public virtual signal void preedit_changed (); public virtual signal void preedit_end (); public virtual signal void preedit_start (); public virtual signal bool retrieve_surrounding (); } [CCode (cheader_filename = "gtk/gtk.h")] public class IMContextSimple : Gtk.IMContext { [CCode (has_construct_function = false, type = "GtkIMContext*")] public IMContextSimple (); public void add_table (uint16 data, int max_seq_len, int n_seqs); } [CCode (cheader_filename = "gtk/gtk.h")] public class IMMulticontext : Gtk.IMContext { [CCode (has_construct_function = false, type = "GtkIMContext*")] public IMMulticontext (); public void append_menuitems (Gtk.MenuShell menushell); public unowned string get_context_id (); public void set_context_id (string context_id); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.IconTheme", since = "3.10")] public class IconFactory : GLib.Object, Gtk.Buildable { [CCode (has_construct_function = false)] public IconFactory (); public void add (string stock_id, Gtk.IconSet icon_set); public void add_default (); public unowned Gtk.IconSet lookup (string stock_id); public static unowned Gtk.IconSet lookup_default (string stock_id); public void remove_default (); } [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_icon_info_copy", free_function = "gtk_icon_info_free")] [Compact] public class IconInfo { [CCode (has_construct_function = false)] protected IconInfo (); public Gtk.IconInfo copy (); [CCode (has_construct_function = false)] public IconInfo.for_pixbuf (Gtk.IconTheme icon_theme, Gdk.Pixbuf pixbuf); public void free (); public bool get_attach_points (Gdk.Point[] points); public int get_base_scale (); public int get_base_size (); public unowned Gdk.Pixbuf get_builtin_pixbuf (); public unowned string get_display_name (); public bool get_embedded_rect (out Gdk.Rectangle rectangle); public unowned string get_filename (); public Gdk.Pixbuf load_icon () throws GLib.Error; public async Gdk.Pixbuf load_icon_async (GLib.Cancellable? cancellable = null) throws GLib.Error; public Cairo.Surface load_surface (Gdk.Window for_window) throws GLib.Error; public Gdk.Pixbuf load_symbolic (Gdk.RGBA fg, Gdk.RGBA? success_color = null, Gdk.RGBA? warning_color = null, Gdk.RGBA? error_color = null, out bool was_symbolic = null) throws GLib.Error; public async Gdk.Pixbuf load_symbolic_async (Gdk.RGBA fg, Gdk.RGBA? success_color = null, Gdk.RGBA? warning_color = null, Gdk.RGBA? error_color = null, GLib.Cancellable? cancellable = null) throws GLib.Error; public Gdk.Pixbuf load_symbolic_for_context (Gtk.StyleContext context, out bool was_symbolic = null) throws GLib.Error; public async Gdk.Pixbuf load_symbolic_for_context_async (Gtk.StyleContext context, GLib.Cancellable? cancellable = null) throws GLib.Error; [Deprecated (replacement = "load_symbolic_for_context", since = "3.0")] public Gdk.Pixbuf load_symbolic_for_style (Gtk.Style style, Gtk.StateType state, out bool was_symbolic = null) throws GLib.Error; public void set_raw_coordinates (bool raw_coordinates); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class IconInfoClass { } [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_icon_set_ref", type_id = "gtk_icon_set_get_type ()", unref_function = "gtk_icon_set_unref")] [Compact] [Deprecated (replacement = "Gtk.IconTheme", since = "3.10")] public class IconSet { [CCode (has_construct_function = false)] public IconSet (); public void add_source (Gtk.IconSource source); public Gtk.IconSet copy (); [CCode (has_construct_function = false)] public IconSet.from_pixbuf (Gdk.Pixbuf pixbuf); public void get_sizes (out Gtk.IconSize[] sizes); [Deprecated (replacement = "set_render_icon_pixbuf", since = "3.0")] public Gdk.Pixbuf render_icon (Gtk.Style style, Gtk.TextDirection direction, Gtk.StateType state, Gtk.IconSize size, Gtk.Widget widget, string detail); [Deprecated (since = "3.10")] public Gdk.Pixbuf render_icon_pixbuf (Gtk.StyleContext context, Gtk.IconSize size); [Deprecated (since = "3.10")] public Cairo.Surface render_icon_surface (Gtk.StyleContext context, Gtk.IconSize size, int scale, Gdk.Window for_window); } [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_icon_source_copy", type_id = "gtk_icon_source_get_type ()")] [Compact] [Deprecated (replacement = "Gtk.IconTheme", since = "3.10")] public class IconSource { [CCode (has_construct_function = false)] public IconSource (); public Gtk.IconSource copy (); public Gtk.TextDirection get_direction (); public bool get_direction_wildcarded (); public unowned string get_filename (); public unowned string get_icon_name (); public unowned Gdk.Pixbuf get_pixbuf (); public Gtk.IconSize get_size (); public bool get_size_wildcarded (); public Gtk.StateType get_state (); public bool get_state_wildcarded (); public void set_direction (Gtk.TextDirection direction); public void set_direction_wildcarded (bool setting); public void set_filename (string filename); public void set_icon_name (string icon_name); public void set_pixbuf (Gdk.Pixbuf pixbuf); public void set_size (Gtk.IconSize size); public void set_size_wildcarded (bool setting); public void set_state (Gtk.StateType state); public void set_state_wildcarded (bool setting); } [CCode (cheader_filename = "gtk/gtk.h")] public class IconTheme : GLib.Object { [CCode (has_construct_function = false)] public IconTheme (); public static void add_builtin_icon (string icon_name, int size, Gdk.Pixbuf pixbuf); public void append_search_path (string path); public Gtk.IconInfo? choose_icon ([CCode (array_length = false, array_null_terminated = true)] string[] icon_names, int size, Gtk.IconLookupFlags flags); public Gtk.IconInfo? choose_icon_for_scale (string[] icon_names, int size, int scale, Gtk.IconLookupFlags flags); public static GLib.Quark error_quark (); public static unowned Gtk.IconTheme get_default (); public unowned string get_example_icon_name (); public static unowned Gtk.IconTheme get_for_screen (Gdk.Screen screen); [CCode (array_length = false, array_null_terminated = true)] public int[] get_icon_sizes (string icon_name); public void get_search_path (out string[] path); public bool has_icon (string icon_name); public GLib.List list_contexts (); public GLib.List list_icons (string? context); public Gdk.Pixbuf? load_icon (string icon_name, int size, Gtk.IconLookupFlags flags) throws GLib.Error; public Gdk.Pixbuf? load_icon_for_scale (string icon_name, int size, int scale, Gtk.IconLookupFlags flags) throws GLib.Error; public Cairo.Surface? load_surface (string icon_name, int size, int scale, Gdk.Window for_window, Gtk.IconLookupFlags flags) throws GLib.Error; public Gtk.IconInfo? lookup_by_gicon (GLib.Icon icon, int size, Gtk.IconLookupFlags flags); public Gtk.IconInfo? lookup_by_gicon_for_scale (GLib.Icon icon, int size, int scale, Gtk.IconLookupFlags flags); public Gtk.IconInfo? lookup_icon (string icon_name, int size, Gtk.IconLookupFlags flags); public Gtk.IconInfo? lookup_icon_for_scale (string icon_name, int size, int scale, Gtk.IconLookupFlags flags); public void prepend_search_path (string path); public bool rescan_if_needed (); public void set_custom_theme (string theme_name); public void set_screen (Gdk.Screen screen); public void set_search_path (string[] path, int n_elements); public virtual signal void changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class IconView : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.CellLayout, Gtk.Scrollable { [CCode (has_construct_function = false, type = "GtkWidget*")] public IconView (); public void convert_widget_to_bin_window_coords (int wx, int wy, int bx, int by); public unowned Cairo.Surface create_drag_icon (Gtk.TreePath path); public void enable_model_drag_dest (Gtk.TargetEntry[] targets, Gdk.DragAction actions); public void enable_model_drag_source (Gdk.ModifierType start_button_mask, Gtk.TargetEntry[] targets, Gdk.DragAction actions); public bool get_activate_on_single_click (); public bool get_cell_rect (Gtk.TreePath path, Gtk.CellRenderer? cell, out Gdk.Rectangle rect); public int get_column_spacing (); public int get_columns (); public bool get_cursor (out Gtk.TreePath path, out unowned Gtk.CellRenderer cell); public bool get_dest_item_at_pos (int drag_x, int drag_y, out unowned Gtk.TreePath path, Gtk.IconViewDropPosition pos); public void get_drag_dest_item (out unowned Gtk.TreePath path, Gtk.IconViewDropPosition pos); public bool get_item_at_pos (int x, int y, out unowned Gtk.TreePath path, out unowned Gtk.CellRenderer cell); public int get_item_column (Gtk.TreePath path); public Gtk.Orientation get_item_orientation (); public int get_item_padding (); public int get_item_row (Gtk.TreePath path); public int get_item_width (); public int get_margin (); public int get_markup_column (); public unowned Gtk.TreeModel get_model (); public unowned Gtk.TreePath get_path_at_pos (int x, int y); public int get_pixbuf_column (); public bool get_reorderable (); public int get_row_spacing (); public GLib.List get_selected_items (); public Gtk.SelectionMode get_selection_mode (); public int get_spacing (); public int get_text_column (); public int get_tooltip_column (); public bool get_tooltip_context (out int x, out int y, bool keyboard_tip, out unowned Gtk.TreeModel model, out unowned Gtk.TreePath path, out Gtk.TreeIter iter); public bool get_visible_range (out Gtk.TreePath start_path, out Gtk.TreePath end_path); public bool path_is_selected (Gtk.TreePath path); public void scroll_to_path (Gtk.TreePath path, bool use_align, float row_align, float col_align); public void select_path (Gtk.TreePath path); public void selected_foreach (Gtk.IconViewForeachFunc func); public void set_activate_on_single_click (bool single); public void set_column_spacing (int column_spacing); public void set_columns (int columns); public void set_cursor (Gtk.TreePath path, Gtk.CellRenderer? cell, bool start_editing); public void set_drag_dest_item (Gtk.TreePath path, Gtk.IconViewDropPosition pos); public void set_item_orientation (Gtk.Orientation orientation); public void set_item_padding (int item_padding); public void set_item_width (int item_width); public void set_margin (int margin); public void set_markup_column (int column); public void set_model (Gtk.TreeModel? model); public void set_pixbuf_column (int column); public void set_reorderable (bool reorderable); public void set_row_spacing (int row_spacing); public void set_selection_mode (Gtk.SelectionMode mode); public void set_spacing (int spacing); public void set_text_column (int column); public void set_tooltip_cell (Gtk.Tooltip tooltip, Gtk.TreePath path, Gtk.CellRenderer cell); public void set_tooltip_column (int column); public void set_tooltip_item (Gtk.Tooltip tooltip, Gtk.TreePath path); public void unselect_path (Gtk.TreePath path); public void unset_model_drag_dest (); public void unset_model_drag_source (); [CCode (has_construct_function = false, type = "GtkWidget*")] public IconView.with_area (Gtk.CellArea area); [CCode (has_construct_function = false, type = "GtkWidget*")] public IconView.with_model (Gtk.TreeModel model); public bool activate_on_single_click { get; set; } [NoAccessorMethod] public Gtk.CellArea cell_area { owned get; construct; } public int column_spacing { get; set; } public int columns { get; set; } public Gtk.Orientation item_orientation { get; set; } public int item_padding { get; set; } public int item_width { get; set; } public int margin { get; set; } public int markup_column { get; set; } public Gtk.TreeModel model { get; set; } public int pixbuf_column { get; set; } public bool reorderable { get; set; } public int row_spacing { get; set; } public Gtk.SelectionMode selection_mode { get; set; } public int spacing { get; set; } public int text_column { get; set; } public int tooltip_column { get; set; } public virtual signal bool activate_cursor_item (); [HasEmitter] public virtual signal void item_activated (Gtk.TreePath path); public virtual signal bool move_cursor (Gtk.MovementStep step, int count); public virtual signal void select_all (); public virtual signal void select_cursor_item (); public virtual signal void selection_changed (); public virtual signal void toggle_cursor_item (); public virtual signal void unselect_all (); } [CCode (cheader_filename = "gtk/gtk.h")] public class IconViewAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Selection { [CCode (has_construct_function = false)] protected IconViewAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Image : Gtk.Misc, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Image (); public void clear (); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_animation (Gdk.PixbufAnimation animation); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_file (string filename); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_gicon (GLib.Icon icon, Gtk.IconSize size); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_icon_name (string icon_name, Gtk.IconSize size); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_icon_set (Gtk.IconSet icon_set, Gtk.IconSize size); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_pixbuf (Gdk.Pixbuf pixbuf); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_resource (string resource_path); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_stock (string stock_id, Gtk.IconSize size); [CCode (has_construct_function = false, type = "GtkWidget*")] public Image.from_surface (Cairo.Surface surface); public unowned Gdk.PixbufAnimation get_animation (); public void get_gicon (out unowned GLib.Icon gicon, Gtk.IconSize size); public void get_icon_name (out unowned string icon_name, out Gtk.IconSize size); public void get_icon_set (out unowned Gtk.IconSet icon_set, out Gtk.IconSize size); public unowned Gdk.Pixbuf get_pixbuf (); public int get_pixel_size (); public void get_stock (out string stock_id, out Gtk.IconSize size); public Gtk.ImageType get_storage_type (); public void set_from_animation (Gdk.PixbufAnimation animation); public void set_from_file (string filename); public void set_from_gicon (GLib.Icon icon, Gtk.IconSize size); public void set_from_icon_name (string icon_name, Gtk.IconSize size); public void set_from_icon_set (Gtk.IconSet icon_set, Gtk.IconSize size); public void set_from_pixbuf (Gdk.Pixbuf pixbuf); public void set_from_resource (string resource_path); public void set_from_stock (string stock_id, Gtk.IconSize size); public void set_from_surface (Cairo.Surface surface); public void set_pixel_size (int pixel_size); [NoAccessorMethod] public string file { owned get; set; } [NoAccessorMethod] public GLib.Icon gicon { owned get; set; } [NoAccessorMethod] public string icon_name { owned get; set; } [NoAccessorMethod] public Gtk.IconSet icon_set { owned get; set; } [NoAccessorMethod] public int icon_size { get; set; } [NoAccessorMethod] public Gdk.Pixbuf pixbuf { owned get; set; } [NoAccessorMethod] public Gdk.PixbufAnimation pixbuf_animation { owned get; set; } public int pixel_size { get; set; } [NoAccessorMethod] public string resource { owned get; set; } [NoAccessorMethod] public string stock { owned get; set; } public Gtk.ImageType storage_type { get; } [NoAccessorMethod] public Cairo.Surface surface { owned get; set; } [NoAccessorMethod] public bool use_fallback { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class ImageAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Image { [CCode (has_construct_function = false)] protected ImageAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ImageCellAccessible : Gtk.RendererCellAccessible, Atk.Action, Atk.Component, Atk.Image { [CCode (has_construct_function = false)] protected ImageCellAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ImageMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ImageMenuItem (); [CCode (has_construct_function = false, type = "GtkWidget*")] public ImageMenuItem.from_stock (string stock_id, Gtk.AccelGroup? accel_group); public bool get_always_show_image (); public unowned Gtk.Widget get_image (); public bool get_use_stock (); public void set_accel_group (Gtk.AccelGroup accel_group); public void set_always_show_image (bool always_show); public void set_image (Gtk.Widget image); public void set_use_stock (bool use_stock); [CCode (has_construct_function = false, type = "GtkWidget*")] public ImageMenuItem.with_label (string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public ImageMenuItem.with_mnemonic (string label); public Gtk.AccelGroup accel_group { set; } public bool always_show_image { get; set construct; } public Gtk.Widget image { get; set; } public bool use_stock { get; set construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class InfoBar : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public InfoBar (); public void add_action_widget (Gtk.Widget child, int response_id); public unowned Gtk.Button add_button (string button_text, int response_id); public void add_buttons (...); public unowned Gtk.Widget get_action_area (); public unowned Gtk.Container get_content_area (); public Gtk.MessageType get_message_type (); public bool get_show_close_button (); public void set_default_response (int response_id); public void set_message_type (Gtk.MessageType message_type); public void set_response_sensitive (int response_id, bool setting); public void set_show_close_button (bool setting); [CCode (has_construct_function = false, type = "GtkWidget*")] public InfoBar.with_buttons (...); public Gtk.MessageType message_type { get; set construct; } public bool show_close_button { get; set construct; } public virtual signal void close (); [HasEmitter] public virtual signal void response (int response_id); } [CCode (cheader_filename = "gtk/gtk.h")] public class Invisible : Gtk.Widget, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Invisible (); [CCode (has_construct_function = false, type = "GtkWidget*")] public Invisible.for_screen (Gdk.Screen screen); public unowned Gdk.Screen get_screen (); public void set_screen (Gdk.Screen screen); public Gdk.Screen screen { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Label : Gtk.Misc, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Label (string? str); public double get_angle (); public unowned Pango.AttrList get_attributes (); public unowned string get_current_uri (); public Pango.EllipsizeMode get_ellipsize (); public Gtk.Justification get_justify (); public unowned string get_label (); public unowned Pango.Layout get_layout (); public void get_layout_offsets (out int x, out int y); public bool get_line_wrap (); public Pango.WrapMode get_line_wrap_mode (); public int get_lines (); public int get_max_width_chars (); public uint get_mnemonic_keyval (); public unowned Gtk.Widget get_mnemonic_widget (); public bool get_selectable (); public bool get_selection_bounds (out int start, out int end); public bool get_single_line_mode (); public unowned string get_text (); public bool get_track_visited_links (); public bool get_use_markup (); public bool get_use_underline (); public int get_width_chars (); public void select_region (int start_offset, int end_offset); public void set_angle (double angle); public void set_attributes (Pango.AttrList attrs); public void set_ellipsize (Pango.EllipsizeMode mode); public void set_justify (Gtk.Justification jtype); public void set_label (string str); public void set_line_wrap (bool wrap); public void set_line_wrap_mode (Pango.WrapMode wrap_mode); public void set_lines (int lines); public void set_markup (string str); public void set_markup_with_mnemonic (string str); public void set_max_width_chars (int n_chars); public void set_mnemonic_widget (Gtk.Widget widget); public void set_pattern (string pattern); public void set_selectable (bool setting); public void set_single_line_mode (bool single_line_mode); public void set_text (string str); public void set_text_with_mnemonic (string str); public void set_track_visited_links (bool track_links); public void set_use_markup (bool setting); public void set_use_underline (bool setting); public void set_width_chars (int n_chars); [CCode (has_construct_function = false, type = "GtkWidget*")] public Label.with_mnemonic (string str); public double angle { get; set; } public Pango.AttrList attributes { get; set; } [NoAccessorMethod] public int cursor_position { get; } public Pango.EllipsizeMode ellipsize { get; set; } public Gtk.Justification justify { get; set; } public string label { get; set; } public int lines { get; set; } public int max_width_chars { get; set; } public uint mnemonic_keyval { get; } public Gtk.Widget mnemonic_widget { get; set; } public string pattern { set; } public bool selectable { get; set; } [NoAccessorMethod] public int selection_bound { get; } public bool single_line_mode { get; set; } public bool track_visited_links { get; set; } public bool use_markup { get; set; } public bool use_underline { get; set; } public int width_chars { get; set; } [NoAccessorMethod] public bool wrap { get; set; } [NoAccessorMethod] public Pango.WrapMode wrap_mode { get; set; } public virtual signal void activate_current_link (); public virtual signal bool activate_link (string uri); public virtual signal void copy_clipboard (); public virtual signal void move_cursor (Gtk.MovementStep step, int count, bool extend_selection); public virtual signal void populate_popup (Gtk.Menu menu); } [CCode (cheader_filename = "gtk/gtk.h")] public class LabelAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Text { [CCode (has_construct_function = false)] protected LabelAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class LabelSelectionInfo { } [CCode (cheader_filename = "gtk/gtk.h")] public class Layout : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Scrollable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Layout (Gtk.Adjustment? hadjustment = null, Gtk.Adjustment? vadjustment = null); public unowned Gdk.Window get_bin_window (); public unowned Gtk.Adjustment get_hadjustment (); public void get_size (out uint width, out uint height); public unowned Gtk.Adjustment get_vadjustment (); public void move (Gtk.Widget child_widget, int x, int y); public void put (Gtk.Widget child_widget, int x, int y); public void set_hadjustment (Gtk.Adjustment adjustment); public void set_size (uint width, uint height); public void set_vadjustment (Gtk.Adjustment adjustment); [NoAccessorMethod] public uint height { get; set; } [NoAccessorMethod] public uint width { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class LevelBar : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public LevelBar (); public void add_offset_value (string name, double value); [CCode (has_construct_function = false, type = "GtkWidget*")] public LevelBar.for_interval (double min_value, double max_value); public bool get_inverted (); public double get_max_value (); public double get_min_value (); public Gtk.LevelBarMode get_mode (); public bool get_offset_value (string name, double value); public double get_value (); public void remove_offset_value (string name); public void set_inverted (bool inverted); public void set_max_value (double value); public void set_min_value (double value); public void set_mode (Gtk.LevelBarMode mode); public void set_value (double value); public bool inverted { get; set; } public double max_value { get; set; } public double min_value { get; set; } public Gtk.LevelBarMode mode { get; set; } public double value { get; set; } public virtual signal void offset_changed (string name); } [CCode (cheader_filename = "gtk/gtk.h")] public class LevelBarAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Value { [CCode (has_construct_function = false)] protected LevelBarAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class LinkButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public LinkButton (string uri); public unowned string get_uri (); public bool get_visited (); public void set_uri (string uri); public void set_visited (bool visited); [CCode (has_construct_function = false, type = "GtkWidget*")] public LinkButton.with_label (string uri, string label); public string uri { get; set; } public bool visited { get; set; } public virtual signal bool activate_link (); } [CCode (cheader_filename = "gtk/gtk.h")] public class LinkButtonAccessible : Gtk.ButtonAccessible, Atk.Component, Atk.Action, Atk.Image, Atk.HyperlinkImpl { [CCode (has_construct_function = false)] protected LinkButtonAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ListBox : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ListBox (); public void drag_highlight_row (Gtk.ListBoxRow row); public void drag_unhighlight_row (); public bool get_activate_on_single_click (); public unowned Gtk.Adjustment get_adjustment (); public unowned Gtk.ListBoxRow get_row_at_index (int index_); public unowned Gtk.ListBoxRow get_row_at_y (int y); public unowned Gtk.ListBoxRow get_selected_row (); public Gtk.SelectionMode get_selection_mode (); public void insert (Gtk.Widget child, int position); public void invalidate_filter (); public void invalidate_headers (); public void invalidate_sort (); public void prepend (Gtk.Widget child); public void select_row (Gtk.ListBoxRow? row); public void set_activate_on_single_click (bool single); public void set_adjustment (Gtk.Adjustment? adjustment); public void set_filter_func (owned Gtk.ListBoxFilterFunc? filter_func); public void set_header_func (owned Gtk.ListBoxUpdateHeaderFunc? update_header); public void set_placeholder (Gtk.Widget? placeholder); public void set_selection_mode (Gtk.SelectionMode mode); public void set_sort_func (owned Gtk.ListBoxSortFunc? sort_func); public bool activate_on_single_click { get; set; } public Gtk.SelectionMode selection_mode { get; set; } public virtual signal void activate_cursor_row (); public virtual signal void move_cursor (Gtk.MovementStep step, int count); public virtual signal void row_activated (Gtk.ListBoxRow row); public virtual signal void row_selected (Gtk.ListBoxRow row); public virtual signal void toggle_cursor_row (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ListBoxAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Selection { [CCode (has_construct_function = false)] protected ListBoxAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ListBoxRow : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ListBoxRow (); public void changed (); public unowned Gtk.Widget get_header (); public int get_index (); public void set_header (Gtk.Widget? header); public virtual signal void activate (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ListBoxRowAccessible : Gtk.ContainerAccessible, Atk.Component { [CCode (has_construct_function = false)] protected ListBoxRowAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ListStore : GLib.Object, Gtk.TreeModel, Gtk.TreeDragSource, Gtk.TreeDragDest, Gtk.TreeSortable, Gtk.Buildable { [CCode (has_construct_function = false, sentinel = "")] public ListStore (int n_columns, ...); public void append (out Gtk.TreeIter iter); public void clear (); public void insert (out Gtk.TreeIter iter, int position); public void insert_after (out Gtk.TreeIter iter, Gtk.TreeIter? sibling); public void insert_before (out Gtk.TreeIter iter, Gtk.TreeIter? sibling); [CCode (sentinel = "-1")] public void insert_with_values (out Gtk.TreeIter iter, int position, ...); public void insert_with_valuesv (out Gtk.TreeIter iter, int position, int columns, GLib.Value[] values); public bool iter_is_valid (Gtk.TreeIter iter); public void move_after (ref Gtk.TreeIter iter, Gtk.TreeIter? position); public void move_before (ref Gtk.TreeIter iter, Gtk.TreeIter? position); [CCode (cname = "gtk_list_store_newv", has_construct_function = false)] public ListStore.newv ([CCode (array_length_pos = 0.9)] GLib.Type[] types); public void prepend (out Gtk.TreeIter iter); public bool remove (Gtk.TreeIter iter); public void reorder (int new_order); [CCode (sentinel = "-1")] public void @set (Gtk.TreeIter iter, ...); public void set_column_types ([CCode (array_length_pos = 0.9)] GLib.Type[] types); public void set_valist (Gtk.TreeIter iter, void* var_args); public void set_value (Gtk.TreeIter iter, int column, GLib.Value value); public void set_valuesv (Gtk.TreeIter iter, int columns, GLib.Value[] values); public void swap (Gtk.TreeIter a, Gtk.TreeIter b); } [CCode (cheader_filename = "gtk/gtk.h")] public class LockButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public LockButton (GLib.Permission permission); public unowned GLib.Permission get_permission (); [NoWrapper] public virtual void reserved0 (); [NoWrapper] public virtual void reserved1 (); [NoWrapper] public virtual void reserved2 (); [NoWrapper] public virtual void reserved3 (); [NoWrapper] public virtual void reserved4 (); [NoWrapper] public virtual void reserved5 (); [NoWrapper] public virtual void reserved6 (); [NoWrapper] public virtual void reserved7 (); public void set_permission (GLib.Permission permission); public GLib.Permission permission { get; set; } [NoAccessorMethod] public string text_lock { owned get; set construct; } [NoAccessorMethod] public string text_unlock { owned get; set construct; } [NoAccessorMethod] public string tooltip_lock { owned get; set construct; } [NoAccessorMethod] public string tooltip_not_authorized { owned get; set construct; } [NoAccessorMethod] public string tooltip_unlock { owned get; set construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class LockButtonAccessible : Gtk.ButtonAccessible, Atk.Component, Atk.Action, Atk.Image { [CCode (has_construct_function = false)] protected LockButtonAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Menu : Gtk.MenuShell, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Menu (); public void attach (Gtk.Widget child, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach); public void attach_to_widget (Gtk.Widget attach_widget, Gtk.MenuDetachFunc? detacher); public void detach (); [CCode (has_construct_function = false, type = "GtkWidget*")] public Menu.from_model (GLib.MenuModel model); public unowned Gtk.AccelGroup get_accel_group (); public unowned string get_accel_path (); public unowned Gtk.Widget get_active (); public unowned Gtk.Widget get_attach_widget (); public static unowned GLib.List get_for_attach_widget (Gtk.Widget widget); public int get_monitor (); public bool get_reserve_toggle_size (); public bool get_tearoff_state (); public unowned string get_title (); public void popdown (); public void popup (Gtk.Widget? parent_menu_shell, Gtk.Widget? parent_menu_item, Gtk.MenuPositionFunc? func, uint button, uint32 activate_time); public void popup_for_device (Gdk.Device device, Gtk.Widget parent_menu_shell, Gtk.Widget parent_menu_item, Gtk.MenuPositionFunc func, void* data, GLib.DestroyNotify destroy, uint button, uint32 activate_time); public void reorder_child (Gtk.Widget child, int position); public void reposition (); public void set_accel_group (Gtk.AccelGroup accel_group); public void set_accel_path (string accel_path); public void set_active (uint index); public void set_monitor (int monitor_num); public void set_reserve_toggle_size (bool reserve_toggle_size); public void set_screen (Gdk.Screen? screen); public void set_tearoff_state (bool torn_off); public void set_title (string title); public Gtk.AccelGroup accel_group { get; set; } public string accel_path { get; set; } public int active { get; set; } [NoAccessorMethod] public Gtk.Widget attach_widget { owned get; set; } public int monitor { get; set; } public bool reserve_toggle_size { get; set; } public bool tearoff_state { get; set; } [NoAccessorMethod] public string tearoff_title { owned get; set; } public virtual signal void move_scroll (Gtk.ScrollType p0); } [CCode (cheader_filename = "gtk/gtk.h")] public class MenuAccessible : Gtk.MenuShellAccessible, Atk.Component, Atk.Selection { [CCode (has_construct_function = false)] protected MenuAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class MenuBar : Gtk.MenuShell, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public MenuBar (); [CCode (has_construct_function = false, type = "GtkWidget*")] public MenuBar.from_model (GLib.MenuModel model); public Gtk.PackDirection get_child_pack_direction (); public Gtk.PackDirection get_pack_direction (); public void set_child_pack_direction (Gtk.PackDirection child_pack_dir); public void set_pack_direction (Gtk.PackDirection pack_dir); public Gtk.PackDirection child_pack_direction { get; set; } public Gtk.PackDirection pack_direction { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class MenuButton : Gtk.ToggleButton, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public MenuButton (); public unowned Gtk.Widget get_align_widget (); public Gtk.ArrowType get_direction (); public unowned GLib.MenuModel get_menu_model (); public unowned Gtk.Menu get_popup (); public void set_align_widget (Gtk.Widget align_widget); public void set_direction (Gtk.ArrowType direction); public void set_menu_model (GLib.MenuModel menu_model); public void set_popup (Gtk.Widget popup); public Gtk.Container align_widget { get; set; } public Gtk.ArrowType direction { get; set; } public GLib.MenuModel menu_model { get; set; } public Gtk.Menu popup { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class MenuItem : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkWidget*")] public MenuItem (); public unowned string get_accel_path (); public virtual unowned string get_label (); public bool get_reserve_indicator (); [Deprecated (replacement = "Widget.get_hexpand and Widget.get_halign", since = "3.2")] public bool get_right_justified (); public unowned Gtk.Widget get_submenu (); public bool get_use_underline (); public void set_accel_path (string accel_path); public virtual void set_label (string label); public void set_reserve_indicator (bool reserve); [Deprecated (replacement = "Widget.set_hexpand and Widget.set_halign", since = "3.2")] public void set_right_justified (bool right_justified); public void set_submenu (Gtk.Widget submenu); public void set_use_underline (bool setting); [CCode (has_construct_function = false, type = "GtkWidget*")] public MenuItem.with_label (string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public MenuItem.with_mnemonic (string label); public string accel_path { get; set; } public string label { get; set; } public bool right_justified { get; set; } public Gtk.Menu submenu { get; set; } public bool use_underline { get; set; } [HasEmitter] public virtual signal void activate (); public virtual signal void activate_item (); public virtual signal void deselect (); public virtual signal void select (); [HasEmitter] public virtual signal void toggle_size_allocate (int allocation); [HasEmitter] public virtual signal void toggle_size_request (void* requisition); } [CCode (cheader_filename = "gtk/gtk.h")] public class MenuItemAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Action, Atk.Selection { [CCode (has_construct_function = false)] protected MenuItemAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public abstract class MenuShell : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false)] protected MenuShell (); public void activate_item (Gtk.Widget menu_item, bool force_deactivate); public void append ([CCode (type = "GtkWidget*")] Gtk.MenuItem child); public void bind_model (GLib.MenuModel model, string action_namespace, bool with_separators); public void deselect (); public unowned Gtk.Widget get_parent_shell (); [NoWrapper] public virtual int get_popup_delay (); public unowned Gtk.Widget get_selected_item (); public bool get_take_focus (); public void prepend (Gtk.Widget child); public void select_first (bool search_sensitive); public virtual void select_item (Gtk.Widget menu_item); public void set_take_focus (bool take_focus); public bool take_focus { get; set; } public virtual signal void activate_current (bool force_hide); [HasEmitter] public virtual signal void cancel (); public virtual signal void cycle_focus (Gtk.DirectionType p0); [HasEmitter] public virtual signal void deactivate (); [HasEmitter] public virtual signal void insert (Gtk.Widget child, int position); public virtual signal void move_current (Gtk.MenuDirectionType direction); public virtual signal bool move_selected (int distance); public virtual signal void selection_done (); } [CCode (cheader_filename = "gtk/gtk.h")] public class MenuShellAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Selection { [CCode (has_construct_function = false)] protected MenuShellAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class MenuToolButton : Gtk.ToolButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkToolItem*")] public MenuToolButton (Gtk.Widget? icon_widget, string? label); [CCode (has_construct_function = false, type = "GtkToolItem*")] public MenuToolButton.from_stock (string stock_id); public unowned Gtk.Widget get_menu (); public void set_arrow_tooltip_markup (string markup); public void set_arrow_tooltip_text (string text); public void set_menu (Gtk.Widget menu); public Gtk.Menu menu { get; set; } public virtual signal void show_menu (); } [CCode (cheader_filename = "gtk/gtk.h")] public class MessageDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] [PrintfFormat] public MessageDialog (Gtk.Window? parent, Gtk.DialogFlags flags, Gtk.MessageType type, Gtk.ButtonsType buttons, string message_format, ...); [PrintfFormat] public void format_secondary_markup (string message_format, ...); [PrintfFormat] public void format_secondary_text (string message_format, ...); public unowned Gtk.Widget get_image (); public unowned Gtk.Widget get_message_area (); public void set_image (Gtk.Widget image); public void set_markup (string str); [CCode (has_construct_function = false, type = "GtkWidget*")] [PrintfFormat] public MessageDialog.with_markup (Gtk.Window? parent, Gtk.DialogFlags flags, Gtk.MessageType type, Gtk.ButtonsType buttons, string message_format, ...); [NoAccessorMethod] public Gtk.ButtonsType buttons { construct; } public Gtk.Widget image { get; set; } public Gtk.Widget message_area { get; } [NoAccessorMethod] public Gtk.MessageType message_type { get; set construct; } [NoAccessorMethod] public string secondary_text { owned get; set; } [NoAccessorMethod] public bool secondary_use_markup { get; set; } [NoAccessorMethod] public string text { owned get; set; } [NoAccessorMethod] public bool use_markup { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Misc : Gtk.Widget, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false)] protected Misc (); public void get_alignment (out float xalign, out float yalign); public void get_padding (out int xpad, out int ypad); public void set_alignment (float xalign, float yalign); public void set_padding (int xpad, int ypad); [NoAccessorMethod] public float xalign { get; set; } [NoAccessorMethod] public int xpad { get; set; } [NoAccessorMethod] public float yalign { get; set; } [NoAccessorMethod] public int ypad { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class MountOperation : GLib.MountOperation { [CCode (has_construct_function = false, type = "GMountOperation*")] public MountOperation (Gtk.Window? parent); public unowned Gtk.Window get_parent (); public unowned Gdk.Screen get_screen (); public void set_parent (Gtk.Window parent); public void set_screen (Gdk.Screen screen); [NoAccessorMethod] public bool is_showing { get; } public Gtk.Window parent { get; set; } public Gdk.Screen screen { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Notebook : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Notebook (); public int append_page (Gtk.Widget child, Gtk.Widget? tab_label = null); public int append_page_menu (Gtk.Widget child, Gtk.Widget? tab_label, Gtk.Widget? menu_label); public unowned Gtk.Widget get_action_widget (Gtk.PackType pack_type); public int get_current_page (); public unowned string get_group_name (); public unowned Gtk.Widget get_menu_label (Gtk.Widget child); public unowned string get_menu_label_text (Gtk.Widget child); public int get_n_pages (); public unowned Gtk.Widget get_nth_page (int page_num); public bool get_scrollable (); public bool get_show_border (); public bool get_show_tabs (); public bool get_tab_detachable (Gtk.Widget child); [Deprecated (since = "3.4")] public uint16 get_tab_hborder (); public unowned Gtk.Widget get_tab_label (Gtk.Widget child); public unowned string get_tab_label_text (Gtk.Widget child); public Gtk.PositionType get_tab_pos (); public bool get_tab_reorderable (Gtk.Widget child); [Deprecated (since = "3.4")] public uint16 get_tab_vborder (); public int insert_page (Gtk.Widget child, Gtk.Widget? tab_label, int position); [CCode (vfunc_name = "insert_page")] public virtual int insert_page_menu (Gtk.Widget child, Gtk.Widget? tab_label, Gtk.Widget? menu_label, int position); public void next_page (); public int page_num (Gtk.Widget child); public void popup_disable (); public void popup_enable (); public int prepend_page (Gtk.Widget child, Gtk.Widget? tab_label = null); public int prepend_page_menu (Gtk.Widget child, Gtk.Widget? tab_label, Gtk.Widget? menu_label); public void prev_page (); public void remove_page (int page_num); public void reorder_child (Gtk.Widget child, int position); public void set_action_widget (Gtk.Widget widget, Gtk.PackType pack_type); public void set_current_page (int page_num); public void set_group_name (string group_name); public void set_menu_label (Gtk.Widget child, Gtk.Widget? menu_label); public void set_menu_label_text (Gtk.Widget child, string menu_text); public void set_scrollable (bool scrollable); public void set_show_border (bool show_border); public void set_show_tabs (bool show_tabs); public void set_tab_detachable (Gtk.Widget child, bool detachable); public void set_tab_label (Gtk.Widget child, Gtk.Widget? tab_label); public void set_tab_label_text (Gtk.Widget child, string tab_text); public void set_tab_pos (Gtk.PositionType pos); public void set_tab_reorderable (Gtk.Widget child, bool reorderable); [NoAccessorMethod] public bool enable_popup { get; set; } public string group_name { get; set; } [NoAccessorMethod] public int page { get; set; } public bool scrollable { get; set; } public bool show_border { get; set; } public bool show_tabs { get; set; } public Gtk.PositionType tab_pos { get; set; } public virtual signal bool change_current_page (int offset); public virtual signal unowned Gtk.Notebook create_window (Gtk.Widget page, int x, int y); public virtual signal bool focus_tab (Gtk.NotebookTab type); public virtual signal void move_focus_out (Gtk.DirectionType direction); public virtual signal void page_added (Gtk.Widget child, uint page_num); public virtual signal void page_removed (Gtk.Widget child, uint page_num); public virtual signal void page_reordered (Gtk.Widget child, uint page_num); public virtual signal bool reorder_tab (Gtk.DirectionType direction, bool move_to_last); public virtual signal bool select_page (bool move_focus); public virtual signal void switch_page (Gtk.Widget page, uint page_num); } [CCode (cheader_filename = "gtk/gtk.h")] public class NotebookAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Selection { [CCode (has_construct_function = false)] protected NotebookAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class NotebookPageAccessible : Atk.Object, Atk.Component { [CCode (has_construct_function = false, type = "AtkObject*")] public NotebookPageAccessible (Gtk.NotebookAccessible notebook, Gtk.Widget child); public void invalidate (); } [CCode (cheader_filename = "gtk/gtk.h")] public class NumerableIcon : GLib.EmblemedIcon, GLib.Icon { [CCode (has_construct_function = false, type = "GIcon*")] public NumerableIcon (GLib.Icon base_icon); public unowned GLib.Icon get_background_gicon (); public unowned string get_background_icon_name (); public int get_count (); public unowned string get_label (); public unowned Gtk.StyleContext get_style_context (); public void set_background_gicon (GLib.Icon icon); public void set_background_icon_name (string icon_name); public void set_count (int count); public void set_label (string label); public void set_style_context (Gtk.StyleContext style); [CCode (has_construct_function = false, type = "GIcon*")] public NumerableIcon.with_style_context (GLib.Icon base_icon, Gtk.StyleContext context); [NoAccessorMethod] public GLib.Icon background_icon { owned get; set; } public string background_icon_name { get; set; } public int count { get; set; } public string label { get; set; } public Gtk.StyleContext style_context { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class OffscreenWindow : Gtk.Window, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public OffscreenWindow (); public unowned Gdk.Pixbuf get_pixbuf (); public unowned Cairo.Surface get_surface (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Overlay : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Overlay (); public void add_overlay (Gtk.Widget widget); public virtual signal bool get_child_position (Gtk.Widget widget, Gdk.Rectangle allocation); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class PageRange { public int end; public int start; } [CCode (cheader_filename = "gtk/gtk.h")] public class PageSetup : GLib.Object { [CCode (has_construct_function = false)] public PageSetup (); public Gtk.PageSetup copy (); [CCode (has_construct_function = false)] public PageSetup.from_file (string file_name) throws GLib.Error; [CCode (has_construct_function = false)] public PageSetup.from_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error; public double get_bottom_margin (Gtk.Unit unit); public double get_left_margin (Gtk.Unit unit); public Gtk.PageOrientation get_orientation (); public double get_page_height (Gtk.Unit unit); public double get_page_width (Gtk.Unit unit); public double get_paper_height (Gtk.Unit unit); public unowned Gtk.PaperSize get_paper_size (); public double get_paper_width (Gtk.Unit unit); public double get_right_margin (Gtk.Unit unit); public double get_top_margin (Gtk.Unit unit); public bool load_file (string file_name) throws GLib.Error; public bool load_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error; public void set_bottom_margin (double margin, Gtk.Unit unit); public void set_left_margin (double margin, Gtk.Unit unit); public void set_orientation (Gtk.PageOrientation orientation); public void set_paper_size (Gtk.PaperSize size); public void set_paper_size_and_default_margins (Gtk.PaperSize size); public void set_right_margin (double margin, Gtk.Unit unit); public void set_top_margin (double margin, Gtk.Unit unit); public bool to_file (string file_name) throws GLib.Error; public void to_key_file (GLib.KeyFile key_file, string group_name); } [CCode (cheader_filename = "gtk/gtk.h")] public class Paned : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Paned (Gtk.Orientation orientation); public void add1 (Gtk.Widget child); public void add2 (Gtk.Widget child); public unowned Gtk.Widget get_child1 (); public unowned Gtk.Widget get_child2 (); public unowned Gdk.Window get_handle_window (); public int get_position (); public void pack1 (Gtk.Widget child, bool resize, bool shrink); public void pack2 (Gtk.Widget child, bool resize, bool shrink); public void set_position (int position); [NoAccessorMethod] public int max_position { get; } [NoAccessorMethod] public int min_position { get; } public int position { get; set; } [NoAccessorMethod] public bool position_set { get; set; } public virtual signal bool accept_position (); public virtual signal bool cancel_position (); public virtual signal bool cycle_child_focus (bool reverse); public virtual signal bool cycle_handle_focus (bool reverse); public virtual signal bool move_handle (Gtk.ScrollType scroll); public virtual signal bool toggle_handle_focus (); } [CCode (cheader_filename = "gtk/gtk.h")] public class PanedAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Value { [CCode (has_construct_function = false)] protected PanedAccessible (); } [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_paper_size_copy", type_id = "gtk_paper_size_get_type ()")] [Compact] public class PaperSize { [CCode (has_construct_function = false)] public PaperSize (string name); public Gtk.PaperSize copy (); [CCode (has_construct_function = false)] public PaperSize.custom (string name, string display_name, double width, double height, Gtk.Unit unit); [CCode (has_construct_function = false)] public PaperSize.from_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error; [CCode (has_construct_function = false)] public PaperSize.from_ppd (string ppd_name, string ppd_display_name, double width, double height); public static unowned string get_default (); public double get_default_bottom_margin (Gtk.Unit unit); public double get_default_left_margin (Gtk.Unit unit); public double get_default_right_margin (Gtk.Unit unit); public double get_default_top_margin (Gtk.Unit unit); public unowned string get_display_name (); public double get_height (Gtk.Unit unit); public unowned string get_name (); public static GLib.List get_paper_sizes (bool include_custom); public unowned string get_ppd_name (); public double get_width (Gtk.Unit unit); public bool is_custom (); public bool is_equal (Gtk.PaperSize size2); public void set_size (double width, double height, Gtk.Unit unit); public void to_key_file (GLib.KeyFile key_file, string group_name); } [CCode (cheader_filename = "gtk/gtk.h")] public class PlacesSidebar : Gtk.ScrolledWindow, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public PlacesSidebar (); public void add_shortcut (GLib.File location); public unowned GLib.File get_location (); public unowned GLib.File get_nth_bookmark (int n); public Gtk.PlacesOpenFlags get_open_flags (); public bool get_show_connect_to_server (); public bool get_show_desktop (); public unowned GLib.SList list_shortcuts (); public void remove_shortcut (GLib.File location); public void set_location (GLib.File location); public void set_open_flags (Gtk.PlacesOpenFlags flags); public void set_show_connect_to_server (bool show_connect_to_server); public void set_show_desktop (bool show_desktop); public GLib.File location { get; set; } public Gtk.PlacesOpenFlags open_flags { get; set; } public bool show_connect_to_server { get; set; } public bool show_desktop { get; set; } public virtual signal int drag_action_ask (int p0); public virtual signal int drag_action_requested (Gdk.DragContext p0, GLib.Object p1, void* p2); public virtual signal void drag_perform_drop (GLib.Object p0, void* p1, int p2); public virtual signal void open_location (GLib.Object p0, Gtk.PlacesOpenFlags p1); public virtual signal void populate_popup (GLib.Object p0, GLib.Object p1, GLib.Object p2); public virtual signal void show_error_message (string p0, string p1); } [CCode (cheader_filename = "gtk/gtkx.h")] public class Plug : Gtk.Window, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Plug (X.Window socket_id); public void @construct (X.Window socket_id); public void construct_for_display (Gdk.Display display, X.Window socket_id); [CCode (has_construct_function = false, type = "GtkWidget*")] public Plug.for_display (Gdk.Display display, X.Window socket_id); public bool get_embedded (); public X.Window get_id (); public unowned Gdk.Window get_socket_window (); public bool embedded { get; } public Gdk.Window socket_window { get; } } [CCode (cheader_filename = "gtk/gtk.h")] public class PrintContext : GLib.Object { [CCode (has_construct_function = false)] protected PrintContext (); public unowned Pango.Context create_pango_context (); public unowned Pango.Layout create_pango_layout (); public unowned Cairo.Context get_cairo_context (); public double get_dpi_x (); public double get_dpi_y (); public bool get_hard_margins (double top, double bottom, double left, double right); public double get_height (); public unowned Gtk.PageSetup get_page_setup (); public unowned Pango.FontMap get_pango_fontmap (); public double get_width (); public void set_cairo_context (Cairo.Context cr, double dpi_x, double dpi_y); } [CCode (cheader_filename = "gtk/gtk.h")] public class PrintOperation : GLib.Object, Gtk.PrintOperationPreview { [CCode (has_construct_function = false)] public PrintOperation (); public void cancel (); public void draw_page_finish (); public unowned Gtk.PageSetup get_default_page_setup (); public bool get_embed_page_setup (); public void get_error () throws GLib.Error; public bool get_has_selection (); public int get_n_pages_to_print (); public unowned Gtk.PrintSettings get_print_settings (); public Gtk.PrintStatus get_status (); public unowned string get_status_string (); public bool get_support_selection (); public bool is_finished (); public Gtk.PrintOperationResult run (Gtk.PrintOperationAction action, Gtk.Window parent) throws GLib.Error; public void set_allow_async (bool allow_async); public void set_current_page (int current_page); public void set_custom_tab_label (string label); public void set_default_page_setup (Gtk.PageSetup default_page_setup); public void set_defer_drawing (); public void set_embed_page_setup (bool embed); public void set_export_filename (string filename); public void set_has_selection (bool has_selection); public void set_job_name (string job_name); public void set_n_pages (int n_pages); public void set_print_settings (Gtk.PrintSettings print_settings); public void set_show_progress (bool show_progress); public void set_support_selection (bool support_selection); public void set_track_print_status (bool track_status); public void set_unit (Gtk.Unit unit); public void set_use_full_page (bool full_page); [NoAccessorMethod] public bool allow_async { get; set; } [NoAccessorMethod] public int current_page { get; set; } [NoAccessorMethod] public string custom_tab_label { owned get; set; } public Gtk.PageSetup default_page_setup { get; set; } public bool embed_page_setup { get; set; } [NoAccessorMethod] public string export_filename { owned get; set; } public bool has_selection { get; set; } [NoAccessorMethod] public string job_name { owned get; set; } [NoAccessorMethod] public int n_pages { get; set; } public int n_pages_to_print { get; } public Gtk.PrintSettings print_settings { get; set; } [NoAccessorMethod] public bool show_progress { get; set; } public Gtk.PrintStatus status { get; } public string status_string { get; } public bool support_selection { get; set; } [NoAccessorMethod] public bool track_print_status { get; set; } [NoAccessorMethod] public Gtk.Unit unit { get; set; } [NoAccessorMethod] public bool use_full_page { get; set; } public virtual signal void begin_print (Gtk.PrintContext context); public virtual signal unowned GLib.Object create_custom_widget (); public virtual signal void custom_widget_apply (Gtk.Widget widget); public virtual signal void done (Gtk.PrintOperationResult result); public virtual signal void draw_page (Gtk.PrintContext context, int page_nr); public virtual signal void end_print (Gtk.PrintContext context); public virtual signal bool paginate (Gtk.PrintContext context); public virtual signal bool preview (Gtk.PrintOperationPreview preview, Gtk.PrintContext context, Gtk.Window parent); public virtual signal void request_page_setup (Gtk.PrintContext context, int page_nr, Gtk.PageSetup setup); public virtual signal void status_changed (); public virtual signal void update_custom_widget (Gtk.Widget widget, Gtk.PageSetup setup, Gtk.PrintSettings settings); } [CCode (cheader_filename = "gtk/gtk.h")] public class PrintSettings : GLib.Object { [CCode (has_construct_function = false)] public PrintSettings (); public Gtk.PrintSettings copy (); public void @foreach (Gtk.PrintSettingsFunc func); [CCode (has_construct_function = false)] public PrintSettings.from_file (string file_name) throws GLib.Error; [CCode (has_construct_function = false)] public PrintSettings.from_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error; public unowned string @get (string key); public bool get_bool (string key); public bool get_collate (); public unowned string get_default_source (); public unowned string get_dither (); public double get_double (string key); public double get_double_with_default (string key, double def); public Gtk.PrintDuplex get_duplex (); public unowned string get_finishings (); public int get_int (string key); public int get_int_with_default (string key, int def); public double get_length (string key, Gtk.Unit unit); public unowned string get_media_type (); public int get_n_copies (); public int get_number_up (); public Gtk.NumberUpLayout get_number_up_layout (); public Gtk.PageOrientation get_orientation (); public unowned string get_output_bin (); public unowned Gtk.PageRange get_page_ranges (int num_ranges); public Gtk.PageSet get_page_set (); public double get_paper_height (Gtk.Unit unit); public unowned Gtk.PaperSize get_paper_size (); public double get_paper_width (Gtk.Unit unit); public Gtk.PrintPages get_print_pages (); public unowned string get_printer (); public double get_printer_lpi (); public Gtk.PrintQuality get_quality (); public int get_resolution (); public int get_resolution_x (); public int get_resolution_y (); public bool get_reverse (); public double get_scale (); public bool get_use_color (); public bool has_key (string key); public bool load_file (string file_name) throws GLib.Error; public bool load_key_file (GLib.KeyFile key_file, string group_name) throws GLib.Error; public void @set (string key, string value); public void set_bool (string key, bool value); public void set_collate (bool collate); public void set_default_source (string default_source); public void set_dither (string dither); public void set_double (string key, double value); public void set_duplex (Gtk.PrintDuplex duplex); public void set_finishings (string finishings); public void set_int (string key, int value); public void set_length (string key, double value, Gtk.Unit unit); public void set_media_type (string media_type); public void set_n_copies (int num_copies); public void set_number_up (int number_up); public void set_number_up_layout (Gtk.NumberUpLayout number_up_layout); public void set_orientation (Gtk.PageOrientation orientation); public void set_output_bin (string output_bin); public void set_page_ranges (Gtk.PageRange page_ranges, int num_ranges); public void set_page_set (Gtk.PageSet page_set); public void set_paper_height (double height, Gtk.Unit unit); public void set_paper_size (Gtk.PaperSize paper_size); public void set_paper_width (double width, Gtk.Unit unit); public void set_print_pages (Gtk.PrintPages pages); public void set_printer (string printer); public void set_printer_lpi (double lpi); public void set_quality (Gtk.PrintQuality quality); public void set_resolution (int resolution); public void set_resolution_xy (int resolution_x, int resolution_y); public void set_reverse (bool reverse); public void set_scale (double scale); public void set_use_color (bool use_color); public bool to_file (string file_name) throws GLib.Error; public void to_key_file (GLib.KeyFile key_file, string group_name); public void unset (string key); } [CCode (cheader_filename = "gtk/gtk.h")] public class ProgressBar : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ProgressBar (); public Pango.EllipsizeMode get_ellipsize (); public double get_fraction (); public bool get_inverted (); public double get_pulse_step (); public bool get_show_text (); public unowned string get_text (); public void pulse (); public void set_ellipsize (Pango.EllipsizeMode mode); public void set_fraction (double fraction); public void set_inverted (bool inverted); public void set_pulse_step (double fraction); public void set_show_text (bool show_text); public void set_text (string text); public Pango.EllipsizeMode ellipsize { get; set; } public double fraction { get; set; } public bool inverted { get; set; } public double pulse_step { get; set; } public bool show_text { get; set; } public string text { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class ProgressBarAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Value { [CCode (has_construct_function = false)] protected ProgressBarAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class RadioAction : Gtk.ToggleAction, Gtk.Buildable { [CCode (has_construct_function = false)] public RadioAction (string name, string? label, string? tooltip, string? stock_id, int value); public int get_current_value (); public unowned GLib.SList get_group (); public void join_group (Gtk.RadioAction group_source); public void set_current_value (int current_value); public void set_group (GLib.SList group); public int current_value { get; set; } [NoAccessorMethod] public Gtk.RadioAction group { set; } [NoAccessorMethod] public int value { get; set; } public virtual signal void changed (Gtk.RadioAction current); } [CCode (cheader_filename = "gtk/gtk.h")] public class RadioButton : Gtk.CheckButton, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioButton (GLib.SList? group); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioButton.from_widget (Gtk.RadioButton? radio_group_member); public unowned GLib.SList get_group (); public void join_group (Gtk.RadioButton group_source); public void set_group (GLib.SList group); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioButton.with_label (GLib.SList? group, string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioButton.with_label_from_widget (Gtk.RadioButton? radio_group_member, string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioButton.with_mnemonic (GLib.SList? group, string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioButton.with_mnemonic_from_widget (Gtk.RadioButton? radio_group_member, string label); [NoAccessorMethod] public Gtk.RadioButton group { set; } public virtual signal void group_changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class RadioButtonAccessible : Gtk.ToggleButtonAccessible, Atk.Component, Atk.Action, Atk.Image { [CCode (has_construct_function = false)] protected RadioButtonAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class RadioMenuItem : Gtk.CheckMenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioMenuItem (GLib.SList? group); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioMenuItem.from_widget (Gtk.RadioMenuItem group); public unowned GLib.SList get_group (); public void set_group (GLib.SList? group); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioMenuItem.with_label (GLib.SList? group, string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioMenuItem.with_label_from_widget (Gtk.RadioMenuItem group, string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioMenuItem.with_mnemonic (GLib.SList? group, string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public RadioMenuItem.with_mnemonic_from_widget (Gtk.RadioMenuItem group, string label); public Gtk.RadioMenuItem group { set; } public virtual signal void group_changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class RadioMenuItemAccessible : Gtk.CheckMenuItemAccessible, Atk.Component, Atk.Action, Atk.Selection { [CCode (has_construct_function = false)] protected RadioMenuItemAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class RadioToolButton : Gtk.ToggleToolButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkToolItem*")] public RadioToolButton (GLib.SList? group); [CCode (has_construct_function = false, type = "GtkToolItem*")] public RadioToolButton.from_stock (GLib.SList? group, string stock_id); [CCode (has_construct_function = false, type = "GtkToolItem*")] public RadioToolButton.from_widget (Gtk.RadioToolButton group); public unowned GLib.SList get_group (); public void set_group (GLib.SList group); [CCode (has_construct_function = false, type = "GtkToolItem*")] public RadioToolButton.with_stock_from_widget (Gtk.RadioToolButton group, string stock_id); public Gtk.RadioToolButton group { set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Range : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false)] protected Range (); public unowned Gtk.Adjustment get_adjustment (); public unowned Gdk.Window get_event_window (); public double get_fill_level (); public bool get_flippable (); public bool get_inverted (); public Gtk.SensitivityType get_lower_stepper_sensitivity (); public int get_min_slider_size (); [NoWrapper] public virtual void get_range_border (Gtk.Border border_); public void get_range_rect (Gdk.Rectangle range_rect); public bool get_restrict_to_fill_level (); public int get_round_digits (); public bool get_show_fill_level (); public void get_slider_range (out int slider_start, out int slider_end); public bool get_slider_size_fixed (); public Gtk.SensitivityType get_upper_stepper_sensitivity (); public double get_value (); public void set_adjustment (Gtk.Adjustment adjustment); public void set_fill_level (double fill_level); public void set_flippable (bool flippable); public void set_increments (double step, double page); public void set_inverted (bool setting); public void set_lower_stepper_sensitivity (Gtk.SensitivityType sensitivity); public void set_min_slider_size (int min_size); public void set_range (double min, double max); public void set_restrict_to_fill_level (bool restrict_to_fill_level); public void set_round_digits (int round_digits); public void set_show_fill_level (bool show_fill_level); public void set_slider_size_fixed (bool size_fixed); public void set_upper_stepper_sensitivity (Gtk.SensitivityType sensitivity); public void set_value (double value); public Gtk.Adjustment adjustment { get; set construct; } public double fill_level { get; set; } public bool inverted { get; set; } public Gtk.SensitivityType lower_stepper_sensitivity { get; set; } public bool restrict_to_fill_level { get; set; } public int round_digits { get; set; } public bool show_fill_level { get; set; } public Gtk.SensitivityType upper_stepper_sensitivity { get; set; } public virtual signal void adjust_bounds (double new_value); public virtual signal bool change_value (Gtk.ScrollType scroll, double new_value); public virtual signal void move_slider (Gtk.ScrollType scroll); public virtual signal void value_changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class RangeAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Value { [CCode (has_construct_function = false)] protected RangeAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class RcContext { } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class RcProperty { public weak string origin; public GLib.Quark property_name; public GLib.Quark type_name; public GLib.Value value; public static bool parse_border (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value); public static bool parse_color (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value); public static bool parse_enum (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value); public static bool parse_flags (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value); public static bool parse_requisition (GLib.ParamSpec pspec, GLib.StringBuilder gstring, GLib.Value property_value); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "CssProvider", since = "3.0")] public class RcStyle : GLib.Object { [CCode (array_length = false)] public weak Gdk.Color[] @base; [CCode (array_length = false)] public weak Gdk.Color[] bg; [CCode (array_length = false)] public weak string[] bg_pixmap_name; [CCode (array_length = false)] public weak Gtk.RcFlags[] color_flags; public uint engine_specified; [CCode (array_length = false)] public weak Gdk.Color[] fg; public weak Pango.FontDescription font_desc; public weak GLib.SList icon_factories; public weak string name; public weak GLib.Array rc_properties; public weak GLib.SList rc_style_lists; [CCode (array_length = false)] public weak Gdk.Color[] text; public int xthickness; public int ythickness; [CCode (has_construct_function = false)] public RcStyle (); public Gtk.RcStyle copy (); [NoWrapper] public virtual unowned Gtk.RcStyle create_rc_style (); [NoWrapper] public virtual Gtk.Style create_style (); [NoWrapper] public virtual void merge (Gtk.RcStyle src); [NoWrapper] public virtual uint parse (Gtk.Settings settings, GLib.Scanner scanner); } [CCode (cheader_filename = "gtk/gtk.h")] public class RecentAction : Gtk.Action, Gtk.Buildable, Gtk.RecentChooser { [CCode (has_construct_function = false, type = "GtkAction*")] public RecentAction (string name, string label, string tooltip, string stock_id); [CCode (has_construct_function = false, type = "GtkAction*")] public RecentAction.for_manager (string name, string label, string tooltip, string stock_id, Gtk.RecentManager manager); public bool get_show_numbers (); public void set_show_numbers (bool show_numbers); public bool show_numbers { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class RecentChooserDialog : Gtk.Dialog, Atk.Implementor, Gtk.Buildable, Gtk.RecentChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public RecentChooserDialog (string title, Gtk.Window parent, ...); [CCode (has_construct_function = false, type = "GtkWidget*")] public RecentChooserDialog.for_manager (string title, Gtk.Window parent, Gtk.RecentManager manager, ...); } [CCode (cheader_filename = "gtk/gtk.h")] public class RecentChooserMenu : Gtk.Menu, Atk.Implementor, Gtk.Buildable, Gtk.RecentChooser, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public RecentChooserMenu (); [CCode (has_construct_function = false, type = "GtkWidget*")] public RecentChooserMenu.for_manager (Gtk.RecentManager manager); public bool get_show_numbers (); [NoWrapper] public virtual void gtk_recent1 (); [NoWrapper] public virtual void gtk_recent2 (); [NoWrapper] public virtual void gtk_recent3 (); [NoWrapper] public virtual void gtk_recent4 (); public void set_show_numbers (bool show_numbers); public bool show_numbers { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class RecentChooserWidget : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.RecentChooser { [CCode (has_construct_function = false, type = "GtkWidget*")] public RecentChooserWidget (); [CCode (has_construct_function = false, type = "GtkWidget*")] public RecentChooserWidget.for_manager (Gtk.RecentManager manager); } [CCode (cheader_filename = "gtk/gtk.h")] public class RecentFilter : GLib.InitiallyUnowned, Gtk.Buildable { [CCode (has_construct_function = false)] public RecentFilter (); public void add_age (int days); public void add_application (string application); public void add_custom (Gtk.RecentFilterFlags needed, owned Gtk.RecentFilterFunc func); public void add_group (string group); public void add_mime_type (string mime_type); public void add_pattern (string pattern); public void add_pixbuf_formats (); public bool filter (Gtk.RecentFilterInfo filter_info); public Gtk.RecentFilterFlags get_needed (); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class RecentFilterInfo { public int age; public weak string applications; public Gtk.RecentFilterFlags contains; public weak string display_name; public weak string groups; public weak string mime_type; public weak string uri; } [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_recent_info_ref", type_id = "gtk_recent_info_get_type ()", unref_function = "gtk_recent_info_unref")] [Compact] public class RecentInfo { public unowned GLib.AppInfo create_app_info (string app_name) throws GLib.Error; public bool exists (); public ulong get_added (); public int get_age (); public bool get_application_info (string app_name, out unowned string app_exec, out uint count, out ulong time_); [CCode (array_length_type = "gsize")] public string[] get_applications (); public unowned string get_description (); public unowned string get_display_name (); public unowned GLib.Icon get_gicon (); [CCode (array_length_type = "gsize")] public string[] get_groups (); public Gdk.Pixbuf? get_icon (int size); public unowned string get_mime_type (); public ulong get_modified (); public bool get_private_hint (); public string get_short_name (); public unowned string get_uri (); public string? get_uri_display (); public ulong get_visited (); public bool has_application (string app_name); public bool has_group (string group_name); public bool is_local (); public string last_application (); public bool match (Gtk.RecentInfo info_b); } [CCode (cheader_filename = "gtk/gtk.h")] public class RecentManager : GLib.Object { [CCode (has_construct_function = false)] public RecentManager (); public bool add_full (string uri, Gtk.RecentData recent_data); public bool add_item (string uri); public static GLib.Quark error_quark (); public static unowned Gtk.RecentManager get_default (); public GLib.List get_items (); public bool has_item (string uri); public unowned Gtk.RecentInfo lookup_item (string uri) throws GLib.Error; public bool move_item (string uri, string new_uri) throws GLib.Error; public int purge_items () throws GLib.Error; public bool remove_item (string uri) throws GLib.Error; [NoAccessorMethod] public string filename { owned get; construct; } [NoAccessorMethod] public int size { get; } public virtual signal void changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class RendererCellAccessible : Gtk.CellAccessible, Atk.Action, Atk.Component { [CCode (has_construct_function = false, type = "AtkObject*")] public RendererCellAccessible (Gtk.CellRenderer renderer); [NoAccessorMethod] public Gtk.CellRenderer renderer { owned get; construct; } } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class RequestedSize { public void* data; public int minimum_size; public int natural_size; } [CCode (cheader_filename = "gtk/gtk.h")] public class Revealer : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Revealer (); public bool get_child_revealed (); public bool get_reveal_child (); public uint get_transition_duration (); public Gtk.RevealerTransitionType get_transition_type (); public void set_reveal_child (bool reveal_child); public void set_transition_duration (uint duration); public void set_transition_type (Gtk.RevealerTransitionType transition); public bool child_revealed { get; } public bool reveal_child { get; set construct; } public uint transition_duration { get; set construct; } public Gtk.RevealerTransitionType transition_type { get; set construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Scale : Gtk.Range, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Scale (Gtk.Orientation orientation, Gtk.Adjustment? adjustment); public void add_mark (double value, Gtk.PositionType position, string? markup); public void clear_marks (); public int get_digits (); public bool get_draw_value (); public bool get_has_origin (); public unowned Pango.Layout get_layout (); public virtual void get_layout_offsets (out int x, out int y); public Gtk.PositionType get_value_pos (); public void set_digits (int digits); public void set_draw_value (bool draw_value); public void set_has_origin (bool has_origin); public void set_value_pos (Gtk.PositionType pos); [CCode (has_construct_function = false, type = "GtkWidget*")] public Scale.with_range (Gtk.Orientation orientation, double min, double max, double step); public int digits { get; set; } public bool draw_value { get; set; } public bool has_origin { get; set; } public Gtk.PositionType value_pos { get; set; } public virtual signal string format_value (double value); } [CCode (cheader_filename = "gtk/gtk.h")] public class ScaleAccessible : Gtk.RangeAccessible, Atk.Component, Atk.Value { [CCode (has_construct_function = false)] protected ScaleAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ScaleButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ScaleButton (Gtk.IconSize size, double min = 0.0, double max = 100.0, double step = 2.0, [CCode (array_length = false)] string[]? icons = null); public unowned Gtk.Adjustment get_adjustment (); public unowned Gtk.Widget get_minus_button (); public unowned Gtk.Widget get_plus_button (); public unowned Gtk.Widget get_popup (); public double get_value (); public void set_adjustment (Gtk.Adjustment adjustment); public void set_icons ([CCode (array_length = false)] string[] icons); public void set_value (double value); public Gtk.Adjustment adjustment { get; set; } [CCode (array_length = false, array_null_terminated = true)] [NoAccessorMethod] public string[] icons { owned get; set; } [NoAccessorMethod] public Gtk.IconSize size { get; set; } public double value { get; set; } public virtual signal void popdown (); public virtual signal void popup (); public virtual signal void value_changed (double value); } [CCode (cheader_filename = "gtk/gtk.h")] public class ScaleButtonAccessible : Gtk.ButtonAccessible, Atk.Component, Atk.Action, Atk.Image, Atk.Value { [CCode (has_construct_function = false)] protected ScaleButtonAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Scrollbar : Gtk.Range, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Scrollbar (Gtk.Orientation orientation, Gtk.Adjustment? adjustment); } [CCode (cheader_filename = "gtk/gtk.h")] public class ScrolledWindow : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ScrolledWindow (Gtk.Adjustment? hadjustment, Gtk.Adjustment? vadjustment); public void add_with_viewport (Gtk.Widget child); public bool get_capture_button_press (); public unowned Gtk.Adjustment get_hadjustment (); public unowned Gtk.Widget get_hscrollbar (); public bool get_kinetic_scrolling (); public int get_min_content_height (); public int get_min_content_width (); public Gtk.CornerType get_placement (); public void get_policy (Gtk.PolicyType hscrollbar_policy, Gtk.PolicyType vscrollbar_policy); public Gtk.ShadowType get_shadow_type (); public unowned Gtk.Adjustment get_vadjustment (); public unowned Gtk.Widget get_vscrollbar (); public void set_capture_button_press (bool capture_button_press); public void set_hadjustment (Gtk.Adjustment hadjustment); public void set_kinetic_scrolling (bool kinetic_scrolling); public void set_min_content_height (int height); public void set_min_content_width (int width); public void set_placement (Gtk.CornerType window_placement); public void set_policy (Gtk.PolicyType hscrollbar_policy, Gtk.PolicyType vscrollbar_policy); public void set_shadow_type (Gtk.ShadowType type); public void set_vadjustment (Gtk.Adjustment vadjustment); public void unset_placement (); public Gtk.Adjustment hadjustment { get; set construct; } [NoAccessorMethod] public Gtk.PolicyType hscrollbar_policy { get; set; } public bool kinetic_scrolling { get; set; } public int min_content_height { get; set; } public int min_content_width { get; set; } public Gtk.ShadowType shadow_type { get; set; } public Gtk.Adjustment vadjustment { get; set construct; } [NoAccessorMethod] public Gtk.PolicyType vscrollbar_policy { get; set; } [NoAccessorMethod] public Gtk.CornerType window_placement { get; set; } [NoAccessorMethod] public bool window_placement_set { get; set; } public virtual signal void move_focus_out (Gtk.DirectionType direction); public virtual signal bool scroll_child (Gtk.ScrollType scroll, bool horizontal); } [CCode (cheader_filename = "gtk/gtk.h")] public class ScrolledWindowAccessible : Gtk.ContainerAccessible, Atk.Component { [CCode (has_construct_function = false)] protected ScrolledWindowAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class SearchBar : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public SearchBar (); public void connect_entry (Gtk.Entry entry); public bool get_search_mode (); public bool get_show_close_button (); public bool handle_event (Gdk.Event event); public void set_search_mode (bool search_mode); public void set_show_close_button (bool visible); [NoAccessorMethod] public bool search_mode_enabled { get; set; } public bool show_close_button { get; set construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class SearchEntry : Gtk.Entry, Atk.Implementor, Gtk.Buildable, Gtk.Editable, Gtk.CellEditable { [CCode (has_construct_function = false, type = "GtkWidget*")] public SearchEntry (); public virtual signal void search_changed (); } [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_selection_data_copy", type_id = "gtk_selection_data_get_type ()")] [Compact] public class SelectionData { public Gtk.SelectionData copy (); [CCode (array_length = false)] public unowned uchar[] get_data (); public Gdk.Atom get_data_type (); public unowned uchar[] get_data_with_length (); public unowned Gdk.Display get_display (); public int get_format (); public int get_length (); public Gdk.Pixbuf? get_pixbuf (); public Gdk.Atom get_selection (); public Gdk.Atom get_target (); public bool get_targets (out Gdk.Atom[] targets); public string? get_text (); [CCode (array_length = false, array_null_terminated = true)] public string[] get_uris (); public void @set (Gdk.Atom type, int format, uchar[] data); public bool set_pixbuf (Gdk.Pixbuf pixbuf); public bool set_text (string str, int len); public bool set_uris ([CCode (array_length = false)] string[] uris); public bool targets_include_image (bool writable); public bool targets_include_rich_text (Gtk.TextBuffer buffer); public bool targets_include_text (); public bool targets_include_uri (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Separator : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Separator (Gtk.Orientation orientation); } [CCode (cheader_filename = "gtk/gtk.h")] public class SeparatorMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkWidget*")] public SeparatorMenuItem (); } [CCode (cheader_filename = "gtk/gtk.h")] public class SeparatorToolItem : Gtk.ToolItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkToolItem*")] public SeparatorToolItem (); public bool get_draw (); public void set_draw (bool draw); public bool draw { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Settings : GLib.Object, Gtk.StyleProvider { [CCode (has_construct_function = false)] protected Settings (); public static unowned Gtk.Settings get_default (); public static unowned Gtk.Settings get_for_screen (Gdk.Screen screen); public static void install_property (GLib.ParamSpec pspec); public static void install_property_parser (GLib.ParamSpec pspec, Gtk.RcPropertyParser parser); public void set_double_property (string name, double v_double, string origin); public void set_long_property (string name, long v_long, string origin); public void set_property_value (string name, Gtk.SettingsValue svalue); public void set_string_property (string name, string v_string, string origin); [NoAccessorMethod] public GLib.HashTable color_hash { owned get; } [NoAccessorMethod] public bool gtk_alternative_button_order { get; set; } [NoAccessorMethod] public bool gtk_alternative_sort_arrows { get; set; } [NoAccessorMethod] public bool gtk_application_prefer_dark_theme { get; set; } [NoAccessorMethod] public bool gtk_auto_mnemonics { get; set; } [NoAccessorMethod] public bool gtk_button_images { get; set; } [NoAccessorMethod] public bool gtk_can_change_accels { get; set; } [NoAccessorMethod] public string gtk_color_palette { owned get; set; } [NoAccessorMethod] public string gtk_color_scheme { owned get; set; } [NoAccessorMethod] public bool gtk_cursor_blink { get; set; } [NoAccessorMethod] public int gtk_cursor_blink_time { get; set; } [NoAccessorMethod] public int gtk_cursor_blink_timeout { get; set; } [NoAccessorMethod] public string gtk_cursor_theme_name { owned get; set; } [NoAccessorMethod] public int gtk_cursor_theme_size { get; set; } [NoAccessorMethod] public int gtk_dnd_drag_threshold { get; set; } [NoAccessorMethod] public int gtk_double_click_distance { get; set; } [NoAccessorMethod] public int gtk_double_click_time { get; set; } [NoAccessorMethod] public bool gtk_enable_accels { get; set; } [NoAccessorMethod] public bool gtk_enable_animations { get; set; } [NoAccessorMethod] public bool gtk_enable_event_sounds { get; set; } [NoAccessorMethod] public bool gtk_enable_input_feedback_sounds { get; set; } [NoAccessorMethod] public bool gtk_enable_mnemonics { get; set; } [NoAccessorMethod] public bool gtk_enable_primary_paste { get; set; } [NoAccessorMethod] public bool gtk_enable_tooltips { get; set; } [NoAccessorMethod] public uint gtk_entry_password_hint_timeout { get; set; } [NoAccessorMethod] public bool gtk_entry_select_on_focus { get; set; } [NoAccessorMethod] public bool gtk_error_bell { get; set; } [NoAccessorMethod] public string gtk_fallback_icon_theme { owned get; set; } [NoAccessorMethod] public string gtk_file_chooser_backend { owned get; set; } [NoAccessorMethod] public string gtk_font_name { owned get; set; } [NoAccessorMethod] public uint gtk_fontconfig_timestamp { get; set; } [NoAccessorMethod] public string gtk_icon_sizes { owned get; set; } [NoAccessorMethod] public string gtk_icon_theme_name { owned get; set; } [NoAccessorMethod] public string gtk_im_module { owned get; set; } [NoAccessorMethod] public Gtk.IMPreeditStyle gtk_im_preedit_style { get; set; } [NoAccessorMethod] public Gtk.IMStatusStyle gtk_im_status_style { get; set; } [NoAccessorMethod] public string gtk_key_theme_name { owned get; set; } [NoAccessorMethod] public bool gtk_keynav_cursor_only { get; set; } [NoAccessorMethod] public bool gtk_keynav_wrap_around { get; set; } [NoAccessorMethod] public bool gtk_label_select_on_focus { get; set; } [NoAccessorMethod] public string gtk_menu_bar_accel { owned get; set; } [NoAccessorMethod] public int gtk_menu_bar_popup_delay { get; set; } [NoAccessorMethod] public bool gtk_menu_images { get; set; } [NoAccessorMethod] public int gtk_menu_popdown_delay { get; set; } [NoAccessorMethod] public int gtk_menu_popup_delay { get; set; } [NoAccessorMethod] public string gtk_modules { owned get; set; } [NoAccessorMethod] public bool gtk_primary_button_warps_slider { get; set; } [NoAccessorMethod] public string gtk_print_backends { owned get; set; } [NoAccessorMethod] public string gtk_print_preview_command { owned get; set; } [NoAccessorMethod] public bool gtk_recent_files_enabled { get; set; } [NoAccessorMethod] public int gtk_recent_files_limit { get; set; } [NoAccessorMethod] public int gtk_recent_files_max_age { get; set; } [NoAccessorMethod] public Gtk.CornerType gtk_scrolled_window_placement { get; set; } [NoAccessorMethod] public bool gtk_shell_shows_app_menu { get; set; } [NoAccessorMethod] public bool gtk_shell_shows_menubar { get; set; } [NoAccessorMethod] public bool gtk_show_input_method_menu { get; set; } [NoAccessorMethod] public bool gtk_show_unicode_menu { get; set; } [NoAccessorMethod] public string gtk_sound_theme_name { owned get; set; } [NoAccessorMethod] public bool gtk_split_cursor { get; set; } [NoAccessorMethod] public string gtk_theme_name { owned get; set; } [NoAccessorMethod] public int gtk_timeout_expand { get; set; } [NoAccessorMethod] public int gtk_timeout_initial { get; set; } [NoAccessorMethod] public int gtk_timeout_repeat { get; set; } [NoAccessorMethod] public Gtk.IconSize gtk_toolbar_icon_size { get; set; } [NoAccessorMethod] public Gtk.ToolbarStyle gtk_toolbar_style { get; set; } [NoAccessorMethod] public int gtk_tooltip_browse_mode_timeout { get; set; } [NoAccessorMethod] public int gtk_tooltip_browse_timeout { get; set; } [NoAccessorMethod] public int gtk_tooltip_timeout { get; set; } [Deprecated (replacement = "Gdk.Event.get_source_device", since = "3.4")] [NoAccessorMethod] public bool gtk_touchscreen_mode { get; set; } [NoAccessorMethod] public Gtk.PolicyType gtk_visible_focus { get; set; } [NoAccessorMethod] public int gtk_xft_antialias { get; set; } [NoAccessorMethod] public int gtk_xft_dpi { get; set; } [NoAccessorMethod] public int gtk_xft_hinting { get; set; } [NoAccessorMethod] public string gtk_xft_hintstyle { owned get; set; } [NoAccessorMethod] public string gtk_xft_rgba { owned get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class SettingsValue { public weak string origin; public GLib.Value value; } [CCode (cheader_filename = "gtk/gtk.h")] public class SizeGroup : GLib.Object, Gtk.Buildable { [CCode (has_construct_function = false)] public SizeGroup (Gtk.SizeGroupMode mode); public void add_widget (Gtk.Widget widget); public bool get_ignore_hidden (); public Gtk.SizeGroupMode get_mode (); public unowned GLib.SList get_widgets (); public void remove_widget (Gtk.Widget widget); public void set_ignore_hidden (bool ignore_hidden); public void set_mode (Gtk.SizeGroupMode mode); public bool ignore_hidden { get; set; } public Gtk.SizeGroupMode mode { get; set; } } [CCode (cheader_filename = "gtk/gtkx.h")] public class Socket : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Socket (); public void add_id (X.Window window); public X.Window get_id (); public unowned Gdk.Window get_plug_window (); public virtual signal void plug_added (); public virtual signal bool plug_removed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class SpinButton : Gtk.Entry, Atk.Implementor, Gtk.Buildable, Gtk.Editable, Gtk.CellEditable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public SpinButton (Gtk.Adjustment adjustment, double climb_rate, uint digits); public void configure (Gtk.Adjustment adjustment, double climb_rate, uint digits); public unowned Gtk.Adjustment get_adjustment (); public uint get_digits (); public void get_increments (double step, double page); public bool get_numeric (); public void get_range (out double min, out double max); public bool get_snap_to_ticks (); public Gtk.SpinButtonUpdatePolicy get_update_policy (); public double get_value (); public int get_value_as_int (); public bool get_wrap (); public void set_adjustment (Gtk.Adjustment adjustment); public void set_digits (uint digits); public void set_increments (double step, double page); public void set_numeric (bool numeric); public void set_range (double min, double max); public void set_snap_to_ticks (bool snap_to_ticks); public void set_update_policy (Gtk.SpinButtonUpdatePolicy policy); public void set_value (double value); public void set_wrap (bool wrap); public void spin (Gtk.SpinType direction, double increment); public void update (); [CCode (has_construct_function = false, type = "GtkWidget*")] public SpinButton.with_range (double min, double max, double step); public Gtk.Adjustment adjustment { get; set; } [NoAccessorMethod] public double climb_rate { get; set; } public uint digits { get; set; } public bool numeric { get; set; } public bool snap_to_ticks { get; set; } public Gtk.SpinButtonUpdatePolicy update_policy { get; set; } public double value { get; set; } public bool wrap { get; set; } public virtual signal void change_value (Gtk.ScrollType scroll); public virtual signal int input (out double new_value); public virtual signal bool output (); public virtual signal void value_changed (); public virtual signal void wrapped (); } [CCode (cheader_filename = "gtk/gtk.h")] public class SpinButtonAccessible : Gtk.EntryAccessible, Atk.Component, Atk.EditableText, Atk.Text, Atk.Action, Atk.Value { [CCode (has_construct_function = false)] protected SpinButtonAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Spinner : Gtk.Widget, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Spinner (); public void start (); public void stop (); [NoAccessorMethod] public bool active { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class SpinnerAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Image { [CCode (has_construct_function = false)] protected SpinnerAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Stack : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Stack (); public void add_named (Gtk.Widget child, string name); public void add_titled (Gtk.Widget child, string name, string title); public bool get_homogeneous (); public uint get_transition_duration (); public Gtk.StackTransitionType get_transition_type (); public unowned Gtk.Widget get_visible_child (); public unowned string get_visible_child_name (); public void set_homogeneous (bool homogeneous); public void set_transition_duration (uint duration); public void set_transition_type (Gtk.StackTransitionType transition); public void set_visible_child (Gtk.Widget child); public void set_visible_child_full (string name, Gtk.StackTransitionType transition); public void set_visible_child_name (string name); public bool homogeneous { get; set construct; } public uint transition_duration { get; set construct; } public Gtk.StackTransitionType transition_type { get; set construct; } public Gtk.Widget visible_child { get; set; } public string visible_child_name { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class StackSwitcher : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public StackSwitcher (); public unowned Gtk.Stack get_stack (); public void set_stack (Gtk.Stack stack); public Gtk.Stack stack { get; set construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class StatusIcon : GLib.Object { [CCode (has_construct_function = false)] public StatusIcon (); [CCode (has_construct_function = false)] public StatusIcon.from_file (string filename); [CCode (has_construct_function = false)] public StatusIcon.from_gicon (GLib.Icon icon); [CCode (has_construct_function = false)] public StatusIcon.from_icon_name (string icon_name); [CCode (has_construct_function = false)] public StatusIcon.from_pixbuf (Gdk.Pixbuf pixbuf); [CCode (has_construct_function = false)] public StatusIcon.from_stock (string stock_id); public bool get_geometry (out unowned Gdk.Screen screen, out Gdk.Rectangle area, out Gtk.Orientation orientation); public unowned GLib.Icon get_gicon (); public bool get_has_tooltip (); public unowned string get_icon_name (); public unowned Gdk.Pixbuf get_pixbuf (); public unowned Gdk.Screen get_screen (); public int get_size (); public unowned string get_stock (); public Gtk.ImageType get_storage_type (); public unowned string get_title (); public unowned string get_tooltip_markup (); public unowned string get_tooltip_text (); public bool get_visible (); public uint32 get_x11_window_id (); public bool is_embedded (); [CCode (instance_pos = -1)] public void position_menu (Gtk.Menu menu, out int x, out int y, out bool push_in); public void set_from_file (string filename); public void set_from_gicon (GLib.Icon icon); public void set_from_icon_name (string icon_name); public void set_from_pixbuf (Gdk.Pixbuf pixbuf); public void set_from_stock (string stock_id); public void set_has_tooltip (bool has_tooltip); public void set_name (string name); public void set_screen (Gdk.Screen screen); public void set_title (string title); public void set_tooltip_markup (string markup); public void set_tooltip_text (string text); public void set_visible (bool visible); [NoAccessorMethod] public bool embedded { get; } [NoAccessorMethod] public string file { set; } [NoAccessorMethod] public GLib.Icon gicon { owned get; set; } public bool has_tooltip { get; set; } [NoAccessorMethod] public string icon_name { owned get; set; } [NoAccessorMethod] public Gtk.Orientation orientation { get; } [NoAccessorMethod] public Gdk.Pixbuf pixbuf { owned get; set; } public Gdk.Screen screen { get; set; } public int size { get; } [NoAccessorMethod] public string stock { owned get; set; } public Gtk.ImageType storage_type { get; } public string title { get; set; } public string tooltip_markup { get; set; } public string tooltip_text { get; set; } public bool visible { get; set; } public virtual signal void activate (); public virtual signal bool button_press_event (Gdk.EventButton event); public virtual signal bool button_release_event (Gdk.EventButton event); public virtual signal void popup_menu (uint button, uint activate_time); public virtual signal bool query_tooltip (int x, int y, bool keyboard_mode, Gtk.Tooltip tooltip); public virtual signal bool scroll_event (Gdk.EventScroll event); public virtual signal bool size_changed (int size); } [CCode (cheader_filename = "gtk/gtk.h")] public class Statusbar : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Statusbar (); public uint get_context_id (string context_description); public unowned Gtk.Container get_message_area (); public void pop (uint context_id); public uint push (uint context_id, string text); public void remove (uint context_id, uint message_id); public void remove_all (uint context_id); public virtual signal void text_popped (uint context_id, string text); public virtual signal void text_pushed (uint context_id, string text); } [CCode (cheader_filename = "gtk/gtk.h")] public class StatusbarAccessible : Gtk.ContainerAccessible, Atk.Component { [CCode (has_construct_function = false)] protected StatusbarAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext", since = "3.0")] public class Style : GLib.Object { public int attach_count; [CCode (array_length = false)] public weak Cairo.Pattern[] background; [CCode (array_length = false)] public Gdk.Color[] @base; [CCode (array_length = false)] public Gdk.Color[] bg; public Gdk.Color black; [CCode (array_length = false)] public Gdk.Color[] dark; [CCode (array_length = false)] public Gdk.Color[] fg; public weak Pango.FontDescription font_desc; public weak GLib.SList icon_factories; [CCode (array_length = false)] public Gdk.Color[] light; [CCode (array_length = false)] public Gdk.Color[] mid; public weak GLib.Array property_cache; public weak Gtk.RcStyle rc_style; public weak GLib.SList styles; [CCode (array_length = false)] public Gdk.Color[] text; [CCode (array_length = false)] public Gdk.Color[] text_aa; public weak Gdk.Visual visual; public Gdk.Color white; public int xthickness; public int ythickness; [CCode (has_construct_function = false)] public Style (); public void apply_default_background (Cairo.Context cr, Gdk.Window window, Gtk.StateType state_type, int x, int y, int width, int height); public unowned Gtk.Style attach (Gdk.Window window); [NoWrapper] public virtual Gtk.Style clone (); public Gtk.Style copy (); [CCode (instance_pos = -1, vfunc_name = "copy")] [NoWrapper] public virtual void copy_to (Gtk.Style dest); public void detach (); [NoWrapper] public virtual void draw_arrow (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, Gtk.ArrowType arrow_type, bool fill, int x, int y, int width, int height); [NoWrapper] public virtual void draw_box (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height); [NoWrapper] public virtual void draw_box_gap (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.PositionType gap_side, int gap_x, int gap_width); [NoWrapper] public virtual void draw_check (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height); [NoWrapper] public virtual void draw_diamond (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height); [NoWrapper] public virtual void draw_expander (Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget widget, string detail, int x, int y, Gtk.ExpanderStyle expander_style); [NoWrapper] public virtual void draw_extension (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.PositionType gap_side); [NoWrapper] public virtual void draw_flat_box (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height); [NoWrapper] public virtual void draw_focus (Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget widget, string detail, int x, int y, int width, int height); [NoWrapper] public virtual void draw_handle (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.Orientation orientation); [NoWrapper] public virtual void draw_hline (Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget widget, string detail, int x1, int x2, int y); [NoWrapper] public virtual void draw_layout (Cairo.Context cr, Gtk.StateType state_type, bool use_text, Gtk.Widget widget, string detail, int x, int y, Pango.Layout layout); [NoWrapper] public virtual void draw_option (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height); [NoWrapper] public virtual void draw_resize_grip (Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget widget, string detail, Gdk.WindowEdge edge, int x, int y, int width, int height); [NoWrapper] public virtual void draw_shadow (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height); [NoWrapper] public virtual void draw_shadow_gap (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.PositionType gap_side, int gap_x, int gap_width); [NoWrapper] public virtual void draw_slider (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height, Gtk.Orientation orientation); [NoWrapper] public virtual void draw_spinner (Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget widget, string detail, uint step, int x, int y, int width, int height); [NoWrapper] public virtual void draw_tab (Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget widget, string detail, int x, int y, int width, int height); [NoWrapper] public virtual void draw_vline (Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget widget, string detail, int y1_, int y2_, int x); public void @get (GLib.Type widget_type, ...); public void get_style_property (GLib.Type widget_type, string property_name, out GLib.Value value); public void get_valist (GLib.Type widget_type, string first_property_name, void* var_args); public bool has_context (); [NoWrapper] public virtual void init_from_rc (Gtk.RcStyle rc_style); public bool lookup_color (string color_name, out Gdk.Color color); public unowned Gtk.IconSet lookup_icon_set (string stock_id); public virtual unowned Gdk.Pixbuf render_icon (Gtk.IconSource source, Gtk.TextDirection direction, Gtk.StateType state, Gtk.IconSize size, Gtk.Widget widget, string detail); public virtual void set_background (Gdk.Window window, Gtk.StateType state_type); [NoAccessorMethod] public Gtk.StyleContext context { owned get; construct; } public virtual signal void realize (); public virtual signal void unrealize (); } [CCode (cheader_filename = "gtk/gtk.h")] public class StyleContext : GLib.Object { [CCode (has_construct_function = false)] public StyleContext (); public void add_class (string class_name); public void add_provider (Gtk.StyleProvider provider, uint priority); public static void add_provider_for_screen (Gdk.Screen screen, Gtk.StyleProvider provider, uint priority); public void add_region (string region_name, Gtk.RegionFlags flags); public void cancel_animations (void* region_id); public void @get (Gtk.StateFlags state, ...); public Gdk.RGBA get_background_color (Gtk.StateFlags state); public Gtk.Border get_border (Gtk.StateFlags state); public Gdk.RGBA get_border_color (Gtk.StateFlags state); public Gdk.RGBA get_color (Gtk.StateFlags state); public Gtk.TextDirection get_direction (); public unowned Pango.FontDescription get_font (Gtk.StateFlags state); public unowned Gdk.FrameClock get_frame_clock (); public Gtk.JunctionSides get_junction_sides (); public Gtk.Border get_margin (Gtk.StateFlags state); public Gtk.Border get_padding (Gtk.StateFlags state); public unowned Gtk.StyleContext get_parent (); public unowned Gtk.WidgetPath get_path (); public void get_property (string property, Gtk.StateFlags state, GLib.Value value); public int get_scale (); public unowned Gdk.Screen get_screen (); public unowned Gtk.CssSection get_section (string property); public Gtk.StateFlags get_state (); public void get_style (...); public void get_style_property (string property_name, GLib.Value value); public void get_style_valist (void* args); public void get_valist (Gtk.StateFlags state, void* args); public bool has_class (string class_name); public bool has_region (string region_name, out Gtk.RegionFlags flags_return); public void invalidate (); public unowned GLib.List list_classes (); public unowned GLib.List list_regions (); public bool lookup_color (string color_name, out Gdk.RGBA color); public unowned Gtk.IconSet lookup_icon_set (string stock_id); public void notify_state_change (Gdk.Window window, void* region_id, Gtk.StateType state, bool state_value); public void pop_animatable_region (); public void push_animatable_region (void* region_id); public void remove_class (string class_name); public void remove_provider (Gtk.StyleProvider provider); public static void remove_provider_for_screen (Gdk.Screen screen, Gtk.StyleProvider provider); public void remove_region (string region_name); [CCode (cname = "gtk_render_activity")] public void render_activity (Cairo.Context cr, double x, double y, double width, double height); [CCode (cname = "gtk_render_arrow")] public void render_arrow (Cairo.Context cr, double angle, double x, double y, double size); [CCode (cname = "gtk_render_background")] public void render_background (Cairo.Context cr, double x, double y, double width, double height); [CCode (cname = "gtk_render_check")] public void render_check (Cairo.Context cr, double x, double y, double width, double height); [CCode (cname = "gtk_render_expander")] public void render_expander (Cairo.Context cr, double x, double y, double width, double height); [CCode (cname = "gtk_render_extension")] public void render_extension (Cairo.Context cr, double x, double y, double width, double height, Gtk.PositionType gap_side); [CCode (cname = "gtk_render_focus")] public void render_focus (Cairo.Context cr, double x, double y, double width, double height); [CCode (cname = "gtk_render_frame")] public void render_frame (Cairo.Context cr, double x, double y, double width, double height); [CCode (cname = "gtk_render_frame_gap")] public void render_frame_gap (Cairo.Context cr, double x, double y, double width, double height, Gtk.PositionType gap_side, double xy0_gap, double xy1_gap); [CCode (cname = "gtk_render_handle")] public void render_handle (Cairo.Context cr, double x, double y, double width, double height); [CCode (cname = "gtk_render_icon")] public void render_icon (Cairo.Context cr, Gdk.Pixbuf pixbuf, double x, double y); [CCode (cname = "gtk_render_icon_pixbuf")] public unowned Gdk.Pixbuf render_icon_pixbuf (Gtk.IconSource source, Gtk.IconSize size); [CCode (cname = "gtk_render_layout")] public void render_layout (Cairo.Context cr, double x, double y, Pango.Layout layout); [CCode (cname = "gtk_render_line")] public void render_line (Cairo.Context cr, double x0, double y0, double x1, double y1); [CCode (cname = "gtk_render_option")] public void render_option (Cairo.Context cr, double x, double y, double width, double height); [CCode (cname = "gtk_render_slider")] public void render_slider (Cairo.Context cr, double x, double y, double width, double height, Gtk.Orientation orientation); public static void reset_widgets (Gdk.Screen screen); public void restore (); public void save (); public void scroll_animations (Gdk.Window window, int dx, int dy); public void set_background (Gdk.Window window); public void set_direction (Gtk.TextDirection direction); public void set_frame_clock (Gdk.FrameClock frame_clock); public void set_junction_sides (Gtk.JunctionSides sides); public void set_parent (Gtk.StyleContext parent); public void set_path (Gtk.WidgetPath path); public void set_scale (int scale); public void set_screen (Gdk.Screen screen); public void set_state (Gtk.StateFlags flags); public bool state_is_running (Gtk.StateType state, double progress); public Gtk.TextDirection direction { get; set; } [NoAccessorMethod] public Gdk.FrameClock paint_clock { owned get; set; } public Gtk.StyleContext parent { get; set; } public Gdk.Screen screen { get; set; } public virtual signal void changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class StyleProperties : GLib.Object, Gtk.StyleProvider { [CCode (has_construct_function = false)] public StyleProperties (); public void clear (); public void @get (Gtk.StateFlags state); public bool get_property (string property, Gtk.StateFlags state, GLib.Value value); public void get_valist (Gtk.StateFlags state, void* args); public unowned Gtk.SymbolicColor lookup_color (string name); public static bool lookup_property (string property_name, Gtk.StylePropertyParser parse_func, out unowned GLib.ParamSpec pspec); public void map_color (string name, Gtk.SymbolicColor color); public void merge (Gtk.StyleProperties props_to_merge, bool replace); public static void register_property (Gtk.StylePropertyParser? parse_func, GLib.ParamSpec pspec); public void @set (Gtk.StateFlags state); public void set_property (string property, Gtk.StateFlags state, GLib.Value value); public void set_valist (Gtk.StateFlags state, void* args); public void unset_property (string property, Gtk.StateFlags state); } [CCode (cheader_filename = "gtk/gtk.h")] public class Switch : Gtk.Widget, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Switch (); public bool get_active (); public void set_active (bool is_active); public bool active { get; set; } public virtual signal void activate (); } [CCode (cheader_filename = "gtk/gtk.h")] public class SwitchAccessible : Gtk.WidgetAccessible, Atk.Component, Atk.Action { [CCode (has_construct_function = false)] protected SwitchAccessible (); } [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_symbolic_color_ref", type_id = "gtk_symbolic_color_get_type ()", unref_function = "gtk_symbolic_color_unref")] [Compact] public class SymbolicColor { [CCode (has_construct_function = false)] public SymbolicColor.alpha (Gtk.SymbolicColor color, double factor); [CCode (has_construct_function = false)] public SymbolicColor.literal (Gdk.RGBA color); [CCode (has_construct_function = false)] public SymbolicColor.mix (Gtk.SymbolicColor color1, Gtk.SymbolicColor color2, double factor); [CCode (has_construct_function = false)] public SymbolicColor.name (string name); public bool resolve (Gtk.StyleProperties props, out Gdk.RGBA resolved_color); [CCode (has_construct_function = false)] public SymbolicColor.shade (Gtk.SymbolicColor color, double factor); public unowned string to_string (); [CCode (has_construct_function = false)] public SymbolicColor.win32 (string theme_class, int id); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Grid", since = "3.4")] public class Table : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Table (uint rows, uint columns, bool homogeneous); public void attach (Gtk.Widget child, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach, Gtk.AttachOptions xoptions, Gtk.AttachOptions yoptions, uint xpadding, uint ypadding); public void attach_defaults (Gtk.Widget widget, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach); public uint get_col_spacing (uint column); public uint get_default_col_spacing (); public uint get_default_row_spacing (); public bool get_homogeneous (); public uint get_row_spacing (uint row); public void get_size (uint rows, uint columns); public void resize (uint rows, uint columns); public void set_col_spacing (uint column, uint spacing); public void set_col_spacings (uint spacing); public void set_homogeneous (bool homogeneous); public void set_row_spacing (uint row, uint spacing); public void set_row_spacings (uint spacing); [NoAccessorMethod] public uint column_spacing { get; set; } public bool homogeneous { get; set; } [NoAccessorMethod] public uint n_columns { get; set; } [NoAccessorMethod] public uint n_rows { get; set; } [NoAccessorMethod] public uint row_spacing { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class TableChild { public uint16 bottom_attach; public uint16 left_attach; public uint16 right_attach; public uint16 top_attach; public weak Gtk.Widget widget; public uint xexpand; public uint xfill; public uint16 xpadding; public uint xshrink; public uint yexpand; public uint yfill; public uint16 ypadding; public uint yshrink; } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class TableRowCol { public uint16 allocation; public uint empty; public uint expand; public uint need_expand; public uint need_shrink; public uint16 requisition; public uint shrink; public uint16 spacing; } [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_target_list_ref", type_id = "gtk_target_list_get_type ()", unref_function = "gtk_target_list_unref")] [Compact] public class TargetList { [CCode (has_construct_function = false)] public TargetList (Gtk.TargetEntry[] targets); public void add (Gdk.Atom target, uint flags, uint info); public void add_image_targets (uint info, bool writable); public void add_rich_text_targets (uint info, bool deserializable, Gtk.TextBuffer buffer); public void add_table (Gtk.TargetEntry[] targets); public void add_text_targets (uint info); public void add_uri_targets (uint info); public bool find (Gdk.Atom target, uint info); public void remove (Gdk.Atom target); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.4")] public class TearoffMenuItem : Gtk.MenuItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkWidget*")] public TearoffMenuItem (); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class TextAppearance { public Gdk.Color bg_color; public uint draw_bg; public Gdk.Color fg_color; public uint inside_selection; public uint is_text; [CCode (array_length = false)] public weak Gdk.RGBA[] rgba; public int rise; public uint strikethrough; public uint underline; } [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_text_attributes_ref", type_id = "gtk_text_attributes_get_type ()", unref_function = "gtk_text_attributes_unref")] [Compact] public class TextAttributes { public weak Gtk.TextAppearance appearance; public uint bg_full_height; public Gtk.TextDirection direction; public uint editable; public weak Pango.FontDescription font; public double font_scale; public int indent; public uint invisible; public Gtk.Justification justification; public weak Pango.Language language; public int left_margin; [CCode (array_length = false)] public weak uint[] padding; public Gdk.Color pg_bg_color; public Gdk.RGBA pg_bg_rgba; public int pixels_above_lines; public int pixels_below_lines; public int pixels_inside_wrap; public uint refcount; public int right_margin; public weak Pango.TabArray tabs; public Gtk.WrapMode wrap_mode; [CCode (has_construct_function = false)] public TextAttributes (); public Gtk.TextAttributes copy (); public void copy_values (Gtk.TextAttributes dest); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class TextBTree { } [CCode (cheader_filename = "gtk/gtk.h")] public class TextBuffer : GLib.Object { [CCode (has_construct_function = false)] public TextBuffer (Gtk.TextTagTable? table); public void add_mark (Gtk.TextMark mark, Gtk.TextIter where); public void add_selection_clipboard (Gtk.Clipboard clipboard); public void apply_tag_by_name (string name, Gtk.TextIter start, Gtk.TextIter end); public bool backspace (Gtk.TextIter iter, bool interactive, bool default_editable); public void copy_clipboard (Gtk.Clipboard clipboard); public unowned Gtk.TextChildAnchor create_child_anchor (Gtk.TextIter iter); public unowned Gtk.TextMark create_mark (string? mark_name, Gtk.TextIter where, bool left_gravity); public unowned Gtk.TextTag create_tag (string? tag_name, ...); public void cut_clipboard (Gtk.Clipboard clipboard, bool default_editable); public void @delete (ref Gtk.TextIter start, ref Gtk.TextIter end); public bool delete_interactive (ref Gtk.TextIter start_iter, ref Gtk.TextIter end_iter, bool default_editable); public void delete_mark (Gtk.TextMark mark); public void delete_mark_by_name (string name); public bool delete_selection (bool interactive, bool default_editable); public bool deserialize (Gtk.TextBuffer content_buffer, Gdk.Atom format, Gtk.TextIter iter, [CCode (array_length_type = "gsize")] uint8[] data) throws GLib.Error; public bool deserialize_get_can_create_tags (Gdk.Atom format); public void deserialize_set_can_create_tags (Gdk.Atom format, bool can_create_tags); public void get_bounds (out Gtk.TextIter start, out Gtk.TextIter end); public int get_char_count (); public unowned Gtk.TargetList get_copy_target_list (); public Gdk.Atom[] get_deserialize_formats (); public void get_end_iter (out Gtk.TextIter iter); public bool get_has_selection (); public unowned Gtk.TextMark get_insert (); public void get_iter_at_child_anchor (out Gtk.TextIter iter, Gtk.TextChildAnchor anchor); public void get_iter_at_line (out Gtk.TextIter iter, int line_number); public void get_iter_at_line_index (out Gtk.TextIter iter, int line_number, int byte_index); public void get_iter_at_line_offset (out Gtk.TextIter iter, int line_number, int char_offset); public void get_iter_at_mark (out Gtk.TextIter iter, Gtk.TextMark mark); public void get_iter_at_offset (out Gtk.TextIter iter, int char_offset); public int get_line_count (); public unowned Gtk.TextMark get_mark (string name); public bool get_modified (); public unowned Gtk.TargetList get_paste_target_list (); public unowned Gtk.TextMark get_selection_bound (); public bool get_selection_bounds (out Gtk.TextIter start, out Gtk.TextIter end); public Gdk.Atom[] get_serialize_formats (); public string get_slice (Gtk.TextIter start, Gtk.TextIter end, bool include_hidden_chars); public void get_start_iter (out Gtk.TextIter iter); public unowned Gtk.TextTagTable get_tag_table (); public string get_text (Gtk.TextIter start, Gtk.TextIter end, bool include_hidden_chars); public void insert (ref Gtk.TextIter iter, string text, int len); public void insert_at_cursor (string text, int len); public bool insert_interactive (Gtk.TextIter iter, string text, int len, bool default_editable); public bool insert_interactive_at_cursor (string text, int len, bool default_editable); public void insert_range (Gtk.TextIter iter, Gtk.TextIter start, Gtk.TextIter end); public bool insert_range_interactive (Gtk.TextIter iter, Gtk.TextIter start, Gtk.TextIter end, bool default_editable); public void insert_with_tags (Gtk.TextIter iter, string text, int len, ...); public void insert_with_tags_by_name (Gtk.TextIter iter, string text, int len, ...); public void move_mark (Gtk.TextMark mark, Gtk.TextIter where); public void move_mark_by_name (string name, Gtk.TextIter where); public void paste_clipboard (Gtk.Clipboard clipboard, Gtk.TextIter? override_location, bool default_editable); public void place_cursor (Gtk.TextIter where); public Gdk.Atom register_deserialize_format (string mime_type, owned Gtk.TextBufferDeserializeFunc function); public Gdk.Atom register_deserialize_tagset (string tagset_name); public Gdk.Atom register_serialize_format (string mime_type, owned Gtk.TextBufferSerializeFunc function); public Gdk.Atom register_serialize_tagset (string tagset_name); public void remove_all_tags (Gtk.TextIter start, Gtk.TextIter end); public void remove_selection_clipboard (Gtk.Clipboard clipboard); public void remove_tag_by_name (string name, Gtk.TextIter start, Gtk.TextIter end); public void select_range (Gtk.TextIter ins, Gtk.TextIter bound); [CCode (array_length_type = "gsize")] public uint8[] serialize (Gtk.TextBuffer content_buffer, Gdk.Atom format, Gtk.TextIter start, Gtk.TextIter end); public void set_modified (bool setting); public void set_text (string text, int len = -1); public void unregister_deserialize_format (Gdk.Atom format); public void unregister_serialize_format (Gdk.Atom format); public Gtk.TargetList copy_target_list { get; } [NoAccessorMethod] public int cursor_position { get; } public bool has_selection { get; } public Gtk.TargetList paste_target_list { get; } public Gtk.TextTagTable tag_table { get; construct; } [NoAccessorMethod] public string text { owned get; set; } [HasEmitter] public virtual signal void apply_tag (Gtk.TextTag tag, Gtk.TextIter start, Gtk.TextIter end); [HasEmitter] public virtual signal void begin_user_action (); public virtual signal void changed (); public virtual signal void delete_range (Gtk.TextIter start, Gtk.TextIter end); [HasEmitter] public virtual signal void end_user_action (); [HasEmitter] public virtual signal void insert_child_anchor (Gtk.TextIter iter, Gtk.TextChildAnchor anchor); [HasEmitter] public virtual signal void insert_pixbuf (Gtk.TextIter iter, Gdk.Pixbuf pixbuf); public virtual signal void insert_text (ref Gtk.TextIter pos, string new_text, int new_text_length); public virtual signal void mark_deleted (Gtk.TextMark mark); public virtual signal void mark_set (Gtk.TextIter location, Gtk.TextMark mark); public virtual signal void modified_changed (); public virtual signal void paste_done (Gtk.Clipboard clipboard); [HasEmitter] public virtual signal void remove_tag (Gtk.TextTag tag, Gtk.TextIter start, Gtk.TextIter end); } [CCode (cheader_filename = "gtk/gtk.h")] public class TextCellAccessible : Gtk.RendererCellAccessible, Atk.Action, Atk.Component, Atk.Text { [CCode (has_construct_function = false)] protected TextCellAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class TextChildAnchor : GLib.Object { public void* segment; [CCode (has_construct_function = false)] public TextChildAnchor (); public bool get_deleted (); public GLib.List get_widgets (); } [CCode (cheader_filename = "gtk/gtk.h")] public class TextMark : GLib.Object { public void* segment; [CCode (has_construct_function = false)] public TextMark (string name, bool left_gravity); public unowned Gtk.TextBuffer get_buffer (); public bool get_deleted (); public bool get_left_gravity (); public unowned string get_name (); public bool get_visible (); public void set_visible (bool setting); public bool left_gravity { get; construct; } public string name { get; construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class TextTag : GLib.Object { [CCode (has_construct_function = false)] public TextTag (string? name = null); public int get_priority (); public void set_priority (int priority); [NoAccessorMethod] public bool accumulative_margin { get; set; } [NoAccessorMethod] public string background { set; } [NoAccessorMethod] public bool background_full_height { get; set; } [NoAccessorMethod] public bool background_full_height_set { get; set; } [Deprecated (replacement = "background_rgba", since = "3.4")] [NoAccessorMethod] public Gdk.Color background_gdk { get; set; } [NoAccessorMethod] public Gdk.RGBA background_rgba { get; set; } [NoAccessorMethod] public bool background_set { get; set; } [NoAccessorMethod] public Gtk.TextDirection direction { get; set; } [NoAccessorMethod] public bool editable { get; set; } [NoAccessorMethod] public bool editable_set { get; set; } [NoAccessorMethod] public string family { owned get; set; } [NoAccessorMethod] public bool family_set { get; set; } [NoAccessorMethod] public string font { owned get; set; } [NoAccessorMethod] public Pango.FontDescription font_desc { owned get; set; } [NoAccessorMethod] public string foreground { set; } [Deprecated (replacement = "foreground_rgba", since = "3.4")] [NoAccessorMethod] public Gdk.Color foreground_gdk { get; set; } [NoAccessorMethod] public Gdk.RGBA foreground_rgba { get; set; } [NoAccessorMethod] public bool foreground_set { get; set; } [NoAccessorMethod] public int indent { get; set; } [NoAccessorMethod] public bool indent_set { get; set; } [NoAccessorMethod] public bool invisible { get; set; } [NoAccessorMethod] public bool invisible_set { get; set; } [NoAccessorMethod] public Gtk.Justification justification { get; set; } [NoAccessorMethod] public bool justification_set { get; set; } [NoAccessorMethod] public string language { owned get; set; } [NoAccessorMethod] public bool language_set { get; set; } [NoAccessorMethod] public int left_margin { get; set; } [NoAccessorMethod] public bool left_margin_set { get; set; } [NoAccessorMethod] public string name { owned get; construct; } [NoAccessorMethod] public string paragraph_background { set; } [Deprecated (replacement = "paragraph_background_rgba", since = "3.4")] [NoAccessorMethod] public Gdk.Color paragraph_background_gdk { get; set; } [NoAccessorMethod] public Gdk.RGBA paragraph_background_rgba { get; set; } [NoAccessorMethod] public bool paragraph_background_set { get; set; } [NoAccessorMethod] public int pixels_above_lines { get; set; } [NoAccessorMethod] public bool pixels_above_lines_set { get; set; } [NoAccessorMethod] public int pixels_below_lines { get; set; } [NoAccessorMethod] public bool pixels_below_lines_set { get; set; } [NoAccessorMethod] public int pixels_inside_wrap { get; set; } [NoAccessorMethod] public bool pixels_inside_wrap_set { get; set; } [NoAccessorMethod] public int right_margin { get; set; } [NoAccessorMethod] public bool right_margin_set { get; set; } [NoAccessorMethod] public int rise { get; set; } [NoAccessorMethod] public bool rise_set { get; set; } [NoAccessorMethod] public double scale { get; set; } [NoAccessorMethod] public bool scale_set { get; set; } [NoAccessorMethod] public int size { get; set; } [NoAccessorMethod] public double size_points { get; set; } [NoAccessorMethod] public bool size_set { get; set; } [NoAccessorMethod] public Pango.Stretch stretch { get; set; } [NoAccessorMethod] public bool stretch_set { get; set; } [NoAccessorMethod] public bool strikethrough { get; set; } [NoAccessorMethod] public bool strikethrough_set { get; set; } [NoAccessorMethod] public Pango.Style style { get; set; } [NoAccessorMethod] public bool style_set { get; set; } [NoAccessorMethod] public Pango.TabArray tabs { owned get; set; } [NoAccessorMethod] public bool tabs_set { get; set; } [NoAccessorMethod] public Pango.Underline underline { get; set; } [NoAccessorMethod] public bool underline_set { get; set; } [NoAccessorMethod] public Pango.Variant variant { get; set; } [NoAccessorMethod] public bool variant_set { get; set; } [NoAccessorMethod] public int weight { get; set; } [NoAccessorMethod] public bool weight_set { get; set; } [NoAccessorMethod] public Gtk.WrapMode wrap_mode { get; set; } [NoAccessorMethod] public bool wrap_mode_set { get; set; } [HasEmitter] public virtual signal bool event (GLib.Object event_object, Gdk.Event event, Gtk.TextIter iter); } [CCode (cheader_filename = "gtk/gtk.h")] public class TextTagTable : GLib.Object, Gtk.Buildable { [CCode (has_construct_function = false)] public TextTagTable (); public void add (Gtk.TextTag tag); public void @foreach (Gtk.TextTagTableForeach func); public int get_size (); public unowned Gtk.TextTag lookup (string name); public void remove (Gtk.TextTag tag); public virtual signal void tag_added (Gtk.TextTag tag); public virtual signal void tag_changed (Gtk.TextTag tag, bool size_changed); public virtual signal void tag_removed (Gtk.TextTag tag); } [CCode (cheader_filename = "gtk/gtk.h")] public class TextView : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Scrollable { [CCode (has_construct_function = false, type = "GtkWidget*")] public TextView (); public void add_child_at_anchor (Gtk.Widget child, Gtk.TextChildAnchor anchor); public void add_child_in_window (Gtk.Widget child, Gtk.TextWindowType which_window, int xpos, int ypos); public bool backward_display_line (Gtk.TextIter iter); public bool backward_display_line_start (Gtk.TextIter iter); public void buffer_to_window_coords (Gtk.TextWindowType win, int buffer_x, int buffer_y, out int window_x, out int window_y); public bool forward_display_line (Gtk.TextIter iter); public bool forward_display_line_end (Gtk.TextIter iter); public bool get_accepts_tab (); public int get_border_window_size (Gtk.TextWindowType type); public unowned Gtk.TextBuffer get_buffer (); public void get_cursor_locations (Gtk.TextIter iter, Gdk.Rectangle strong, Gdk.Rectangle @weak); public bool get_cursor_visible (); public unowned Gtk.TextAttributes get_default_attributes (); public bool get_editable (); public unowned Gtk.Adjustment get_hadjustment (); public int get_indent (); public Gtk.InputHints get_input_hints (); public Gtk.InputPurpose get_input_purpose (); public void get_iter_at_location (out Gtk.TextIter iter, int x, int y); public void get_iter_at_position (out Gtk.TextIter iter, out int trailing, int x, int y); public void get_iter_location (Gtk.TextIter iter, out Gdk.Rectangle location); public Gtk.Justification get_justification (); public int get_left_margin (); public void get_line_at_y (out Gtk.TextIter target_iter, int y, out int line_top); public void get_line_yrange (Gtk.TextIter iter, out int y, out int height); public bool get_overwrite (); public int get_pixels_above_lines (); public int get_pixels_below_lines (); public int get_pixels_inside_wrap (); public int get_right_margin (); public unowned Pango.TabArray get_tabs (); public unowned Gtk.Adjustment get_vadjustment (); public void get_visible_rect (out Gdk.Rectangle visible_rect); public unowned Gdk.Window get_window (Gtk.TextWindowType win); public Gtk.TextWindowType get_window_type (Gdk.Window window); public Gtk.WrapMode get_wrap_mode (); public bool im_context_filter_keypress (Gdk.EventKey event); public void move_child (Gtk.Widget child, int xpos, int ypos); public bool move_mark_onscreen (Gtk.TextMark mark); public bool move_visually (Gtk.TextIter iter, int count); public bool place_cursor_onscreen (); public void reset_im_context (); public void scroll_mark_onscreen (Gtk.TextMark mark); public bool scroll_to_iter (Gtk.TextIter iter, double within_margin, bool use_align, double xalign, double yalign); public void scroll_to_mark (Gtk.TextMark mark, double within_margin, bool use_align, double xalign, double yalign); public void set_accepts_tab (bool accepts_tab); public void set_border_window_size (Gtk.TextWindowType type, int size); public void set_buffer (Gtk.TextBuffer buffer); public void set_cursor_visible (bool setting); public void set_editable (bool setting); public void set_indent (int indent); public void set_input_hints (Gtk.InputHints hints); public void set_input_purpose (Gtk.InputPurpose purpose); public void set_justification (Gtk.Justification justification); public void set_left_margin (int left_margin); public void set_overwrite (bool overwrite); public void set_pixels_above_lines (int pixels_above_lines); public void set_pixels_below_lines (int pixels_below_lines); public void set_pixels_inside_wrap (int pixels_inside_wrap); public void set_right_margin (int right_margin); public void set_tabs (Pango.TabArray tabs); public void set_wrap_mode (Gtk.WrapMode wrap_mode); public bool starts_display_line (Gtk.TextIter iter); public void window_to_buffer_coords (Gtk.TextWindowType win, int window_x, int window_y, out int buffer_x, out int buffer_y); [CCode (has_construct_function = false, type = "GtkWidget*")] public TextView.with_buffer (Gtk.TextBuffer buffer); public bool accepts_tab { get; set; } public Gtk.TextBuffer buffer { get; set; } public bool cursor_visible { get; set; } public bool editable { get; set; } [NoAccessorMethod] public string im_module { owned get; set; } public int indent { get; set; } public Gtk.InputHints input_hints { get; set; } public Gtk.InputPurpose input_purpose { get; set; } public Gtk.Justification justification { get; set; } public int left_margin { get; set; } public bool overwrite { get; set; } public int pixels_above_lines { get; set; } public int pixels_below_lines { get; set; } public int pixels_inside_wrap { get; set; } [NoAccessorMethod] public bool populate_all { get; set; } public int right_margin { get; set; } public Pango.TabArray tabs { get; set; } public Gtk.WrapMode wrap_mode { get; set; } public virtual signal void backspace (); public virtual signal void copy_clipboard (); public virtual signal void cut_clipboard (); public virtual signal void delete_from_cursor (Gtk.DeleteType type, int count); public virtual signal void insert_at_cursor (string str); public virtual signal void move_cursor (Gtk.MovementStep step, int count, bool extend_selection); public virtual signal void move_viewport (Gtk.ScrollStep p0, int p1); public virtual signal void paste_clipboard (); public virtual signal void populate_popup (Gtk.Menu popup); public virtual signal void preedit_changed (string p0); public virtual signal void select_all (bool p0); public virtual signal void set_anchor (); public virtual signal void toggle_cursor_visible (); public virtual signal void toggle_overwrite (); } [CCode (cheader_filename = "gtk/gtk.h")] public class TextViewAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.EditableText, Atk.Text, Atk.StreamableContent { [CCode (has_construct_function = false)] protected TextViewAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class ThemeEngine { } [CCode (cheader_filename = "gtk/gtk.h")] public class ThemingEngine : GLib.Object { [CCode (has_construct_function = false)] protected ThemingEngine (); public void @get (Gtk.StateFlags state, ...); public Gdk.RGBA get_background_color (Gtk.StateFlags state); public Gtk.Border get_border (Gtk.StateFlags state); public Gdk.RGBA get_border_color (Gtk.StateFlags state); public Gdk.RGBA get_color (Gtk.StateFlags state); public Gtk.TextDirection get_direction (); public unowned Pango.FontDescription get_font (Gtk.StateFlags state); public Gtk.JunctionSides get_junction_sides (); public Gtk.Border get_margin (Gtk.StateFlags state); public Gtk.Border get_padding (Gtk.StateFlags state); public unowned Gtk.WidgetPath get_path (); public GLib.Value get_property (string property, Gtk.StateFlags state); public unowned Gdk.Screen get_screen (); public Gtk.StateFlags get_state (); public void get_style (); public GLib.Value get_style_property (string property_name); public void get_style_valist (void* args); public void get_valist (Gtk.StateFlags state, void* args); public bool has_class (string style_class); public bool has_region (string style_region, out Gtk.RegionFlags flags); public static unowned Gtk.ThemingEngine load (string name); public bool lookup_color (string color_name, out Gdk.RGBA color); public static void register_property (string name_space, Gtk.StylePropertyParser? parse_func, GLib.ParamSpec pspec); [NoWrapper] public virtual void render_activity (Cairo.Context cr, double x, double y, double width, double height); [NoWrapper] public virtual void render_arrow (Cairo.Context cr, double angle, double x, double y, double size); [NoWrapper] public virtual void render_background (Cairo.Context cr, double x, double y, double width, double height); [NoWrapper] public virtual void render_check (Cairo.Context cr, double x, double y, double width, double height); [NoWrapper] public virtual void render_expander (Cairo.Context cr, double x, double y, double width, double height); [NoWrapper] public virtual void render_extension (Cairo.Context cr, double x, double y, double width, double height, Gtk.PositionType gap_side); [NoWrapper] public virtual void render_focus (Cairo.Context cr, double x, double y, double width, double height); [NoWrapper] public virtual void render_frame (Cairo.Context cr, double x, double y, double width, double height); [NoWrapper] public virtual void render_frame_gap (Cairo.Context cr, double x, double y, double width, double height, Gtk.PositionType gap_side, double xy0_gap, double xy1_gap); [NoWrapper] public virtual void render_handle (Cairo.Context cr, double x, double y, double width, double height); [NoWrapper] public virtual void render_icon (Cairo.Context cr, Gdk.Pixbuf pixbuf, double x, double y); [NoWrapper] public virtual unowned Gdk.Pixbuf render_icon_pixbuf (Gtk.IconSource source, Gtk.IconSize size); [NoWrapper] public virtual void render_icon_surface (Cairo.Context cr, Cairo.Surface surface, double x, double y); [NoWrapper] public virtual void render_layout (Cairo.Context cr, double x, double y, Pango.Layout layout); [NoWrapper] public virtual void render_line (Cairo.Context cr, double x0, double y0, double x1, double y1); [NoWrapper] public virtual void render_option (Cairo.Context cr, double x, double y, double width, double height); [NoWrapper] public virtual void render_slider (Cairo.Context cr, double x, double y, double width, double height, Gtk.Orientation orientation); [Deprecated (since = "3.6")] public bool state_is_running (Gtk.StateType state, out double progress); [NoAccessorMethod] public string name { owned get; construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class ToggleAction : Gtk.Action, Gtk.Buildable { [CCode (has_construct_function = false)] public ToggleAction (string name, string? label, string? tooltip, string? stock_id); public bool get_active (); public bool get_draw_as_radio (); public void set_active (bool is_active); public void set_draw_as_radio (bool draw_as_radio); public bool active { get; set; } public bool draw_as_radio { get; set; } [HasEmitter] public virtual signal void toggled (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ToggleButton : Gtk.Button, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ToggleButton (); public bool get_active (); public bool get_inconsistent (); public bool get_mode (); public void set_active (bool is_active); public void set_inconsistent (bool setting); public void set_mode (bool draw_indicator); [CCode (has_construct_function = false, type = "GtkWidget*")] public ToggleButton.with_label (string label); [CCode (has_construct_function = false, type = "GtkWidget*")] public ToggleButton.with_mnemonic (string label); public bool active { get; set; } [NoAccessorMethod] public bool draw_indicator { get; set; } public bool inconsistent { get; set; } [HasEmitter] public virtual signal void toggled (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ToggleButtonAccessible : Gtk.ButtonAccessible, Atk.Component, Atk.Action, Atk.Image { [CCode (has_construct_function = false)] protected ToggleButtonAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ToggleToolButton : Gtk.ToolButton, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkToolItem*")] public ToggleToolButton (); [CCode (has_construct_function = false, type = "GtkToolItem*")] public ToggleToolButton.from_stock (string stock_id); public bool get_active (); public void set_active (bool is_active); public bool active { get; set; } public virtual signal void toggled (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ToolButton : Gtk.ToolItem, Atk.Implementor, Gtk.Buildable, Gtk.Activatable, Gtk.Actionable { [CCode (has_construct_function = false, type = "GtkToolItem*")] public ToolButton (Gtk.Widget? icon_widget, string? label); [CCode (has_construct_function = false, type = "GtkToolItem*")] public ToolButton.from_stock (string stock_id); public unowned string get_icon_name (); public unowned Gtk.Widget get_icon_widget (); public unowned string get_label (); public unowned Gtk.Widget get_label_widget (); public unowned string get_stock_id (); public bool get_use_underline (); public void set_icon_name (string icon_name); public void set_icon_widget (Gtk.Widget icon_widget); public void set_label (string label); public void set_label_widget (Gtk.Widget label_widget); public void set_stock_id (string stock_id); public void set_use_underline (bool use_underline); public string icon_name { get; set; } public Gtk.Widget icon_widget { get; set; } public string label { get; set; } public Gtk.Widget label_widget { get; set; } public string stock_id { get; set; } public bool use_underline { get; set; } public virtual signal void clicked (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ToolItem : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.Activatable { [CCode (has_construct_function = false)] public ToolItem (); public Pango.EllipsizeMode get_ellipsize_mode (); public bool get_expand (); public bool get_homogeneous (); public Gtk.IconSize get_icon_size (); public bool get_is_important (); public Gtk.Orientation get_orientation (); public unowned Gtk.Widget get_proxy_menu_item (string menu_item_id); public Gtk.ReliefStyle get_relief_style (); public float get_text_alignment (); public Gtk.Orientation get_text_orientation (); public unowned Gtk.SizeGroup get_text_size_group (); public Gtk.ToolbarStyle get_toolbar_style (); public bool get_use_drag_window (); public bool get_visible_horizontal (); public bool get_visible_vertical (); public void rebuild_menu (); public unowned Gtk.Widget retrieve_proxy_menu_item (); public void set_expand (bool expand); public void set_homogeneous (bool homogeneous); public void set_is_important (bool is_important); public void set_proxy_menu_item (string menu_item_id, Gtk.Widget menu_item); public void set_tooltip_markup (string markup); public void set_tooltip_text (string text); public void set_use_drag_window (bool use_drag_window); public void set_visible_horizontal (bool visible_horizontal); public void set_visible_vertical (bool visible_vertical); public bool is_important { get; set; } public bool visible_horizontal { get; set; } public bool visible_vertical { get; set; } public virtual signal bool create_menu_proxy (); public virtual signal void toolbar_reconfigured (); } [CCode (cheader_filename = "gtk/gtk.h")] public class ToolItemGroup : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.ToolShell { [CCode (has_construct_function = false, type = "GtkWidget*")] public ToolItemGroup (string label); public bool get_collapsed (); public unowned Gtk.ToolItem get_drop_item (int x, int y); public Pango.EllipsizeMode get_ellipsize (); public Gtk.ReliefStyle get_header_relief (); public int get_item_position (Gtk.ToolItem item); public unowned string get_label (); public unowned Gtk.Widget get_label_widget (); public uint get_n_items (); public unowned Gtk.ToolItem get_nth_item (uint index); public void insert (Gtk.ToolItem item, int position); public void set_collapsed (bool collapsed); public void set_ellipsize (Pango.EllipsizeMode ellipsize); public void set_header_relief (Gtk.ReliefStyle style); public void set_item_position (Gtk.ToolItem item, int position); public void set_label (string label); public void set_label_widget (Gtk.Widget label_widget); public bool collapsed { get; set; } public Pango.EllipsizeMode ellipsize { get; set; } public Gtk.ReliefStyle header_relief { get; set; } public string label { get; set; } public Gtk.Widget label_widget { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class ToolPalette : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Orientable, Gtk.Scrollable { [CCode (has_construct_function = false, type = "GtkWidget*")] public ToolPalette (); public void add_drag_dest (Gtk.Widget widget, Gtk.DestDefaults flags, Gtk.ToolPaletteDragTargets targets, Gdk.DragAction actions); public unowned Gtk.Widget get_drag_item (Gtk.SelectionData selection); public static Gtk.TargetEntry get_drag_target_group (); public static Gtk.TargetEntry get_drag_target_item (); public unowned Gtk.ToolItemGroup get_drop_group (int x, int y); public unowned Gtk.ToolItem get_drop_item (int x, int y); public bool get_exclusive (Gtk.ToolItemGroup group); public bool get_expand (Gtk.ToolItemGroup group); public int get_group_position (Gtk.ToolItemGroup group); public unowned Gtk.Adjustment get_hadjustment (); public Gtk.IconSize get_icon_size (); public Gtk.ToolbarStyle get_style (); public unowned Gtk.Adjustment get_vadjustment (); public void set_drag_source (Gtk.ToolPaletteDragTargets targets); public void set_exclusive (Gtk.ToolItemGroup group, bool exclusive); public void set_expand (Gtk.ToolItemGroup group, bool expand); public void set_group_position (Gtk.ToolItemGroup group, int position); public void set_icon_size (Gtk.IconSize icon_size); public void set_style (Gtk.ToolbarStyle style); public void unset_icon_size (); public void unset_style (); public Gtk.IconSize icon_size { get; set; } [NoAccessorMethod] public bool icon_size_set { get; set; } [NoAccessorMethod] public Gtk.ToolbarStyle toolbar_style { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Toolbar : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.ToolShell, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Toolbar (); public int get_drop_index (int x, int y); public int get_item_index (Gtk.ToolItem item); public int get_n_items (); public unowned Gtk.ToolItem get_nth_item (int n); public bool get_show_arrow (); public void insert (Gtk.ToolItem item, int pos); public void set_drop_highlight_item (Gtk.ToolItem tool_item, int index_); public void set_icon_size (Gtk.IconSize icon_size); public void set_show_arrow (bool show_arrow); public void set_style (Gtk.ToolbarStyle style); public void unset_icon_size (); public void unset_style (); public int icon_size { get; set; } [NoAccessorMethod] public bool icon_size_set { get; set; } public bool show_arrow { get; set; } [NoAccessorMethod] public Gtk.ToolbarStyle toolbar_style { get; set; } public virtual signal bool focus_home_or_end (bool p0); public virtual signal void orientation_changed (Gtk.Orientation orientation); public virtual signal bool popup_context_menu (int x, int y, int button_number); public virtual signal void style_changed (Gtk.ToolbarStyle style); } [CCode (cheader_filename = "gtk/gtk.h")] public class Tooltip : GLib.Object { [CCode (has_construct_function = false)] protected Tooltip (); public void set_custom (Gtk.Widget custom_widget); public void set_icon (Gdk.Pixbuf pixbuf); public void set_icon_from_gicon (GLib.Icon gicon, Gtk.IconSize size); public void set_icon_from_icon_name (string icon_name, Gtk.IconSize size); public void set_icon_from_stock (string stock_id, Gtk.IconSize size); public void set_markup (string markup); public void set_text (string text); public void set_tip_area (Gdk.Rectangle rect); public static void trigger_tooltip_query (Gdk.Display display); } [CCode (cheader_filename = "gtk/gtk.h")] public class ToplevelAccessible : Atk.Object { [CCode (has_construct_function = false)] protected ToplevelAccessible (); public unowned GLib.List get_children (); } [CCode (cheader_filename = "gtk/gtk.h")] public class TreeModelFilter : GLib.Object, Gtk.TreeModel, Gtk.TreeDragSource { [CCode (has_construct_function = false, type = "GtkTreeModel*")] public TreeModelFilter (Gtk.TreeModel child_model, Gtk.TreePath? root); public void clear_cache (); public bool convert_child_iter_to_iter (out Gtk.TreeIter filter_iter, Gtk.TreeIter child_iter); public unowned Gtk.TreePath convert_child_path_to_path (Gtk.TreePath child_path); public void convert_iter_to_child_iter (out Gtk.TreeIter child_iter, Gtk.TreeIter filter_iter); public unowned Gtk.TreePath convert_path_to_child_path (Gtk.TreePath filter_path); public unowned Gtk.TreeModel get_model (); [NoWrapper] public virtual void modify (Gtk.TreeModel child_model, Gtk.TreeIter iter, GLib.Value value, int column); public void refilter (); public void set_modify_func ([CCode (array_length_pos = 0.9)] GLib.Type[] types, owned Gtk.TreeModelFilterModifyFunc func); public void set_visible_column (int column); public void set_visible_func (owned Gtk.TreeModelFilterVisibleFunc func); [NoWrapper] public virtual bool visible (Gtk.TreeModel child_model, Gtk.TreeIter iter); [NoAccessorMethod] public Gtk.TreeModel child_model { owned get; construct; } [NoAccessorMethod] public Gtk.TreePath virtual_root { owned get; construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public class TreeModelSort : GLib.Object, Gtk.TreeModel, Gtk.TreeSortable, Gtk.TreeDragSource { [CCode (has_construct_function = false)] protected TreeModelSort (); public void clear_cache (); public bool convert_child_iter_to_iter (out Gtk.TreeIter sort_iter, Gtk.TreeIter child_iter); public unowned Gtk.TreePath convert_child_path_to_path (Gtk.TreePath child_path); public void convert_iter_to_child_iter (out Gtk.TreeIter child_iter, Gtk.TreeIter sorted_iter); public unowned Gtk.TreePath convert_path_to_child_path (Gtk.TreePath sorted_path); public unowned Gtk.TreeModel get_model (); public bool iter_is_valid (Gtk.TreeIter iter); public void reset_default_sort_func (); [CCode (has_construct_function = false, type = "GtkTreeModel*")] public TreeModelSort.with_model (Gtk.TreeModel child_model); public Gtk.TreeModel model { get; construct; } } [CCode (cheader_filename = "gtk/gtk.h", const_cname = "GtkTreePath", copy_function = "gtk_tree_path_copy", type_id = "gtk_tree_path_get_type ()")] [Compact] [Immutable] public class TreePath { [CCode (has_construct_function = false)] public TreePath (); public void append_index (int index_); public int compare (Gtk.TreePath b); public Gtk.TreePath copy (); public void down (); [CCode (has_construct_function = false)] public TreePath.first (); [CCode (has_construct_function = false, sentinel = "-1")] public TreePath.from_indices (...); [CCode (has_construct_function = false)] public TreePath.from_string (string path); public int get_depth (); [CCode (cname = "gtk_tree_path_get_indices_with_depth")] public unowned int[] get_indices (); public bool is_ancestor (Gtk.TreePath descendant); public bool is_descendant (Gtk.TreePath ancestor); public void next (); public void prepend_index (int index_); public bool prev (); public string to_string (); public bool up (); } [CCode (cheader_filename = "gtk/gtk.h", copy_function = "gtk_tree_row_reference_copy", type_id = "gtk_tree_row_reference_get_type ()")] [Compact] [Immutable] public class TreeRowReference { [CCode (has_construct_function = false)] public TreeRowReference (Gtk.TreeModel model, Gtk.TreePath path); public Gtk.TreeRowReference copy (); public static void deleted (GLib.Object proxy, Gtk.TreePath path); public unowned Gtk.TreeModel get_model (); public Gtk.TreePath get_path (); public static void inserted (GLib.Object proxy, Gtk.TreePath path); [CCode (has_construct_function = false)] public TreeRowReference.proxy (GLib.Object proxy, Gtk.TreeModel model, Gtk.TreePath path); public static void reordered (GLib.Object proxy, Gtk.TreePath path, Gtk.TreeIter iter, int[] new_order); public bool valid (); } [CCode (cheader_filename = "gtk/gtk.h")] public class TreeSelection : GLib.Object { [CCode (has_construct_function = false)] protected TreeSelection (); public int count_selected_rows (); public Gtk.SelectionMode get_mode (); public unowned Gtk.TreeSelectionFunc get_select_function (); public bool get_selected (out unowned Gtk.TreeModel model, out Gtk.TreeIter iter); public GLib.List get_selected_rows (out unowned Gtk.TreeModel model); public unowned Gtk.TreeView get_tree_view (); public void* get_user_data (); public bool iter_is_selected (Gtk.TreeIter iter); public bool path_is_selected (Gtk.TreePath path); public void select_all (); public void select_iter (Gtk.TreeIter iter); public void select_path (Gtk.TreePath path); public void select_range (Gtk.TreePath start_path, Gtk.TreePath end_path); public void selected_foreach (Gtk.TreeSelectionForeachFunc func); public void set_mode (Gtk.SelectionMode type); public void set_select_function (owned Gtk.TreeSelectionFunc func); public void unselect_all (); public void unselect_iter (Gtk.TreeIter iter); public void unselect_path (Gtk.TreePath path); public void unselect_range (Gtk.TreePath start_path, Gtk.TreePath end_path); public Gtk.SelectionMode mode { get; set; } public virtual signal void changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public class TreeStore : GLib.Object, Gtk.TreeModel, Gtk.TreeDragSource, Gtk.TreeDragDest, Gtk.TreeSortable, Gtk.Buildable { [CCode (has_construct_function = false, sentinel = "")] public TreeStore (int n_columns, ...); public void append (out Gtk.TreeIter iter, Gtk.TreeIter? parent); public void clear (); public void insert (out Gtk.TreeIter iter, Gtk.TreeIter? parent, int position); public void insert_after (out Gtk.TreeIter iter, Gtk.TreeIter? parent, Gtk.TreeIter? sibling); public void insert_before (out Gtk.TreeIter iter, Gtk.TreeIter? parent, Gtk.TreeIter? sibling); [CCode (sentinel = "-1")] public void insert_with_values (out Gtk.TreeIter iter, Gtk.TreeIter? parent, int position, ...); public void insert_with_valuesv (out Gtk.TreeIter iter, Gtk.TreeIter? parent, int position, int columns, GLib.Value[] values); public bool is_ancestor (Gtk.TreeIter iter, Gtk.TreeIter descendant); public int iter_depth (Gtk.TreeIter iter); public bool iter_is_valid (Gtk.TreeIter iter); public void move_after (ref Gtk.TreeIter iter, Gtk.TreeIter? position); public void move_before (ref Gtk.TreeIter iter, Gtk.TreeIter? position); [CCode (cname = "gtk_tree_store_newv", has_construct_function = false)] public TreeStore.newv ([CCode (array_length_pos = 0.9)] GLib.Type[] types); public void prepend (out Gtk.TreeIter iter, Gtk.TreeIter? parent); public bool remove (ref Gtk.TreeIter iter); public void reorder (Gtk.TreeIter? parent, int new_order); [CCode (sentinel = "-1")] public void @set (Gtk.TreeIter iter, ...); public void set_column_types ([CCode (array_length_pos = 0.9)] GLib.Type[] types); public void set_valist (Gtk.TreeIter iter, void* var_args); public void set_value (Gtk.TreeIter iter, int column, GLib.Value value); public void set_valuesv (Gtk.TreeIter iter, int columns, GLib.Value[] values); public void swap (Gtk.TreeIter a, Gtk.TreeIter b); } [CCode (cheader_filename = "gtk/gtk.h")] public class TreeView : Gtk.Container, Atk.Implementor, Gtk.Buildable, Gtk.Scrollable { [CCode (has_construct_function = false, type = "GtkWidget*")] public TreeView (); public int append_column (Gtk.TreeViewColumn column); public void collapse_all (); public bool collapse_row (Gtk.TreePath path); public void columns_autosize (); public void convert_bin_window_to_tree_coords (int bx, int by, out int tx, out int ty); public void convert_bin_window_to_widget_coords (int bx, int by, out int wx, out int wy); public void convert_tree_to_bin_window_coords (int tx, int ty, out int bx, out int by); public void convert_tree_to_widget_coords (int tx, int ty, out int wx, out int wy); public void convert_widget_to_bin_window_coords (int wx, int wy, out int bx, out int by); public void convert_widget_to_tree_coords (int wx, int wy, out int tx, out int ty); public unowned Cairo.Surface create_row_drag_icon (Gtk.TreePath path); public void enable_model_drag_dest (Gtk.TargetEntry[] targets, Gdk.DragAction actions); public void enable_model_drag_source (Gdk.ModifierType start_button_mask, Gtk.TargetEntry[] targets, Gdk.DragAction actions); public void expand_all (); public bool expand_row (Gtk.TreePath path, bool open_all); public void expand_to_path (Gtk.TreePath path); public bool get_activate_on_single_click (); public void get_background_area (Gtk.TreePath? path, Gtk.TreeViewColumn? column, out Gdk.Rectangle rect); public unowned Gdk.Window get_bin_window (); public void get_cell_area (Gtk.TreePath? path, Gtk.TreeViewColumn? column, out Gdk.Rectangle rect); public unowned Gtk.TreeViewColumn get_column (int n); public GLib.List get_columns (); public void get_cursor (out Gtk.TreePath? path, out unowned Gtk.TreeViewColumn? focus_column); public bool get_dest_row_at_pos (int drag_x, int drag_y, out Gtk.TreePath? path, out Gtk.TreeViewDropPosition pos); public void get_drag_dest_row (out Gtk.TreePath? path, out Gtk.TreeViewDropPosition pos); public bool get_enable_search (); public bool get_enable_tree_lines (); public unowned Gtk.TreeViewColumn get_expander_column (); public bool get_fixed_height_mode (); public Gtk.TreeViewGridLines get_grid_lines (); public unowned Gtk.Adjustment get_hadjustment (); public bool get_headers_clickable (); public bool get_headers_visible (); public bool get_hover_expand (); public bool get_hover_selection (); public int get_level_indentation (); public unowned Gtk.TreeModel get_model (); public uint get_n_columns (); public bool get_path_at_pos (int x, int y, out Gtk.TreePath? path, out unowned Gtk.TreeViewColumn? column, out int cell_x, out int cell_y); public bool get_reorderable (); public unowned Gtk.TreeViewRowSeparatorFunc get_row_separator_func (); public bool get_rubber_banding (); public bool get_rules_hint (); public int get_search_column (); public unowned Gtk.Entry get_search_entry (); public unowned Gtk.TreeViewSearchEqualFunc get_search_equal_func (); public unowned Gtk.TreeViewSearchPositionFunc get_search_position_func (); public unowned Gtk.TreeSelection get_selection (); public bool get_show_expanders (); public int get_tooltip_column (); public bool get_tooltip_context (ref int x, ref int y, bool keyboard_tip, out unowned Gtk.TreeModel model, out unowned Gtk.TreePath path, out Gtk.TreeIter iter); public unowned Gtk.Adjustment get_vadjustment (); public bool get_visible_range (out Gtk.TreePath start_path, out Gtk.TreePath end_path); public void get_visible_rect (out Gdk.Rectangle visible_rect); public int insert_column (Gtk.TreeViewColumn column, int position); public int insert_column_with_attributes (int position, string? title, Gtk.CellRenderer cell, ...); public int insert_column_with_data_func (int position, string title, Gtk.CellRenderer cell, owned Gtk.TreeCellDataFunc func); public bool is_blank_at_pos (int x, int y, out unowned Gtk.TreePath path, out unowned Gtk.TreeViewColumn column, int cell_x, int cell_y); [CCode (cname = "gtk_tree_view_row_expanded")] public bool is_row_expanded (Gtk.TreePath path); public bool is_rubber_banding_active (); public void map_expanded_rows (Gtk.TreeViewMappingFunc func, void* data); public void move_column_after (Gtk.TreeViewColumn column, Gtk.TreeViewColumn base_column); public int remove_column (Gtk.TreeViewColumn column); public void scroll_to_cell (Gtk.TreePath? path, Gtk.TreeViewColumn? column, bool use_align, float row_align, float col_align); public void scroll_to_point (int tree_x, int tree_y); public void set_activate_on_single_click (bool single); public void set_column_drag_function (owned Gtk.TreeViewColumnDropFunc func); public void set_cursor (Gtk.TreePath path, Gtk.TreeViewColumn? focus_column, bool start_editing); public void set_cursor_on_cell (Gtk.TreePath path, Gtk.TreeViewColumn focus_column, Gtk.CellRenderer focus_cell, bool start_editing); public void set_destroy_count_func (owned Gtk.TreeDestroyCountFunc func); public void set_drag_dest_row (Gtk.TreePath? path, Gtk.TreeViewDropPosition pos); public void set_enable_search (bool enable_search); public void set_enable_tree_lines (bool enabled); public void set_expander_column (Gtk.TreeViewColumn column); public void set_fixed_height_mode (bool enable); public void set_grid_lines (Gtk.TreeViewGridLines grid_lines); public void set_hadjustment (Gtk.Adjustment adjustment); public void set_headers_clickable (bool setting); public void set_headers_visible (bool headers_visible); public void set_hover_expand (bool expand); public void set_hover_selection (bool hover); public void set_level_indentation (int indentation); public void set_model (Gtk.TreeModel? model); public void set_reorderable (bool reorderable); public void set_row_separator_func (owned Gtk.TreeViewRowSeparatorFunc func); public void set_rubber_banding (bool enable); public void set_rules_hint (bool setting); public void set_search_column (int column); public void set_search_entry (Gtk.Entry? entry); public void set_search_equal_func (owned Gtk.TreeViewSearchEqualFunc search_equal_func); public void set_search_position_func (owned Gtk.TreeViewSearchPositionFunc func); public void set_show_expanders (bool enabled); public void set_tooltip_cell (Gtk.Tooltip tooltip, Gtk.TreePath path, Gtk.TreeViewColumn column, Gtk.CellRenderer cell); public void set_tooltip_column (int column); public void set_tooltip_row (Gtk.Tooltip tooltip, Gtk.TreePath path); public void set_vadjustment (Gtk.Adjustment adjustment); public void unset_rows_drag_dest (); public void unset_rows_drag_source (); [CCode (has_construct_function = false, type = "GtkWidget*")] public TreeView.with_model (Gtk.TreeModel model); public bool activate_on_single_click { get; set; } [NoAccessorMethod] public Gtk.TreeViewGridLines enable_grid_lines { get; set; } public bool enable_search { get; set; } public bool enable_tree_lines { get; set; } public Gtk.TreeViewColumn expander_column { get; set; } public bool fixed_height_mode { get; set; } public bool headers_clickable { get; set; } public bool headers_visible { get; set; } public bool hover_expand { get; set; } public bool hover_selection { get; set; } public int level_indentation { get; set; } public Gtk.TreeModel model { get; set; } public bool reorderable { get; set; } public bool rubber_banding { get; set; } public bool rules_hint { get; set; } public int search_column { get; set; } public bool show_expanders { get; set; } public int tooltip_column { get; set; } public virtual signal void columns_changed (); public virtual signal void cursor_changed (); public virtual signal bool expand_collapse_cursor_row (bool logical, bool expand, bool open_all); public virtual signal bool move_cursor (Gtk.MovementStep step, int count); [HasEmitter] public virtual signal void row_activated (Gtk.TreePath path, Gtk.TreeViewColumn column); public virtual signal void row_collapsed (Gtk.TreeIter iter, Gtk.TreePath path); public virtual signal void row_expanded (Gtk.TreeIter iter, Gtk.TreePath path); public virtual signal bool select_all (); public virtual signal bool select_cursor_parent (); public virtual signal bool select_cursor_row (bool start_editing); public virtual signal bool start_interactive_search (); public virtual signal bool test_collapse_row (Gtk.TreeIter iter, Gtk.TreePath path); public virtual signal bool test_expand_row (Gtk.TreeIter iter, Gtk.TreePath path); public virtual signal bool toggle_cursor_row (); public virtual signal bool unselect_all (); } [CCode (cheader_filename = "gtk/gtk.h")] public class TreeViewAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Table, Atk.Selection, Gtk.CellAccessibleParent { [CCode (has_construct_function = false)] protected TreeViewAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] public class TreeViewColumn : GLib.InitiallyUnowned, Gtk.CellLayout, Gtk.Buildable { [CCode (has_construct_function = false)] public TreeViewColumn (); public bool cell_get_position (Gtk.CellRenderer cell_renderer, out int x_offset, out int width); public void cell_get_size (out Gdk.Rectangle cell_area, out int x_offset, out int y_offset, out int width, out int height); public bool cell_is_visible (); public void cell_set_cell_data (Gtk.TreeModel tree_model, Gtk.TreeIter iter, bool is_expander, bool is_expanded); public void focus_cell (Gtk.CellRenderer cell); public float get_alignment (); public unowned Gtk.Widget get_button (); public bool get_clickable (); public bool get_expand (); public int get_fixed_width (); public int get_max_width (); public int get_min_width (); public bool get_reorderable (); public bool get_resizable (); public Gtk.TreeViewColumnSizing get_sizing (); public int get_sort_column_id (); public bool get_sort_indicator (); public Gtk.SortType get_sort_order (); public int get_spacing (); public unowned string get_title (); public unowned Gtk.Widget get_tree_view (); public bool get_visible (); public unowned Gtk.Widget get_widget (); public int get_width (); public int get_x_offset (); public void queue_resize (); public void set_alignment (float xalign); public void set_attributes (Gtk.CellRenderer cell_renderer, ...); public void set_clickable (bool clickable); public void set_expand (bool expand); public void set_fixed_width (int fixed_width); public void set_max_width (int max_width); public void set_min_width (int min_width); public void set_reorderable (bool reorderable); public void set_resizable (bool resizable); public void set_sizing (Gtk.TreeViewColumnSizing type); public void set_sort_column_id (int sort_column_id); public void set_sort_indicator (bool setting); public void set_sort_order (Gtk.SortType order); public void set_spacing (int spacing); public void set_title (string title); public void set_visible (bool visible); public void set_widget (Gtk.Widget widget); [CCode (has_construct_function = false)] public TreeViewColumn.with_area (Gtk.CellArea area); [CCode (has_construct_function = false)] public TreeViewColumn.with_attributes (string? title, Gtk.CellRenderer cell, ...); public float alignment { get; set; } [NoAccessorMethod] public Gtk.CellArea cell_area { owned get; construct; } public bool clickable { get; set; } public bool expand { get; set; } public int fixed_width { get; set; } public int max_width { get; set; } public int min_width { get; set; } public bool reorderable { get; set; } public bool resizable { get; set; } public Gtk.TreeViewColumnSizing sizing { get; set; } public int sort_column_id { get; set; } public bool sort_indicator { get; set; } public Gtk.SortType sort_order { get; set; } public int spacing { get; set; } public string title { get; set; } public bool visible { get; set; } public Gtk.Widget widget { get; set; } public int width { get; } public int x_offset { get; } [HasEmitter] public virtual signal void clicked (); } [CCode (cheader_filename = "gtk/gtk.h")] public class UIManager : GLib.Object, Gtk.Buildable { [CCode (has_construct_function = false)] public UIManager (); public void add_ui (uint merge_id, string path, string name, string? action, Gtk.UIManagerItemType type, bool top); public uint add_ui_from_file (string filename) throws GLib.Error; public uint add_ui_from_resource (string resource_path) throws GLib.Error; public uint add_ui_from_string (string buffer, ssize_t length) throws GLib.Error; public void ensure_update (); public unowned Gtk.AccelGroup get_accel_group (); public virtual unowned Gtk.Action get_action (string path); public unowned GLib.List get_action_groups (); [Deprecated (since = "3.4")] public bool get_add_tearoffs (); public GLib.SList get_toplevels (Gtk.UIManagerItemType types); public unowned string get_ui (); public virtual unowned Gtk.Widget get_widget (string path); public void insert_action_group (Gtk.ActionGroup action_group, int pos); public uint new_merge_id (); public void remove_action_group (Gtk.ActionGroup action_group); public void remove_ui (uint merge_id); [Deprecated (since = "3.4")] public void set_add_tearoffs (bool add_tearoffs); [Deprecated (since = "3.4")] public bool add_tearoffs { get; set; } public string ui { get; } public virtual signal void actions_changed (); public virtual signal void add_widget (Gtk.Widget widget); public virtual signal void connect_proxy (Gtk.Action action, Gtk.Widget proxy); public virtual signal void disconnect_proxy (Gtk.Action action, Gtk.Widget proxy); public virtual signal void post_activate (Gtk.Action action); public virtual signal void pre_activate (Gtk.Action action); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Box", since = "3.2")] public class VBox : Gtk.Box, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public VBox (bool homogeneous, int spacing); } [CCode (cheader_filename = "gtk/gtk.h")] public class VButtonBox : Gtk.ButtonBox, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public VButtonBox (); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Paned", since = "3.2")] public class VPaned : Gtk.Paned, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public VPaned (); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Scale", since = "3.2")] public class VScale : Gtk.Scale, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public VScale (Gtk.Adjustment? adjustment); [CCode (has_construct_function = false, type = "GtkWidget*")] public VScale.with_range (double min, double max, double step); } [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Scrollbar", since = "3.2")] public class VScrollbar : Gtk.Scrollbar, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public VScrollbar (Gtk.Adjustment? adjustment); } [CCode (cheader_filename = "gtk/gtk.h")] public class VSeparator : Gtk.Separator, Atk.Implementor, Gtk.Buildable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public VSeparator (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Viewport : Gtk.Bin, Atk.Implementor, Gtk.Buildable, Gtk.Scrollable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Viewport (Gtk.Adjustment? hadjustment, Gtk.Adjustment? vadjustment); public unowned Gdk.Window get_bin_window (); public unowned Gtk.Adjustment get_hadjustment (); public Gtk.ShadowType get_shadow_type (); public unowned Gtk.Adjustment get_vadjustment (); public unowned Gdk.Window get_view_window (); public void set_hadjustment (Gtk.Adjustment adjustment); public void set_shadow_type (Gtk.ShadowType type); public void set_vadjustment (Gtk.Adjustment adjustment); public Gtk.ShadowType shadow_type { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class VolumeButton : Gtk.ScaleButton, Atk.Implementor, Gtk.Buildable, Gtk.Actionable, Gtk.Activatable, Gtk.Orientable { [CCode (has_construct_function = false, type = "GtkWidget*")] public VolumeButton (); [NoAccessorMethod] public bool use_symbolic { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public class Widget : GLib.InitiallyUnowned, Atk.Implementor, Gtk.Buildable { public class uint activate_signal; [CCode (construct_function = "gtk_widget_new", has_new_function = false)] public Widget (...); public bool activate (); public void add_accelerator (string accel_signal, Gtk.AccelGroup accel_group, uint accel_key, Gdk.ModifierType accel_mods, Gtk.AccelFlags accel_flags); public void add_device_events (Gdk.Device device, Gdk.EventMask events); public void add_events (int events); public void add_mnemonic_label (Gtk.Widget label); public uint add_tick_callback (owned Gtk.TickCallback callback); [NoWrapper] public virtual void adjust_baseline_allocation (int baseline); [NoWrapper] public virtual void adjust_baseline_request (int minimum_baseline, int natural_baseline); [NoWrapper] public virtual void adjust_size_allocation (Gtk.Orientation orientation, ref int minimum_size, ref int natural_size, ref int allocated_pos, ref int allocated_size); [NoWrapper] public virtual void adjust_size_request (Gtk.Orientation orientation, ref int minimum_size, ref int natural_size); [CCode (cname = "gtk_widget_class_bind_template_callback_full")] public class void bind_template_callback_full (string callback_name, GLib.Callback callback_symbol); [CCode (cname = "gtk_widget_class_bind_template_child_full")] public class void bind_template_child_full (string name, bool internal_child, ssize_t struct_offset); public bool child_focus (Gtk.DirectionType direction); [Deprecated (replacement = "get_path", since = "3.0")] public void class_path (out uint path_length, out unowned string path, out unowned string path_reversed); public virtual bool compute_expand (Gtk.Orientation orientation); [CCode (vfunc_name = "compute_expand")] [NoWrapper] public virtual void compute_expand_internal (out bool hexpand, out bool vexpand); public Pango.Context create_pango_context (); public Pango.Layout create_pango_layout (string? text); public void destroyed (out unowned Gtk.Widget widget_pointer); public bool device_is_shadowed (Gdk.Device device); [NoWrapper] public virtual void dispatch_child_properties_changed (uint n_pspecs, out unowned GLib.ParamSpec pspecs); public void ensure_style (); public void error_bell (); [CCode (cname = "gtk_widget_class_find_style_property")] public class unowned GLib.ParamSpec find_style_property (string property_name); public void freeze_child_notify (); public virtual unowned Atk.Object get_accessible (); public int get_allocated_baseline (); public int get_allocated_height (); public int get_allocated_width (); public void get_allocation (out Gtk.Allocation allocation); public unowned Gtk.Widget get_ancestor (GLib.Type widget_type); public bool get_app_paintable (); public bool get_can_default (); public bool get_can_focus (); [Deprecated (replacement = "get_preferred_size", since = "3.0")] public void get_child_requisition (out Gtk.Requisition requisition); public bool get_child_visible (); public unowned Gtk.Clipboard get_clipboard (Gdk.Atom selection); public unowned string get_composite_name (); public static Gtk.TextDirection get_default_direction (); [Deprecated (replacement = "StyleContext, and CssProvider.get_default() to obtain a Gtk.StyleProvider with the default widget style information", since = "3.0")] public static unowned Gtk.Style get_default_style (); public bool get_device_enabled (Gdk.Device device); public Gdk.EventMask get_device_events (Gdk.Device device); public Gtk.TextDirection get_direction (); public unowned Gdk.Display get_display (); public bool get_double_buffered (); public int get_events (); public unowned Gdk.FrameClock get_frame_clock (); public Gtk.Align get_halign (); public bool get_has_tooltip (); public bool get_has_window (); public bool get_hexpand (); public bool get_hexpand_set (); public bool get_mapped (); public int get_margin_bottom (); public int get_margin_left (); public int get_margin_right (); public int get_margin_top (); public Gdk.ModifierType get_modifier_mask (Gdk.ModifierIntent intent); [Deprecated (replacement = "StyleContext with a custom StyleProvider", since = "3.0")] public unowned Gtk.RcStyle get_modifier_style (); public bool get_no_show_all (); public double get_opacity (); public unowned Pango.Context get_pango_context (); public unowned Gtk.Widget get_parent (); public unowned Gdk.Window get_parent_window (); public unowned Gtk.WidgetPath get_path (); [Deprecated (replacement = "Gdk.Window.get_device_position", since = "3.4")] public void get_pointer (out int x, out int y); public virtual void get_preferred_height (out int minimum_height, out int natural_height); public virtual void get_preferred_height_and_baseline_for_width (int width, int minimum_height, int natural_height, int minimum_baseline, int natural_baseline); public virtual void get_preferred_height_for_width (int width, out int minimum_height, out int natural_height); [CCode (vfunc_name = "get_preferred_height_for_width")] [NoWrapper] public virtual void get_preferred_height_for_width_internal (int width, out int minimum_height, out int natural_height); [CCode (vfunc_name = "get_preferred_height")] [NoWrapper] public virtual void get_preferred_height_internal (out int minimum_height, out int natural_height); public void get_preferred_size (out Gtk.Requisition minimum_size, out Gtk.Requisition natural_size); public virtual void get_preferred_width (out int minimum_width, out int natural_width); public virtual void get_preferred_width_for_height (int height, out int minimum_width, out int natural_width); [CCode (vfunc_name = "get_preferred_width_for_height")] [NoWrapper] public virtual void get_preferred_width_for_height_internal (int height, out int minimum_width, out int natural_width); [CCode (vfunc_name = "get_preferred_width")] [NoWrapper] public virtual void get_preferred_width_internal (out int minimum_width, out int natural_width); public bool get_realized (); public bool get_receives_default (); public virtual Gtk.SizeRequestMode get_request_mode (); public Gtk.Requisition get_requisition (); public unowned Gdk.Window get_root_window (); public int get_scale_factor (); public unowned Gdk.Screen get_screen (); public bool get_sensitive (); public unowned Gtk.Settings get_settings (); public void get_size_request (out int width, out int height); [Deprecated (replacement = "get_state_flags", since = "3.0")] public Gtk.StateType get_state (); public Gtk.StateFlags get_state_flags (); [Deprecated (replacement = "StyleContext", since = "3.0")] public unowned Gtk.Style get_style (); public unowned Gtk.StyleContext get_style_context (); public bool get_support_multidevice (); public unowned GLib.Object get_template_child (GLib.Type widget_type, string name); public unowned string get_tooltip_markup (); public unowned string get_tooltip_text (); public unowned Gtk.Window get_tooltip_window (); public unowned Gtk.Widget get_toplevel (); public Gtk.Align get_valign (); public Gtk.Align get_valign_with_baseline (); public bool get_vexpand (); public bool get_vexpand_set (); public bool get_visible (); public unowned Gdk.Visual get_visual (); public unowned Gdk.Window get_window (); public void grab_default (); public bool has_grab (); [Deprecated (replacement = "StyleContext", since = "3.0")] public bool has_rc_style (); public bool has_screen (); public bool has_visible_focus (); public bool hide_on_delete (); public bool in_destruction (); public void init_template (); public void input_shape_combine_region (Cairo.Region? region); public void insert_action_group (string name, GLib.ActionGroup group); [CCode (cname = "gtk_widget_class_install_style_property")] public class void install_style_property (GLib.ParamSpec pspec); [CCode (cname = "gtk_widget_class_install_style_property_parser")] public class void install_style_property_parser (GLib.ParamSpec pspec, Gtk.RcPropertyParser parser); public bool intersect (Gdk.Rectangle area, Gdk.Rectangle? intersection); public bool is_ancestor (Gtk.Widget ancestor); public bool is_composited (); public bool is_sensitive (); public bool is_toplevel (); public bool is_visible (); public GLib.List list_accel_closures (); public GLib.List list_mnemonic_labels (); [CCode (cname = "gtk_widget_class_list_style_properties")] public class unowned GLib.ParamSpec list_style_properties (uint n_properties); [Deprecated (replacement = "override_background_color", since = "3.0")] public void modify_base (Gtk.StateType state, Gdk.Color? color); [Deprecated (replacement = "override_background_color", since = "3.0")] public void modify_bg (Gtk.StateType state, Gdk.Color? color); [Deprecated (replacement = "override_cursor", since = "3.0")] public void modify_cursor (Gdk.Color? primary, Gdk.Color? secondary); [Deprecated (replacement = "override_color", since = "3.0")] public void modify_fg (Gtk.StateType state, Gdk.Color? color); [Deprecated (replacement = "override_font", since = "3.0")] public void modify_font (Pango.FontDescription? font_desc); [Deprecated (replacement = "StyleContext with a custom StyleProvider", since = "3.0")] public void modify_style (Gtk.RcStyle style); [Deprecated (replacement = "override_color", since = "3.0")] public void modify_text (Gtk.StateType state, Gdk.Color? color); public void override_background_color (Gtk.StateFlags state, Gdk.RGBA? color); public void override_color (Gtk.StateFlags state, Gdk.RGBA? color); public void override_cursor (Gdk.RGBA? cursor, Gdk.RGBA? secondary_cursor); public void override_font (Pango.FontDescription? font_desc); public void override_symbolic_color (string name, Gdk.RGBA? color); [Deprecated (replacement = "get_path", since = "3.0")] public void path (out uint path_length, out unowned string path, out unowned string path_reversed); public static void pop_composite_child (); public static void push_composite_child (); public void queue_compute_expand (); public void queue_draw (); public void queue_draw_area (int x, int y, int width, int height); public virtual void queue_draw_region (Cairo.Region region); public void queue_resize (); public void queue_resize_no_redraw (); public unowned Cairo.Region region_intersect (Cairo.Region region); public void register_window (Gdk.Window window); public bool remove_accelerator (Gtk.AccelGroup accel_group, uint accel_key, Gdk.ModifierType accel_mods); public void remove_mnemonic_label (Gtk.Widget label); public void remove_tick_callback (uint id); public Gdk.Pixbuf render_icon (string stock_id, Gtk.IconSize size, string? detail); public unowned Gdk.Pixbuf render_icon_pixbuf (string stock_id, Gtk.IconSize size); public void reparent (Gtk.Widget new_parent); [Deprecated (replacement = "reset_style", since = "3.0")] public void reset_rc_styles (); public void reset_style (); public int send_expose (Gdk.Event event); public bool send_focus_change (Gdk.Event event); public void set_accel_path (string accel_path, Gtk.AccelGroup accel_group); [CCode (cname = "gtk_widget_class_set_accessible_role")] public class void set_accessible_role (Atk.Role role); [CCode (cname = "gtk_widget_class_set_accessible_type")] public class void set_accessible_type (GLib.Type type); public void set_allocation (Gtk.Allocation allocation); public void set_app_paintable (bool app_paintable); public void set_can_default (bool can_default); public void set_can_focus (bool can_focus); public void set_child_visible (bool is_visible); public void set_composite_name (string name); [CCode (cname = "gtk_widget_class_set_connect_func")] public class void set_connect_func (Gtk.BuilderConnectFunc connect_func, void* connect_data, GLib.DestroyNotify connect_data_destroy); public static void set_default_direction (Gtk.TextDirection dir); public void set_device_enabled (Gdk.Device device, bool enabled); public void set_device_events (Gdk.Device device, Gdk.EventMask events); public void set_direction (Gtk.TextDirection dir); public void set_double_buffered (bool double_buffered); public void set_events (int events); public void set_halign (Gtk.Align align); public void set_has_tooltip (bool has_tooltip); public void set_has_window (bool has_window); public void set_hexpand (bool expand); public void set_hexpand_set (bool @set); public void set_mapped (bool mapped); public void set_margin_bottom (int margin); public void set_margin_left (int margin); public void set_margin_right (int margin); public void set_margin_top (int margin); public void set_no_show_all (bool no_show_all); public void set_opacity (double opacity); public void set_parent (Gtk.Widget parent); public void set_parent_window (Gdk.Window parent_window); public void set_realized (bool realized); public void set_receives_default (bool receives_default); public void set_redraw_on_allocate (bool redraw_on_allocate); public void set_sensitive (bool sensitive); public void set_size_request (int width, int height); [Deprecated (replacement = "set_state_flags", since = "3.0")] public void set_state (Gtk.StateType state); public void set_state_flags (Gtk.StateFlags flags, bool clear); [Deprecated (replacement = "StyleContext", since = "3.0")] public void set_style (Gtk.Style? style); public void set_support_multidevice (bool support_multidevice); [CCode (cname = "gtk_widget_class_set_template")] public class void set_template (GLib.Bytes template_bytes); [CCode (cname = "gtk_widget_class_set_template_from_resource")] public class void set_template_from_resource (string resource_name); public void set_tooltip_markup (string markup); public void set_tooltip_text (string text); public void set_tooltip_window (Gtk.Window custom_window); public void set_valign (Gtk.Align align); public void set_vexpand (bool expand); public void set_vexpand_set (bool @set); public void set_visible (bool visible); public void set_visual (Gdk.Visual visual); public void set_window (owned Gdk.Window window); public void shape_combine_region (Cairo.Region? region); public virtual void show_all (); public void show_now (); public void size_allocate_with_baseline (Gtk.Allocation allocation, int baseline); [Deprecated (replacement = "StyleContext", since = "3.0")] public void style_attach (); public void style_get (...); public void style_get_property (string property_name, ref GLib.Value value); public void style_get_valist (string first_property_name, void* var_args); public void thaw_child_notify (); public bool translate_coordinates (Gtk.Widget dest_widget, int src_x, int src_y, out int dest_x, out int dest_y); public void trigger_tooltip_query (); public void unparent (); public void unregister_window (Gdk.Window window); public void unset_state_flags (Gtk.StateFlags flags); public bool app_paintable { get; set; } public bool can_default { get; set; } [NoAccessorMethod] public bool can_focus { get; set; } [NoAccessorMethod] public bool composite_child { get; } public bool double_buffered { get; set; } public Gdk.EventMask events { get; set; } [NoAccessorMethod] public bool expand { get; set; } public Gtk.Align halign { get; set; } [NoAccessorMethod] public bool has_default { get; set; } [NoAccessorMethod] public bool has_focus { get; set; } public bool has_tooltip { get; set; } [NoAccessorMethod] public int height_request { get; set; } public bool hexpand { get; set; } public bool hexpand_set { get; set; } [NoAccessorMethod] public bool is_focus { get; set; } [NoAccessorMethod] public int margin { get; set; } public int margin_bottom { get; set; } public int margin_left { get; set; } public int margin_right { get; set; } public int margin_top { get; set; } public string name { get; set; } public bool no_show_all { get; set; } public double opacity { get; set; } public Gtk.Container parent { get; set; } public bool receives_default { get; set; } public int scale_factor { get; } public bool sensitive { get; set; } public Gtk.Style style { get; set; } public string tooltip_markup { get; set; } public string tooltip_text { get; set; } public Gtk.Align valign { get; set; } public bool vexpand { get; set; } public bool vexpand_set { get; set; } public bool visible { get; set; } [NoAccessorMethod] public int width_request { get; set; } public virtual signal void accel_closures_changed (); public virtual signal bool button_press_event (Gdk.EventButton event); public virtual signal bool button_release_event (Gdk.EventButton event); [HasEmitter] public virtual signal bool can_activate_accel (uint signal_id); [HasEmitter] public virtual signal void child_notify (GLib.ParamSpec child_property); public virtual signal void composited_changed (); public virtual signal bool configure_event (Gdk.EventConfigure event); public virtual signal bool damage_event (Gdk.EventExpose event); public virtual signal bool delete_event (Gdk.EventAny event); [HasEmitter] public virtual signal void destroy (); public virtual signal bool destroy_event (Gdk.EventAny event); public virtual signal void direction_changed (Gtk.TextDirection previous_direction); public virtual signal void drag_begin (Gdk.DragContext context); public virtual signal void drag_data_delete (Gdk.DragContext context); public virtual signal void drag_data_get (Gdk.DragContext context, Gtk.SelectionData selection_data, uint info, uint time_); public virtual signal void drag_data_received (Gdk.DragContext context, int x, int y, Gtk.SelectionData selection_data, uint info, uint time_); public virtual signal bool drag_drop (Gdk.DragContext context, int x, int y, uint time_); public virtual signal void drag_end (Gdk.DragContext context); public virtual signal bool drag_failed (Gdk.DragContext context, Gtk.DragResult result); public virtual signal void drag_leave (Gdk.DragContext context, uint time_); public virtual signal bool drag_motion (Gdk.DragContext context, int x, int y, uint time_); [HasEmitter] public virtual signal bool draw (Cairo.Context cr); public virtual signal bool enter_notify_event (Gdk.EventCrossing event); [HasEmitter] public virtual signal bool event (Gdk.Event event); public virtual signal void event_after (Gdk.Event p0); public virtual signal bool focus (Gtk.DirectionType direction); public virtual signal bool focus_in_event (Gdk.EventFocus event); public virtual signal bool focus_out_event (Gdk.EventFocus event); public virtual signal bool grab_broken_event (Gdk.EventGrabBroken event); [HasEmitter] public virtual signal void grab_focus (); public virtual signal void grab_notify (bool was_grabbed); [HasEmitter] public virtual signal void hide (); public virtual signal void hierarchy_changed (Gtk.Widget? previous_toplevel); public virtual signal bool key_press_event (Gdk.EventKey event); public virtual signal bool key_release_event (Gdk.EventKey event); [HasEmitter] public virtual signal bool keynav_failed (Gtk.DirectionType direction); public virtual signal bool leave_notify_event (Gdk.EventCrossing event); [HasEmitter] public virtual signal void map (); public virtual signal bool map_event (Gdk.EventAny event); [HasEmitter] public virtual signal bool mnemonic_activate (bool group_cycling); public virtual signal bool motion_notify_event (Gdk.EventMotion event); public virtual signal void move_focus (Gtk.DirectionType direction); public virtual signal void parent_set (Gtk.Widget? previous_parent); public virtual signal bool popup_menu (); public virtual signal bool property_notify_event (Gdk.EventProperty event); public virtual signal bool proximity_in_event (Gdk.EventProximity event); public virtual signal bool proximity_out_event (Gdk.EventProximity event); public virtual signal bool query_tooltip (int x, int y, bool keyboard_tooltip, Gtk.Tooltip tooltip); [HasEmitter] public virtual signal void realize (); public virtual signal void screen_changed (Gdk.Screen previous_screen); public virtual signal bool scroll_event (Gdk.EventScroll event); public virtual signal bool selection_clear_event (Gdk.EventSelection event); public virtual signal void selection_get (Gtk.SelectionData selection_data, uint info, uint time_); public virtual signal bool selection_notify_event (Gdk.EventSelection event); public virtual signal void selection_received (Gtk.SelectionData selection_data, uint time_); public virtual signal bool selection_request_event (Gdk.EventSelection event); [HasEmitter] public virtual signal void show (); public virtual signal bool show_help (Gtk.WidgetHelpType help_type); [HasEmitter] public virtual signal void size_allocate (Gtk.Allocation allocation); public virtual signal void state_changed (Gtk.StateType previous_state); public virtual signal void state_flags_changed (Gtk.StateFlags previous_state_flags); public virtual signal void style_set (Gtk.Style? previous_style); public virtual signal void style_updated (); public virtual signal bool touch_event (Gdk.Event event); [HasEmitter] public virtual signal void unmap (); public virtual signal bool unmap_event (Gdk.EventAny event); [HasEmitter] public virtual signal void unrealize (); public virtual signal bool visibility_notify_event (Gdk.EventVisibility event); public virtual signal bool window_state_event (Gdk.EventWindowState event); } [CCode (cheader_filename = "gtk/gtk.h")] public class WidgetAccessible : Gtk.Accessible, Atk.Component { [CCode (has_construct_function = false)] protected WidgetAccessible (); [NoWrapper] public virtual void notify_gtk (GLib.Object object, GLib.ParamSpec pspec); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class WidgetAuxInfo { public uint halign; public int height; public Gtk.Border margin; public uint valign; public int width; } [CCode (cheader_filename = "gtk/gtk.h", ref_function = "gtk_widget_path_ref", type_id = "gtk_widget_path_get_type ()", unref_function = "gtk_widget_path_unref")] [Compact] public class WidgetPath { [CCode (has_construct_function = false)] public WidgetPath (); public int append_for_widget (Gtk.Widget widget); public int append_type (GLib.Type type); public int append_with_siblings (Gtk.WidgetPath siblings, uint sibling_index); public unowned Gtk.WidgetPath copy (); public GLib.Type get_object_type (); public bool has_parent (GLib.Type type); public bool is_type (GLib.Type type); public void iter_add_class (int pos, string name); public void iter_add_region (int pos, string name, Gtk.RegionFlags flags); public void iter_clear_classes (int pos); public void iter_clear_regions (int pos); public unowned string iter_get_name (int pos); public GLib.Type iter_get_object_type (int pos); public uint iter_get_sibling_index (int pos); public unowned Gtk.WidgetPath iter_get_siblings (int pos); public bool iter_has_class (int pos, string name); public bool iter_has_name (int pos, string name); public bool iter_has_qclass (int pos, GLib.Quark qname); public bool iter_has_qname (int pos, GLib.Quark qname); public bool iter_has_qregion (int pos, GLib.Quark qname, Gtk.RegionFlags flags); public bool iter_has_region (int pos, string name, out Gtk.RegionFlags flags); public unowned GLib.SList iter_list_classes (int pos); public unowned GLib.SList iter_list_regions (int pos); public void iter_remove_class (int pos, string name); public void iter_remove_region (int pos, string name); public void iter_set_name (int pos, string name); public void iter_set_object_type (int pos, GLib.Type type); public int length (); public void prepend_type (GLib.Type type); public unowned string to_string (); } [CCode (cheader_filename = "gtk/gtk.h")] public class Window : Gtk.Bin, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public Window (Gtk.WindowType type = Gtk.WindowType.TOPLEVEL); public bool activate_default (); public bool activate_focus (); public bool activate_key (Gdk.EventKey event); public void add_accel_group (Gtk.AccelGroup accel_group); public void add_mnemonic (uint keyval, Gtk.Widget target); public void begin_move_drag (int button, int root_x, int root_y, uint32 timestamp); public void begin_resize_drag (Gdk.WindowEdge edge, int button, int root_x, int root_y, uint32 timestamp); public void close (); public void deiconify (); public void fullscreen (); public bool get_accept_focus (); public unowned Gtk.Application get_application (); public unowned Gtk.Widget get_attached_to (); public bool get_decorated (); public static GLib.List get_default_icon_list (); public static unowned string get_default_icon_name (); public void get_default_size (out int width, out int height); public unowned Gtk.Widget get_default_widget (); public bool get_deletable (); public bool get_destroy_with_parent (); public unowned Gtk.Widget get_focus (); public bool get_focus_on_map (); public bool get_focus_visible (); public Gdk.Gravity get_gravity (); public unowned Gtk.WindowGroup get_group (); public bool get_has_resize_grip (); public bool get_hide_titlebar_when_maximized (); public unowned Gdk.Pixbuf get_icon (); public GLib.List get_icon_list (); public unowned string get_icon_name (); public Gdk.ModifierType get_mnemonic_modifier (); public bool get_mnemonics_visible (); public bool get_modal (); public double get_opacity (); public void get_position (out int root_x, out int root_y); public bool get_resizable (); public bool get_resize_grip_area (Gdk.Rectangle rect); public unowned string get_role (); public unowned Gdk.Screen get_screen (); public void get_size (out int width, out int height); public bool get_skip_pager_hint (); public bool get_skip_taskbar_hint (); public unowned string get_title (); public unowned Gtk.Window get_transient_for (); public Gdk.WindowTypeHint get_type_hint (); public bool get_urgency_hint (); public Gtk.WindowType get_window_type (); public bool has_group (); public void iconify (); public static GLib.List list_toplevels (); public void maximize (); public bool mnemonic_activate (uint keyval, Gdk.ModifierType modifier); public void move (int x, int y); public bool parse_geometry (string geometry); public void present (); public void present_with_time (uint32 timestamp); public bool propagate_key_event (Gdk.EventKey event); public void remove_accel_group (Gtk.AccelGroup accel_group); public void remove_mnemonic (uint keyval, Gtk.Widget target); public void reshow_with_initial_size (); public void resize (int width, int height); public bool resize_grip_is_visible (); public void resize_to_geometry (int width, int height); public void set_accept_focus (bool setting); public void set_application (Gtk.Application application); public void set_attached_to (Gtk.Widget attach_widget); public static void set_auto_startup_notification (bool setting); public void set_decorated (bool setting); public void set_default (Gtk.Widget default_widget); public void set_default_geometry (int width, int height); public static void set_default_icon (Gdk.Pixbuf icon); public static bool set_default_icon_from_file (string filename) throws GLib.Error; public static void set_default_icon_list (GLib.List list); public static void set_default_icon_name (string name); public void set_default_size (int width, int height); public void set_deletable (bool setting); public void set_destroy_with_parent (bool setting); public void set_focus_on_map (bool setting); public void set_focus_visible (bool setting); public void set_geometry_hints (Gtk.Widget geometry_widget, Gdk.Geometry geometry, Gdk.WindowHints geom_mask); public void set_gravity (Gdk.Gravity gravity); public void set_has_resize_grip (bool value); public void set_has_user_ref_count (bool setting); public void set_hide_titlebar_when_maximized (bool setting); public void set_icon (Gdk.Pixbuf icon); public bool set_icon_from_file (string filename) throws GLib.Error; public void set_icon_list (GLib.List list); public void set_icon_name (string name); public void set_keep_above (bool setting); public void set_keep_below (bool setting); public void set_mnemonic_modifier (Gdk.ModifierType modifier); public void set_mnemonics_visible (bool setting); public void set_modal (bool modal); public void set_opacity (double opacity); public void set_position (Gtk.WindowPosition position); public void set_resizable (bool resizable); public void set_role (string role); public void set_screen (Gdk.Screen screen); public void set_skip_pager_hint (bool setting); public void set_skip_taskbar_hint (bool setting); public void set_startup_id (string startup_id); public void set_title (string title); public void set_titlebar (Gtk.Widget titlebar); public void set_transient_for (Gtk.Window parent); public void set_type_hint (Gdk.WindowTypeHint hint); public void set_urgency_hint (bool setting); public void set_wmclass (string wmclass_name, string wmclass_class); public void stick (); public void unfullscreen (); public void unmaximize (); public void unstick (); public bool accept_focus { get; set; } public Gtk.Application application { get; set; } public Gtk.Widget attached_to { get; set construct; } public bool decorated { get; set; } [NoAccessorMethod] public int default_height { get; set; } [NoAccessorMethod] public int default_width { get; set; } public bool deletable { get; set; } public bool destroy_with_parent { get; set; } public bool focus_on_map { get; set; } public bool focus_visible { get; set; } public Gdk.Gravity gravity { get; set; } public bool has_resize_grip { get; set; } [NoAccessorMethod] public bool has_toplevel_focus { get; } public bool hide_titlebar_when_maximized { get; set; } public Gdk.Pixbuf icon { get; set; } public string icon_name { get; set; } [NoAccessorMethod] public bool is_active { get; } public bool mnemonics_visible { get; set; } public bool modal { get; set; } public bool resizable { get; set; } [NoAccessorMethod] public bool resize_grip_visible { get; } public string role { get; set; } public Gdk.Screen screen { get; set; } public bool skip_pager_hint { get; set; } public bool skip_taskbar_hint { get; set; } public string startup_id { set; } public string title { get; set; } public Gtk.Window transient_for { get; set construct; } [NoAccessorMethod] public Gtk.WindowType type { get; construct; } public Gdk.WindowTypeHint type_hint { get; set; } public bool urgency_hint { get; set; } [NoAccessorMethod] public Gtk.WindowPosition window_position { get; set; } [CCode (cname = "activate_default")] [Experimental] public virtual signal void default_activated (); [CCode (cname = "activate_focus")] [Experimental] public virtual signal void focus_activated (); public virtual signal void keys_changed (); [HasEmitter] public virtual signal void set_focus (Gtk.Widget? focus); } [CCode (cheader_filename = "gtk/gtk.h")] public class WindowAccessible : Gtk.ContainerAccessible, Atk.Component, Atk.Window { [CCode (has_construct_function = false)] protected WindowAccessible (); } [CCode (cheader_filename = "gtk/gtk.h")] [Compact] public class WindowGeometryInfo { } [CCode (cheader_filename = "gtk/gtk.h")] public class WindowGroup : GLib.Object { [CCode (has_construct_function = false)] public WindowGroup (); public void add_window (Gtk.Window window); public unowned Gtk.Widget get_current_device_grab (Gdk.Device device); public unowned Gtk.Widget get_current_grab (); public GLib.List list_windows (); public void remove_window (Gtk.Window window); } [CCode (cheader_filename = "gtk/gtk.h")] public interface Actionable : Gtk.Widget { public abstract unowned string get_action_name (); public abstract unowned GLib.Variant get_action_target_value (); public abstract void set_action_name (string action_name); public void set_action_target (string format_string); public abstract void set_action_target_value (GLib.Variant target_value); public void set_detailed_action_name (string detailed_action_name); public string action_name { get; set; } [NoAccessorMethod] public GLib.Variant action_target { owned get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public interface Activatable : GLib.Object { public void do_set_related_action (Gtk.Action action); public unowned Gtk.Action get_related_action (); public bool get_use_action_appearance (); public void set_related_action (Gtk.Action action); public void set_use_action_appearance (bool use_appearance); public abstract void sync_action_properties (Gtk.Action action); [NoWrapper] public abstract void update (Gtk.Action action, string property_name); public Gtk.Action related_action { get; set; } public bool use_action_appearance { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public interface AppChooser : Gtk.Widget { public unowned GLib.AppInfo get_app_info (); public unowned string get_content_type (); public void refresh (); public string content_type { get; construct; } } [CCode (cheader_filename = "gtk/gtk.h")] public interface Buildable : GLib.Object { public abstract void add_child (Gtk.Builder builder, GLib.Object child, string? type); public abstract unowned GLib.Object construct_child (Gtk.Builder builder, string name); public abstract void custom_finished (Gtk.Builder builder, GLib.Object? child, string tagname, void* data); public abstract void custom_tag_end (Gtk.Builder builder, GLib.Object? child, string tagname, out void* data); public abstract bool custom_tag_start (Gtk.Builder builder, GLib.Object? child, string tagname, out GLib.MarkupParser parser, out void* data); public abstract unowned GLib.Object get_internal_child (Gtk.Builder builder, string childname); public abstract unowned string get_name (); public abstract void parser_finished (Gtk.Builder builder); public abstract void set_buildable_property (Gtk.Builder builder, string name, GLib.Value value); public abstract void set_name (string name); } [CCode (cheader_filename = "gtk/gtk.h")] public interface CellAccessibleParent { public abstract void activate (Gtk.CellAccessible cell); public abstract void edit (Gtk.CellAccessible cell); public abstract void expand_collapse (Gtk.CellAccessible cell); public abstract void get_cell_area (Gtk.CellAccessible cell, Gdk.Rectangle cell_rect); public abstract void get_cell_extents (Gtk.CellAccessible cell, int x, int y, int width, int height, Atk.CoordType coord_type); public abstract int get_child_index (Gtk.CellAccessible cell); public abstract Gtk.CellRendererState get_renderer_state (Gtk.CellAccessible cell); public abstract bool grab_focus (Gtk.CellAccessible cell); } [CCode (cheader_filename = "gtk/gtk.h")] public interface CellEditable : Gtk.Widget { public abstract void start_editing (Gdk.Event event); [NoAccessorMethod] public bool editing_canceled { get; set; } [HasEmitter] public signal void editing_done (); [HasEmitter] public signal void remove_widget (); } [CCode (cheader_filename = "gtk/gtk.h")] public interface CellLayout : GLib.Object { public abstract void add_attribute (Gtk.CellRenderer cell, string attribute, int column); public abstract void clear (); public abstract void clear_attributes (Gtk.CellRenderer cell); public abstract unowned Gtk.CellArea get_area (); public abstract GLib.List get_cells (); public abstract void pack_end (Gtk.CellRenderer cell, bool expand); public abstract void pack_start (Gtk.CellRenderer cell, bool expand); public abstract void reorder (Gtk.CellRenderer cell, int position); public void set_attributes (Gtk.CellRenderer cell, ...); public abstract void set_cell_data_func (Gtk.CellRenderer cell, owned Gtk.CellLayoutDataFunc func); } [CCode (cheader_filename = "gtk/gtk.h")] public interface ColorChooser : GLib.Object { public abstract void add_palette (Gtk.Orientation orientation, int colors_per_line, [CCode (array_length_pos = 2.9)] Gdk.RGBA[]? colors); public abstract Gdk.RGBA get_rgba (); public bool get_use_alpha (); public abstract void set_rgba (Gdk.RGBA color); public void set_use_alpha (bool use_alpha); public Gdk.RGBA rgba { get; set; } public bool use_alpha { get; set; } public signal void color_activated (Gdk.RGBA color); } [CCode (cheader_filename = "gtk/gtk.h")] public interface Editable { public void copy_clipboard (); public void cut_clipboard (); public void delete_selection (); [NoWrapper] public abstract void do_delete_text (int start_pos, int end_pos); [NoWrapper] public abstract void do_insert_text (string new_text, int new_text_length, int position); public abstract unowned string get_chars (int start_pos, int end_pos); public bool get_editable (); public abstract int get_position (); public abstract bool get_selection_bounds (out int start_pos, out int end_pos); public void paste_clipboard (); [CCode (vfunc_name = "set_selection_bounds")] public abstract void select_region (int start_pos, int end_pos); public void set_editable (bool is_editable); public abstract void set_position (int position); public signal void changed (); [HasEmitter] public signal void delete_text (int start_pos, int end_pos); [HasEmitter] public signal void insert_text (string new_text, int new_text_length, ref int position); } [CCode (cheader_filename = "gtk/gtk.h")] public interface FileChooser : Gtk.Widget { public void add_filter (owned Gtk.FileFilter filter); public bool add_shortcut_folder (string folder) throws GLib.Error; public bool add_shortcut_folder_uri (string uri) throws GLib.Error; public static GLib.Quark error_quark (); public Gtk.FileChooserAction get_action (); public bool get_create_folders (); public string get_current_folder (); public unowned GLib.File get_current_folder_file (); public string get_current_folder_uri (); public unowned string get_current_name (); public bool get_do_overwrite_confirmation (); public unowned Gtk.Widget get_extra_widget (); public unowned GLib.File get_file (); public string get_filename (); public GLib.SList get_filenames (); public GLib.SList get_files (); public unowned Gtk.FileFilter get_filter (); public bool get_local_only (); public unowned GLib.File get_preview_file (); public string get_preview_filename (); public string get_preview_uri (); public unowned Gtk.Widget get_preview_widget (); public bool get_preview_widget_active (); public bool get_select_multiple (); public bool get_show_hidden (); public string get_uri (); public GLib.SList get_uris (); public bool get_use_preview_label (); public GLib.SList list_filters (); public GLib.SList? list_shortcut_folder_uris (); public GLib.SList? list_shortcut_folders (); public void remove_filter (Gtk.FileFilter filter); public bool remove_shortcut_folder (string folder) throws GLib.Error; public bool remove_shortcut_folder_uri (string uri) throws GLib.Error; public void select_all (); public bool select_file (GLib.File file) throws GLib.Error; public bool select_filename (string filename); public bool select_uri (string uri); public void set_action (Gtk.FileChooserAction action); public void set_create_folders (bool create_folders); public bool set_current_folder (string filename); public bool set_current_folder_file (GLib.File file) throws GLib.Error; public bool set_current_folder_uri (string uri); public void set_current_name (string name); public void set_do_overwrite_confirmation (bool do_overwrite_confirmation); public void set_extra_widget (Gtk.Widget extra_widget); public bool set_file (GLib.File file) throws GLib.Error; public bool set_filename (string filename); public void set_filter (Gtk.FileFilter filter); public void set_local_only (bool local_only); public void set_preview_widget (Gtk.Widget preview_widget); public void set_preview_widget_active (bool active); public void set_select_multiple (bool select_multiple); public void set_show_hidden (bool show_hidden); public bool set_uri (string uri); public void set_use_preview_label (bool use_label); public void unselect_all (); public void unselect_file (GLib.File file); public void unselect_filename (string filename); public void unselect_uri (string uri); public Gtk.FileChooserAction action { get; set; } public bool create_folders { get; set; } public bool do_overwrite_confirmation { get; set; } public Gtk.Widget extra_widget { get; set; } public Gtk.FileFilter filter { get; set; } public bool local_only { get; set; } public Gtk.Widget preview_widget { get; set; } public bool preview_widget_active { get; set; } public bool select_multiple { get; set; } public bool show_hidden { get; set; } public bool use_preview_label { get; set; } public signal Gtk.FileChooserConfirmation confirm_overwrite (); public signal void current_folder_changed (); public signal void file_activated (); public signal void selection_changed (); public signal void update_preview (); } [CCode (cheader_filename = "gtk/gtk.h")] public interface FileChooserEmbed { } [CCode (cheader_filename = "gtk/gtk.h")] public interface FontChooser : GLib.Object { public unowned string get_font (); public unowned Pango.FontDescription get_font_desc (); public abstract unowned Pango.FontFace get_font_face (); public abstract unowned Pango.FontFamily get_font_family (); public abstract int get_font_size (); public unowned string get_preview_text (); public bool get_show_preview_entry (); public abstract void set_filter_func (owned Gtk.FontFilterFunc filter); public void set_font (string fontname); public void set_font_desc (Pango.FontDescription font_desc); public void set_preview_text (string text); public void set_show_preview_entry (bool show_preview_entry); public string font { get; set; } public Pango.FontDescription font_desc { get; set; } public string preview_text { get; set; } public bool show_preview_entry { get; set; } public signal void font_activated (string fontname); } [CCode (cheader_filename = "gtk/gtk.h")] public interface Orientable : GLib.Object { public Gtk.Orientation get_orientation (); public void set_orientation (Gtk.Orientation orientation); public Gtk.Orientation orientation { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public interface PrintOperationPreview : GLib.Object { public abstract void end_preview (); public abstract bool is_selected (int page_nr); public abstract void render_page (int page_nr); public signal void got_page_size (Gtk.PrintContext context, Gtk.PageSetup page_setup); public signal void ready (Gtk.PrintContext context); } [CCode (cheader_filename = "gtk/gtk.h")] public interface RecentChooser : GLib.Object { public abstract void add_filter (Gtk.RecentFilter filter); public static GLib.Quark error_quark (); public unowned Gtk.RecentInfo get_current_item (); public abstract unowned string get_current_uri (); public unowned Gtk.RecentFilter get_filter (); public abstract GLib.List get_items (); public int get_limit (); public bool get_local_only (); [NoWrapper] public abstract unowned Gtk.RecentManager get_recent_manager (); public bool get_select_multiple (); public bool get_show_icons (); public bool get_show_not_found (); public bool get_show_private (); public bool get_show_tips (); public Gtk.RecentSortType get_sort_type (); public unowned string get_uris (size_t length); public abstract GLib.SList list_filters (); public abstract void remove_filter (Gtk.RecentFilter filter); public abstract void select_all (); public abstract bool select_uri (string uri) throws GLib.Error; public abstract bool set_current_uri (string uri) throws GLib.Error; public void set_filter (Gtk.RecentFilter filter); public void set_limit (int limit); public void set_local_only (bool local_only); public void set_select_multiple (bool select_multiple); public void set_show_icons (bool show_icons); public void set_show_not_found (bool show_not_found); public void set_show_private (bool show_private); public void set_show_tips (bool show_tips); public abstract void set_sort_func (owned Gtk.RecentSortFunc sort_func); public void set_sort_type (Gtk.RecentSortType sort_type); public abstract void unselect_all (); public abstract void unselect_uri (string uri); public Gtk.RecentFilter filter { get; set; } public int limit { get; set; } public bool local_only { get; set; } public Gtk.RecentManager recent_manager { construct; } public bool select_multiple { get; set; } public bool show_icons { get; set; } public bool show_not_found { get; set; } public bool show_private { get; set; } public bool show_tips { get; set; } public Gtk.RecentSortType sort_type { get; set; } public signal void item_activated (); public signal void selection_changed (); } [CCode (cheader_filename = "gtk/gtk.h", type_cname = "GtkScrollableInterface")] public interface Scrollable : GLib.Object { public unowned Gtk.Adjustment get_hadjustment (); public Gtk.ScrollablePolicy get_hscroll_policy (); public unowned Gtk.Adjustment get_vadjustment (); public Gtk.ScrollablePolicy get_vscroll_policy (); public void set_hadjustment (Gtk.Adjustment hadjustment); public void set_hscroll_policy (Gtk.ScrollablePolicy policy); public void set_vadjustment (Gtk.Adjustment vadjustment); public void set_vscroll_policy (Gtk.ScrollablePolicy policy); public Gtk.Adjustment hadjustment { get; set construct; } public Gtk.ScrollablePolicy hscroll_policy { get; set; } public Gtk.Adjustment vadjustment { get; set construct; } public Gtk.ScrollablePolicy vscroll_policy { get; set; } } [CCode (cheader_filename = "gtk/gtk.h")] public interface StyleProvider { public abstract unowned Gtk.IconFactory get_icon_factory (Gtk.WidgetPath path); public abstract unowned Gtk.StyleProperties get_style (Gtk.WidgetPath path); public abstract bool get_style_property (Gtk.WidgetPath path, Gtk.StateFlags state, GLib.ParamSpec pspec, GLib.Value value); } [CCode (cheader_filename = "gtk/gtk.h")] public interface ToolShell : Gtk.Widget { public abstract Pango.EllipsizeMode get_ellipsize_mode (); public abstract Gtk.IconSize get_icon_size (); public abstract Gtk.Orientation get_orientation (); public abstract Gtk.ReliefStyle get_relief_style (); public abstract Gtk.ToolbarStyle get_style (); public abstract float get_text_alignment (); public abstract Gtk.Orientation get_text_orientation (); public abstract unowned Gtk.SizeGroup get_text_size_group (); public abstract void rebuild_menu (); } [CCode (cheader_filename = "gtk/gtk.h")] public interface TreeDragDest { public abstract bool drag_data_received (Gtk.TreePath dest, Gtk.SelectionData selection_data); public abstract bool row_drop_possible (Gtk.TreePath dest_path, Gtk.SelectionData selection_data); } [CCode (cheader_filename = "gtk/gtk.h")] public interface TreeDragSource { public abstract bool drag_data_delete (Gtk.TreePath path); public abstract bool drag_data_get (Gtk.TreePath path, Gtk.SelectionData selection_data); public abstract bool row_draggable (Gtk.TreePath path); } [CCode (cheader_filename = "gtk/gtk.h")] public interface TreeModel : GLib.Object { public void @foreach (Gtk.TreeModelForeachFunc func); [CCode (sentinel = "-1")] public void @get (Gtk.TreeIter iter, ...); public abstract GLib.Type get_column_type (int index_); public abstract Gtk.TreeModelFlags get_flags (); public abstract bool get_iter (out Gtk.TreeIter iter, Gtk.TreePath path); public bool get_iter_first (out Gtk.TreeIter iter); public bool get_iter_from_string (out Gtk.TreeIter iter, string path_string); public abstract int get_n_columns (); public abstract Gtk.TreePath? get_path (Gtk.TreeIter iter); public string get_string_from_iter (Gtk.TreeIter iter); public void get_valist (Gtk.TreeIter iter, void* var_args); public abstract void get_value (Gtk.TreeIter iter, int column, out GLib.Value value); public abstract bool iter_children (out Gtk.TreeIter iter, Gtk.TreeIter? parent); public abstract bool iter_has_child (Gtk.TreeIter iter); public abstract int iter_n_children (Gtk.TreeIter? iter); public abstract bool iter_next (ref Gtk.TreeIter iter); public abstract bool iter_nth_child (out Gtk.TreeIter iter, Gtk.TreeIter? parent, int n); public abstract bool iter_parent (out Gtk.TreeIter iter, Gtk.TreeIter child); public virtual bool iter_previous (ref Gtk.TreeIter iter); public virtual void ref_node (Gtk.TreeIter iter); public void rows_reordered_with_length (Gtk.TreePath path, Gtk.TreeIter iter, int new_order, int length); public virtual void unref_node (Gtk.TreeIter iter); [HasEmitter] public signal void row_changed (Gtk.TreePath path, Gtk.TreeIter iter); [HasEmitter] public signal void row_deleted (Gtk.TreePath path); [HasEmitter] public signal void row_has_child_toggled (Gtk.TreePath path, Gtk.TreeIter iter); [HasEmitter] public signal void row_inserted (Gtk.TreePath path, Gtk.TreeIter iter); [HasEmitter] public signal void rows_reordered (Gtk.TreePath path, Gtk.TreeIter? iter, void* new_order); } [CCode (cheader_filename = "gtk/gtk.h")] public interface TreeSortable : Gtk.TreeModel, GLib.Object { public abstract bool get_sort_column_id (out int sort_column_id, out Gtk.SortType order); public abstract bool has_default_sort_func (); public abstract void set_default_sort_func (owned Gtk.TreeIterCompareFunc sort_func); public abstract void set_sort_column_id (int sort_column_id, Gtk.SortType order); public abstract void set_sort_func (int sort_column_id, owned Gtk.TreeIterCompareFunc sort_func); [HasEmitter] public signal void sort_column_changed (); } [CCode (cheader_filename = "gtk/gtk.h")] public struct AccelKey { public uint accel_key; public Gdk.ModifierType accel_mods; public uint accel_flags; } [CCode (cheader_filename = "gtk/gtk.h")] public struct ActionEntry { public weak string name; public weak string stock_id; public weak string label; public weak string accelerator; public weak string tooltip; [CCode (delegate_target = false, type = "GCallback")] public weak Gtk.ActionCallback callback; } [CCode (cheader_filename = "gtk/gtk.h")] public struct Allocation { public int x; public int y; public int width; public int height; } [CCode (cheader_filename = "gtk/gtk.h")] public struct BindingArg { [CCode (cname = "d.long_data")] public long long_data; [CCode (cname = "d.double_data")] public double double_data; [CCode (cname = "d.string_data")] public weak string string_data; public GLib.Type arg_type; } [CCode (cheader_filename = "gtk/gtk.h")] public struct Border { public int16 left; public int16 right; public int16 top; public int16 bottom; } [CCode (cheader_filename = "gtk/gtk.h,gtk/gtkimmodule.h")] public struct IMContextInfo { public weak string context_id; public weak string context_name; public weak string domain; public weak string domain_dirname; public weak string default_locales; } [CCode (cheader_filename = "gtk/gtk.h")] public struct RadioActionEntry { public weak string name; public weak string stock_id; public weak string label; public weak string accelerator; public weak string tooltip; public int value; } [CCode (cheader_filename = "gtk/gtk.h", has_copy_function = false, has_destroy_function = false)] public struct RecentData { public string display_name; public string description; public string mime_type; public string app_name; public string app_exec; [CCode (array_length = false, array_null_terminated = true)] public string[] groups; public bool is_private; } [CCode (cheader_filename = "gtk/gtk.h")] public struct Requisition { public int width; public int height; public Gtk.Requisition copy (); public void free (); } [CCode (cheader_filename = "gtk/gtk.h")] public struct StockItem { public weak string stock_id; public weak string label; public Gdk.ModifierType modifier; public uint keyval; public weak string translation_domain; public Gtk.StockItem copy (); public void free (); } [CCode (cheader_filename = "gtk/gtk.h")] public struct TargetEntry { public weak string target; public uint flags; public uint info; [CCode (has_construct_function = false)] public TargetEntry (string target, uint flags, uint info); public Gtk.TargetEntry copy (); public void free (); } [CCode (cheader_filename = "gtk/gtk.h")] public struct TextIter { public void* dummy1; public void* dummy2; public int dummy3; public int dummy4; public int dummy5; public int dummy6; public int dummy7; public int dummy8; public void* dummy9; public void* dummy10; public int dummy11; public int dummy12; public int dummy13; public void* dummy14; public void assign (Gtk.TextIter other); public bool backward_char (); public bool backward_chars (int count); public bool backward_cursor_position (); public bool backward_cursor_positions (int count); public bool backward_find_char (Gtk.TextCharPredicate pred, Gtk.TextIter? limit); public bool backward_line (); public bool backward_lines (int count); public bool backward_search (string str, Gtk.TextSearchFlags flags, out Gtk.TextIter match_start, out Gtk.TextIter match_end, Gtk.TextIter? limit); public bool backward_sentence_start (); public bool backward_sentence_starts (int count); public bool backward_to_tag_toggle (Gtk.TextTag? tag); public bool backward_visible_cursor_position (); public bool backward_visible_cursor_positions (int count); public bool backward_visible_line (); public bool backward_visible_lines (int count); public bool backward_visible_word_start (); public bool backward_visible_word_starts (int count); public bool backward_word_start (); public bool backward_word_starts (int count); public bool begins_tag (Gtk.TextTag? tag); public bool can_insert (bool default_editability); public int compare (Gtk.TextIter rhs); public Gtk.TextIter copy (); public bool editable (bool default_setting); public bool ends_line (); public bool ends_sentence (); public bool ends_tag (Gtk.TextTag? tag); public bool ends_word (); public bool equal (Gtk.TextIter rhs); public bool forward_char (); public bool forward_chars (int count); public bool forward_cursor_position (); public bool forward_cursor_positions (int count); public bool forward_find_char (Gtk.TextCharPredicate pred, Gtk.TextIter? limit); public bool forward_line (); public bool forward_lines (int count); public bool forward_search (string str, Gtk.TextSearchFlags flags, out Gtk.TextIter match_start, out Gtk.TextIter match_end, Gtk.TextIter? limit); public bool forward_sentence_end (); public bool forward_sentence_ends (int count); public void forward_to_end (); public bool forward_to_line_end (); public bool forward_to_tag_toggle (Gtk.TextTag? tag); public bool forward_visible_cursor_position (); public bool forward_visible_cursor_positions (int count); public bool forward_visible_line (); public bool forward_visible_lines (int count); public bool forward_visible_word_end (); public bool forward_visible_word_ends (int count); public bool forward_word_end (); public bool forward_word_ends (int count); public void free (); public bool get_attributes (Gtk.TextAttributes values); public unowned Gtk.TextBuffer get_buffer (); public int get_bytes_in_line (); public unichar get_char (); public int get_chars_in_line (); public unowned Gtk.TextChildAnchor get_child_anchor (); public unowned Pango.Language get_language (); public int get_line (); public int get_line_index (); public int get_line_offset (); public GLib.SList get_marks (); public int get_offset (); public unowned Gdk.Pixbuf get_pixbuf (); public unowned string get_slice (Gtk.TextIter end); public GLib.SList get_tags (); public unowned string get_text (Gtk.TextIter end); public GLib.SList get_toggled_tags (bool toggled_on); public int get_visible_line_index (); public int get_visible_line_offset (); public unowned string get_visible_slice (Gtk.TextIter end); public unowned string get_visible_text (Gtk.TextIter end); public bool has_tag (Gtk.TextTag tag); public bool in_range (Gtk.TextIter start, Gtk.TextIter end); public bool inside_sentence (); public bool inside_word (); public bool is_cursor_position (); public bool is_end (); public bool is_start (); public void order (Gtk.TextIter second); public void set_line (int line_number); public void set_line_index (int byte_on_line); public void set_line_offset (int char_on_line); public void set_offset (int char_offset); public void set_visible_line_index (int byte_on_line); public void set_visible_line_offset (int char_on_line); public bool starts_line (); public bool starts_sentence (); public bool starts_word (); public bool toggles_tag (Gtk.TextTag tag); } [CCode (cheader_filename = "gtk/gtk.h")] public struct ToggleActionEntry { public weak string name; public weak string stock_id; public weak string label; public weak string accelerator; public weak string tooltip; [CCode (delegate_target = false, type = "GCallback")] public weak Gtk.ActionCallback callback; public bool is_active; } [CCode (cheader_filename = "gtk/gtk.h")] public struct TreeIter { public int stamp; public void* user_data; public void* user_data2; public void* user_data3; } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ACCEL_")] [Flags] public enum AccelFlags { VISIBLE, LOCKED, MASK } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ALIGN_")] public enum Align { FILL, START, END, CENTER, BASELINE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_APPLICATION_INHIBIT_")] [Flags] public enum ApplicationInhibitFlags { LOGOUT, SWITCH, SUSPEND, IDLE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ARROWS_")] public enum ArrowPlacement { BOTH, START, END } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ARROW_")] public enum ArrowType { UP, DOWN, LEFT, RIGHT, NONE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ASSISTANT_PAGE_")] public enum AssistantPageType { CONTENT, INTRO, CONFIRM, SUMMARY, PROGRESS, CUSTOM } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_")] [Flags] public enum AttachOptions { EXPAND, SHRINK, FILL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BASELINE_POSITION_")] public enum BaselinePosition { TOP, CENTER, BOTTOM } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BORDER_STYLE_")] public enum BorderStyle { NONE, SOLID, INSET, OUTSET, HIDDEN, DOTTED, DASHED, DOUBLE, GROOVE, RIDGE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BUTTONBOX_")] public enum ButtonBoxStyle { SPREAD, EDGE, START, END, CENTER } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BUTTONS_")] public enum ButtonsType { NONE, OK, CLOSE, CANCEL, YES_NO, OK_CANCEL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CALENDAR_")] [Flags] public enum CalendarDisplayOptions { SHOW_HEADING, SHOW_DAY_NAMES, NO_MONTH_CHANGE, SHOW_WEEK_NUMBERS, SHOW_DETAILS } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CELL_RENDERER_ACCEL_MODE_")] public enum CellRendererAccelMode { GTK, OTHER, MODIFIER_TAP } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CELL_RENDERER_MODE_")] public enum CellRendererMode { INERT, ACTIVATABLE, EDITABLE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CELL_RENDERER_")] [Flags] public enum CellRendererState { SELECTED, PRELIT, INSENSITIVE, SORTED, FOCUSED, EXPANDABLE, EXPANDED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CORNER_")] public enum CornerType { TOP_LEFT, BOTTOM_LEFT, TOP_RIGHT, BOTTOM_RIGHT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CSS_PROVIDER_ERROR_")] public enum CssProviderError { FAILED, SYNTAX, IMPORT, NAME, DEPRECATED, UNKNOWN_VALUE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_CSS_SECTION_")] public enum CssSectionType { DOCUMENT, IMPORT, COLOR_DEFINITION, BINDING_SET, RULESET, SELECTOR, DECLARATION, VALUE, KEYFRAMES } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DEBUG_")] [Flags] public enum DebugFlag { MISC, PLUGSOCKET, TEXT, TREE, UPDATES, KEYBINDINGS, MULTIHEAD, MODULES, GEOMETRY, ICONTHEME, PRINTING, BUILDER, SIZE_REQUEST, NO_CSS_CACHE, BASELINES, PIXEL_CACHE, NO_PIXEL_CACHE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DELETE_")] public enum DeleteType { CHARS, WORD_ENDS, WORDS, DISPLAY_LINES, DISPLAY_LINE_ENDS, PARAGRAPH_ENDS, PARAGRAPHS, WHITESPACE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DEST_DEFAULT_")] [Flags] public enum DestDefaults { MOTION, HIGHLIGHT, DROP, ALL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DIALOG_")] [Flags] public enum DialogFlags { MODAL, DESTROY_WITH_PARENT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DIR_")] public enum DirectionType { TAB_FORWARD, TAB_BACKWARD, UP, DOWN, LEFT, RIGHT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_DRAG_RESULT_")] public enum DragResult { SUCCESS, NO_TARGET, USER_CANCELLED, TIMEOUT_EXPIRED, GRAB_BROKEN, ERROR } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ENTRY_ICON_")] public enum EntryIconPosition { PRIMARY, SECONDARY } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_EXPANDER_")] public enum ExpanderStyle { COLLAPSED, SEMI_COLLAPSED, SEMI_EXPANDED, EXPANDED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_FILE_CHOOSER_ACTION_")] public enum FileChooserAction { OPEN, SAVE, SELECT_FOLDER, CREATE_FOLDER } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_FILE_CHOOSER_CONFIRMATION_")] public enum FileChooserConfirmation { CONFIRM, ACCEPT_FILENAME, SELECT_AGAIN } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_FILE_CHOOSER_ERROR_")] public enum FileChooserError { NONEXISTENT, BAD_FILENAME, ALREADY_EXISTS, INCOMPLETE_HOSTNAME } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_FILE_FILTER_")] [Flags] public enum FileFilterFlags { FILENAME, URI, DISPLAY_NAME, MIME_TYPE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_IM_PREEDIT_")] public enum IMPreeditStyle { NOTHING, CALLBACK, NONE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_IM_STATUS_")] public enum IMStatusStyle { NOTHING, CALLBACK, NONE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ICON_LOOKUP_")] [Flags] public enum IconLookupFlags { NO_SVG, FORCE_SVG, USE_BUILTIN, GENERIC_FALLBACK, FORCE_SIZE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ICON_SIZE_")] public enum IconSize { INVALID, MENU, SMALL_TOOLBAR, LARGE_TOOLBAR, BUTTON, DND, DIALOG } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ICON_THEME_")] public enum IconThemeError { NOT_FOUND, FAILED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ICON_VIEW_")] public enum IconViewDropPosition { NO_DROP, DROP_INTO, DROP_LEFT, DROP_RIGHT, DROP_ABOVE, DROP_BELOW } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_IMAGE_")] public enum ImageType { EMPTY, PIXBUF, STOCK, ICON_SET, ANIMATION, ICON_NAME, GICON, SURFACE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_INPUT_HINT_")] [Flags] public enum InputHints { NONE, SPELLCHECK, NO_SPELLCHECK, WORD_COMPLETION, LOWERCASE, UPPERCASE_CHARS, UPPERCASE_WORDS, UPPERCASE_SENTENCES, INHIBIT_OSK } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_INPUT_PURPOSE_")] public enum InputPurpose { FREE_FORM, ALPHA, DIGITS, NUMBER, PHONE, URL, EMAIL, NAME, PASSWORD, PIN } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_JUNCTION_")] [Flags] public enum JunctionSides { NONE, CORNER_TOPLEFT, CORNER_TOPRIGHT, CORNER_BOTTOMLEFT, CORNER_BOTTOMRIGHT, TOP, BOTTOM, LEFT, RIGHT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_JUSTIFY_")] public enum Justification { LEFT, RIGHT, CENTER, FILL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_LEVEL_BAR_MODE_")] public enum LevelBarMode { CONTINUOUS, DISCRETE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_LICENSE_")] public enum License { UNKNOWN, CUSTOM, GPL_2_0, GPL_3_0, LGPL_2_1, LGPL_3_0, BSD, MIT_X11, ARTISTIC } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_MENU_DIR_")] public enum MenuDirectionType { PARENT, CHILD, NEXT, PREV } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_MESSAGE_")] public enum MessageType { INFO, WARNING, QUESTION, ERROR, OTHER } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_MOVEMENT_")] public enum MovementStep { LOGICAL_POSITIONS, VISUAL_POSITIONS, WORDS, DISPLAY_LINES, DISPLAY_LINE_ENDS, PARAGRAPHS, PARAGRAPH_ENDS, PAGES, BUFFER_ENDS, HORIZONTAL_PAGES } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_NOTEBOOK_TAB_")] public enum NotebookTab { FIRST, LAST } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_NUMBER_UP_LAYOUT_")] public enum NumberUpLayout { LEFT_TO_RIGHT_TOP_TO_BOTTOM, LEFT_TO_RIGHT_BOTTOM_TO_TOP, RIGHT_TO_LEFT_TOP_TO_BOTTOM, RIGHT_TO_LEFT_BOTTOM_TO_TOP, TOP_TO_BOTTOM_LEFT_TO_RIGHT, TOP_TO_BOTTOM_RIGHT_TO_LEFT, BOTTOM_TO_TOP_LEFT_TO_RIGHT, BOTTOM_TO_TOP_RIGHT_TO_LEFT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_ORIENTATION_")] public enum Orientation { HORIZONTAL, VERTICAL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PACK_DIRECTION_")] public enum PackDirection { LTR, RTL, TTB, BTT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PACK_")] public enum PackType { START, END } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PAGE_ORIENTATION_")] public enum PageOrientation { PORTRAIT, LANDSCAPE, REVERSE_PORTRAIT, REVERSE_LANDSCAPE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PAGE_SET_")] public enum PageSet { ALL, EVEN, ODD } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PATH_PRIO_")] public enum PathPriorityType { LOWEST, GTK, APPLICATION, THEME, RC, HIGHEST } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PATH_")] public enum PathType { WIDGET, WIDGET_CLASS, CLASS } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PLACES_OPEN_")] [Flags] public enum PlacesOpenFlags { NORMAL, NEW_TAB, NEW_WINDOW } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_POLICY_")] public enum PolicyType { ALWAYS, AUTOMATIC, NEVER } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_POS_")] public enum PositionType { LEFT, RIGHT, TOP, BOTTOM } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_DUPLEX_")] public enum PrintDuplex { SIMPLEX, HORIZONTAL, VERTICAL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_ERROR_")] public enum PrintError { GENERAL, INTERNAL_ERROR, NOMEM, INVALID_FILE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_OPERATION_ACTION_")] public enum PrintOperationAction { PRINT_DIALOG, PRINT, PREVIEW, EXPORT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_OPERATION_RESULT_")] public enum PrintOperationResult { ERROR, APPLY, CANCEL, IN_PROGRESS } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_PAGES_")] public enum PrintPages { ALL, CURRENT, RANGES, SELECTION } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_QUALITY_")] public enum PrintQuality { LOW, NORMAL, HIGH, DRAFT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_PRINT_STATUS_")] public enum PrintStatus { INITIAL, PREPARING, GENERATING_DATA, SENDING_DATA, PENDING, PENDING_ISSUE, PRINTING, FINISHED, FINISHED_ABORTED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RC_")] [Flags] public enum RcFlags { FG, BG, TEXT, BASE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RC_TOKEN_")] public enum RcTokenType { INVALID, INCLUDE, NORMAL, ACTIVE, PRELIGHT, SELECTED, INSENSITIVE, FG, BG, TEXT, BASE, XTHICKNESS, YTHICKNESS, FONT, FONTSET, FONT_NAME, BG_PIXMAP, PIXMAP_PATH, STYLE, BINDING, BIND, WIDGET, WIDGET_CLASS, CLASS, LOWEST, GTK, APPLICATION, THEME, RC, HIGHEST, ENGINE, MODULE_PATH, IM_MODULE_PATH, IM_MODULE_FILE, STOCK, LTR, RTL, COLOR, UNBIND, LAST } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RECENT_CHOOSER_ERROR_")] public enum RecentChooserError { NOT_FOUND, INVALID_URI } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RECENT_FILTER_")] [Flags] public enum RecentFilterFlags { URI, DISPLAY_NAME, MIME_TYPE, APPLICATION, GROUP, AGE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RECENT_MANAGER_ERROR_")] public enum RecentManagerError { NOT_FOUND, INVALID_URI, INVALID_ENCODING, NOT_REGISTERED, READ, WRITE, UNKNOWN } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RECENT_SORT_")] public enum RecentSortType { NONE, MRU, LRU, CUSTOM } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_REGION_")] [Flags] public enum RegionFlags { EVEN, ODD, FIRST, LAST, ONLY, SORTED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RELIEF_")] public enum ReliefStyle { NORMAL, HALF, NONE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RESIZE_")] public enum ResizeMode { PARENT, QUEUE, [Deprecated] IMMEDIATE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_RESPONSE_")] public enum ResponseType { NONE, REJECT, ACCEPT, DELETE_EVENT, OK, CANCEL, CLOSE, YES, NO, APPLY, HELP } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_REVEALER_TRANSITION_TYPE_")] public enum RevealerTransitionType { NONE, CROSSFADE, SLIDE_RIGHT, SLIDE_LEFT, SLIDE_UP, SLIDE_DOWN } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SCROLL_")] public enum ScrollStep { STEPS, PAGES, ENDS, HORIZONTAL_STEPS, HORIZONTAL_PAGES, HORIZONTAL_ENDS } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SCROLL_")] public enum ScrollType { NONE, JUMP, STEP_BACKWARD, STEP_FORWARD, PAGE_BACKWARD, PAGE_FORWARD, STEP_UP, STEP_DOWN, PAGE_UP, PAGE_DOWN, STEP_LEFT, STEP_RIGHT, PAGE_LEFT, PAGE_RIGHT, START, END } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SCROLL_")] public enum ScrollablePolicy { MINIMUM, NATURAL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SELECTION_")] public enum SelectionMode { NONE, SINGLE, BROWSE, MULTIPLE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SENSITIVITY_")] public enum SensitivityType { AUTO, ON, OFF } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SHADOW_")] public enum ShadowType { NONE, IN, OUT, ETCHED_IN, ETCHED_OUT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SIZE_GROUP_")] public enum SizeGroupMode { NONE, HORIZONTAL, VERTICAL, BOTH } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SIZE_REQUEST_")] public enum SizeRequestMode { HEIGHT_FOR_WIDTH, WIDTH_FOR_HEIGHT, CONSTANT_SIZE } [CCode (cheader_filename = "gtk/gtk.h", cname = "gint")] public enum SortColumn { [CCode (cname = "GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID")] DEFAULT, [CCode (cname = "GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID")] UNSORTED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SORT_")] public enum SortType { ASCENDING, DESCENDING } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_UPDATE_")] public enum SpinButtonUpdatePolicy { ALWAYS, IF_VALID } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_SPIN_")] public enum SpinType { STEP_FORWARD, STEP_BACKWARD, PAGE_FORWARD, PAGE_BACKWARD, HOME, END, USER_DEFINED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_STACK_TRANSITION_TYPE_")] public enum StackTransitionType { NONE, CROSSFADE, SLIDE_RIGHT, SLIDE_LEFT, SLIDE_UP, SLIDE_DOWN, SLIDE_LEFT_RIGHT, SLIDE_UP_DOWN } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_STATE_FLAG_")] [Flags] public enum StateFlags { NORMAL, ACTIVE, PRELIGHT, SELECTED, INSENSITIVE, INCONSISTENT, FOCUSED, BACKDROP, DIR_LTR, DIR_RTL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_STATE_")] public enum StateType { NORMAL, ACTIVE, PRELIGHT, SELECTED, INSENSITIVE, INCONSISTENT, FOCUSED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TARGET_")] [Flags] public enum TargetFlags { SAME_APP, SAME_WIDGET, OTHER_APP, OTHER_WIDGET } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TEXT_BUFFER_TARGET_INFO_")] public enum TextBufferTargetInfo { BUFFER_CONTENTS, RICH_TEXT, TEXT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TEXT_DIR_")] public enum TextDirection { NONE, LTR, RTL } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TEXT_SEARCH_")] [Flags] public enum TextSearchFlags { VISIBLE_ONLY, TEXT_ONLY, CASE_INSENSITIVE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TEXT_WINDOW_")] public enum TextWindowType { PRIVATE, WIDGET, TEXT, LEFT, RIGHT, TOP, BOTTOM } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TOOL_PALETTE_DRAG_")] [Flags] public enum ToolPaletteDragTargets { ITEMS, GROUPS } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TOOLBAR_SPACE_")] public enum ToolbarSpaceStyle { EMPTY, LINE } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TOOLBAR_")] public enum ToolbarStyle { ICONS, TEXT, BOTH, BOTH_HORIZ } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_MODEL_")] [Flags] public enum TreeModelFlags { ITERS_PERSIST, LIST_ONLY } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_VIEW_COLUMN_")] public enum TreeViewColumnSizing { GROW_ONLY, AUTOSIZE, FIXED } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_VIEW_DROP_")] public enum TreeViewDropPosition { BEFORE, AFTER, INTO_OR_BEFORE, INTO_OR_AFTER } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_TREE_VIEW_GRID_LINES_")] public enum TreeViewGridLines { NONE, HORIZONTAL, VERTICAL, BOTH } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_UI_MANAGER_")] [Flags] public enum UIManagerItemType { AUTO, MENUBAR, MENU, TOOLBAR, PLACEHOLDER, POPUP, MENUITEM, TOOLITEM, SEPARATOR, ACCELERATOR, POPUP_WITH_ACCELS } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_UNIT_")] public enum Unit { NONE, POINTS, INCH, MM } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_WIDGET_HELP_")] public enum WidgetHelpType { TOOLTIP, WHATS_THIS } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_WIN_POS_")] public enum WindowPosition { NONE, CENTER, MOUSE, CENTER_ALWAYS, CENTER_ON_PARENT } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_WINDOW_")] public enum WindowType { TOPLEVEL, POPUP } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_WRAP_")] public enum WrapMode { NONE, CHAR, WORD, WORD_CHAR } [CCode (cheader_filename = "gtk/gtk.h", cprefix = "GTK_BUILDER_ERROR_")] public errordomain BuilderError { INVALID_TYPE_FUNCTION, UNHANDLED_TAG, MISSING_ATTRIBUTE, INVALID_ATTRIBUTE, INVALID_TAG, MISSING_PROPERTY_VALUE, INVALID_VALUE, VERSION_MISMATCH, DUPLICATE_ID, OBJECT_TYPE_REFUSED, TEMPLATE_MISMATCH } [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool AccelGroupActivate (Gtk.AccelGroup accel_group, GLib.Object acceleratable, uint keyval, Gdk.ModifierType modifier); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool AccelGroupFindFunc (Gtk.AccelKey key, GLib.Closure closure); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate void AccelMapForeach (void* data, string accel_path, uint accel_key, Gdk.ModifierType accel_mods, bool changed); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void ActionCallback (Gtk.Action action); [CCode (cheader_filename = "gtk/gtk.h")] public delegate int AssistantPageFunc (int current_page); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void BuilderConnectFunc (Gtk.Builder builder, GLib.Object object, string signal_name, string handler_name, GLib.Object? connect_object, GLib.ConnectFlags flags); [CCode (cheader_filename = "gtk/gtk.h")] public delegate string CalendarDetailFunc (Gtk.Calendar calendar, uint year, uint month, uint day); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void Callback (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool CellAllocCallback (Gtk.CellRenderer renderer, Gdk.Rectangle cell_area, Gdk.Rectangle cell_background); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool CellCallback (Gtk.CellRenderer renderer); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void CellLayoutDataFunc (Gtk.CellLayout cell_layout, Gtk.CellRenderer cell, Gtk.TreeModel tree_model, Gtk.TreeIter iter); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate void ClipboardClearFunc (Gtk.Clipboard clipboard, void* user_data_or_owner); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate void ClipboardGetFunc (Gtk.Clipboard clipboard, Gtk.SelectionData selection_data, uint info, void* user_data_or_owner); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void ClipboardImageReceivedFunc (Gtk.Clipboard clipboard, Gdk.Pixbuf pixbuf); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void ClipboardReceivedFunc (Gtk.Clipboard clipboard, Gtk.SelectionData selection_data); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void ClipboardRichTextReceivedFunc (Gtk.Clipboard clipboard, Gdk.Atom format, [CCode (array_length_type = "gsize")] uint8[] text); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void ClipboardTargetsReceivedFunc (Gtk.Clipboard clipboard, Gdk.Atom[] atoms); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void ClipboardTextReceivedFunc (Gtk.Clipboard clipboard, string? text); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void ClipboardURIReceivedFunc (Gtk.Clipboard clipboard, [CCode (array_length = false, array_null_terminated = true)] string[] uris); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate void ColorSelectionChangePaletteFunc (Gdk.Color colors, int n_colors); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate void ColorSelectionChangePaletteWithScreenFunc (Gdk.Screen screen, Gdk.Color colors, int n_colors); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool EntryCompletionMatchFunc (Gtk.EntryCompletion completion, string key, Gtk.TreeIter iter); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool FileFilterFunc (Gtk.FileFilterInfo filter_info); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool FontFilterFunc (Pango.FontFamily family, Pango.FontFace face); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void IconViewForeachFunc (Gtk.IconView icon_view, Gtk.TreePath path); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate int KeySnoopFunc (Gtk.Widget grab_widget, Gdk.EventKey event, void* func_data); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool ListBoxFilterFunc (Gtk.ListBoxRow row); [CCode (cheader_filename = "gtk/gtk.h")] public delegate int ListBoxSortFunc (Gtk.ListBoxRow row1, Gtk.ListBoxRow row2); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void ListBoxUpdateHeaderFunc (Gtk.ListBoxRow row, Gtk.ListBoxRow before); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate void MenuDetachFunc (Gtk.Widget attach_widget, Gtk.Menu menu); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void MenuPositionFunc (Gtk.Menu menu, out int x, out int y, out bool push_in); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate void ModuleDisplayInitFunc (Gdk.Display display); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate void ModuleInitFunc (int argc, string argv); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void PageSetupDoneFunc (Gtk.PageSetup page_setup); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void PrintSettingsFunc (string key, string value); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void RadioActionCallback (Gtk.Action action, Gtk.Action current); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate bool RcPropertyParser (GLib.ParamSpec pspec, GLib.StringBuilder rc_string, GLib.Value property_value); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool RecentFilterFunc (Gtk.RecentFilterInfo filter_info); [CCode (cheader_filename = "gtk/gtk.h")] public delegate int RecentSortFunc (Gtk.RecentInfo a, Gtk.RecentInfo b); [CCode (cheader_filename = "gtk/gtk.h", has_target = false)] public delegate bool StylePropertyParser (string str, GLib.Value value) throws GLib.Error; [CCode (cheader_filename = "gtk/gtk.h", instance_pos = 5.9)] public delegate bool TextBufferDeserializeFunc (Gtk.TextBuffer register_buffer, Gtk.TextBuffer content_buffer, Gtk.TextIter iter, [CCode (array_length_type = "gsize")] uint8[] data, bool create_tags) throws GLib.Error; [CCode (cheader_filename = "gtk/gtk.h")] public delegate uchar TextBufferSerializeFunc (Gtk.TextBuffer register_buffer, Gtk.TextBuffer content_buffer, Gtk.TextIter start, Gtk.TextIter end, size_t length); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool TextCharPredicate (unichar ch); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void TextTagTableForeach (Gtk.TextTag tag); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool TickCallback (Gtk.Widget widget, Gdk.FrameClock frame_clock); [CCode (cheader_filename = "gtk/gtk.h")] public delegate unowned string TranslateFunc (string path); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void TreeCellDataFunc (Gtk.TreeViewColumn tree_column, Gtk.CellRenderer cell, Gtk.TreeModel tree_model, Gtk.TreeIter iter); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void TreeDestroyCountFunc (Gtk.TreeView tree_view, Gtk.TreePath path, int children); [CCode (cheader_filename = "gtk/gtk.h")] public delegate int TreeIterCompareFunc (Gtk.TreeModel model, Gtk.TreeIter a, Gtk.TreeIter b); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void TreeModelFilterModifyFunc (Gtk.TreeModel model, Gtk.TreeIter iter, GLib.Value value, int column); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool TreeModelFilterVisibleFunc (Gtk.TreeModel model, Gtk.TreeIter iter); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool TreeModelForeachFunc (Gtk.TreeModel model, Gtk.TreePath path, Gtk.TreeIter iter); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void TreeSelectionForeachFunc (Gtk.TreeModel model, Gtk.TreePath path, Gtk.TreeIter iter); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool TreeSelectionFunc (Gtk.TreeSelection selection, Gtk.TreeModel model, Gtk.TreePath path, bool path_currently_selected); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool TreeViewColumnDropFunc (Gtk.TreeView tree_view, Gtk.TreeViewColumn column, Gtk.TreeViewColumn prev_column, Gtk.TreeViewColumn next_column); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void TreeViewMappingFunc (Gtk.TreeView tree_view, Gtk.TreePath path); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool TreeViewRowSeparatorFunc (Gtk.TreeModel model, Gtk.TreeIter iter); [CCode (cheader_filename = "gtk/gtk.h")] public delegate bool TreeViewSearchEqualFunc (Gtk.TreeModel model, int column, string key, Gtk.TreeIter iter); [CCode (cheader_filename = "gtk/gtk.h")] public delegate void TreeViewSearchPositionFunc (Gtk.TreeView tree_view, Gtk.Widget search_dialog); [CCode (cheader_filename = "gtk/gtk.h")] public const int BINARY_AGE; [CCode (cheader_filename = "gtk/gtk.h")] public const int INPUT_ERROR; [CCode (cheader_filename = "gtk/gtk.h")] public const int INTERFACE_AGE; [CCode (cheader_filename = "gtk/gtk.h")] public const string LEVEL_BAR_OFFSET_HIGH; [CCode (cheader_filename = "gtk/gtk.h")] public const string LEVEL_BAR_OFFSET_LOW; [CCode (cheader_filename = "gtk/gtk.h")] public const int MAJOR_VERSION; [CCode (cheader_filename = "gtk/gtk.h")] public const int MAX_COMPOSE_LEN; [CCode (cheader_filename = "gtk/gtk.h")] public const int MICRO_VERSION; [CCode (cheader_filename = "gtk/gtk.h")] public const int MINOR_VERSION; [CCode (cheader_filename = "gtk/gtk.h")] public const string PAPER_NAME_A3; [CCode (cheader_filename = "gtk/gtk.h")] public const string PAPER_NAME_A4; [CCode (cheader_filename = "gtk/gtk.h")] public const string PAPER_NAME_A5; [CCode (cheader_filename = "gtk/gtk.h")] public const string PAPER_NAME_B5; [CCode (cheader_filename = "gtk/gtk.h")] public const string PAPER_NAME_EXECUTIVE; [CCode (cheader_filename = "gtk/gtk.h")] public const string PAPER_NAME_LEGAL; [CCode (cheader_filename = "gtk/gtk.h")] public const string PAPER_NAME_LETTER; [CCode (cheader_filename = "gtk/gtk.h")] public const int PATH_PRIO_MASK; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_COLLATE; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_DEFAULT_SOURCE; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_DITHER; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_DUPLEX; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_FINISHINGS; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_MEDIA_TYPE; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_NUMBER_UP; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_NUMBER_UP_LAYOUT; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_N_COPIES; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_ORIENTATION; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_OUTPUT_BASENAME; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_OUTPUT_BIN; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_OUTPUT_DIR; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_OUTPUT_FILE_FORMAT; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_OUTPUT_URI; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_PAGE_RANGES; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_PAGE_SET; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_PAPER_FORMAT; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_PAPER_HEIGHT; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_PAPER_WIDTH; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_PRINTER; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_PRINTER_LPI; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_PRINT_PAGES; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_QUALITY; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_RESOLUTION; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_RESOLUTION_X; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_RESOLUTION_Y; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_REVERSE; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_SCALE; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_USE_COLOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_WIN32_DRIVER_EXTRA; [CCode (cheader_filename = "gtk/gtk.h")] public const string PRINT_SETTINGS_WIN32_DRIVER_VERSION; [CCode (cheader_filename = "gtk/gtk.h")] public const int PRIORITY_RESIZE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ABOUT", since = "vala-0.12")] public const string STOCK_ABOUT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ADD", since = "vala-0.12")] public const string STOCK_ADD; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.APPLY", since = "vala-0.12")] public const string STOCK_APPLY; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.BOLD", since = "vala-0.12")] public const string STOCK_BOLD; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.CANCEL", since = "vala-0.12")] public const string STOCK_CANCEL; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.CAPS_LOCK_WARNING", since = "vala-0.12")] public const string STOCK_CAPS_LOCK_WARNING; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.CDROM", since = "vala-0.12")] public const string STOCK_CDROM; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.CLEAR", since = "vala-0.12")] public const string STOCK_CLEAR; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.CLOSE", since = "vala-0.12")] public const string STOCK_CLOSE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.COLOR_PICKER", since = "vala-0.12")] public const string STOCK_COLOR_PICKER; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.CONNECT", since = "vala-0.12")] public const string STOCK_CONNECT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.CONVERT", since = "vala-0.12")] public const string STOCK_CONVERT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.COPY", since = "vala-0.12")] public const string STOCK_COPY; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.CUT", since = "vala-0.12")] public const string STOCK_CUT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DELETE", since = "vala-0.12")] public const string STOCK_DELETE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DIALOG_AUTHENTICATION", since = "vala-0.12")] public const string STOCK_DIALOG_AUTHENTICATION; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DIALOG_ERROR", since = "vala-0.12")] public const string STOCK_DIALOG_ERROR; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DIALOG_INFO", since = "vala-0.12")] public const string STOCK_DIALOG_INFO; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DIALOG_QUESTION", since = "vala-0.12")] public const string STOCK_DIALOG_QUESTION; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DIALOG_WARNING", since = "vala-0.12")] public const string STOCK_DIALOG_WARNING; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DIRECTORY", since = "vala-0.12")] public const string STOCK_DIRECTORY; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DISCARD", since = "vala-0.12")] public const string STOCK_DISCARD; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DISCONNECT", since = "vala-0.12")] public const string STOCK_DISCONNECT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DND", since = "vala-0.12")] public const string STOCK_DND; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.DND_MULTIPLE", since = "vala-0.12")] public const string STOCK_DND_MULTIPLE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.EDIT", since = "vala-0.12")] public const string STOCK_EDIT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.EXECUTE", since = "vala-0.12")] public const string STOCK_EXECUTE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.FILE", since = "vala-0.12")] public const string STOCK_FILE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.FIND", since = "vala-0.12")] public const string STOCK_FIND; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.FIND_AND_REPLACE", since = "vala-0.12")] public const string STOCK_FIND_AND_REPLACE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.FLOPPY", since = "vala-0.12")] public const string STOCK_FLOPPY; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.FULLSCREEN", since = "vala-0.12")] public const string STOCK_FULLSCREEN; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.GOTO_BOTTOM", since = "vala-0.12")] public const string STOCK_GOTO_BOTTOM; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.GOTO_FIRST", since = "vala-0.12")] public const string STOCK_GOTO_FIRST; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.GOTO_LAST", since = "vala-0.12")] public const string STOCK_GOTO_LAST; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.GOTO_TOP", since = "vala-0.12")] public const string STOCK_GOTO_TOP; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.GO_BACK", since = "vala-0.12")] public const string STOCK_GO_BACK; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.GO_DOWN", since = "vala-0.12")] public const string STOCK_GO_DOWN; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.GO_FORWARD", since = "vala-0.12")] public const string STOCK_GO_FORWARD; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.GO_UP", since = "vala-0.12")] public const string STOCK_GO_UP; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.HARDDISK", since = "vala-0.12")] public const string STOCK_HARDDISK; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.HELP", since = "vala-0.12")] public const string STOCK_HELP; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.HOME", since = "vala-0.12")] public const string STOCK_HOME; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.INDENT", since = "vala-0.12")] public const string STOCK_INDENT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.INDEX", since = "vala-0.12")] public const string STOCK_INDEX; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.INFO", since = "vala-0.12")] public const string STOCK_INFO; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ITALIC", since = "vala-0.12")] public const string STOCK_ITALIC; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.JUMP_TO", since = "vala-0.12")] public const string STOCK_JUMP_TO; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.JUSTIFY_CENTER", since = "vala-0.12")] public const string STOCK_JUSTIFY_CENTER; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.JUSTIFY_FILL", since = "vala-0.12")] public const string STOCK_JUSTIFY_FILL; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.JUSTIFY_LEFT", since = "vala-0.12")] public const string STOCK_JUSTIFY_LEFT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.JUSTIFY_RIGHT", since = "vala-0.12")] public const string STOCK_JUSTIFY_RIGHT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.FULLSCREEN", since = "vala-0.12")] public const string STOCK_LEAVE_FULLSCREEN; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MEDIA_FORWARD", since = "vala-0.12")] public const string STOCK_MEDIA_FORWARD; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MEDIA_NEXT", since = "vala-0.12")] public const string STOCK_MEDIA_NEXT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MEDIA_PAUSE", since = "vala-0.12")] public const string STOCK_MEDIA_PAUSE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MEDIA_PLAY", since = "vala-0.12")] public const string STOCK_MEDIA_PLAY; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MEDIA_PREVIOUS", since = "vala-0.12")] public const string STOCK_MEDIA_PREVIOUS; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MEDIA_RECORD", since = "vala-0.12")] public const string STOCK_MEDIA_RECORD; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MEDIA_REWIND", since = "vala-0.12")] public const string STOCK_MEDIA_REWIND; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MEDIA_STOP", since = "vala-0.12")] public const string STOCK_MEDIA_STOP; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.MISSING_IMAGE", since = "vala-0.12")] public const string STOCK_MISSING_IMAGE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.NETWORK", since = "vala-0.12")] public const string STOCK_NETWORK; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.NEW", since = "vala-0.12")] public const string STOCK_NEW; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.NO", since = "vala-0.12")] public const string STOCK_NO; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.OK", since = "vala-0.12")] public const string STOCK_OK; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.OPEN", since = "vala-0.12")] public const string STOCK_OPEN; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ORIENTATION_LANDSCAPE", since = "vala-0.12")] public const string STOCK_ORIENTATION_LANDSCAPE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ORIENTATION_PORTRAIT", since = "vala-0.12")] public const string STOCK_ORIENTATION_PORTRAIT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ORIENTATION_REVERSE_LANDSCAPE", since = "vala-0.12")] public const string STOCK_ORIENTATION_REVERSE_LANDSCAPE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ORIENTATION_REVERSE_PORTRAIT", since = "vala-0.12")] public const string STOCK_ORIENTATION_REVERSE_PORTRAIT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PAGE_SETUP", since = "vala-0.12")] public const string STOCK_PAGE_SETUP; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PASTE", since = "vala-0.12")] public const string STOCK_PASTE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PREFERENCES", since = "vala-0.12")] public const string STOCK_PREFERENCES; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PRINT", since = "vala-0.12")] public const string STOCK_PRINT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PRINT_ERROR", since = "vala-0.12")] public const string STOCK_PRINT_ERROR; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PRINT_PAUSED", since = "vala-0.12")] public const string STOCK_PRINT_PAUSED; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PRINT_PREVIEW", since = "vala-0.12")] public const string STOCK_PRINT_PREVIEW; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PRINT_REPORT", since = "vala-0.12")] public const string STOCK_PRINT_REPORT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PRINT_WARNING", since = "vala-0.12")] public const string STOCK_PRINT_WARNING; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.PROPERTIES", since = "vala-0.12")] public const string STOCK_PROPERTIES; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.QUIT", since = "vala-0.12")] public const string STOCK_QUIT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.REDO", since = "vala-0.12")] public const string STOCK_REDO; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.REFRESH", since = "vala-0.12")] public const string STOCK_REFRESH; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.REMOVE", since = "vala-0.12")] public const string STOCK_REMOVE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.REVERT_TO_SAVED", since = "vala-0.12")] public const string STOCK_REVERT_TO_SAVED; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.SAVE", since = "vala-0.12")] public const string STOCK_SAVE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.SAVE_AS", since = "vala-0.12")] public const string STOCK_SAVE_AS; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.SELECT_ALL", since = "vala-0.12")] public const string STOCK_SELECT_ALL; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.SELECT_COLOR", since = "vala-0.12")] public const string STOCK_SELECT_COLOR; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.SELECT_FONT", since = "vala-0.12")] public const string STOCK_SELECT_FONT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.SORT_ASCENDING", since = "vala-0.12")] public const string STOCK_SORT_ASCENDING; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.SORT_DESCENDING", since = "vala-0.12")] public const string STOCK_SORT_DESCENDING; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.SPELL_CHECK", since = "vala-0.12")] public const string STOCK_SPELL_CHECK; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.STOP", since = "vala-0.12")] public const string STOCK_STOP; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.STRIKETHROUGH", since = "vala-0.12")] public const string STOCK_STRIKETHROUGH; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.UNDELETE", since = "vala-0.12")] public const string STOCK_UNDELETE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.UNDERLINE", since = "vala-0.12")] public const string STOCK_UNDERLINE; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.UNDO", since = "vala-0.12")] public const string STOCK_UNDO; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.UNINDENT", since = "vala-0.12")] public const string STOCK_UNINDENT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.YES", since = "vala-0.12")] public const string STOCK_YES; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ZOOM_100", since = "vala-0.12")] public const string STOCK_ZOOM_100; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ZOOM_FIT", since = "vala-0.12")] public const string STOCK_ZOOM_FIT; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ZOOM_IN", since = "vala-0.12")] public const string STOCK_ZOOM_IN; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.ZOOM_OUT", since = "vala-0.12")] public const string STOCK_ZOOM_OUT; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_ACCELERATOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_ARROW; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_BACKGROUND; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_BOTTOM; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_BUTTON; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_CALENDAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_CELL; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_CHECK; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_COMBOBOX_ENTRY; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_CONTEXT_MENU; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_CURSOR_HANDLE; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_DEFAULT; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_DIM_LABEL; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_DND; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_DOCK; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_ENTRY; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_ERROR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_EXPANDER; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_FRAME; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_GRIP; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_HEADER; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_HIGHLIGHT; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_HORIZONTAL; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_IMAGE; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_INFO; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_INLINE_TOOLBAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_INSERTION_CURSOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_LEFT; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_LEVEL_BAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_LINKED; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_LIST; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_LIST_ROW; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_MARK; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_MENU; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_MENUBAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_MENUITEM; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_NOTEBOOK; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_OSD; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_PANE_SEPARATOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_PRIMARY_TOOLBAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_PROGRESSBAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_PULSE; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_QUESTION; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_RADIO; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_RAISED; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_READ_ONLY; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_RIGHT; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_RUBBERBAND; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SCALE; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SCALE_HAS_MARKS_ABOVE; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SCALE_HAS_MARKS_BELOW; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SCROLLBAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SCROLLBARS_JUNCTION; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SEPARATOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SIDEBAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SLIDER; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SPINBUTTON; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_SPINNER; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_TITLEBAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_TOOLBAR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_TOOLTIP; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_TOP; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_TROUGH; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_VERTICAL; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_VIEW; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_CLASS_WARNING; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_BACKGROUND_COLOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_BACKGROUND_IMAGE; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_BORDER_COLOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_BORDER_RADIUS; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_BORDER_STYLE; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_BORDER_WIDTH; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_COLOR; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_FONT; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_MARGIN; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_PROPERTY_PADDING; [CCode (cheader_filename = "gtk/gtk.h")] public const int STYLE_PROVIDER_PRIORITY_APPLICATION; [CCode (cheader_filename = "gtk/gtk.h")] public const int STYLE_PROVIDER_PRIORITY_FALLBACK; [CCode (cheader_filename = "gtk/gtk.h")] public const int STYLE_PROVIDER_PRIORITY_SETTINGS; [CCode (cheader_filename = "gtk/gtk.h")] public const int STYLE_PROVIDER_PRIORITY_THEME; [CCode (cheader_filename = "gtk/gtk.h")] public const int STYLE_PROVIDER_PRIORITY_USER; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_REGION_COLUMN; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_REGION_COLUMN_HEADER; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_REGION_ROW; [CCode (cheader_filename = "gtk/gtk.h")] public const string STYLE_REGION_TAB; [CCode (cheader_filename = "gtk/gtk.h")] public const int TEXT_VIEW_PRIORITY_VALIDATE; [CCode (cheader_filename = "gtk/gtk.h")] public static bool accel_groups_activate (GLib.Object object, uint accel_key, Gdk.ModifierType accel_mods); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned GLib.SList accel_groups_from_object (GLib.Object object); [CCode (cheader_filename = "gtk/gtk.h")] public static Gdk.ModifierType accelerator_get_default_mod_mask (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string accelerator_get_label (uint accelerator_key, Gdk.ModifierType accelerator_mods); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string accelerator_get_label_with_keycode (Gdk.Display display, uint accelerator_key, uint keycode, Gdk.ModifierType accelerator_mods); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string accelerator_name (uint accelerator_key, Gdk.ModifierType accelerator_mods); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string accelerator_name_with_keycode (Gdk.Display display, uint accelerator_key, uint keycode, Gdk.ModifierType accelerator_mods); [CCode (cheader_filename = "gtk/gtk.h")] public static void accelerator_parse (string accelerator, out uint accelerator_key, out Gdk.ModifierType accelerator_mods); [CCode (cheader_filename = "gtk/gtk.h")] public static void accelerator_parse_with_keycode (string accelerator, uint accelerator_key, uint accelerator_codes, Gdk.ModifierType accelerator_mods); [CCode (cheader_filename = "gtk/gtk.h")] public static void accelerator_set_default_mod_mask (Gdk.ModifierType default_mod_mask); [CCode (cheader_filename = "gtk/gtk.h")] public static bool accelerator_valid (uint keyval, Gdk.ModifierType modifiers); [CCode (cheader_filename = "gtk/gtk.h")] public static bool alternative_dialog_button_order (Gdk.Screen screen); [CCode (cheader_filename = "gtk/gtk.h")] public static bool bindings_activate (GLib.Object object, uint keyval, Gdk.ModifierType modifiers); [CCode (cheader_filename = "gtk/gtk.h")] public static bool bindings_activate_event (GLib.Object object, Gdk.EventKey event); [CCode (cheader_filename = "gtk/gtk.h")] public static bool cairo_should_draw_window (Cairo.Context cr, Gdk.Window window); [CCode (cheader_filename = "gtk/gtk.h")] public static void cairo_transform_to_window (Cairo.Context cr, Gtk.Widget widget, Gdk.Window window); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string check_version (uint required_major, uint required_minor, uint required_micro); [CCode (cheader_filename = "gtk/gtk.h")] public static void device_grab_add (Gtk.Widget widget, Gdk.Device device, bool block_others); [CCode (cheader_filename = "gtk/gtk.h")] public static void device_grab_remove (Gtk.Widget widget, Gdk.Device device); [CCode (cheader_filename = "gtk/gtk.h")] public static void disable_setlocale (); [CCode (cheader_filename = "gtk/gtk.h")] public static int distribute_natural_allocation (int extra_space, uint n_requested_sizes, Gtk.RequestedSize sizes); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gdk.DragContext drag_begin (Gtk.Widget widget, Gtk.TargetList targets, Gdk.DragAction actions, int button, Gdk.Event? event); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gdk.DragContext drag_begin_with_coordinates (Gtk.Widget widget, Gtk.TargetList targets, Gdk.DragAction actions, int button, Gdk.Event event, int x, int y); [CCode (cheader_filename = "gtk/gtk.h")] public static bool drag_check_threshold (Gtk.Widget widget, int start_x, int start_y, int current_x, int current_y); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_dest_add_image_targets (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_dest_add_text_targets (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_dest_add_uri_targets (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static Gdk.Atom drag_dest_find_target (Gtk.Widget widget, Gdk.DragContext context, Gtk.TargetList target_list); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.TargetList drag_dest_get_target_list (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static bool drag_dest_get_track_motion (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_dest_set (Gtk.Widget widget, Gtk.DestDefaults flags, Gtk.TargetEntry[] targets, Gdk.DragAction actions); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_dest_set_proxy (Gtk.Widget widget, Gdk.Window proxy_window, Gdk.DragProtocol protocol, bool use_coordinates); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_dest_set_target_list (Gtk.Widget widget, Gtk.TargetList target_list); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_dest_set_track_motion (Gtk.Widget widget, bool track_motion); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_dest_unset (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_finish (Gdk.DragContext context, bool success, bool del, uint32 time_); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_get_data (Gtk.Widget widget, Gdk.DragContext context, Gdk.Atom target, uint32 time_); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget drag_get_source_widget (Gdk.DragContext context); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_highlight (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_set_icon_default (Gdk.DragContext context); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_set_icon_gicon (Gdk.DragContext context, GLib.Icon icon, int hot_x, int hot_y); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_set_icon_name (Gdk.DragContext context, string icon_name, int hot_x, int hot_y); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_set_icon_pixbuf (Gdk.DragContext context, Gdk.Pixbuf pixbuf, int hot_x, int hot_y); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_set_icon_stock (Gdk.DragContext context, string stock_id, int hot_x, int hot_y); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_set_icon_surface (Gdk.DragContext context, Cairo.Surface surface); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_set_icon_widget (Gdk.DragContext context, Gtk.Widget widget, int hot_x, int hot_y); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_add_image_targets (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_add_text_targets (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_add_uri_targets (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.TargetList drag_source_get_target_list (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_set (Gtk.Widget widget, Gdk.ModifierType start_button_mask, Gtk.TargetEntry[] targets, Gdk.DragAction actions); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_set_icon_gicon (Gtk.Widget widget, GLib.Icon icon); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_set_icon_name (Gtk.Widget widget, string icon_name); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_set_icon_pixbuf (Gtk.Widget widget, Gdk.Pixbuf pixbuf); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_set_icon_stock (Gtk.Widget widget, string stock_id); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_set_target_list (Gtk.Widget widget, Gtk.TargetList target_list); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_source_unset (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void drag_unhighlight (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "render_insertion_cursor", since = "3.4")] public static void draw_insertion_cursor (Gtk.Widget widget, Cairo.Context cr, Gdk.Rectangle location, bool is_primary, Gtk.TextDirection direction, bool draw_arrow); [CCode (cheader_filename = "gtk/gtk.h")] public static bool events_pending (); [CCode (cheader_filename = "gtk/gtk.h")] public static uint get_binary_age (); [CCode (cheader_filename = "gtk/gtk.h")] public static Gdk.Event get_current_event (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gdk.Device get_current_event_device (); [CCode (cheader_filename = "gtk/gtk.h")] public static bool get_current_event_state (out Gdk.ModifierType state); [CCode (cheader_filename = "gtk/gtk.h")] public static uint32 get_current_event_time (); [CCode (cheader_filename = "gtk/gtk.h")] public static uint get_debug_flags (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Pango.Language get_default_language (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget get_event_widget (Gdk.Event event); [CCode (cheader_filename = "gtk/gtk.h")] public static uint get_interface_age (); [CCode (cheader_filename = "gtk/gtk.h")] public static uint get_major_version (); [CCode (cheader_filename = "gtk/gtk.h")] public static uint get_micro_version (); [CCode (cheader_filename = "gtk/gtk.h")] public static uint get_minor_version (); [CCode (cheader_filename = "gtk/gtk.h")] public static GLib.OptionGroup get_option_group (bool open_default_display); [CCode (cheader_filename = "gtk/gtk.h")] public static void grab_add (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget grab_get_current (); [CCode (cheader_filename = "gtk/gtk.h")] public static void grab_remove (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static Gtk.IconSize icon_size_from_name (string name); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string icon_size_get_name (Gtk.IconSize size); [CCode (cheader_filename = "gtk/gtk.h")] public static bool icon_size_lookup (Gtk.IconSize size, out int width, out int height); [CCode (cheader_filename = "gtk/gtk.h")] public static bool icon_size_lookup_for_settings (Gtk.Settings settings, Gtk.IconSize size, out int width, out int height); [CCode (cheader_filename = "gtk/gtk.h")] public static Gtk.IconSize icon_size_register (string name, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] public static void icon_size_register_alias (string alias, Gtk.IconSize target); [CCode (cheader_filename = "gtk/gtk.h")] public static void init ([CCode (array_length_pos = 0.9)] ref unowned string[]? argv); [CCode (cheader_filename = "gtk/gtk.h")] public static bool init_check ([CCode (array_length_pos = 0.9)] ref unowned string[] argv); [CCode (cheader_filename = "gtk/gtk.h")] public static bool init_with_args ([CCode (array_length_pos = 0.9)] ref unowned string[] argv, string? parameter_string, [CCode (array_length = false)] GLib.OptionEntry[] entries, string? translation_domain) throws GLib.Error; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.4")] public static uint key_snooper_install (Gtk.KeySnoopFunc snooper, void* func_data); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.4")] public static void key_snooper_remove (uint snooper_handler_id); [CCode (cheader_filename = "gtk/gtk.h")] public static void main (); [CCode (cheader_filename = "gtk/gtk.h")] public static void main_do_event (Gdk.Event event); [CCode (cheader_filename = "gtk/gtk.h")] public static bool main_iteration (); [CCode (cheader_filename = "gtk/gtk.h")] public static bool main_iteration_do (bool blocking); [CCode (cheader_filename = "gtk/gtk.h")] public static uint main_level (); [CCode (cheader_filename = "gtk/gtk.h")] public static void main_quit (); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_arrow (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, Gtk.ArrowType arrow_type, bool fill, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "render_background", since = "3.0")] public static void paint_box (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "render_frame_gap", since = "3.0")] public static void paint_box_gap (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.PositionType gap_side, int gap_x, int gap_width); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_check (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_diamond (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "render_expander", since = "3.0")] public static void paint_expander (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget? widget, string? detail, int x, int y, Gtk.ExpanderStyle expander_style); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "render_frame and render_background", since = "3.0")] public static void paint_extension (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.PositionType gap_side); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_flat_box (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_focus (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_handle (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.Orientation orientation); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_hline (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget? widget, string? detail, int x1, int x2, int y); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_layout (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, bool use_text, Gtk.Widget? widget, string? detail, int x, int y, Pango.Layout layout); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_option (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "render_handle", since = "3.0")] public static void paint_resize_grip (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget? widget, string? detail, Gdk.WindowEdge edge, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_shadow (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "render_frame", since = "3.0")] public static void paint_shadow_gap (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.PositionType gap_side, int gap_x, int gap_width); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_slider (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height, Gtk.Orientation orientation); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "render_activity", since = "3.0")] public static void paint_spinner (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget widget, string detail, uint step, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_tab (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.ShadowType shadow_type, Gtk.Widget? widget, string? detail, int x, int y, int width, int height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (since = "3.0")] public static void paint_vline (Gtk.Style style, Cairo.Context cr, Gtk.StateType state_type, Gtk.Widget? widget, string? detail, int y1_, int y2_, int x); [CCode (cheader_filename = "gtk/gtk.h")] public static bool parse_args (int argc, string[] argv); [CCode (cheader_filename = "gtk/gtk.h")] public static GLib.Quark print_error_quark (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.PageSetup print_run_page_setup_dialog (Gtk.Window parent, Gtk.PageSetup page_setup, Gtk.PrintSettings settings); [CCode (cheader_filename = "gtk/gtk.h")] public static void print_run_page_setup_dialog_async (Gtk.Window parent, Gtk.PageSetup page_setup, Gtk.PrintSettings settings, Gtk.PageSetupDoneFunc done_cb, void* data); [CCode (cheader_filename = "gtk/gtk.h")] public static void propagate_event (Gtk.Widget widget, Gdk.Event event); [CCode (cheader_filename = "gtk/gtk.h")] public static void rc_add_default_file (string filename); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string rc_find_module_in_path (string module_file); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string rc_find_pixmap_in_path (Gtk.Settings settings, GLib.Scanner scanner, string pixmap_file); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string rc_get_default_files (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string rc_get_im_module_file (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string rc_get_im_module_path (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string rc_get_module_dir (); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Style rc_get_style (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Style? rc_get_style_by_paths (Gtk.Settings settings, string? widget_path, string? class_path, GLib.Type type); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string rc_get_theme_dir (); [CCode (cheader_filename = "gtk/gtk.h")] public static void rc_parse (string filename); [CCode (cheader_filename = "gtk/gtk.h")] public static uint rc_parse_color (GLib.Scanner scanner, Gdk.Color color); [CCode (cheader_filename = "gtk/gtk.h")] public static uint rc_parse_color_full (GLib.Scanner scanner, Gtk.RcStyle style, Gdk.Color color); [CCode (cheader_filename = "gtk/gtk.h")] public static uint rc_parse_priority (GLib.Scanner scanner, Gtk.PathPriorityType priority); [CCode (cheader_filename = "gtk/gtk.h")] public static uint rc_parse_state (GLib.Scanner scanner, Gtk.StateType state); [CCode (cheader_filename = "gtk/gtk.h")] public static void rc_parse_string (string rc_string); [CCode (cheader_filename = "gtk/gtk.h")] public static bool rc_reparse_all (); [CCode (cheader_filename = "gtk/gtk.h")] public static bool rc_reparse_all_for_settings (Gtk.Settings settings, bool force_load); [CCode (cheader_filename = "gtk/gtk.h")] public static void rc_reset_styles (Gtk.Settings settings); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned GLib.Scanner rc_scanner_new (); [CCode (cheader_filename = "gtk/gtk.h")] public static void rc_set_default_files (string filenames); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_activity", since = "vala-0.16")] public static void render_activity (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_arrow", since = "vala-0.16")] public static void render_arrow (Gtk.StyleContext context, Cairo.Context cr, double angle, double x, double y, double size); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_background", since = "vala-0.16")] public static void render_background (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_check", since = "vala-0.16")] public static void render_check (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_expander", since = "vala-0.16")] public static void render_expander (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_extension", since = "vala-0.16")] public static void render_extension (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height, Gtk.PositionType gap_side); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_focus", since = "vala-0.16")] public static void render_focus (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_frame", since = "vala-0.16")] public static void render_frame (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_frame_gap", since = "vala-0.16")] public static void render_frame_gap (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height, Gtk.PositionType gap_side, double xy0_gap, double xy1_gap); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_handle", since = "vala-0.16")] public static void render_handle (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_icon", since = "vala-0.16")] public static void render_icon (Gtk.StyleContext context, Cairo.Context cr, Gdk.Pixbuf pixbuf, double x, double y); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_icon_pixbuf", since = "vala-0.16")] public static unowned Gdk.Pixbuf render_icon_pixbuf (Gtk.StyleContext context, Gtk.IconSource source, Gtk.IconSize size); [CCode (cheader_filename = "gtk/gtk.h")] public static void render_icon_surface (Gtk.StyleContext context, Cairo.Context cr, Cairo.Surface surface, double x, double y); [CCode (cheader_filename = "gtk/gtk.h")] public static void render_insertion_cursor (Gtk.StyleContext context, Cairo.Context cr, double x, double y, Pango.Layout layout, int index, Pango.Direction direction); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_layout", since = "vala-0.16")] public static void render_layout (Gtk.StyleContext context, Cairo.Context cr, double x, double y, Pango.Layout layout); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_line", since = "vala-0.16")] public static void render_line (Gtk.StyleContext context, Cairo.Context cr, double x0, double y0, double x1, double y1); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_option", since = "vala-0.16")] public static void render_option (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "StyleContext.render_slider", since = "vala-0.16")] public static void render_slider (Gtk.StyleContext context, Cairo.Context cr, double x, double y, double width, double height, Gtk.Orientation orientation); [CCode (cheader_filename = "gtk/gtk.h")] public static void rgb_to_hsv (double r, double g, double b, double h, double s, double v); [CCode (cheader_filename = "gtk/gtk.h")] public static void selection_add_target (Gtk.Widget widget, Gdk.Atom selection, Gdk.Atom target, uint info); [CCode (cheader_filename = "gtk/gtk.h")] public static void selection_add_targets (Gtk.Widget widget, Gdk.Atom selection, Gtk.TargetEntry[] targets, uint ntargets); [CCode (cheader_filename = "gtk/gtk.h")] public static void selection_clear_targets (Gtk.Widget widget, Gdk.Atom selection); [CCode (cheader_filename = "gtk/gtk.h")] public static bool selection_convert (Gtk.Widget widget, Gdk.Atom selection, Gdk.Atom target, uint32 time_); [CCode (cheader_filename = "gtk/gtk.h")] public static bool selection_owner_set (Gtk.Widget widget, Gdk.Atom selection, uint32 time_); [CCode (cheader_filename = "gtk/gtk.h")] public static bool selection_owner_set_for_display (Gdk.Display display, Gtk.Widget widget, Gdk.Atom selection, uint32 time_); [CCode (cheader_filename = "gtk/gtk.h")] public static void selection_remove_all (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void set_debug_flags (uint flags); [CCode (cheader_filename = "gtk/gtk.h")] public static void show_about_dialog (Gtk.Window? parent, ...); [CCode (cheader_filename = "gtk/gtk.h")] public static bool show_uri (Gdk.Screen? screen, string uri, uint32 timestamp) throws GLib.Error; [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.add", since = "vala-0.12")] public static void stock_add (Gtk.StockItem[] items); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.add_static", since = "vala-0.12")] public static void stock_add_static (Gtk.StockItem[] items); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.list_ids", since = "vala-0.12")] public static GLib.SList stock_list_ids (); [CCode (cheader_filename = "gtk/gtk.h")] [Deprecated (replacement = "Gtk.Stock.set_translate_func", since = "vala-0.22")] public static void stock_set_translate_func (string domain, owned Gtk.TranslateFunc func); [CCode (cheader_filename = "gtk/gtk.h")] public static void target_table_free (Gtk.TargetEntry[] targets); [CCode (cheader_filename = "gtk/gtk.h")] public static Gtk.TargetEntry[] target_table_new_from_list (Gtk.TargetList list); [CCode (cheader_filename = "gtk/gtk.h")] public static bool targets_include_image (Gdk.Atom[] targets, bool writable); [CCode (cheader_filename = "gtk/gtk.h")] public static bool targets_include_rich_text (Gdk.Atom[] targets, Gtk.TextBuffer buffer); [CCode (cheader_filename = "gtk/gtk.h")] public static bool targets_include_text (Gdk.Atom[] targets); [CCode (cheader_filename = "gtk/gtk.h")] public static bool targets_include_uri (Gdk.Atom[] targets); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget test_create_simple_window (string window_title, string dialog_text); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget test_create_widget (GLib.Type widget_type, ...); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget test_display_button_window (string window_title, string dialog_text); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget test_find_label (Gtk.Widget widget, string label_pattern); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget test_find_sibling (Gtk.Widget base_widget, GLib.Type widget_type); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned Gtk.Widget test_find_widget (Gtk.Widget widget, string label_pattern, GLib.Type widget_type); [CCode (cheader_filename = "gtk/gtk.h")] public static void test_init ([CCode (array_length_pos = 0.9)] ref unowned string[] argvp, ...); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned GLib.Type[] test_list_all_types (uint n_types); [CCode (cheader_filename = "gtk/gtk.h")] public static void test_register_all_types (); [CCode (cheader_filename = "gtk/gtk.h")] public static double test_slider_get_value (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void test_slider_set_perc (Gtk.Widget widget, double percentage); [CCode (cheader_filename = "gtk/gtk.h")] public static bool test_spin_button_click (Gtk.SpinButton spinner, uint button, bool upwards); [CCode (cheader_filename = "gtk/gtk.h")] public static unowned string test_text_get (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static void test_text_set (Gtk.Widget widget, string str); [CCode (cheader_filename = "gtk/gtk.h")] public static bool test_widget_click (Gtk.Widget widget, uint button, Gdk.ModifierType modifiers); [CCode (cheader_filename = "gtk/gtk.h")] public static bool test_widget_send_key (Gtk.Widget widget, uint keyval, Gdk.ModifierType modifiers); [CCode (cheader_filename = "gtk/gtk.h")] public static void test_widget_wait_for_draw (Gtk.Widget widget); [CCode (cheader_filename = "gtk/gtk.h")] public static bool tree_get_row_drag_data (Gtk.SelectionData selection_data, out unowned Gtk.TreeModel tree_model, out unowned Gtk.TreePath path); [CCode (cheader_filename = "gtk/gtk.h")] public static bool tree_set_row_drag_data (Gtk.SelectionData selection_data, Gtk.TreeModel tree_model, Gtk.TreePath path); } ================================================ FILE: extravapi/gtksourceview-3.0/gtksourceview-3.0.deps ================================================ atk gdk-3.0 gdk-pixbuf-2.0 gio-2.0 gtk+-3.0 pango cairo ================================================ FILE: extravapi/gtksourceview-3.0/gtksourceview-3.0.vapi ================================================ /* gtksourceview-3.0.vapi generated by vapigen, do not modify. */ [CCode (cprefix = "Gtk", gir_namespace = "GtkSource", gir_version = "3.0", lower_case_cprefix = "gtk_")] namespace Gtk { namespace SourceUtils { [CCode (cheader_filename = "gtksourceview/gtksource.h")] public static string escape_search_text (string text); [CCode (cheader_filename = "gtksourceview/gtksource.h")] public static string unescape_search_text (string text); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_buffer_get_type ()")] [GIR (name = "Buffer")] public class SourceBuffer : Gtk.TextBuffer { [CCode (has_construct_function = false)] public SourceBuffer (Gtk.TextTagTable? table); public bool backward_iter_to_source_mark (Gtk.TextIter iter, string? category); public void begin_not_undoable_action (); public unowned Gtk.SourceMark create_source_mark (string? name, string category, Gtk.TextIter where); public void end_not_undoable_action (); public void ensure_highlight (Gtk.TextIter start, Gtk.TextIter end); public bool forward_iter_to_source_mark (Gtk.TextIter iter, string? category); [CCode (array_length = false, array_null_terminated = true)] public string[] get_context_classes_at_iter (Gtk.TextIter iter); public bool get_highlight_matching_brackets (); public bool get_highlight_syntax (); public unowned Gtk.SourceLanguage get_language (); public int get_max_undo_levels (); public GLib.SList get_source_marks_at_iter (Gtk.TextIter iter, string? category); public GLib.SList get_source_marks_at_line (int line, string? category); public unowned Gtk.SourceStyleScheme get_style_scheme (); public unowned Gtk.SourceUndoManager get_undo_manager (); public bool iter_backward_to_context_class_toggle (Gtk.TextIter iter, string context_class); public bool iter_forward_to_context_class_toggle (Gtk.TextIter iter, string context_class); public bool iter_has_context_class (Gtk.TextIter iter, string context_class); public void remove_source_marks (Gtk.TextIter start, Gtk.TextIter end, string? category); public void set_highlight_matching_brackets (bool highlight); public void set_highlight_syntax (bool highlight); public void set_language (Gtk.SourceLanguage? language); public void set_max_undo_levels (int max_undo_levels); public void set_style_scheme (Gtk.SourceStyleScheme? scheme); public void set_undo_manager (Gtk.SourceUndoManager? manager); [CCode (has_construct_function = false)] public SourceBuffer.with_language (Gtk.SourceLanguage language); [NoAccessorMethod] public bool can_redo { get; } [NoAccessorMethod] public bool can_undo { get; } public bool highlight_matching_brackets { get; set; } public bool highlight_syntax { get; set; } public Gtk.SourceLanguage language { get; set; } public int max_undo_levels { get; set; } public Gtk.SourceStyleScheme style_scheme { get; set; } public Gtk.SourceUndoManager undo_manager { get; set construct; } public virtual signal void bracket_matched (Gtk.TextIter iter, Gtk.SourceBracketMatchType state); public signal void highlight_updated (Gtk.TextIter object, Gtk.TextIter p0); [HasEmitter] public virtual signal void redo (); public signal void source_mark_updated (Gtk.TextMark mark); [HasEmitter] public virtual signal void undo (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_completion_get_type ()")] [GIR (name = "Completion")] public class SourceCompletion : GLib.Object { [CCode (has_construct_function = false)] protected SourceCompletion (); public bool add_provider (Gtk.SourceCompletionProvider provider) throws GLib.Error; public void block_interactive (); public unowned Gtk.SourceCompletionContext create_context (Gtk.TextIter? position); public unowned Gtk.SourceCompletionInfo get_info_window (); public unowned GLib.List get_providers (); public unowned Gtk.SourceView get_view (); [Deprecated (since = "3.8")] public void move_window (Gtk.TextIter iter); [NoWrapper] public virtual bool proposal_activated (Gtk.SourceCompletionProvider provider, Gtk.SourceCompletionProposal proposal); public bool remove_provider (Gtk.SourceCompletionProvider provider) throws GLib.Error; [CCode (cname = "gtk_source_completion_show")] public bool start (GLib.List? providers, Gtk.SourceCompletionContext context); public void unblock_interactive (); [NoAccessorMethod] public uint accelerators { get; set construct; } [NoAccessorMethod] public uint auto_complete_delay { get; set construct; } [NoAccessorMethod] public uint proposal_page_size { get; set construct; } [NoAccessorMethod] public uint provider_page_size { get; set construct; } [NoAccessorMethod] public bool remember_info_visibility { get; set construct; } [NoAccessorMethod] public bool select_on_show { get; set construct; } [NoAccessorMethod] public bool show_headers { get; set construct; } [NoAccessorMethod] public bool show_icons { get; set construct; } public Gtk.SourceView view { get; construct; } public virtual signal void activate_proposal (); [HasEmitter] public virtual signal void hide (); public virtual signal void move_cursor (Gtk.ScrollStep step, int num); public virtual signal void move_page (Gtk.ScrollStep step, int num); public virtual signal void populate_context (Gtk.SourceCompletionContext context); public virtual signal void show (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_completion_context_get_type ()")] [GIR (name = "CompletionContext")] public class SourceCompletionContext : GLib.InitiallyUnowned { [CCode (has_construct_function = false)] protected SourceCompletionContext (); public void add_proposals (Gtk.SourceCompletionProvider provider, GLib.List? proposals, bool finished); public Gtk.SourceCompletionActivation get_activation (); public Gtk.TextIter get_iter (); [NoAccessorMethod] public Gtk.SourceCompletionActivation activation { get; set; } [NoAccessorMethod] public Gtk.SourceCompletion completion { owned get; construct; } [NoAccessorMethod] public Gtk.TextIter iter { get; set; } public virtual signal void cancelled (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_completion_info_get_type ()")] [GIR (name = "CompletionInfo")] public class SourceCompletionInfo : Gtk.Window, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false)] public SourceCompletionInfo (); [Deprecated (since = "3.8")] public unowned Gtk.Widget get_widget (); public void move_to_iter (Gtk.TextView view, Gtk.TextIter? iter); [Deprecated (since = "3.8")] public void set_widget (Gtk.Widget? widget); [Deprecated (since = "3.10")] public virtual signal void before_show (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_completion_item_get_type ()")] [GIR (name = "CompletionItem")] public class SourceCompletionItem : GLib.Object, Gtk.SourceCompletionProposal { [CCode (has_construct_function = false)] public SourceCompletionItem (string label, string text, Gdk.Pixbuf? icon, string? info); [CCode (has_construct_function = false)] [Deprecated (since = "3.10")] public SourceCompletionItem.from_stock (string? label, string text, string stock, string? info); [CCode (has_construct_function = false)] public SourceCompletionItem.with_markup (string markup, string text, Gdk.Pixbuf? icon, string? info); [NoAccessorMethod] public Gdk.Pixbuf icon { owned get; set; } [NoAccessorMethod] public string info { owned get; set; } [NoAccessorMethod] public string label { owned get; set; } [NoAccessorMethod] public string markup { owned get; set; } [NoAccessorMethod] public string text { owned get; set; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_completion_words_get_type ()")] [GIR (name = "CompletionWords")] public class SourceCompletionWords : GLib.Object, Gtk.SourceCompletionProvider { [CCode (has_construct_function = false)] public SourceCompletionWords (string? name, Gdk.Pixbuf? icon); public void register (Gtk.TextBuffer buffer); public void unregister (Gtk.TextBuffer buffer); [NoAccessorMethod] public Gtk.SourceCompletionActivation activation { get; set construct; } [NoAccessorMethod] public Gdk.Pixbuf icon { owned get; set construct; } [NoAccessorMethod] public int interactive_delay { get; set construct; } [NoAccessorMethod] public uint minimum_word_size { get; set construct; } [NoAccessorMethod] public string name { owned get; set construct; } [NoAccessorMethod] public int priority { get; set construct; } [NoAccessorMethod] public uint proposals_batch_size { get; set construct; } [NoAccessorMethod] public uint scan_batch_size { get; set construct; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_gutter_get_type ()")] [GIR (name = "Gutter")] public class SourceGutter : GLib.Object { [CCode (has_construct_function = false)] protected SourceGutter (); public void get_padding (int xpad, int ypad); public unowned Gtk.SourceGutterRenderer get_renderer_at_pos (int x, int y); public unowned Gdk.Window get_window (); public bool insert (Gtk.SourceGutterRenderer renderer, int position); public void queue_draw (); public void remove (Gtk.SourceGutterRenderer renderer); public void reorder (Gtk.SourceGutterRenderer renderer, int position); public void set_padding (int xpad, int ypad); [NoAccessorMethod] public Gtk.SourceView view { owned get; construct; } [NoAccessorMethod] public Gtk.TextWindowType window_type { get; construct; } [NoAccessorMethod] public int xpad { get; set construct; } [NoAccessorMethod] public int ypad { get; set construct; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_gutter_renderer_get_type ()")] [GIR (name = "GutterRenderer")] public abstract class SourceGutterRenderer : GLib.InitiallyUnowned { [CCode (has_construct_function = false)] protected SourceGutterRenderer (); public virtual void begin (Cairo.Context cr, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.TextIter start, Gtk.TextIter end); [NoWrapper] public virtual void change_buffer (Gtk.TextBuffer old_buffer); [NoWrapper] public virtual void change_view (Gtk.TextView old_view); public virtual void draw (Cairo.Context cr, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gtk.TextIter start, Gtk.TextIter end, Gtk.SourceGutterRendererState state); public virtual void end (); public void get_alignment (out float xalign, out float yalign); public Gtk.SourceGutterRendererAlignmentMode get_alignment_mode (); public bool get_background (out Gdk.RGBA color); public void get_padding (out int xpad, out int ypad); public int get_size (); public unowned Gtk.TextView get_view (); public bool get_visible (); public Gtk.TextWindowType get_window_type (); public void set_alignment (float xalign, float yalign); public void set_alignment_mode (Gtk.SourceGutterRendererAlignmentMode mode); public void set_background (Gdk.RGBA? color); public void set_padding (int xpad, int ypad); public void set_size (int size); public void set_visible (bool visible); public Gtk.SourceGutterRendererAlignmentMode alignment_mode { get; set construct; } [NoAccessorMethod] public Gdk.RGBA background_rgba { get; set; } [NoAccessorMethod] public bool background_set { get; set construct; } public int size { get; set construct; } public Gtk.TextView view { get; } public bool visible { get; set construct; } public Gtk.TextWindowType window_type { get; } [NoAccessorMethod] public float xalign { get; set construct; } [NoAccessorMethod] public int xpad { get; set construct; } [NoAccessorMethod] public float yalign { get; set construct; } [NoAccessorMethod] public int ypad { get; set construct; } [HasEmitter] public virtual signal void activate (Gtk.TextIter iter, Cairo.RectangleInt area, Gdk.Event event); [HasEmitter] public virtual signal bool query_activatable (Gtk.TextIter iter, Cairo.RectangleInt area, Gdk.Event event); [HasEmitter] public virtual signal void query_data (Gtk.TextIter start, Gtk.TextIter end, Gtk.SourceGutterRendererState state); [HasEmitter] public virtual signal bool query_tooltip (Gtk.TextIter iter, Cairo.RectangleInt area, int x, int y, Gtk.Tooltip tooltip); [HasEmitter] public virtual signal void queue_draw (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_gutter_renderer_pixbuf_get_type ()")] [GIR (name = "GutterRendererPixbuf")] public class SourceGutterRendererPixbuf : Gtk.SourceGutterRenderer { [CCode (has_construct_function = false, type = "GtkSourceGutterRenderer*")] public SourceGutterRendererPixbuf (); public unowned GLib.Icon get_gicon (); public unowned string get_icon_name (); public unowned Gdk.Pixbuf get_pixbuf (); [Deprecated (since = "3.10")] public unowned string get_stock_id (); public void set_gicon (GLib.Icon? icon); public void set_icon_name (string? icon_name); public void set_pixbuf (Gdk.Pixbuf? pixbuf); [Deprecated (since = "3.10")] public void set_stock_id (string? stock_id); public GLib.Icon gicon { get; set; } public string icon_name { get; set; } public Gdk.Pixbuf pixbuf { get; set; } [Deprecated (since = "3.10")] public string stock_id { get; set; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_gutter_renderer_text_get_type ()")] [GIR (name = "GutterRendererText")] public class SourceGutterRendererText : Gtk.SourceGutterRenderer { [CCode (has_construct_function = false, type = "GtkSourceGutterRenderer*")] public SourceGutterRendererText (); public void measure (string text, int width, int height); public void measure_markup (string markup, int width, int height); public void set_markup (string markup, int length); public void set_text (string text, int length); [NoAccessorMethod] public string markup { owned get; set construct; } [NoAccessorMethod] public string text { owned get; set construct; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_language_get_type ()")] [GIR (name = "Language")] public class SourceLanguage : GLib.Object { [CCode (has_construct_function = false)] protected SourceLanguage (); [CCode (array_length = false, array_null_terminated = true)] public string[] get_globs (); public bool get_hidden (); public unowned string get_id (); public unowned string get_metadata (string name); [CCode (array_length = false, array_null_terminated = true)] public string[] get_mime_types (); public unowned string get_name (); public unowned string get_section (); public unowned string get_style_fallback (string style_id); [CCode (array_length = false, array_null_terminated = true)] public string[] get_style_ids (); public unowned string get_style_name (string style_id); public bool hidden { get; } public string id { get; } public string name { get; } public string section { get; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_language_manager_get_type ()")] [GIR (name = "LanguageManager")] public class SourceLanguageManager : GLib.Object { [CCode (has_construct_function = false)] public SourceLanguageManager (); public static unowned Gtk.SourceLanguageManager get_default (); public unowned Gtk.SourceLanguage get_language (string id); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_language_ids (); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_search_path (); public unowned Gtk.SourceLanguage guess_language (string? filename, string? content_type); public void set_search_path ([CCode (array_length = false, array_null_terminated = true)] string[]? dirs); [CCode (array_length = false, array_null_terminated = true)] public string[] language_ids { get; } [CCode (array_length = false, array_null_terminated = true)] public string[] search_path { get; set; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_mark_get_type ()")] [GIR (name = "Mark")] public class SourceMark : Gtk.TextMark { [CCode (has_construct_function = false)] public SourceMark (string name, string category); public unowned string get_category (); public unowned Gtk.SourceMark next (string? category); public unowned Gtk.SourceMark prev (string category); public string category { get; construct; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_mark_attributes_get_type ()")] [GIR (name = "MarkAttributes")] public class SourceMarkAttributes : GLib.Object { [CCode (has_construct_function = false)] public SourceMarkAttributes (); public bool get_background (out Gdk.RGBA background); public unowned GLib.Icon get_gicon (); public unowned string get_icon_name (); public unowned Gdk.Pixbuf get_pixbuf (); [Deprecated (since = "3.10")] public unowned string get_stock_id (); public string get_tooltip_markup (Gtk.SourceMark mark); public string get_tooltip_text (Gtk.SourceMark mark); public unowned Gdk.Pixbuf render_icon (Gtk.Widget widget, int size); public void set_background (Gdk.RGBA background); public void set_gicon (GLib.Icon gicon); public void set_icon_name (string icon_name); public void set_pixbuf (Gdk.Pixbuf pixbuf); [Deprecated (since = "3.10")] public void set_stock_id (string stock_id); [NoAccessorMethod] public Gdk.RGBA background { get; set; } public GLib.Icon gicon { get; set; } public string icon_name { get; set; } public Gdk.Pixbuf pixbuf { get; set; } [Deprecated (since = "3.10")] public string stock_id { get; set; } public signal string query_tooltip_markup (Gtk.SourceMark mark); public signal string query_tooltip_text (Gtk.SourceMark mark); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_print_compositor_get_type ()")] [GIR (name = "PrintCompositor")] public class SourcePrintCompositor : GLib.Object { [CCode (has_construct_function = false)] public SourcePrintCompositor (Gtk.SourceBuffer buffer); public void draw_page (Gtk.PrintContext context, int page_nr); [CCode (has_construct_function = false)] public SourcePrintCompositor.from_view (Gtk.SourceView view); public string get_body_font_name (); public double get_bottom_margin (Gtk.Unit unit); public unowned Gtk.SourceBuffer get_buffer (); public string get_footer_font_name (); public string get_header_font_name (); public bool get_highlight_syntax (); public double get_left_margin (Gtk.Unit unit); public string get_line_numbers_font_name (); public int get_n_pages (); public double get_pagination_progress (); public bool get_print_footer (); public bool get_print_header (); public uint get_print_line_numbers (); public double get_right_margin (Gtk.Unit unit); public uint get_tab_width (); public double get_top_margin (Gtk.Unit unit); public Gtk.WrapMode get_wrap_mode (); public bool paginate (Gtk.PrintContext context); public void set_body_font_name (string font_name); public void set_bottom_margin (double margin, Gtk.Unit unit); public void set_footer_font_name (string? font_name); public void set_footer_format (bool separator, string? left, string? center, string? right); public void set_header_font_name (string? font_name); public void set_header_format (bool separator, string? left, string? center, string? right); public void set_highlight_syntax (bool highlight); public void set_left_margin (double margin, Gtk.Unit unit); public void set_line_numbers_font_name (string? font_name); public void set_print_footer (bool print); public void set_print_header (bool print); public void set_print_line_numbers (uint interval); public void set_right_margin (double margin, Gtk.Unit unit); public void set_tab_width (uint width); public void set_top_margin (double margin, Gtk.Unit unit); public void set_wrap_mode (Gtk.WrapMode wrap_mode); public string body_font_name { owned get; set; } public Gtk.SourceBuffer buffer { get; construct; } public string footer_font_name { owned get; set; } public string header_font_name { owned get; set; } public bool highlight_syntax { get; set; } public string line_numbers_font_name { owned get; set; } public int n_pages { get; } public bool print_footer { get; set; } public bool print_header { get; set; } public uint print_line_numbers { get; set; } public uint tab_width { get; set; } public Gtk.WrapMode wrap_mode { get; set; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_search_context_get_type ()")] [GIR (name = "SearchContext")] public class SourceSearchContext : GLib.Object { [CCode (has_construct_function = false)] public SourceSearchContext (Gtk.SourceBuffer buffer, Gtk.SourceSearchSettings? settings); public bool backward (Gtk.TextIter iter, out Gtk.TextIter match_start, out Gtk.TextIter match_end); public async bool backward_async (Gtk.TextIter iter, GLib.Cancellable? cancellable, out Gtk.TextIter match_start, out Gtk.TextIter match_end) throws GLib.Error; public bool forward (Gtk.TextIter iter, out Gtk.TextIter match_start, out Gtk.TextIter match_end); public async bool forward_async (Gtk.TextIter iter, GLib.Cancellable? cancellable, out Gtk.TextIter match_start, out Gtk.TextIter match_end) throws GLib.Error; public unowned Gtk.SourceBuffer get_buffer (); public bool get_highlight (); public int get_occurrence_position (Gtk.TextIter match_start, Gtk.TextIter match_end); public int get_occurrences_count (); public GLib.Error? get_regex_error (); public unowned Gtk.SourceSearchSettings get_settings (); public bool replace (Gtk.TextIter match_start, Gtk.TextIter match_end, string replace, int replace_length) throws GLib.Error; public uint replace_all (string replace, int replace_length) throws GLib.Error; public void set_highlight (bool highlight); public void set_settings (Gtk.SourceSearchSettings? settings); public Gtk.SourceBuffer buffer { get; construct; } public bool highlight { get; set construct; } public int occurrences_count { get; } public GLib.Error? regex_error { owned get; } public Gtk.SourceSearchSettings settings { get; set construct; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_search_settings_get_type ()")] [GIR (name = "SearchSettings")] public class SourceSearchSettings : GLib.Object { [CCode (has_construct_function = false)] public SourceSearchSettings (); public bool get_at_word_boundaries (); public bool get_case_sensitive (); public bool get_regex_enabled (); public unowned string get_search_text (); public bool get_wrap_around (); public void set_at_word_boundaries (bool at_word_boundaries); public void set_case_sensitive (bool case_sensitive); public void set_regex_enabled (bool regex_enabled); public void set_search_text (string? search_text); public void set_wrap_around (bool wrap_around); public bool at_word_boundaries { get; set construct; } public bool case_sensitive { get; set construct; } public bool regex_enabled { get; set construct; } public string search_text { get; set construct; } public bool wrap_around { get; set construct; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_style_get_type ()")] [GIR (name = "Style")] public class SourceStyle : GLib.Object { [CCode (has_construct_function = false)] protected SourceStyle (); public Gtk.SourceStyle copy (); [NoAccessorMethod] public string background { owned get; construct; } [NoAccessorMethod] public bool background_set { get; construct; } [NoAccessorMethod] public bool bold { get; construct; } [NoAccessorMethod] public bool bold_set { get; construct; } [NoAccessorMethod] public string foreground { owned get; construct; } [NoAccessorMethod] public bool foreground_set { get; construct; } [NoAccessorMethod] public bool italic { get; construct; } [NoAccessorMethod] public bool italic_set { get; construct; } [NoAccessorMethod] public string line_background { owned get; construct; } [NoAccessorMethod] public bool line_background_set { get; construct; } [NoAccessorMethod] public bool strikethrough { get; construct; } [NoAccessorMethod] public bool strikethrough_set { get; construct; } [NoAccessorMethod] public bool underline { get; construct; } [NoAccessorMethod] public bool underline_set { get; construct; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_style_scheme_get_type ()")] [GIR (name = "StyleScheme")] public class SourceStyleScheme : GLib.Object { [CCode (has_construct_function = false)] protected SourceStyleScheme (); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_authors (); public unowned string get_description (); public unowned string get_filename (); public unowned string get_id (); public unowned string get_name (); public unowned Gtk.SourceStyle get_style (string style_id); public string description { get; } public string filename { get; } public string id { get; construct; } public string name { get; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_style_scheme_manager_get_type ()")] [GIR (name = "StyleSchemeManager")] public class SourceStyleSchemeManager : GLib.Object { [CCode (has_construct_function = false)] public SourceStyleSchemeManager (); public void append_search_path (string path); public void force_rescan (); public static unowned Gtk.SourceStyleSchemeManager get_default (); public unowned Gtk.SourceStyleScheme get_scheme (string scheme_id); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_scheme_ids (); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_search_path (); public void prepend_search_path (string path); public void set_search_path ([CCode (array_length = false, array_null_terminated = true)] string[]? path); [CCode (array_length = false, array_null_terminated = true)] public string[] scheme_ids { get; } [CCode (array_length = false, array_null_terminated = true)] public string[] search_path { get; set; } } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_view_get_type ()")] [GIR (name = "View")] public class SourceView : Gtk.TextView, Atk.Implementor, Gtk.Buildable, Gtk.Scrollable { [CCode (has_construct_function = false, type = "GtkWidget*")] public SourceView (); public bool get_auto_indent (); public unowned Gtk.SourceCompletion get_completion (); public Gtk.SourceDrawSpacesFlags get_draw_spaces (); public unowned Gtk.SourceGutter get_gutter (Gtk.TextWindowType window_type); public bool get_highlight_current_line (); public bool get_indent_on_tab (); public int get_indent_width (); public bool get_insert_spaces_instead_of_tabs (); public unowned Gtk.SourceMarkAttributes get_mark_attributes (string category, int priority); public uint get_right_margin_position (); public bool get_show_line_marks (); public bool get_show_line_numbers (); public bool get_show_right_margin (); public Gtk.SourceSmartHomeEndType get_smart_home_end (); public uint get_tab_width (); public uint get_visual_column (Gtk.TextIter iter); public void set_auto_indent (bool enable); public void set_draw_spaces (Gtk.SourceDrawSpacesFlags flags); public void set_highlight_current_line (bool hl); public void set_indent_on_tab (bool enable); public void set_indent_width (int width); public void set_insert_spaces_instead_of_tabs (bool enable); public void set_mark_attributes (string category, Gtk.SourceMarkAttributes attributes, int priority); public void set_right_margin_position (uint pos); public void set_show_line_marks (bool show); public void set_show_line_numbers (bool show); public void set_show_right_margin (bool show); public void set_smart_home_end (Gtk.SourceSmartHomeEndType smart_he); public void set_tab_width (uint width); [CCode (has_construct_function = false, type = "GtkWidget*")] public SourceView.with_buffer (Gtk.SourceBuffer buffer); public bool auto_indent { get; set; } public Gtk.SourceCompletion completion { get; } public Gtk.SourceDrawSpacesFlags draw_spaces { get; set; } public bool highlight_current_line { get; set; } public bool indent_on_tab { get; set; } public int indent_width { get; set; } public bool insert_spaces_instead_of_tabs { get; set; } public uint right_margin_position { get; set; } public bool show_line_marks { get; set; } public bool show_line_numbers { get; set; } public bool show_right_margin { get; set; } public Gtk.SourceSmartHomeEndType smart_home_end { get; set; } public uint tab_width { get; set; } public virtual signal void line_mark_activated (Gtk.TextIter iter, Gdk.Event event); public virtual signal void move_lines (bool copy, int step); public virtual signal void move_words (int step); public virtual signal void redo (); public virtual signal void show_completion (); public virtual signal void undo (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_completion_proposal_get_type ()")] [GIR (name = "CompletionProposal")] public interface SourceCompletionProposal : GLib.Object { public virtual bool equal (Gtk.SourceCompletionProposal other); public virtual unowned Gdk.Pixbuf get_icon (); public abstract string get_info (); public abstract string get_label (); public abstract string get_markup (); public abstract string get_text (); public virtual uint hash (); [HasEmitter] public virtual signal void changed (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_completion_provider_get_type ()")] [GIR (name = "CompletionProvider")] public interface SourceCompletionProvider : GLib.Object { public virtual bool activate_proposal (Gtk.SourceCompletionProposal proposal, Gtk.TextIter iter); public virtual Gtk.SourceCompletionActivation get_activation (); public virtual unowned Gdk.Pixbuf? get_icon (); public virtual unowned Gtk.Widget? get_info_widget (Gtk.SourceCompletionProposal proposal); public virtual int get_interactive_delay (); public virtual string get_name (); public virtual int get_priority (); public virtual bool get_start_iter (Gtk.SourceCompletionContext context, Gtk.SourceCompletionProposal proposal, Gtk.TextIter iter); public virtual bool match (Gtk.SourceCompletionContext context); public virtual void populate (Gtk.SourceCompletionContext context); public virtual void update_info (Gtk.SourceCompletionProposal proposal, Gtk.SourceCompletionInfo info); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_undo_manager_get_type ()")] [GIR (name = "UndoManager")] public interface SourceUndoManager : GLib.Object { public abstract void begin_not_undoable_action (); public abstract bool can_redo (); public abstract bool can_undo (); public abstract void end_not_undoable_action (); public abstract void redo (); public abstract void undo (); [HasEmitter] public virtual signal void can_redo_changed (); [HasEmitter] public virtual signal void can_undo_changed (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", cprefix = "GTK_SOURCE_BRACKET_MATCH_", type_id = "gtk_source_bracket_match_type_get_type ()")] [GIR (name = "BracketMatchType")] public enum SourceBracketMatchType { NONE, OUT_OF_RANGE, NOT_FOUND, FOUND } [CCode (cheader_filename = "gtksourceview/gtksource.h", cprefix = "GTK_SOURCE_COMPLETION_ACTIVATION_", type_id = "gtk_source_completion_activation_get_type ()")] [Flags] [GIR (name = "CompletionActivation")] public enum SourceCompletionActivation { NONE, INTERACTIVE, USER_REQUESTED } [CCode (cheader_filename = "gtksourceview/gtksource.h", cprefix = "GTK_SOURCE_DRAW_SPACES_", type_id = "gtk_source_draw_spaces_flags_get_type ()")] [Flags] [GIR (name = "DrawSpacesFlags")] public enum SourceDrawSpacesFlags { SPACE, TAB, NEWLINE, NBSP, LEADING, TEXT, TRAILING, ALL } [CCode (cheader_filename = "gtksourceview/gtksource.h", cprefix = "GTK_SOURCE_GUTTER_RENDERER_ALIGNMENT_MODE_", type_id = "gtk_source_gutter_renderer_alignment_mode_get_type ()")] [GIR (name = "GutterRendererAlignmentMode")] public enum SourceGutterRendererAlignmentMode { CELL, FIRST, LAST } [CCode (cheader_filename = "gtksourceview/gtksource.h", cprefix = "GTK_SOURCE_GUTTER_RENDERER_STATE_", type_id = "gtk_source_gutter_renderer_state_get_type ()")] [Flags] [GIR (name = "GutterRendererState")] public enum SourceGutterRendererState { NORMAL, CURSOR, PRELIT, SELECTED } [CCode (cheader_filename = "gtksourceview/gtksource.h", cprefix = "GTK_SOURCE_SMART_HOME_END_", type_id = "gtk_source_smart_home_end_type_get_type ()")] [GIR (name = "SmartHomeEndType")] public enum SourceSmartHomeEndType { DISABLED, BEFORE, AFTER, ALWAYS } [CCode (cheader_filename = "gtksourceview/gtksource.h", cprefix = "GTK_SOURCE_VIEW_GUTTER_POSITION_", type_id = "gtk_source_view_gutter_position_get_type ()")] [GIR (name = "ViewGutterPosition")] public enum SourceViewGutterPosition { LINES, MARKS } [CCode (cheader_filename = "gtksourceview/gtksource.h", cprefix = "GTK_SOURCE_COMPLETION_ERROR_")] [GIR (name = "CompletionError")] public errordomain SourceCompletionError { ALREADY_BOUND, NOT_BOUND; [CCode (cname = "gtk_source_completion_error_quark")] public static GLib.Quark uark (); } } ================================================ FILE: extravapi/webkit2gtk-3.0/webkit2gtk-3.0.deps ================================================ gtk+-3.0 libsoup-2.4 ================================================ FILE: extravapi/webkit2gtk-3.0/webkit2gtk-3.0.vapi ================================================ /* webkit2gtk-3.0.vapi generated by vapigen, do not modify. */ [CCode (cprefix = "WebKit", gir_namespace = "WebKit2", gir_version = "3.0", lower_case_cprefix = "webkit_")] namespace WebKit { [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_authentication_request_get_type ()")] public class AuthenticationRequest : GLib.Object { [CCode (has_construct_function = false)] protected AuthenticationRequest (); public void authenticate (WebKit.Credential? credential); public bool can_save_credentials (); public void cancel (); public unowned string get_host (); public uint get_port (); public WebKit.Credential get_proposed_credential (); public unowned string get_realm (); public WebKit.AuthenticationScheme get_scheme (); public bool is_for_proxy (); public bool is_retry (); public signal void cancelled (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_back_forward_list_get_type ()")] public class BackForwardList : GLib.Object { [CCode (has_construct_function = false)] protected BackForwardList (); public unowned WebKit.BackForwardListItem get_back_item (); public GLib.List get_back_list (); public GLib.List get_back_list_with_limit (uint limit); public unowned WebKit.BackForwardListItem get_current_item (); public unowned WebKit.BackForwardListItem get_forward_item (); public GLib.List get_forward_list (); public GLib.List get_forward_list_with_limit (uint limit); public uint get_length (); public unowned WebKit.BackForwardListItem get_nth_item (int index); public signal void changed (WebKit.BackForwardListItem? item_added, void* items_removed); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_back_forward_list_item_get_type ()")] public class BackForwardListItem : GLib.InitiallyUnowned { [CCode (has_construct_function = false)] protected BackForwardListItem (); public unowned string get_original_uri (); public unowned string get_title (); public unowned string get_uri (); } [CCode (cheader_filename = "webkit2/webkit2.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "webkit_certificate_info_get_type ()")] [Compact] public class CertificateInfo { public WebKit.CertificateInfo copy (); public void free (); public unowned GLib.TlsCertificate get_tls_certificate (); public GLib.TlsCertificateFlags get_tls_errors (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_context_menu_get_type ()")] public class ContextMenu : GLib.Object { [CCode (has_construct_function = false)] public ContextMenu (); public void append (WebKit.ContextMenuItem item); public unowned WebKit.ContextMenuItem first (); public unowned WebKit.ContextMenuItem get_item_at_position (uint position); public unowned GLib.List get_items (); public uint get_n_items (); public void insert (WebKit.ContextMenuItem item, int position); public unowned WebKit.ContextMenuItem last (); public void move_item (WebKit.ContextMenuItem item, int position); public void prepend (WebKit.ContextMenuItem item); public void remove (WebKit.ContextMenuItem item); public void remove_all (); [CCode (has_construct_function = false)] public ContextMenu.with_items (GLib.List items); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_context_menu_item_get_type ()")] public class ContextMenuItem : GLib.InitiallyUnowned { [CCode (has_construct_function = false)] public ContextMenuItem (Gtk.Action action); [CCode (has_construct_function = false)] public ContextMenuItem.from_stock_action (WebKit.ContextMenuAction action); [CCode (has_construct_function = false)] public ContextMenuItem.from_stock_action_with_label (WebKit.ContextMenuAction action, string label); public unowned Gtk.Action get_action (); public WebKit.ContextMenuAction get_stock_action (); public unowned WebKit.ContextMenu get_submenu (); public bool is_separator (); [CCode (has_construct_function = false)] public ContextMenuItem.separator (); public void set_submenu (WebKit.ContextMenu? submenu); [CCode (has_construct_function = false)] public ContextMenuItem.with_submenu (string label, WebKit.ContextMenu submenu); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_cookie_manager_get_type ()")] public class CookieManager : GLib.Object { [CCode (has_construct_function = false)] protected CookieManager (); public void delete_all_cookies (); public void delete_cookies_for_domain (string domain); public async WebKit.CookieAcceptPolicy get_accept_policy (GLib.Cancellable? cancellable) throws GLib.Error; [CCode (array_length = false, array_null_terminated = true)] public async string[] get_domains_with_cookies (GLib.Cancellable? cancellable) throws GLib.Error; public void set_accept_policy (WebKit.CookieAcceptPolicy policy); public void set_persistent_storage (string filename, WebKit.CookiePersistentStorage storage); public signal void changed (); } [CCode (cheader_filename = "webkit2/webkit2.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "webkit_credential_get_type ()")] [Compact] public class Credential { [CCode (has_construct_function = false)] public Credential (string username, string password, WebKit.CredentialPersistence persistence); public WebKit.Credential copy (); public void free (); public unowned string get_password (); public WebKit.CredentialPersistence get_persistence (); public unowned string get_username (); public bool has_password (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_download_get_type ()")] public class Download : GLib.Object { [CCode (has_construct_function = false)] protected Download (); public void cancel (); public unowned string get_destination (); public double get_elapsed_time (); public double get_estimated_progress (); public uint64 get_received_data_length (); public unowned WebKit.URIRequest get_request (); public unowned WebKit.URIResponse get_response (); public unowned WebKit.WebView get_web_view (); public void set_destination (string uri); public string destination { get; } public double estimated_progress { get; } public WebKit.URIResponse response { get; } public signal void created_destination (string destination); public virtual signal bool decide_destination (string suggested_filename); public signal void failed (void* error); public signal void finished (); public signal void received_data (uint64 data_length); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_favicon_database_get_type ()")] public class FaviconDatabase : GLib.Object { [CCode (has_construct_function = false)] protected FaviconDatabase (); public void clear (); public async Cairo.Surface get_favicon (string page_uri, GLib.Cancellable? cancellable) throws GLib.Error; public string get_favicon_uri (string page_uri); public signal void favicon_changed (string page_uri, string favicon_uri); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_file_chooser_request_get_type ()")] public class FileChooserRequest : GLib.Object { [CCode (has_construct_function = false)] protected FileChooserRequest (); public void cancel (); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_mime_types (); public unowned Gtk.FileFilter get_mime_types_filter (); public bool get_select_multiple (); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_selected_files (); public void select_files ([CCode (array_length = false, array_null_terminated = true)] string[] files); [NoAccessorMethod] public Gtk.FileFilter filter { owned get; } [CCode (array_length = false, array_null_terminated = true)] public string[] mime_types { get; } public bool select_multiple { get; } [CCode (array_length = false, array_null_terminated = true)] public string[] selected_files { get; } } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_find_controller_get_type ()")] public class FindController : GLib.Object { [CCode (has_construct_function = false)] protected FindController (); public void count_matches (string search_text, uint32 find_options, uint max_match_count); public uint get_max_match_count (); public uint32 get_options (); public unowned string get_search_text (); public unowned WebKit.WebView get_web_view (); public void search (string search_text, uint32 find_options, uint max_match_count); public void search_finish (); public void search_next (); public void search_previous (); public uint max_match_count { get; } public WebKit.FindOptions options { get; } [NoAccessorMethod] public string text { owned get; } public WebKit.WebView web_view { get; construct; } public signal void counted_matches (uint match_count); public signal void failed_to_find_text (); public signal void found_text (uint match_count); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_form_submission_request_get_type ()")] public class FormSubmissionRequest : GLib.Object { [CCode (has_construct_function = false)] protected FormSubmissionRequest (); public unowned GLib.HashTable get_text_fields (); public void submit (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_geolocation_permission_request_get_type ()")] public class GeolocationPermissionRequest : GLib.Object, WebKit.PermissionRequest { [CCode (has_construct_function = false)] protected GeolocationPermissionRequest (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_hit_test_result_get_type ()")] public class HitTestResult : GLib.Object { [CCode (has_construct_function = false)] protected HitTestResult (); public bool context_is_editable (); public bool context_is_image (); public bool context_is_link (); public bool context_is_media (); public bool context_is_scrollbar (); public uint get_context (); public unowned string get_image_uri (); public unowned string get_link_label (); public unowned string get_link_title (); public unowned string get_link_uri (); public unowned string get_media_uri (); public uint context { get; construct; } public string image_uri { get; construct; } public string link_label { get; construct; } public string link_title { get; construct; } public string link_uri { get; construct; } public string media_uri { get; construct; } } [CCode (cheader_filename = "webkit2/webkit2.h", ref_function = "webkit_javascript_result_ref", type_id = "webkit_javascript_result_get_type ()", unref_function = "webkit_javascript_result_unref")] [Compact] public class JavascriptResult { public WebKit.JavascriptResult @ref (); public void unref (); } [CCode (cheader_filename = "webkit2/webkit2.h", ref_function = "webkit_mime_info_ref", type_id = "webkit_mime_info_get_type ()", unref_function = "webkit_mime_info_unref")] [Compact] public class MimeInfo { public unowned string get_description (); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_extensions (); public unowned string get_mime_type (); public WebKit.MimeInfo @ref (); public void unref (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_navigation_policy_decision_get_type ()")] public class NavigationPolicyDecision : WebKit.PolicyDecision { [CCode (has_construct_function = false)] protected NavigationPolicyDecision (); public unowned string get_frame_name (); public uint get_modifiers (); public uint get_mouse_button (); public WebKit.NavigationType get_navigation_type (); public unowned WebKit.URIRequest get_request (); public string frame_name { get; } public uint modifiers { get; } public uint mouse_button { get; } public WebKit.NavigationType navigation_type { get; } public WebKit.URIRequest request { get; } } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_plugin_get_type ()")] public class Plugin : GLib.Object { [CCode (has_construct_function = false)] protected Plugin (); public unowned string get_description (); public unowned GLib.List get_mime_info_list (); public unowned string get_name (); public unowned string get_path (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_policy_decision_get_type ()")] public abstract class PolicyDecision : GLib.Object { [CCode (has_construct_function = false)] protected PolicyDecision (); public void download (); public void ignore (); public void use (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_print_operation_get_type ()")] public class PrintOperation : GLib.Object { [CCode (has_construct_function = false)] public PrintOperation (WebKit.WebView web_view); public unowned Gtk.PageSetup get_page_setup (); public unowned Gtk.PrintSettings get_print_settings (); public void print (); public WebKit.PrintOperationResponse run_dialog (Gtk.Window? parent); public void set_page_setup (Gtk.PageSetup page_setup); public void set_print_settings (Gtk.PrintSettings print_settings); public Gtk.PageSetup page_setup { get; set; } public Gtk.PrintSettings print_settings { get; set; } [NoAccessorMethod] public WebKit.WebView web_view { owned get; construct; } public signal void failed (void* error); public signal void finished (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_response_policy_decision_get_type ()")] public class ResponsePolicyDecision : WebKit.PolicyDecision { [CCode (has_construct_function = false)] protected ResponsePolicyDecision (); public unowned WebKit.URIRequest get_request (); public unowned WebKit.URIResponse get_response (); public bool is_mime_type_supported (); public WebKit.URIRequest request { get; } public WebKit.URIResponse response { get; } } [CCode (cheader_filename = "webkit2/webkit2.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "webkit_script_dialog_get_type ()")] [Compact] public class ScriptDialog { public void confirm_set_confirmed (bool confirmed); public WebKit.ScriptDialogType get_dialog_type (); public unowned string get_message (); public unowned string prompt_get_default_text (); public void prompt_set_text (string text); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_security_manager_get_type ()")] public class SecurityManager : GLib.Object { [CCode (has_construct_function = false)] protected SecurityManager (); public void register_uri_scheme_as_cors_enabled (string scheme); public void register_uri_scheme_as_display_isolated (string scheme); public void register_uri_scheme_as_empty_document (string scheme); public void register_uri_scheme_as_local (string scheme); public void register_uri_scheme_as_no_access (string scheme); public void register_uri_scheme_as_secure (string scheme); public bool uri_scheme_is_cors_enabled (string scheme); public bool uri_scheme_is_display_isolated (string scheme); public bool uri_scheme_is_empty_document (string scheme); public bool uri_scheme_is_local (string scheme); public bool uri_scheme_is_no_access (string scheme); public bool uri_scheme_is_secure (string scheme); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_settings_get_type ()")] public class Settings : GLib.Object { [CCode (has_construct_function = false)] public Settings (); public bool get_allow_modal_dialogs (); public bool get_auto_load_images (); public unowned string get_cursive_font_family (); public unowned string get_default_charset (); public unowned string get_default_font_family (); public uint32 get_default_font_size (); public uint32 get_default_monospace_font_size (); public bool get_draw_compositing_indicators (); public bool get_enable_accelerated_2d_canvas (); public bool get_enable_caret_browsing (); public bool get_enable_developer_extras (); public bool get_enable_dns_prefetching (); public bool get_enable_frame_flattening (); public bool get_enable_fullscreen (); public bool get_enable_html5_database (); public bool get_enable_html5_local_storage (); public bool get_enable_hyperlink_auditing (); public bool get_enable_java (); public bool get_enable_javascript (); public bool get_enable_media_stream (); public bool get_enable_mediasource (); public bool get_enable_offline_web_application_cache (); public bool get_enable_page_cache (); public bool get_enable_plugins (); public bool get_enable_private_browsing (); public bool get_enable_resizable_text_areas (); public bool get_enable_site_specific_quirks (); public bool get_enable_smooth_scrolling (); public bool get_enable_spatial_navigation (); public bool get_enable_tabs_to_links (); public bool get_enable_webaudio (); public bool get_enable_webgl (); public bool get_enable_write_console_messages_to_stdout (); public bool get_enable_xss_auditor (); public unowned string get_fantasy_font_family (); public bool get_javascript_can_access_clipboard (); public bool get_javascript_can_open_windows_automatically (); public bool get_load_icons_ignoring_image_load_setting (); public bool get_media_playback_allows_inline (); public bool get_media_playback_requires_user_gesture (); public uint32 get_minimum_font_size (); public unowned string get_monospace_font_family (); public unowned string get_pictograph_font_family (); public bool get_print_backgrounds (); public unowned string get_sans_serif_font_family (); public unowned string get_serif_font_family (); public unowned string get_user_agent (); public bool get_zoom_text_only (); public void set_allow_modal_dialogs (bool allowed); public void set_auto_load_images (bool enabled); public void set_cursive_font_family (string cursive_font_family); public void set_default_charset (string default_charset); public void set_default_font_family (string default_font_family); public void set_default_font_size (uint32 font_size); public void set_default_monospace_font_size (uint32 font_size); public void set_draw_compositing_indicators (bool enabled); public void set_enable_accelerated_2d_canvas (bool enabled); public void set_enable_caret_browsing (bool enabled); public void set_enable_developer_extras (bool enabled); public void set_enable_dns_prefetching (bool enabled); public void set_enable_frame_flattening (bool enabled); public void set_enable_fullscreen (bool enabled); public void set_enable_html5_database (bool enabled); public void set_enable_html5_local_storage (bool enabled); public void set_enable_hyperlink_auditing (bool enabled); public void set_enable_java (bool enabled); public void set_enable_javascript (bool enabled); public void set_enable_media_stream (bool enabled); public void set_enable_mediasource (bool enabled); public void set_enable_offline_web_application_cache (bool enabled); public void set_enable_page_cache (bool enabled); public void set_enable_plugins (bool enabled); public void set_enable_private_browsing (bool enabled); public void set_enable_resizable_text_areas (bool enabled); public void set_enable_site_specific_quirks (bool enabled); public void set_enable_smooth_scrolling (bool enabled); public void set_enable_spatial_navigation (bool enabled); public void set_enable_tabs_to_links (bool enabled); public void set_enable_webaudio (bool enabled); public void set_enable_webgl (bool enabled); public void set_enable_write_console_messages_to_stdout (bool enabled); public void set_enable_xss_auditor (bool enabled); public void set_fantasy_font_family (string fantasy_font_family); public void set_javascript_can_access_clipboard (bool enabled); public void set_javascript_can_open_windows_automatically (bool enabled); public void set_load_icons_ignoring_image_load_setting (bool enabled); public void set_media_playback_allows_inline (bool enabled); public void set_media_playback_requires_user_gesture (bool enabled); public void set_minimum_font_size (uint32 font_size); public void set_monospace_font_family (string monospace_font_family); public void set_pictograph_font_family (string pictograph_font_family); public void set_print_backgrounds (bool print_backgrounds); public void set_sans_serif_font_family (string sans_serif_font_family); public void set_serif_font_family (string serif_font_family); public void set_user_agent (string? user_agent); public void set_user_agent_with_application_details (string? application_name, string? application_version); public void set_zoom_text_only (bool zoom_text_only); public bool allow_modal_dialogs { get; set construct; } public bool auto_load_images { get; set construct; } public string cursive_font_family { get; set construct; } public string default_charset { get; set construct; } public string default_font_family { get; set construct; } public uint default_font_size { get; set construct; } public uint default_monospace_font_size { get; set construct; } public bool draw_compositing_indicators { get; set construct; } public bool enable_accelerated_2d_canvas { get; set construct; } public bool enable_caret_browsing { get; set construct; } public bool enable_developer_extras { get; set construct; } public bool enable_dns_prefetching { get; set construct; } public bool enable_frame_flattening { get; set construct; } public bool enable_fullscreen { get; set construct; } public bool enable_html5_database { get; set construct; } public bool enable_html5_local_storage { get; set construct; } public bool enable_hyperlink_auditing { get; set construct; } public bool enable_java { get; set construct; } public bool enable_javascript { get; set construct; } public bool enable_media_stream { get; set construct; } public bool enable_mediasource { get; set construct; } public bool enable_offline_web_application_cache { get; set construct; } public bool enable_page_cache { get; set construct; } public bool enable_plugins { get; set construct; } public bool enable_private_browsing { get; set construct; } public bool enable_resizable_text_areas { get; set construct; } public bool enable_site_specific_quirks { get; set construct; } public bool enable_smooth_scrolling { get; set construct; } public bool enable_spatial_navigation { get; set construct; } public bool enable_tabs_to_links { get; set construct; } public bool enable_webaudio { get; set construct; } public bool enable_webgl { get; set construct; } public bool enable_write_console_messages_to_stdout { get; set construct; } public bool enable_xss_auditor { get; set construct; } public string fantasy_font_family { get; set construct; } public bool javascript_can_access_clipboard { get; set construct; } public bool javascript_can_open_windows_automatically { get; set construct; } public bool load_icons_ignoring_image_load_setting { get; set construct; } public bool media_playback_allows_inline { get; set construct; } public bool media_playback_requires_user_gesture { get; set construct; } public uint minimum_font_size { get; set construct; } public string monospace_font_family { get; set construct; } public string pictograph_font_family { get; set construct; } public bool print_backgrounds { get; set construct; } public string sans_serif_font_family { get; set construct; } public string serif_font_family { get; set construct; } public string user_agent { get; set construct; } public bool zoom_text_only { get; set construct; } } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_uri_request_get_type ()")] public class URIRequest : GLib.Object { [CCode (has_construct_function = false)] public URIRequest (string uri); public unowned Soup.MessageHeaders get_http_headers (); public unowned string get_uri (); public void set_uri (string uri); public string uri { get; set construct; } } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_uri_response_get_type ()")] public class URIResponse : GLib.Object { [CCode (has_construct_function = false)] protected URIResponse (); public uint64 get_content_length (); public unowned string get_mime_type (); public uint get_status_code (); public unowned string get_suggested_filename (); public unowned string get_uri (); public uint64 content_length { get; } public string mime_type { get; } public uint status_code { get; } public string suggested_filename { get; } public string uri { get; } } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_uri_scheme_request_get_type ()")] public class URISchemeRequest : GLib.Object { [CCode (has_construct_function = false)] protected URISchemeRequest (); public void finish (GLib.InputStream stream, int64 stream_length, string? mime_type); public void finish_error (GLib.Error error); public unowned string get_path (); public unowned string get_scheme (); public unowned string get_uri (); public unowned WebKit.WebView get_web_view (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_web_context_get_type ()")] public class WebContext : GLib.Object { [CCode (has_construct_function = false)] protected WebContext (); public void allow_tls_certificate_for_host (WebKit.CertificateInfo info, string host); public void clear_cache (); public WebKit.Download download_uri (string uri); public WebKit.CacheModel get_cache_model (); public unowned WebKit.CookieManager get_cookie_manager (); public static unowned WebKit.WebContext get_default (); public unowned WebKit.FaviconDatabase get_favicon_database (); public unowned string get_favicon_database_directory (); public async GLib.List get_plugins (GLib.Cancellable? cancellable) throws GLib.Error; public WebKit.ProcessModel get_process_model (); public unowned WebKit.SecurityManager get_security_manager (); public bool get_spell_checking_enabled (); [CCode (array_length = false, array_null_terminated = true)] public unowned string[] get_spell_checking_languages (); public WebKit.TLSErrorsPolicy get_tls_errors_policy (); public void prefetch_dns (string hostname); public void register_uri_scheme (string scheme, owned WebKit.URISchemeRequestCallback callback); public void set_additional_plugins_directory (string directory); public void set_cache_model (WebKit.CacheModel cache_model); public void set_disk_cache_directory (string directory); public void set_favicon_database_directory (string? path); public void set_preferred_languages ([CCode (array_length = false, array_null_terminated = true)] string[]? languages); public void set_process_model (WebKit.ProcessModel process_model); public void set_spell_checking_enabled (bool enabled); public void set_spell_checking_languages ([CCode (array_length = false, array_null_terminated = true)] string[] languages); public void set_tls_errors_policy (WebKit.TLSErrorsPolicy policy); public void set_web_extensions_directory (string directory); public void set_web_extensions_initialization_user_data (GLib.Variant user_data); public signal void download_started (WebKit.Download download); public signal void initialize_web_extensions (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_web_inspector_get_type ()")] public class WebInspector : GLib.Object { [CCode (has_construct_function = false)] protected WebInspector (); public void close (); public uint get_attached_height (); public unowned string get_inspected_uri (); public unowned WebKit.WebViewBase get_web_view (); public bool is_attached (); public void show (); public uint attached_height { get; } public string inspected_uri { get; } [HasEmitter] public signal bool attach (); public signal bool bring_to_front (); public signal void closed (); [HasEmitter] public signal bool detach (); public signal bool open_window (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_web_resource_get_type ()")] public class WebResource : GLib.Object { [CCode (has_construct_function = false)] protected WebResource (); public async uint8 get_data (GLib.Cancellable? cancellable, out size_t length) throws GLib.Error; public unowned WebKit.URIResponse get_response (); public unowned string get_uri (); public WebKit.URIResponse response { get; } public string uri { get; } public signal void failed (void* error); public signal void finished (); public signal void received_data (uint64 data_length); public signal void sent_request (WebKit.URIRequest request, WebKit.URIResponse redirected_response); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_web_view_get_type ()")] public class WebView : WebKit.WebViewBase, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false, type = "GtkWidget*")] public WebView (); public async bool can_execute_editing_command (string command, GLib.Cancellable? cancellable) throws GLib.Error; public bool can_go_back (); public bool can_go_forward (); public bool can_show_mime_type (string mime_type); public WebKit.Download download_uri (string uri); public void execute_editing_command (string command); public unowned WebKit.BackForwardList get_back_forward_list (); public unowned WebKit.WebContext get_context (); public unowned string get_custom_charset (); public double get_estimated_load_progress (); public unowned Cairo.Surface get_favicon (); public unowned WebKit.FindController get_find_controller (); public unowned WebKit.WebViewGroup get_group (); public unowned WebKit.WebInspector get_inspector (); public unowned WebKit.WebResource get_main_resource (); public uint64 get_page_id (); public unowned WebKit.Settings get_settings (); public async Cairo.Surface get_snapshot (WebKit.SnapshotRegion region, WebKit.SnapshotOptions options, GLib.Cancellable? cancellable) throws GLib.Error; public unowned string get_title (); public bool get_tls_info (out unowned GLib.TlsCertificate certificate, out GLib.TlsCertificateFlags errors); public unowned string get_uri (); public WebKit.ViewMode get_view_mode (); public unowned WebKit.WindowProperties get_window_properties (); public double get_zoom_level (); public void go_back (); public void go_forward (); public void go_to_back_forward_list_item (WebKit.BackForwardListItem list_item); public void load_alternate_html (string content, string content_uri, string? base_uri); public void load_html (string content, string? base_uri); public void load_plain_text (string plain_text); public void load_request (WebKit.URIRequest request); public void load_uri (string uri); public Gtk.Widget new_with_related_view (); public void reload (); public void reload_bypass_cache (); public async WebKit.JavascriptResult run_javascript (string script, GLib.Cancellable? cancellable) throws GLib.Error; public async WebKit.JavascriptResult run_javascript_from_gresource (string resource, GLib.Cancellable? cancellable) throws GLib.Error; public async GLib.InputStream save (WebKit.SaveMode save_mode, GLib.Cancellable? cancellable) throws GLib.Error; public async bool save_to_file (GLib.File file, WebKit.SaveMode save_mode, GLib.Cancellable? cancellable) throws GLib.Error; public void set_custom_charset (string? charset); public void set_settings (WebKit.Settings settings); public void set_view_mode (WebKit.ViewMode view_mode); public void set_zoom_level (double zoom_level); public void stop_loading (); [CCode (has_construct_function = false, type = "GtkWidget*")] public WebView.with_context (WebKit.WebContext context); [CCode (has_construct_function = false, type = "GtkWidget*")] public WebView.with_group (WebKit.WebViewGroup group); public double estimated_load_progress { get; } public void* favicon { get; } public WebKit.WebViewGroup group { get; construct; } [NoAccessorMethod] public bool is_loading { get; } public WebKit.WebView related_view { construct; } public string title { get; } public string uri { get; } public WebKit.ViewMode view_mode { get; set; } [NoAccessorMethod] public WebKit.WebContext web_context { owned get; construct; } public double zoom_level { get; set; } public virtual signal bool authenticate (WebKit.AuthenticationRequest request); public virtual signal void close (); public virtual signal bool context_menu (WebKit.ContextMenu context_menu, Gdk.Event event, WebKit.HitTestResult hit_test_result); public virtual signal void context_menu_dismissed (); public signal Gtk.Widget create (); public virtual signal bool decide_policy (WebKit.PolicyDecision decision, WebKit.PolicyDecisionType type); public virtual signal bool enter_fullscreen (); public virtual signal void insecure_content_detected (WebKit.InsecureContentEvent event); public virtual signal bool leave_fullscreen (); public virtual signal void load_changed (WebKit.LoadEvent load_event); public virtual signal bool load_failed (WebKit.LoadEvent load_event, string failing_uri, void* error); public virtual signal bool load_failed_with_tls_errors (WebKit.CertificateInfo info, string host); public virtual signal void mouse_target_changed (WebKit.HitTestResult hit_test_result, uint modifiers); public virtual signal bool permission_request (WebKit.PermissionRequest permission_request); public virtual signal bool print (WebKit.PrintOperation print_operation); public virtual signal void ready_to_show (); public virtual signal void resource_load_started (WebKit.WebResource resource, WebKit.URIRequest request); public virtual signal void run_as_modal (); public virtual signal bool run_file_chooser (WebKit.FileChooserRequest request); public virtual signal bool script_dialog (WebKit.ScriptDialog dialog); public virtual signal void submit_form (WebKit.FormSubmissionRequest request); public virtual signal bool web_process_crashed (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_web_view_base_get_type ()")] public class WebViewBase : Gtk.Container, Atk.Implementor, Gtk.Buildable { [CCode (has_construct_function = false)] protected WebViewBase (); } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_web_view_group_get_type ()")] public class WebViewGroup : GLib.Object { [CCode (has_construct_function = false)] public WebViewGroup (string? name); public void add_user_style_sheet (string source, string? base_uri, [CCode (array_length = false, array_null_terminated = true)] string[]? whitelist, [CCode (array_length = false, array_null_terminated = true)] string[]? blacklist, WebKit.InjectedContentFrames injected_frames); public unowned string get_name (); public unowned WebKit.Settings get_settings (); public void remove_all_user_style_sheets (); public void set_settings (WebKit.Settings settings); public WebKit.Settings settings { get; set; } } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_window_properties_get_type ()")] public class WindowProperties : GLib.Object { [CCode (has_construct_function = false)] protected WindowProperties (); public bool get_fullscreen (); public Gdk.Rectangle get_geometry (); public bool get_locationbar_visible (); public bool get_menubar_visible (); public bool get_resizable (); public bool get_scrollbars_visible (); public bool get_statusbar_visible (); public bool get_toolbar_visible (); public bool fullscreen { get; construct; } public Cairo.RectangleInt geometry { get; construct; } public bool locationbar_visible { get; construct; } public bool menubar_visible { get; construct; } public bool resizable { get; construct; } public bool scrollbars_visible { get; construct; } public bool statusbar_visible { get; construct; } public bool toolbar_visible { get; construct; } } [CCode (cheader_filename = "webkit2/webkit2.h", type_id = "webkit_permission_request_get_type ()")] public interface PermissionRequest : GLib.Object { public abstract void allow (); public abstract void deny (); } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_AUTHENTICATION_SCHEME_", type_id = "webkit_authentication_scheme_get_type ()")] public enum AuthenticationScheme { DEFAULT, HTTP_BASIC, HTTP_DIGEST, HTML_FORM, NTLM, NEGOTIATE, CLIENT_CERTIFICATE_REQUESTED, SERVER_TRUST_EVALUATION_REQUESTED, UNKNOWN } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_CACHE_MODEL_", type_id = "webkit_cache_model_get_type ()")] public enum CacheModel { DOCUMENT_VIEWER, WEB_BROWSER, DOCUMENT_BROWSER } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_CONTEXT_MENU_ACTION_", type_id = "webkit_context_menu_action_get_type ()")] public enum ContextMenuAction { NO_ACTION, OPEN_LINK, OPEN_LINK_IN_NEW_WINDOW, DOWNLOAD_LINK_TO_DISK, COPY_LINK_TO_CLIPBOARD, OPEN_IMAGE_IN_NEW_WINDOW, DOWNLOAD_IMAGE_TO_DISK, COPY_IMAGE_TO_CLIPBOARD, COPY_IMAGE_URL_TO_CLIPBOARD, OPEN_FRAME_IN_NEW_WINDOW, GO_BACK, GO_FORWARD, STOP, RELOAD, COPY, CUT, PASTE, DELETE, SELECT_ALL, INPUT_METHODS, UNICODE, SPELLING_GUESS, NO_GUESSES_FOUND, IGNORE_SPELLING, LEARN_SPELLING, IGNORE_GRAMMAR, FONT_MENU, BOLD, ITALIC, UNDERLINE, OUTLINE, INSPECT_ELEMENT, OPEN_VIDEO_IN_NEW_WINDOW, OPEN_AUDIO_IN_NEW_WINDOW, COPY_VIDEO_LINK_TO_CLIPBOARD, COPY_AUDIO_LINK_TO_CLIPBOARD, TOGGLE_MEDIA_CONTROLS, TOGGLE_MEDIA_LOOP, ENTER_VIDEO_FULLSCREEN, MEDIA_PLAY, MEDIA_PAUSE, MEDIA_MUTE, DOWNLOAD_VIDEO_TO_DISK, DOWNLOAD_AUDIO_TO_DISK, CUSTOM } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_COOKIE_POLICY_ACCEPT_", type_id = "webkit_cookie_accept_policy_get_type ()")] public enum CookieAcceptPolicy { ALWAYS, NEVER, NO_THIRD_PARTY } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_COOKIE_PERSISTENT_STORAGE_", type_id = "webkit_cookie_persistent_storage_get_type ()")] public enum CookiePersistentStorage { TEXT, SQLITE } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_CREDENTIAL_PERSISTENCE_", type_id = "webkit_credential_persistence_get_type ()")] public enum CredentialPersistence { NONE, FOR_SESSION, PERMANENT } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_FIND_OPTIONS_", type_id = "webkit_find_options_get_type ()")] [Flags] public enum FindOptions { NONE, CASE_INSENSITIVE, AT_WORD_STARTS, TREAT_MEDIAL_CAPITAL_AS_WORD_START, BACKWARDS, WRAP_AROUND } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_HIT_TEST_RESULT_CONTEXT_", type_id = "webkit_hit_test_result_context_get_type ()")] [Flags] public enum HitTestResultContext { DOCUMENT, LINK, IMAGE, MEDIA, EDITABLE, SCROLLBAR } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_INJECTED_CONTENT_FRAMES_", type_id = "webkit_injected_content_frames_get_type ()")] public enum InjectedContentFrames { ALL, TOP_ONLY } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_INSECURE_CONTENT_", type_id = "webkit_insecure_content_event_get_type ()")] public enum InsecureContentEvent { RUN, DISPLAYED } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_LOAD_", type_id = "webkit_load_event_get_type ()")] public enum LoadEvent { STARTED, REDIRECTED, COMMITTED, FINISHED } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_NAVIGATION_TYPE_", type_id = "webkit_navigation_type_get_type ()")] public enum NavigationType { LINK_CLICKED, FORM_SUBMITTED, BACK_FORWARD, RELOAD, FORM_RESUBMITTED, OTHER } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_POLICY_DECISION_TYPE_", type_id = "webkit_policy_decision_type_get_type ()")] public enum PolicyDecisionType { NAVIGATION_ACTION, NEW_WINDOW_ACTION, RESPONSE } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_PRINT_OPERATION_RESPONSE_", type_id = "webkit_print_operation_response_get_type ()")] public enum PrintOperationResponse { PRINT, CANCEL } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_PROCESS_MODEL_", type_id = "webkit_process_model_get_type ()")] public enum ProcessModel { SHARED_SECONDARY_PROCESS, MULTIPLE_SECONDARY_PROCESSES } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_SAVE_MODE_", type_id = "webkit_save_mode_get_type ()")] public enum SaveMode { MHTML } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_SCRIPT_DIALOG_", type_id = "webkit_script_dialog_type_get_type ()")] public enum ScriptDialogType { ALERT, CONFIRM, PROMPT } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_SNAPSHOT_OPTIONS_", type_id = "webkit_snapshot_options_get_type ()")] [Flags] public enum SnapshotOptions { NONE, INCLUDE_SELECTION_HIGHLIGHTING } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_SNAPSHOT_REGION_", type_id = "webkit_snapshot_region_get_type ()")] public enum SnapshotRegion { VISIBLE, FULL_DOCUMENT } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_TLS_ERRORS_POLICY_", type_id = "webkit_tls_errors_policy_get_type ()")] public enum TLSErrorsPolicy { IGNORE, FAIL } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_VIEW_MODE_", type_id = "webkit_view_mode_get_type ()")] public enum ViewMode { WEB, SOURCE } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_DOWNLOAD_ERROR_")] public errordomain DownloadError { NETWORK, CANCELLED_BY_USER, DESTINATION; public static GLib.Quark quark (); } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_FAVICON_DATABASE_ERROR_")] public errordomain FaviconDatabaseError { NOT_INITIALIZED, FAVICON_NOT_FOUND, FAVICON_UNKNOWN; public static GLib.Quark quark (); } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_JAVASCRIPT_ERROR_SCRIPT_")] public errordomain JavascriptError { FAILED; public static GLib.Quark quark (); } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_NETWORK_ERROR_")] public errordomain NetworkError { FAILED, TRANSPORT, UNKNOWN_PROTOCOL, CANCELLED, FILE_DOES_NOT_EXIST; public static GLib.Quark quark (); } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_PLUGIN_ERROR_")] public errordomain PluginError { FAILED, CANNOT_FIND_PLUGIN, CANNOT_LOAD_PLUGIN, JAVA_UNAVAILABLE, CONNECTION_CANCELLED, WILL_HANDLE_LOAD; public static GLib.Quark quark (); } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_POLICY_ERROR_")] public errordomain PolicyError { FAILED, CANNOT_SHOW_MIME_TYPE, CANNOT_SHOW_URI, FRAME_LOAD_INTERRUPTED_BY_POLICY_CHANGE, CANNOT_USE_RESTRICTED_PORT; public static GLib.Quark quark (); } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_PRINT_ERROR_")] public errordomain PrintError { GENERAL, PRINTER_NOT_FOUND, INVALID_PAGE_RANGE; public static GLib.Quark quark (); } [CCode (cheader_filename = "webkit2/webkit2.h", cprefix = "WEBKIT_SNAPSHOT_ERROR_FAILED_TO_")] public errordomain SnapshotError { CREATE; public static GLib.Quark quark (); } [CCode (cheader_filename = "webkit2/webkit2.h", instance_pos = 1.9)] public delegate void URISchemeRequestCallback (WebKit.URISchemeRequest request); [CCode (cheader_filename = "webkit2/webkit2.h", cname = "WEBKIT_EDITING_COMMAND_COPY")] public const string EDITING_COMMAND_COPY; [CCode (cheader_filename = "webkit2/webkit2.h", cname = "WEBKIT_EDITING_COMMAND_CUT")] public const string EDITING_COMMAND_CUT; [CCode (cheader_filename = "webkit2/webkit2.h", cname = "WEBKIT_EDITING_COMMAND_PASTE")] public const string EDITING_COMMAND_PASTE; [CCode (cheader_filename = "webkit2/webkit2.h", cname = "WEBKIT_EDITING_COMMAND_REDO")] public const string EDITING_COMMAND_REDO; [CCode (cheader_filename = "webkit2/webkit2.h", cname = "WEBKIT_EDITING_COMMAND_SELECT_ALL")] public const string EDITING_COMMAND_SELECT_ALL; [CCode (cheader_filename = "webkit2/webkit2.h", cname = "WEBKIT_EDITING_COMMAND_UNDO")] public const string EDITING_COMMAND_UNDO; } ================================================ FILE: guanako/CMakeLists.txt ================================================ # # guanako/CMakeLists.txt # Copyright (C) 2012, 2013, Valama development team # # Valama 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 3 of the License, or # (at your option) any later version. # # Valama 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, see . # cmake_minimum_required(VERSION "2.8.4") include("${CMAKE_SOURCE_DIR}/cmake/guanako.cmake") include("${CMAKE_SOURCE_DIR}/cmake/Common.cmake") if(CMAKE_MAJOR_VERSION GREATER "2") cmake_policy(SET CMP0048 NEW) project("${project_name}" VERSION "${${project_name}_VERSION}" LANGUAGES "C") else() project("${project_name}" "C") endif() string(TOLOWER "${project_name}" project_name_lower) # export (sub)project version if(project_root) set("${project_name}_VERSION" "${${project_name}_VERSION}" PARENT_SCOPE) endif() set(bindir "bin") set(datarootdir "share") set(libdir "lib") set(includedir "include") set(datadir "${datarootdir}/${project_name_lower}") set(uidir "${datadir}/ui") if(NOT project_root OR NOT datadir) set(datadir "${datarootdir}/${project_name_lower}") endif() set(localedir "${datarootdir}/locale") set(appdir "${datarootdir}/applications") set(gsettingsdir "${datarootdir}/glib-2.0/schemas") set(pixrootdir "${datarootdir}/pixmaps") set(pixdir "${pixrootdir}/${project_name_lower}") set(docdir "${datadir}/doc") set(mandir "${datarootdir}/man") set(mimedir "${datarootdir}/mime/packages") if(CMAKE_INSTALL_PREFIX) set(install_prefix "${CMAKE_INSTALL_PREFIX}/") else() set(install_prefix) endif() list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/vala") list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") find_package(Vala "0.20" REQUIRED) set(pc_prefix ${CMAKE_INSTALL_PREFIX}) set(pc_exec_prefix "\${prefix}") set(pc_libdir "\${exec_prefix}/${libdir}") set(pc_includedir "\${prefix}/${includedir}") set(pc_datarootdir "\${prefix}/${datarootdir}") set(pc_vapidir "\${datarootdir}/vala-${VALA_SHORTVER}/vapi") set(pc_version "${${project_name}_VERSION}") # Custom library version checks. set(definitions) set(vapidirs) find_package(PkgConfig) # config list(REMOVE_ITEM required_pkgs "config {nocheck,nolink}") # libvala-X.Y if(VALA_SHORTVER STREQUAL "0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_20") elseif(VALA_SHORTVER STREQUAL "0.22") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_20") elseif(VALA_SHORTVER STREQUAL "0.24") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_20") elseif(VALA_SHORTVER STREQUAL "0.26") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_26") elseif(VALA_SHORTVER STREQUAL "0.28") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND definitions "VALAC_0_26") elseif(VALA_SHORTVER STREQUAL "0.30") list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(APPEND definitions "VALAC_0_26") else() list(REMOVE_ITEM required_pkgs "libvala-0.20") list(REMOVE_ITEM required_pkgs "libvala-0.22") list(REMOVE_ITEM required_pkgs "libvala-0.24") list(REMOVE_ITEM required_pkgs "libvala-0.26") list(REMOVE_ITEM required_pkgs "libvala-0.28") list(REMOVE_ITEM required_pkgs "libvala-0.30") list(APPEND required_pkgs "libvala-${VALA_SHORTVER}") list(APPEND definitions "VALAC_0_20") endif() # glib-2.0 pkg_check_modules(GLIB2.0 REQUIRED "glib-2.0") # Configure template files. set(stripped_pkgs) set(stripped_pkgs_pkgconfig) foreach(pkgstr ${required_pkgs}) set(matchit) string(REGEX MATCH "([^{ \t]*)[ \t]*{([^}]+,|)[ \t]*nocheck[ \t]*(|,[^}]+)}[ \t]*$" matchit ${pkgstr}) string(REGEX REPLACE "^([^{ \t]*)[ \t]*{[^{}]*}[ \t]*$" "\\1" pkg ${pkgstr}) if(NOT matchit) list(APPEND stripped_pkgs_pkgconfig "${pkg}") endif() string(REGEX REPLACE "^([^ \t]+).*" "\\1" pkg_pkgconfig "${pkgstr}") list(APPEND stripped_pkgs "${pkg_pkgconfig}") endforeach() base_list_to_delimited_string(pc_requirements DELIM " " BASE_LIST ${stripped_pkgs_pkgconfig} ) configure_file("${project_name_lower}.pc.in" "${project_name_lower}.pc" @ONLY) base_list_to_delimited_string(deps_requirements DELIM "\n" BASE_LIST ${stripped_pkgs} ) configure_file("${project_name_lower}.deps.in" "${project_name_lower}.deps") set(default_vala_flags "--thread" "--target-glib" "${GLIB2.0_VERSION}" "--enable-experimental" #"--fatal-warnings" ) include(ValaPkgs) vala_pkgs(VALA_C PACKAGES ${required_pkgs} DEFINITIONS ${definitions} OPTIONAL ${optional_pkgs} SRCFILES ${srcfiles} VAPIS ${vapifiles} LIBRARY "${project_name_lower}" GIRFILE "${project_name}-${${project_name}_VERSION}" OPTIONS ${default_vala_flags} ${vapidirs} ) add_library("${project_name_lower}" SHARED ${VALA_C}) set_target_properties("${project_name_lower}" PROPERTIES VERSION "${${project_name}_VERSION}" SOVERSION "${soversion}" ) target_link_libraries("${project_name_lower}" ${PROJECT_LDFLAGS}) add_definitions(${PROJECT_C_FLAGS}) # Set common C-macros. add_definitions(-DPACKAGE_NAME="${project_name}") add_definitions(-DPACKAGE_VERSION="${${project_name}_VERSION}") if(project_root) add_definitions(-DGETTEXT_PACKAGE="${project_root}") else() add_definitions(-DGETTEXT_PACKAGE="${project_name_lower}") endif() add_definitions(-DPACKAGE_DATA_DIR="${install_prefix}${datadir}") add_definitions(-DPACKAGE_UI_DIR="${install_prefix}${uidir}") add_definitions(-DLOCALE_DIR="${install_prefix}${localedir}") add_definitions(-DPIXMAP_DIR="${install_prefix}${pixdir}") add_definitions(-DVALA_VERSION="${VALA_SHORTVER}") install(TARGETS "${project_name_lower}" DESTINATION "${libdir}") install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${project_name_lower}.pc" DESTINATION "lib/pkgconfig") install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${project_name_lower}.h" DESTINATION "${includedir}") set(vapi_files "${CMAKE_CURRENT_BINARY_DIR}/${project_name_lower}.deps" "${CMAKE_CURRENT_BINARY_DIR}/${project_name_lower}.vapi") install(FILES ${vapi_files} DESTINATION "${VALA_VAPIDIR}") install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${project_name}-${${project_name}_VERSION}.gir" DESTINATION "${datarootdir}/gir-1.0") install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/data/syntax" DESTINATION "${datadir}") install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/data/${project_name_lower}.lang" DESTINATION "${datarootdir}/gtksourceview-3.0/language-specs") # Install user interface files if used and copy them to build directory. set(uifiles_build) foreach(uifile ${uifiles}) add_custom_command( OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${uifile}" COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/${uifile}" "${CMAKE_CURRENT_BINARY_DIR}/${uifile}" DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${uifile}" COMMENT "" ) list(APPEND uifiles_build "${CMAKE_CURRENT_BINARY_DIR}/${uifile}") install(FILES ${uifile} DESTINATION "${uidir}") endforeach() add_custom_target("ui_copy_${project_name_lower}" DEPENDS ${uifiles_build}) add_dependencies("${project_name_lower}" "ui_copy_${project_name_lower}") # vim: set ai ts=2 sts=2 et sw=2 ================================================ FILE: guanako/config.vapi ================================================ [CCode (cprefix = "", lower_case_cprefix = "")] namespace Config { public const string PACKAGE_NAME; public const string PACKAGE_VERSION; public const string GETTEXT_PACKAGE; public const string PACKAGE_DATA_DIR; public const string LOCALE_DIR; public const string VALA_VERSION; } ================================================ FILE: guanako/data/guanako.lang ================================================ #