diff --git a/.travis.yml b/.travis.yml index 20ef6e32..82604edf 100644 --- a/.travis.yml +++ b/.travis.yml @@ -44,7 +44,7 @@ matrix: before_install: - cd .. - - git clone --depth=1 --branch=hotfix https://github.com/qPCR4vir/nana-demo.git nana-demo + - git clone --depth=1 --branch=develop https://github.com/qPCR4vir/nana-demo.git nana-demo - export PATH="$HOME/bin:$PATH" - wget --no-check-certificate --no-clobber -O /tmp/tools/cmake https://cmake.org/files/v3.12/cmake-3.12.0-rc3-Linux-x86_64.sh || true - chmod -R +x /tmp/tools @@ -63,7 +63,7 @@ before_script : - cd demo-build script: - - cmake -G"Unix Makefiles" ../nana-demo -DCMAKE_INSTALL_PREFIX=.. -DNANA_CMAKE_ENABLE_JPEG=ON -DNANA_CMAKE_FIND_BOOST_FILESYSTEM=OFF -DNANA_CMAKE_AUTOMATIC_GUI_TESTING=ON + - cmake -G"Unix Makefiles" ../nana-demo -DCMAKE_INSTALL_PREFIX=.. -DNANA_CMAKE_ENABLE_JPEG=ON -DNANA_CMAKE_FIND_BOOST_FILESYSTEM=OFF -DNANA_CMAKE_AUTOMATIC_GUI_TESTING=ON -DNANA_CMAKE_INSTALL=OFF - make install # todo: separate resources from sources (a directory for images) - ls diff --git a/CMakeLists.txt b/CMakeLists.txt index 1814e4fb..69e1de1d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -22,7 +22,7 @@ # cmake 3.12 have more better modern c++ support cmake_minimum_required(VERSION 3.12 FATAL_ERROR) -project(nana VERSION 1.6.2 +project(nana VERSION 1.7.1 DESCRIPTION "C++ GUI library" HOMEPAGE_URL http://nanapro.org LANGUAGES CXX ) diff --git a/appveyor.yml b/appveyor.yml index 4305ba46..ab87092f 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,4 +1,6 @@ version: 1.0.{build} +image: + - Visual Studio 2017 build: - project: build\vc2015\nana.sln + project: build\vc2017\nana.sln verbosity: minimal \ No newline at end of file diff --git a/build/cmake/compilers.cmake b/build/cmake/compilers.cmake index 80daf9e9..c8db4976 100644 --- a/build/cmake/compilers.cmake +++ b/build/cmake/compilers.cmake @@ -14,8 +14,7 @@ if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") # AND NOT MINGW?? - target_compile_options(nana PRIVATE -Wall - PUBLIC -g ) + target_compile_options(nana PRIVATE -Wall) # todo: set in target property of nana set(CMAKE_CXX_FLAGS_RELEASE "-O3 -march=native -mtune=native -DNDEBUG") diff --git a/build/cmake/install_nana.cmake b/build/cmake/install_nana.cmake index 2b6851d6..45636484 100644 --- a/build/cmake/install_nana.cmake +++ b/build/cmake/install_nana.cmake @@ -1,8 +1,8 @@ -option(NANA_CMAKE_INSTALL "Install nana when compile the library (to be consumed without cmake)" OFF) +option(NANA_CMAKE_INSTALL "Install nana when compile the library (to be consumed without cmake)" ON) # Install the include directories too. if(NANA_CMAKE_INSTALL) - # this is the prefered method to consume nana directly with some specific bulid system + # This is a method to consume nana with a bulid system not directly supported by nana. # Is your responsability to ensure all compiler options are compatible with the compilation # of the project linking to the nana lib here generated target_sources(nana PRIVATE ${HEADERS}) diff --git a/build/cmake/shared_libs.cmake b/build/cmake/shared_libs.cmake index 104e252f..febb3b42 100644 --- a/build/cmake/shared_libs.cmake +++ b/build/cmake/shared_libs.cmake @@ -40,7 +40,7 @@ if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") # AN if(BUILD_SHARED_LIBS) target_compile_options(nana PUBLIC -lgcc -lstdc++) else() - target_link_libraries(nana PUBLIC -static -static-libstdc++) + target_link_libraries(nana PUBLIC -static-libgcc -static-libstdc++) endif(BUILD_SHARED_LIBS) endif() \ No newline at end of file diff --git a/include/nana/gui/widgets/group.hpp b/include/nana/gui/widgets/group.hpp index 43dd5e85..139f7f15 100644 --- a/include/nana/gui/widgets/group.hpp +++ b/include/nana/gui/widgets/group.hpp @@ -100,6 +100,10 @@ namespace nana{ group& enable_format_caption(bool format); group& collocate() noexcept; + + /// this will set the `usr_div_str` for an internal field, called the "user field". + /// The "full" `place` of a `group` widget is internally divided into a field for the title, + /// a field for the added "options" and a field for "user" widgets. group& div(const char* div_str) noexcept; field_reference operator[](const char* field);