Giter Site home page Giter Site logo

thezbyg / gpick Goto Github PK

View Code? Open in Web Editor NEW
375.0 18.0 33.0 5.45 MB

Advanced color picker written in C++ using GTK+ toolkit

License: BSD 3-Clause "New" or "Revised" License

Python 1.72% Makefile 0.06% Lua 0.69% C++ 83.93% C 11.80% Roff 0.08% Ragel 0.72% CMake 1.00%

gpick's Introduction

Gpick - advanced color picker and palette editor.

Gpick logo

Build Status Nightly packages

Gpick is an application that allows you to sample any color from anywhere on the desktop, and use it to create palettes (i.e. collections of colors) for use in graphic design applications. Gpick also has other features that help in the creation of color palettes, such as:

  • The ability to create a palette from an imported image
  • Automatic naming of colors
  • Color scheme generator
  • Import and export from various file formats

Gpick screenshot

Building from source

Compiler

C++17 support is required. Compilation is currently only tested on following compilers:

  • GCC 9.3 and 10.2.
  • Clang 11.0.

Build dependencies

CMake 3.12 or newer: build process management application (https://cmake.org/).

SCons 3.0 or newer: a software construction tool (http://www.scons.org).

Either CMake or SCons can be used. Package maintainers should use CMake, because SCons support is deprecated and will be removed at some point in the future.

Ragel 6.9 or newer: state machine compiler (http://www.colm.net/open-source/ragel).

Dependencies

GTK+ 3.0 (http://www.gtk.org).

GTK+ 2.24 (http://www.gtk.org).

Either GTK+ 3.x or GTK+ 2.x can be used.

Lua 5.4, 5.3 or 5.2 (http://www.lua.org).

Expat (http://expat.sourceforge.net).

Boost 1.71 or newer (http://www.boost.org). Used libraries:

  • Interprocess.
  • Test (only when building/running tests).

Optional dependencies

gettext (http://www.gnu.org/s/gettext). Required if ENABLE_NLS is enabled. Required by default.

Building

Using CMake:

mkdir build && cd build to create out-of-source build directory.

cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local to prepare build files for installation to /usr/local.

make to compile all files.

make install to install executable and resources to DESTDIR. Default DESTDIR value is set by CMAKE_INSTALL_PREFIX variable.

Using SCons:

scons to compile all files and place executable file in build/.

scons install to install executable and resources to DESTDIR. By default DESTDIR is /usr/local.

Build options

ENABLE_NLS - compile with gettext support. Enabled by default.

USE_GTK3 - use GTK3 instead of GTK2. Enabled by default.

PREFER_VERSION_FILE - read version information from file instead of using GIT. Disabled by default. This option enables unconditional .version file usage. .version file is included in release source archives and is a simple text file containing the following information in four lines: major/minor version, revision, commit hash and commit date.

LUA_TYPE - select used Lua library type. Default is patched-C++. Can be set to one of the following values:

  • C++ - compiled with C++ compiler and API function symbols are mangled.
  • patched-C++ - compiled with C++ compiler, but API functions are defined as extern "C" and symbols are not mangled.
  • C - compiled with C compiler (this is the default Lua library build type).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.